Skip to content
Working Together

Owning Your Build: Code, Accounts, and Data

Ownership is not a clause in a contract — it is a checklist of accounts and repositories in your name. Here is the full list, and the questions that reveal who really holds your software.

3 min read

Almost every agency will tell you that you own your software. Far fewer can hand it over on a Friday and have it still running on Monday without them. Ownership is not a sentiment or a contract clause — it’s a specific, checkable list, and it’s worth going through before you sign anything rather than after a relationship sours.

The checklist

The code

In a repository your organisation owns, with your people holding admin. Not shared as a zip file at the end. Not in an agency account you have read access to. If the only complete copy of your software lives somewhere you cannot administer, you don’t own it yet.

The accounts

Hosting, domain, DNS, database, email delivery, payment provider, error tracking, analytics, any AI or third-party API keys. Registered to your company, billed to your card, with your admin users. It’s common and convenient for an agency to open these “temporarily” — and it’s the single most common way ownership quietly fails to transfer.

The data

Your database, your uploads, and a backup you can actually restore from — in a location you control. A backup you’ve never tested is a belief, not a backup.

The knowledge

How to run it locally, how to deploy it, what the scheduled jobs do, which third parties it depends on, and what breaks first under load. Written down, in your repository. This is the part most often missing, and it’s what turns owning the code into being able to use it.

Why this gets skipped

Rarely malice; usually momentum. Setting up accounts in the client’s name on day one is slower than using ones the agency already has, and at the start everyone is focused on shipping. Then the project ends, the handover is a meeting rather than a process, and two years later nobody remembers which email address owns the DNS.

The commercial version is real too. A team whose clients could leave easily has to be worth staying with, which is a harder business to run than one where leaving is technically painful. Worth knowing which kind you’re dealing with.

Questions worth asking before you start

  • Whose name will the hosting, domain, and third-party accounts be in on day one?
  • Can a developer who has never seen this project get it running locally from the README alone?
  • If we parted ways next month, what exactly would you hand over — and what would we still need you for?
  • Where do the backups live, who can restore them, and when was a restore last tested?
  • Is any part of this built on a platform or licence that is yours only while we’re working together?

The last one matters most with AI features, where it’s easy to end up renting the part of your business that makes the decisions.

Our position, and its cost to us

We set accounts up in the client’s name from the first week and write the handover documentation as we go, not at the end. It makes the first week slower and it means a client can leave whenever they like. That’s the trade we prefer: if you stay, it should be because the work is good, not because leaving is expensive.

Not a pitch Not sure which path your workflow needs? Book 30 minutes. We’ll map where a generic tool is enough — and where it isn’t. Even if the answer isn’t us. Book a discovery session
FAQ

Common questions

What should be in a handover, concretely?

Admin access to every repository and account, a README that takes a new developer from clone to running locally, deployment instructions, an inventory of third-party dependencies and what they cost, and a tested backup and restore procedure.

We already have a site built by someone else. How do we check where we stand?

Work the checklist above, one line at a time, and note anything you cannot verify yourself today. The gaps are usually DNS, error tracking, and email delivery — small accounts that are easy to overlook and painful to lose access to.

Does owning the code mean we can maintain it ourselves?

It means you can choose to. Whether you want to is separate. Plenty of clients own everything and still ask us to run it — that is a decision made from a position of strength rather than lock-in.

Free discovery session
We’ll reply within one business day.