Cloud

Cloud Migration Guide: The 6 R's, a Phased Plan, and a Cutover Checklist

A practical, opinionated cloud migration guide: pick a strategy with the 6 R's, run a five-phase plan, and cut over with a rollback-ready checklist that protects your RTO and RPO.

By InventiveHQ Team

Cloud migration is the process of moving applications, data, and workloads from on-premises infrastructure (or another cloud) into a cloud platform, and the single most important decision for each workload is which of the "6 R's" migration strategy it gets — Rehost, Replatform, Repurchase, Refactor, Retire, or Retain — because that choice determines the cost, timeline, and risk of everything that follows. A well-run migration is not a weekend copy job; it is a five-phase program — assess, plan, prepare, migrate, and optimize — where discovery and cutover rehearsal consume far more effort than the data transfer itself. Get the strategy tagging and the cutover rollback plan right, and the rest is disciplined execution.

That's the summary an AI Overview would give you. Here's what it can't show you: the actual decision logic for picking a strategy per workload, an animated view of how a phased migration flows wave by wave, and a cutover checklist that keeps your rollback path open. Those are the parts that decide whether your migration ships on time or stalls for a year.

The 6 R's: pick one strategy per workload

Every workload in your inventory gets exactly one label. Don't skip this — an untagged workload is one nobody has decided how to move, and it becomes the thing that blocks cutover at 2 a.m.

