Why Ownership Matters
You paid to build your product. You launch. You grow. Then you want to switch developers — and discover your old developer owns the code.
This happens more often than you'd think. And it can kill a company.
The Default Rules (They're Not in Your Favor)
In most countries, the person who writes code owns the copyright — unless there's an agreement saying otherwise. This applies to freelancers, agencies, and contractors.
Employees are different. Code written by employees during work hours typically belongs to the employer. But contractors are not employees.
Without a clear written agreement, your contractor may legally own the code you paid for.
What You Need in Every Contract
1. Work-for-Hire or Assignment Clause
The contract must explicitly state that all work product — code, designs, documentation — is owned by you (or your company). Look for language like "work made for hire" or "assigns all rights, title, and interest."
2. Source Code Access
You should have access to the code repository from day one. Not "upon completion." Not "upon request." From day one.
The repository should be in your account (GitHub, GitLab, etc.) with the developer added as a collaborator. Not the other way around.
3. Third-Party and Open Source Disclosure
Your developer will use open-source libraries — that's normal and expected. But they should disclose what they're using and confirm the licenses are compatible with commercial use.
4. Data Ownership
Your user data belongs to you. The contract should state that the developer has no rights to your data, cannot retain copies after the engagement ends, and cannot use it for any purpose.
5. Termination Rights
If you end the relationship, you keep everything. Code, data, documentation, accounts. This should be explicit and unconditional.
Database and Infrastructure Ownership
Domain Names
Register domains in your company's account. Never let a developer register domains on your behalf.
Hosting Accounts
Cloud hosting (AWS, Google Cloud, etc.) should be in your account. If your developer manages it, they should do so as an authorized user on your account — not theirs.
Database Access
You should have direct access to your database at all times. If your developer sets up the database, get admin credentials immediately.
Third-Party Services
Stripe, email providers, analytics tools — all should be in accounts you own. Use your company email for registration, not the developer's.
Red Flags
- Developer resists giving you code access
- Repository is in the developer's personal account
- No written agreement about IP ownership
- Developer wants to "license" the code to you instead of transferring ownership
- They retain the right to reuse your code for other clients
The Bottom Line
Ownership isn't just about legal rights. It's about control. If you own your code, data, and infrastructure, you can switch developers, pivot your product, or sell your company without anyone's permission.
If you don't own these things, someone else controls your business.
You don't have to figure this out alone. We believe founders should own everything — code, data, and infrastructure. That's why we don't take equity and we set up everything in your accounts from day one. Learn why we do things differently.