TL;DR — Quick Summary
Platform migrations fail because teams skip pre-migration auditing, implement incomplete redirects, and forget post-migration speed optimization. Quick wins: 1) Crawl your entire current site with Screaming Frog or Sitebulb BEFORE touching anything — document every URL, title, meta description, heading, canonical tag, and internal link. 2) Create a complete URL map (old → new) in a spreadsheet — every single URL, not just 'important' pages. 3) Implement 301 redirects at the server level (not JavaScript redirects) — redirect to the most relevant new page, never bulk-redirect to the homepage. 4) Eliminate redirect chains (A→B→C) — every redirect should point directly to the final destination. 5) Preserve all metadata exactly (titles, descriptions, H1s, alt text). 6) Lower DNS TTL to 300 seconds 48+ hours before the switch. 7) Monitor Search Console daily for 2 weeks post-migration for crawl errors. 8) Run a full Core Web Vitals audit within 24 hours of migration — new platforms need fresh performance optimization. 9) For e-commerce: migrate products (with variants, images, SEO data), customers (expect password resets), orders, and reviews as separate workstreams.
Key Takeaways
- ✓The average DIY platform migration loses 10–30% of organic traffic — most losses come from incomplete URL mapping and missing 301 redirects.
- ✓Every old URL must have a corresponding 301 redirect to the most relevant new page — bulk-redirecting to the homepage destroys link equity and rankings.
- ✓Redirect chains (A→B→C) waste crawl budget, lose link equity at each hop, and slow down user navigation — flatten all chains to direct redirects.
- ✓Metadata preservation (titles, descriptions, H1 headings, alt text, canonical tags) is as important as redirects — Google re-evaluates page relevance after migration.
- ✓E-commerce migrations have 5 critical data streams: products (with variants/images/SEO), customers (password resets usually required), orders, reviews, and URL structure.
- ✓Post-migration speed optimization is mandatory — caching, CDN, image optimization, and script configuration don't transfer between platforms.
- ✓DNS TTL should be lowered to 300 seconds at least 48 hours before switching — this ensures fast propagation and quick rollback capability.
- ✓Monitor Search Console crawl errors daily for 2+ weeks post-migration — most redirect gaps surface within the first 7 days.
Why Platform Migrations Fail: The 10 Most Common Mistakes
Understanding why migrations fail is the best way to prevent it. These are the 10 mistakes we see most frequently across hundreds of migration projects:
1. Incomplete URL mapping (most common): Teams map the 'important' pages (homepage, top products, main categories) but miss thousands of secondary URLs: blog posts, tag pages, pagination URLs, image URLs, PDF downloads, and parameter-based URLs. Each unmapped URL becomes a 404 that loses its accumulated link equity.
2. Bulk-redirecting to the homepage: When teams can't find a 1:1 match for an old URL, they redirect everything to the homepage. Google treats this as a soft 404 — the redirect exists, but the destination is irrelevant to the original content. The page's ranking value is lost.
3. Using JavaScript redirects instead of server-level 301s: JavaScript redirects (`window.location`) are not reliably followed by search engines. Google may not transfer link equity through JavaScript redirects. Always use server-level 301 redirects (Apache .htaccess, Nginx config, platform redirect rules).
4. Creating redirect chains: Over time, multiple migrations create chains: A→B→C→D. Each hop loses ~10–15% of link equity and adds 100–500ms of latency for users. After migration, audit all redirects and flatten chains so every redirect points directly to the final destination.
5. Losing metadata: Titles, meta descriptions, H1 headings, image alt text, and canonical tags must be preserved exactly. Many migration tools import content but skip metadata, causing Google to re-evaluate (and often downgrade) page relevance.
6. Breaking internal links: Internal links that point to old URLs create redirect chains within your own site. Update all internal links to point to the new URL structure directly — don't rely on redirects for internal navigation.
7. Forgetting structured data: Schema markup (Product, Article, FAQ, BreadcrumbList) often doesn't transfer between platforms. Broken structured data removes rich snippets from search results, reducing click-through rates.
8. Ignoring image URLs: Product images, blog post images, and media files have their own URLs that may be linked from external sites. If image URLs change without redirects, image search traffic and image-based backlinks are lost.
9. Skipping the staging test: Teams go live without thoroughly testing the new site on a staging URL. Broken pages, missing redirects, and functionality issues are discovered by users (and Google) instead of QA.
10. No post-migration speed optimization: New platforms have different caching, CDN, and rendering configurations. Speed settings don't transfer. Without post-migration optimization, the new site may be significantly slower than the old one — trading one problem for another.
Pre-Migration Audit: The Complete Checklist
The pre-migration audit is the most important phase of any platform migration. Skip it, and you're migrating blind. Every successful migration we've executed starts with this comprehensive audit.
Step 1: Full site crawl Crawl your entire current site with Screaming Frog or Sitebulb. Export:
- •Every URL with status code (200, 301, 404, etc.)
- •Title tags and meta descriptions
- •H1 and H2 headings
- •Canonical tags
- •Internal links (source → destination)
- •External backlinks (from Ahrefs/Semrush)
- •Structured data types per URL
- •Image URLs and alt text
- •Page depth (clicks from homepage)
Step 2: Identify high-value pages Not all pages are equal. Prioritize pages with:
- •Most organic traffic (GA4 → Landing pages → Organic segment)
- •Most backlinks (Ahrefs → Best by Links report)
- •Most revenue (e-commerce: revenue by landing page)
- •Top keyword rankings (Semrush → Organic Research)
These pages need 100% redirect accuracy and metadata preservation.
Step 3: Document current performance baseline Record before migration:
- •Lighthouse scores (mobile + desktop) for each page template
- •CrUX data (LCP, INP, CLS) from PageSpeed Insights
- •TTFB from multiple locations (WebPageTest)
- •Page weight and request count per template
- •Conversion rate by page type
- •Organic traffic by page type (trailing 90 days)
Step 4: Content inventory Document all content types and their attributes:
- •Blog posts: title, author, date, categories, tags, featured image, content
- •Products: SKU, title, description, images (all variants), price, variants, reviews
- •Pages: title, content, sidebar widgets, CTAs
- •Media: images with alt text, PDFs, videos
- •Forms: form fields, submission endpoints, integrations
Step 5: Technical configuration audit
- •robots.txt directives
- •XML sitemap structure and URLs
- •.htaccess / server-level redirect rules
- •Custom headers (security, caching, CORS)
- •Email routing (MX records, SMTP configuration)
- •Third-party integrations (analytics, CRM, marketing automation)
- •SSL certificate type and renewal schedule
- •Cron jobs or scheduled tasks
URL Mapping and 301 Redirect Strategy
URL mapping is the backbone of an SEO-safe migration. Every old URL that has ever been indexed, linked to, or bookmarked must redirect to the most relevant new URL.
The URL mapping process:
Step 1: Export all old URLs Sources:
- •Screaming Frog crawl (all 200 status code URLs)
- •XML sitemap(s)
- •Google Search Console → Coverage → Valid pages
- •Ahrefs/Semrush → all indexed URLs
- •Server access logs (reveals URLs not in sitemap but still receiving traffic)
- •Google Analytics → All Pages report (reveals pages with traffic)
Combine all sources and deduplicate. This is your master list.
Step 2: Export all new URLs Set up the new site completely on staging, then crawl it to get all new URLs.
Step 3: Create the mapping spreadsheet Columns: Old URL | New URL | Redirect Type | Priority | Notes
Mapping rules:
- •1:1 match exists: Map directly (e.g., `/blog/speed-tips` → `/blog/speed-tips`) — ideal scenario
- •URL structure changed: Map to equivalent (e.g., `/products/widget-a` → `/shop/widget-a`)
- •Page merged: Redirect to the consolidated page (e.g., two category pages merged into one)
- •Page deleted (has backlinks): Redirect to the most topically relevant existing page — NEVER to homepage
- •Page deleted (no backlinks, no traffic): Allow 404 or 410 (these don't need redirects)
Step 4: Implement 301 redirects Implementation location depends on platform:
- •Apache: `.htaccess` file with `RewriteRule` or `Redirect 301`
- •Nginx: `return 301` in server config
- •Cloudflare: Bulk Redirects (up to 10,000 rules on Pro plan)
- •Shopify: URL Redirects in admin (bulk import via CSV)
- •WordPress: Redirection plugin or server-level rules
- •BigCommerce: 301 Redirects in admin
Critical rules:
- •Use 301 (permanent) redirects, not 302 (temporary) — 302s don't transfer link equity
- •Redirect to the final destination directly — no chains (A→B→C)
- •Use server-level redirects, not JavaScript — search engines don't reliably follow JS redirects
- •Test every redirect before going live with a bulk redirect checker
- •Preserve query parameters where they have meaning (e.g., UTM parameters for tracking)
Handling edge cases:
- •Pagination: `/blog/page/2` → redirect to `/blog` (the parent) or implement equivalent pagination on the new site
- •Parameter URLs: `/products?category=shoes` → redirect to the clean URL equivalent `/shop/shoes`
- •Trailing slashes: Be consistent on the new platform and redirect the inconsistent versions
- •Case sensitivity: Some servers treat `/About` and `/about` as different URLs — redirect variants
- •Protocol: Ensure HTTP→HTTPS redirects are in place alongside the URL structure changes
E-Commerce Data Migration: Products, Customers, Orders & Reviews
E-commerce migrations are the most complex because they involve structured data with relationships, pricing, inventory, and customer trust. Five distinct data streams must be handled separately.
Stream 1: Product data Products are the most complex data type to migrate. Each product includes:
- •Core data: SKU, title, description (short + long), price, sale price, weight, dimensions
- •Variants: Size/color/material combinations, each with its own SKU, price, and inventory
- •Images: Multiple images per product, with specific ordering. Download originals — don't hotlink from old platform
- •Categories/collections: Hierarchical taxonomy mapping (old categories → new categories)
- •SEO metadata: URL slug, meta title, meta description, alt text for images
- •Custom fields: Specifications, materials, care instructions, compatibility data
- •Structured data: Product schema (price, availability, reviews) for rich snippets
Common pitfalls:
- •Variant structures differ between platforms (Shopify uses options/variants, WooCommerce uses attributes/variations, BigCommerce uses options/SKUs)
- •Image ordering may not transfer — manually verify hero images
- •HTML formatting in descriptions may break on the new platform
Stream 2: Customer data
- •Accounts: Email, name, addresses, phone numbers
- •Passwords: Cannot be migrated between most platforms (different hashing algorithms). Plan for password reset emails on first login.
- •Address books: Shipping and billing addresses
- •Wishlists/saved items: Often lost in migration (low priority but frustrating for loyal customers)
- •Communication: Notify customers about the migration and password reset requirement BEFORE launch
Stream 3: Order history
- •Order records: Order number, date, line items, quantities, prices, discounts applied
- •Order status: Completed, processing, refunded, cancelled
- •Tracking information: Shipping carrier, tracking numbers
- •Financial records: Payment method, transaction IDs (important for refund processing)
- •Impact: Customers expect to see their order history on the new site. Missing orders erode trust.
Stream 4: Reviews
- •Review data: Star rating, title, body text, reviewer name, date, verified purchase status
- •Product association: Reviews must map to the correct product on the new platform
- •SEO value: Product reviews contribute to rich snippets and long-tail rankings
- •Tools: Most review platforms (Judge.me, Yotpo, Stamped) offer import/export tools. Native platform reviews are harder to migrate.
Stream 5: URL structure The single biggest SEO risk in e-commerce migration:
- •Product URLs: `/product/widget-a` → `/products/widget-a` (structure change requires redirects)
- •Category URLs: `/category/shoes` → `/collections/shoes` (Shopify uses 'collections')
- •Image URLs: Old CDN URLs → new CDN URLs (don't forget image redirects if externally linked)
- •Pagination: `/category/shoes?page=2` → `/collections/shoes?page=2`
WordPress Hosting Migration: Zero-Downtime Workflow
WordPress hosting migration (not platform migration) is the most common migration type. Moving from shared hosting to managed hosting typically reduces TTFB by 60–80%. The process is well-established and can be executed with zero user-facing downtime.
Pre-migration preparation:
1. Audit current environment:
- •Record TTFB from 5+ global locations (WebPageTest)
- •Document PHP version, MySQL version, and installed extensions
- •List active plugins with versions
- •Note server-level configurations (.htaccess rules, custom cron jobs, email routing)
- •Verify SSL certificate type and expiry date
2. Choose the new host:
- •WordPress-specific managed hosting: Kinsta, WP Engine, Flywheel, Cloudways
- •Ensure PHP 8.1+ support, Redis availability, HTTP/2 or HTTP/3 support
- •Verify the host supports your WordPress version and all required PHP extensions
- •Check staging environment availability for testing
3. Clone the site:
- •Plugin method: UpdraftPlus, All-in-One WP Migration, or Duplicator Pro
- •Manual method: rsync files + mysqldump database
- •Clone both: `wp-content/` (plugins, themes, uploads) and the full database
- •Verify database character set matches (utf8mb4 is standard since WordPress 4.2)
4. Test on the new server:
- •Modify your local `hosts` file (`/etc/hosts` on Mac/Linux, `C:\Windows\System32\drivers\etc\hosts` on Windows) to point your domain to the new server's IP address
- •Test every critical page and function: contact forms, e-commerce checkout, membership areas, search
- •Verify email sending works (SMTP plugin configuration on new host)
- •Verify wp-cron or server-level cron jobs execute correctly
- •Test SSL — no mixed content warnings
- •Run Lighthouse on the staging environment to confirm TTFB improvement
5. DNS switch (zero-downtime):
- •48+ hours before: Lower DNS TTL to 300 seconds (5 minutes)
- •Immediately before switch: Perform a final database sync (export from old, import to new)
- •Switch: Update DNS A record to point to the new server IP
- •Monitor: Check propagation at whatsmydns.net
- •Keep old server: Leave running for 48+ hours (some DNS resolvers ignore TTL)
6. Post-migration optimization:
- •Enable server-side page caching (managed hosts usually handle this)
- •Configure Redis object cache if available on the new host
- •Verify OPcache is enabled and sized correctly
- •Set up CDN integration (Cloudflare or host-provided CDN)
- •Re-test TTFB from multiple locations to confirm improvement
- •Update wp-config.php if needed (database credentials, salts, debug mode off)
See our Infrastructure & Hosting Guide for detailed hosting comparison and CDN configuration.
Struggling with Migration speed?
Our team optimizes Migration sites for real-world results. Request an audit.
DNS Switchover: Zero-Downtime Strategies
The DNS switchover is the moment of truth in any migration. Done correctly, users experience no downtime. Done incorrectly, your site is unreachable for hours while DNS propagates globally.
Understanding DNS propagation: When you change your DNS A record, the change doesn't take effect instantly. DNS resolvers worldwide cache your old record based on the TTL (Time to Live) you set. If your TTL is 86400 (24 hours), some users will still be directed to the old server for up to 24 hours after the change.
The zero-downtime playbook:
Phase 1: TTL reduction (48–72 hours before)
- •Lower your DNS TTL to 300 seconds (5 minutes)
- •This must be done 48+ hours in advance so the OLD TTL expires and resolvers pick up the new, shorter TTL
- •Verify the TTL change propagated using `dig` or online DNS checkers
Phase 2: Final sync (immediately before switch)
- •Put the old site in maintenance/read-only mode (prevents new content during transition)
- •Perform a final database export from old server → import to new server
- •Verify the new server has the latest content
- •This window should be under 15 minutes for most sites
Phase 3: DNS switch
- •Update the DNS A record to point to the new server IP
- •With TTL at 300 seconds, most users will see the new server within 5–10 minutes
- •Some resolvers (especially ISP resolvers) may cache beyond TTL — expect full propagation in 1–4 hours
Phase 4: Monitoring (48+ hours after)
- •Monitor both servers: the old server should see traffic decrease to zero over 24–48 hours
- •Check access logs on both servers to confirm traffic is shifting
- •Monitor error rates on the new server
- •Don't decommission the old server until traffic drops to zero
Rollback plan:
- •If the new server has critical issues, switch DNS back to the old server
- •With a 300-second TTL, the rollback takes effect within minutes
- •This is why keeping the old server running for 48+ hours is essential
Domain migration (domain change): If you're changing domains (old.com → new.com):
- •Use Google Search Console's Change of Address tool
- •Implement 301 redirects from every old domain URL to the corresponding new domain URL
- •Keep the old domain and redirects active for at least 1 year (Google recommends 'as long as possible')
- •Update all external references (social media profiles, directory listings, partner links) to the new domain
- •Monitor both domains in Search Console
Post-Migration Speed Optimization
New platforms require fresh performance optimization. Caching configurations, CDN settings, image optimization pipelines, and script loading strategies don't transfer between platforms. The first 24–72 hours after migration are critical.
Immediate (within 24 hours):
1. CDN configuration:
- •Set up or reconfigure CDN for the new platform (Cloudflare, or platform-provided CDN)
- •Verify static assets are being served from CDN edge locations (check response headers)
- •Configure proper cache TTLs for the new URL structure
- •Enable Brotli/gzip compression for HTML, CSS, JS
2. Caching stack:
- •Enable server-side page caching for the new CMS
- •Configure object cache (Redis/Memcached) if available
- •Verify browser cache headers are set (Cache-Control for static assets)
- •Test cache hit rates — should reach 80%+ within the first day
3. Image re-optimization:
- •Images may have been re-encoded during migration (lossy re-compression)
- •Verify WebP/AVIF serving is working on the new platform
- •Check that responsive image markup (srcset/sizes) is implemented
- •Ensure lazy loading is configured for below-fold images
- •Verify the LCP image is preloaded on key page templates
4. Script audit:
- •Audit all JavaScript loading on the new platform — new platforms may add their own scripts
- •Re-implement script deferral and async loading
- •Verify third-party scripts (analytics, chat, marketing) are properly configured
- •Check for duplicate script loading (old platform scripts + new platform scripts)
Within the first week:
5. Core Web Vitals verification:
- •Run PageSpeed Insights on every page template (homepage, product, category, blog, checkout)
- •Compare against pre-migration baseline scores
- •Address any regressions immediately — don't let CrUX data accumulate poor scores
- •Remember: CrUX uses a 28-day rolling window — bad data early on takes a month to flush
6. Mobile-specific testing:
- •Mobile speed is often worse on new platforms due to different responsive handling
- •Test on real devices (not just Chrome DevTools emulation)
- •Verify mobile-specific features: tap targets, font sizes, viewport configuration
- •Check that mobile navigation works correctly with the new platform's menu system
7. Performance monitoring setup:
- •Set up ongoing monitoring (CrUX Dashboard, RUM, uptime monitoring)
- •Configure alerts for TTFB, LCP, and error rate thresholds
- •Establish weekly performance review cadence for the first month
- •Document the new platform's performance baseline for future comparison
Within the first month:
8. Advanced optimization:
- •Generate and inline critical CSS for the new templates
- •Implement font preloading and `font-display: swap`
- •Optimize the new platform's built-in features (search, filtering, checkout)
- •Review and optimize database queries on the new platform (especially for e-commerce)
Post-Migration SEO Monitoring and Recovery
Even a perfectly executed migration may see temporary ranking fluctuations. Google needs time to recrawl, re-evaluate, and reindex your content. The monitoring phase catches issues before they become permanent traffic losses.
Daily monitoring (first 2 weeks):
Google Search Console:
- •Coverage report: Check for new 'Excluded' or 'Error' URLs daily. New 404s indicate missing redirects.
- •URL Inspection: Spot-check 10–20 high-value URLs daily. Verify they're indexed, the canonical is correct, and no crawl issues are flagged.
- •Performance report: Compare clicks and impressions to the same period before migration. Expect a 5–15% temporary dip in the first 1–2 weeks — this is normal.
- •Crawl stats: Monitor crawl rate. A spike in crawl activity post-migration is healthy — Google is discovering the new structure. A drop suggests crawl issues.
Google Analytics (GA4):
- •Compare organic landing pages before vs after. Identify specific pages with traffic drops.
- •Check bounce rate by landing page — sudden increases indicate content or speed issues on specific pages.
- •Monitor conversion rate by channel — organic conversion rate should recover to pre-migration levels within 2–4 weeks.
Server logs:
- •Check for 404 errors from Googlebot — these indicate missing redirects
- •Monitor 301 redirect volume — high redirect volume from Googlebot confirms Google is discovering and following your redirects
- •Check for 5xx errors — server errors during crawling slow down reindexing
Common post-migration issues and fixes:
- •Ranking drops on specific pages: Check if the redirect is working, metadata is preserved, and internal links point to the new URL (not through a redirect).
- •Entire site ranking drop: Check robots.txt isn't blocking Googlebot, sitemap is submitted, and Search Console property is verified for the new site.
- •Rich snippet loss: Verify structured data is implemented on the new platform. Use Google's Rich Results Test on affected pages.
- •Index bloat: The new platform may generate URLs that shouldn't be indexed (filtered/sorted category pages, parameter URLs). Add noindex directives or canonical tags as needed.
- •Slow reindexing: Submit a new XML sitemap in Search Console. Use the URL Inspection tool to request indexing for high-priority pages.
Recovery timeline expectations:
- •Week 1–2: Google discovers redirects and recrawls. Expect 5–15% traffic dip. This is normal.
- •Week 2–4: Most pages reindexed at new URLs. Rankings begin stabilizing. Traffic should approach pre-migration levels.
- •Month 2–3: Rankings fully settle. If the new platform is faster, you may see ranking improvements from better CWV scores.
- •Month 3+: If traffic hasn't recovered, investigate: missing redirects, metadata changes, content quality differences, or technical issues on the new platform.
Platform-Specific Migration Considerations
Each platform has unique migration requirements. Understanding them prevents platform-specific pitfalls.
Migrating TO Shopify:
- •Shopify forces a `/collections/` and `/products/` URL prefix — if your old site had clean URLs (`/shoes`), you need redirects from `/shoes` → `/collections/shoes`
- •Product variant structure differs from most platforms — map variants carefully during data import
- •Shopify's theme.liquid controls global layout — ensure redirects are implemented via admin (Online Store → Navigation → URL Redirects), not in theme code
- •Shopify doesn't support .htaccess — use the built-in redirect system or apps like Bulk Redirects for large migrations
- •See our Shopify Speed Guide for post-migration optimization
Migrating TO WooCommerce:
- •WooCommerce uses WordPress's permalink structure — configure before importing products
- •Plugin compatibility is the biggest risk — test all essential plugins on staging before migration
- •Database optimization is critical post-migration — WooCommerce stores add significant database overhead
- •Hosting requirements are higher than standard WordPress — plan for managed WooCommerce hosting
- •See our WooCommerce Speed Guide for optimization
Migrating TO BigCommerce:
- •BigCommerce uses Stencil templates — theme configuration is entirely different from most platforms
- •Built-in features (faceted search, multi-currency, customer groups) reduce app dependency vs Shopify
- •Image CDN handles format conversion automatically — verify WebP serving is working
- •See our BigCommerce Speed Guide for Stencil optimization
Migrating TO Magento / Adobe Commerce:
- •Most complex migration target — requires developer expertise for theme and extension setup
- •Database structure is highly normalized — product import requires careful attribute mapping
- •Performance optimization needs are significant: full-page cache, Varnish, Redis, and ElasticSearch configuration
- •See our Magento Speed Guide for enterprise optimization
Migrating FROM WordPress (any destination):
- •Export all content via WordPress eXtended RSS (WXR) format or direct database export
- •Preserve Yoast/Rank Math SEO metadata (titles, descriptions, canonical tags, redirects)
- •Map WordPress categories/tags to the new platform's taxonomy system
- •Download all media files from wp-content/uploads — don't rely on hotlinks
- •Export existing redirects (from Redirection plugin or .htaccess)
Domain consolidation (multiple sites → one):
- •Redirect all old domain URLs to the most relevant page on the surviving domain
- •Use Google Search Console Change of Address for each old domain
- •Expect consolidation to take 3–6 months for full link equity transfer
- •Monitor each old domain's traffic separately in GA4 during the transition
Migration Project Management: Timelines and Checklists
A well-managed migration follows a predictable timeline. Rushing the process is the single biggest cause of traffic loss.
Week 1–2: Discovery and audit
- •[ ] Full crawl of current site (Screaming Frog)
- •[ ] Export all URLs from Search Console, Analytics, and Ahrefs/Semrush
- •[ ] Document current performance baseline (Lighthouse, CrUX, TTFB)
- •[ ] Identify high-value pages (traffic, backlinks, revenue)
- •[ ] Content and data inventory
- •[ ] Technical configuration audit (redirects, robots.txt, sitemaps, email)
Week 2–3: Planning and mapping
- •[ ] Complete URL mapping spreadsheet (old → new for every URL)
- •[ ] Define redirect implementation strategy (platform-specific)
- •[ ] Plan data migration streams (content, products, customers, orders, reviews)
- •[ ] Create staging environment on new platform
- •[ ] Define rollback plan
Week 3–5: Build and migrate
- •[ ] Set up new platform on staging
- •[ ] Import/recreate all content
- •[ ] Import e-commerce data (products, customers, orders, reviews)
- •[ ] Implement all redirects
- •[ ] Preserve all metadata (titles, descriptions, canonicals, structured data)
- •[ ] Configure analytics and tracking on new platform
Week 5–6: Testing
- •[ ] Test every high-value page on staging
- •[ ] Bulk-test all redirects with redirect checker
- •[ ] Verify all forms, checkout flows, and interactive features
- •[ ] Test on mobile devices (real devices, not just emulation)
- •[ ] Run Lighthouse on all page templates
- •[ ] Verify structured data with Rich Results Test
- •[ ] UAT with stakeholders
Week 6: Launch
- •[ ] Lower DNS TTL to 300 seconds (48+ hours before)
- •[ ] Final content/database sync
- •[ ] Switch DNS
- •[ ] Verify site is live and all redirects work
- •[ ] Submit new sitemap to Search Console
- •[ ] Use Change of Address tool if domain change
Week 6–10: Post-migration
- •[ ] Monitor Search Console daily for 2 weeks
- •[ ] Run post-migration speed optimization (CDN, caching, images, scripts)
- •[ ] Address any crawl errors or 404s immediately
- •[ ] Compare organic traffic to pre-migration baseline weekly
- •[ ] Full CWV verification within 24 hours
- •[ ] Monthly performance review for 3 months
For small sites (under 100 pages): This timeline can be compressed to 3–4 weeks. For large e-commerce (10,000+ products): Extend to 8–12 weeks with dedicated QA resources.
Thresholds & Benchmarks
| Metric | Good | Needs Improvement | Poor |
|---|---|---|---|
| Organic Traffic Change (30 days) | < -5% | -5% to -15% | > -15% |
| Redirect Coverage | > 98% | 90–98% | < 90% |
| 404 Errors (post-migration) | < 10 | 10–50 | > 50 |
| Redirect Chain Length | 1 hop | 2 hops | 3+ hops |
| Indexation Recovery | < 2 weeks | 2–6 weeks | > 6 weeks |
| Post-Migration TTFB | < 200ms | 200–600ms | > 600ms |
| Post-Migration LCP | ≤ 2.5s | 2.5–4.0s | > 4.0s |
| DNS Propagation Time | < 1 hour | 1–12 hours | > 12 hours |
Key Measurement Tools
Crawl your entire current site before migration to document every URL, title, meta description, H1, canonical tag, internal link, and status code. The pre-migration crawl is your single source of truth for URL mapping.
Monitor crawl errors, indexation status, and organic traffic daily for 2+ weeks post-migration. The URL Inspection tool verifies individual pages are indexed. The Change of Address tool notifies Google of domain moves.
Track organic keyword rankings before and after migration. Identify high-value pages (most backlinks, most organic traffic) that need priority redirect attention. Monitor referring domain links to old URLs.
Bulk-test redirect chains after implementation. Paste your old URL list and verify each returns a 301 to the correct new URL with no chains. Essential pre-launch validation.
Run immediately post-migration on all page templates (homepage, product, category, blog). New platforms need fresh CWV baselines. Compare against pre-migration scores to identify regressions.
Compare organic traffic, bounce rate, and conversion rate before vs after migration. Segment by landing page to identify specific pages that lost traffic. Account for seasonal variations by comparing to same period previous year.
Looking for speed help?
Step-by-Step Optimization Guide
Crawl and audit the current site completely
Use Screaming Frog to crawl every URL on your current site. Export the complete URL list with titles, meta descriptions, H1s, canonical tags, status codes, and internal links. Combine with data from Search Console, Analytics, and Ahrefs to create the definitive list of URLs that need redirects.
Create a complete URL mapping spreadsheet
Map every old URL to its new equivalent. Prioritize pages with the most organic traffic, backlinks, and revenue. For deleted pages, redirect to the most topically relevant existing page — never to the homepage. Handle edge cases: pagination, parameter URLs, trailing slashes, image URLs.
Implement and test 301 redirects
Implement redirects at the server level (not JavaScript). Use 301 (permanent) status codes. Flatten any chains (A→B→C → A→C). Bulk-test every redirect with httpstatus.io or a similar tool before going live. Verify redirects preserve query parameters where needed (UTM tracking).
Migrate content and preserve all metadata
Import all content to the new platform. Verify that title tags, meta descriptions, H1 headings, image alt text, canonical tags, and structured data are preserved exactly. Don't let migration tools skip metadata fields — manually verify high-value pages.
Execute zero-downtime DNS switchover
Lower DNS TTL to 300 seconds 48+ hours before the switch. Perform a final database/content sync. Update DNS A record. Monitor propagation. Keep the old server running for 48+ hours as fallback. Have a rollback plan ready in case of critical issues.
Optimize speed on the new platform
Within 24 hours of migration: configure CDN, enable caching stack, re-optimize images, audit script loading. Run PageSpeed Insights on all page templates. Compare against pre-migration baseline. Address any CWV regressions immediately — bad CrUX data takes 28 days to flush.
Monitor Search Console daily for 2 weeks
Check Coverage report for new errors daily. Use URL Inspection on high-value pages. Monitor crawl stats for healthy recrawling activity. Compare organic traffic to baseline. Fix any 404 errors from missing redirects immediately. Submit the new XML sitemap.
Verify recovery and optimize long-term
By week 4, organic traffic should approach pre-migration levels. If not: audit redirects for gaps, check metadata preservation, verify robots.txt isn't blocking crawling, and investigate page-level ranking changes. Establish ongoing performance monitoring for the new platform.
Want us to handle these optimizations?
Request an audit for your Migration site and see results in days, not months.
Real-World Case Studies

Legal Services | 11 to 50 Employees
How We Helped Whistleblower Partners Improve Site Speed and Migrate 200+ Pages to WordPress
Read Case Study
Roofing & Construction | < 50 Employees
Hosting Migration, PHP Update & Technical SEO for WordPress Roofing Site
Read Case StudyMigration in 2026: Updates & Future Trends
Platform migration trends in 2026 and beyond:
The rise of headless commerce is changing what 'migration' means. Instead of moving from one monolithic platform to another, businesses are increasingly migrating to composable architectures: headless CMS (Contentful, Sanity, Strapi) + headless commerce (Shopify Hydrogen, BigCommerce Catalyst, commercetools) + CDN-hosted frontend (Vercel, Netlify). These migrations are more complex technically but offer dramatically better performance outcomes — server-side rendering at CDN edge locations delivers sub-second LCP globally.
AI-assisted migration is emerging: tools that automatically map URLs between platforms, extract and reformat content, and generate redirect rules. While not yet reliable enough for production use without human review, they significantly reduce the manual effort for large migrations (10,000+ pages).
Google's indexing speed is improving: the time between migration and full reindexing is decreasing as Google's crawling infrastructure becomes more efficient. What used to take 4–8 weeks for large sites now often completes in 2–4 weeks, reducing the 'ranking uncertainty' window.
Edge-first architectures are making hosting migration less impactful: if your application runs at CDN edge locations (Cloudflare Workers, Deno Deploy), the 'origin server' becomes less important. Changing the origin backend doesn't require DNS changes or affect user-facing performance — the edge layer abstracts the infrastructure.
Speculation: Within 2–3 years, platform migrations may become significantly easier as more platforms adopt standardized content APIs and migration protocols. The WebCMS community is working on interoperability standards that would allow structured content to move between platforms with metadata preservation built in.
Need help with Migration speed?
Our team specializes in Migration performance optimization. Request an audit and see exactly how much faster your site could be.
