next js.md

Migrate Vercel app: Next.js

Summary

Move a Next.js app's compute from Vercel to Ample. Server-rendered apps run with next build and next start; static exports are published as static sites; environment variables move with --env; a PostgreSQL database can be supplied by URL or auto-provisioned. Cutover is a DNS change with ample domain, and Vercel stays untouched until you confirm.

Infrastructure requirements

Prerequisites

Exact tested configuration

Steps

  1. Inventory. List what the app uses on Vercel. Compute and environment variables are in scope; edge middleware, ISR revalidation, image optimization, cron jobs and Vercel integrations are out of scope and must be reviewed.

  2. Deploy to Ample in parallel. Deploy the same source with its environment variables; Vercel keeps serving production.

    ample deploy . --name <app-name> --public --env KEY=value
    
  3. Validate on the Ample URL. Run the app's smoke tests and the success checks; compare responses with production.

  4. Cut over DNS. Add the custom domain and set the documented DNS records; TLS is issued automatically. Keep Vercel until traffic is verified.

    ample domain add <domain> --app <app-name>
    
  5. Rollback. Point DNS back to Vercel. Nothing on Vercel was changed by this recipe.

Tested examples

Success checks

Limitations

Cost estimate

Estimated 10.00 USD per month (size prices from pricing.toml at build revision a1b8c38919e59cd035ebabaced73cf84ece24371).

Apps and managed databases auto-pause when idle; the estimate is the always-on monthly price of the tested sizes. Plan quotas and budgets apply.

Verification evidence

Last verified: 2026-09-20T01:42:25Z

Execution binding

No execution binding. This recipe is documentation only; nothing is executed automatically.