How it works

Halving the list, one answer at a time

Culprit Finder is a search. Each answer you give rules out about half of the plugins that could be causing the problem, so even a long list shrinks fast.

The halving search

Say you have 30 active plugins and a broken checkout page. Culprit Finder first switches all of them off, for you only, and asks: is the problem still there? If it is, no plugin is to blame and you're done after one answer.

If it's gone, it switches the first half back on and asks again. Problem back? The culprit is in that half. Still fine? It's in the other half. Every answer cuts the list of suspects in two: 30, 15, 8, 4, 2, 1.

Each answer halves the list of suspects30 suspects become 15, then 8, 4, 2 and finally 1 culprit.30 suspects15841one answer per row

Why about 7 answers for 30 plugins

Halving 30 takes five steps to reach a single plugin. Add the first check with everything off, and one final check of the suspect on its own, and you get about 7 answers. Each answer takes as long as it takes you to reload the broken page and look.

When two plugins clash

Some problems only appear when two particular plugins are both on. Each works fine alone. A simple one-by-one approach can miss that, because each half of your list looks healthy on its own.

Culprit Finder handles it in three moves. It finds the plugin that completes the problem. If that plugin alone doesn't cause it, it searches the plugins before it for the partner, the same halving way. Then it checks the two together to be sure. If even the pair doesn't reproduce the problem, three or more plugins are involved, and the result says so honestly instead of guessing.

Plugins you keep on

Some problems only show up with a certain plugin on, like a checkout problem that needs your shop plugin. Tick it at the start and it stays on in every step and is never blamed. Plugins it requires stay on too, so no step ever loads a plugin without what it needs.

What "for you only" means

A tiny helper file in WordPress's must-use plugins folder loads before every other plugin. On each request it checks for two things: your secret troubleshooting cookie and a logged-in cookie. Only when both are present, and only for the administrator who started the session, does it tell WordPress to load a shorter list of plugins. Every other request, from visitors, search engines or other administrators, skips that check in microseconds and gets the full site. Your saved plugin settings are never touched, and pages filtered for you are marked as not cacheable.

Download free