Skip to content
Budget and decisions

Reversibility: not depending on your provider

Source code, access, hosting, data, documentation: what to set up from the contract stage so you can switch providers without starting over, and what a poorly prepared exit costs.

By Damien Ladurelle · Updated · 7 min read

Contents
  1. The five elements of reversibility
  2. Access: the most neglected point
  3. Documentation and technical choices
  4. Source code escrow
  5. What a poorly prepared exit costs
  6. When full reversibility is not realistic
  7. My terms, and where to start
In short

Reversibility means being able to switch providers without losing your software: source code and rights assigned to you, hosting and service accounts in your name, exportable data, up-to-date documentation. It is set up in the contract, before the first euro is spent, not when you part ways.

You choose a provider to build something, rarely with the breakup in mind. Yet it is when you want to switch, because the provider is no longer available, the relationship has soured or your needs have grown, that you find out whether you are free or locked in. Reversibility is prepared in the contract, and it costs almost nothing if it is planned from the start.

This page gives practical guidance. It does not replace advice from a lawyer or legal specialist.

The five elements of reversibility

Element What to obtain Risk if it is not planned
Source code and rights Written assignment of rights, delivery of the complete code You can neither modify the software nor have someone else take it over
Code repository Direct access to the repository (history included), in your name or shared The code reaches you late, incomplete or without history
Hosting and services Accounts in your name: server, database, domain, email, payments In practice, the provider can cut off access
Data Full export in a standard format, at any time Data trapped in a format or a tool
Documentation Setup, architecture, configuration variables, procedures The new provider spends weeks figuring things out

The first point is legal: under French law, rights in software built by an outside provider must be assigned in writing. The details are in code ownership: what to require in the contract. The other four are practical, and often matter more day to day.

Access: the most neglected point

Holding the rights to the code is useless if the server, the database and the domain name sit in the provider’s account. In practice, this is the most common form of dependency: not a legal question, a password question.

My recommendation is simple: every service is opened in your name and paid by your company, and the provider is invited as a user. Hosting, database, domain name, email sending, payment account, AI API keys. If you switch providers, you remove one user; you do not negotiate anything.

Documentation and technical choices

Code is reversible if someone else can understand it. Three choices help:

  1. A mainstream technology. A widely used stack (in my case React, TypeScript, Node.js, PostgreSQL) is easier to take over than an in-house framework or a proprietary platform.
  2. Documentation kept up to date: how to install the project, how it is organized, how to deploy it.
  3. Automated tests on the critical parts, so whoever takes over can make changes without breaking things.

No-code tools and some AI app builders raise a real question here: the software sometimes cannot be exported as usable code. The guide on taking over a no-code app covers this case.

Source code escrow

Escrow is a contractual mechanism: the supplier deposits the essential elements of a piece of software with a third party, and the client can retrieve them if the supplier fails, under the conditions set in the contract. In France, the Agence pour la Protection des Programmes (APP, page in French) offers this service; among possible triggers it lists the supplier’s receivership or disappearance, failure to meet commitments and the end of maintenance (page checked in October 2026). Similar services exist in other countries.

Escrow is mostly useful when you only hold a license, for example on vendor business software. For custom development where the code and rights are assigned to you, with direct access to the repository, it becomes secondary.

What a poorly prepared exit costs

Without reversibility, switching providers often means recovering access one account at a time, rebuilding the code from what is running in production, documenting after the fact, and sometimes rebuilding everything. A new provider then starts with an audit to assess what can be salvaged: $660 (€589)excl. VAT for an express audit, $2,300 (€1,990)excl. VAT for a full 5 to 7 day audit. The takeover quote comes next.

On the other hand, with an up-to-date repository, accounts in your name and documentation, another developer can take over the project without starting from scratch.

When full reversibility is not realistic

With off-the-shelf software, you will never get the code back: that is not the point. Reversibility is then limited to your data. Check that a full export is possible, its format, and what happens when the subscription ends. That is an acceptable choice for a standard tool, as long as you make it knowingly.

My terms, and where to start

With me, the source code and rights are transferred once the project is paid in full, along with all access; hosting and third-party services are in your name and paid by you. These terms are detailed on the pricing page. To size a project’s budget, the estimator gives you a range in one minute.

  1. Take stock of your current tools: who holds the access, where is the code, where is the data?
  2. Move accounts into your name, even if you are not switching providers.
  3. Add a reversibility clause to your next contracts, reviewed by your lawyer.

Frequently asked questions

What is a reversibility clause?

It is a clause that organizes the end of the relationship: what the provider must hand over (code, data, documentation, access), in what format, within what time frame and on what financial terms. It is common in cloud software and managed services contracts.

Is source code escrow useful for custom software?

Escrow mainly protects a client who only holds a license: the code is deposited with a third party and released to the client if the supplier fails. If the code and rights are already assigned to you, with direct access to the repository, it becomes much less necessary.

How much does switching providers cost?

It mainly depends on the state of the code and documentation. A new provider usually starts with an audit to assess the takeover. My express audit costs $660 (€589)excl. VAT and the full audit $2,300 (€1,990)excl. VAT, before any takeover quote.

Is my data mine even if the code is not?

Your data is yours, but you still need to be able to get it back in a usable format. Check that the contract provides for a full export, in a standard format such as CSV or a database dump, at any time and at the end of the contract.

Is this page legal advice?

No. It gives practical guidance to help you prepare your contracts. For drafting reversibility and assignment clauses, work with a lawyer or legal specialist in your jurisdiction.

Not sure about your project?

Let’s talk for 30 minutes: I’ll tell you honestly which option I would choose in your place.

Book a 30-minute call Version française