19 July 2026

Vercel vs Cloudflare Pages: Which Should You Choose?

By Jack Evans

Which Should You Use: Vercel vs Cloudflare Pages?

CriteriaVercelCloudflare Pages
Best forNext.js apps, SSR-heavy projectsStatic sites, Workers-based apps
Free tier requestsUp to 1,000,000 Edge Requests/monthUnlimited requests, no bandwidth cap
Pricing modelPer-seat (from $20/month Pro) plus usageUsage-based, no per-seat charge on Pages itself
RuntimeNode.js-based serverless functionsV8-isolate edge functions via Cloudflare Workers
Framework supportFirst-party Next.js integrationFramework-agnostic, adapter needed for SSR frameworks
Free tier deploysUnlimited deployments (Hobby)500 builds per month (Free plan)
ISR supportFull, nativeNot supported by the @cloudflare/next-on-pages adapter
Best for scaleTeams needing seat-based collaboration toolsCost-sensitive teams with high traffic

Figures per Vercel's Hobby plan docs, Vercel's Pro plan pricing, and Cloudflare's Pages platform limits. Vercel's free tier is metered by Edge Requests per month with unlimited deployments, while Cloudflare meters by number of builds per month with unlimited requests, so the two free tiers use different constraints and are not a direct apples-to-apples comparison. Bottom line: choose Vercel if your team is deep in the Next.js ecosystem and values zero-config deploys with first-party framework support. Choose Cloudflare Pages if the priority is the lowest cost per gigabyte served once traffic grows, and the app can tolerate the adapter's limits.

What Is Vercel?

Vercel is the deployment platform built by the creators of Next.js. It turns a Git push into a live URL with no server configuration. Its serverless functions run on standard Node.js, so most existing Node packages work without modification, and Incremental Static Regeneration behaves exactly as documented because Vercel controls both the framework and the runtime it ships on.

Strengths that matter most for a production Next.js app:

  • Zero-config deploys straight from a Git repository
  • First-party support for the newest Next.js rendering features, including Incremental Static Regeneration and Edge Middleware
  • A preview URL for every pull request, useful for client review
  • Full Node.js compatibility in its serverless functions, so most npm packages just work

According to Vercel's own Hobby plan documentation, the free tier includes up to 1,000,000 Edge Requests a month and unlimited deployments, with no flat bandwidth GB cap published; usage beyond the included Fast Data Transfer allowance is billed incrementally (Vercel). That allowance covers most small projects, but teams with real production traffic tend to move onto the seat-priced Pro plan quickly.

Best use case: teams shipping a production Next.js application who want the framework's newest capabilities, including ISR, supported without adapter workarounds.

What Is Cloudflare Pages?

Cloudflare Pages is the static-site and full-stack hosting product built on Cloudflare's global network, the same infrastructure that powers Cloudflare's CDN and DDoS protection. It deploys static output directly and runs server-side logic through Cloudflare Workers, which execute in V8 isolates rather than full containers.

In 2026, Cloudflare Pages' free plan still includes unlimited requests with no bandwidth cap, documented in Cloudflare's Pages platform limits. Other strengths worth weighing:

  • Deploys static sites and Workers-based full-stack apps on the same edge network as Cloudflare's CDN
  • V8 isolate cold starts that are typically faster than container-based serverless cold starts, since there is no container to boot
  • No per-seat pricing on the Pages product itself

The tradeoff for that speed is compatibility, and this is where teams get caught out mid-migration. Next.js on Cloudflare Pages runs through the @cloudflare/next-on-pages adapter, which executes on Cloudflare's edge runtime instead of Node.js. Every route needs export const runtime = 'edge' set explicitly, and some Node-specific APIs are unavailable.

Incremental Static Regeneration is not supported by this adapter at all, not just weakened. Cloudflare's own community forum confirms it: "ISR is not supported with @cloudflare/next-on-pages. This is due to limitations that are out of our control." The open GitHub issue on the project itself traces the cause to ISR depending on prerender functions the adapter cannot deploy. Teams that need ISR on Cloudflare typically move to the newer OpenNext Cloudflare adapter instead, which takes a different build approach. Next.js's built-in Image Optimization API also needs a different image loader on either adapter. A 2026 real-world test by vibecoder.me found Cloudflare Pages wins on raw price and performance at scale, while Vercel wins on developer experience for Next.js apps specifically, which matches this pattern: Cloudflare is cheaper and fast, but you pay for it in framework friction.

