
Use a phased checklist, assess, plan, mobilize, migrate, optimize, and start with three actions: inventory every workload and its dependencies, stand up a secure landing zone, and assign a migration strategy to each application. Success means minimal downtime, predictable cloud spend, and a security baseline that's enforced before, not after, the first workload moves.
TL;DR:
- Proper dependency mapping over a full business cycle is critical to avoid overlooked flows that can cause migration failures weeks later.
- Applying a tailored migration strategy using the 6 Rs framework ensures applications are optimized for cost, performance, and long-term value instead of treating all workloads equally.
- Building a security and governance foundation in the landing zone before migration prevents costly compliance and security issues after workloads are operational.
- Data migration should include thorough validation, reconciling records and performing functional tests, to detect silent failures that could impact business operations.
- Enforcing resource tagging, ownership, and migration accountability from day one reduces the risk of cost leaks, untraceable resources, and unplanned rework.
Table of Contents
- Cloud Migration Checklist: What to Inventory Before You Plan Anything
- How Do You Choose a Migration Strategy for Each Workload?
- Landing Zone and Secure Cloud Foundation Checklist
- Data Migration Checklist: Bulk, Sync, and Cutover Patterns
- How Should You Sequence Migration Waves?
- Testing and Cutover: Which Pattern Fits Your Downtime Tolerance?
- Cost Control and Tagging: Where the Budget Actually Leaks
- What Happens After the Migration Is "Done"?
- What I've Learned Running Migrations for Wisconsin Businesses
- Get a Second Set of Eyes on Your Migration Plan
- Sources
- FAQ
Cloud Migration Checklist: What to Inventory Before You Plan Anything
Every cloud migration checklist worth using starts with an honest inventory, not a spreadsheet someone built two years ago and never updated. We've seen migrations stall for weeks because a "decommissioned" file server turned out to be running a licensing service three other apps depended on. Discovery is where you find that landmine before it finds you.
Start by cataloging every application with a named business owner, its core function, and the data it touches. Skip this and you'll spend your migration window chasing down whoever "used to manage" a system nobody claims anymore.
Build your inventory around these fields:
- Named business and technical owner for each application
- Data classification (public, internal, regulated, or restricted)
- Upstream and downstream dependencies, including scheduled jobs and integrations
- Compliance tags (HIPAA, CJIS, PCI, or industry-specific requirements)
- Migration complexity score (low, medium, high) based on custom code, licensing, and integration count
- Current utilization metrics: CPU, memory, storage, and peak load windows
Dependency mapping is where most teams cut corners, and it's the most common source of migration incidents. A static list of servers misses the flows that only appear during month-end processing or quarterly reporting. Capturing an observed traffic baseline over a full business cycle, ideally 30 days, reveals the hidden connections a point-in-time scan won't catch. Agentless flow collection tools can log this traffic without touching production performance, which matters if you're working around a small IT team's bandwidth.
Pro Tip: Assign a single "dependency owner" per application who signs off on the mapping before it's finalized. Crowd-sourced documentation without one accountable name almost always has gaps.
Microsoft's Cloud Adoption Framework treats this assessment phase as the foundation for everything downstream, including which migration method fits each workload. Skipping it doesn't save time. It just moves the pain to week six of your migration instead of week one.
How Do You Choose a Migration Strategy for Each Workload?
Not every application deserves the same treatment, and treating them identically is the single most expensive mistake in cloud adoption. The 6 Rs framework gives you a shared vocabulary for that decision, and each option trades speed against long-term value differently.
- Rehost, move the workload as-is (lift-and-shift). Fastest path to the cloud, but often the priciest to run long-term since you inherit the old architecture's inefficiencies.
- Replatform, make small optimizations (managed database instead of self-hosted, for example) without rewriting the app.
- Refactor, rearchitect for cloud-native scalability. Highest effort and cost up front, highest long-term payoff.
- Repurchase, swap the workload for a SaaS equivalent (moving from an on-premises CRM to a cloud one).
- Retain, leave it where it is, usually because of compliance, licensing, or imminent retirement.
- Retire, decommission it. Every retired app is one less thing to migrate, secure, and pay for.
According to Lucid's breakdown of the 6 Rs framework, rehosting delivers the fastest migration but frequently costs more to operate over time, while refactoring and repurchasing require heavier upfront investment in exchange for better long-term economics.
Score each application on five factors: business value, rate of change, compliance sensitivity, current cost model, and estimated migration effort. An app with high business value and a fast-changing codebase justifies refactor investment. A stable, low-value internal tool is a rehost or, better, a retire candidate.
Smaller IT teams tend to lean heavily on rehost and repurchase, saving refactor work for the handful of applications that are genuinely strategic. That's not a shortcut, it's a resourcing decision. SMB-focused cloud guidance recommends starting small and using managed services to bank quick wins before tackling anything architecturally complex.
Landing Zone and Secure Cloud Foundation Checklist
Nothing moves into production cloud accounts until the foundation is built. This is the part of any cloud migration checklist that gets rushed under deadline pressure, and it's exactly the part that shouldn't be. AWS's landing zone guidance is explicit that security has to be architectural from the start, not bolted on after workloads land.
Build the landing zone in this order:
- Account or subscription structure, separate production, staging, and sandbox environments with clear boundaries.
- Identity and access management, enforce single sign-on and role-based access before any workload arrives; our identity-first security approach treats identity as the real perimeter, not the network edge.
- Networking, segment traffic by function and sensitivity; network segmentation basics apply just as much in the cloud as on-premises.
- Centralized logging and monitoring, every account ships logs to one place before go-live, not after an incident forces the question.
- Security baseline, multifamily MFA enforcement, least-privilege IAM roles, and centralized key management (KMS) ownership documented per data classification.
- Cloud security posture checks, automated configuration scanning catches drift before it becomes an exposed storage bucket.
- Governance guardrails, tagging policy, budget alerts, and infrastructure-as-code enforcement so nobody spins up resources by hand outside the standard.
Pro Tip: Treat this list as a wave-zero readiness gate: no workload migrates until every item is enforced and tested, not just documented. A landing zone that exists on paper but isn't actively blocking non-compliant deployments isn't a landing zone.
Landing-zone enforcement, tagging, logging, identity, is what prevents the security and billing mistakes that surface months after everyone thinks the migration is done.
Data Migration Checklist: Bulk, Sync, and Cutover Patterns
Data movement is where migrations quietly go wrong, because a failed application deployment throws an obvious error, while a corrupted or incomplete dataset can sit undetected for weeks. The pattern you choose per dataset depends on tolerance for downtime and rate of change.
- Bulk import/export fits static or slow-changing data, historical archives, reference tables, where a one-time transfer window works fine.
- Change data capture (CDC) or continuous replication suits transactional systems that can't tolerate a long freeze, keeping source and destination in sync until cutover.
- Hybrid cutover combines a bulk initial load with CDC catching up the delta, then a short final sync before the switch.
Before any data moves, run pre-move hygiene: deduplicate records, confirm data ownership per dataset, verify retention policy alignment, and check that encryption at rest and in transit meets your compliance tags from the assessment phase.
Validation is not optional and it is not a single step. ARDURA Consulting's migration checklist recommends pairing record counts and cryptographic checksums with a sample business-transaction reconciliation, actually processing a batch of real invoices or orders through the migrated system to confirm functional parity, not just byte-for-byte equality. Take a rollback snapshot immediately before cutover so you have a known-good restore point if reconciliation fails. Our backup best practices guide covers the verification habits that make that snapshot trustworthy when you actually need it.
How Should You Sequence Migration Waves?
Grouping every application into one giant cutover event is how migrations turn into headlines. Waves let you fail small, learn fast, and protect the business-critical systems until the process is proven.
- Wave zero: foundation. Landing zone build-out and validation only, no application workloads move yet.
- Pilot wave. Pick two or three low-risk, well-understood applications to prove the pattern end-to-end.
- Low-risk wave. Internal tools and applications with generous downtime tolerance.
- Business-critical wave. Customer-facing and revenue-generating systems, migrated only after the pattern is proven twice.
- Decommission wave. Retire legacy infrastructure once the new environment has run clean for an agreed observation period.
Each wave needs objective exit criteria before the next one starts, not a gut-feel "that went fine." Define measurable thresholds: error rates under a set percentage, performance within an agreed range of baseline, zero unresolved critical incidents for 72 hours.
Rollback planning matters as much as the migration plan itself. Define the specific triggers that force a rollback (error rate threshold, data mismatch, failed health check) before the wave starts, not during the war-room call at 2 a.m. ARDURA's rehearsal sequence is worth following closely: run a dry cutover with test data and monitoring live, then a timed rehearsal with scripted steps, have a second operator verify the runbook independently, and get formal signoff before the real production window opens.
Pro Tip: Lower your DNS TTL values a week before cutover, not the night before. A TTL that's still set to 24 hours will strand traffic on the old environment far longer than your maintenance window allows.
Set a freeze window on non-essential changes leading into each wave, and name one person with clear authority to call the rollback. Ambiguity about who makes that call is what turns a 20-minute rollback into a two-hour outage.
Testing and Cutover: Which Pattern Fits Your Downtime Tolerance?
A migration isn't done when the data lands, it's done when you've proven the new environment behaves the same as the old one under real conditions. Skipping straight from "the files copied successfully" to "we're live" is how silent failures reach customers.
Run these test types before any cutover:
- Smoke tests confirm the application starts and core functions respond at all.
- Integration tests verify every upstream and downstream dependency identified in your assessment phase still connects correctly.
- Performance and load tests confirm the new environment holds up under realistic traffic, not just a quiet Tuesday morning.
- Failover tests simulate a component going down to confirm your redundancy actually redirects traffic.
- User acceptance testing (UAT), with a named business approver, not just IT, signing off before go-live.
Your cutover pattern should match your downtime tolerance, not the other way around:
- Blue-green runs both environments simultaneously and switches traffic at the network layer, giving near-instant rollback if something's wrong.
- Parallel run keeps old and new systems live together for a defined period, comparing outputs before fully decommissioning the source.
- Big-bang cutover switches everything at once. Fast, but with no live fallback if validation missed something.
- Pilot-light keeps a minimal standby copy of the environment running, scaling up only when cutover triggers, useful for disaster recovery-adjacent migrations.
After cutover, run your post-verification checklist immediately: confirm monitoring is capturing baseline metrics, error rates match pre-migration norms, and scheduled jobs fired on schedule. Our RPO vs. RTO planning guide is useful here for setting the recovery targets your monitoring should be measured against.
Cost Control and Tagging: Where the Budget Actually Leaks
Cloud bills surprise people not because cloud is expensive, but because nobody enforced attribution before workloads started running. You can't rightsize or negotiate commitment pricing on resources nobody can trace back to an owner or a project.
Enforce tagging before you optimize anything:
- Every resource tagged with owner, environment, cost center, and application at creation time, not retroactively.
- Automated policy that blocks or flags untagged resource deployment.
- Budget alarms set per environment and per project, not just at the account level.
- Anomaly detection alerts for spend spikes outside normal patterns.
AWS's guidance on tagging enforcement is direct on timing: rightsizing and commitment discounts should happen within the first 30 to 90 days after migration, while resource ownership is still fresh and workloads haven't yet drifted into whatever configuration people default to when nobody's watching spend. Wait past that window, and reclaiming the savings gets harder because teams have already built habits, and excuses, around the oversized instances they're running.
Track these KPIs from week one: tagging coverage percentage (aim for near-total compliance before optimization begins), month-over-month spend variance by project, and the ratio of reserved or committed capacity to on-demand usage for steady-state workloads. Our guide to running cloud networking efficiently covers some of the operational habits that keep spend predictable once workloads are live.
What Happens After the Migration Is "Done"?
Migration doesn't end at cutover, it ends when operations can run the new environment without the migration team standing by. That handoff needs its own checklist, because "we'll document it later" rarely happens once everyone's relieved the hard part is over.
- Runbooks covering common incidents, escalation paths, and recovery steps, written by the people who'll actually use them, not just the migration team.
- Clear ownership model naming who's responsible for each system in steady-state operations.
- Service-level objectives (SLOs) defined per workload, with alerting tied to those thresholds rather than generic infrastructure alerts.
- Scheduled architecture reviews, quarterly at minimum, checking cost, security posture, and performance against current usage patterns.
- Security audits on a fixed cadence, not "whenever someone remembers."
- Training checklist for the operations team: access provisioning, monitoring dashboards, and incident response drills specific to the new environment.
- A modernization backlog capturing the refactor and optimization work that got deferred during migration, so it doesn't disappear into "someday."
Well-Architected-style reviews, checking each workload against cost, security, reliability, and performance pillars, catch the drift that accumulates in the months after migration when nobody's paying close attention anymore. The teams that skip this step tend to end up planning a second, unplanned migration a few years later to fix what the first one left unresolved.
What I've Learned Running Migrations for Wisconsin Businesses
The technical framework for a cloud migration checklist is well documented. Assess, plan, mobilize, migrate, optimize, it's not a secret. What actually determines success is whether a business follows it under deadline pressure, and most don't.
The single biggest predictor of a rough migration isn't technical complexity. It's an undocumented dependency someone forgot existed until it broke something three weeks in. The second biggest is skipping the landing zone because "we'll secure it properly once we're settled in." Neither of those is a technology problem. Both are discipline problems, and discipline is exactly what gets sacrificed when a small IT team is also fielding help desk tickets during the migration window.
If you take nothing else from this checklist, take three things: name an accountable owner for every application before you touch it, rehearse your rollback until it's boring, and enforce tagging from the very first resource you deploy. Those three habits prevent more migration disasters than any tooling decision ever will.
If your team is stretched thin, that's not a reason to skip steps, it's a reason to get a second set of hands that's done this before.
, Dustin Collett
Get a Second Set of Eyes on Your Migration Plan
Collett Systems LLC gives Wisconsin businesses something a DIY migration rarely has: a team that's already built the landing zone checklist, the rollback rehearsal, and the tagging enforcement into a repeatable process, instead of learning those lessons live on your production environment. If your IT team is small, compliance carries real weight, or nobody in-house has run a cloud migration end to end, that gap is exactly where migrations go sideways.
Our Microsoft 365 Environment Assessment documents your current application inventory, dependency map, and security posture, the exact foundation this checklist calls for, before a single workload moves. For businesses in regulated industries, our manufacturing IT support and financial services IT support pages outline how we handle compliance-heavy migrations specifically. And if you already have internal IT but need extra capacity for the migration window, our co-managed IT services model lets your team stay in control while we handle the parts that need deep cloud experience.
Book an IT & Security Assessment with Collett Systems LLC and get a documented, prioritized migration roadmap instead of a guess.
Sources
- Migrate overview - Cloud Adoption Framework | Microsoft Learn
- Landing zone guidance, AWS Prescriptive Guidance
- Cloud migration strategy, Lucid
- Cloud Migration Checklist: Step-by-Step Planning Guide, ARDURA Consulting
FAQ
What Are the 6 Rs of Cloud Migration?
The 6 Rs are Rehost, Replatform, Refactor, Repurchase, Retain, and Retire, a framework for assigning the right migration approach to each workload based on its business value, complexity, and long-term cost tradeoffs.
What Are the 5 Phases of a Cloud Migration?
Most frameworks, including Microsoft's Cloud Adoption Framework, break migration into assess, plan, mobilize (or "prepare"), migrate, and optimize, with each phase gated by specific readiness criteria before the next begins.
How Long Does a Cloud Migration Typically Take?
SMB-focused guidance from AWS puts multi-workload migrations at roughly 6 to 18 months depending on scope, application count, and how much refactoring work is involved.
Do I Need a Landing Zone Before Migrating Any Workloads?
Yes. A landing zone, identity, networking, logging, and governance configured before any application moves, is treated as a mandatory precondition in AWS's landing zone guidance, because security and cost controls are far harder to retrofit after workloads are live.
Should I Hire a Managed IT Provider or Migrate In-House?
If your team lacks dedicated cloud migration experience, faces compliance requirements, or is already stretched thin on help desk demands, working with a managed provider like Collett Systems LLC on an assessment first reduces the risk of the dependency and rollback failures that derail DIY migrations.
What's the Biggest Mistake Teams Make in a Cloud Adoption Checklist?
Skipping enforced tagging and dependency mapping in favor of speed. Both are foundational items that, when skipped, resurface as expensive rework during optimization or as unplanned outages during cutover.
