Cloudflare Workers vs Vercel Functions: the real 2026 cost for a production app

Cloudflare Workers ($5/mo, requests + CPU, no egress) vs Vercel Functions ($20/seat plus metered compute): a 2026 cost breakdown with worked examples.

Read time
13 min
Word count
1.9K
Sections
10
FAQs
8
Share
Hero comparing Cloudflare Workers and Vercel Functions monthly serverless cost for a production app in 2026
Cloudflare Workers bills requests plus CPU with free egress; Vercel Pro starts at a $20 seat plus metered compute.
On this page · 10 sections
  1. The two pricing models are not comparable line for line
  2. Cloudflare Workers pricing, in detail
  3. Vercel Functions pricing, in detail
  4. A worked head-to-head: 15 million requests a month
  5. Egress: the line item that decides data-heavy apps
  6. Cold starts, limits, and developer experience
  7. India-specific considerations
  8. FAQ
  9. How eCorpIT can help
  10. References

Summary. Cloudflare Workers and Vercel Functions bill on completely different models, so the cheaper platform depends entirely on your traffic shape. Cloudflare Workers Paid is $5 per month minimum, and on the Standard usage model it charges $0.30 per million requests above 10 million included, plus $0.02 per million CPU milliseconds above 30 million included, with no charge for data transfer or bandwidth. Vercel Pro is $20 per seat per month with a $20 usage credit, then meters Active CPU by region ($0.128 to $0.221 per CPU-hour), Provisioned Memory ($0.0106 to $0.0183 per GB-hour), Invocations ($0.60 per million), Edge Requests, and Fast Data Transfer. For a request-heavy, CPU-light API serving 15 million requests per month at 7 milliseconds of CPU each, Cloudflare's own published example puts the bill at $8.00; on Vercel the $20 seat is the floor before usage. These figures are from Cloudflare's pricing docs, last updated 7 July 2026, and Vercel's pricing docs, last updated 16 June 2026. This guide breaks down both models line by line, works through concrete monthly bills, covers egress, cold starts, limits, and developer experience, and gives a decision framework for founders and engineering leads choosing between the two in 2026.

The two pricing models are not comparable line for line

The first thing to understand is that these platforms do not bill for the same units, so a naive "per request" comparison misleads.

Cloudflare Workers bills two things on the Standard usage model: inbound requests, and CPU time (the milliseconds your code actually executes, not wall-clock time). It does not bill for duration spent waiting on input or output, and it does not bill for data transfer or bandwidth at all. That last point is the structural surprise for teams coming from other clouds: egress is free.

Vercel Functions run on fluid compute and bill on a wider set of meters. You pay Active CPU (the CPU time your code actively consumes, paused during I/O), Provisioned Memory (billed for the instance lifetime in GB-hours, including I/O waits), and Invocations (each incoming request). On top of the function meters, the platform charges Edge Requests and Fast Data Transfer for delivery through its CDN. Vercel prices Active CPU and Provisioned Memory regionally.

Billing dimension Cloudflare Workers (Standard) Vercel Functions (fluid compute, Pro)
Base price $5 / month minimum per account $20 / month per seat, with $20 usage credit
Requests 10M included, then $0.30 / million Invocations metered, $0.60 / million; Edge Requests billed separately
Compute 30M CPU-ms included, then $0.02 / million CPU-ms Active CPU $0.128–$0.221 / CPU-hour by region
Memory Not billed separately Provisioned Memory $0.0106–$0.0183 / GB-hour by region
Data transfer / egress No charge for egress or bandwidth Fast Data Transfer billed, 1 TB included on Pro
Free tier 100,000 requests / day Hobby: 1M invocations, 4 CPU-hours, 360 GB-hours memory

The takeaway from the table: Cloudflare collapses cost into requests plus CPU with free egress, while Vercel spreads cost across five or six meters plus a per-seat base. Which is cheaper depends on whether your workload is request-heavy, compute-heavy, or data-heavy.

Cloudflare Workers pricing, in detail

On the Workers Paid plan, the Standard usage model is the only current model for new accounts. The Cloudflare Workers pricing documentation sets the numbers out plainly: 10 million requests are included per month, then $0.30 per additional million; 30 million CPU milliseconds are included per month, then $0.02 per additional million CPU milliseconds. There is no charge or limit for duration, and a Worker can use up to 5 minutes of CPU time per invocation (the default cap is 30 seconds).

