A 100 Lighthouse SEO score ≠ a site that ranks.
Performance and SEO audit of a live Vermont general contractor WordPress + Elementor site, paired with a non-commercial spec rebuild for the Bravado HQ portfolio. 18 measured failures across speed, semantics, schema, sitemap, and local SEO. All numbers captured with publicly available tooling. The rebuild is a spec build — not a paid client engagement.
12 seconds is five-times poor.
Google's mobile LCP threshold for ‘Good’ is 2.5s. The line for ‘Poor’ is 4.0s. They ship 12.0s — three times the ‘Poor’ line, five times the ‘Good’ line. Core Web Vitals is a confirmed ranking factor since 2021.
Largest Contentful Paint on a simulated 4G phone. Google's threshold for ‘Good' is 2.5s. They ship 5× over the ‘Poor' line. CWV is a confirmed ranking factor since 2021 — they're being algorithmically demoted for being slow.
How quickly visible content renders. Page is unusable for 13+ seconds on mobile. ~90% of paid traffic bounces before the hero finishes loading.
Cumulative Layout Shift. ‘Poor' threshold is 0.25. Their layout physically jumps half a viewport while loading — text moves while users try to click. Direct ranking penalty.
The HTML response alone — before any image, CSS, or JS loads. Modern marketing sites ship 30–60 KB. Theirs is ~5–10× over budget on the document alone.
Sixty separate render-blocking CSS files. Every one is a network round-trip on the critical path. Half could be dead code from inactive Elementor widgets.
Eighty individual JS bundles. WordPress plugin sprawl — Elementor, Yoast, TCG Elements, MetaForm, jQuery, jQuery-migrate. Mobile main thread is buried for the full 13.5s.
Lighthouse says 100. Google ranks otherwise.
Lighthouse's SEO category checks 12 plumbing items — title exists, viewport set, alt attributes present. It does not measure Core Web Vitals as a ranking signal, schema completeness, content quality, or local SEO. Below is what Lighthouse missed.
Homepage has THREE <h1> headings: ‘Built Right. Every Time.', ‘From Blueprint to Reality.', ‘Make Your Home Feel New Again.' — Google's primary signal for a page's topic, repeated three times. Crawler reads ‘this page is about nothing in particular.'
Heading order skips H4 and H5 entirely. Footer items ‘Contact', ‘Email', ‘Explore', ‘Top Links' are wrapped in <h6> instead of styled paragraphs. Document outline is structurally broken.
Homepage title is ‘Prop Ready - Your Go-To General Contractor.' Zero mention of Vermont. They cannot rank for ‘vermont general contractor' on title-match weight. The single highest-leverage local-SEO field, blank.
/new-construction/, /small-projects/, /our-faq/ ship without a meta description. Google then fabricates one from random body text — almost always worse than a written description. CTR suppressed for those pages.
Facebook, LinkedIn, iMessage need 1200×630 to render a proper share preview. Theirs is a 108×108 logo blob. Every social share ships a tiny pixelated image. Free brand impressions wasted.
12 images on the homepage; 7 have alt="". For a contractor's portfolio shots, every one should describe what's pictured (‘kitchen renovation in Burlington, Vermont'). Image search and topical relevance both miss out.
Sitemap_index.xml leaks 22+ Elementor template parts: /tcg_teb/footer/, /tcg_teb/offcanvas-2/, /tcg_teb/__trashed/, /tcg_teb/news-slider/, /tcg_teb/single-portfolio/. Google wastes crawl budget on theme components instead of money pages.
Page has Organization, WebPage, BreadcrumbList. Missing: GeneralContractor, LocalBusiness with NAP + service area, Service schema per service page, Review/AggregateRating, FAQPage. Five rich-result types unused.
Two homepage testimonials (Warren Mills, Joe Wagner) rendered as plain HTML — no Review or AggregateRating schema. Competitors with schema win the ⭐⭐⭐⭐⭐ in search results and steal the click.
/our-faq/ has FAQ content but no FAQPage JSON-LD. Misses out on the accordion-style ‘People Also Ask' rich result. Free real estate on the SERP, given away.
Phone number is in source. Street address is not. NAP consistency between site and Google Business Profile is foundational for ‘near me' rankings — without an on-site address, Google's tie between the site and the listing is weaker.
The misleading metric. Lighthouse SEO grades 12 plumbing items (title exists, viewport set, alt attributes present). It does not check Core Web Vitals as ranking signal, schema completeness, content quality, local SEO, or backlinks. The 100 is real and irrelevant.
Same business. Built right.
Statically prerendered, deployed to Cloudflare's global edge, schema fully wired, sitemap hand-curated, image alts written, OG card properly sized. The same audit and rebuild process every Bravado HQ engagement runs.
Statically prerendered, served from Cloudflare's global edge. Hero image ships as AVIF + responsive srcset. ~8× faster than the live site, well under Google's ‘Good' threshold.
End-to-end transfer for the homepage, all assets included. Down from a multi-megabyte WordPress + Elementor payload. Compresses on edge, served gzip + brotli.
Single semantic H1 per page, hierarchy H1 → H2 → H3 in document order. Google reads page topic correctly on first crawl.
GeneralContractor + LocalBusiness with NAP, service area, opening hours. Service schema per service page. FAQPage on the FAQ. Review + AggregateRating on testimonials. Five rich-result types live.
Hand-curated XML sitemap with every URL Google should care about, and nothing else. Zero theme template parts. Zero leaked draft pages. Zero crawl-budget waste.
Properly sized share image with brand mark + service tagline. Every share to Facebook, LinkedIn, iMessage now renders a real preview card.
Eighteen metrics, measured the same way.
Live WordPress site on the left. Statically rebuilt site on the right. Same tooling, same network throttle.
Slow + unindexable = invisible.
A 12-second mobile load predicts a roughly 90% bounce rate for paid traffic. Three H1 tags and a sitemap full of theme template parts predict suppressed organic ranking on every money keyword. No GeneralContractor schema and no on-site address predict a weak Google Business Profile tie-in and a lower position in the local-3-pack.
For a Vermont contractor competing for “general contractor near me” and “vermont remodeler” — every one of those 18 findings is a ranking surface surrendered to a competitor who got the basics right. Lighthouse's 100 SEO score is what other agencies show you to feel good. The list above is what actually moves rankings.
Want this on your site?
Same audit. Same rebuild. Built around the way local customers actually find and trust your business.
Notice: The rebuild linked above is a non-commercial spec build — a portfolio piece, not a paid client engagement. All live-site metrics captured with publicly available tooling (Google Lighthouse 12, headless Chromium) on 2026-04-23. Findings are reproducible against the live URL on the date stamped above.