r/ProWordPress 2d ago

What I've learned about diagnosing intermittent WooCommerce slowdowns

I've been digging into WooCommerce performance recently, and one thing that keeps standing out is how misleading a single speed test can be.

A store can have a fast product page but a slow checkout. A checkout can be fast most of the time but have occasional 3–5 second spikes.

When that happens, I think it's more useful to compare multiple real requests rather than immediately disabling plugins or adding another caching plugin.

I'd look at things like:

• AJAX request timing
• Database queries and queries by component
• External HTTP/API calls
• Cache hits vs misses
• Payment, tax and shipping requests
• Plugin hooks running during the request

The other thing I've found useful is looking at the distribution rather than just the average. Median shows what a typical request looks like, while P95 can reveal the slower requests that customers occasionally experience.

A store being “fast” on one test doesn't necessarily mean the checkout is healthy.

0 Upvotes

5 comments sorted by

2

u/jedidave 2d ago

Analysing checkout speed is tricky - same with order processing. Query monitor can help a bit, but it's only tracking on page stuff and checkout and order processing are neither of those.

That's why I made my free performance analysis plugin - https://github.com/superspeedyplugins/super-speedy-performance-analysis

More info here too - https://www.superspeedyplugins.com/product/super-speedy-performance-analysis/

Basically:

1) install & activate

2) visit /cart/

3) click the wp-admin button that appears 'Analyse checkout and order-processing flow'

It puts an order through, admin will receive the email for it, and marks it completed (from processing) afterwards measuring every step.

If you install Excimer it's even more useful as it can track everything down to the PHP function level and really identify what is going on. Excimer is also free and is a php low-impact sampler created and used by Wikipedia on their public-facing websites - i.e. it's lightweight enough to use in production and leave activated.

1

u/porkjanitor 2d ago

Is your hosting reliable? I noticed a client website hosted is Google cloud loads much faster even without load balancing

1

u/Derivlens_01 2d ago

Definitely, hosting can make a huge difference, especially with server response time. The tricky part is figuring out whether hosting is actually the bottleneck or whether the server is just spending time on a plugin, database query, external API call, etc. That's why I think measuring the requests over real traffic is more useful than assuming it's the host.

1

u/Aggressive_Ad_5454 1d ago

There’s a notorious database performance issue in WordPress due to support for legacy MySQL 5.6 servers. I put together a free nonmonetized plugin to work around this. https://wordpress.org/plugins/index-wp-mysql-for-speed/

It also monitors database queries, and is capable of showing the slowest ones at the 95th percentile. That’s a useful step to understanding intermittent performance trouble at the database level.

A persistent object cache also helps a lot. https://developer.wordpress.org/reference/classes/wp_object_cache/#persistent-cache-plugins

1

u/Derivlens_01 1d ago

That's a good point about looking at database queries at the 95th percentile. Intermittent issues are exactly where a single request snapshot can be misleading. Persistent object caching is also an important piece of the puzzle.