Run by Claude

Page Speed for Contractors: Why Your Site Score Matters (And What to Fix First)

MurphJune 15, 20265 min read

A slow contractor site costs you on two fronts at once.

First, it costs you rankings. Google has used page speed as a direct ranking signal for over a decade. In 2021 they hardened that into Core Web Vitals — three specific performance metrics that now factor into every search result, local included.

Second, it costs you conversions. A homeowner searching "roof replacement near me" on her phone at 7pm doesn't wait for a 6-second load. She's back to the results and on your competitor's site in 3.

Check how your site's speed stacks up against your top local competitor — free audit →


What PageSpeed Insights Actually Measures

Google's free PageSpeed Insights tool gives your site a score from 0–100, separately for mobile and desktop. The score is calculated from a weighted combination of six performance metrics. The three that matter most for contractors:

LCP — Largest Contentful Paint. How long until the biggest visible element loads. For most contractor sites that's a hero image or banner. Target: under 2.5 seconds. Most slow contractor sites land at 4–7 seconds. Every second over 2.5 is a ranking and conversion drag.

INP — Interaction to Next Paint. How fast the page responds when someone taps a button or link. Target: under 200 milliseconds. High INP usually means too much JavaScript running on the main thread. Common culprit: a contact form plugin with a full React bundle attached.

CLS — Cumulative Layout Shift. How much the page visually jumps around while it's loading — images that load in and push the text down, fonts that swap and reflow content. Target: under 0.1. High CLS is the one that makes users miss-click a button because the page moved under their finger.

To check your scores: go to pagespeed.web.dev, type in your URL, and run the test. Run it twice — once for desktop, once mobile. Mobile is the score that matters for local search.


Why Mobile Is the Number That Matters

Over 60% of local searches happen on mobile. "Plumber near me," "roofing contractor Akron," "tree service open now" — these are almost always typed on a phone.

Google indexes and ranks your site based on the mobile version. This is called mobile-first indexing, and it's been the default since 2019. Your desktop score can be 95 and if your mobile score is 45, Google is ranking you based on the 45.

The gap exists because mobile devices have slower CPUs and less reliable connections than desktops. A JavaScript bundle that executes in 200ms on a MacBook takes 800ms on a mid-range Android phone. If your site is built on a heavy WordPress theme, that gap is dramatic.


Why Most Contractor Sites Are Slow

The pattern is consistent across the sites we audit:

Unoptimized images. A photo uploaded straight from an iPhone is 3–8MB. The same image in WebP format at web resolution is 80–200KB — 30–50x smaller with no visible quality difference. Most contractor sites have 10–20 unoptimized images on the homepage alone. That's often 50MB of image data the browser has to download before the page can fully render.

Cheap hosting without a CDN. A content delivery network (CDN) serves your site from servers close to each visitor, rather than from a single origin server. Without one, a visitor in Cleveland is fetching files from a server in Dallas. That adds 100–400ms of latency on every request. Most budget WordPress hosts don't include a CDN.

Too many plugins. Every WordPress plugin adds CSS and JavaScript to every page load, whether that page needs it or not. A site with 30 active plugins is loading 30 additional scripts. Most of them aren't contributing anything visible to the user.

Render-blocking scripts. Scripts that load in the <head> of an HTML file block the browser from rendering any content until they fully download and execute. Third-party scripts — analytics, chat widgets, review badges — are common culprits. A properly configured site loads these after the main content, so the visible page appears fast even if background scripts take longer.


The Fixes That Move the Score

Prioritized by impact-to-effort ratio:

1. Convert Images to WebP and Add Lazy Loading

WebP is the modern image format Google recommends. It delivers the same visual quality as JPEG at 25–35% smaller file size. For photos (contractor work galleries, headshots, before/after) the savings are dramatic.

Add lazy loading to every image that's not in the viewport on initial load:

<img src="job-photo.webp" loading="lazy" alt="Roof replacement in Akron, OH" />

In WordPress: use the Smush or ShortPixel plugin to convert existing images and automate compression on upload. In Next.js: the next/image component handles WebP conversion, lazy loading, and responsive sizing automatically.

Expected impact: 10–30 point score improvement on most contractor sites. This is the highest-leverage fix.

2. Move to a Host With a CDN

Vercel, Cloudflare Pages, Netlify — any of these include a global CDN by default. For WordPress: WP Engine and Kinsta include CDN. Cloudflare's free plan can sit in front of any host.

Expected impact: 50–200ms reduction in Time to First Byte. For mobile users on slower connections, this matters.

3. Defer Non-Critical Scripts

Third-party scripts that don't need to run before the page is interactive should load with defer or async:

<script src="analytics.js" defer></script>

In WordPress: use the Flying Scripts plugin to defer third-party scripts site-wide. Most WordPress themes don't do this by default.

Expected impact: 5–20 point score improvement, particularly on INP.

4. Audit and Remove Unused Plugins

Run your site through a tool like Query Monitor or check your Network tab in Chrome DevTools. Count how many JavaScript files are loading. If you have more than 10–15, start auditing which plugins are actually used. Deactivating unused plugins is the fastest path to fewer HTTP requests.

Expected impact: Variable. On a site with 40+ plugins, removing 10–15 unused ones can improve scores by 10–20 points.


Page Speed and AI Search

AI search systems — Perplexity, ChatGPT search, Google AI Overviews — crawl your site to build their answers. Crawlers have fetch budgets: they'll spend a limited amount of time and bandwidth on your site before moving on.

A slow site eats into that budget. Pages that take 4–6 seconds to serve get crawled less frequently, which means your content updates reach AI search systems more slowly.

The same technical foundation that makes your site fast for users makes it more efficiently crawlable: clean URLs, schema markup, fast response times, and a proper robots.txt that doesn't block crawlers.


What the Site Health Audit Module Checks

When you run a VibeTokens brand audit, the Site Health module pulls your PageSpeed Insights scores directly — mobile and desktop separately. It flags:

  • Overall performance score (0–100)
  • Mobile score vs. desktop score (the gap tells us where the problems live)
  • LCP, INP, and CLS against Google's thresholds
  • Whether you're passing or failing Core Web Vitals

The module compares your scores to your top local competitor, so you can see if the speed gap is costing you rankings in real terms — not just in abstract percentile scores.

Run a free audit and see your site speed vs. your top local competitor →


The Full On-Page SEO Foundation

Page speed is one layer of a complete technical SEO stack. The others:

  1. Title Tags — the #1 on-page ranking signal
  2. Meta Descriptions — write for clicks, not rankings
  3. H1 Structure — the page's topic declaration
  4. Internal Linking — how Google understands your site structure
  5. URL Structure — the first signal Google reads
  6. Page Speed — the experience signal ← you're here

Get all six right and you have a technical foundation that compounds. Most contractors have none of them dialed in. That's the opportunity.

See what your site looks like through Google's eyes — free audit in about 2 minutes →

Want to see how your business stacks up?

Get a free brand audit — we'll show you what's working, what's not, and what to fix first.

Free Brand Audit →
Jason Murphy

Written by

Murph

Jason Matthew Murphy. Twenty years building digital systems for businesses. Former CardinalCommerce (acquired by Visa). Now running VibeTokens — a brand agency for small businesses that builds websites, content, and growth systems with AI.

Live Workshop · April 27

Build your Claude OS in 4 hours. CLAUDE.md, MCP servers, 3 custom workflows. 8 seats, $247.

Reserve Seat →

Your brand is your first impression.

Find out if it's costing you customers.

Free brand audit. We analyze your online presence, competitors, and messaging — then tell you exactly what to fix.

Get Your Free Brand Audit →