A meaningful share of our cloud work is rescue work: migrations done a year or two ago that technically succeeded and practically didn't. The same six mistakes account for nearly all of it. Free lessons, paid for by other people.
1. Lifting everything as-is
The old server had six VMs, so the cloud got six identical VMs, including the one whose job nobody could name. Lift-and-shift is a legitimate technique for specific apps; as a whole-environment philosophy it just relocates your technical debt somewhere with a monthly invoice. The fix is triage before the move: retire what's dead, replace what has a better cloud-native equivalent, and rehost only what earns it.
2. Sizing to habit instead of need
The old server had 64 GB of RAM, so the cloud VM got 64 GB, and now idles at 8 percent utilization on premium pricing. On-prem you bought for peak-plus-headroom because upgrades were hard. Cloud inverts that: start small, resize in minutes when metrics say so. Oversizing on day one is the single most common line item we cut in cost cleanups.
3. Nobody watches the bill
On-prem costs were fixed, so nobody built the habit of looking. Cloud costs drift: orphaned disks, forgotten test environments, that backup job storing to the expensive tier. Eighteen months later the bill is double the projection and nobody can say when it happened. The twenty-minute monthly review in the month-two checklist exists precisely because this failure is universal.
4. Training nobody
The systems moved, the habits didn't. The team still emails attachments instead of sharing links, still keeps local copies "just in case" (creating version chaos plus a quiet backup gap), still routes everything through the one person who figured out SharePoint. The technical migration succeeded and productivity fell. An hour of training per team, timed to cutover, is the cheapest line in the whole budget and the most skipped.
5. Copying the flat network into the cloud
Everything in one virtual network, every port open between systems, admin access from anywhere, because that's how the office LAN worked. The office at least had walls. Cloud environments deserve the same segmentation thinking as a decent office network, plus identity done properly: MFA on admin accounts, least privilege, no shared logins. Most cloud breaches at small-business scale are a weak admin password plus an over-permissive network, both cheap to prevent on migration day and annoying to retrofit.
6. Leaving the old server running forever
"Just for a while, in case." Two years later it's still humming: unpatched, unmonitored, quietly authoritative for one forgotten thing, and now a security hole with a power bill. Parallel running is correct and belongs in the plan, with an end date. Decommissioning is a scheduled step with a checklist, not a vibe. If it's still on next quarter, it's not a safety net. It's mistake number six.
The pattern across all six: the migration was treated as a project with a completion date, when the move is really a change of operating model. The businesses that thrive in the cloud are the ones that adopted the habits, not just the hosting.
Want this handled instead of homeworked? That's the job.
Email us →