Service-business websites

Core Web Vitals benchmark of service-business websites by category

We ran Lighthouse on the home pages of 25 service businesses that rank in Google, 5 in each of five categories, on 30 October 2026. The median mobile score was 67. Only 5 met the 2.5-second target for Largest Contentful Paint, and the median was 6.3 seconds. It’s a small lab sample, and the limits are set out below.

By itmarkerz Technologies. Updated 30 October 2026.

The results in one table

Lighthouse mobile results for 25 service-business home pages, 30 October 2026
MeasureResultSites out of 25
Performance score 90 or above (good)Median score 673
Performance score 50–89 (needs improvement)14
Performance score under 50 (poor)8
LCP 2.5 s or less (good)Median 6.3 s5
LCP over 2.5 s, up to 4 s3
LCP over 4 s (poor)17
CLS 0.1 or less (good)Most sites19
CLS over 0.25 (poor)3
Both LCP and CLS in the good range3
Server response 800 ms or lessMedian 103 ms23
Page weight 2 MB or lessMedian 2 MB12
Page weight over 5 MBLargest 10.9 MB4

The thresholds come from Google’s guidance on LCP and CLS, and the score bands from the Lighthouse scoring documentation. The 800 ms server line and the page-weight lines are our own reference points, not official targets. 4 of the CLS values weren’t returned by the testing service. We counted those as good, and the “both” row doesn’t depend on them.

What stands out

The largest element is usually the problem

The gap between the first paint and the largest one is what stands out. The median site showed its first content in 2.2 seconds, but took 6.3 seconds to show the biggest thing on the screen. 17 of the 25 were over 4 seconds. On a service-business home page, that element is often a hero image or video, though we didn’t record which element it was on each site, so check yours.

Servers were rarely to blame

23 of the 25 sites responded within 800 ms, with a median of 103 ms. This number depends on where the test ran and on caching, so it isn’t what every visitor would get. Even so, it suggests buying faster hosting would not have fixed most of these sites. What they load mattered more than where they load it from.

Layout stability was mostly fine

19 sites were in the good range for layout shift, against 5 for loading. 3 were poor, which means content visibly jumped during loading. It’s often among the easier problems to fix, with image dimensions and reserved space for late-loading elements.

Weight matters, but doesn’t decide it

Half the sites were over about 2 MB, and the largest home page weighed 10.9 MB. Heavier pages tended to be slower, but only loosely. One page under 1 MB took more than 5 seconds to show its largest element, while another of nearly 11 MB took less than 5. What loads first matters as well as how much there is.

The platform didn’t tell us much

Lighthouse identified 12 sites as WordPress, 2 as Drupal and 1 as React. It reported nothing for 10, and none as Next.js. The WordPress sites scored from 41 to 98. The 3 sites scoring 90 or more were all WordPress sites running WP Rocket, a caching plugin. Three sites can’t establish cause, but it’s a useful reminder, since we sell both WordPress and Next.js: a site’s platform doesn’t determine its speed.

By category

Read this as a description of these five sites per category, not of each trade. With five sites per row, one result can move a median a long way, and we wouldn’t rank trades on it.

Lighthouse results by category. Five sites in each
CategoryMedian scoreScore rangeMedian LCPLCP goodCLS goodMedian page
Cleaning6240–829 s1 of 55 of 53 MB
Plumbing6749–885.2 s1 of 54 of 50.9 MB
Dental4833–778.8 s0 of 53 of 52.9 MB
Accounting7260–984.3 s1 of 55 of 51.9 MB
Electrical7047–965.4 s2 of 52 of 51.2 MB

Every site, anonymised

Sites are numbered by score within each category. The numbering has nothing to do with search position.

