HOT TAKE · LOCK-IN

The AI builder that owns your code: a side-by-side of who locks you in and who doesn't.

Lock-in is rarely overt. It's not a contract clause. It's the cumulative cost of leaving — measured in env vars, runtime quirks, and the parts of the app that only exist in their UI.

LN
Lex Nakamura
Software engineer · Hot takes & deep dives
TL;DR

Six AI builders. Six different cost-of-leaving profiles. The headline metric isn't "do they have export," it's how many hours does it take to actually run elsewhere. We measured. The spread is from "20 minutes" to "this is a rewrite."

The metric: cost-of-leaving

I made a single number for each tool: how many hours to take a finished project off the platform and run it on a different runtime, with the same features. Same app each time (small SaaS — auth, DB, file upload, scheduled job).

The six tools, ranked by exit cost

ToolHours to leaveWhy
buildr.sh~0.3 hr (20 min)Standard repo on user's GitHub. Already deploys to user's Cloudflare. Leaving = stop using buildr; everything keeps running.
Bolt.new~1 hrClean repo. Manual deploy to anywhere.
v0~1 hrStandard Next.js. UI components are portable.
Replit Agent~6 hrReplit-specific config, DB and runtime. Portable but you rewrite the deploy + DB layer.
Lovable~10 hrTied to Vercel + Supabase. Export works but agent stays inside the tool.
Builder X (sandbox)"This is a rewrite"No real export. App lives entirely on vendor's runtime.

"Builder X" is a placeholder for the 2-3 closed-runtime tools where the project literally only exists inside the vendor's UI.

The four lock-in vectors

Lock-in shows up in four places. The expensive tools have all four. The cheap ones have none.

1. Vendor runtime

"Where does the running app actually live?" If the answer is the vendor's container, you're renting. If it's your AWS / Cloudflare / Vercel, you own it. Anything in between is a deception or a not-yet.

2. Proprietary auth or DB layer

Some tools wrap user authentication or database access in their own SDK. When you leave, you rewrite. The portable choices: standard JWT, standard SQL, standard storage APIs (S3-compatible).

3. Undisclosed env vars

The README says "set DATABASE_URL." It doesn't say there are 7 other secrets the platform was injecting at runtime. Discover them one by one when the app crashes locally. This is the most insidious lock-in because you don't see it until you try to leave.

4. UI-resident logic

Some apps have business logic that lives in the builder's UI — workflow nodes, drag-and-drop pipelines, etc. When you export source, that logic is missing. You see UI components, not the workflow that orchestrates them.

The thing nobody talks about

The tools with the highest lock-in are usually the ones with the best demos. That's not a coincidence. The smoothness of the demo is partially funded by the depth of the integration. Smooth = tightly coupled = expensive to leave. There's a Pareto frontier here, and most of these products sit on the wrong end of it.

You can have a smooth demo or a portable app. A few rare tools manage both. Most don't even try.

The escape hatch test

Before signing up, do this:

  1. Build a small app on the tool
  2. Click "export" or "download repo"
  3. Open a fresh laptop. New OS user. No vendor account.
  4. Try to run the project. Time it.

The number you get is your cost-of-leaving in hours, multiplied by your hourly rate, plus the cost of any infra it depends on. If that number is bigger than 6 months of the subscription, you're not a customer — you're a hostage.

Where buildr sits

By design: 0.3 hours. The repo lives on your GitHub from commit one. The deploy lives in your Cloudflare. The DB schema is in schema.sql in the repo. The env vars are documented because they're in the same wrangler.toml the agent uses. There is no UI-resident logic. To leave: stop paying. Everything keeps running.

That is intentionally the floor. Other tools should match it. They mostly don't.

Bottom line

Pick by cost-of-leaving, not by demo quality.

The demo matters for week one. Cost-of-leaving matters for year one. They are inversely correlated more often than not.

Pick the tool with the lowest exit cost.

buildr's exit cost is 20 minutes. Stop paying us; your app keeps running on your Cloudflare. We earn the subscription every month.

Build my app free