One of the most common selling points for CMS platforms is the plugin ecosystem. Whatever you need, there is a plugin for it. This is true, and it is often genuinely useful. But for businesses running sites where reliability matters, a large plugin count is worth examining more carefully than it usually is.
Each plugin is a dependency you do not control
When your site relies on a third-party plugin to handle an important function, you are delegating a piece of your business to the ongoing decisions of an external developer. If they abandon the plugin, stop releasing updates, change the pricing model, or simply make a mistake in a release, your site is affected. You have no control over any of those outcomes. The more plugins you depend on, the more external decisions can affect your site.
Plugins interact in unpredictable ways
CMS platforms are designed with a core and an extension mechanism. Plugins are designed for the core, not necessarily for each other. As the number of plugins on a site increases, so does the potential for conflicts. A plugin update that works perfectly in isolation may break functionality delivered by another plugin. These interactions are difficult to predict and time-consuming to debug.
Version upgrades become more complex with every plugin added
When a major CMS version is released, every plugin on your site needs to be checked for compatibility. Some will have been updated by their developers. Some will not. Some will have been abandoned. The more plugins you have, the longer this compatibility check takes, and the higher the probability of encountering a plugin that creates a blocker for the upgrade.
When bespoke is cleaner
For functionality that is genuinely central to your business, there is a strong argument for having it built as part of your application rather than handled by a third-party plugin. Custom-built functionality behaves predictably, has no external dependencies, and can be upgraded on your timeline. The upfront cost is higher. The long-term operational cost is often lower, and the reliability is higher.
This is not an argument against using plugins
Plugins are the right answer for many things. The point is that the decision to add a plugin should be made with awareness of the dependency it creates. For functionality that is peripheral, a plugin is often the sensible choice. For functionality that is central to your business operations, it is worth considering whether purpose-built is the more appropriate answer.
If you want to know how many of your site's plugins are actually a risk, get in touch with Karl for an audit.
Most business websites are built on content management systems. That makes sense for most situations. But there are cases where a CMS is the wrong tool, and the gap between what a CMS can do and what a business needs it to do creates ongoing friction, cost, and limitation. Knowing when a bespoke solution makes more sense is a useful thing to understand.
Most ExpressionEngine and Craft CMS sites can be extended, but there is a point at which further extension stops being the right answer. Here is how to recognise it.
A significant number of businesses are running web applications, intranets, or tools that were built years ago in PHP and have not been meaningfully updated since. The code works, the application does what it always did, and so it sits. What accumulates in the meantime is technical debt with real business consequences.
Most clients come to us when their site has started to feel like a risk rather than an asset. Whether the agency relationship has ended, an upgrade has been delayed, or the site has simply grown beyond what it can handle, a conversation costs nothing.