---
title: "Preview & Production Deployments"
type: concept
tags: [preview, production, promote, skew-protection]
updated: 2026-06-19
confidence: high
sources: [raw/llms_txt_doc-preview-deployment-suffix.md, raw/llms_txt_doc-sharing-a-preview-deployment.md, raw/llms_txt_doc-promote-preview-to-production.md, raw/llms_txt_doc-skew-protection.md]
---

# Preview & Production Deployments

Every non-production branch/PR gets a **preview deployment** — a full, live copy of the app for that change, the feature most teams adopt Vercel for.

## Previews

- **Per-PR URLs** — each push updates the preview; the URL is stable per branch and posted to the PR.
- **Preview deployment suffix** — customize the preview domain (e.g. use your own domain for previews instead of `*.vercel.app`).
- **Sharing** — previews can be shared with stakeholders; combine with [deployment protection](../syntheses/deployment-protection-and-security.md) (password/SSO) for private previews, or sharable links for external reviewers.
- **Preview environment variables** — separate values for preview vs production ([environment-variables](environment-variables.md)).

## Promotion to production

A preview that's been validated can be **promoted to production** without rebuilding — the exact artifact reviewers approved becomes production, eliminating "works in preview, breaks in prod." The inverse is [instant rollback](deployments.md).

## Skew protection

During a deploy, users mid-session might have an old client talking to a new backend (or vice versa) — **version skew**. **Skew protection** routes a client's requests to the deployment version it loaded, preventing broken states during rollouts. Essential for SPAs and apps with client/server contracts that change between deploys.

## Rolling releases

Vercel also supports gradual **rolling releases** (shifting traffic to a new production deployment in stages) for safer launches — see [docs-catalog](../summaries/docs-catalog.md).
