Why this is the first thing we say
Software relationships that end badly tend to end the same way. The platform works, the business grows, and then the terms change: a licence goes up, a feature moves behind a tier, a roadmap turns somewhere you did not want to go. By then the cost of leaving is the whole system.
That leverage only exists because someone else holds the code. We took the opposite position: the software we build for you is yours from the first commit, and you receive the whole running system with it. If we are the right team to keep building it, you will keep us because the work is good, not because leaving is expensive.
SPREP is what that looks like over time. We redesigned sprep.org and rebuilt its Drupal theme in 2017, and SPREP came back to us for the second redesign in 2024. It has since given us further sites built from the same base, which we maintain. The SPREP case study has the detail.
What "you own it" actually means
Ownership is easy to claim and easy to hollow out. Here is the specific version.
The full source, not a deployment
You get the repository: application code, custom modules, theme, build tooling and deployment configuration. Not a compiled artefact, not access to a hosted instance.
Host it wherever you like
Built on Drupal and open-source infrastructure, so it runs on your servers, your cloud account, or ours. There is no proprietary runtime that only we can operate.
Hire anyone to continue it
Drupal coding standards, automated test coverage on the code we ship, and documentation written for a developer who has never met us. Another team can pick it up.
No licence on your own platform
No per-seat fee, no annual renewal to keep your system running. When your system starts from one of our platforms, you still receive the whole running system and its source code. Agencies who bring a platform to their own clients deploy it together with us, under their name: see partnerships.
Warranted after handover
On development projects, one year of warranty by default and up to three, from the team that built it, with Drupal core and contributed security releases applied during the term. Ownership does not mean being left with it: the warranty terms set out what is covered.
A fixed price you agreed first
Scope and cost are committed once the architecture is agreed, so the commercial terms do not shift after you are already dependent on the result.
What you hold at handover
Ownership from the first commit means there is no single handover event to miss: the repository sits in an account your organisation controls while the work is done. What acceptance adds is the check that everything around the code is in your name too.
Sample Handover checklist Signed off at acceptance
Code
- Repository in your organisation's account
- Release tag matches production Checked against the live site
- Build and deploy steps documented
Access
- Domain, DNS and hosting accounts in your name
- Admin accounts listed by role
- Our access removed when you ask Confirmed in writing
Documentation
- Content model and editorial roles
- Runbook: deploy, rollback, restore
- Open issues and known risks
When the work comes through an agency
When an agency brings us in, bespoke work is assigned with the full source from the first commit to the agency, as the party that signs with us, and onward to its client under the agency's own contract. We do not sit in the middle of that chain. When the work starts from one of our platforms, we deploy it together with the agency, under its name, and the client receives the running system and its source code.
What to ask any vendor before you sign
These questions have answers you can check, which is the point of asking them. Ask them of us too.
- Who owns the source code, and from what date? "On final payment" describes a handover event, and handover events are what gets skipped when a relationship ends badly.
- What exactly is included in "the code"? The repository, including custom modules, theme, build tooling and deployment configuration, or only a deployed copy?
- Is there any licence fee on our own system? And does the answer change as the number of users grows?
- Whose name is on the domain, the DNS and the hosting account? Give a supplier access to them, not ownership of them.
- Is documentation a deliverable? In the repository, written for a developer who has never met the team that wrote it.
- What happens if you become unavailable? A supplier who has thought about it answers with arrangements, not with reassurance.
The full list, with what a good answer sounds like, is in the questions to ask a Drupal agency before you sign. If you already own a system someone else built and the supplier has gone quiet, taking it over starts with an audit: see Drupal maintenance and support.
Who this matters most to
Public sector and intergovernmental buyers, where procurement rules often require that the delivered system can be maintained independently of the supplier. Organisations funded programme by programme, whose systems outlive any single vendor contract. And any business that has already been through a platform migration it did not choose.
If you are none of those, ownership still costs you nothing here: it is simply how we contract.
Questions we get asked
- Do we keep the code if we stop working with you?
Yes. It is already in your account, so there is nothing to hand back and nothing to negotiate. Another Drupal team can continue from the repository and its documentation.
- Does a system built on one of your platforms come with its source code?
Yes. You receive the whole running system and its source code: the platform as deployed for you, the modules and configuration built on top, the theme and the deployment setup.
- Who owns the code when an agency hires you?
The agency, as the party that signs with us, from the first commit, and its client after that under the agency's contract.
- Is ownership priced as an extra?
No. It is how every client build is contracted, and there is no licence fee on your own system.
See what we have delivered · Warranty terms · How we price · What we build
See it working before you commit
We build a working prototype first, so you decide against something real.