Fluid compute pricing
Compute usage on fluid is billed across three meters: Active CPU, provisioned memory, and invocations.
Each request to a Vercel Function incurs:
- Active CPU: The amount of CPU time your code consumes, measured in milliseconds. Waiting for I/O (e.g. calling AI models, database queries) does not count towards Active CPU.
- Provisioned memory: The memory size of your function instances (in GB), multiplied by the time they are running (measured in hours), measured in GB-hrs. One function instance can run multiple invocations with optimized concurrency.
- Invocations: Each request that reaches your function.
Meter | What it measures | When it accrues cost |
---|---|---|
Active CPU | Time your code actively runs in milliseconds | Only while using the CPU |
Provisioned memory | Memory held by the instance | For the full lifetime of the instance |
Invocations | Number of function requests | Per request |
Vercel Functions on fluid compute are priced differently based on your plan. Each plan includes a certain amount of active CPU, provisioned memory, and invocations per month.
The table below summarizes the included resources for each plan:
Plan | Active CPU time | Provisioned Memory | Invocations |
---|---|---|---|
Hobby | 4 hours | 360 GB-hrs | 1 million |
Pro | 16 hours | 1440 GB-hrs | 1 million |
The first 1 million invocations every month are included on both Hobby and Pro plans.
On Pro:
- Additional invocations cost $0.60 per extra million
- Additional Active CPU time and provisioned memory costs is by region
Enterprise plans have custom terms. Speak to your CSM for details.
The following table shows the regional pricing for fluid compute resources on Vercel. The prices are per hour for CPU and per GB-hr for memory:
Region | Active CPU time (per hour) | Provisioned Memory (GB-hr) |
---|---|---|
Washington, D.C., USA (iad1) | $0.128 | $0.0106 |
Cleveland, USA (cle1) | $0.128 | $0.0106 |
San Francisco, USA (sfo1) | $0.177 | $0.0147 |
Portland, USA (pdx1) | $0.128 | $0.0106 |
Cape Town, South Africa (cpt1) | $0.200 | $0.0166 |
Hong Kong (hkg1) | $0.176 | $0.0146 |
Mumbai, India (bom1) | $0.140 | $0.0116 |
Osaka, Japan (kix1) | $0.202 | $0.0167 |
Seoul, South Korea (icn1) | $0.169 | $0.0140 |
Singapore (sin1) | $0.160 | $0.0133 |
Sydney, Australia (syd1) | $0.180 | $0.0149 |
Tokyo, Japan (hnd1) | $0.202 | $0.0167 |
Frankfurt, Germany (fra1) | $0.184 | $0.0152 |
Dublin, Ireland (dub1) | $0.168 | $0.0139 |
London, UK (lhr1) | $0.177 | $0.0146 |
Paris, France (cdg1) | $0.177 | $0.0146 |
Stockholm, Sweden (arn1) | $0.160 | $0.0133 |
Dubai, UAE (dxb1) | $0.185 | $0.0153 |
São Paulo, Brazil (gru1) | $0.221 | $0.0183 |
A function instance runs in a region, and its pricing is based on the resources it uses in that region. The costs are calculated based on two main components plus invocations:
- Active CPU: CPU time while your code is executing, billed per CPU-hour.
- Provisioned memory: The memory allocated to an instance while it has one or more requests in flight, billed per GB-hour.
- Function invocation: Every time your function is called counts as one invocation.
When the first request arrives, Vercel starts an instance with your configured memory. Provisioned memory is billed continuously until the last in-flight request finishes. Active CPU is billed only while your code is actually running. If the request is waiting on I/O, CPU billing pauses but memory billing continues.
After all requests complete, the instance is paused, and no CPU or memory charges apply until the next invocation. This means, you pay for memory whenever work is in progress, never for idle CPU, and nothing at all between requests.
Was this helpful?