Williams Air Solutions has built something most competitors cannot buy: a perfect 5.0 Google rating across 97 reviews where customers name individual technicians and describe personal service that large companies cannot replicate. This reputation is the company's most valuable digital asset.
The gap is between that reputation and how the website presents the business. The website is a template shell — five of seven pages share 60–90% identical content. There are no calls to action on six of seven pages. The booking system is nearly invisible. Six different phone numbers appear across various properties. Twenty-seven location pages exist but are invisible to Google due to a platform-level indexing setting. And 234 blog posts have no categories, no navigation, and no conversion mechanism.
The strengths are real and substantial. The problems are all fixable. This diagnostic details both.
| Owner | Managing Member |
| Entity | Williams Air Solutions LLC — formed January 23, 2023 |
| License | Florida CAC1822799 (Pinellas & Hillsborough counties) |
| Address | 1115 Ponce De Leon Blvd, Suite A3, Belleair, FL 33756 |
| Revenue | ~$2M (owner-stated) |
| BBB | A+ rating, not accredited, zero complaints |
| Website | williamsairsolutions.com (Duda platform) |
| Booking | Jobber (clienthub.getjobber.com) |
| Service Area | 27 municipalities across Pinellas County |
| Name | Review Mentions | Notes |
|---|---|---|
| Owner | ~35 | Mentioned across entire timeline (2024–2026). Installs, repairs, sales, emergency calls. |
| Andrew | ~28 | Most frequently mentioned service technician in recent reviews (2025–2026). Praised for honesty, diagnostics, communication. |
| Brandon | 3 | Installation, maintenance. Mentioned mid-2025. |
| Jeff | 1 | Mentioned alongside Andrew and Jose. |
| Jose | 1 | Mentioned alongside Jeff and Andrew. |
| Hunter | 1 | Maintenance visit. "Very knowledgeable and nice." |
| Tom | 1 | Described as "a real gentleman." |
The GBP listing is active and well-maintained relative to competitors. Reviews are responded to, photos exist, and the listing has basic business information. Key findings:
Six different phone numbers were found across various properties associated with Williams Air Solutions:
| Number | Where Found |
|---|---|
| (727) 477-3256 | Website header text (all pages), footer (all pages), GBP listing |
| (727) 353-0090 | Website header phone icon (all pages), privacy policy body, Yahoo Local |
| (727) 415-1675 | GBP post (single instance) |
| (813) 609-8256 | Job posting, some blog post CTAs |
| (727) 308-XXXX | Homepage schema markup |
| 6th number | Third-party directory listing |
The most significant issue: on every page of the website, the visible text shows (727) 477-3256 while the clickable phone icon dials (727) 353-0090. A customer who clicks the icon on mobile calls a different number than what they see on screen. This is a template-level issue affecting all pages.
All 97 Google reviews are 5-star. Zero negative reviews. This is genuinely rare for any service business. The reviews reveal detailed patterns about what customers value, how the team operates, and where the company's real competitive advantage lies.
| Theme | Mentions | Example |
|---|---|---|
| Professionalism | ~45 | Most common word across reviews |
| Communication | ~30 | "Explained everything in a way I could understand" |
| Fast response / same-day | ~25 | "Within 45 minutes" (on 4th of July) |
| Honesty / trustworthy | ~20 | "Does not guess or replace parts unnecessarily" |
| Fair pricing | ~18 | "Less than half price than another quote" |
| Clean worksite | ~12 | "Spotless once the job was completed" |
| Friendly / family feel | ~15 | "Like friends or family" |
The real differentiator is honesty and not upselling. Customers praise "doesn't do things that are not necessary," "does not guess or replace parts," and "honest on work and prices" more consistently than speed or price. This is the company's true competitive advantage — and it does not appear anywhere on the website.
"As an electrician I've spent the last 20 years working alongside HVAC companies, some are better than others. These guys are very knowledgeable and did an excellent job installing my new AC system." — Rob, Jun 2024
A trade professional validating HVAC work carries more weight than any homeowner review.
"I especially appreciate that Andrew does not guess or replace parts unnecessarily. He takes the time to find the actual problem and explains everything clearly." — Vitalijus Turskis, Jul 2026
After three visits for the same aging unit, the customer is more positive, not less. Correctly identified an electrical supply issue (not HVAC) rather than replacing parts to make it look fixed.
"After another A/C company charged me over $800 and still didn't fix my unit... Thankfully, I was referred to the owner by a family member, and the experience was completely different." — Angela Georgiadis, Feb 2026
Tina Turbin reviewed twice (June 2024 and April 2026). First review describes the owner bringing a package inside, photographing it, and texting her. Second review: "I've used them a few years now and will not change." Her daughter referred her originally. Confirmed repeat customer with a documented loyalty arc.
"Within the same week a new AC was installed... Called the day after to discuss additional work to make our previous door bigger to get to for a filter change and they came the same day to complete... great employees Jeff, Andrew, Jose." — B Thompson, Jan 2026
Names 3 techs. Describes diagnosis → quote → install → follow-up → additional work → same-day completion.
| Service | Count | Notes |
|---|---|---|
| AC Repair | ~40 | Dominant service. Emergency and same-day frequently mentioned. |
| Full System Install/Replace | ~20 | New systems, heat pumps, whole-system changeouts. |
| Duct Work | ~8 | Replacement, assessment, rat damage repair. |
| Maintenance/Tune-up | ~8 | Preventive maintenance, seasonal tune-ups. |
| Mini-Split/Ductless | ~5 | LG split systems, garages, offices, add-on rooms. |
| Commercial | ~5 | Office + warehouse (multi-location), retail, restaurants. |
| Emergency/Same-Day | ~15 | 4th of July call, weekend calls, after-hours. |
| Period | Rate | Notable |
|---|---|---|
| Early 2024 | ~2–3/month | Earliest visible reviews |
| Late 2025 | ~3–4/month | Steady growth |
| Jan–Feb 2026 | ~6–7/month | Significant jump |
| Jul 2026 | 11/month | Peak — aligns with summer demand |
| Aug 2026 (partial) | ~6/month pace | Through Aug 21 |
Review velocity has roughly doubled from 2024 to 2026. The acceleration correlates with more service calls (team growth) creating more review opportunities.
At least 5 reviews explicitly mention referrals: "My daughter recommended them," "referred to the owner by a family member," "referred to the owner by my neighbor," "They were referred to me." Many others imply word-of-mouth. Referrals and personal connections appear to be the primary growth driver.
Notable referral path: One reviewer (Kathy Sibert, Jan 2026) called a phone number from a different company and reached Andrew — he had apparently brought his number and clients with him from a previous employer that was bought out. This reveals how Andrew came to Williams and suggests some existing client base transferred with him.
Office presence indicator: One review ("M," Jun 2026) mentions "the exceptionally kind woman" who answered the phone at noon, suggesting part-time office/phone help already exists in some capacity.
One review (Henryk Hernandez, May 2026) mentions "Coolaire" and a tech named "Cryss" — neither associated with Williams. This may indicate a phone number or branding overlap with another company, or a customer who reached Williams through a number formerly associated with a different business.
Full HTML source code was reviewed for 7 pages: Homepage, Residential Services, Commercial Services, About Us, Contact Us, Blog Index, and Privacy Policy.
| Setting | Value | Implication |
|---|---|---|
| Platform | Duda (SiteType decoded from base64: DUDAONE) | Drag-and-drop website builder |
| Plan | Plan ID 7 (inferred as Team tier, ~$29/month, from feature requirements) | Includes Dynamic Pages, custom code, API access |
| Product | DM_DIRECT | Direct Duda customer, not through a reseller or agency |
| Page Type | FROM_SCRATCH | Built from blank canvas, not a Duda template |
| Published | May 8, 2026 (current version) | |
| Custom Code | Enabled | Custom code added at some point |
| Cookie Consent | Disabled | No consent banner despite extensive third-party tracking |
No agency, freelancer, or marketing company was identified as having built or managed this website. The evidence — Duda's Direct product (not reseller), no agency attribution anywhere, AI-generated blog content matching Duda's built-in "Draft with AI" tool — suggests the site was likely built and managed in-house.
noindex meta tag. This is a Duda Dynamic Pages template-level setting, not a per-page choice. These long-tail local keywords are exactly what a local HVAC company needs to rank for.author and datePublished fields). Adding LocalBusiness schema enables star ratings, hours, and phone display directly in Google search results.width=device-width in viewport meta tag on all pages. This standard mobile property is absent, which can affect rendering on some mobile browsers.showCookieNotification: false) despite 5+ third-party services collecting user data./my-post URL slug visible in blog listing — a blog post where the default slug was never customized./accessability page URL is misspelled (should be "accessibility"). Listed in footer navigation on every page.155418105_m_normal_none = stock library ID). One possible exception: the About Us page background image (hvac-service-pinellas-2880w.JPG) has a descriptive filename and .JPG extension suggesting it may be an actual company photo — the only one on the entire site. Every other image is either stock or AI-generated.lowestRating: 3). Currently no effect since all 97 reviews are 5-star, but the filter is set.| Page | Unique Content | Shared Template | Unique % | Key Gap |
|---|---|---|---|---|
| Homepage | ~400 words | ~600 words | 40% | No CTA above fold, stock photos, generic hero |
| Residential | ~100 words | ~600 words | 14% | 6 one-sentence service descriptions. Zero CTA. |
| Commercial | ~100 words | ~600 words | 14% | Nearly identical to Residential. Zero CTA. |
| About Us | ~150 words | ~600 words | 20% | No team bios, no photos, "Our Story" with no story |
| Contact Us | ~50 words | ~600 words | 8% | Best page — has forms, map, booking. Two form systems. |
| Blog Index | 0 (widget) | Blog listing | N/A | 234 posts, no categories/tags/search |
| Privacy Policy | ~500 words | ~600 words | 45% | 6 marketing feature cards pasted below legal text |
The same ~600 words — six feature cards ("Personalized Consultations," "Proactive Maintenance Plans," "Education and Training," "Innovative Solutions," "24/7 Support," "Quality Assurance") plus a guarantee section — appear on every page. These feature cards also appear on the Privacy Policy page below the legal text.
There is a striking disconnect between how the company presents itself on the website and how customers describe it in reviews:
"Redefining the standards of comfort"
"Foremost provider"
"Unparalleled HVAC solutions"
"Empowering our clients with knowledge"
Corporate franchise language. Could be any HVAC company.
"Like friends or family"
"Real family feel"
"He saw a delivery at my door, brought it inside, and texted me a photo"
"A man of integrity"
Personal, warm, specific. Unmistakably this company.
The website sounds like a corporate franchise. The reviews describe a local family operation. The reviews are right — the website should match.
What's currently above the fold:
What visitors actually need (and don't see without scrolling):
For local service businesses, the homepage should deliver authority, trust, and action visible immediately — without scrolling. Nobody visits a local HVAC company website to "discover" the brand. They need service, they need confidence it's the right company, and they need a way to act. The current layout — generic hero image, stock photo, no reviews visible, no booking button, contact form at the bottom — requires extensive scrolling to find what matters. Best-in-class local service sites put the rating score, a scheduling button or form, and a clear value statement within the first viewport.
See Appendix C for per-page title tag analysis.
See Appendix C for schema markup gap inventory.
See Appendix C for indexing status and sitemap conflict details.
Pages on this site are functionally isolated from each other:
For SEO, internal links pass authority between pages and help Google understand site structure. For conversion, every page should offer a clear next step. Neither is happening here.
| Page | CTA Present | Above Fold | Booking Link |
|---|---|---|---|
| Homepage | "Read More" (goes to About) | No | Tiny icon in header |
| Residential | None | No | No |
| Commercial | None | No | No |
| About Us | None | No | No |
| Contact Us | Form + Jobber booking | Yes | Yes |
| Blog | None | No | No |
| Privacy | None | No | No |
Current path from homepage to booking:
Best-in-class for a local service business: a visible "Schedule Service" or "Call Now" button in the header or as a sticky element, reachable in one click from any page. The form itself — or a popup linking to it — should be one click away, not three.
The Contact Us page is the only page on the site with any conversion mechanism. Despite this critical role, it has significant gaps:
55504088...). The Contact page embed uses a different one (feec6ed6...). The Contact page also has three separate entry points to Jobber (a text link, a calendar icon, and the embedded form). Whether these different IDs represent different intake flows or a configuration inconsistency is unclear without access to the Jobber account.The Jobber booking flow contains content and information the website itself doesn't show:
The content that would build confidence and differentiate from competitors already exists — it's in the wrong system.
On every page, the phone number appears as plain text in the header bar and footer. It is never styled as a tappable "Call Now" button. On mobile devices — where the majority of emergency HVAC searches happen — a prominent, tappable call button is a basic conversion element that this site lacks entirely. The only tappable phone action is the small icon in the social hub, which dials a different number (353-0090 instead of the displayed 477-3256).
See Appendix A for the complete tracking and analytics inventory with tool IDs.
See Appendix A for font loading, script count, and image optimization details.
The blog contains 234 posts (confirmed from source code: data-paginate-total-elements="234"). Combined with ~20 core/service/location pages, this accounts for the 254 total URLs in the sitemap.
Full article analysis revealed AI content signatures: "That is why..." transitions, hedging language, formulaic paragraph structure, and in one case, cross-contaminated content (an article about evaporator coils contained system aging content from a different topic). The topics are well-targeted for Florida HVAC SEO, but the execution — batch publication, no internal linking, no homepage integration — limits the value.
/my-post default slug visible in listing (never customized)The content pattern is consistent with Duda's built-in "Draft with AI" blog generation tool, possibly supplemented by Duda's Blog API + Zapier integration for batch creation. The 9 manufacturer-specific pages (Trane, Bryant, LG, Samsung, Mitsubishi, Goodman, Ruud, Comfortmaker, Daikin) are a deliberate SEO strategy to capture "[brand] + Florida" searches — a smart idea executed through AI generation. The content tested as original (not duplicated from other HVAC sites).
Two local rank tracking geo-grid scans were run via Lumina SEO, centered on the business address (953 Ponce De Leon Blvd, Belleair, FL 33756), using a 7×7 grid covering ~14 miles. Keywords tested: "HVAC" and "Air Conditioning."
Click image to expand
Click image to expand
For comparison, a competitor with approximately half Williams' review count achieved double the grid coverage. The difference is likely GBP configuration (service area definition, primary category optimization, NAP consistency across directories) rather than review quality. Williams' review profile is the strongest in the area — the visibility gap is fixable.
24+ pages following the pattern /hvac-company-[city]-fl exist and are linked from the homepage. All have a noindex tag — a Duda Dynamic Pages template-level setting. These pages target valuable long-tail keywords like "HVAC company Clearwater FL" and "HVAC company Largo FL" but are invisible to Google.
What "fixing" them means: In Duda, Dynamic Pages share a single template. The noindex setting is template-level, not per-page. Removing it would make all location pages indexable at once. However, these pages currently have minimal unique content (mostly the city name swapped into a template). Before indexing them, each page would benefit from unique content — otherwise Google may treat them as doorway pages (a spam policy violation).
From SEOptimer data:
Air Bros has built the full operational stack: booking, financing, membership, cross-selling (electrical), multi-platform presence. This is the benchmark for what Williams' digital infrastructure should look like.
One competitor dominated the local geo-grid with approximately 16% coverage despite having fewer reviews and a bare-minimum website. Investigation revealed red flags: the listed address appeared to be a strip of restaurants with no HVAC signage, two separate domains targeted different keyword variations, and the business registered its agent ~80 miles from the claimed service area. This is an example of aggressive GBP optimization — potentially in violation of Google's guidelines — that can inflate local visibility beyond what the underlying business warrants. The lesson is still valid: GBP configuration alone can produce outsized local visibility. But the benchmark should be a genuinely full-stack operation (like Air Bros), not a gaming strategy.
| Capability | Williams | Air Bros | 1st Call |
|---|---|---|---|
| Google Reviews | 97 at 5.0 | 110+ at 5.0 | 78 at 5.0 |
| Geo-Grid Coverage | 8% | 10% | 8% |
| Online Booking | Hidden | Prominent | Yes (form) |
| Financing | No | Yes | Yes (0%) |
| Team Bios | No | Yes (owner) | No |
| Membership/Agreement | Hidden ($94 in Jobber) | Yes (Premium) | No |
| Blog | 234 (AI, unstructured) | Active | Active (small) |
| Electrical Services | No | Yes | No |
Williams has the strongest review profile in the competitive set. What it lacks is the operational digital infrastructure that converts that reputation into visibility and leads.
~110 followers, ~12 posts. Almost entirely equipment photos — water heaters, thermostats, LG inverters. No before/after installs, no technician spotlights, no customer stories, no video content. ~1 post/month average.
Page exists, minimal activity visible. Not leveraging Facebook's strongest HVAC play: local community groups and neighborhood forums.
The raw material for strong social content exists — 97 five-star reviews, a technician customers love by name, diverse project types (residential, commercial, emergency, mini-split). Almost none of this is being used. The fix is operational: capture before/after photos on every job, post 3–5 times per week with brief stories, and repost review screenshots as social proof.
Williams Air Solutions does not appear to have a claimed/verified Apple Maps listing. Apple Maps gets business data from Yelp, Foursquare, and Apple Business Connect (mapsconnect.apple.com). Given the limited Yelp presence (2 reviews), the listing is likely auto-generated or absent. Claiming through Apple Business Connect is free and reaches iPhone users who search via Siri or Apple Maps.
| Platform | Present | Notes |
|---|---|---|
| Google Business Profile | Yes | 97 reviews, 5.0, actively managed |
| Yelp | Yes | Minimal (2 reviews) |
| Angi | Yes | Listed with reviews |
| HomeAdvisor | Yes | Listed |
| BBB | Yes | A+, not accredited, zero complaints |
| Yes | Minimal activity | |
| Yes | ~12 posts, equipment-focused | |
| Nextdoor | No | Not found |
| Google Ads | Active | Appears in Sponsored Maps for Belleair area |
| Google LSAs | No | Not running — would be highest-ROI paid channel with 97 reviews |
| Facebook/Meta Ads | Previously active | Privacy policy mentions Facebook Lead Ads; no current ads in Meta library |
HVAC demand follows a dramatic seasonal pattern. Understanding this cycle is critical for staffing, marketing budget allocation, and service capacity planning.
| Month | Searches | % of Peak |
|---|---|---|
| January | 26,207 | 29% |
| February | 25,027 | 27% (trough) |
| March | 29,203 | 32% |
| April | 40,365 | 44% — ramp begins |
| May | 59,465 | 65% — sharp climb |
| June | 78,499 | 86% |
| July | 91,690 | 100% (peak) |
| August | 70,050 | 76% |
| September | 45,478 | 50% |
| October | 32,884 | 36% |
| November | 30,238 | 33% |
| December | 27,855 | 30% |
Source: WebFX Seasonal Search Shifts report (national aggregate)
Key numbers: 266% swing from February trough to July peak. March→April is the inflection point (+38% MoM). April→May is the steepest climb (+47%). July→September drops 50%.
Florida-specific HVAC marketing data from a Tampa-area marketing agency indicates:
As AI search tools (ChatGPT, Google AI Overviews, Perplexity, etc.) increasingly influence how consumers find service providers, a "blind test" was conducted to assess whether Williams Air Solutions surfaces in AI-generated recommendations.
Two independent AI agents were asked questions like "What are the best HVAC companies in Belleair, FL?" and "Who should I call for AC repair in Clearwater?" — without any priming about Williams.
Result: Williams Air Solutions surfaced inconsistently. When it appeared, it was typically in a list alongside larger, more established competitors. In several queries, it did not appear at all. AI recommendations appear to favor companies with stronger structured data (schema markup), broader web presence (directory listings, content volume), and higher review counts across multiple platforms.
This is an emerging area where structured data, consistent NAP across directories, and active multi-platform presence increasingly matter. Adding LocalBusiness schema and claiming listings on Yelp, Apple Maps, and Nextdoor would improve discoverability in AI-generated results.
width=device-width).These directly affect money coming in. Low effort, high return.
| What to Automate | What It Does | Tool | Why First |
|---|---|---|---|
| Missed call auto-text | "Sorry we missed you — reply to book or we'll call back within 30 minutes" | Jobber or dedicated missed-call tool | Every missed call is a potential lost customer. At $350 avg ticket, recovering 2 calls/day adds significant revenue. |
| Review request after service | Auto-text 2–3 days post-service with direct Google review link | Jobber (built-in feature) | 97 reviews grew organically. Systematizing this could double the review rate. Reviews directly affect Maps visibility. |
| Estimate follow-up sequence | Auto-email/text on day 1, 3, 7 after unsold estimate | Jobber (quote follow-up feature) | Unsold estimates are revenue left on the table. Industry data suggests 20–30% of follow-ups convert. |
| Appointment confirmations | Auto-text: booking confirmation, day-before reminder, on-the-way notification | Jobber (built-in) | Reduces no-shows, builds professionalism, frees up phone time for new calls. |
These free up staff hours. Critical when short-staffed.
| What to Automate | What It Does | Tool |
|---|---|---|
| Invoice generation | Auto-generate from completed work order, auto-send to customer | Jobber (built-in) |
| Service agreement renewals | Auto-reminder 30/15/7 days before expiration | Jobber |
| Google Ads conversion tracking | Wire form submissions as conversion events so ad campaigns can optimize | Google Tag Manager — verify with ads manager what conversion data is currently being collected |
| What to Automate | What It Does | Tool |
|---|---|---|
| Job notes completeness | Require photo + notes before job can be marked complete | Jobber (required fields) |
| Pricing consistency | Flat-rate price book — techs select service, price auto-populates | Jobber (custom line items) |
| Double-booking prevention | Calendar sync + capacity limits per tech per day | Jobber (built-in) |
Williams uses Jobber for booking. Jobber includes substantial automation capabilities across its plan tiers that may already be available but not activated. These don't require new tools — just configuration.
| Feature | What It Does | Jobber Plan Required | Likely Status at Williams |
|---|---|---|---|
| Booking confirmations | Auto-email or text when a job is booked, confirming date/time/details | All plans (Core+) | Unknown — may be on by default, may be disabled |
| Appointment reminders | Auto-text or email before scheduled appointment (configurable timing) | All plans (Core+) | Unknown — if not enabled, easy quick win |
| On-my-way texts | Tech triggers a text to customer when en route | All plans (Core+) | Unknown — requires tech to tap a button in the app |
| Invoice auto-send | Auto-generate and send invoice when job marked complete | All plans (Core+) | Unknown — if manual, this may be causing delays |
| Invoice payment reminders | Auto-email/text for outstanding invoices on a schedule | All plans (Core+) | Unknown — if not on, receivables may be aging |
| Quote follow-ups | Auto-email to customers who haven't responded to a quote | Connect+ ($129/mo) | Unknown — high-value if unsold estimates aren't being chased |
| Custom automations builder | Trigger/condition/action workflows (e.g., "when quote > $5K, alert owner") | Connect+ ($129/mo) | To be confirmed — requires intentional setup |
| Auto-drafted quotes | AI generates draft quotes from client requests using past quote templates | Connect+ ($129/mo) | New feature (2026) — To be confirmed |
| High-value quote alerts | Notification when a quote exceeds a threshold (e.g., $3K+) | Connect+ ($129/mo) | New feature (2026) — To be confirmed |
| Review requests | Auto-text/email after job completion with a review link | Grow ($249/mo) | To be confirmed — 97 reviews appear organic |
| Two-way texting | Text conversations with customers directly from Jobber | Grow ($249/mo) | Unknown — depends on plan tier |
| Email/SMS marketing campaigns | Targeted campaigns to past customers (seasonal promos, reactivation) | Grow ($249/mo) | To be confirmed |
| Referral programs | Automated referral tracking and rewards | Grow ($249/mo) | Not active — referrals currently organic per review data |
| GPS tracking | Real-time tech location for dispatch optimization | Connect+ ($129/mo) | Unknown |
| QuickBooks sync | Two-way sync between Jobber and QuickBooks Online | Connect+ ($129/mo) | Unknown — depends on whether they use QBO |
| Job costing | Track actual costs vs estimates per job | Grow ($249/mo) | To be confirmed |
Key insight: Jobber's Core plan ($29/mo) includes booking confirmations, appointment reminders, on-my-way texts, invoice auto-send, and payment reminders. If Williams is on Core, simply turning these on is the single lowest-effort improvement available. The Connect plan ($129/mo) adds the custom automations builder, quote follow-ups, and QuickBooks sync. The Grow plan ($249/mo) adds review requests, marketing campaigns, and job costing — the features most relevant to growth from $2M to $5M. A discovery conversation should confirm which plan they're on and which features are activated.
These benchmarks provide targets for measuring progress. The "Typical at This Stage" column reflects where most companies at this revenue level operate without formal tracking systems.
| Metric | Typical at This Stage | 6-Month Target | 12-Month Target |
|---|---|---|---|
| Booking rate (calls → jobs) | 60–70% | 80% | 85%+ |
| Revenue per tech per day | $1,000–1,400 | $1,600 | $1,800+ |
| Average service ticket | $350–450 | $475 | $500+ |
| Callback rate | 8–10% | 5% | <3% |
| Service agreement attach rate | 0–5% | 15% | 25%+ |
| Active service agreements | Near zero | 50 | 120+ |
| First-call completion rate | 75–80% | 85% | 90%+ |
| Review request → review | 10–15% | 25% | 35%+ |
| Invoicing within 24 hours | Inconsistent | 90% | 98%+ |
| Customer acquisition cost (CAC) | Unknown | Tracked | <$300 |
| Marketing as % of revenue | Unknown | 8–10% | Optimized by channel |
Benchmarks from industry sources including ACCA financial surveys and HVAC-specific operational databases. The 6-month targets assume process documentation and basic automation are in place. The 12-month targets assume a full-time office coordinator managing systems daily.
Google PageSpeed Insights tests how a website performs for real users and scores it on four categories: Performance (loading speed), Accessibility (usability for all visitors), Best Practices (security and coding standards), and SEO (search engine optimization). These scores directly influence Google search rankings.
Tested September 24, 2026 on Google PageSpeed Insights (pagespeed.web.dev). Scores vary slightly between runs.
| Google PageSpeed Insights | Mobile: current | Mobile: rebuild | Desktop: current | Desktop: rebuild |
|---|---|---|---|---|
| Performance | 52 | 99 | 76 | 100 |
| Accessibility | 81 | 100 | 85 | 100 |
| Best Practices | 100 | 100 | 100 | 100 |
| SEO | 85 | 100 | 92 | 100 |
| Main content visible | 5.3 s | 2.0 s | 1.1 s | 0.4 s |
| Layout shift | 0.108 | 0 | 0.049 | 0 |
| Input delay | 820 ms | 0 ms | 470 ms | 0 ms |
Scores vary slightly between runs. Click any screenshot below to view full size.