StrategyWhat you doEffortBest whenWatch out for
Rehost (lift & shift)Move VMs as-is to cloud computeLowYou need out of the datacenter fast; app is stable but unremarkableInherits on-prem inefficiency; no cost win without later right-sizing
Replatform (lift & reshape)Minor tweaks — e.g. swap self-managed DB for managed RDSLow–MediumA small change unlocks real savings or ops reliefScope creep — "small tweak" quietly becomes a refactor
Repurchase (drop & shop)Retire the app, adopt a SaaS equivalentMediumA mature SaaS covers the need (email, CRM, HR)Data migration + user retraining; feature gaps
Refactor (re-architect)Rebuild for cloud-native / serverlessHighHigh-value app where elasticity or cost payoff justifies engineeringLongest, riskiest; only worth it for workloads that matter
RetireDecommission entirelyVery lowNobody actually uses it (you'll be surprised how many)Confirm no hidden dependencies before you pull it
RetainLeave on-prem for nowNoneLatency, compliance, or licensing blocks the moveBecoming a permanent "temporary" exception
Which should I pick?Default to Rehost to escape hardware fast, then Replatform/Refactor the workloads where the payoff is provable. Repurchase commodity apps. Retire the dead weight first — it's free savings.

The opinionated take: most estates should rehost first and optimize later. Trying to refactor everything before migrating is the classic way a cloud program burns a year and delivers nothing. Move, stabilize, then improve the workloads that earn it.

The five phases of a migration

A migration is not one event; it is a pipeline. Each phase feeds the next, and skipping discovery is how teams end up cutting over an app whose hidden dependency on an on-prem license server takes production down.

The five phases of a cloud migration A left-to-right flow: Assess, Plan, Prepare, Migrate, Optimize, with a pulse traveling along the arrows connecting them. Five phases, in order 1 · Assess Inventory apps, map dependencies, tag the 6 R's 2 · Plan Set RTO / RPO, group waves, budget + alerts 3 · Prepare Build VPC, IAM, networking, encryption 4 · Migrate Replicate, test, cutover wave, validate 5 · Optimize Right-size, reserve capacity, monitor Discovery and cutover rehearsal cost more than the data copy — plan for it.
Advertisement

Phase 1 — Assess

You cannot migrate what you cannot see. Build a full inventory of applications, servers, and data stores, then map dependencies — which service calls which, what shared databases exist, which app quietly depends on an on-prem file share or license server. Discovery tools that watch network traffic beat spreadsheets here. Output: every workload tagged with one of the 6 R's and a rough dependency graph.

Phase 2 — Plan

For each workload, define its RTO (how long it can be down) and RPO (how much data loss is acceptable). Those two numbers drive everything downstream — the replication method, the cutover window, and whether you need a live rollback path. Group workloads into waves by dependency so tightly-coupled systems move together. Set a cloud budget with automated alerts now, before a single resource is provisioned.

Phase 3 — Prepare

Build the landing zone: a segmented VPC, least-privilege IAM roles (do not clone your broad on-prem admin accounts), networking and DNS, a load balancer in front of scalable tiers, and encryption in transit and at rest. Turn on logging and configuration monitoring here — misconfiguration is the leading cause of cloud breaches, and you want it caught on day one, not after cutover. A zero-trust architecture posture, where no network location is implicitly trusted, is the right default for a fresh environment.

Phase 4 — Migrate

Replicate data (ongoing sync for low-RPO workloads, bulk transfer for the rest), stand the workload up in the cloud, and test it against real scenarios before any user touches it. Then cut over — the checklist below is the part people wing and regret.

Phase 5 — Optimize

This is where the money is. Lift-and-shift instances are almost always over-provisioned; right-size them after two to four weeks of real usage data. Buy reserved instances or savings plans for steady workloads (routinely 30–60% off compute). Kill orphaned snapshots and unattached volumes. Watch data egress. For the mechanics of this phase, see our cloud cost optimization and FinOps guide.

The cutover checklist (keep your rollback open)

Cutover is the moment production traffic moves to the cloud. The discipline that separates a clean cutover from a war room is a single rule: stay reversible until the smoke tests pass.

Cutover decision flow with rollback path Final sync, then switch DNS to cloud, then smoke tests; pass leads to done, fail rolls DNS back to the source system. Reversible cutover Final incremental data sync Switch DNS / LB to cloud Smoke test critical functions PASS → done decommission source later FAIL → roll DNS back source still live, within RTO Keep the source system running until smoke tests pass — that is your rollback.

Run the cutover in this order:

  1. Freeze / final sync. Do a last incremental data sync so the cloud copy matches source within your RPO.
  2. Switch traffic. Change DNS or the load-balancer target to point at the cloud. Use a low TTL set days in advance so the change propagates fast.
  3. Smoke test. Verify the critical paths — login, checkout, a real transaction — not just "the homepage loads."
  4. Go / no-go. Passing tests → keep going and plan to decommission the source. Failing tests → roll DNS back to the still-running source, within your RTO, and debug offline. Never debug live with users on a broken cutover.
  5. Hold the source. Keep the old environment running (read-only if needed) until you're confident, then decommission. Deleting it the same night removes your rollback.

For a structured way to confirm each migrated workload is actually healthy, see our cloud migration validation workflow.

Common ways migrations go wrong

  • Untagged workloads. Anything without a 6 R's label is an undecided workload that stalls the whole wave.
  • Skipping dependency mapping. The hidden dependency you didn't map is the one that takes production down at cutover.
  • Refactoring before migrating. Elegant in theory, a year-long stall in practice. Rehost, then refactor what earns it.
  • No RTO/RPO. Without them you can't size the cutover window or justify a rollback plan — you're guessing.
  • Lift-and-shift and forget. The savings come in Phase 5. Migrating without optimizing means paying cloud prices for on-prem inefficiency.
  • Deleting the source too early. Your old environment is your rollback. Keep it until you're sure.

Next steps

Start with discovery, not procurement. Inventory your estate, tag every workload with a strategy, and define RTO/RPO before you provision anything. If you're new to the platform side, our cloud computing beginners guide covers the fundamentals, and the file-server cost-optimization case study shows how these phases play out on a real migration. Once you're running in the cloud, an infrastructure audit turns Phase 5 into recurring savings rather than a one-time cleanup.

Frequently Asked Questions

What are the 6 R's of cloud migration?

The 6 R's are Rehost (lift-and-shift to equivalent cloud VMs), Replatform (minor optimizations like a managed database without changing core code), Repurchase (drop the app and buy a SaaS replacement), Refactor (re-architect for cloud-native services), Retire (decommission workloads you no longer need), and Retain (leave it on-prem for now). Gartner originally published 5 R's in 2010; AWS added Repurchase to make six. Every workload in your migration should be tagged with exactly one of these.

How long does a cloud migration take?

A single straightforward application rehost can take days to a few weeks. A full mid-market datacenter migration typically runs three to nine months end to end, and large enterprise programs run one to three years. The biggest time sink is almost never the copy itself — it is discovery, dependency mapping, and testing. Budget more time for planning and cutover rehearsal than for the actual data transfer.

What is the difference between rehosting and refactoring?

Rehosting ("lift and shift") moves a workload to cloud infrastructure with no code changes — the fastest, lowest-risk path, but it inherits the same inefficiencies and rarely captures cloud-native cost savings. Refactoring re-architects the application to use managed and serverless services (autoscaling, managed queues, container orchestration). Refactoring costs far more up front and takes longer, but delivers the lowest long-term run cost and the most elasticity. Most programs rehost first, then refactor high-value workloads later.

What are RTO and RPO in a cloud migration?

RTO (Recovery Time Objective) is the maximum acceptable time an application can be offline. RPO (Recovery Point Objective) is the maximum acceptable amount of data loss, measured in time — an RPO of 15 minutes means you can afford to lose at most 15 minutes of transactions. Define both before cutover: they determine your replication method, your cutover window, and whether you need a rollback plan or can accept a hard switch.

Should I lift-and-shift or refactor first?

For most organizations, lift-and-shift first, then optimize. Rehosting gets you off aging hardware and out of the datacenter quickly, stops the capital bleed, and buys time to learn the platform. Once workloads are running in the cloud you can selectively replatform or refactor the ones where the cost or performance payoff justifies the engineering effort. Trying to refactor everything before you migrate is the most common way cloud programs stall for a year.

How do I avoid surprise cloud bills after migrating?

Set a budget with automated alerts before you migrate anything, tag every resource by owner and environment, and right-size instances after two to four weeks of real usage data rather than guessing up front. The three biggest post-migration cost surprises are over-provisioned VMs left at lift-and-shift sizes, orphaned storage snapshots and volumes, and data egress fees. Reserved instances or savings plans for steady workloads routinely cut compute bills 30 to 60 percent.

What is a cloud migration cutover?

Cutover is the moment production traffic switches from the old environment to the new cloud environment. It usually involves a final incremental data sync, a DNS or load-balancer change to point users at the cloud, a smoke test of critical functions, and a go/no-go decision. A good cutover plan is reversible: if smoke tests fail, you roll DNS back to the source system within your RTO window rather than debugging live.

Do I need to migrate everything at once?

No, and you usually should not. A phased migration moves workloads in waves grouped by dependency — you migrate a bounded set of loosely coupled applications, validate them, then move the next wave. Big-bang migrations (everything in one weekend) only make sense for small, tightly-coupled estates. Phasing lowers risk, spreads the workload across your team, and lets you apply lessons from each wave to the next.

How do I secure workloads during and after migration?

Start with encryption in transit and at rest for every data movement, isolate workloads in a properly segmented VPC, apply least-privilege IAM roles instead of reusing broad on-prem accounts, and move toward a zero-trust posture where no network location is implicitly trusted. Enable cloud-native logging and configuration monitoring from day one so misconfigurations — the leading cause of cloud breaches — are caught before they are exploited.