Performance
A developer-friendly checklist for finding and fixing the common causes of a slow business website, without chasing a single score.
Speed is not a single score. It is how long a customer waits before the page is useful, how much the layout jumps while it loads, and whether the booking button responds when tapped. A site can score well in a laboratory and still feel slow on a phone in a clinic waiting room.
This checklist starts with measurement and then moves through the causes that produce the largest gains for a typical small business website.
Do not optimise the home page alone. Measure the pages customers actually use: the main service page, the contact page, and the booking or checkout flow. Run the test on a throttled mobile connection, not office broadband.
Record three numbers before changing anything: the time until the main content is visible, the total page weight, and the number of requests. Without a before-and-after record it is impossible to know whether a change helped.
Images are usually the largest download on a small business site. A photograph straight from a phone can be several megabytes. Resize it to the largest size it will actually display, compress it, and use a modern format where the browser supports it.
Do not lazy-load the image that is visible at the top of the page. Do lazy-load images further down. Give every image explicit width and height so the page does not jump as it loads.
Every chat widget, tracking pixel, heatmap, font loader, and embedded map adds a request and often its own JavaScript. Some are worth it. Many were added for a campaign that ended two years ago and nobody has removed them.
List every third-party script, who owns it, and what it does. Remove what is not used. Load the rest after the main content, and prefer a provider that offers a lightweight or server-side option.
A fast page still feels slow if the server takes a second to respond. Check the time to first byte from the regions your customers use. A host in one country serving customers on another continent needs a content delivery network or a closer region.
Caching helps static assets and, where the platform supports it, rendered pages. Configure long cache lifetimes for versioned files such as images, fonts, and compiled scripts. Do not cache personal or booking pages in a shared cache.
A page that moves while a customer is about to tap the booking button causes real errors, especially on a phone. Reserve space for images, banners, consent notices, and embedded widgets. Load the consent notice in a way that does not push the whole page down after it appears.
Check the main thread as well. A large JavaScript bundle can make the page look ready while taps are ignored for a second or more. Remove unused code, split what is not needed on first load, and test the booking flow on a mid-range Android phone.
Written and maintained by Bitecodes. If something here is wrong or out of date, tell us and we will correct it.
A practical pre-launch checklist covering bookings, patient privacy, accessibility, performance, and the handover every practice should insist on.
What to prepare before an AI assistant answers customers: content, boundaries, escalation, privacy, cost control, and a way to measure whether it helps.