Page speed: the 5 fixes that actually matter
Speed scores get the attention. The wait on a customer's phone is what costs calls, and these five fixes shorten it, with numbers from our own phone tests.
Turn off the Wi-Fi on your phone and open your website. Count the seconds until the main photo and headline show up. If you’re still counting at four, you’re in the same spot as most of the local business sites we test, and it’s a problem you can fix.
Speed tools lead with a score out of 100, and I’d set it aside at first. The number that matters is how long a customer waits before they can see what you do, because that’s when they decide whether to call.
Measure it properly
Your phone count is a good start, but it depends on your signal that day. For a steadier number, run your homepage and your main service page through PageSpeed Insights. It’s free and needs no account.
The line to look for is Largest Contentful Paint, or LCP. It’s the moment the biggest thing on the first screen shows up, which is usually the main photo or the headline. Google counts 2.5 seconds or less as good and more than 4 seconds as poor. LCP is one of Google’s three Core Web Vitals, its measures of how a page loads, how fast it responds to a tap and whether it holds still while loading. This post is about the first one.
PageSpeed Insights can show two kinds of numbers. If your site gets enough visitors, the report opens with data from real visits in Chrome, and that’s what Google judges Core Web Vitals on: a page passes when at least three in four visits meet the mark. Below that, or instead of it on sites with little traffic, you’ll see a lab test run on the spot.
The lab report is where the useful detail is. Google’s Lighthouse test, which PageSpeed Insights runs, names the element it counted as your main content and breaks the wait into four parts: the server’s first response, the delay before the main image starts loading, the download itself, and the time to draw it on the screen.
Find the biggest part. If it’s the server’s response, start with fixes 2 and 5 below. A long delay before the main image starts loading usually points to fix 1, and so does a long download, along with the CDN in fix 5. A long gap between download and display points to fixes 3 and 4. If your main content is a headline instead of a photo, there’s no download step, and the wait comes from the server or from scripts and fonts holding back the text.
What we found on local business sites
Between late September and mid-October 2026, we tested 309 Georgia law firm websites and 328 Atlanta-area trades websites. Each homepage loaded the way Lighthouse loads a page for phones: as a mid-range Android phone on slow 4G, with an empty cache. Google’s Lighthouse documentation describes that connection as roughly the bottom quarter of 4G connections, and the empty cache stands in for someone who has never visited the site before. We left out sites that blocked the test or failed to load.
| Georgia law firms | Atlanta-area trades | |
|---|---|---|
| Sites tested | 309 | 328 |
| Median time until the main content shows | 5.9 seconds | 7.3 seconds |
| Longer than 2.5 seconds (Google’s “good” line) | 85% | 93% |
| Longer than 4 seconds (Google’s “poor” line) | 66% | 80% |
| Longer than 5 seconds | 56% | 66% |
| Longer than 10 seconds | 31% | 38% |
| Median time until fully loaded | 12.1 seconds | 16 seconds |
| Median page weight (data the phone downloaded) | 1.6 MB | 2.2 MB |
The median is the middle site, with half faster and half slower. Of the four largest trade groups (HVAC, roofing, landscaping and tree service), HVAC sites were the quickest, with a median of 5.7 seconds across 93 sites, and tree service sites the slowest, at 8.4 seconds across 52.
Our tool’s numbers are close to PageSpeed Insights but won’t match it to the decimal, and real visits from newer phones on stronger signals will often be faster than our test. If real visits did match it, about two in three law firm sites and four in five trades sites would land in Google’s poor range. Either way, most of these homepages make a customer wait several seconds before showing what the business does.
Speed wasn’t the only thing standing between these sites and a call. On the first screen, 40% of the law firm sites and 25% of the trades sites had no tap-to-call link, and more than half showed no phone number (57% of the law firms, 52% of the trades).
Why speed matters for calls
Google says its ranking systems use Core Web Vitals, and it recommends good scores for success with Search. Its page experience guide also says there’s no single page experience signal, and that Google shows the most relevant content even when the page experience is weak. A good experience can help you stand out when many pages answer a search about as well as yours. In plain words, speed can help you edge past a similar page, and it won’t lift a page that doesn’t answer the search.
The bigger cost of a slow page is a customer you don’t hear from. Someone who searched for help and is still waiting for your page can go back and tap the next result. That visitor won’t show up in your call log, because they didn’t call.
Speed was one of the first fixes we made for Dante Law, a Florida injury firm, alongside structured data and the sitemap, and I can’t tell you how much of the firm’s growth came from speed alone. We built the application page for Auto Relief Assistance to load in under 2 seconds from the start.
The five fixes
Each of these shortens one or more parts of the wait. Google’s web.dev guide to optimizing LCP goes deeper on all of them if you or your web person want the technical version.
1. Shrink the main image
If your homepage opens with a big photo, that photo is probably the main content Google measures, and the bigger the file, the longer the download. Google’s guide recommends serving the image at the size the screen needs, compressed and in a modern format like WebP or AVIF. A phone doesn’t need the full-size photo from a camera or a stock site.
Two things we find in reviews are a slider that loads several large photos where one would do, and award badges or logos saved as huge files. Swap the slider for one photo and shrink the badges.
Then check how the main image loads. Lazy loading, which waits to load an image until a visitor scrolls near it, is right for photos further down the page. On the main image it holds back the thing Google measures, and web.dev says never to lazy-load it. The same guide suggests marking the main image as high priority, with fetchpriority=“high”, so the browser fetches it early.
2. Speed up the server’s first response
Before a phone can show anything, your server has to start sending the page. Google calls that wait Time to First Byte and counts 0.8 seconds or less as good and more than 1.8 seconds as poor. Its LCP guide treats about 40% of the total wait as a reasonable share for the server’s response.
Slow first responses often come from work the server repeats on every visit. Google’s guide to optimizing that first response says WordPress speed depends on the number and quality of your plugins and on the theme, and it warns about redirects. Remove the plugins you don’t use. Make sure the address in your Google Business Profile and your ads goes straight to the final page, without bouncing from one version of your address to another first.
3. Stop scripts and fonts from blocking the page
Some files make the browser stop and wait before it shows anything. Lighthouse flags scripts in the page’s head without async or defer, along with stylesheets that apply to every screen, and Google’s LCP guide says scripts loaded that way in the head are almost never needed. Ask whoever runs your site to defer the scripts the first screen doesn’t need, put the small amount of styling the first screen does need right in the page, and remove code nothing uses.
Fonts can hold back your headline too. Google’s font guide recommends font-display: swap, which shows your text in a backup font while the custom one loads. It also recommends the WOFF2 file format and fewer font files overall. We’ve found a whole icon font loaded for a handful of icons.
4. Delay third-party widgets
Chat bubbles, review widgets, booking tools, video embeds and tracking tags load code from someone else’s server. Google’s guide to third-party JavaScript says to load those scripts with async or defer unless the first screen needs them, to load embeds only when they’re needed, and to remove any script that doesn’t add clear value.
For chat and video, Lighthouse suggests a facade, a light placeholder that looks like the chat button or the video and loads the real thing only when someone taps it. One booking widget we found in a review loaded in the page’s head before anything else, and it was the biggest file on the page.
On a phone, widgets can also cover what matters. We’ve found a cookie banner and a chat bubble sitting on top of a homepage’s two main buttons.
5. Fix hosting and caching
Google’s guide to the server’s first response says shared hosting is generally slower, and that your host has to be able to handle the traffic you send it. On some sites we tested twice, the server took several seconds longer to answer on one run than on the other, and swings like that often point to the host or to missing caching.
Caching helps in two places. Page caching saves a ready-made copy of each page, so the server doesn’t rebuild it for every visitor. A content delivery network, or CDN, keeps copies of your files on servers closer to your visitors, and Google’s guide calls it a high priority for a faster first response. Browser caching helps people who come back, but a customer who finds you on Google for the first time has nothing saved yet, which is why we test with an empty cache.
Test again
Fix the biggest part of the wait first, then test again. Keep going until your main content shows in about 2.5 seconds on that test. You don’t need a perfect score, since customers never see it.
If you’d rather have us look first, our free website review starts with this same phone test and puts the result in plain words: how many seconds your main content takes to show on a phone, and what would fix it. It also covers the 3 to 5 specific things on your site that are costing you calls.