The day a brand wants to leave, it discovers what it truly owned. Before that day, the difference between owning and renting does not show: the site loads, the back office responds, all is well. It gets paid in one go, at the exact moment when nobody has the time any more.
The rent that appears on no invoice
A site built on a closed platform is not yours. You occupy a spot. The day the price goes up, the platform changes its rules, removes a feature or shuts down, you take nothing usable with you. Your pages live in a format nobody else knows how to read, and the export, when there is one, returns a tag soup that has to be retyped.
Migrating means rebuilding everything. The quote for the migration looks like the quote for the original site, except that you pay it a second time, without the budget that went with it.
A closed platform gets more expensive to leave the better you use it: every article published, every setting patiently worked out raises the exit cost.
The domain first, and nothing before it
The domain name is the only asset you truly own. Everything should hang off it: the site, the email, the identity. A domain of your own, at a neutral registrar, and the rest can move without breaking anything.
It is the first decision in a project, and the one that gets rushed through the fastest, probably because it costs a few euros a year and looks like nothing at all.
Files, not a captive database
The content of this site lives in text files. Each note in the journal is a Markdown file in src/content/journal/, whose file name makes the URL, with no intermediate field and no identifier to track down. Astro compiles everything to static HTML.
There is no database, so there is nothing to export: the git repository is the content. With, as a bonus, the history of every sentence. I can say which day a phrase changed and what it said before.
Changing host comes down to pointing a domain elsewhere and running a build again. The backup is the normal way of working: any copy of the repository is a complete site.
Nothing is held prisoner, not even by me: this site runs to 242 pages, in 2 languages, from files that all fit in one folder you can read with a text editor.
Picking the site up without phoning me
A client who depends on their developer is no better off than a client who depends on a platform. They have changed landlord, that is all.
A site in Astro, Markdown and git can be picked up by any front-end developer, with nothing to guess: the decisions can be read in the commits, the project rules are written in a file at the root. So the question to ask about a contractor is « what happens if they are no longer there ».
It is also why editing goes through Sveltia, an existing CMS, and not through a home-grown tool. A home-grown tool would have made me indispensable. Very pleasant for me, very bad for the client, and perfectly invisible as long as all is well.
What leaving really costs
Renting stays more comfortable at the start: you are up and running in an afternoon, with no technical decision. For testing an idea, it is often the right choice.
The cost does not appear at the outset. It appears on the way out, and it lands at the worst possible moment, since you only look to leave when something is no longer working. Owning, by contrast, takes one technical choice made at the right moment, and that choice costs almost nothing on the first day.
If this site left Netlify tomorrow, everything would leave with the repository except three things, to be rebuilt: the contact form, the admin’s authentication relay (netlify/functions/oauth.mjs, 169 lines) and the HTTP headers in netlify.toml.