Cloudflare publishes its own worked examples, which are the cleanest way to anchor expectations.

Scenario (Cloudflare's own examples) Monthly cost
15M requests, 7ms avg CPU each $8.00
15M requests, 80% served as static assets $5.00
Hourly cron Worker, 720 runs, 3 min CPU each $6.99
100M requests, 7ms avg CPU each $45.40
100M requests, 80% cache hit rate $34.20

Two details do real work here. Requests to static assets are free and unlimited, so a project serving mostly static files (the second row) pays only the $5 subscription. And when Workers Caching is enabled, cache hits still count as requests but consume no CPU, which is why the 100 million request example drops from $45.40 to $34.20 at an 80% cache hit rate. There are no egress charges in any of these totals.

Beyond Workers themselves, the $5 plan includes access to the wider platform: Workers KV, D1 (25 billion rows read per month included, then $0.001 per million), R2 object storage ($0.015 per GB-month with free egress), Durable Objects, Queues, and Vectorize. For a team that wants request handling and its data layer on one bill with no egress fees, that breadth matters.

Vercel Functions pricing, in detail

Vercel Pro is $20 per month per seat, and each additional paid seat is another $20 per month. The plan includes a $20 monthly usage credit that offsets on-demand charges before you pay anything extra. Functions then bill on three resources, per the Vercel fluid compute pricing docs.

Active CPU is the CPU time your code actively consumes, billed per CPU-hour, and it pauses while your function waits on I/O such as a database query. Provisioned Memory is the memory allocated to your function instance, billed in GB-hours for the whole instance lifetime, and it keeps billing during I/O waits. Invocations count each incoming request; on Pro these are billed on demand at $0.60 per million. Vercel's own example is precise: a function that receives 1.5 million requests on Pro is billed at $0.60 per million.

Both compute meters are regional. A few representative rates from Vercel's published table give the spread:

Region Active CPU (per hour) Provisioned Memory (per GB-hour)
Washington D.C. (iad1) $0.128 $0.0106
Portland / Cleveland (pdx1 / cle1) $0.128 $0.0106
Mumbai, India (bom1) $0.140 $0.0116
London (lhr1) $0.177 $0.0146
São Paulo (gru1) $0.221 $0.0183

Delivery adds two more meters. Edge Requests (which Vercel's dashboard labels from CDN Requests) and Fast Data Transfer are billed for traffic between the CDN and the visitor, and the Pro plan includes an allotment before on-demand charges begin. Fast Origin Transfer covers data between the CDN and your functions. Builds are separate again, at $0.0035 per CPU-minute: a 3-minute build on an 8-CPU Enhanced machine costs $0.084.

The design goal of fluid compute is fewer cold starts and less waste: one instance handles multiple concurrent requests, memory is billed only while work is in progress, and CPU is billed only while code runs. For an I/O-heavy workload, such as a function that spends 400 milliseconds waiting on a database for every 100 milliseconds of compute, that split means you pay Active CPU for the 100 milliseconds and Provisioned Memory for the whole time the instance is alive.

A worked head-to-head: 15 million requests a month

Take a concrete production API: 15 million requests per month, an average of 7 milliseconds of CPU per request, 1 GB function memory, served from a US region.

On Cloudflare, this is Cloudflare's own Example 1, so no modelling is needed: $5.00 subscription, $1.50 for 5 million requests above the included 10 million, and $1.50 for CPU time above the included 30 million CPU milliseconds. Total: $8.00 per month, with no egress charge.

On Vercel, the $20 seat is the starting point, and the $20 monthly credit absorbs the first $20 of usage. The usage meters for this workload:

Line item Cloudflare Workers Vercel Functions (Pro)
Base $5.00 $20.00 per seat
Requests / invocations $1.50 (5M over 10M included) ~$9.00 (15M invocations at $0.60/M)
CPU time $1.50 ~$3.73 (29.2 CPU-hours at $0.128)
Memory Not billed Provisioned Memory (GB-hours, workload-dependent)
Egress $0 Fast Data Transfer (1 TB included)
Effective monthly floor $8.00 $20.00 (usage largely inside the $20 credit)

The honest reading: for a modest, request-heavy app, Vercel's invocation and CPU usage (roughly $9.00 plus $3.73) sits close to the $20 credit, so the effective bill is around the $20 seat. Cloudflare's total is $8.00. Cloudflare is structurally cheaper for request-heavy, CPU-light, egress-heavy workloads, largely because it does not bill invocations as a separate high-unit meter and does not bill egress at all. That gap widens as request volume and data transfer grow.

Vercel closes the gap, and can win, on different workloads: teams that value the Next.js integration, preview deployments, and the wider developer-experience platform, or apps whose real cost is engineering time rather than infrastructure. If your stack is Next.js and your team ships on Vercel's workflow, the platform's value is not primarily the compute line. Teams weighing the runtime underneath these functions can read our Bun vs Node.js backend runtime decision, and teams already on Vercel will find the upgrade path in our Next.js 16 migration guide.

Egress: the line item that decides data-heavy apps

For any application that ships significant data to users, media, large API responses, file downloads, egress is often the deciding cost, and this is where the platforms diverge most.

Cloudflare charges nothing for data transfer or bandwidth on Workers, and the same free-egress policy runs across R2 object storage, D1, and Queues. A media-heavy or API-heavy app moving terabytes a month pays for requests and CPU only.

Vercel bills Fast Data Transfer for CDN-to-visitor traffic, with 1 TB included on Pro before regional on-demand rates apply, plus Fast Origin Transfer between the CDN and functions. For a content-light API the included terabyte is generous; for a data-heavy product, transfer becomes a meaningful and growing line that Cloudflare simply does not have.

Cold starts, limits, and developer experience

Cost is not the only axis. Three operational differences matter for production.

Cloudflare Workers run on V8 isolates rather than per-request containers, which is why they start almost instantly and why CPU time, not wall-clock time, is the billed unit. The trade is a constrained runtime: a Worker is capped at 5 minutes of CPU per invocation, with a 30-second default. Vercel's fluid compute reduces cold starts by reusing a warm instance across concurrent requests, and its functions run a fuller Node.js-compatible environment, which suits heavier server-side rendering and longer request handling.

Developer experience is Vercel's strongest card. Tight Next.js integration, preview deployments on every push, and the surrounding platform (analytics, observability, image optimization) are the reasons many teams accept the $20 seat. Cloudflare's developer experience runs through Wrangler and a broader primitives catalogue, KV, D1, R2, Durable Objects, Queues, Vectorize, Containers, that lets you keep compute and state on one platform with free egress.

Workload profile Better cost fit
Request-heavy, CPU-light API Cloudflare Workers
Data / media-heavy, high egress Cloudflare Workers
Next.js app, small team, DX-led Vercel
Compute-heavy, long-running SSR Vercel (fuller runtime)
Edge logic close to users, global Cloudflare Workers
Full-stack with managed data layer Cloudflare Workers

India-specific considerations

For teams building from India, both platforms bill in US dollars, so currency and payment overhead sit on top of the sticker price. Vercel operates a Mumbai region (bom1) at $0.140 per Active CPU-hour and $0.0116 per GB-hour of Provisioned Memory, so latency-sensitive Indian workloads can run compute in-region, though at a premium over the cheapest US regions at $0.128. Cloudflare's global network serves Indian users from nearby locations without a separate regional compute rate, and its free egress removes a line that hits data-heavy Indian consumer apps hardest.

Where either platform stores or processes personal data of Indian users, the Digital Personal Data Protection Act 2023 (DPDP) obligations attach to how that data is handled regardless of platform. Teams optimising a multi-region serverless bill alongside these constraints can start with our note on how Indian teams cut cloud spend.

FAQ

How eCorpIT can help

eCorpIT is a Gurugram-based, CMMI Level 5 and ISO 27001:2022 certified engineering organisation that builds and runs serverless backends on both Cloudflare and Vercel. If you are choosing between them, or watching a serverless bill climb, our senior engineering teams can model your real traffic against both pricing tables, prototype the request-and-CPU profile of your workload, and recommend the platform, region, and caching strategy that lands the lowest total cost of ownership without slowing delivery. We design data handling aligned with DPDP Act 2023 requirements where personal data is involved. Share your workload at /contact-us/ and we will build the cost model with you.

References

  1. Cloudflare Docs, Workers pricing (last updated 7 July 2026).
  1. Cloudflare Docs, Workers platform limits.
  1. Cloudflare Docs, R2 pricing (free egress).
  1. Cloudflare Docs, D1 pricing.
  1. Vercel Docs, Fluid compute pricing (last updated 16 June 2026).
  1. Vercel Docs, Pricing on Vercel (team seats, builds; last updated 16 June 2026).
  1. Vercel Docs, CDN pricing and usage (Edge Requests, Fast Data Transfer; last updated 23 June 2026).
  1. Vercel, Pricing page (plan tiers and included allotments).
  1. Cloudflare Docs, Durable Objects pricing.
  1. Cloudflare Docs, Workers KV pricing.
  1. Vercel Docs, Fluid compute (instance reuse and concurrency).
  1. Ministry of Electronics and IT, Digital Personal Data Protection Act 2023.

_Last updated: 30 July 2026._

Frequently asked

Quick answers.

01 Is Cloudflare Workers cheaper than Vercel?
For request-heavy, CPU-light, egress-heavy workloads, yes. Cloudflare Workers starts at $5 per month and charges only requests and CPU with free egress, so a 15-million-request API costs $8.00 in Cloudflare's own example. Vercel Pro's $20 seat is the floor before usage, so it is usually higher for that traffic shape.
02 How does Cloudflare Workers bill CPU time?
Cloudflare bills CPU time, the milliseconds your code actively executes, not wall-clock time. The Standard plan includes 30 million CPU milliseconds per month, then charges $0.02 per additional million. A Worker can use up to 5 minutes of CPU per invocation, with a 30-second default cap, and time spent waiting on I/O is not billed.
03 What does Vercel Pro actually cost per month?
Vercel Pro is $20 per seat per month with a $20 usage credit, and each extra paid seat is another $20. Beyond the credit, it meters Active CPU ($0.128 to $0.221 per CPU-hour), Provisioned Memory, Invocations at $0.60 per million, Edge Requests, and Fast Data Transfer, all as of June 2026.
04 Does either platform charge for egress?
Cloudflare Workers has no charge for data transfer or bandwidth, and free egress extends across R2, D1, and Queues. Vercel bills Fast Data Transfer for CDN-to-visitor traffic, with 1 TB included on the Pro plan before regional on-demand rates apply, plus Fast Origin Transfer between the CDN and your functions.
05 Which is better for a Next.js app?
Vercel is the smoother path for Next.js: first-party integration, preview deployments, and a developer-experience platform built around the framework. Cloudflare can run Next.js too, and wins on raw compute cost and free egress, but for a small team optimising for shipping speed, Vercel's workflow often justifies the $20 seat.
06 How do cold starts compare?
Cloudflare Workers run on V8 isolates and start almost instantly, which is why CPU time is the billed unit rather than wall-clock time. Vercel's fluid compute reduces cold starts by reusing a warm instance across concurrent requests and runs a fuller Node.js-compatible environment suited to heavier server-side rendering and longer requests.
07 What is the free tier on each?
Cloudflare's Workers Free plan allows 100,000 requests per day with 10 milliseconds of CPU per invocation. Vercel's Hobby plan includes 1 million function invocations, 4 hours of Active CPU, and 360 GB-hours of Provisioned Memory per month, with hard caps rather than on-demand overage, so it stops rather than bills when exceeded.
08 Do I need to model memory to compare costs?
For Cloudflare, no: it does not bill memory separately, only requests and CPU. For Vercel, yes: Provisioned Memory is billed in GB-hours for the instance lifetime, including I/O waits, so a comparison must estimate how long instances stay alive. That makes Vercel's total more workload-dependent than Cloudflare's request-plus-CPU model.

About the author

Manu Shukla

Founder & Director

Founder of eCorpIT. Hands-on engineer leading senior-only delivery for AI apps, custom software, and cloud systems for global clients.

Subscribe

One engineering note a week. No fluff, no spam.

Senior-architect playbooks on AI agents, mobile apps, cloud, security, data, and marketing — delivered every Wednesday.

Past the reading

Read enough. Let's build something.

A senior architect responds in 24 working hours with scope, indicative cost, and a timeline. NDA before any technical conversation.