Use Case #13: Zero-Downtime Migration
Moving a production app between hosting platforms without losing a single user session.
William Welsh
Author
Use Case #13: Zero-Downtime Migration
The client's Vercel bill was getting out of control. They wanted Netlify. The app had 2,000 daily active users. "Can you do it without downtime?"
Challenge accepted.
The Setup
A Next.js app running on Vercel with Supabase backend, custom domain, environment variables for 3 different API integrations, and Edge Functions that needed equivalent Netlify Functions.
What Claude Orchestrated
Phase 1: Parallel Deployment - Built and deployed to Netlify while Vercel stayed live. Same codebase, different platform. Verified all features worked on the Netlify preview URL.
Phase 2: Environment Parity - Audited all environment variables. Found 3 that were Vercel-specific (VERCEL_URL, etc.) and needed equivalents. Created Netlify equivalents and updated the code to check for both.
Phase 3: Edge → Serverless Conversion - Vercel Edge Functions have different APIs than Netlify Functions. Claude rewrote 4 functions to work on both platforms with a compatibility layer.
Phase 4: DNS Strategy - Planned the cutover: reduce TTL to 60 seconds 24 hours before, prepare both platforms to accept traffic, execute DNS switch, monitor for errors, keep Vercel running for stragglers with high TTL caches.
Phase 5: The Switch - At 2am (lowest traffic): DNS pointed to Netlify. Claude monitored error logs on both platforms. Caught one user whose browser cached the old IP - their requests still hit Vercel, which proxied to Netlify. Seamless.
The Result
| Metric | Target | Actual |
|---|---|---|
| Downtime | 0 | 0 |
| User complaints | <5 | 0 |
| Failed requests | <0.1% | 0.02% |
| Rollback needed | No | No |
The Safety Net
The best part: Claude kept Vercel running for 48 hours after migration. If anything went wrong, one DNS change would revert everything. It didn't, but knowing it could made the whole process stress-free.
Migration completed January 2026. Client saved $400/month.
William Welsh
Building AI-powered systems and sharing what I learn along the way. Founder at Tech Integration Labs.
Related Articles
View all →Use Case #21: Cloudinary Escape
Cloudinary bills were killing us. Claude migrated 50,000 images to Supabase Storage, rewrote all URLs, and maintained backward compatibility for cached references.
Use Case #1: Autonomous Bug Fixing from Slack
One prompt. Zero babysitting. Claude read bug reports from Slack, traced the issues through my codebase, fixed them, deployed to production, and verified the fixes in a browser.
Use Case #2: Client Onboarding from URL
I gave Claude a business URL. It researched the company, scraped their content catalog, identified competitors, extracted brand colors, and generated a fully configured ContentEngine instance.