If you're vetting agencies for a serious build, you've probably discovered the industry's quiet trick: the code lives in the agency's accounts, the infrastructure runs on the agency's billing, and leaving means starting over. That arrangement has a name. It's a hostage situation with a monthly invoice.
Here's how we structure builds instead, published so you can use it as a diligence checklist on anyone, including us.
The test of ownership is simple: if you fired us today, what would you lose? The answer should be "our future help," and nothing else.
Every phase ends with something your customers can use, priced in writing before it starts. The first working version ships early on purpose: real usage steers the roadmap better than any planning document, and it means you're never six months deep with nothing but mockups.
Handover isn't a favor at the end; it's built as we go. Setup instructions, architecture notes, and the operational runbook live in your repo, so any competent engineer can pick up the system cold. We aim to be re-hired for the next build because the last one went well, not because we're unremovable.
Partly ethics, partly incentives: an agency that can't hold your project hostage has to keep earning the relationship. Every engagement of ours renews on merit. That pressure makes the work better, and we'd rather live with it than without it.
The client, in the client's repositories and accounts, from the first commit. Anything else creates switching costs that outlive the relationship.
You keep everything running: code, infrastructure, data, docs. The only thing leaving should cost you is their future work.
Code in their accounts, hosting on their billing, no export path, and long reveals instead of early working software. Each one is leverage you're handing over.
Everything we write about, we build. Thirty minutes maps it to your business.