Skip to content
CAMPUX Cloud Bootcamp
Field notes · Migration
Rollback Planning

Some steps reverse cleanly, some don't — know which before you start

By Captain O7 min read

A rollback plan is not a single undo button. In a tenant-to-tenant move, one stage backs out in five minutes and the next one is effectively one-way. The whole job is knowing where that line sits at every step — and having decided, on paper, what you will do when it goes wrong at two in the morning.

New to cloud? CAMPUX is a free, build-first course. Start here →

People treat rollback as a checkbox: "yes, we have a plan." Then something breaks at cutover, and they discover the plan assumed the whole migration reverses the same way, which it does not. This note is part of the Azure tenant-to-tenant migration guide, and its one argument is this: rollback is not uniform across workstreams. Mail, DNS, and identity each fail back on their own terms, and you have to map that terrain before you move a single mailbox.

Some stages reverse cleanly, some do not; mailbox completion is the point of no return.identitymailbox batchCOMPLETEDNScan back outpoint of no returnreverses in a TTLwrite the 2 a.m. decision into the runbook before you start
Figure 1 — Rollback is not uniform. Before a mailbox batch completes you can back out; once it completes the source is a MailUser and reversing is painful — that is the point of no return. DNS reverses only as fast as its TTL, which is why you lower it first. Identity and device re-enrolment are hard to undo per user. Decide the rollback line for each stage before switch night, not during it.

Draw a rollback line for every stage

A rollback line is the point in a given workstream past which backing out stops being cheap and starts being a project of its own. Every stage has one, and they do not line up. Provisioning target MailUser objects reverses trivially — you delete objects nobody is using yet. Lowering DNS TTL reverses in one TTL. A completed mailbox batch does not reverse at all in the ordinary sense. So you do not write "roll back the migration." You write, per stage, the answer to a sharper question: if this step fails, is the source still authoritative, or has authority already shifted to the target? While the source still holds the live copy, you can walk away. Once the target holds it, walking away means treating the target as your new source and migrating back.

The point of no return for mail

Mailbox moves are the clearest example, because Microsoft's native cross-tenant tooling has a precise moment where the ground shifts. Before a migration batch completes, the source mailbox is still the live, authoritative copy. You can abandon the batch, leave the source running, and no user notices. After completion, the behavior is documented plainly: the source user mailbox is converted to a MailUser stamped with a routing address that points at the target tenant. The live mailbox now lives in the target. Reversing that is not a click — it means standing up the move in the opposite direction, with the target as source, and eating the same cutover risk a second time.

Before completion you can walk away. After it, you are migrating back, not rolling back.

That single fact reshapes how you sequence a cutover. You hold completion until you are genuinely confident, because completion is the door that only swings one way. Pilot a small batch, verify it end to end, and only then complete the larger waves. The batches you have not completed are your safety margin, and you spend that margin deliberately, not by accident because someone clicked Complete on the whole population at once.

Why DNS TTL is your fastest lever

When mail flow goes wrong, the fastest thing you can change is where the internet thinks your mail should land — and that is governed entirely by the TTL on your MX record. TTL is how long resolvers cache the record, which means it is also how long a reversal takes to propagate. If your MX has a four-hour TTL and you have to point mail back at the source, the world keeps delivering to the target for up to four hours after you flip it. That is why the runbook lowers TTL days ahead, down to five minutes where the provider allows. Microsoft's migration guidance is explicit that a longer TTL forces you to change records well in advance; the flip side is that a low TTL is what makes a fast backout possible at all. A TTL you forgot to lower is, reliably, the slowest part of any rollback you ever run.

Back up before the destructive steps

Some steps in the source-tenant teardown are genuinely lossy — removing proxy addresses, resetting default domains, releasing the custom domain so the target can claim it. Before any of those, capture the current state you would need to rebuild: export each object's EmailAddresses, record the domain configuration, note the MX and autodiscover records exactly as they stand. Microsoft's clean-up cmdlets warn that clearing previous mailbox info is irreversible once a soft-deleted mailbox ages out. Treat "irreversible" in the docs as a hard stop that demands a saved copy first. The backup is cheap. Reconstructing an address list from memory at 2 a.m. is not.