Lighthouse results for each anonymised site
SiteScoreLCPCLSTBTServer responsePage
Cleaning 1822.2 s0.028664 ms75 ms1.2 MB
Cleaning 27310.6 s0.000not returned141 ms6.6 MB
Cleaning 36216.2 s0.029238 ms250 ms3 MB
Cleaning 4457.2 s0.017790 ms289 ms1.4 MB
Cleaning 5409 snot returned1,835 ms26 ms4.5 MB
Plumbing 1882.3 s0.18334 ms13 ms0.9 MB
Plumbing 2756.3 s0.002174 ms12 ms0.8 MB
Plumbing 3675.2 s0.000315 ms235 ms3.6 MB
Plumbing 4653 snot returned1,957 ms97 ms0.8 MB
Plumbing 54910 s0.033968 ms81 ms5.4 MB
Dental 1772.6 s0.156448 ms179 ms5.9 MB
Dental 2674.8 s0.079415 ms49 ms10.9 MB
Dental 3488.8 snot returned797 ms206 ms2.2 MB
Dental 44116.4 s0.019967 ms607 ms2.9 MB
Dental 53311.2 s0.350626 ms103 ms2 MB
Accounting 1982.3 s0.011not returned71 ms0.8 MB
Accounting 2804.3 s0.005188 ms100 ms0.7 MB
Accounting 3729.3 snot returned17 ms78 ms1.9 MB
Accounting 4656.9 s0.011309 ms64 ms5 MB
Accounting 5603.2 s0.0003,577 ms131 ms3.2 MB
Electrical 1962 s0.114not returned500 ms1.2 MB
Electrical 2932.5 s0.00232 ms1,583 ms0.7 MB
Electrical 37011.6 s0.025250 ms66 ms1.5 MB
Electrical 44818.9 s0.414120 ms1,290 ms3.3 MB
Electrical 5475.4 s1.015not returned523 ms0.9 MB

TBT is Total Blocking Time, the time the page was too busy to respond during loading. It’s a lab measure and not a Core Web Vital. “Not returned” means the testing service left the value out of its response. We show that rather than guess.

The method

  1. Categories. Five common local service types, chosen by us: cleaning, plumbing, dental, accounting and electrical.
  2. Selection. On 30 October 2026 we pulled Google’s mobile results through the DataForSEO SERP API, for one search in one city per category (table below). We took the first five organic results, in order, that were a business’s own website, and tested each site’s home page.
  3. Exclusions. Directories, marketplaces, review and list articles, job boards, trade associations, social media and paid results. We didn’t remove any site for scoring badly, and we didn’t replace any site after testing it. All 25 tests completed.
  4. Test. Lighthouse 13.4.0, performance category only, run through DataForSEO’s hosted Lighthouse service with the mobile setup: an emulated Moto G Power, simulated throttling at 150 ms round-trip time and about 1.6 Mbps, and a 4× CPU slowdown. A few tests ran at a time.
  5. Runs. One run per site, which is the number in every table. We repeated 5 sites, one per category, to see how much a result moves. We report the first run, whichever was better.
Searches used to select sites
CategorySearchLocation set for the search
Cleaningcleaning company perthPerth, Australia
Plumbingplumber manchesterManchester, UK
Dentaldentist austinAustin, US
Accountingaccountants leedsLeeds, UK
Electricalelectrician denverDenver, US

How much to trust this

Single runs move a lot. The Lighthouse documentation says scores fluctuate and are better seen as a distribution. Our repeats, run later the same day, agree:

First and second run for the five repeated sites
Repeated siteScore, first runScore, second runLCP, first runLCP, second run
Repeat 145767.2 s4 s
Repeat 265923 s2.8 s
Repeat 3414516.4 s8.4 s
Repeat 460553.2 s7.3 s
Repeat 596962 s2 s

One site’s score moved by more than 30 points, and on two sites LCP roughly doubled or halved. So don’t read much into any one row of the site table. The overall pattern is sturdier, but it comes from single runs as well.

