How to Migrate from Shopware 5 to Shopware 6: A Complete 5-Step Guide
By Huzaifa Mustafa•12 min read•October 28, 2025
Quick Answer
Migrating from Shopware 5 to Shopware 6 requires five critical steps:
Audit your current store to inventory plugins and integrations
Migrate data using the Migration Assistant
Rebuild your theme and port custom plugins to Shopware 6's architecture
Test thoroughly including checkout and integrations
Execute a planned go-live with monitoring
Expect 4-8 weeks for small stores, 3-6 months for enterprise installations.
Shopware 6 represents a complete architectural rebuild from Shopware 5. Unlike typical version upgrades, this migration requires moving to a new codebase, modern tech stack (Symfony, Vue.js), and different plugin system. This guide walks through the complete process, based on dozens of real-world migrations.
Step 1: Audit Your Shopware 5 Store
Before touching any code, document everything in your current Shopware 5 installation. This audit determines your migration complexity and timeline.
What needs auditing?
Custom Plugins: List all installed plugins. Check each plugin's Shopware 6 compatibility on the Shopware Store or vendor website. Flag critical plugins that need rebuilding.
Theme Customizations: Document all template overrides, custom CSS, and JavaScript modifications. These will need manual recreation in Shopware 6.
Third-Party Integrations: Inventory ERP, PIM, payment gateways, shipping providers, and analytics integrations. Check if integration partners support Shopware 6.
Data Volumes: Count products, categories, customers, orders, and media files. Large catalogs (50,000+ products) require special migration strategies.
Pro Tip: Export your plugin list from the Shopware 5 Plugin Manager and cross-reference it with the Shopware 6 Store. Budget 50-60% of your migration timeline for custom plugin development if you have heavily customized functionality.
Step 2: Migrate Your Data Using Migration Assistant
Shopware provides an official Migration Assistant plugin for Shopware 6 that connects to your Shopware 5 API and transfers data automatically.
How does the Migration Assistant work?
The plugin runs in Shopware 6 and pulls data from your Shopware 5 store via API. It migrates products, categories, customers, orders, and media in configurable batches.
Migration sequence
Install Migration Assistant in your Shopware 6 instance from the Shopware Store (free).
Configure connection to Shopware 5 by providing the shop URL and API credentials.
Fetch data profile to see what entities will be migrated and estimated counts.
Run migration in stages: start with products and categories, then customers, then historical orders.
Validate data after each stage by spot-checking products, customer accounts, and order history.
Important Limitations: The Migration Assistant does NOT migrate:
• Shopping Worlds (must be rebuilt as Shopping Experiences in Shopware 6)
• CMS pages and shop pages (require manual recreation)
• Custom fields and plugin data (need custom migration scripts)
• Theme and design (complete rebuild required)
Pro Tip: Budget significant time for rebuilding Shopping Worlds as Shopping Experiences. This is often the most time-consuming part of the migration after theme development. Document your existing Shopping World configurations with screenshots before starting.
Step 3: Rebuild Your Theme and Port Plugins
Shopware 6 uses a completely different frontend technology stack (Twig templates, Symfony framework, Vue.js storefront). Direct theme migration is not possible.
Theme migration strategy
Start with Shopware 6 Storefront: Use the default Shopware 6 Storefront theme as your base.
Rebuild custom styling: Port your brand colors, fonts, and layout using Shopware 6's SCSS structure.
Shopware 5 plugins are not compatible with Shopware 6. For each plugin, you have three options:
1.Replace with Shopware 6 equivalent: Check if the original vendor has a Shopware 6 version or find an alternative in the Shopware Store.
2.Rebuild from scratch: Port the functionality to Shopware 6's plugin system (required for custom/proprietary plugins).
3.Eliminate: Assess if the functionality is still needed in your Shopware 6 store.
Step 4: Test Everything Thoroughly
Before go-live, execute comprehensive testing across all critical business functions. Skipping this step causes revenue loss and customer frustration.
What to test before launch?
Checkout Flows
• Guest checkout
• Registered customer checkout
• All payment methods
• All shipping methods
• Discount codes and promotions
Integrations
• Payment gateway connections
• ERP/PIM data sync
• Shipping carrier APIs
• Email notifications
• Analytics tracking
Performance
• Page load times (< 2 seconds)
• Load testing with production traffic
• Search functionality
• Product filtering
• Mobile performance
Cross-Browser
• Chrome, Firefox, Safari, Edge
• Mobile browsers (iOS, Android)
• Responsive design breakpoints
• Touch interactions
• Form validation
Step 5: Plan and Execute Go-Live
A well-planned go-live minimizes downtime and reduces risk. Never launch during peak traffic periods (weekends, holidays, campaign launches).
Pre-launch checklist
Final data sync: Run a final migration of recent orders and customer updates before switching DNS.
DNS cutover: Update your domain's DNS records to point to the Shopware 6 server. TTL reduction helps with quick rollback.
Production mode: Enable Shopware 6 production mode, disable debug logs, enable caching.
Monitoring: Set up error logging, performance monitoring (New Relic, Datadog), and uptime alerts.
Rollback plan: Keep Shopware 5 running for 30 days as a backup. Document exact steps to revert DNS if needed.
Technical go-live steps
Transfer Shopware license: In Shopware 6, go to Settings > Shopware Account and update your licensing host to your production domain.
Update sales channel domains: Configure the domain URL for each sales channel individually in the administration panel.
Configure web server: Point your VirtualHost DocumentRoot to the /public/ subdirectory in your Shopware 6 installation. This is critical for both frontend and admin access.
Move Shopware 5 installation: Relocate your Shopware 5 store to a subdirectory (e.g., /shop5/) or alternative domain so it no longer uses the primary domain.
Complete the migration: After verifying all data is current, finalize the migration via Settings > Extensions > Migration Assistant > Complete Migration. This removes migration-specific database records.
Post-launch monitoring period: Actively monitor the first 48 hours for errors, broken integrations, or performance issues. Have your development team on standby to address critical issues immediately.
Important: Do not uninstall the Migration Assistant plugin immediately after go-live if you migrated from platforms like Magento. The plugin preserves password algorithms needed for customer authentication. For Shopware 5 migrations, you can safely remove it after completing the migration process.
Key Takeaways
Shopware 5 to 6 migration is a replatforming project, not an upgrade. Budget accordingly.
Custom plugins and theme require complete rebuilds in the Shopware 6 architecture.
The Migration Assistant handles standard data, but custom data structures need manual migration scripts.
Testing is non-negotiable. Budget at least 2 weeks for comprehensive QA.
Keep Shopware 5 as a backup for 30 days post-launch with a documented rollback plan.
I've successfully migrated dozens of Shopware stores, from small catalogs to enterprise installations with 500,000+ SKUs. Get expert guidance to avoid common pitfalls.