How we built our professional services digital platform using django CMS
Compound Partners is a UK digital consultancy specialising in audience-centric user experience and content architecture for professional services firms. Fifteen years ago, a developer's recommendation pointed us at django CMS. Today, our entire business is built on it.
Selecting the right technology
Most agencies choose a CMS the way their clients do: under time pressure, mid-pitch, with the technology team's reservations noted and overruled. We were luckier. When we went looking for a foundation we could build on, our lead developer researched the market and came back with a clear recommendation: django CMS. It wasn't the biggest name on the list, but it was the best engineered.
That decision has paid dividends. It was open source, so nothing stood between us and the code. It was built on Django, which meant the security model, the core code and the admin were inherited from one of the most trusted frameworks in web development.
The core was deliberately small: a system that did content management properly and left everything else to be built as Django apps. Importantly, the editorial interface could be tailored, project by project, to the people who would actually use it every day.
Two of those points turned out to be key to our business model.
From CMS to platform
When we first started working with django CMS, like most agencies, we built each new site as a discrete project, with its own codebase and functionality. Pretty quickly, though, existing clients would start asking for features we were building for new sites. Retrofitting new code into old sites became increasingly challenging (and low-margin), so we made a fundamental shift in our approach.
We decided to run all clients on the same core code as a "platform". We consolidated functionality from about a dozen sites into a new product called JUMP Suite, our publishing platform built for professional services organisations.
It started with the universal content models every client needs: services, people, articles, events, locations, testimonials, each one connected to the others, so a partner's bio links to her articles, her events and her practice area without an editor wiring anything up.
Then the client-specific work started compounding. A long-form storytelling module built for one client's digital magazine was reused for another's brand story. A benchmarking survey tool built for an actuarial consultancy was redeployed for a procurement consultancy's for client onboarding. A quote-and-order module built for one client's Microsoft NAV system became the pattern for another client's Oracle NetSuite integration. We've even learned to spin up sub-brand sites from an existing client's codebase: two product brands sharing one core, two sites for less than the price of one and a half.
None of this required us to modify the CMS code; the django architecture meant we could extend the functionality whilst not losing the support for the core code.
There's a security dividend in building this way, too. The plugin ecosystem around WordPress is enormous, but every third-party plugin is somebody else's code, somebody else's release schedule and somebody else's vulnerability, and agencies pay for it in hours spent every month updating and patching client sites.
We took a different route: every piece of functionality on our sites is built by us, as Django apps within the platform. We know exactly what's running, we know it's up to date, and we know there's no abandoned plugin quietly becoming a potential vulnerability. Annual independent penetration testing keeps us honest, and because the codebase is shared, fixes roll out across every client site at once.
Editors are users too
Before Compound Partners, our founder Mike Barrett spent years building CMS systems for publishers, which left him with a conviction the industry still hasn't recognised: editors are users too, and they are the most forgotten users in software. Commercial CMS products ship with enormous feature sets that most editorial teams never use, wrapped in interfaces nobody designed for the person publishing at 4:45 pm on a Friday afternoon.
django CMS enabled us to factor this into the platform. Because the editorial interface can be tailored per project, we strip out everything a team doesn't need and hand over control of everything they do: pages, components, navigation, campaign content, even animations, all edited in exactly the same way in both the admin interface and directly in the frontend.
The payback for this is an overhead that most agencies don't talk about: our support load is tiny, around one support ticket per week from around 40 full-time content editors. That is because editors are trained once, and the sites are designed to give them full control of the content, so they quickly become self-sufficient. For an agency, this has a double benefit. Support hours you don't have to fund, and clients who stay for years because they're empowered rather than trapped.
The commercial benefits
The proof that this works is in the relationships, because professional services firms don't stay with an agency out of habit. They stay because the platform keeps delivering.
We support around a dozen websites for organisations that collectively turn over more than £750 million. Our shortest client relationship is seven years old. Several run well past a decade: Barnett Waddingham at thirteen years, Efficio at eleven, Newbury Building Society at ten, Gateley at eight. Our personal relationships with our key contacts extend back further, with several re-engaging us when they moved jobs.
- Barnett Waddingham, the UK's largest independent actuarial consultancy, has been with us through thirteen years, two major redesigns and 300% organic growth. After we rebuilt the caching layer with Cloudflare, the site has run at 99.99% uptime with response times of 300 to 500 milliseconds.
- Gateley, a top-40 UK law firm and listed professional services group, relaunched on the platform in 2024. The site is 82.5% faster on average, conversions rose 36% in the first month, and pages rated A+ for carbon efficiency went from 2.2% to 92.9% of the estate.
- Sontay, a global building-controls manufacturer, runs a multilingual distributor portal with per-distributor pricing and ordering integrated into their ERP. Sessions went from a few hundred to ten thousand per month.
Different firms, different problems, one codebase philosophy. That's the margin story we would tell agency owners: the second deployment of anything is where the profit lives, and django CMS is built for second deployments.
A dozen substantial sites, relationships measured in decades, and a support load small enough that the same team keeps building rather than firefighting. That's what the platform decision compounds into.
The AI layer
The decision is also paying off in a way we could not have planned for fifteen years ago. AI search now reads websites as much as people do, and it strongly prefers structured content to complex HTML pages.
Because django CMS treats content as structured data rather than rendered pages, we were able to build AI readiness directly into the platform: schema applied automatically across every template, content plugins that emit structured markup behind the scenes, and FAQ and How-To tools that let editors publish machine-readable answers without cluttering the page for human visitors.
Python helps too. The language of our CMS is the language of the AI ecosystem, so the same stack that serves the website can run the integrations our clients are now asking for.
One thing to be completely clear about: open source does not mean free. What you save in licence fees you spend on capability, on developers, skills and contribution. The difference is that the capability belongs to you, compounding year on year, rather than becoming part of a vendor's pricing tier.
Part of the community
The longer we've built on django CMS, the more the line between using the platform and maintaining it has blurred. Compound Partners is a member of the django CMS Association, and our managing director, Mike Barrett, serves as the Association's Vice President, responsible for the AI workstream. When your agency runs on a platform, having a seat at the table where its future is decided is the strongest insurance policy you can have.
We didn't realise it at the time, but we didn't just pick a CMS fifteen years ago. We picked a platform, a business model, a community and a say in what comes next.