Skip to content
'; user_status_content.firstChild.appendChild(avatarContainer); } else { // Placeholder for LoggedOutUserMenu let loggedOutContainer = document.createElement('div'); // if LoggedOutUserMenu fallback let userBtn = document.createElement('button'); userBtn.style.width = "33px"; userBtn.style.height = "33px"; userBtn.style.display = "flex"; userBtn.style.alignItems = "center"; userBtn.style.justifyContent = "center"; userBtn.style.color = "var(--ds-gray-900)"; userBtn.style.border = "1px solid var(--ds-gray-300)"; userBtn.style.borderRadius = "100%"; userBtn.style.cursor = "pointer"; userBtn.style.background = "transparent"; userBtn.style.padding = "0"; // user icon ( from geist) let svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg'); svg.setAttribute('data-testid', 'geist-icon'); svg.setAttribute('height', '16'); svg.setAttribute('stroke-linejoin', 'round'); svg.setAttribute('style', 'color:currentColor'); svg.setAttribute('viewBox', '0 0 16 16'); svg.setAttribute('width', '16'); let path = document.createElementNS('http://www.w3.org/2000/svg', 'path'); path.setAttribute('fill-rule', 'evenodd'); path.setAttribute('clip-rule', 'evenodd'); path.setAttribute('d', 'M7.75 0C5.95507 0 4.5 1.45507 4.5 3.25V3.75C4.5 5.54493 5.95507 7 7.75 7H8.25C10.0449 7 11.5 5.54493 11.5 3.75V3.25C11.5 1.45507 10.0449 0 8.25 0H7.75ZM6 3.25C6 2.2835 6.7835 1.5 7.75 1.5H8.25C9.2165 1.5 10 2.2835 10 3.25V3.75C10 4.7165 9.2165 5.5 8.25 5.5H7.75C6.7835 5.5 6 4.7165 6 3.75V3.25ZM2.5 14.5V13.1709C3.31958 11.5377 4.99308 10.5 6.82945 10.5H9.17055C11.0069 10.5 12.6804 11.5377 13.5 13.1709V14.5H2.5ZM6.82945 9C4.35483 9 2.10604 10.4388 1.06903 12.6857L1 12.8353V13V15.25V16H1.75H14.25H15V15.25V13V12.8353L14.931 12.6857C13.894 10.4388 11.6452 9 9.17055 9H6.82945Z'); path.setAttribute('fill', 'currentColor'); svg.appendChild(path); userBtn.appendChild(svg); loggedOutContainer.appendChild(userBtn); loggedOutContainer.style.display = 'flex'; loggedOutContainer.style.gap = '8px'; loggedOutContainer.style.alignItems = 'center'; user_status_content.firstChild.appendChild(loggedOutContainer); } })();
Menu

vercel rollback

Last updated March 17, 2026

The vercel rollback command is used to roll back production deployments to previous deployments.

terminal
vercel rollback [deployment-id or url]

Using vercel rollback rolls back to a previous deployment.

On the hobby plan, you can only roll back to the previous production deployment. If you attempt to pass in a deployment id or url from an earlier deployment, you will be given an error: To roll back further than the previous production deployment, upgrade to pro.

Show the status of any current pending rollbacks.

terminal
vercel rollback status [project]

Using vercel rollback status to check the status of pending rollbacks.

Examples:

terminal
# Check status for the linked project
vercel rollback status
 
# Check status for a specific project
vercel rollback status my-project
 
# Check status with a custom timeout
vercel rollback status --timeout 30s

These are options that only apply to the vercel rollback command.

The --timeout option is the time that the vercel rollback command will wait for the rollback to complete. It does not affect the actual rollback which will continue to proceed.

When rolling back a deployment, a timeout of 0 will immediately exit after requesting the rollback.

terminal
vercel rollback https://example-app-6vd6bhoqt.vercel.app

Using the vercel rollback command to the https://example-app-6vd6bhoqt.vercel.app deployment.

To undo a rollback, promote a deployment using vercel promote:

terminal
vercel promote [deployment-id or url]

This promotes the specified deployment to production and re-enables auto-assignment of production domains. For more details, see Undo a rollback.

The following global options can be passed when using the vercel rollback command:

For more information on global options and their usage, refer to the options section.


Was this helpful?

supported.