Pick your hosting provider, set the repo or deploy token, and configure Instant Content Deployment for 2-second content pushes.
Where it is
Settings → Deploy (/admin/settings?tab=deploy).
Provider selection
Five supported targets for the Deploy button:
| Provider | How it works | When to use |
|---|---|---|
| GitHub Pages | Builds site, pushes dist/ to gh-pages branch | Free, SSL included, static-only |
| Vercel | Triggers a Vercel deploy via token | Fastest SSR / edge runtime |
| Netlify | Pushes build to Netlify via auth token | Free tier, preview deploys per branch |
| Fly.io | Docker build + deploy | EU region (arn), full server support, persistent disks |
| Cloudflare Pages | Direct upload | Fast CDN, cheap egress |
Each provider has its own token field. Tokens are site-level secrets — hidden after save, editors can't read them back.
Instant Content Deployment (ICD)
The killer feature. Instead of triggering a full build every time content changes, ICD signs a webhook and fires it to your frontend's revalidation endpoint. Next.js (or any ISR-capable frontend) regenerates just the affected pages. ~2 seconds instead of 5–10 minutes.
To enable:
- Set
Revalidation URL— the endpoint on your frontend that acceptsPOST /api/revalidate - Generate a signing secret (click Generate) — used to sign the webhook payload
- Copy the secret into your frontend's environment
- Click Test revalidation — the tab sends a dummy payload to verify round-trip
- Toggle Deploy on save to fire ICD on every content save
See ICD + Docker deploy for the full flow.
When ICD falls back to full deploy
ICD handles content changes. It does NOT handle:
- Config changes (
cms.config.ts) - New collections
- Schema edits
- Build.ts changes
Those require a full rebuild, which the tab fires automatically.
Deploy on save
A toggle. When on, saving any document triggers ICD (or full deploy if ICD isn't configured). Great for fast teams with a small edit cadence.
Off when you prefer an explicit "Deploy" step — e.g. a review workflow where multiple edits go live together.
Deploy history
The right-hand panel shows the last 50 deploys: timestamp, trigger (manual / save / schedule), duration, status, and the commit SHA / image tag. Click any entry for full log output.
Scheduled deploys
Optional cron field. Useful for sites that rebuild nightly (e.g. to refresh external feeds, re-run agents, update statistics). Uses the site timezone.
Related
- Deploy feature overview — wider deploy primer across providers
- ICD + Docker one-click — the instant-content and one-click Docker wizard
- Backup settings — snapshot before a risky deploy