Skip to content
DevPlainly
Comparisons

Vercel vs Netlify vs Cloudflare Pages: Which Free Host?

Compare the free plans of Vercel, Netlify and Cloudflare Pages: commercial use, bandwidth, what happens at the limit, Next.js support and how to deploy.

Published
Reading time
8 min read
Contents
  1. The short answer
  2. The free plans side by side
  3. Vercel
  4. Netlify
  5. Cloudflare Pages and Workers
  6. How to deploy to each
  7. Vercel
  8. Netlify
  9. Cloudflare Workers with static assets
  10. Environment variables and secrets
  11. When none of them fits
  12. Decision checklist
  13. FAQ
  14. Can I use Vercel's free plan for a site with ads?
  15. Is Cloudflare Pages really unlimited?
  16. What happens if my Netlify site uses all its credits?
  17. Can I move my site between them later?
  18. Which one is fastest?
  19. Further reading

Vercel, Netlify and Cloudflare all let you push a project to GitHub and get a fast, HTTPS website a minute later, for free. On the surface they look interchangeable. The differences show up later: when your site starts making money, when traffic spikes, or when your framework needs a server.

This guide compares the three free plans on the things that actually decide the choice, shows how to deploy to each, and ends with a simple rule. Plans and prices change often, so the numbers here are as of November 2026, with links to each official pricing page.

Nil's note

DevPlainly runs on Cloudflare: the site is a static Next.js export served by Cloudflare Workers, and it redeploys on its own every time I push to GitHub. I picked Cloudflare because the site shows ads, and Vercel's free plan doesn't allow commercial use. One thing that surprised me: every deploy turned the default *.workers.dev address back on, so the same site was reachable at two URLs until I disabled it in the config file.

The short answer

  • Cloudflare Pages (or Workers) if you want the most generous free plan, your site is static or mostly static, and you might earn money from it.
  • Vercel if you build with Next.js and want every feature working with zero setup, and the project is personal or you'll pay for Pro.
  • Netlify if you want built-in extras like form handling and deploy previews for any framework, and your traffic fits its monthly credits.

The free plans side by side

FeatureVercel HobbyNetlify FreeCloudflare Pages Free
Commercial useNo, personal projects onlyYesYes
Static traffic100 GB of data transfer a monthCounted in 300 monthly creditsUnlimited requests and bandwidth
At the limitFeatures pause until the next cycleThe site pauses until next monthStatic files keep being served
BuildsIncluded, with monthly limitsEach deploy spends credits500 builds a month
Server codeVercel FunctionsNetlify FunctionsWorkers, 100,000 requests a day
First paid planPro, $20 per month per deploying seatPersonal, $9 per monthWorkers Paid, $5 per month
Best atNext.jsExtras for any static sitePrice and traffic

Two rows matter more than the rest: commercial use and what happens at the limit. A free plan that pauses your site the day a post goes viral is a different deal from one that keeps serving it.

Vercel

Vercel makes Next.js, and it shows. Features like incremental static regeneration, image optimization, middleware and server actions work on Vercel the day they're released, with no adapter or configuration. The dashboard, preview deployments for every pull request and the logs are all polished.

The catch is the Hobby plan's terms: it's for personal, non-commercial use. Vercel's fair use rules count client work, a SaaS and sites that make money (ads and affiliate links included) as commercial, which requires Pro. Hobby also has a monthly cap of 100 GB of data transfer that you can't buy more of; going over pauses the affected features instead of billing you.

Pro costs $20 a month per deploying seat and includes $20 of usage credit, 1 TB of data transfer and more of everything. For a business that's reasonable. For a student's side project that might show ads one day, it's the reason to look elsewhere.

Netlify

Netlify popularized deploying static sites from Git, and it still has the most extras built in: form handling without a backend, deploy previews, split testing, redirects and headers from a simple file, and functions. It works equally well with React, Vue, Astro, Hugo or plain HTML.

Since late 2025 new accounts use credit-based plans. The Free plan gives you 300 credits a month, and everything spends them: production deploys, bandwidth, web requests and function calls. When the credits run out the site is paused until the next month; there's no surprise bill, but there's also no website. The Personal plan is $9 a month for 1,000 credits, and Pro is $20 a month for 3,000.

For a portfolio or a small project, 300 credits is usually enough. A site that suddenly gets traffic, or one you deploy many times a day, can burn through them.

