Why You Should Have a Static Site
Static sites are fast, secure, and cheap to run. With a modern SSG like Astro, you get a great developer experience, content in Git, and JavaScript only where it earns its keep.
Most marketing sites, portfolios, and blogs do the same job: a homepage, a handful of inner pages, and maybe a news section. None of that needs a live database on every request. A static site, with HTML generated ahead of time and served from a CDN, is often the best fit, and the tooling has never been better.
What static actually means
A static site is built once, at deploy time. Your build step turns Markdown, components, and data into plain HTML, CSS, and JavaScript files. When someone visits the site, the CDN hands them a file. No server rendering on the fly. No database query before the first paint.
That sounds limiting until you realise how much of the web is read-only content. Product pages, case studies, team bios, pricing tables, blog posts. All of it can be pre-rendered. If you need interactivity (a contact form, a search box, a cart), you add it surgically, not site-wide.
Fast by default
Speed is not a nice-to-have for brochure sites. It affects bounce rate, search ranking, and whether someone trusts you enough to get in touch.
Static sites start fast because the work is done before anyone visits. Pages are cached at the edge, close to the user. There is no cold start waiting on a server, no connection pool, no ORM round trip. Core Web Vitals are easier to hit when your HTML arrives complete.
Modern static hosts like Netlify, Cloudflare Pages, and Vercel push this further with automatic asset optimisation, HTTP/2, and global distribution. At modest traffic, hosting often costs £0–£5/month.
Secure by design
Every admin login on the public internet is an attack surface. Static sites do not have one on the live site. There is no dashboard to brute-force, no database to dump, no plugin with a forgotten CVE.
Your attack surface shrinks to the CDN and whatever third-party scripts you choose to load. Content changes happen in your build pipeline, not through a dashboard exposed to the world. Roll back a bad deploy by reverting a commit and redeploying good files.
Cheap to own
A static site is files in a repo plus a hosting bill. No platform subscription. No per-seat licensing. No surprise renewal on managed hosting.
Over three years, a brochure site on Git plus a modern SSG routinely costs a fraction of what teams spend on heavier stacks. That is money better spent on design, content, or literally anything else.
Content belongs in Git
Store pages and posts as Markdown or MDX in a GitHub repo. Edit in your IDE, on GitHub, or through a pull request. You get version history, branching, review, and portability for free.
Preview deploys on every branch let stakeholders sign off before anything hits production. “Who changed this paragraph and when?” is a git log question, not a support ticket.
Non-technical stakeholders are not locked out either. Describe a change in plain English and let AI edit the repo: “Update the homepage headline.” “Fix the typo in pricing.” “Draft a blog post from these notes.” Tools like Cursor, Claude Code, and Copilot handle Markdown and frontmatter well. I have packaged this workflow in Astro x Claude: an Astro template with skills, hooks, and GitHub Actions CI baked in.
Why Astro in 2026
Static sites are not new. Jekyll proved the model in 2008. Hugo made builds blisteringly fast. Gatsby and Next.js brought React into the picture. Astro is where a lot of this lands now, and for good reason.
JavaScript only where you need it. Astro ships zero client-side JavaScript by default. Pages are static HTML unless you opt in. The islands architecture hydrates interactive components in isolation (a carousel, a mobile nav, a theme toggle) without paying for a full SPA on every route.
Bring your own UI. Astro is not tied to one framework. Drop in React, Vue, Svelte, or Solid components where interactivity matters and leave the rest as plain HTML.
Content collections. Define a schema for your blog posts, case studies, or team members in src/content/. Astro validates frontmatter at build time. Typos in a date field fail the build, not production.
MDX when you want it. Write in Markdown for speed. Reach for MDX when a page needs a bespoke component inline: a callout, a chart, or an embedded demo.
Room to grow. Astro is static-first, not static-only. Add server endpoints, on-demand rendering, or actions when a feature genuinely needs a server. You do not have to rip the site apart to add a contact form or a newsletter signup.
For agency sites, developer portfolios, and product marketing, this is the sweet spot: mostly static HTML, modern DX, and a path forward when requirements change.
When static is not enough
Static is not universal. You will want a server when you need:
- Real-time inventory, pricing, or personalisation at scale
- User accounts, dashboards, or authenticated workflows
- Heavy e-commerce beyond a handful of products
- Content syndicated to apps and other channels from a single live API
That is a different brief. For everything else, a site that explains who you are, what you do, and why someone should hire you, static is not a compromise. It is the grown-up choice.
What a good static setup looks like
- Astro (or similar) as the SSG. Components, layouts, and content collections.
- Markdown or MDX in the repo. Pages and blog posts as files, not rows in a database.
- Deploy on push. Main goes live; branches get preview URLs.
- CI that builds before merge. Broken frontmatter never reaches production.
- Interactivity as islands. JavaScript for the bits that need it, nothing more.
The bottom line
Static sites are fast, secure, cheap to run, and straightforward to maintain. A modern SSG like Astro gives you a developer experience that matches how teams actually work in 2026: Git, components, type-safe content, and performance without a performance budget meeting.
Astro templates to start from
I maintain a handful of Astro starters you can clone, customise, and deploy. Browse the full set on my templates page, or jump straight to a demo:
- Astro x Claude: agency template with Claude Code skills, hooks, and GitHub Actions CI built in.
- Astro Scifi-UI: free sci-fi interface kit with HUD overlays, panels, and optional React islands.
- Astro Theme Switcher: free token-based design system with runtime theme switching.
- Astro Base: free minimal starter with a landing page, animations, and MDX content.
If you are planning a new site and want to talk through whether static is the right fit, get in touch. Happy to help you scope it.