The other limits are these.

  • It’s lab data. It simulates one mid-range phone on one slow connection. Real visitors vary, and Google assesses Core Web Vitals at the 75th percentile of real page loads.
  • INP isn’t measured. Interaction to Next Paint needs real interactions. Google’s article says TBT can serve as a proxy but isn’t a substitute, so we make no claim about INP.
  • It’s a small sample, and not a random one. 25 sites, chosen because they already rank in one city each. Some are larger firms, so this isn’t a picture of all small businesses.
  • Home pages only. Someone from search often lands on a service page, and those can behave differently.
  • One day. A site can change the next day, and this result won’t follow it.
  • We don’t know where the test server sits. The service doesn’t say, which is one reason server response may not match what a local visitor gets.
  • Field data is missing. We wanted to add Chrome real-user data as well, but Google’s public PageSpeed Insights API was rate-limiting us, so we didn’t. Many small sites may have none anyway, because the Chrome UX Report only includes sufficiently popular pages and origins.

Results we threw away. We first ran Lighthouse on our own computer, using Edge, while it was busy with other work. The first five completed runs all scored between 24 and 27, which looked wrong. One of those sites scored 25 there with LCP at 10.8 seconds, and 60 with LCP at 3.2 seconds on the hosted service. The machine was the problem, so we discarded those runs and used none of them here.

What each number means

Largest Contentful Paint is when the biggest visible image or block of text appears, and it’s the closest of these to “when does the page look ready?”. Cumulative Layout Shift measures how much things jump around while the page loads, the effect that makes you tap the wrong button. Total Blocking Time is how long the browser was too busy to respond while loading.

The performance score blends these. The Lighthouse documentation weights Total Blocking Time at 30%, LCP and CLS at 25% each, and First Contentful Paint and Speed Index at 10% each. That’s why the score and LCP don’t always agree in the site table: one page here with LCP over 4 seconds scored 80, while two with LCP near 3 seconds scored in the 60s, with heavy blocking time on each. For a business owner, LCP is the more useful number to watch, and the score is the quick summary.

What would make this better

A stronger version would use more sites per category, three or more runs per site, service pages as well as home pages, and real-user data where it exists. If we repeat it, we’ll publish it as a new dated test and keep this one as it is, rather than quietly changing the numbers. If you run a similar test and get different results, we’d like to hear about it.

Check your own site the same way

  1. Open PageSpeed Insights and enter your home page and your busiest service page.
  2. Look at the mobile result. If it shows real-user data at the top, that is the one to trust. It’s the closest thing to what Google uses.
  3. Run the lab test three times and take the middle result, because of the noise shown above.
  4. Compare with this page’s medians: score 67, LCP 6.3 seconds, page weight 2 MB. Beating those means you’re ahead of these ranking sites on one lab test. It doesn’t mean you’re done, since the target is 2.5 seconds.
  5. Find what Lighthouse names as the LCP element. If it’s an image or a video, that’s your first job.

Our post on how fast a small-business website should be turns this into targets and an order of work. A faster page helps only if the rest of the site does its job, so see also what a cleaning website needs to get quotes and the local SEO checklist.

Service-business sites we have built

Questions

Does this show which trade has the slowest websites?

No. There are 5 sites in each category, each from one search in one city. The differences between categories are smaller than the differences within them, and the repeat runs show single results moving a lot. Treat the category rows as a description of these sites only.

Why don’t you name the sites?

The point is the pattern, not embarrassing small businesses over a single test on a single day. The sites are numbered by score within each category, and the search and location we used are published, so you can run the same method yourself.

Did these sites pass Core Web Vitals?

We can’t say. A real pass is judged on Chrome users’ field data at the 75th percentile, and includes Interaction to Next Paint, which a page-load test like this doesn’t measure. We compare lab results with the published thresholds only as a yardstick.

Did you include sites you built?

Neither of the cleaning sites we built, Xavis Cleaning and Warlimagu, appeared among the sites selected, so they aren’t in these results. We didn’t add them, because choosing to add our own work would undermine the sample.

More on service-business websites

Want your site measured the same way?

Send us the address. We will tell you what is slowing it down and which fix to make first.

We reply within one business day (IST).