Accessibility
Colours

Saved on this device.

CASE STUDY

One file, first page.

A local service business in Dover, rebuilt the zip.ms way. Every number below is dated, and every one can be re-checked from the links at the bottom.

The client and the problem

A local service business in Dover competes for customers who search, compare, and choose in about a minute, usually on a phone. Its website is that minute. It needed to open instantly, look like the professional outfit it is, and show up when people in its town search for its trade. Most sites in this position are heavy templates that do none of the three.

What was built

One self-contained file per page: layout, styling and images handled in a single response, served pre-compressed from the edge. No trackers, no cookie banner and no third-party scripts. Ten public pages, plus a Plain English version and an Easy Read version for readers who want plain words. Structured data, so search engines read it as cleanly as people do.

It cannot quietly get slower either. Every deploy runs a gate first. The gate is the build, the tests, a check that no style or label has broken, and a payload budget that can only move down. If any of it fails, nothing ships.

Since 29 Aug 2026 the same gate runs again on every change, on a clean machine and in a real browser. Only then is the site allowed to update.

The receipts

Measured live on 29 Aug 2026. Sources: Google PageSpeed Insights (mobile, Lighthouse 13.4.1) and direct wire measurement.
MeasureResult
Google PageSpeed, all four categories100 · 100 · 100 · 100
Agentic Browsing (Google's newest category)3 of 3, every audit
Main content visible0.9 s on Google's emulated phone
Layout shift while loading0
Time blocked by scripts0 ms
First view, total13,787 bytes, one request. The photo lower down loads only if you scroll to it.
Repeat visitabout 1 KB: the browser revalidates instead of re-downloading

Three befores, each measured on the day it was fixed. On 26 Aug 2026 repeat visitors were re-downloading the full 16,480 bytes every visit, because the site had no validators. That is now a 1,053 byte check. A missing icon file was silently serving a 23 KB error page to browsers that asked for it; it now costs a few hundred bytes.

And on 29 Aug 2026, visitors whose software cannot accept Brotli turned out to be getting the page uncompressed, at 78,487 bytes. That is no modern browser, but it does include plain curl, some corporate proxies, older crawlers and a number of AI fetchers. They now get 20,726. Small numbers, thousands of visits.

Accessibility, checked by hand

Google scores this site 100 for accessibility. It scored 100 before the problems below were found as well. That is the point: an automated tool cannot see most of what actually stops someone using a page. So every page was tested by hand on 29 Aug 2026.

Three failures a perfect automated score had missed. The main Get a free quote button was white text on orange, measuring 2.15 to 1 against a requirement of 4.5 to 1. The hero gradient ended on a blue where even pure white measured 4.49 to 1, one hundredth of a point under the line. Three service pages scrolled sideways on a 320 pixel screen. All three are fixed.

The site meets WCAG 2.2 Level AA on all ten pages, and ten Level AAA criteria beyond that, each checked one at a time. Every text and background pair was measured in all five colour settings, which is fifty page and colour combinations.

Every page has a Reading options panel. It offers black on white, white on black, dark on cream and yellow on black, plus wider spacing between lines. Your choice follows you from page to page. The full accessibility statement for that site lists what was tested, how, and what is still imperfect.

What it changed

This business sells two different things to two different customers, and the site is on the first page of Google for both. For the residential service in the village it works, it holds three places: the map listing, the homepage, and the page written for that village. For commercial work in the town, the page written for that service is on the first page as well. Checked on 29 Aug 2026 from a browser in Dover, with Google stating the results were not personalised.

It does not appear on the first page for the broad town-wide residential search, and it is not built to. That search brings enquiries this business does not take. Pages aimed at what someone actually sells beat one page aimed at everyone. As other outcomes accumulate they will be added here, dated.

Check it yourself

Nothing above asks for trust. The site is jcmwindowcleaning.co.uk, its scores sit on the public scoreboard with dates, and you can run Google's test on it yourself right now. If the numbers have changed since 29 Aug 2026, the test will say so, which is the point.

Your business could be the next one.

The demo comes first. You only pay if you keep it.

Get a free demo