A Craft CMS enquiry from Birmingham usually means one of two things: an install that's ticking along neglected, or one that's actually broken with whoever built it long gone.
Karl's the one who picks it up, on his own. Craft CMS and ExpressionEngine are the only platforms Expression 37's worked in, since 2007. There's no account manager between you and him.
He reads the actual codebase before quoting anything. Most Birmingham and Midlands engagements move to an ongoing retainer once that first job's resolved.
The kind of install this usually is:
A Birmingham site that's outgrown casual maintenance, where broken functionality or downtime has a real commercial cost, not a cosmetic one. Often it's been inherited from an agency that's moved the client through several account managers, none of whom actually understood the build. Frequently there's a plugin several major versions behind, or a Stripe, Salesforce, or HubSpot integration wired in by someone no longer around to explain how it works. What connects all of it: an owner who wants one developer who actually knows the system, not a rotating cast of unfamiliar faces.
What changes once Karl's involved:
The starting point is nearly always a specific, unresolved problem, a delayed upgrade, an integration that's stopped syncing properly, or a site left stranded when an agency relationship ended. From there, the aim is straightforward: become the person who understands your Craft install better than anyone else, so there's always someone who can actually answer a question about it.
Common questions from Birmingham clients:
Everything's handled remotely, does that work for a Birmingham-based business?
In practice, yes, without exception. Businesses across Birmingham and the Midlands generally find that direct access to the developer doing the work beats going through an agency's account management layer, and there's rarely a genuine need for anyone to be on-site.
We've got an existing Craft build from another developer, can that be picked up?
Regularly. Inheriting a Craft codebase, however customised the templates or unusual the plugin choices, is one of the most common ways an engagement starts. Nothing gets changed until the existing setup is properly understood.
Our install hasn't been upgraded in a long time, is that fixable?
Yes, and it's routine work. That covers everything from auditing which plugins are still compatible to resolving Composer conflicts and testing thoroughly before anything reaches production.
What about the Stripe, Salesforce, or HubSpot side of things?
Covered as standard. Payment gateways, CRM syncs, and marketing platform connections tend to be wired directly into the Craft templates, so they're treated as part of the same system rather than a separate concern.
How does the cost side actually work?
A one-off job, an audit or an upgrade, gets a fixed project price. Ongoing work runs as a monthly retainer. The number is always agreed before anything begins, either way.
If something breaks unexpectedly, what happens?
Clients on a retainer get priority handling for anything urgent. Without one, response is still generally fast, but guaranteed priority is specifically part of what a retainer provides.
Ready to get started?
If your website is business-critical and needs a specialist who will take proper long-term ownership of it, get in touch. Karl will respond personally and give you an honest view of how we can help.


