Limits
This reference covers a list of all the limits and limitations that apply on Vercel.To prevent abuse of our platform, we apply the following limits to all accounts.
Hobby | Pro | Enterprise | |
---|---|---|---|
Projects | 200 | Unlimited | Unlimited |
Deployments Created per Day | 100 | 6000 | Custom |
Serverless Functions Created per Deployment | Framework-dependent* | ∞ | ∞ |
Proxied Request Timeout (Seconds) | 30 | 30 | 30 |
Deployments Created from CLI per Week | 2000 | 2000 | Custom |
Vercel Projects Connected per Git Repository | 3 | 60 | Custom |
Routes created per Deployment | 1024 | 1024 | Custom |
Build Time per Deployment(Minutes) | 45 | 45 | 45 |
Static File uploads | 100 MB | 1 GB | N/A |
Concurrent Builds | 1 | 12 | Custom |
Disk Size (GB) | 23 | 23 | Custom |
Cron Jobs | 2* | 40 | 100 |
Hobby | Pro | |
---|---|---|
Fast Data Transfer | 100 GB | 1 TB |
Fast Origin Transfer | Up to 10 GB | Up to 100 GB |
Function Execution | 100 GB-Hrs | 1000 GB-Hrs |
Edge Function Execution Units | 500,000 | 1,000,000 |
Edge Middleware Invocations | 1,000,000 | 1,000,000 |
Build Execution | 100 Hrs | 400 Hrs |
Image Optimization Source Images | 1000 Images | 5000 Images |
For Teams on the Pro plan, you can pay for additional usage as you go.
If your project will exceed these limits on Pro and you need advanced security and privacy features, contact Vercel Sales to discuss Enterprise.
These limits reflect our improved infrastructure pricing. Changes begin during the June 25 and July 2024 billing cycle. The Hobby tier remains free.
For members of our Pro plan, we offer a pay-as-you-go model for additional usage, giving you greater flexibility and control over your usage. The typical monthly usage guidelines above are still applicable, while extra usage will be automatically charged at the following rates:
To learn more about Managed Infrastructure on the Pro plan, and how to understand your invoices, see understanding my invoice.
See the Pro trial limitations section for information on the limits that apply to Pro trials.
The limit of "Routes created per Deployment" encapsulates several options that can be configured on Vercel:
- If you are using a
vercel.json
configuration file, each rewrite, redirect, or header is counted as a Route - If you are using the Build Output API, you might configure routes for your deployments
Note that most frameworks will create Routes automatically for you. For example, Next.js will create a set of Routes corresponding to your use of dynamic routes, redirects, rewrites and custom headers.
The maximum duration of the Build Step is 45 minutes. When the limit is reached, the Build Step will be interrupted and the Deployment will fail.
Every Build is provided with the following resources:
Hobby | Pro | Enterprise | |
---|---|---|---|
Memory | 8192 MB | 8192 MB | Custom |
Disk space | 23 GB | 23 GB | Custom |
CPUs | 2 | 4 | Custom |
The limit for static file uploads in the build container is 1 GB. Enterprise customers can purchase enhanced builds with larger memory and storage.
For more information on troubleshooting these, see Build container resources.
When using the CLI to deploy, the maximum size of the source files that can be uploaded is limited to 100 MB for Hobby and 1 GB for Pro. If the size of the source files exceeds this limit, the deployment will fail.
The maximum size of the Build's cache is 1 GB. It is retained for one month and it applies at the level of each Build cache key.
Check out the limits and pricing section for more details about the limits of the Monitoring feature on Vercel.
There are two types of logs: build logs and runtime logs. Both have different behaviors when storing logs.
Build logs are stored indefinitely for each deployment.
Runtime logs are stored for 1 hour on Hobby, 1 day on Pro, and for 3 days on Enterprise accounts. To learn more about these log limits, read here.
The maximum number of Environment Variables per environment per Project
is 1000
. For example, you cannot have more than 1000
Production Environment Variables.
The total size of your Environment Variables, names and values, is limited to 64KB for projects using Node.js, Python, Ruby, Go, Java, and .NET runtimes. This limit is the total allowed for each deployment, and is also the maximum size of any single Environment Variable. For more information, see the Environment Variables documentation.
If you are using System Environment Variables, the framework-specific ones (i.e. those prefixed by the framework name) are exposed only during the Build Step, but not at runtime. However, the non-framework-specific ones are exposed at runtime. Only the Environment Variables that are exposed at runtime are counted towards the size limit.
Hobby | Pro | |
---|---|---|
Domains per Project | 50 | Unlimited |
The maximum number of files that can be uploaded when creating a CLI Deployment is 15,000
for source files. Deployments that contain more files than the limit will fail at the build step.
Although there is no upper limit for output files created during a build, you can expect longer build times as a result of having many thousands of output files (100,000 or more, for example). If the build time exceeds 45 minutes then the build will fail.
We recommend using Incremental Static Regeneration (ISR) to help reduce build time. Using ISR will allow you pre-render a subset of the total number of pages at build time, giving you faster builds and the ability to generate pages on-demand.
The amount of time (in seconds) that a proxied request (rewrites
or routes
with an external destination) is allowed to process an HTTP request. The maximum timeout is 30 seconds.
If the external server does not reply until the maximum timeout is reached, an error with the message ROUTER_EXTERNAL_TARGET_ERROR
will be returned.
Edge Functions and Serverless Functions do not support acting as a WebSocket server.
We recommend third-party solutions to enable realtime communication for Deployments.
Check out the Limits and Pricing section for more details about the limits of Vercel Web Analytics.
Check out the Limits and Pricing doc for more details about the limits of the Speed Insights feature on Vercel.
Check out the Cron Jobs limits section for more information about the limits of Cron Jobs on Vercel.
The limits of Vercel functions are based on the runtime that you use.
For example, different runtimes allow for different bundle sizes, maximum duration, and memory.
Vercel does not support connecting a project on your Hobby team to Git repositories owned by Git organizations. You can either switch to an existing Team or create a new one.
The same limitation applies in the Project creation flow when importing an existing Git repository or when cloning a Vercel template to a new Git repository as part of your Git organization.
See the Reserved Environment Variables docs for more information.
Rate limits are hard limits that apply to the platform when performing actions that require a response from our API.
The rate limits table consists of the following four columns:
- Description - A brief summary of the limit which, where relevant, will advise what type of plan it applies to.
- Limit - The amount of actions permitted within the amount of time (Duration) specified.
- Duration - The amount of time (seconds) in which you can perform the specified amount of actions. Once a rate limit is hit, it will be reset after the Duration has expired.
- Scope - Who the limit applies to:
owner
refers to the Personal Account Owner or Team Owner,user
refers to a Team Member.
Below are five examples that provide further information on how rate limits work.
You are able to delete up to 60
domains every 60
seconds (1 minute). Should you hit the rate limit, you will need to wait another minute before you can delete another domain.
You are able to delete up to 20
teams every 3600
seconds (1 hour). Should you hit the rate limit, you will need to wait another hour before you can delete another team.
You are able to change your username up to 6
times every 604800
seconds (1 week). Should you hit the rate limit, you will need to wait another week before you can change your username again.
You are able to build 32
Deployments every 3600
seconds (1 hour). Should you hit the rate limit, you will need to wait another hour before you can build a deployment again.
Using Next.js or any similar framework to build your deployment is classed as a build. Each Serverless Function is also classed as a build. Hosting static files such as an index.html file is not classed as a build.
You are able to deploy 100
times every 86400
seconds (1 day). Should you hit the rate limit, you will need to wait another day before you can deploy again.
Was this helpful?