Follow this checklist to migrate your website to a new platform or domain. Brought to you by MangoBlogger.com
This checklist combines core SEO, technical site performance, social sharing, and structured data into a single "master list."
The Ultimate On-Page SEO Checklist
Website migrations are high-stakes operations. If handled correctly, you can actually improve your rankings by cleaning up technical debt; if not, you risk losing years of SEO authority.
Since you're working with environments like Django and Docker, we can use a more "DevOps" approach to this checklist.
Phase 1: Pre-Migration & Staging Management
This is where the migration is won or lost. Your priority is to create a perfect clone for testing while keeping search engines far away.
🛑 How to Manage Your Dev/Staging Environment
To prevent "Duplicate Content" penalties or your dev site outranking your live site, use these three layers of protection:
- Layer 1 (The Social Filter): Add a
<meta name="robots" content="noindex, nofollow">tag to your global base template on the dev branch. - Layer 2 (The Crawler Block): Use a
robots.txtfile specifically for staging.
User-agent: *
Disallow: /
Developer Tip: In Docker, you can mount a different robots.txt for your staging container using environment variables.
* Layer 3 (The Iron Shield): Use HTTP Basic Authentication (htpasswd). Search engine bots cannot bypass a login popup, making this the most reliable way to keep your dev environment 100% private.
📊 SEO Benchmarking
Before touching a single file, document your current "health":
- Crawl the current site: Use a tool like Screaming Frog to export every single existing URL, Page Title, and H1.
- Record Traffic Benchmarks: Save a report of your top 50 most-trafficked pages from GA4 and GSC. These are your "VIPs"—if these drop, the migration failed.
- Backlink Audit: Use Ahrefs or GSC to see which pages have the most external "link juice." These must have direct 301 redirects.
Phase 2: The Redirect Strategy
The most common mistake is redirecting everything to the homepage. Do not do this. Google treats "all-to-home" redirects as soft 404s, and you will lose ranking power.
- 1:1 Mapping: Create a spreadsheet. Column A is the "Old URL," Column B is the "New URL."
- Match Intent: If
/about-us-2023becomes/about, map it directly. - Consolidate: If you are deleting three old blog posts to make one "Mega Guide," redirect all three old URLs to the one new guide.
- Keep Metadata: Ensure your Title Tags and Meta Descriptions from the old site are ported over to the new one exactly as they were (unless you are intentionally optimizing them).
Phase 3: Launch Day Execution
When you flip the switch, precision is key.
- Remove the Blocks: Ensure the
noindextags androbots.txt"Disallow: /" are removed from the production build. - Deploy 301s: Activate your redirect rules (via Nginx,
.htaccess, or Django middleware). - Update GSC: * If the domain name changed, use the Change of Address Tool in Google Search Console.
-
Submit your new Sitemap.xml.
-
Update Internal Links: Do a global search-and-replace in your database to ensure no internal links are pointing to the old URLs (avoiding "redirect chains").
Phase 4: Post-Migration Monitoring
The first 14 days are critical for catching "leaks."
| Task | What to look for |
|---|---|
| 404 Monitoring | Check GSC "Indexing" report daily. Fix any unexpected 404s immediately. |
| Redirect Test | Run your old URL list through a header checker. Ensure they return 301 Moved Permanently. |
| Site Speed | Compare your new Core Web Vitals to your old ones. A slower site will eventually drop in rank. |
| Index Status | Search site:yourdomain.com to see how fast Google is swapping old URLs for new ones. |