Managing Deployments
Learn how to manage your current and previously deployed projects to Vercel through the dashboard. You can redeploy at any time and even delete a deployment.You can manage all current and previous deployments regardless of environment, status, or branch from the dashboard. To manage a deployment from the dashboard:
- Ensure your team is selected from the scope selector
- Select your project
- From the top navigation, select the Deployments tab
- You can then filter, redeploy, or manually promote your deployment to production
Vercel CLI and Vercel REST API also provide alternative ways to manage your deployments. You can find a full list of the commands available in the Vercel CLI Reference, along with the deployments section of the Vercel REST API Reference.
You can filter your deployments based on branch, status, and deployment environment:
- Select your project from the dashboard
- From the top navigation, select the Deployments tab
- Use the dropdowns to search by Branch, Date Range, All Environments, or Status
The Deployments tab with the status filter dropdown open.
If you no longer need a specific deployment of your app, you can delete it from your project with the following steps:
- From the Deployments tab, select the name of the deployment you want to delete
- Select the Inspect Deployment option, which directs you to the details of that deployment
- From here, you can Delete the deployment
Deleting a deployment prevents you from using instant rollback on it and might break the links used in integrations, such as the ones in the pull requests of your Git provider.
Vercel automatically redeploys your application when you make any commits. However, there can be situations such as bad cached data where you need to Redeploy your application to fix issues manually. To do so:
- Ensure your team is selected from the scope selector
- Select your project
- From the top navigation, select the Deployments tab
- Locate the deployment you wish to deploy. You may need to use the filter options
- Click the ellipsis icon () and select Redeploy
- In the Redeploy to Production window, decide if you want to use the existing Build Cache, and then select Redeploy
![Option to confirm redeploy to production.](/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fv1689795055%2Fdocs-assets%2Fstatic%2Fdocs%2Fconcepts%2Fdeployments%2Fredeploy-model-light.png&w=1080&q=75)
![Option to confirm redeploy to production.](/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fv1689795055%2Fdocs-assets%2Fstatic%2Fdocs%2Fconcepts%2Fdeployments%2Fredeploy-model-dark.png&w=1080&q=75)
Other than your custom needs to redeploy, it's always recommended to redeploy your application to Vercel for the following use cases:
- Enabling the Analytics
- Changing the Environment Variables
- Outage Resiliency
- Making changes to Build & Development Settings
- Redirect or Rewrites from a subdomain to a subpath
By default, when you merge to or make commits to your production branch (often main
), Vercel will automatically promote the changes to Production. However, there are a number of ways to manually change which deployment is served to people who visit your production domain:
- Instant rollback: You can use this as a way to instantly revert to an earlier deployment that has served production traffic. It works by assigning your domains to an existing deployment, rather than doing a complete rebuild
- Promote preview to production: You can use this as a way to promote a preview deployment to production through a complete rebuild
- Promote a staged production build: You can use this option to promote a production deployment which has never served production traffic. To use this option, you must turn off the auto-assignment of domains. This option won't trigger a rebuild
Use this when you want to replace the current production deployment with another deployment that has already been serving as current in the past. Instant Rollback is a faster process since it involves assigning domains to an existing deployment rather than a complete rebuild and is ideal to quickly recover from an incident in production to roll back. However, because it does not do a complete rebuild, items such as environment variables will not be rebuilt.
For more information on how and when to use it, see the Instant Rollback docs.
There may be times when you need to promote an existing preview deployment to production, such as when you need to temporarily use a branch that isn't set as the production branch.
To promote an existing preview deployment to production on Vercel, do the following:
- Go to your project's Deployments tab. This tab lists all the previously deployed builds
- Click the ellipsis (), and from the context menu select Promote to Production
- The popup dialog informs you of which domain(s) will be linked to the build once promoted. To confirm, select Promote to Production
![Option to confirm promote to production.](/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fv1704367830%2Ffront%2Fdocs%2Fdeployment%2Fpromote-to-prod-light.png&w=1080&q=75)
![Option to confirm promote to production.](/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fv1704367830%2Ffront%2Fdocs%2Fdeployment%2Fpromote-to-prod-dark.png&w=1080&q=75)
If you have different Environment Variables set for preview and production deployments then the variables used will change from preview to those you have linked to the production environment. You cannot use your preview environment variables in a production deployment
In some cases you may want to create a production-like deployment to use as a staging environment before promoting it to production.
In this scenario, you can turn off the auto-assignment of domains for your production build, as described below. Turning off the auto-assignment of domains means the deployment won't automatically be served to your production traffic, but also means you must manually promote it to production.
For steps on using this workflow in the CLI, see Deploying a staged production build.
- On your dashboard, select your project
- Select the Settings tab and go to your Git settings
- In the Production Branch section, disable the Auto-assign Custom Production Domains toggle
- When you are ready to promote this staged deployment to production, select the ellipses (…) next to the deployment
- From the menu, select the Promote option
- From the Promote dialog, confirm the deployment, and select the Promote button:
![](/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fv1704196273%2Fdocs-assets%2Fstatic%2Fdocs%2Fconcepts%2Fdeployments%2Fpromote-to-prod-light.png&w=1080&q=75)
![](/_next/image?url=https%3A%2F%2Fassets.vercel.com%2Fimage%2Fupload%2Fv1704196273%2Fdocs-assets%2Fstatic%2Fdocs%2Fconcepts%2Fdeployments%2Fpromote-to-prod-dark.png&w=1080&q=75)
Vercel will instantly promote the deployment; it doesn't require a rebuild. Once promoted, the deployment is marked as Current.
Your production deployments could be in one of three states:
- Staged – This means that a commit has been pushed to
main
, but a domain has not been auto-assigned to the deployment. This type of a deployment can be promoted to Current - Promoted – This production deployment has been promoted from staging. If a deployment has already been promoted in the past, you can't promote it again. If you want to use a previously promoted deployment, you must do a rollback to it
- Current – This is the production deployment that is aliased to your domain and the one that is currently being served to your users
Was this helpful?