Category breakdown
- 01 Performance 65
- 02 SEO 72
- 03 AI Visibility 58
- 04 Design & UX 70
- 05 Conversion & Trust 75
Inside the grade
Performance
Mobile performance is weak at 49/100 with a 13-second LCP and 6.6s FCP, driven by 2MB of unoptimized assets. Desktop fares better at 81/100 but still carries 3.2MB total weight. The site is usable but slow on mobile, where most local-service searches happen.
What's working
- Desktop performance is solid at 81/100 with sub-2s LCP.
- Zero cumulative layout shift on mobile indicates stable rendering.
- HTTPS is properly configured across the site.
- Viewport meta tag is present for responsive behavior.
What needs work
- Mobile LCP of 13 seconds is catastrophic for user retention.
- 2MB mobile payload suggests unoptimized images and scripts.
- First Contentful Paint at 6.6s on mobile delays perceived load.
- Total Blocking Time of 420ms on mobile indicates heavy JavaScript execution.
- 147 images on the homepage with lazy-loading placeholders add complexity.
Comments for whoever manages your website
-
Compress and convert all homepage images to WebP format at appropriate sizes for mobile viewports.Your 2MB mobile payload is causing a 13-second load time, and most users abandon before seeing anything.
-
Defer or async-load non-critical JavaScript to reduce Total Blocking Time from 420ms to under 200ms.Heavy JS execution delays interactivity, frustrating users who try to tap buttons or forms before the page is ready.
-
Implement a CDN for static assets and enable browser caching with long max-age headers.Repeat visitors will load the site faster, improving conversion rates on return traffic.
SEO
Title and meta description are well-optimized for local HVAC intent, and the site has a clean canonical structure. JSON-LD schema is comprehensive with LocalBusiness, Organization, and department markup. However, the site has 221 links (181 internal), which dilutes link equity, and multiple H1s on the homepage create hierarchy confusion.
What's working
- Title tag is keyword-rich and location-specific: 'HVAC, Electrical & Plumbing Services in San Jose'.
- Meta description includes clear CTA and location targeting.
- Canonical URL is properly set to the HTTPS non-www version.
- Robots.txt allows crawling of key assets and includes sitemap reference.
- Comprehensive JSON-LD schema includes LocalBusiness, address, hours, and aggregate ratings.
What needs work
- Two H1 tags on the homepage ('HVAC, Electrical & Plumbing in San Jose, CA' and 'HVAC in San Jose, CA') confuse hierarchy.
- 181 internal links on the homepage dilute crawl priority and link equity.
- No meta keywords (not critical, but indicates dated SEO practices).
- Robots.txt disallows search results and feeds, which is fine, but also blocks /wp-admin unnecessarily broadly.
- 2 images lack alt attributes, missing minor accessibility and SEO signals.
Comments for whoever manages your website
-
Consolidate the two H1 tags into a single, keyword-rich headline that covers all three services.Multiple H1s confuse search engines about the page's primary topic and dilute ranking signals.
-
Reduce internal links on the homepage from 181 to under 100 by consolidating navigation and removing redundant footer links.Excessive links dilute crawl priority and make it harder for Google to understand which pages are most important.
-
Add alt attributes to the 2 images currently missing them, especially any service or trust badge images.Missing alt text hurts accessibility and loses minor SEO signals for image search.
AI Visibility
The site has strong LocalBusiness schema with address, phone, hours, and 4.8-star aggregate rating across 1,205 reviews, which helps AI engines cite it. However, the llms.txt file is present but generic, and the site lacks FAQ schema or conversational content that AI assistants prefer when answering natural-language queries. No evidence of optimization for voice or AI-native search patterns.
What's working
- JSON-LD includes LocalBusiness with full NAP, hours, and geo coordinates.
- Aggregate rating of 4.8 from 1,205 reviews is prominently marked up in schema.
- llms.txt file is present and provides a structured index for AI crawlers.
- Department schema breaks out HVAC, plumbing, electrical, and refrigeration services.
- Social profiles are listed in sameAs array for cross-platform entity resolution.
What needs work
- No FAQ schema or Q&A content to feed AI assistant answer engines.
- llms.txt is generic and doesn't highlight unique differentiators or service nuances.
- No conversational or natural-language content optimized for voice queries.
- Service pages are not explicitly listed in llms.txt with descriptions AI can parse.
- No evidence of optimization for 'near me' or 'best [service] in [city]' query patterns.
Comments for whoever manages your website
-
Add FAQ schema with 8-10 common questions like 'How much does HVAC installation cost in San Jose?' and 'Do you offer same-day service?'AI assistants prefer structured Q&A content and will cite your site when users ask these exact questions.
-
Expand llms.txt to include service-specific descriptions and unique differentiators like '12-year labor warranty' and 'same-day service'.Generic llms.txt files don't give AI engines enough context to recommend you over competitors.
-
Create a dedicated 'Common Questions' page with conversational, natural-language answers to HVAC, plumbing, and electrical queries.AI engines scrape conversational content to answer voice and chat queries, and you currently have none.
Design & UX
The site has a modern, service-focused layout with clear CTAs ('Get a Quote Now', 'Book Now') and a sticky header for easy navigation. However, the homepage is cluttered with 147 images, many using lazy-load placeholders, and the 13-second mobile LCP means users see a blank screen for far too long. The form UX is solid with clear privacy disclosures.
What's working
- Clear primary CTAs ('Get a Quote Now', 'Book Free Estimate') are repeated throughout the page.
- Service cards with icons and descriptions provide intuitive navigation to HVAC, electrical, plumbing, and refrigeration.
- Trust signals are prominent: '4.9 stars across 2,300+ reviews', '15 Years Experience', 'Up to 12 Years of HVAC Labor Warranty'.
- Forms include SMS opt-in with clear privacy policy links and STOP instructions.
- Daikin Authorized Dealer badge adds brand credibility.
What needs work
- 147 images on the homepage create visual clutter and slow perceived load.
- Lazy-load placeholders (data:image/svg+xml) delay content visibility on scroll.
- 13-second mobile LCP means users abandon before seeing any content.
- 221 links on the homepage overwhelm navigation and dilute focus.
- No visible live chat or instant-contact widget despite '24/7 Support' claim.
Comments for whoever manages your website
-
Reduce the number of images on the homepage from 147 to under 50 by removing redundant icons and consolidating service visuals.Visual clutter overwhelms users and slows load times, especially on mobile where screen real estate is limited.
-
Replace lazy-load placeholders with low-quality image previews (LQIP) so users see something while images load.Blank gray boxes make the site feel broken during load, increasing bounce rates.
Conversion & Trust
The site has strong trust signals: 4.9 Google rating, 1,012 reviews, and clear warranty messaging ('Up to 12 Years of HVAC Labor Warranty'). Two forms are present with clear privacy disclosures and SMS opt-in language. However, the phone number is buried in the header and not click-to-call on mobile, and there's no visible live chat despite 24/7 support claims.
What's working
- Aggregate rating of 4.8-4.9 stars across Google, Facebook, and Yelp is prominently displayed.
- Clear warranty messaging ('Up to 12 Years of HVAC Labor Warranty') reduces purchase anxiety.
- Forms include explicit SMS opt-in with STOP instructions and privacy policy links.
- Multiple CTAs ('Get a Quote Now', 'Book Free Estimate') reduce friction.
- Legal information page and license details are linked in footer.
- Social proof is quantified: '2,300+ reviews', '15 Years Experience', '24/7 Support'.
What needs work
- Phone number (408) 898-1576 is not click-to-call on mobile, adding friction.
- No live chat widget visible despite '24/7 Friendly Support' claim.
- Forms have 20-22 fields, which is excessive and likely reduces completion rates.
- No visible pricing or cost estimates on the homepage, requiring form submission.
- No customer testimonials or case studies visible on the homepage (though linked in nav).
Comments for whoever manages your website
-
Make the phone number (408) 898-1576 a click-to-call link on mobile with tel: protocol.Mobile users expect to tap a phone number to call instantly, and forcing them to copy-paste adds friction that kills conversions.
-
Add a live chat widget (e.g., Intercom, Drift) that's visible on mobile and desktop to match your '24/7 Support' claim.Users who see '24/7 Support' expect instant contact options, and the absence of chat undermines that promise.
-
Reduce form fields from 20-22 to under 8 by removing optional fields and using progressive disclosure for non-critical info.Long forms have 30-50% lower completion rates, and you're losing leads who abandon mid-form.
AI assistant visibility
AI is the new Google — and it doesn't show a list. More people are skipping Google and asking ChatGPT, Grok, or Gemini things like “who's the best hvac company in san jose” The catch: those tools don't give back ten blue links to pick from. They name one or two businesses and call it a day.
So you either get named — or that customer never hears you exist. This is about making sure when an AI gets asked about businesses like yours, yours is the one it recommends.
Estimated revenue leakage
With 13-second mobile load times, you're losing 40-60% of mobile visitors before they see your content. In a high-ticket local service market (HVAC installs average $5-15K), even 2-3 lost jobs per month from bounce and poor AI visibility costs $8-18K monthly.
Top three priorities
-
01
medium effort
Optimize mobile images and reduce payload from 2MB to under 500KB
Cut mobile LCP from 13s to under 3s, reducing bounce rate by 30-40% and recovering $6-12K/month in lost leads
-
02
low effort
Add FAQ schema with 8-10 common HVAC/plumbing questions and answers
Make the site citeable by ChatGPT and Perplexity when users ask 'best HVAC company in San Jose', capturing 15-25% more AI-driven leads
-
03
low effort
Make phone number click-to-call on mobile and add live chat widget
Reduce contact friction for mobile users (60%+ of traffic), increasing conversion rate by 10-15%