← All field guidesAgency operations · Scale

Production, staging, and domain migration: a clean replacement workflow

A new domain must go live while the old production site and a staging copy are still accessible. Define verification order, confirm contractual treatment of staging, and revoke the old production entry after cutover. This multi-site agency operations gives the concrete numbers, evidence, failure mode, action order, and completion test needed to make that decision responsibly.

Updated 2026-09-01 · 4 min read
Written for
WordPress technical lead
Article format
Lifecycle control guide — Production, staging, and domain migration: a clean replacement workflow
Take-away
Production URL Cutover and Revocation checklist

Record the current state: Replacing production, staging, and old domains

A new domain must go live while the old production site and a staging copy are still accessible. Lifecycle control for replacing production, staging, and old domains starts by recording the currently valid URL, owner, permission, credential, or rule before any new state is introduced.

A new production domain needs 72 hours of DNS overlap, but staging and .local or .test environments require their own current contractual treatment rather than indefinite production authorization. A dated transition timeline for replacing production, staging, and old domains exposes the common gap between a completed technical change and an old authorization that remains usable.

Approve the transition: Replacing production, staging, and old domains

Record DNS plan, old and new production URLs, environment type, site owner, license state, data responsibility, cutover approval, overlap deadline, and verified old-site revocation. The evidence for replacing production, staging, and old domains must prove that the new state works and, separately, that the old state no longer works after the approved overlap.

Define verification order, confirm contractual treatment of staging, and revoke the old production entry after cutover. The operating boundary is explicit: Complete the replacement only when the new production site is accepted and the old production authorization is demonstrably inactive after the approved overlap. Any temporary coexistence in replacing production, staging, and old domains needs a finite expiry, owner, reason, and explicit review before it can be extended.

  • Evidence set — Record DNS plan, old and new production URLs, environment type, site owner, license state, data responsibility, cutover approval, overlap deadline, and verified old-site revocation.
  • Decision boundary — Complete the replacement only when the new production site is accepted and the old production authorization is demonstrably inactive after the approved overlap.
  • Completion check — Has the former URL, permission, credential, or rule involved in replacing production, staging, and old domains actually become unusable?

Test the new state separately: Replacing production, staging, and old domains

Adding the new URL first and never expiring the old one leaves two sites handling customer data with unclear commercial and security responsibility. Adding the new state without retiring the old one turns replacing production, staging, and old domains into an accumulating access and responsibility problem.

List environments; confirm current plan terms; test the new site; approve cutover; replace the allowed URL; verify WordPress and DNS; revoke the old site; close the overlap exception. Execute replacing production, staging, and old domains from inventory through authorization, test, cutover, old-state revocation, reconciliation, and closure evidence.

Prove the old state is gone with Production URL Cutover and Revocation checklist: Replacing production, staging, and old domains

For replacing production, staging, and old domains, Agency covers up to 10 normalized production hostnames and Unlimited removes the managed production-hostname count ceiling; neither plan makes provider usage unlimited, and current terms for staging, .local, .test, resale, hosting bundles, and client-managed sites still govern the use case.

Use the checklist across DNS, WordPress, and licensing owners so one team's completion is not mistaken for end-to-end cutover. Use the Production URL Cutover and Revocation checklist with one authoritative dashboard record for company, production URL, owner, contract state, approval, replacement, and verified revocation instead of copying access codes or keeping competing spreadsheets.

Close the paid request path after the domain cutover

A successful page load on the new domain does not prove that the old system is quiet. A webhook destination, scheduled callback, DNS record, or provider credential can still send work to the retired WordPress installation. Treat the old and new domains as two live systems until the new customer path passes acceptance and the old path can no longer start paid work.

Seven days before cutover, inventory every trigger and destination that can reach the feature: webhook URLs, Cron callbacks, DNS records, registered production hostname, provider key owner, and the person allowed to revoke each item. Do not revoke a shared key simply because its name contains the old domain; first establish whether another production path uses it.

Close the migration only after the new path passes its functional test, no callback is accepted by the retired endpoint, and provider usage attributed to the old path remains at zero for the agreed observation window. Keep the T+1 hour and T+24 hour evidence with the cutover record so a later invoice can be reconciled to the migration.

Migration revocation ledger
CheckpointActionEvidence to retainPass condition
T−7 daysList old/new URLs, callbacks, DNS, activation, keys, and ownersDated inventory and key-ownership notesEvery request starter has an owner
T0Accept the new path, replace the licensed hostname, and record the cutoverSuccessful request ID, response, approver, and replacement eventNew path works and the former activation is revoked by the replacement
T+1 hourTest that the old endpoint no longer accepts workOld-URL test result and server/provider logNo paid operation begins on the retired path
T+24 hoursReconcile provider usage to both pathsUsage export for the agreed windowUsage attributed to the retired path is zero
CloseRevoke any old dedicated callback or provider credentialRevocation event, owner, and dateNo former credential can start paid work

Close the lifecycle record: Replacing production, staging, and old domains

Verify replacing production, staging, and old domains from the customer path, WordPress or operational path, and contract or access inventory so one team's completion is not mistaken for the whole transition. The completion question is: “Has the former URL, permission, credential, or rule involved in replacing production, staging, and old domains actually become unusable?” Record the answer, the remaining uncertainty, the owner, and the next review date rather than treating an executed action as a completed outcome.

The Production URL Cutover and Revocation checklist should leave replacing production, staging, and old domains with one authoritative current state and a history that explains every temporary overlap. For replacing production, staging, and old domains, that record creates a natural next step: test the chosen boundary on one supported, reversible WordPress path, confirm the customer fallback, and expand only when the evidence still supports the decision.

Test the operating decision from “Production, staging, and domain migration: a clean replacement workflow” before rolling it across a client fleet. Download AI Cost Guardrails-CNXT on one pilot WordPress site for free, then evaluate Agency or Unlimited when the Production URL Cutover and Revocation checklist is ready to scale.

Primary sources checked

Next field guideTurn multi-site AI cost control into a profitable care option →