How to Speed Up WooCommerce: 10 Proven Optimizations
WooCommerce is powerful but not lightweight. A poorly optimized store can take 5+ seconds to load — killing conversions and rankings. This guide covers WooCommerce-specific speed optimizations that go beyond basic WordPress caching.

Why WooCommerce Sites Are Slower
WooCommerce adds significant overhead to WordPress:
- More database queries: Product lookups, cart sessions, and inventory checks add queries on every page load
- Heavier pages: Product pages with galleries, variations, and reviews load more assets
- Complex checkout: The checkout page loads payment gateway scripts, form validation, and session data
- Cart fragments: WooCommerce’s default cart session check (to show cart count) makes an AJAX request on every page load
The good news: all of these have fixes.
1. Use Managed WooCommerce Hosting
The #1 speed factor is your hosting infrastructure. Generic shared hosting was not designed for WooCommerce’s database load. Upgrade to:
- Kinsta — Google Cloud-based, auto-scaling, excellent for growing stores
- WP Engine — premium managed WooCommerce hosting
- SiteGround — best value managed WooCommerce hosting
These hosts include server-level caching, CDN, and WooCommerce-specific optimizations.
2. Install a WooCommerce-Compatible Caching Plugin
Not all caching plugins handle WooCommerce correctly. The problem: WooCommerce pages like cart and checkout must not be cached (they’re personalized). A WooCommerce-aware caching plugin excludes these pages automatically.
Recommended:
- WP Rocket — automatically excludes WooCommerce cart, checkout, and account pages
- LiteSpeed Cache — excellent for LiteSpeed-hosted stores
- WooCommerce Transients — included in WooCommerce itself; clears product cache when inventory changes
3. Disable Cart Fragments
Cart fragments is one of the biggest performance culprits in WooCommerce. By default, WooCommerce makes an AJAX request on every page load to update the cart count — even for visitors who aren’t logged in and have an empty cart.
Fix with code (add to functions.php):
add_action('wp_enqueue_scripts', function() {
if (!is_cart() && !is_checkout()) {
wp_dequeue_script('wc-cart-fragments');
}
}, 11);
Or use a plugin like Cart Fragments Disabler.
4. Optimize Product Images
Product images are the largest assets on any store. Every product page with multiple gallery images is a performance test.
WooCommerce image optimization:
- Upload images at the exact dimensions WooCommerce needs (check
WooCommerce > Settings > Products > Display) - Use WebP format — ShortPixel and Imagify convert automatically
- Enable lazy loading for gallery images
5. Reduce Database Queries
WooCommerce’s product and order data creates a large database over time. Optimize with:
- WooCommerce database cleanup:
WooCommerce > Status > Tools— clean expired transients and orphaned metadata - WP-Optimize — automates database cleanup including WooCommerce-specific tables
- Object caching: If your host supports Redis or Memcached, enable it for dramatic database query reduction

6. Use a CDN for Product Images
A CDN serves your product images from servers worldwide, near your visitors. With potentially thousands of product images, a CDN makes a huge difference in global store performance.
- Cloudflare — free tier, also includes a WAF for security
- BunnyCDN — fast, affordable, easy WooCommerce integration
- KeyCDN — pay-per-use pricing
7. Optimize the Checkout Page
The checkout page is the most critical for conversions and often the slowest. Common issues:
- Payment gateway scripts loading even for non-checkout pages
- Multiple payment gateways each loading their own scripts
- Unoptimized shipping calculation calls
Fixes:
- Use WP Rocket’s “load scripts only when needed” option
- Limit active payment gateways to 2–3 maximum
- Use a checkout optimization plugin like CartFlows which replaces WooCommerce’s checkout with a faster, more streamlined version
8. Choose a Lightweight WooCommerce Theme
Heavy themes significantly impact store performance. The fastest WooCommerce themes:
- Astra — under 50KB base footprint
- GeneratePress — under 30KB
- Flatsome — heavier but optimized for ecommerce conversions
See our best WooCommerce themes guide.
9. Limit Product Variations
Every product variation adds to database size and query complexity. If you have products with 100+ variations, consider:
- Splitting into separate simple products
- Using the product add-ons approach for simple customizations instead of variations
10. Monitor Performance Continuously
Use these tools to track your store’s speed over time:
- Google PageSpeed Insights — Core Web Vitals
- GTmetrix — waterfall analysis
- New Relic (available via some hosts) — database query monitoring
- Query Monitor (free WordPress plugin) — identifies slow queries in real time
For the broader WordPress speed picture, read our how to speed up WordPress guide.
Useful resources: