← All insights
Practice·5 min·June 1, 2026

What “you own the IP” actually means in our contracts

RDVC

“You own the IP” is easy to say in a sales call and easy to get wrong in the paperwork. We treat it as three concrete things that all have to be true at once: the rights are assigned to you in writing, nothing third-party encumbers that ownership, and you can actually run the system without us. Miss any one of the three and the sentence is decorative.

The first part is the assignment clause. We structure the work as work-for-hire and, because work-for-hire alone does not cleanly cover every category of deliverable in every US jurisdiction, we add a present assignment of all right, title, and interest in the work product to you. The transfer is conditioned on payment - rights vest as invoices are settled - so the trade is plain on both sides. There is no separate license back to us and no carve-out where we keep the interesting parts; what you commissioned is yours.

The second part is the third-party and open-source handling, which is where ownership quietly leaks if no one is watching. Every dependency we bring in is tracked with its license, and we keep to permissive licenses - MIT, Apache 2.0, BSD - for anything that ships inside your product. We do not pull a copyleft library into the core of a proprietary codebase and hand you an obligation you did not agree to. You receive a dependency manifest with the licenses noted, so the thing you own is genuinely yours to relicense, sell, or close as you choose.

The third part is the operational handover, and it is the one most contracts skip. Owning a system you cannot deploy is owning a photograph of a system. So the handover is a deliverable in its own right: the full repository with its history, a runbook that covers build, deploy, rollback, and the common failure modes, and every credential and piece of infrastructure transferred into accounts you control. No keys held on our side, no service quietly pointing at our infrastructure, no step that only works because someone here remembers it.

The test we hold ourselves to is simple: the day after handover, your team can clone the repository, follow the runbook, ship a change, and roll it back without sending us a message. That is the difference between a clause and a transfer. Ownership you cannot run is not ownership - it is a dependency with better wording.

Want engineering like this?

Newsletter

Notes from the team, now and then.

Occasional, engineering-grade. No spam, unsubscribe anytime.

Start a project →