The Founder's Stack · Hosting

Netlify vs Cloudflare Pages: Developer Experience vs the Edge

The quick verdict: choose Netlify if you want the smoothest Jamstack developer experience with the most built-ins, and choose Cloudflare Pages if you want the cheapest bandwidth and the tightest integration with Cloudflare's edge — Workers, R2, D1, and KV. Both host static sites and serverless functions well; the decision is really about which constraint dominates for you, polish or cost-and-edge.

What each one is

Netlify

Netlify is a mature Jamstack platform known for an excellent build-and-deploy developer experience. It runs serverless code through Netlify Functions, ships built-in Forms and split testing, and backs all of it with a large plugin ecosystem. If you want a platform that handles the common Jamstack needs without you assembling them yourself, this is the polished default.

Cloudflare Pages

Cloudflare Pages is static hosting plus Functions that run on the Cloudflare Workers runtime, served from Cloudflare's global edge network. Its standout traits are very low egress and bandwidth cost and native integration with the rest of the Cloudflare stack — Workers, R2 for object storage, D1 for SQLite, and KV for key-value data. It is a strong fit when you are already building on, or want to build on, that edge platform.

Head to head

DimensionNetlifyCloudflare Pages
Static hosting costFree tier: 100 GB bandwidth/mo, then usage-basedFree and unlimited — static bandwidth and requests are not metered
Bandwidth at scaleUsage-based; climbs as traffic growsThe standout advantage — static egress stays free, even at high traffic
Free build minutes300 build minutes/mo, 1 concurrent buildIncluded builds per month; more concurrency on paid
Functions modelNetlify Functions + edge (125k function + 1M edge calls/mo free)Pages Functions on the Workers runtime — 100k requests/day free (shared with Workers)
Node compatibilityFull Node runtime for functionsWorkers runtime — a growing but incomplete Node-compat layer
Paid entryPro $20/mo, unlimited members, 3+ concurrent buildsStatic stays free; a paid Workers plan unlocks higher Functions limits
Built-insForms, split testing, Netlify Database, Blob storage, deep plugin ecosystemR2 (object storage), D1 (SQLite), KV, Queues — the Workers stack
Edge networkGlobal CDN with solid coverageOne of the largest edge networks in the world
Over-limit behaviorFree site is suspended for the month if limits are exceeded (upgrade to restore)Static serving is unmetered, so a static site rarely hits a wall
Best fitPolished Jamstack DX with built-ins out of the boxCheapest bandwidth plus tight edge/Workers integration

When to pick Netlify

Pick Netlify when developer experience and built-ins are the priority. If your team wants Forms, split testing, and a deep plugin ecosystem working out of the box — rather than wiring those pieces together yourself — Netlify's polish pays for itself in setup time saved. It is the strongest choice for classic Jamstack sites where the smoothest path from commit to live deploy matters more than shaving the bandwidth bill.

When to pick Cloudflare Pages

Pick Cloudflare Pages when bandwidth economics or edge integration dominate. If you serve heavy traffic, its generous egress keeps costs low where a usage-based bill would climb. And if you are building on Cloudflare's stack — Workers, R2, D1, and KV — Pages sits natively alongside them, so your static front end and your edge back end share one platform. That tight integration is the reason to choose it.

The honest verdict

Netlify wins on developer experience and built-ins; Cloudflare Pages wins on bandwidth economics and edge-and-Workers integration. Neither is a universal winner — they optimize for different constraints. Pick by which one dominates your situation: reach for Netlify when polish and out-of-the-box features carry the most weight, and reach for Cloudflare Pages when cost at scale and edge integration do.

Bottom line

Choose Netlify if

  • You want built-ins out of the box — Forms, split testing, plugins
  • Your functions need a full Node runtime
  • Polished Jamstack DX matters more than the bandwidth bill

Choose Cloudflare Pages if

  • You want free, unmetered static bandwidth at any scale
  • You're on the Workers stack — R2, D1, KV
  • A traffic spike must never suspend the site or spike the bill

Pricing, with real numbers