Best use case: teams running static sites, JAMstack apps, or Workers-based backends who want to keep hosting cost low as traffic scales, and whose Next.js routes do not depend on true ISR or Node-only APIs.

What Are the Key Differences Between Vercel and Cloudflare Pages?

The two platforms diverge on price, runtime model, framework depth, and scalability.

  • Price: Vercel charges per seat on the Pro plan, plus usage-based overages for bandwidth and function execution. Cloudflare Pages has no per-seat charge and a free tier most small projects never outgrow.
  • Runtime and cold starts: Vercel's default Serverless Functions run in Node.js containers (it also offers V8-isolate Edge Functions for lighter routes, similar to Workers, but standard Next.js server rendering typically runs on the Node-based functions). Cloudflare Pages runs everything through Workers' V8 isolates. Community benchmarks cited by MorphLLM's 2026 comparison put Workers cold starts around 0 to 5 milliseconds, versus roughly 200 to 500 milliseconds for a typical Node-based serverless cold start. A separate 2026 edge-performance benchmark by dataformathub independently confirms Workers leading on cold-start performance, at the cost of Node API compatibility.
  • Framework depth: Vercel supports every new Next.js feature immediately, including ISR, since it builds the framework. The standard Cloudflare Pages adapter, @cloudflare/next-on-pages, does not support ISR at all, a limitation Cloudflare's own community team has confirmed is out of their control, and requires export const runtime = 'edge' on every route.
  • Scalability and cost at high traffic: Cloudflare's bandwidth pricing tends to stay flatter as traffic grows, which is why cost-sensitive, high-traffic static sites often land on Cloudflare Pages rather than Vercel.

Picture a marketing site doing 2TB of bandwidth a month with a five-person team. On Vercel, that is five Pro seats at $20 each, plus any usage beyond the bandwidth included in the Pro plan's credits, documented in Vercel's Pro plan pricing. On Cloudflare Pages, the same traffic mostly stays inside the free plan's generous limits, with no seat cost at all. The gap widens as the team or the traffic grows, but only if the app does not depend on true ISR or the Node-only features Cloudflare's adapter cannot run.

Which Should You Choose For Your Project?

If you already have a Next.js app running well on one of these platforms, the switching cost is usually not worth paying unless a specific pain point, cost at scale or a missing framework feature, is actively hurting the project. A migration means re-testing every route for Node-only API usage and re-checking ISR behavior, which is real engineering time, not a config change.

New projects are the natural point to make this call, before ISR behavior or edge-runtime constraints get baked into the codebase. As a concrete check: if a Next.js app reads cookies through Node's crypto module, calls fs from a server component, or uses ISR anywhere, treat that as a signal to stay on Vercel rather than migrate to the standard Cloudflare adapter.

Frequently asked

Is Cloudflare Pages cheaper than Vercel?

Cloudflare Pages is generally cheaper once traffic grows, because it has no per-seat charge and its bandwidth pricing stays flatter at scale. Vercel can still be cheaper for a small team on the free Hobby tier with low traffic and no Node-only feature requirements.

Can I use Next.js on Cloudflare Pages?

Yes, through the @cloudflare/next-on-pages adapter, though the adapter runs on Cloudflare's edge runtime rather than Node.js, does not support Incremental Static Regeneration at all (confirmed by Cloudflare's own community team), and needs a workaround for the built-in Image Optimization API. Teams that need ISR on Cloudflare typically look at the newer OpenNext Cloudflare adapter instead.

Which platform has better performance for Next.js apps specifically?

Vercel generally has an edge for Next.js apps, because it ships first-party support for features like true Incremental Static Regeneration and Edge Middleware as soon as they are released, with full Node.js compatibility. Cloudflare Pages can have faster cold starts on simple Workers due to V8 isolates, but that advantage narrows for Next.js apps running through the @cloudflare/next-on-pages adapter.

Should a small team switch from Vercel to Cloudflare Pages?

A small team on Vercel's free Hobby tier usually has no cost reason to switch. The switch becomes worth evaluating once bandwidth or function usage pushes the project onto Vercel's paid tiers, and only if the app does not rely on true ISR or Node-only APIs the Cloudflare adapter does not support.

This article was written by the team at

We Are Heylo

We're an AI consulting and product engineering studio for operators who need the numbers to move. Singapore-based.