PHP 8 is now the standard version running on most web hosting infrastructure. Many ExpressionEngine sites were built when PHP 7 was current and have never been reviewed for PHP 8 compatibility. If nobody has mentioned this to you, there is a reason for that, and it is worth understanding.
Why this matters more than most software updates
PHP is the underlying language that ExpressionEngine and most of its addons are written in. When PHP releases a new major version, the language itself changes. Some functions are deprecated, some are removed entirely, and new syntax requirements are introduced. A site that worked perfectly on PHP 7.4 may produce errors, display broken pages, or fail silently on PHP 8.x without any obvious warning.
The hosting company has already moved on
Most managed hosting providers have phased out PHP 7 support or are in the process of doing so. If your hosting is still running PHP 7, you are probably on a legacy configuration that will not last indefinitely. If your hosting has already moved to PHP 8 and your site appears to be working, that does not mean there are no compatibility issues. It may mean that certain functionality is quietly not working, or that you are one PHP minor version update away from visible problems.
The addon problem compounds this
ExpressionEngine addons are written in PHP as well. An older addon that has not been updated since PHP 7 may generate warnings or errors on PHP 8, or may fail completely. Many businesses are using addons that handle important functionality, such as form submissions, search, structured data, or payment integrations, without any awareness that those addons have not been reviewed for the current PHP environment.
Why agencies have not raised this
The honest answer is that many agencies that built ExpressionEngine sites no longer support ExpressionEngine, or no longer exist. The business that built your site in 2016 may have changed focus entirely. Even if your original agency is still around, if they are not actively maintaining your site, this is exactly the kind of thing that falls through the gaps. It is not malicious. It is just the reality of how web development agencies operate.
How to find out where you stand
A PHP compatibility audit is not a large piece of work when done properly. It involves reviewing the current PHP version on your hosting, identifying the EE version and all installed addons, and checking each component against known PHP 8 compatibility requirements. The result is a clear list of what needs attention and what does not. If you are uncertain about your situation, that audit is the starting point.
If you do not know whether your ExpressionEngine site is compatible with current PHP, get in touch with Karl to check.
If your website is running on ExpressionEngine 4 or 5, it may look fine on the surface. But underneath, you are carrying costs that most business owners do not see until something goes wrong. This is not about upgrading for the sake of it. It is about understanding what your current situation actually means.
Delaying an ExpressionEngine upgrade is easy to justify. The site still works, the budget is committed elsewhere, and nothing has broken yet. But delays in this area follow a predictable pattern, and the costs accumulate in ways that are not immediately visible.
There’s no single answer to when you should upgrade your ExpressionEngine installation, but there are several clear signals that tell you it’s overdue. Most business owners don’t think about this until something goes wrong. By then, the upgrade is usually more involved than it would have been if it had been done earlier.
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.