The durable divide is bandwidth. As of September 2026, Cloudflare Pages serves static assets and their bandwidth free and unmetered, with Pages Functions getting 100,000 requests per day free (shared with Workers) before a paid Workers plan. Netlify gives a free tier of 100 GB bandwidth and 300 build minutes a month, then either usage-based billing on paid plans or — importantly — a suspension for the rest of the month if a free site exceeds its limits; Pro is $20/month with unlimited members.

A worked example: a portfolio or docs site that suddenly gets popular costs $0 on Cloudflare Pages no matter the traffic, because static egress is not metered — while the same spike could push a free Netlify site past 100 GB and take it offline until you upgrade. Netlify earns its price the other way: built-in Forms, full-Node Functions, and a deep plugin ecosystem you would otherwise assemble yourself. Price both against your real usage and needs — but on raw bandwidth, Cloudflare's economics are the standout.

FAQ

Which is cheaper at scale, Netlify or Cloudflare Pages?

Cloudflare Pages, on bandwidth — and it is not close for a high-traffic static site. Cloudflare serves static assets and their bandwidth for free with no metering, while Netlify's free tier caps bandwidth at 100 GB/month and then bills usage. So a site that gets popular pays materially less on Cloudflare. The honest caveat: build minutes, function invocations, and add-ons still shift the total, so price both against your real numbers — but on raw egress, Cloudflare is the standout.

Is Cloudflare Pages really free?

For static hosting, yes — genuinely. Static assets and their bandwidth are free and unmetered, with unlimited requests, which is unusual among hosts. The paid line is Functions: Pages Functions run on the Workers runtime with 100,000 requests per day free (shared with any Workers you run), and beyond that you move to a paid Workers plan. So a static or lightly-dynamic site can run at $0 essentially indefinitely.

Does Netlify's free tier have a limit that bites?

Yes, and it is worth knowing before you launch. The free plan includes 100 GB of bandwidth and 300 build minutes a month, and if you exceed the free limits your site is suspended for the rest of the calendar month rather than billed for overage — you reactivate by upgrading to a paid plan. In practice that means a sudden traffic spike can take a free Netlify site offline, whereas Cloudflare's unmetered static bandwidth does not have that failure mode.

Can Cloudflare Pages run my Node functions?

Not exactly. Pages Functions run on the Cloudflare Workers edge runtime, which has a growing but incomplete Node compatibility layer — it is not full Node. Simple handlers port cleanly; code that depends on native modules or less-common Node APIs may need changes. Netlify Functions, by contrast, run on a full Node runtime. Verify your dependencies before you migrate to Pages.

Can I use a database with either?

Yes, but they take different shapes. Netlify now offers a built-in Netlify Database plus Blob storage for files. Cloudflare gives you D1 (a SQLite database), KV (key-value), and R2 (S3-compatible object storage) — all part of the Workers platform that Pages integrates with. If you want a relational database wired in with the least setup, both now cover it; the Cloudflare options fit best when you are already on its edge stack.

Is Netlify's DX worth it?

Often yes for teams that value built-ins out of the box — Forms, split testing, and a deep plugin ecosystem save real setup time. If your priority is the smoothest Jamstack developer experience rather than the lowest bandwidth bill, that polish is exactly what you are paying for.

Which is better for a static site or portfolio?

Cloudflare Pages, in most cases: static hosting is free with unmetered bandwidth, so a portfolio or docs site never risks a bandwidth bill or a suspension, no matter how much traffic it gets. Choose Netlify instead when you specifically want its built-ins — Forms, split testing, or its plugin ecosystem — on top of the static hosting.

Which is better for a Jamstack app with forms and functions?

Netlify, generally. Its built-in Forms, full-Node Functions, and mature plugin ecosystem mean less to assemble yourself for a classic Jamstack app. Cloudflare Pages is the better pick when your dynamic logic already lives on the Workers stack (D1, KV, R2) or when bandwidth cost at scale is the dominant constraint.

Building the app that will live on one of these, not just choosing where to put it? The MVP Machine turns a spec into a shipped product.

Have something you need built or fixed?

I build production Django / Next.js platforms and human-supervised AI-agent systems. Solo, senior, and fast. Tell me what you are building.

Start a project