Cloudflare Pages and Workers

Cloudflare's free plan is the most generous of the three for static sites: requests to static files are free and unlimited, on the free plan and the paid one. Your site runs on Cloudflare's network, and commercial use is allowed. The Pages free plan has 500 builds a month, up to 20,000 files per site and 25 MiB per file.

Server code runs as Workers. On the free plan you get 100,000 requests a day for that dynamic part; static files don't count toward it. If you need more, Workers Paid starts at $5 a month.

There's one thing to know before you start: Cloudflare now recommends Workers with static assets for new projects, and that's where new features land. Pages still works and isn't going away, and Cloudflare has a guide to migrate from Pages to Workers. For a new site, start on Workers; the free static hosting is the same.

The trade-off is Next.js. Static exports work perfectly (this site is one), but full Next.js with server rendering needs the OpenNext adapter, and new Next.js features can take a while to be supported there.

How to deploy to each

All three connect to a GitHub repository and rebuild on every push, which is what you want for a real project. From the command line, a first deploy looks like this:

Vercel

npm i -g vercel
vercel          # preview deployment
vercel --prod   # production

Netlify

npm i -g netlify-cli
netlify deploy --build          # preview (draft URL)
netlify deploy --build --prod   # production

Cloudflare Workers with static assets

Add a wrangler.jsonc to the project. This is the one DevPlainly uses, for a static site that builds into out/:

{
  "name": "my-site",
  "compatibility_date": "2026-10-01",
  // stop every deploy from re-enabling the *.workers.dev address
  "workers_dev": false,
  "assets": {
    "directory": "./out",
    "not_found_handling": "404-page"
  }
}

Then deploy:

npm run build
npx wrangler deploy

For a single-page app (React, Vue, Angular) use "not_found_handling": "single-page-application" instead, so refreshing a route like /profile loads the app instead of a 404.

Environment variables and secrets

All three have a settings page for environment variables, and all three separate preview from production values. Two rules apply everywhere:

  • Anything that starts with NEXT_PUBLIC_, VITE_ or similar is bundled into the JavaScript and visible to every visitor. Never put secrets there.
  • Keep a .env.example in the repository with the variable names and no real values, so the next person (or you, in six months) knows what to set. More in how to use .env files safely.

When none of them fits

These platforms are built for websites and APIs that start and stop quickly. A database, a long-running process, a Discord bot or a self-hosted app needs a server. A small VPS with Docker handles all of those for a few dollars a month; start with securing a new Linux VPS and put a reverse proxy with Caddy in front of your apps.

Decision checklist

  1. Will the site make money (ads, affiliate links, a product, client work)? → Cloudflare or Netlify, or Vercel Pro
  2. Is it a Next.js app using server features (ISR, server actions, middleware)? → Vercel
  3. Could it get sudden traffic, and must it stay online? → Cloudflare
  4. Do you want forms or other extras without writing a backend? → Netlify
  5. Is it a static site or a single-page app? → any of them; Cloudflare is the cheapest as it grows

FAQ

Can I use Vercel's free plan for a site with ads?

No. Vercel's Hobby plan is limited to personal, non-commercial use, and sites that earn money, including ads and affiliate links, count as commercial. You need the Pro plan, or a host whose free plan allows commercial use, like Cloudflare or Netlify.

Is Cloudflare Pages really unlimited?

For static files, yes: Cloudflare doesn't charge for or limit requests to static assets. The limits are on builds (500 a month on Pages Free), files per site, file size and the server code you run as Functions or Workers.

What happens if my Netlify site uses all its credits?

On the Free plan, the site is paused until your credits reset the next month. You can upgrade to a paid plan to bring it back sooner.

Can I move my site between them later?

Yes, and for a static site it takes minutes: they all run your build command and serve a folder. Moving gets harder if you rely on a platform-specific feature, like Netlify Forms or Vercel's image optimization, so keep those in mind.

Which one is fastest?

For visitors, all three serve static files from a global network, and the difference is small. Build speed and how quickly your server code starts vary more, and depend on the project.

Further reading

Written by Nil Martinez

Developer · DAM & DAW student

Developer studying multiplatform (DAM) and web (DAW) application development. I work every day with TypeScript, Angular, React, Java, Python, FastAPI, MySQL and Docker on Kubuntu, and I write about the tools I actually use.

How I test and write each guideGitHub

Keep reading