What “you own the code” actually means
Plenty of agencies say it. Fewer specify what transfers, when, and whether you could genuinely run the system without them next month.
“You own the code” appears on most software consultancy websites, including ours. It is close to meaningless on its own, because owning a repository you cannot deploy is not ownership in any sense that helps you.
The test that matters
A better question to ask any supplier: if we replaced you next month with another competent team, what exactly would they need, and do we have it today? Work backwards from that and the vague promise becomes a checklist.
- The Git repository, with full history rather than a zip of the final state
- Documentation of the architecture and the decisions behind it
- Infrastructure configuration as code, not instructions in someone's head
- Credentials and account ownership in your name, not the supplier's
- A runbook for routine operations and for incidents
- Access to the people who built it, for a defined handover period
Where lock-in actually hides
Rarely in the licence. Usually in the accounts: the cloud project owned by the agency, the domain registered on their card, the monitoring under their login. Each is small. Together they mean a transition takes months and goes through them.
Ownership you cannot exercise is a sentence in a contract, not a property of your business.
Why we are strict about it
Partly principle, partly self-interest. A client who stays because leaving would be painful is not a reference. A client who could leave easily and chooses not to is the only kind of relationship worth building a company on — and it keeps us honest about continuing to be worth the money.