The Subset team3 min readproduct
Why a suite and not one plugin
Four plugins cost more to build and more to market than one plugin with four feature tabs. Here is what we get back for that.
The obvious version of Subset is one plugin with four tabs. It would be cheaper to build, cheaper to market, and it is what the market rewards — the biggest names in the WordPress plugin directory are all one install with a settings page that scrolls.
We are not doing that, and the reasons are worth writing down while they are still decisions rather than history.
Every install carries code it will never run
A plugin that resizes images and also manages consent and also handles redirects is three products sharing a release cycle. Every site that installs it for redirects loads the image code. Not because anything is wrong with the image code, but because “one plugin” means one set of files, one autoloader, one activation hook.
On a shared host that is measurable. More to the point, it is permanent: you cannot opt out of the two thirds you did not want.
A bug in one cannot take down the other three
This is the one that actually decided it.
If image conversion has a fatal error on PHP 8.4, and image conversion lives in the same plugin as consent blocking, then a site on PHP 8.4 loses its cookie banner. Not because the consent code is wrong — because it shares a file header with code that is.
Four plugins means four blast radii. A site running all four gets four independent chances to fail, which sounds worse until you notice that each failure costs a quarter as much.
Small enough to read
Each of these is intended to stay small enough that one person can read all of it in an afternoon. That constraint does most of the work by itself: it rules out the feature that would be easier to bolt onto an existing plugin than to justify as a new one.
The version of this project where every plugin grows a second feature set because that was the path of least resistance is the version we are trying not to build, and a directory listing is a surprisingly effective commitment device.
What it costs us
Being honest about the other side of the ledger:
- Four listings to maintain. Four readmes, four support forums, four sets of screenshots, four release processes.
- Four times the discovery problem. Somebody searching for “wordpress redirects” finds one plugin, not a suite, and has no reason to look at the other three.
- A bundle that has to be explained. “Buy all four” needs a page of its own, and people arriving through one plugin mostly do not want it.
- Shared code becomes a real problem. Licence checking, settings storage and update handling are the same in all four, which means a shared library and the versioning discipline that comes with one.
That last one is the interesting cost, and it is why the shared pieces live in this repository rather than being copy-pasted per plugin.
The test we are holding ourselves to
If you only need redirects, you install one thing, and it does redirects. Nothing about the other three appears in your admin, your database, or your page weight.
That is a claim anybody can check, which is the point of writing it down.