Guides
Preview deployments
Pull requests get their own URL and optional data — torn down on merge.
What you get
When preview deploys are enabled on a service and the GitHub App can reach the repo:
- A unique preview URL per PR (for example
https://{name}-pr-{n}-{shortId}.…) - A child service marked as a preview (
isPreview) - Deploy status reflected via GitHub checks when configured
- Automatic teardown when the PR merges or closes
Previews are not attached to custom project domains (ADR: excluded from domain route tables).
Enable
- Install the GitHub App on the repository.
- Turn on the service preview deploy flag.
- Open or update a pull request — the webhook creates the preview deploy.
There is no separate /previews dashboard page; preview services appear on the service/project overview with preview badges.
Protecting previews
Treat preview URLs as semi-public. Prefer password protection or SSO when sharing with clients.
Differences from production
Previews may use smaller compute, ephemeral data, and different env. Never assume preview data is production-safe — treat it as disposable.