Facing an on-prem to cloud migration? Stop the highest-impact faults first. Fix dependency mapping, bandwidth/egress estimates, and a tested rollback plan now.
How much does a mid‑market outage really cost? Unexpected egress fees, IOPS spikes, and missing dependency maps turn cutovers into multi‑week rollbacks and lost revenue.
Migration errors that cost: core causes and priority fixes
Missing application dependency maps cause cascading failures during cutover. Map process, network, storage, and DNS dependencies before moving any VM or service.
Underestimating bandwidth and egress fees creates surprise bills and stalled transfers. Model the TB to move, multiply by provider egress rates, then add 1.5× for replication spikes.
Skipping a tested rollback and automated smoke tests makes outages long and costly. Define rollback triggers, owners, and expected rollback costs before any bulk transfer.
Alan Curtis has observed repeated patterns where a skipped dependency check extended a cutover by 48 hours. After analyzing 27 migrations in recent years, the pattern shows labor and egress drive most overruns.
Priority triage (first 15 minutes)
- Pause bulk transfers and snapshot current replication state.
- Check cloud billing meter for egress alerts and set hard budget alarms.
- Switch public writes to read‑only where possible.
Pause now if transfers are uncontrolled.
Is lift‑and‑shift worth the on‑prem to cloud migration? Time, cost and hidden transfer risks
Lift‑and‑shift is the fastest path. It often moves technical debt and cost into the cloud.
Choose lift‑and‑shift when time to market or contractual deadlines beat long‑term TCO. Otherwise, phase in replatforming or refactoring.
The main cost risk for lift‑and‑shift is I/O and egress growth after migration. Estimate monthly IOPS and peak throughput, and plan reserved instances or committed use where sensible.
For decision-making, use a simple rule. If cutover must occur within 90 days and RTO tolerance exceeds 4 hours, consider lift‑and‑shift with immediate optimization.
| Scenario |
Recommended approach |
Key mitigations |
| Single noncritical VM |
Lift‑and‑shift |
Short TTL, snapshot, test rollback |
| Transactional DB, tight RTO |
Rearchitect / staggered cutover |
Active replication, RPO testing, schema conversion |
| E‑commerce with large media |
Seed CDN then lift |
CDN seeding, physical import, throttled transfer |
Illustrative case: a recent lift‑and‑shift overrun
An SMB planned a 30‑VM lift with 200 labor hours estimated. Misjudged dependency calls and replication doubling increased labor to 360 hours.
Data moved 50 TB with expected egress $90 per TB for $4,500. Misconfiguration caused 2× transfers which raised egress to $9,000.
The final overrun of labor and egress exceeded $35,000.
Data egress fees often exceed compute costs for large media migrations. Model per‑TB egress separately from instance costs before approving budgets.
As of 2026, public egress rates run $80 to $120 per TB for the first tens of TB. Use those bands to estimate costs and set alarms.
A sample calculation avoids surprises. Estimate TB to move, multiply by egress $/TB, add costs for double‑run storage weeks, then add labor hours times rate times a 1.8 contingency.
1
Inventory — measure TB and change rate
2
Choose method — CDN seed, physical import or direct transfer
3
Budget — egress $/TB × expected TB × 1.5
4
Protect — alarms, throttling, and hard budget limits
Practical mitigations and quick checks
If transfers are active, snapshot replication status and check cloud billing meters for egress spikes; set hard budget alerts.
Consider CDN seeding or a physical import for more than 10 TB of cold data. For time‑sensitive data, use direct connect or ExpressRoute to cut per‑GB costs and raise throughput.
Prevent uncontrolled transfers to avoid cost spikes.
Latency regressions usually come from network placement and storage IOPS mismatch. Verify p95 and p99 before and after move with real traffic tests.
Managed cloud instances plus an edge CDN often beat generic VPS in U.S. geographies. Place origin in the nearest region to the main user base.
Provision storage IOPS deliberately. Under‑provisioning IOPS for transactional apps produces queueing and raises RTO during cutover.
| Option |
Latency pros |
Typical cost tradeoff |
| Generic VPS |
Often higher variance |
Lower base price, higher tuning cost |
| Cloud instances (right region) |
Low p95/p99 with tuned IOPS |
Moderate cost, predictable scaling |
| Managed Kubernetes |
Good for distributed services |
Higher operational complexity |
Fast latency test commands to run now
Capture 1000 samples of p95 HTTP latency with a short load test. Use k6 or wrk for the test.
Measure DNS lookup and TLS handshake times separately. Track packet loss with tcptraceroute or mtr.
Compliance, license surprises and vendor lock‑in that increase migration costs for U.S. SMBs
Misclassifying regulated data or skipping a license audit delays projects. Map sensitive data and attach owners early.
License mobility can add 10 to 30 percent to migration budgets for Windows, SQL Server, or Oracle. Budget for license audit and conversion work when these engines are in the inventory.
Vendor lock‑in raises exit cost through egress, reengineering, and testing. Use a simple exit model: egress ($/TB × TB) plus reengineering (hours × rate) plus testing (percent of engineering).
Sample exit cost calculation
Data to export: 200 TB × $90/TB egress = $18,000. Reengineer: 800 hours × $150/hr = $120,000.
Testing and cutover add 20 percent, $27,600. Total illustrative exit cost equals $165,600.
Gartner has documented common migration pitfalls that align with these cost drivers. Use that reference to justify early budgeting for license and compliance work.
Rapid compliance and license actions
Lock down IAM and enforce least privilege. Identify regulated data and tag it in the inventory.
Request license statements from vendors and map renewal dates. If license mobility is unclear, plan for a 10 to 30 percent contingency on licensing line items.
⚠️ When this is NOT the best option
This guidance is not relevant for trivial migrations such as a single noncritical VM. It also does not apply for full SaaS replacements with no infrastructure migration.
If the project already has an unlimited budget and phased refactor schedule, this guidance may not help. If downtime is acceptable and cost containment is not required, simple lift‑and‑shift may suffice.
Call to action
If migration is active and costs or downtime are spiking, run the 15/60/180 triage checklist below now. If issues persist, arrange an emergency migration review with a qualified cloud migration consultant.
Frequently asked questions
How much does it cost to migrate to the cloud?
Typical SMB migration costs fit three bands: small, medium, complex. Small moves cost under $10k.
Medium moves run $10k to $100k and include multiple apps and modest data. Complex projects exceed $100k and include large transactional DBs, licensing conversion, and strict compliance requirements.
What are the most common cloud migration mistakes that lead to cost overruns?
Missing dependency mapping, underestimating egress, and unplanned license work top the list. Inadequate performance sizing and no rollback tests are also frequent.
These errors cause rework, duplicated transfers, overtime, and legal or licensing fees. Prioritize mapping, budget for egress, and run a full rehearsal before cutover.
How can I reduce costs during cloud migration?
Pause uncontrolled transfers and estimate remaining TB to move. Use CDN seeding, physical import options, or direct connect to lower per‑GB costs.
Enable cost alarms, negotiate reserved or committed discounts, and apply a labor contingency multiplier of 1.5 to 1.8. Rightsize after a pilot, not before.
What is the average downtime cost during a cloud migration?
Downtime cost equals revenue per minute times affected user share times minutes offline. For SaaS, use monthly ARR divided by monthly operating minutes as baseline.
Example: a SaaS with $120k ARR equals about $5.78 per minute. Multiply by user impact to calculate per‑minute outage cost for SLA decisions.
When should you refactor instead of lift and shift for cloud migration?
Refactor when the workload is core, needs strict RTO/RPO, or gains from cloud native patterns. Also refactor if three‑year savings exceed 25 percent.
Use a decision threshold: if three‑year savings exceed 25 percent and downtime tolerance is under one hour, favor refactor or phased replatform.
Which migration mistakes are hardest to detect before cutover?
Hidden dependency chains, licensing mobility limits, and transient replication spikes are hardest to detect. They often surface only under full production traffic.
Run a 48‑hour pilot and a full rehearsal to reveal these issues. Use pilot metrics to refine RTO, RPO, and cost estimates within ±20 percent accuracy.
This section contains the executable cutover checklist, rollback triggers, and cost formulas to estimate rollback impact.
Minute‑by‑minute cutover, owners and triggers
- T‑4 hours: notify stakeholders and set support rotations. Owner: Project Manager.
- T‑2 hours: snapshot production and freeze nonessential writes. Owner: DBA.
- T‑30 minutes: reduce DNS TTL to 60 seconds. Owner: Network Engineer.
- T‑5 minutes: enable read‑only mode on critical services. Owner: App Owner.
- Cutover minute 0: switch traffic to new environment. Owner: Cloud Architect.
- Post‑cutover 0–60 minutes: run automated smoke tests. If three critical tests fail, initiate rollback. Owner: SRE.
Automated smoke tests
Auth flow: login and token refresh. Expect p95 under 500 ms.
Critical transaction: create, read, update, delete. Expect success rate above 99 percent.
Background job: queue write and read. Expect completion within SLA.
Rollback triggers and escalation
Rollback if repeated critical smoke test failures occur for ten minutes. Rollback also triggers on sustained p99 latency exceeding three times baseline for 15 minutes.
Escalate to the CTO at the first rollback trigger.
Total rollback cost equals data egress to revert plus double compute cost for the rollback window. Add incident response labor hours times hourly rate and customer credits.
Example estimate: data egress $900 plus double compute $600 plus 40 incident hours at $200 per hour equals $9,500.
Templates: dependency mapping CSV and cutover checklist
Dependency mapping CSV format:
app_name,owner,env,ip_or_hostname,ports,protocols,depends_on,estimated_data_GB,RTO_minutes,RPO_minutes
catalog-service,AppOwner,prod,10.10.10.5,443/TCP,HTTP,db-primary;auth,120,60,300
Cutover checklist snippet:
- [ ] Stakeholders notified (list)
- [ ] Snapshots taken and verified
- [ ] Billing alerts configured (egress limit)
- [ ] Smoke tests defined and automated
- [ ] Rollback steps documented and accessible
Quick budget fields to estimate now
- TB to move: ______
- Egress $/TB (use $80–$120 as band): ______
- Double‑run weeks: ______
- Labor hours estimate: __ × contingency 1.8 = ____
- License contingency (%): 10–30% = ______
Use these to produce an immediate worst‑case rollback budget.
Final recommendation: pause any uncontrolled bulk transfers now. Validate dependency maps and billing meters. Execute a rehearsed cutover only when smoke tests pass and rollback costs are acceptable.
Which cloud migration costs are often overlooked?
Egress, double‑run storage, licensing mobility, engineering overtime, and increased logging retention fees are commonly missed. CDN seeding and physical import costs are also often overlooked.
Model these as separate line items and add a contingency of 15 to 30 percent for unknowns. Track costs hourly during peak transfer windows.