Many local business websites are slow, and they don’t need to be. A plumber, a landscaper, or a damp-proofing company doesn’t need a heavy content management system loading a dozen scripts before the phone number shows up. For a site that’s mostly fixed information — services, areas covered, a contact form — a static site built with Astro and hosted free on Cloudflare Pages loads almost instantly and costs nothing to run.
Here’s the approach I’ve been using for local service sites.
Why static beats a database-driven CMS here
A traditional WordPress site builds every page on request: PHP runs, the database gets queried, the page gets assembled, then sent. That’s the right trade-off when content changes constantly or lots of people are logged in. A local trades site isn’t that. The services page in January is the same in June.
Astro builds every page once, ahead of time, into plain HTML. There’s no database to query and no server-side work when someone visits, so pages arrive as fast as the host can send them. On Cloudflare’s network that means they’re served from a data centre near the visitor, which for a local business chasing local customers is exactly what you want.
The stack
-
Astro for the site itself. It’s built for content-heavy sites and ships almost no JavaScript by default, so you’re not paying a speed penalty for a framework you barely use.
-
Cloudflare Pages for hosting. The free tier is genuinely enough for a local business site, and it deploys straight from a GitHub repository — push a change, the site rebuilds and goes live in under a minute.
-
A form service for the contact form, since a static site has no back end of its own to process submissions. Something like Web3Forms handles that without a server.
What a finished one looks like
was built on exactly this stack — service pages, individual area pages for each town it covers, a set of guides, structured data for search engines, and a working contact form, all static, all served from Cloudflare’s edge. It’s a useful reference for what the setup produces: fast pages, clean markup, and no monthly hosting bill.
Worth doing if…
This isn’t the right build for every site. If the owner needs to log in and edit pages themselves every week, a CMS still earns its place. But for a local business where the content is fairly settled and speed and running cost matter, static is hard to beat. You get a site that loads instantly, costs nothing to host, and has very little that can break or need patching.