Identity and devices don't fail back per user

Mail and DNS are estate-wide levers you pull once. Identity is different, because it is rewritten one user at a time on their own device. When a user re-registers MFA against the target tenant or re-enrolls their laptop, that state lives on the endpoint and in the target directory. There is no bulk switch that unwinds it — undoing it means walking each affected person back through setup by hand, which at any real headcount is not a rollback, it is a week. So the plan treats identity cutover as a near-irreversible stage and gates it hard: you do not trigger re-registration for the whole company until mail and data are already proven in the target. The stages you can reverse cheaply go last-out; the ones you cannot go behind the most caution.

Write the 2 a.m. decision down in advance

The worst time to decide whether to roll back is while it is failing. So you decide beforehand, in writing. Name the triggers that force the call — a large share of users unable to sign in after cutover, mail flow still dead after a set window of remediation, confirmed data-integrity problems past a threshold. Name who has the authority to pull the trigger, so nobody is hunting for a decision-maker at 2 a.m. And write the concrete backout steps for the stages that still reverse: revert the MX and other DNS to the source, restore mail routing to the source connectors, tell users in plain language what is happening. A rollback plan you never use still earns its cost, because it is what lets you stay calm enough to not need it.

The takeaway

Rollback in a tenant-to-tenant migration is a map, not a button. Provisioning and TTL changes reverse in minutes. Mailbox batches reverse right up until they complete, and then they convert the source to a MailUser and stop reversing. Identity and device re-enrollment barely reverse at all. Draw the line for each stage before you start, sequence the one-way doors last and behind the most confidence, back up before every lossy step, and write the who-and-when of the 2 a.m. call into the runbook while the room is calm. That is what separates a migration you can abort from one you can only survive.

Questions people also ask

Can you roll back a tenant-to-tenant migration?

Partly, and only stage by stage. A mailbox move can be backed out cleanly until the batch completes, because the source mailbox is still intact. DNS reverses in the time of its TTL. But once a mailbox batch completes the source is converted to a MailUser, and identity re-registration or device re-enrollment are hard to undo per user. There is no single button that returns everything to the source tenant.

What is the point of no return in a mailbox migration?

It is batch completion. Before a cross-tenant mailbox batch completes, the source mailbox still holds the live copy and you can abandon the move. Microsoft's own documentation notes that after the moves complete, the source mailbox is converted to a MailUser stamped with a routing address to the target. From that point on, mail lands in the target and reversing means treating the target as the new source.

How does DNS TTL affect migration rollback?

TTL is how long resolvers cache your records, so it is also how long a change takes to reverse. Lower the TTL on your MX and other records days before cutover, down to five minutes if you can. Then if you have to point mail back at the source tenant, the internet picks up the change in minutes instead of hours. A high TTL you forgot to lower is the slowest part of any backout.

Which migration steps cannot be rolled back easily?

Anything that rewrites per-user state on the endpoint or in identity. Once a user re-registers MFA against the target tenant or re-enrolls their device, undoing it means walking that user back through setup by hand. Completed mailbox moves, removed source proxy addresses, and a domain already released from the source tenant are all in the same category: reversible in theory, expensive and slow in practice.

What should a migration rollback plan include?

A rollback line for each stage that says exactly when backing out is still cheap and when it stops being cheap. Name the triggers that force the decision, such as broad sign-in failures or dead mail flow after remediation. List the concrete steps to revert DNS and mail routing to the source, the backups taken before any destructive step, and who has authority to call it at 2 a.m.

Further reading — the Microsoft docs
Your next class · free
You've read the idea. Class 36 — Incident Response & Recovery is where you build it, hands-on — no account needed.Start Class 36 →
Captain O
Founder & instructor · CAMPUX Cloud Engineering Bootcamp
Part of the tenant-to-tenant migration field manual. Back to all field notes →