Plugin Performance

Which Plugin Is Slowing Down Your Site?

The usual answer is an afternoon of deactivating plugins one by one and hoping nothing breaks mid-test. There is a faster way: screen the whole list in one glance, then measure the real request and read the name of the function that costs you.

The Slow Way Everyone Starts With

Deactivate everything. Reactivate one plugin at a time. Reload. Measure. Repeat. It works - it also takes an afternoon, changes your live site while you do it, and misses every plugin that is only slow on specific screens, or only under real traffic you cannot reproduce on a staging copy at 11pm.

What one-by-one testing misses
  • Plugins that only slow down wp-admin or a single page type
  • Plugins that are slow only under real traffic or real data
  • The difference between "heavy in general" and "heavy here, on this page"
  • Hours of toggling plugins on a live site
A faster two-step
  • Screen the whole plugin list against benchmark data - one glance
  • Profile one real request and rank every callback by time
  • See the plugin, the hook, and the source file that registered it
  • Then decide: fix it, replace it, or leave it alone

Two Different Answers to "Which Plugin Is Slow"

There is "heavy in general" and there is "heavy on your site, on this page, right now" - two different questions. Benchmark data answers the first. A profiler answers the second. WP Multitool ships both, because screening tells you where to look and measuring tells you what to fix.

Step One: Screen the Whole List - Plugin Performance Score

Your Plugins page gets a Performance column: a color-coded 0-100 badge next to every installed plugin, built from roughly 53,700 clean-install benchmarks - memory usage and database query cost measured on a fresh WordPress. The data ships bundled inside the plugin, the lookup answers without an external API call, and the column costs nothing on the frontend. It is on by default.

Score Color Meaning on a clean install
80-100 Green Lightweight - minimal performance impact
50-79 Yellow Moderate - noticeable resource usage
0-49 Red Heavy - significant memory or query overhead
A benchmark is a clean install, not your site

A red badge means "this plugin is heavy on an empty site" - it does not prove it is the thing slowing yours down. A green badge does not prove innocence either: a light plugin can still hang your admin if it waits on an external API. Treat the column as the shortlist, not the verdict.

Step Two: Measure Your Site - Find Slow Callbacks

Point the profiler at the actual slow URL - an admin screen, a product page, the checkout. For that one request it times every action and filter callback WordPress runs, then ranks the ones over 10 milliseconds by time, with the hook and the source file that registered them.

Instead of "some plugin is slow" you get plugin_xyz::sync_feed() - 847ms on admin_init, traced to the file that hooked it. Sessions are saved, so you can profile before and after a change and compare the same URL.

Find Slow Callbacks is a Pro module, off by default, and it needs loopback HTTP - it has to request your own site to time it.

What to Do With the Name

  • Report it. Plugin authors take "your callback X takes 800ms on every admin load" far more seriously than "your plugin is slow."
  • Replace it. If the cost is structural - a feed sync on every request, a license ping on every page - no amount of tuning fixes that plugin.
  • Or keep it. Measuring also tells you when a suspicious plugin was innocent all along, so you stop uninstalling things that never hurt you.

The score column screens the field; the profiler names the culprit. Both ship with WP Multitool - the profiler on Pro.

Pro starts at $79/year →

Slow Plugins FAQ

How do I find which plugin is slowing down my WordPress site?

Two steps. Screen the Plugins page with Plugin Performance Score - a 0-100 badge per plugin built from ~53,700 clean-install benchmarks - then profile the actual slow URL with Find Slow Callbacks, which ranks every hook callback over 10ms by time, with the source file that registered it.

What does the Plugin Performance Score actually measure?

Memory usage and database query cost of each plugin on a clean WordPress install - benchmark data from roughly 53,700 plugins, bundled inside the plugin so the answer needs no API call. It is a screening signal: heavy in general, not necessarily heavy on your site.

Is a plugin with a low performance score always slow?

No. The score is measured on an empty site - it tells you a plugin is heavy in general, not that it is slowing yours down. And a light plugin can still stall a page if it waits on an external API. Score screens, the profiler measures.

Why not just deactivate plugins one at a time?

It works, but it takes an afternoon, changes your live site while you test, and misses plugins that are only slow on specific screens or under real traffic. The profiler looks at a single real request and ranks the actual callbacks - no toggling required.

Does Find Slow Callbacks slow down my site?

It is off by default and only profiles the one URL you point it at, adding minimal overhead to that request. It is not something that runs on every page load, and it needs loopback HTTP to time your own site.

Can I check how heavy a plugin is before installing it?

The score column covers what is already installed - each badge links to the full benchmark report, so you can also look up a plugin you are still evaluating. For the plugins you run, the column and the profiler cover screening and measurement.

See the Callback, Not Just the Plugin Name

Plugin Performance Score ships on by default in every install. Find Slow Callbacks is Pro - $79/year for a single site, and every paid plan includes all 19 modules.

Get Pro - from $79/year Slow Admin Guide All plans on the pricing page →