Why your website doesn't need a backend (and when it does)
Most small business sites are paying for servers, databases, and complexity they don't need. Here's the honest breakdown — and the exceptions where a backend actually earns its keep.
When most people imagine how a website works, they picture a server somewhere — a computer running around the clock, waiting for visitors, pulling information from a database, and assembling pages on demand. That mental model made sense in 2005. For most small business websites in 2026, it's not just unnecessary — it's actively making your site slower, more expensive, and harder to maintain. The shift I want to explain is simple: the vast majority of business websites don't need a backend at all, and recognizing that changes everything about how you build and host them.
What "backend" actually means
Before I argue you don't need one, let me be specific about what I'm talking about. A backend is the server-side part of a website: code that runs on a computer somewhere, responds to requests, often talks to a database, and generates pages dynamically. When you log into WordPress and your site assembles your homepage from database rows every time someone visits — that's a backend at work. When you submit a contact form and a server processes it, stores it, and maybe sends an email — backend. When you browse a product catalog and the server queries inventory levels in real time — backend.
The opposite is a static site: every page exists as a complete file before anyone visits. No database queries, no server-side code, no assembly required. The files sit on a global network of servers (a CDN), and when someone visits, the nearest copy of that file is handed to them instantly. No computation, no waiting for a database, no single server that can crash and take the whole site down.
Why this matters for your business
The backend vs. static distinction isn't academic — it shows up in your monthly bill, your page speed, your security posture, and how much work it takes to keep the site running.
- Speed. A static site served from a CDN loads in milliseconds because there's nothing to compute. A WordPress site on shared hosting might take two to four seconds just to assemble the homepage. In a world where visitors bounce after three seconds, that difference isn't theoretical.
- Cost. Running a backend means paying for a server, or at minimum a managed hosting plan that runs someone else's server. Static hosting on Cloudflare Pages, Netlify, or Vercel is free or nearly free for most business sites — you're just storing files and serving them, which costs almost nothing at small scale.
- Security. A backend is attack surface. Every WordPress plugin is code that can have vulnerabilities. Every database connection is a potential leak. Every login page is a target. A static site has no login page, no database, no server-side code to exploit. You can't hack what isn't there.
- Maintenance. Backends need updates — WordPress core, plugins, PHP versions, database patches. Skip them and you're vulnerable. Keep up with them and it's a part-time job. Static sites don't have that tax. The files you built last year still work this year, unchanged.
What a static site actually is
"Static" sounds like "stuck" — a site frozen in amber, impossible to update. That's not what it means. A static site is one where the pages are built before visitors arrive, not while they visit. You can update it as often as you want; you just rebuild and redeploy when you do.
The workflow I use looks like this: I write content and code in a project folder on my server. When I'm ready to publish, a build step compiles everything into pure HTML, CSS, and JavaScript — finished files that any browser can read. Those files get pushed to Cloudflare Pages, which distributes them to data centers around the world. The whole process takes about thirty seconds, and the result is a site that loads faster than anything a traditional server could produce.
The tools I build with — Astro, Tailwind, TypeScript — are all designed for this workflow. They let me write modern, interactive websites that become static files at the end. You get all the polish of a custom-built site with none of the ongoing server burden.
But what about forms? And booking? And e-commerce?
This is where people expect me to backpedal, and I won't — at least not all the way. Most of the "interactive" features small business sites need don't actually require a backend you run yourself. They require a backend someone else runs, which you call when you need it. The difference is huge.
- Contact forms. A static site can't process a form submission by itself, but it doesn't need to. Services like Formspree, Basin, or Cloudflare's own form handling receive the submission, store it, and email it to you. Your site just points the form at their endpoint. No code, no server, no maintenance.
- Booking and scheduling. Calendly, Cal.com, Acuity — embed a widget or link to their page. The booking logic, availability checking, and calendar sync all happen on their servers. You pay a monthly fee and get a booking system you don't have to maintain.
- Payments. Stripe Checkout lets you accept payments by redirecting customers to a Stripe-hosted page. No payment data touches your site. When they pay, Stripe sends you a webhook notification. You can even generate invoices and subscriptions without writing a line of backend code.
- Live chat. Tools like Intercom, Crisp, or Tawk embed a widget that connects to their infrastructure. Your site ships a snippet of JavaScript; they handle the actual messaging, history, and notifications.
The pattern is the same every time: your static site handles presentation, and external services handle functionality. You get the benefits of static hosting — speed, security, low cost — without giving up the features your business needs.
When you actually do need a backend
I said this post would be honest, so here's the honest list. A backend earns its keep when any of the following are true:
- User accounts with custom data. If your users log in and each one sees different content — a personalized dashboard, saved preferences, private files — that state has to live somewhere, and that somewhere is a database behind a backend. A membership site, a SaaS product, a learning platform with progress tracking: these need backends.
- Real-time collaboration. If multiple people edit the same thing simultaneously — a shared document, a live design canvas, a multiplayer game — you need a server coordinating changes. Static sites can't do that.
- Complex inventory or pricing logic. A static site can display products, but if prices depend on logged-in user discounts, real-time stock levels, or dynamic bundles, you need server-side logic to compute them. E-commerce at scale almost always has a backend, even if the storefront looks static.
- Custom APIs or integrations you control. If you're building software that other systems call into — an API other apps use, a data pipeline that processes uploads, a service that generates reports — that's server-side by definition.
- Regulatory requirements. Some industries require specific data handling: audit logs, encrypted storage, access controls that external services can't provide. If compliance demands you host the data yourself, you need infrastructure to do it.
Notice what's not on that list: most small business websites. A plumber's site, a law firm's homepage, a restaurant's menu, a freelancer's portfolio, a local shop's hours and services — none of these need user accounts, real-time anything, or custom APIs. They need pages that load fast, look good, and show up in search results.
The hidden cost of unnecessary backends
Here's what I see in the wild: a small business owner who was sold a WordPress site years ago. It's hosted on a $20/month plan. The theme hasn't been updated in two years. There are fifteen plugins, three of which conflict with each other. The site scores a 35 on Google's Page Speed test. The owner wants to make a text change and doesn't know how to log in anymore. The agency that built it is out of business.
This isn't a failure of WordPress — it's a failure of matching the tool to the job. WordPress is a powerful content management system designed for sites that need one. A five-page business site doesn't need one. Using it anyway means paying for complexity you don't need, and complexity has a cost that shows up in slow pages, security patches, and helpless frustration when something breaks.
The static alternative for that same site: five HTML files served from a CDN. No login. No plugins. No server to maintain. If the owner wants a text change, they email me, I update one file, the change is live in thirty seconds. If I'm unavailable, any developer can read the files — they're just HTML — and make the change themselves. Nothing to log into, nothing to update, nothing to break.
How I build sites without backends
When I take on a site for a client through the portal, my default stack assumes no backend unless the requirements demand one. Here's what that looks like in practice:
- Astro for the site framework — it produces pure static HTML with JavaScript only where it's needed.
- Tailwind CSS for styling — utility classes that compile into tiny CSS files.
- Cloudflare Pages for hosting — global CDN, automatic SSL, free at this scale.
- GitHub for version control — every change is tracked, every state recoverable.
- External services for dynamic features — Formspree for forms, Calendly for booking, Stripe for payments if needed.
The result is a site that loads in under a second, costs nothing to host, requires no ongoing maintenance, and can be updated by anyone who can read HTML. When you hire me, you're not signing up for an ecosystem that only I can touch — you're getting files you own, on platforms you could manage yourself if you wanted to.
The mental model shift
The shift I'm describing is this: stop thinking of a website as "software that runs on a server" and start thinking of it as "files that exist on the internet." For most business sites, that second framing is more accurate and leads to better decisions.
Your site isn't a machine that needs to be kept running. It's a document that needs to be kept accurate. The difference matters because machines require babysitting — updates, patches, monitoring, restarts when things crash. Documents just sit there, being correct, until you change them. A static site is closer to a document than a machine.
When you need the machine — user accounts, real-time features, complex logic — build the machine. But don't build the machine for a five-page site that displays your hours, your services, and a contact form. That's not engineering; that's habit from a decade ago, and the habit costs you money and speed every month.
What I recommend
If you're starting fresh: assume static until proven otherwise. Define what your site needs to do, not what technology it should use. If the answer is "show information and collect leads," static is the answer. If the answer involves users logging in and seeing personalized data, then talk about backends.
If you have an existing site that feels overbuilt: the rebuild might be cheaper than you think. Migrating from WordPress to a static site is often a week of work, and it eliminates hosting costs and maintenance forever after. The site you're reading right now is static — Astro, Cloudflare Pages, no backend at all — and it handles everything this business needs.
If you're not sure what you need: that's exactly the conversation I have with every new request in the portal. You describe what you're trying to accomplish; I tell you whether it needs a backend, and if it does, we figure out the simplest version that actually works. No upselling complexity you don't need, because I'm the one who has to maintain it.
Have a site that might be simpler than you think?
File a request in the portal. I'll tell you what it actually needs — no charge for the conversation.
Sign up free — no invite needed →