Magento 1 → 2: A detailed 42-point migration plan
Migration checklist: database, custom modules, theme, URL rewrites, images, orders, customers.
Published 2026-10-02 • Category: Migration • Reading time: 15 min
Why migration can’t wait
Magento 1 reached EOL on 30 June 2020. Six years post-EOL, a store that still runs on M1 means:
- no official security patches
- incompatibility with PHP 8+ (max — PHP 7.2)
- no official Marketplace modules
- PCI-DSS certification headaches
If you’re still on M1, read this article all the way to the end.
Phase 1: Discovery (1-2 weeks)
- Full inventory of custom modules (your /app/code/local)
- List of paid Marketplace M1 modules
- Current themes and how heavily they’re customised
- Integrations (ERP, payments, shipping, email, analytics)
- SEO: URLs, redirects, meta, structured data
- DB size: products, orders, customers
Phase 2: Target architecture (1 week)
Pick an M2 version (2.4.7-p3 as of 2026). Hosting — Nexcess, MGT Commerce or your own on Hetzner. Themes — the native Luma or a modern branded frontend (Hyva Theme for speed; PWA Studio for the future).
Phase 3: Data migration (2 weeks)
Two primary tools:
- Data Migration Tool — official. Migrates the DB in slices: products, attributes, categories, orders, customers.
- Magmi + custom scripts — for the complex transformations the Data Migration Tool can’t handle.
If you have > 100,000 products, Magmi wins on cutover time (the final import) — instead of a 24-hour downtime window you need just 2-4 hours.
Phase 4: Re-installing modules
75% of paid M1 modules have M2 versions. You buy them again (unfortunately the norm). For your in-house code you rewrite from Zend 1 to Zend 2 + the Magento 2 DI container.
Phase 5: SEO migration
Critical. 42-point checklist:
- Full export of URL rewrites from M1
- M1 → M2 mapping (URL structure changes: /url_rewrite instead of /enterprise_url_rewrite)
- Generate 301 redirects in nginx or rewrite rules in M2
- Preserve title/meta description at product and category level
- Rebuild sitemap.xml
- Submit the new sitemap in Google Search Console
- Monitor Not Found errors in GSC for 3 months
Phase 6: Go-live (1 day)
Friday-evening launches: NO. Optimal — Tuesday 02:00, so if anything goes wrong you have 72 hours of walk-in work time without losing sales. Downtime with proper preparation — 2-4 hours.
The 42-point checklist
We keep the full checklist in a Google Sheet and share it with clients at project kickoff. Request a copy via the contact form.
Leave a Reply