| What the test found on the current site | What a homeowner experiences | Rebuild |
|---|---|---|
| Main content takes 5.3 seconds to appear on a phone. Google rates anything over 4 seconds as “poor.” | Their AC just died. They tap your listing and stare at a half-loaded page for 5 seconds, and many hit Back and call the next company. | 2.0 seconds, inside Google’s “good” range (under 2.5 s) |
| Nothing appears on screen for 2.6 seconds on a phone | A blank white screen right after they tap your link. It looks broken before anything loads. | 1.1 seconds |
| Text is hidden while the site’s fonts load | The headline and phone number are blank spaces for a moment, right when they’re looking for how to reach you. | Text appears right away |
| The page freezes for 820 ms while scripts run | They tap “Call” or the menu and nothing happens for a moment, so it feels broken. | 0 ms |
| The layout shifts as it loads (score 0.108, past Google’s “good” limit of 0.1) | They go to tap a button, the page jumps, and they tap the wrong thing. | 0 |
| Accessibility score 81 on mobile — missing alt text, low-contrast text, crowded tap targets | Buttons are hard to hit and text is hard to read on a phone, especially outdoors or for older homeowners. | 100 — all checks passed |
| SEO score 85 on mobile — missing meta descriptions, images without alt text, links without descriptive text | Google can’t tell what the photos show or where the link goes, so that content can’t help you rank. | 100 — all checks passed |
This diagnostic was prepared from publicly available data including website source code analysis, Google Business Profile review, third-party SEO tools (Lumina SEO, SEOptimer), and structured competitive research. All findings are observations based on external analysis — internal operational data may provide additional context.
| Tool | ID | Status |
|---|---|---|
| Google Analytics 4 | G-NBZ429ZRF2 | Active |
| Google Tag Manager | GTM-W87QH987 | Active |
| Google Ads | AW-XXXXXXXXXX | Active (Sponsored Maps confirmed) |
| Ahrefs | cXCrZIv+4iPkE3cxBqm1Aw | Installed — unclear if actively monitored |
| Snowplow | Duda built-in (automatic) | Active (platform default — not installed by Williams) |
| UserWay | rl2S39MzAN | Active (accessibility overlay widget) |
UTM parameter capture code is present (cookies for utm_source, utm_medium, utm_campaign), consistent with running paid campaigns. Entry referrer tracking also active via session cookie.
Note: Snowplow is Duda's platform-level analytics, not something installed by Williams. The -dm suffix in the script URL refers to DudaMobile (Duda's original company name). It is included automatically on all Duda sites.
| Setting | Value | Implication |
|---|---|---|
| Platform | Duda (SiteType decoded from base64: DUDAONE) | Drag-and-drop website builder |
| Plan | Plan ID 7 (inferred as Team tier, ~$29/month) | Includes Dynamic Pages, custom code, API access |
| Product | DM_DIRECT | Direct Duda customer, not through a reseller or agency |
| Page Type | FROM_SCRATCH | Built from blank canvas, not a Duda template |
| Published | May 8, 2026 (current version) | |
| Custom Code | Enabled | Custom code added at some point |
| Cookie Consent | Disabled (showCookieNotification: false) | No consent banner despite extensive third-party tracking |
| Flex Site | No | Not using Duda's newer layout system |
| Service Worker | Registered | PWA capability active (Duda platform default) |
| Site Alias | b7e0fc2d | Duda internal site identifier |
Six different phone numbers were found across properties associated with Williams Air Solutions:
| Number | Where Found | Notes |
|---|---|---|
| (727) 477-3256 | Website header text (all pages), footer (all pages), GBP listing | Appears to be the primary business number |
| (727) 353-0090 | Website header phone ICON (all pages), privacy policy body, Yahoo Local | Dials when phone icon is clicked — different from displayed text |
| (727) 415-1675 | GBP post (single instance) | May be a tracking number or old number |
| (813) 609-8256 | Job posting, some blog post CTAs | 813 area code = Hillsborough County (Tampa), not Pinellas |
| (727) 308-XXXX | Homepage schema markup | Partial — appears in auto-generated schema |
| 6th number | Third-party directory listing | Found during citation audit |
Key issue: On every page of the website, the visible text in the header shows (727) 477-3256 while the clickable phone icon links to tel:727-353-0090. These two numbers appear simultaneously on all 7 analyzed pages. The privacy policy body also uses 353-0090 — likely because the privacy policy template pulled from the phone icon's social link rather than the header text.
| Page | Title | Issue |
|---|---|---|
| Homepage | Williams Air Solutions | Home | No service keywords, no location |
| Residential | Residential HVAC Services in Pinellas County FL | Williams Air Solutions | Good |
| Commercial | Commercial HVAC Services in Tampa FL | Williams Air Solutions | Says "Tampa"; business is in Belleair |
| About Us | About Williams Air Solutions | Trusted Pinellas County HVAC Company | Good |
| Contact Us | Contact Williams Air Solutions | Pinellas County HVAC | Good |
| Blog | HVAC Tips & Expert Advice for Florida Homeowners | Good — topical, no brand clutter |
| Privacy | Privacy Policy | Williams Air Solutions | Trusted Pinellas County HVAC | Unnecessarily long for a legal page |
The homepage title — the most important page — has the least SEO value. Every H1 heading across the site is the shortest possible label: "About Us," "Residential Services," "Contact Us." None include target keywords like "HVAC" or a location.
Missing across the entire site:
Only schema present: BreadcrumbList on inner pages (correct) and a Review schema on the homepage auto-generated by the Google Reviews widget JavaScript (broken — empty author and datePublished fields because the widget generates the schema dynamically, not the site itself).
<meta name="robots" content="noindex">. Invisible to Google. (Exact count confirmed from homepage source code — 27 cities linked.)The noindex on location pages is almost certainly a Duda Dynamic Pages template-level setting. Dynamic Pages share a single template, and noindex is set at the template level — it cannot be toggled per-page. This is a known Duda platform constraint. Removing it requires changing the template setting, which affects all 27 pages at once.
| Page | Title | Length | Meta Description | Length | Issues |
|---|---|---|---|---|---|
| Homepage | Williams Air Solutions | Home | 31 | "Your trusted partner for all heating, ventilation, and air conditioning needs" | ~160 | No service keywords, no location in title |
| Residential | Residential HVAC Services in Pinellas County FL | Williams Air Solutions | 72 | "Keep your home comfortable year-round. Expert AC repair, heating, and HVAC installation..." | ~140 | Good |
| Commercial | Commercial HVAC Services in Tampa FL | Williams Air Solutions | 62 | "Expert commercial HVAC services for Tampa Bay area businesses..." | ~150 | Title says Tampa; business is in Belleair |
| About Us | About Williams Air Solutions | Trusted Pinellas County HVAC Company | 67 | "Learn about Williams Air Solutions..." | ~100 | Short description |
| Contact Us | Contact Williams Air Solutions | Pinellas County HVAC | 53 | Functional | ~120 | Adequate |
| Blog | HVAC Tips & Expert Advice for Florida Homeowners | 49 | "Explore HVAC tips, maintenance guides, and expert insights..." | ~175 | Good |
| Privacy | Privacy Policy | Williams Air Solutions | Trusted Pinellas County HVAC | 71 | "Williams Air Solutions privacy policy page." | ~45 | Unnecessarily long title, too-short description |
| Page | H1 Content | Assessment |
|---|---|---|
| Homepage | "Providing the Best AC Services!" | Generic — no keywords, no location |
| Residential | "Residential Services" | Too generic — should include "HVAC" + location |
| Commercial | "Commercial Services" | Same issue |
| About Us | "About Us" | Extremely generic |
| Contact Us | "Contact Us" | Generic but acceptable for page type |
| Blog | None (blog widget handles listing) | Missing — should have an H1 |
| Privacy | "Privacy Policy" | Appropriate |
Every H1 on the site is the shortest possible label. None include target keywords. A professional would write "Residential HVAC Services in Pinellas County" not just "Residential Services."
| Page | Has Keywords | Geographic Target | Mismatch |
|---|---|---|---|
| Homepage | Yes | Tampa | Title says nothing; keywords say Tampa |
| Residential | Yes | Tampa | Title says Pinellas; keywords say Tampa |
| Commercial | Yes | Tampa | Title says Tampa; keywords say Tampa (consistent but wrong city) |
| About Us | Yes | Tampa | Title says Pinellas; keywords say Tampa |
| Contact Us | Unknown | — | — |
| Blog | No | N/A | Only page without keywords |
| Privacy | Yes (copy-pasted from About) | Tampa | Includes "about us" as a keyword on Privacy page |
Every page with meta keywords targets "Tampa" while the title tags correctly target Pinellas County. This suggests whoever configured SEO used Tampa as the market center but didn't realize meta keywords are ignored by Google — and that geographic targeting should be consistent across all meta elements.
| Page | Schema Present | What's Missing |
|---|---|---|
| Homepage | Review (auto-generated, empty author/date fields) | LocalBusiness, Organization, Service |
| Residential | BreadcrumbList | Service, LocalBusiness |
| Commercial | BreadcrumbList | Service, LocalBusiness |
| About Us | BreadcrumbList | Organization, LocalBusiness |
| Contact Us | BreadcrumbList | LocalBusiness, ContactPoint |
| Blog | None | Blog, Article |
| Privacy | BreadcrumbList | None needed |
LocalBusiness schema should appear on every page. With 97 reviews at a perfect 5.0, proper AggregateRating schema would enable star ratings to appear directly in Google search results — a significant click-through rate advantage over competitors without stars.
This diagnostic was prepared from publicly available data including website source code analysis, Google Business Profile review, third-party SEO tools (Lumina SEO, SEOptimer), and structured competitive research. All findings are observations based on external analysis — internal operational data may provide additional context.