Why “The Site Still Works” Is Not the Same as “The Site Is Being Maintained”
Posted by: Karl Bowers | March 30 2026
This is a distinction that matters more than most business owners realise, and it comes up in almost every conversation I have with someone who hasn’t had active support for their ExpressionEngine site in a while.
The site is working. Pages load, content can be updated, forms submit. From the outside, everything looks fine. But working and maintained are two very different things, and the gap between them has a cost that compounds over time.
The serviced car analogy
The closest equivalent I can think of is a car. A car that hasn’t been serviced in three years might still get you from A to B. The engine runs, the brakes work, you can drive it. But the oil hasn’t been changed, the brake pads haven’t been checked, and the timing belt is overdue. It works, but it isn’t maintained. The risk isn’t that it breaks down today. The risk is that when something does fail, it’s more serious and more expensive than it would have been.
A website follows the same logic.
What goes wrong when nothing is actively maintained
PHP versions move forward. Your hosting provider will eventually upgrade the server to a newer PHP version, and your EE installation may not be compatible with it. When that happens, the site stops working. Not gradually: it either works or it doesn’t.
Security vulnerabilities accumulate. ExpressionEngine receives security updates, but those updates only help you if you apply them. An unpatched installation becomes progressively more vulnerable over time.
Addons drift out of compatibility. The third-party addons your site depends on are maintained by independent developers. They release updates, drop support for older EE versions, and occasionally stop maintaining a product entirely. If you’re not tracking this, you won’t know until something breaks.
Third-party integrations change. If your site connects to Stripe, Mailchimp, HubSpot, or any other external service, those services change their APIs. An integration that worked perfectly two years ago may be relying on an endpoint that’s been deprecated.
The compound interest problem
The longer a site goes without maintenance, the more work is involved in bringing it back to a properly maintained state. Each missed update makes the next one more complex. A site that’s one minor version behind is easy to update. A site that’s three major versions behind, with outdated addons and PHP incompatibilities, is a significant project.
This isn’t unique to ExpressionEngine. It applies to any software-dependent system. But because EE sites tend to be business-critical and often involve custom development work, the consequences of deferred maintenance are typically more acute.
What ongoing maintenance actually looks like
It doesn’t need to be intensive. For most sites it means monitoring, applying updates when they’re available, keeping an eye on addon compatibility, and having someone who knows the site well enough to act quickly when something needs attention.
The cost of doing this properly is a fraction of the cost of dealing with the consequences of not doing it.
Posted by: Karl Bowers
Posted in:
Post Date: March 30 2026
Latest posts:
Blog
Latest posts:
- Taking Over a Craft CMS Site Built by Another Developer: What We Look for First
- Third-Party Integrations on Craft CMS: Why They Break and What to Do About It
- What to Look for When Hiring a Craft CMS Developer
- Why “The Site Still Works” Is Not the Same as “The Site Is Being Maintained”