Skip to content
Last updated on February 17, 2023
8 min read

Instant Rollback is free while it is available in Beta on all plans

There can be situations where you would want to quickly recover from an incident in production — for example due to a breaking change or a bug. In this scenario, Vercel allows you to perform an Instant Rollback on your production deployments and quickly roll back to a previously deployed production deployment.

When you perform an instant roll back:

  • The rolled backed deployment is treated as a restored version of a previous deployment
  • The configuration used for the rolled back deployment will potentially become stale
  • The environment variables will not be updated if you change them in the project settings and will roll back to a previous build

All deployments previously aliased to a production domain are eligible to roll back. While Instant Rollback feature is in public beta, it is available on all plans.

To initiate an Instant Rollback from the Vercel Dashboard:

On the project's overview page, you will see the Production Deployment tile. From there, click the three-dot menu, and select "Instant Rollback".

Access Instant Rollback from the production deployment tile.

After clicking Instant Rollback, you will see an overlay that displays your Current and Previous deployments in production. If you don't select a production deployment, then the previous production deployment will automatically be selected for roll back.

Overlay for your current and previous deployments.

This button allows you to scroll through your previous Preview and Production deployments, which you can select to roll back to. You get an all-deployments scroll experience when you click the Choose another Deployment button.

Click choose another deployment button to scroll and roll back to a specific deployment.

Once you are there, you'll verify the roll back information tells that:

  • Names of the domains and sub-domains that will be rolled-backed
  • No change in Environment Variables, and they will remain in their original state
  • A reminder about the changing behavior of external APIs, databases, and CMSes used in the current or previous deployments

Confirmation notice to proceed with a roll back.

Once you have verified the details, click the Roll Back button. At this point, you will get confirmation details about the successful roll back.

Message for a successful roll back session.

Warning: If you have custom aliases, ensure the domains listed above are correct. The rolled-back deployment does not include custom aliases since these are not a part of your project’s domain settings. Custom aliases will only be included if they were present on the previous production deployment.

The roll back happens instantaneously, and your domain and sub-domain roll back to the previous deployment. After getting a success notice via the blue ticks, you can click Done. To ensure the roll back is complete, you can visit your URL and see the update.

This takes you back to the Production Deployment tile of your project, where you are notified about the roll back. It tells you about the canceled commit above, and the rolled-back commit stays below.

Production tile showing details about the rolled-back deployment.

  • The rolled-back deployment will be replaced whenever the next successful commit happens to the main production branch
  • No parallel roll backs can happen
  • Only one deployment can be rolled-back at a time for every project. However, a rolled-back deployment stays disabled in your deployment list and can be accessed and re-reverted whenever you want

The project card's layout in the dashboard also changes with a successful roll back (both for list and grid view with an additional icon).

Layout for a project card after a roll back.

You can also roll back from the main deployments section. Filtering the deployments list by main is recommended to view a list of eligible roll back deployments because these will only list all your current and previous deployments promoted to production.

Filter your deployments for the main production branch for a roll back.

Click the vertical ellipses (⋮) next to every deployment row and select the Instant Rollback option.

Perform instant roll back on any of your main branch's deployments.

The remaining process is the same as mentioned above when accessing the feature from the project's overview page.

Deployments previously aliased to a production domain are eligible for Instant Rollback. Deployments that have never been aliased to production a domain, e.g., most Preview Deployments, are not eligible. However, a staged Preview deployment that used to be in the production can be instantly rolled back.

Types of deployments which can be instantly rolled back.

When you need to force an explicit overwrite of the current Production Deployment, you can use the "Promote to Production" option. Both Preview and Production deployments can be promoted to production this way.

However, this involves rebuilding the entire application, which is a slower process and would consume some time.

On the contrary, the Instant Rollback is a relatively faster process since it involves assigning domains to an existing deployment rather than a complete rebuild. That's why it's recommended, to quickly recover from an incident in production to roll back. But if you have time to build your project and you aren’t in a rush to resolve an urgent issue, it makes more sense to promote to production since you get your environment variables re-built.