The honest headline is that hosting a small business website in 2026 is free, and has been for years. What is not free, and what nobody quotes you up front, is the specific thing your site does that falls outside the free tier.
That is what this post is about. Not "which host is best," which is unanswerable, but what each one actually meters, what the current numbers are, and which one to pick for a launch that has no traffic yet and no idea what it will need in a year.
I wrote a shorter platform-choice piece as part two of the small-business stack series covering the lock-in question. This post is the numbers, checked today, plus a plan tier that did not exist when I wrote that one.
Every figure below was read from the vendor's own live pricing page on 6 August 2026. Prices change; the citations at the bottom are so you can re-check rather than trust me in six months.
The short answer, before the detail
- A brochure site with a contact form and no application logic: Cloudflare, free, and you will very likely never pay. Netlify free is equally fine and slightly easier if you have never deployed anything.
- A site plus a small amount of real backend work (bookings, a quote calculator, a customer portal): Cloudflare Workers at $5 a month, unless your developer specifically lives in Next.js.
- A team building on Next.js and shipping constantly: Vercel Pro at $20 per seat.
- An operator running many small client sites: Netlify Pro, because the seat model does not multiply.
Now the part that determines whether that stays true.
What each platform actually meters
This is the section that matters, because the free tiers are generous enough that the question is never "is it free" but "what is the thing that will eventually cost me."
Cloudflare: requests and CPU time, and static assets are not counted
The Workers free plan gives you 100,000 requests per day with 10 milliseconds of CPU time per invocation. The paid plan starts at a minimum of $5 per month per account and includes 10 million requests per month, with $0.30 per additional million, plus 30 million CPU milliseconds included and $0.02 per additional million CPU milliseconds.
The line that changes the maths for a normal business site is this one, quoted from Cloudflare's own pricing documentation: "Requests to static assets are free and unlimited."
Read that again if you are used to older hosting economics. Your pages, images, CSS, and JavaScript are not billable requests. Only the requests that actually execute your code are. For a brochure site, a menu, a portfolio, or a blog, that means the metered number is close to zero regardless of how much traffic you get.
The practical consequence: on Cloudflare, traffic does not scare you. What costs money is computation, and specifically CPU time per invocation. A Worker that does something slow on every request is the expensive shape. A site that serves files is not.
Netlify: a credit system, and a new middle tier
Netlify now runs on credits rather than discrete resource limits, and the tier list has changed:
| Plan | Price | Credits |
|---|---|---|
| Free | $0 | 300 |
| Personal | $9 / month | 1,000 |
| Pro | $20 / month | 3,000 |
| Enterprise | Custom | Unlimited |
The $9 Personal tier is new relative to the commonly cited free-or-$20 split, and it is the right answer for a solo operator whose site outgrew 300 credits but who does not need three concurrent builds and private organisation repositories.
What consumes credits, which is the part you need in order to reason about it at all:
- A production deploy: 15 credits, roughly ten cents
- Compute: 10 credits per GB-hour
- Bandwidth: 20 credits per GB
- Web requests: 2 credits per 10,000
At the Pro pack rate of $10 per 1,500 credits, a credit works out to roughly $0.0067.
Do the arithmetic on the free tier and its shape becomes obvious: 300 credits is about twenty production deploys if you spend credits on nothing else, or about 15 GB of bandwidth. For a site that changes weekly and serves modest traffic, that is comfortable. For a site under active daily development, deploys alone will exhaust it, which is exactly the gap the $9 tier fills.
Pro adds 3 or more concurrent builds, 30-day analytics and metrics, private organisation repositories, shared environment variables, and unlimited team members.
That last one is the reason Netlify wins the many-client-sites case. Team size does not multiply the bill.
Vercel: per seat, plus usage
Vercel's Hobby tier is free and its limits are stated as resource quotas rather than credits:
- 1 million edge requests per month
- 100 GB data transfer per month
- 1 million function invocations per month
- 4 hours of active CPU per month
- 1 GB blob storage, 10,000 blob read operations
- Up to 3 custom firewall rules
Pro is $20 per user per month and includes a $20 monthly usage credit to spend across resources. It raises the ceilings to 10 million edge requests (then $2 per additional million) and 1 TB data transfer (then $0.15 per GB), allows up to 40 custom firewall rules, adds unlimited viewer seats, and removes build queues.
The structural difference from the other two: the seat count multiplies the base cost. Three people who need to deploy is $60 a month before any usage. Vercel does offer unlimited viewer seats, so the multiplier applies to contributors rather than to everyone who wants to look at a preview.
Note also that Vercel's free tier meters data transfer at 100 GB, which is a real number a moderately successful site can reach. Cloudflare's equivalent is not metered at all for static assets. If your site is image-heavy, that difference is the whole comparison.
The three questions that actually pick the platform
Forget feature matrices. Three questions decide it.
1. Does your site run code on every request, or serve files?
If it serves files, go to Cloudflare and stop thinking about it. Static asset requests are unbilled, and your cost is structurally zero no matter how well the business does.
If it runs code, ask how much and how slowly, because CPU time per invocation is what you are actually buying.
2. How many people need to deploy?
One person: any of the three. Two or more: the per-seat model is now a real line item, and Netlify's unlimited-members Pro at a flat $20 is materially cheaper than Vercel Pro at $20 each. This is the single biggest cost divergence between the platforms and it has nothing to do with technology.
3. Is anyone on the team deeply invested in Next.js?
If yes, Vercel's developer experience is genuinely worth the money and the argument ends there. If no, you are paying for a framework integration you will not use.
The costs nobody quotes
Build minutes and deploy counts are a real budget. On Netlify's credit model, a production deploy costs 15 credits whether the change was a full rebuild or a typo fix. A large static site rebuilt on every one-word edit burns budget on nothing. Batch your edits, or move to a host where deploys are not the metered unit.
Bandwidth is where image-heavy sites die. 20 credits per GB on Netlify, $0.15 per GB above 1 TB on Vercel Pro, and structurally not applicable on Cloudflare for static assets. If you run a photography portfolio, a restaurant with a large gallery, or an e-commerce catalogue, this is your dominant cost and it should dominate the decision. Serving properly sized modern image formats is worth real money here, not just Core Web Vitals points.
Function invocations are cheap; slow functions are not. A function that takes 20 milliseconds and one that takes 2 seconds cost the same in invocations and wildly differently in compute. If you are calling an AI model from a serverless function, you are holding compute open while you wait on the network. That is the shape that produces a surprising bill, and it is worth reading how a small business runs AI agents without a surprise bill before you ship one.
The database is usually not on this bill. All three platforms will happily sell you storage, and none of the numbers above cover it. Keep your system of record somewhere portable. I wrote about serverless Postgres separately.
The lock-in that costs money later
Cheap now, expensive to leave is a real pattern, and each platform locks you in a different place.
- Cloudflare's deepest lock is its stateful pieces: Durable Objects, Workflows, and the bindings model. Plain code moves; logic that lives inside those does not.
- Vercel's lock was historically Next.js-specific features, and that has eased considerably now that Next.js ships an adapter other hosts use.
- Netlify's lock is its conveniences: Forms, the redirects and headers configuration format, and Blobs.
None of that means avoid them. It means do not put the part of your business that would be painful to rebuild inside a proprietary primitive. The deeper version of this argument is in going frameworkless versus vendor lock-in.
Four habits keep the door open and cost nothing today:
- Content lives as Markdown or HTML in a folder you own, not inside a proprietary page builder.
- The system of record lives in a database you can export.
- The domain sits at a neutral registrar, independent of the host.
- One page of notes records the build command, the environment variables, and where the data lives.
What I would tell someone launching next week
Put the site on Cloudflare. It costs nothing, traffic will not change that, and if you later need real backend logic it is five dollars.
If deploying from a Git repository intimidates you and you want the most forgiving path from zero to live, use Netlify free instead, and move to the $9 Personal tier when deploy credits get tight.
Only reach for Vercel when a specific person on the team is going to be materially faster on it. That is a real reason. "It is what everyone uses" is not.
And whichever you choose, check the posture of what you shipped afterwards. Serverless Posture Audit looks at the deployment surface, and Single Site Gen generates a production build configuration with the security headers and bot posture already correct so you are not retrofitting them later.
Fact-check notes and sources
All figures read from the vendors' own live pricing pages on 6 August 2026.
- Cloudflare Workers free tier (100,000 requests per day, 10 ms CPU per invocation), Workers Paid ($5 per month minimum, 10 million requests included, $0.30 per additional million, 30 million CPU milliseconds included, $0.02 per additional million), and "Requests to static assets are free and unlimited": Cloudflare Workers pricing. That page reported itself last updated 7 July 2026.
- Netlify plan tiers (Free $0 / 300 credits, Personal $9 / 1,000 credits, Pro $20 / 3,000 credits, Enterprise custom), the Pro feature additions including 3 or more concurrent builds and unlimited team members, and credit consumption rates (production deploy 15 credits, compute 10 credits per GB-hour, bandwidth 20 credits per GB, web requests 2 credits per 10,000, approximately $0.0067 per credit at the Pro pack rate): Netlify pricing
- Vercel Hobby limits (1 million edge requests, 100 GB data transfer, 1 million function invocations, 4 hours active CPU, 1 GB blob storage, 10,000 blob reads, 3 custom firewall rules) and Pro at $20 per user per month with a $20 included usage credit, 10 million edge requests then $2 per million, 1 TB transfer then $0.15 per GB, 40 firewall rules, unlimited viewer seats: Vercel pricing
I did not re-verify pricing for Deno Deploy, Fly.io, Railway, Render, GitHub Pages, or AWS in this pass, so I have deliberately made no claims about their current numbers here. My longer write-up of Render is a separate post. This post is informational, not a paid endorsement, and no affiliation with Cloudflare, Netlify, or Vercel is implied. Prices and limits change; verify before building on them.