Skip to content
4 min read

Usage & Pricing for Edge Functions

Learn about usage and pricing for using Edge Functions with Vercel.
Table of Contents
Choose a framework to optimize documentation to:

Edge Functions are measured in the number of execution units, which are the amount of CPU time — or time spent performing calculations — used when a function is invoked. CPU time does not include idle time spent waiting for data fetching. When a function runs, it can use up to 50 ms of CPU time as a single execution unit. A function may use more than 50 ms of CPU time, but for billing purposes, it will be split into multiple execution units of 50 ms each.

You can see the number of invocations made in the Edge Functions section of the Usage tab on your dashboard.

Edge Functions Limit
Price (after limit reached)
not allowed
$2.00 for each additional 1,000,000 execution units

An execution unit is 50 ms of CPU time.

Each invocation of an Edge Function will have a Total CPU time, which is the time spent actually running your code. This is unlike Serverless Functions, which measure usage based on the entire time spent running your function (the "wall clock" time). This means that the Edge Functions usage does not measure time spent waiting for data fetches to return.

When it comes to billing, we'll work out the number of execution units (total CPU time of the invocation / 50ms) used for each invocation. You will then be charged based on anything over the limit.

For example:

If your function is invoked 250,000 times and uses 350 ms of CPU time at each invocation, then the function will incur (350 ms / 50 ms) = 7 execution units each time the function is invoked. Your usage is: 250,000 * 7 = 1,750,000 execution units

Usage metrics can be found in the Edge Functions section of the Usage tab on your dashboard. The dashboard tracks two usage values:

  • Total number of invocations
  • CPU Utilization for the invocations

Edge Functions are invoked for every request that is served.

There is no time limit on the amount of CPU time your Edge Function can use during a single invocation. However, you are charged for each execution unit, which is based on the compute time. The compute time refers to the actual net CPU time used, not the execution time. Operations such as network access do not count towards the CPU time.

You can see usage of your team's average CPU time on the Edge Functions section of the Usage tab on your dashboard.

For Teams on a Pro trials, the trial will end if your Team has made over 1 million invocations.

Vercel will send you emails as you are nearing your usage limits, but you will also be advised of any alerts within the dashboard. Once your team exceeds the 1 million invocations limit, you will continue to be charged $2 per 1 million invocations going forward.

Enterprise agreements provide custom limits and pricing for Edge Functions.

Edge Functions are free for Hobby users within the usage limits.

Vercel will send you emails as you are nearing your usage limits. You will not pay for any additional usage. However, your account may be paused if you do exceed the limits.

When your Hobby account is set to paused, it remains in this state indefinitely unless you take action. This means all new and existing deployments will be paused.

If you have reached this state, your application is likely a good candidate for a Pro account.

To unpause your account, you have two main options:

  • Contact Support: You can reach out to our support team to discuss the reason for the pause and potential resolutions
  • Transfer to a Pro team: If your Hobby account is paused, you won't have the option to initiate a Pro trial. Instead, you can set up a Pro team:
    1. Create a Pro team account
    2. Add a valid credit card to this account. Select the Settings tab, then select Billing and Payment Method

Once set up, a transfer modal will appear, prompting you to transfer your previous Hobby projects to this new team. After transferring, you can continue with your projects as usual.

Last updated on February 6, 2023