Common issues you may encounter with your Shopware 6 store and how to diagnose and fix them.
Performance Issues
Shopware store performance directly impacts conversion rates and SEO. Core Web Vitals are critical metrics that affect both user experience and search rankings.
Largest Contentful Paint (LCP)
LCP measures loading performance. Shopware-specific LCP issues include:
- Symfony application overhead and server response time
- Unoptimized hero images and product images
- Third-party plugins adding render-blocking scripts
- Theme JavaScript and CSS blocking render
- Database queries and cache configuration
- CDN configuration and asset delivery
Target: LCP under 2.5 seconds
Cumulative Layout Shift (CLS)
CLS measures visual stability. Shopware-specific CLS issues include:
- Product images without explicit dimensions
- Dynamic content from plugins shifting layouts
- Font loading causing layout shifts
- Off-canvas cart and navigation animations
- Lazy-loaded content without proper placeholders
- CMS blocks with dynamic heights
Target: CLS under 0.1
General Performance Best Practices
Theme Selection:
- Use modern, optimized themes built on Shopware 6
- Avoid heavily customized themes without performance testing
- Regularly update theme to latest version
- Test theme performance before purchase
Plugin Management:
- Audit installed plugins quarterly
- Remove unused plugins completely (don't just deactivate)
- Check plugin performance impact before installation
- Consolidate plugin functionality where possible
- Use Shopware profiler to identify slow plugins
Server & Hosting:
- Use PHP 8.1+ for better performance
- Enable OPcache and configure properly
- Use MySQL 8.0+ or MariaDB 10.5+
- Consider dedicated hosting or managed Shopware hosting
- Configure Redis or similar for caching
- Enable HTTP/2 or HTTP/3
Cache Configuration:
- Enable HTTP cache in production
- Configure cache warming
- Use reverse proxy (Varnish) for high traffic
- Set appropriate cache TTLs
- Clear cache strategically (not after every change)
Database Optimization:
- Regularly optimize database tables
- Use proper indexes
- Archive old order data
- Monitor slow queries
- Consider read replicas for high traffic
Asset Optimization:
- Enable theme compilation in production
- Minify JavaScript and CSS
- Use WebP images with fallbacks
- Implement lazy loading for images
- Optimize SVG files
- Use Shopware's built-in image optimization
For general performance concepts, see the global performance hub.
Tracking & Analytics Issues
Events Not Firing
Common causes of tracking failures on Shopware:
- JavaScript errors from theme or plugins
- Cache preventing updated tracking code from loading
- Incorrect configuration in tracking code
- Cookie consent blocking tracking scripts
- Data layer not populating correctly
- Plugin conflicts
Common scenarios:
- GA4 events missing from specific pages
- Meta Pixel not tracking AddToCart
- GTM container not loading
- Purchase events firing multiple times
- Events firing in preview but not production
Tracking Best Practices
Consolidate Tracking:
- Use GTM as single source for all tags
- Remove redundant tracking implementations
- Document all tracking implementations
- Use version control for tracking code
Test Thoroughly:
- Test in staging environment first
- Use browser extensions (GTM debugger, GA debugger, Meta Pixel Helper)
- Test in incognito/private browsing
- Test across different browsers
- Test on mobile devices
- Verify in platform analytics (GA4, Meta Events Manager)
Monitor Continuously:
- Set up alerts for tracking failures
- Review data quality weekly
- Monitor conversion tracking accuracy
- Check for unusual traffic patterns
- Validate data against order reports
For general tracking concepts, see the global tracking hub.
Common Shopware-Specific Issues
Cache-Related Problems
Problem: Changes not appearing on storefront or tracking not working.
Diagnosis:
# Check cache status
bin/console cache:pool:list
# View cache statistics
bin/console cache:pool:stats
Solution:
# Clear all caches
bin/console cache:clear
# Warm up cache
bin/console cache:warmup
# Clear HTTP cache
bin/console http:cache:clear
# Recompile theme
bin/console theme:compile
# Complete cache clear
bin/console cache:clear && bin/console theme:compile && bin/console cache:warmup
Prevention:
- Don't clear cache unnecessarily in production
- Use cache warming after clearing
- Configure cache tags properly
- Use development mode during testing
Plugin Conflicts
Problem: Plugin causes errors, crashes, or conflicts with other plugins.
Diagnosis:
- Check Shopware error logs:
var/log/ - Check browser console for JavaScript errors
- Enable debug mode to see detailed errors:
APP_ENV=dev bin/console cache:clear - Deactivate plugins one by one to identify culprit
Common Conflicts:
- Multiple tracking plugins interfering
- Theme incompatibilities
- Plugin requiring specific Shopware version
- Database migration failures
Solution:
- Update all plugins to latest compatible versions
- Contact plugin developer for support
- Check plugin compatibility matrix
- Use alternative plugins
- Report bugs to plugin developer
Theme Customizations Lost on Update
Problem: Theme updates overwrite custom code.
Prevention:
- Use theme inheritance instead of direct edits
- Create child theme for customizations
- Use Twig block overrides
- Document all customizations
- Use version control (Git)
- Test updates on staging first
Recovery:
- Check if Shopware keeps backup of old theme
- Restore from Git if using version control
- Re-implement customizations from documentation
- Consider creating proper child theme
Slow Backend Performance
Problem: Shopware Administration loads slowly.
Common Causes:
- Large product catalog (50k+ products)
- Many installed plugins
- Inefficient custom admin extensions
- Database not optimized
- Server resources insufficient
Solutions:
# Optimize database
bin/console dal:refresh:index
# Rebuild search index
bin/console es:index
# Clear doctrine cache
bin/console doctrine:cache:clear-metadata
bin/console doctrine:cache:clear-query
bin/console doctrine:cache:clear-result
Long-term Fixes:
- Upgrade server resources (RAM, CPU)
- Optimize database indexes
- Archive old data
- Use Elasticsearch for better search performance
- Limit loaded data in admin grids
Data Layer Issues
Problem: GTM data layer is empty or has incorrect values.
Causes:
- Cache preventing updated code from loading
- Twig variables not available in context
- JavaScript errors preventing data layer pushes
- Incorrect variable names or paths
Debug:
// Check data layer in browser console
console.table(window.dataLayer);
// Monitor data layer pushes
(function() {
const originalPush = Array.prototype.push;
window.dataLayer = window.dataLayer || [];
window.dataLayer.push = function() {
console.log('dataLayer.push:', arguments[0]);
return originalPush.apply(this, arguments);
};
})();
Solutions:
- Clear cache and recompile theme
- Verify Twig variables exist with
{% if variable is defined %} - Add fallback values:
\{\{ variable|default('') \}\} - Check JavaScript console for errors
- Use GTM Preview mode to debug
Multi-Sales Channel Tracking
Problem: Tracking IDs mixing between sales channels.
Solutions:
{# Conditional tracking per sales channel #}
{% if context.salesChannel.id == 'channel-id-1' %}
{% set gaId = 'G-XXXXXXXXX1' %}
{% set gtmId = 'GTM-AAAAAAA' %}
{% elseif context.salesChannel.id == 'channel-id-2' %}
{% set gaId = 'G-XXXXXXXXX2' %}
{% set gtmId = 'GTM-BBBBBBB' %}
{% endif %}
- Use separate GTM containers per channel
- Configure cross-domain tracking if needed
- Test each sales channel independently
Debugging Tools
Shopware-Specific Tools
Shopware Profiler:
# Enable profiler
APP_ENV=dev
# Access profiler toolbar at bottom of page
# Shows database queries, cache hits, performance metrics
Shopware CLI:
# System information
bin/console system:info
# Check requirements
bin/console system:check-requirements
# View configuration
bin/console debug:config
# List plugins
bin/console plugin:list
# View events
bin/console debug:event-dispatcher
Database Console:
# Access database console
bin/console dbal:run-sql "SELECT * FROM product LIMIT 10"
# Check migrations
bin/console database:migrate --dry-run
# Check database status
bin/console database:status
Browser Developer Tools
Chrome DevTools (F12):
- Console: Check for JavaScript errors
- Network: Verify tracking requests sent
- Application: Check localStorage, cookies, session data
- Performance: Record page load, analyze bottlenecks
- Lighthouse: Run performance audits
Performance Testing Tools
- Google PageSpeed Insights
- WebPageTest
- GTmetrix
- Shopware's built-in profiler
- New Relic or similar APM tools
- Blackfire.io for PHP profiling
Analytics Debugging Tools
Browser Extensions:
Platform Tools:
- GA4 DebugView
- Meta Events Manager Test Events
- GTM Preview Mode
- Google Tag Assistant
Getting Help
Shopware Support Channels
Shopware Documentation:
- docs.shopware.com
- Comprehensive developer docs
- Admin user guides
Shopware Community:
- forum.shopware.com
- Active community forum
- Search existing questions
- Ask new questions
Shopware Slack:
- Join Shopware Slack
- Real-time community help
- Developer channels
Shopware Support:
- Commercial support for Enterprise customers
- Partner support channels
- Bug tracker for core issues
When to Hire a Developer
Consider hiring a Shopware developer when:
- Complex custom functionality needed
- Multiple persistent errors you can't resolve
- Theme requires significant customization
- Performance issues persist despite optimizations
- Migration from another platform
- Plugin development needed
- Advanced server configuration required
Find Shopware Partners:
- store.shopware.com/en/partners
- Certified Shopware agencies
- Rated by community and Shopware
Next Steps
Performance Issues:
Tracking Issues:
Prevention:
- Document your setup and customizations
- Test in staging before deploying to production
- Monitor performance and tracking regularly
- Keep Shopware core, themes, and plugins updated
- Regular database maintenance
- Implement proper caching strategy
Emergency Troubleshooting
Site is Down
- Check server status - Is server running?
- Check error logs -
var/log/ - Check .env file - Database credentials correct?
- Check database - Is database accessible?
- Clear cache -
bin/console cache:clear - Check disk space -
df -h - Check PHP version - Compatible with Shopware version?
Cannot Access Admin
- Clear browser cache and cookies
- Try different browser
- Check admin URL -
/adminby default - Reset admin password:
bin/console user:change-password admin - Check admin user exists:
bin/console user:list - Create new admin user:
bin/console user:create
Payment Issues
- Check payment plugin is active
- Verify API credentials
- Check payment plugin logs
- Test in sandbox/test mode first
- Contact payment provider support
For urgent production issues, contact your hosting provider or Shopware partner immediately.