Production Checklist

DeploymentLaunch readinessProduction checks

Use this checklist before launch.

This page is meant to reduce the risk of treating a locally working project as production-ready before the critical infrastructure, auth, billing, and localization flows have been verified in a real environment.

How to use this page

Run through these checks after deployment staging is stable and before your public launch announcement. It works best alongside Deploy to Vercel.

What this checklist covers

Configuration

Environment values, branding settings, domains, and sender identities required for production safety.

Critical product flows

Authentication, checkout, recovery, routing, and locale-specific paths that should be validated before launch.

Quality gates

Linting, type safety, and manual end-to-end checks that reduce regression risk before going live.

Launch checklist

Configuration

  • All required environment variables are present
  • NEXT_PUBLIC_APP_URL points to the production domain
  • siteConfig has real branding and contact information
  • resendEmail uses a verified sender

These checks confirm that the app is pointing at real production infrastructure rather than leftover development defaults.

Auth

  • Google OAuth credentials use production callback settings
  • credentials sign-in works
  • password recovery works
  • protected routes redirect correctly

Authentication failures are often one of the fastest ways to break trust after launch, so these checks deserve explicit attention.

Billing

  • Stripe products and prices are configured
  • webhook secret matches the production endpoint
  • checkout succeeds for one-time and subscription flows
  • webhook events update local records correctly

Billing should be treated as complete only after both checkout and webhook-driven state updates are confirmed.

Localization

  • all locales load successfully
  • navigation remains correct across locale-prefixed routes
  • translated keys are present for dashboard and marketing copy

Quality

  • run pnpm lint
  • run pnpm typecheck
  • verify the main user flows manually

Final reminder

A successful deployment is not the same as a launch-ready product. Production readiness means the critical paths have been verified with real infrastructure, real routing, and real integrations.