my-appengineer Learn

Why are people churning from AI app builders?

They build the app on somebody else's sandbox, and the moment they want to take it somewhere else, accept payments, or fix something that broke in production, they discover the app is not really theirs.

Last updated

They build the app on somebody else's sandbox, and the moment they want to take it somewhere else, accept payments, or fix something that broke in production, they discover the app is not really theirs. The churn is not about the AI failing to write code, it is about everything that happens after the code works the first time.

What happens when the app is not actually yours?

Most AI app builders build the app and host it for you. That feels generous until you try to leave. The app lives in their sandbox, their database, their runtime, their proprietary format. Leaving means starting again. That is not a feature you forgot to use, it is the architecture. A hosted builder that let you walk away with the full stack would be giving up the thing that makes its business work.

The result is a churn pattern that looks like dissatisfaction but is really entrapment. A user builds something, it works, they get excited. Then they want a custom domain, or they want to move off the free tier, or they want to connect their own database, or they want to run it on hardware they already pay for. Each of those is a wall. The tool was never the wrong tool for building the app. It was the wrong tool for owning the app.

This is the structural reason a "vibe coded" tool loses users: the vibe gets you to a working demo, but the ownership model means you can never graduate from the demo. You are either on the platform or you are starting over. There is no path between.

Why does the demo-to-production gap cause churn?

A demo is easy to vibe-code. It has no payments, no real database, no users, no persistence requirements. It works when deployed and it is done. The problem is that a demo that later needs to take money is not a demo you can upgrade in place. Payments and persistence reach into every part of the app. The data layer, the session model, the routing, the security boundaries. A demo rebuilt as a product is a different application, and on a hosted builder that means rebuilding it on the same platform that could not hold the real version the first time.

Engineer/#dashboard and took one screenshot of the dashboard screen. The page showed the account workspace labeled "learning" with an "Open Builder" link and introductory text about building and hosting apps on a Kubernetes cluster. None
The apps you own

On this platform the build type is chosen before the first line of written code, because it decides persistence, payments, and how hard QA is. A demo is memory only, one QA pass, done when deployed. A delivery has a real database, payments wired to the client's own account, QA up to four iterations. A product has a real database, payments provisioned automatically, QA up to five iterations. The point is not that you must pick right the first time. The point is that the platform knows the difference, and a rebuild is a real rebuild into a real repository, not a re-export from a proprietary format.

Who maintains the app after the AI builds it?

The maintenance cliff is where most AI dev tools lose people. The app works on day one. On day thirty, a dependency has a security advisory, or the database needs a major version upgrade, or a build that used to finish in two minutes now hangs because a step limit was set too low and the work re-dispatches hourly while nobody collects the results. These are not hypothetical. A major Postgres bump from 15 to 16 on this platform crash-looped a database because Postgres does not upgrade its data directory across a major version on start. The container came up, refused the existing data, and restarted forever. The fix was to pin the database to its major version and make a major upgrade a deliberate migration, never a tag change. That is the kind of thing that happens to AI-built apps, and a hosted builder that hides the infrastructure from you also hides the fix from you. You file a ticket and wait, or you leave.

Long-term maintenance of AI-built apps is a real question with real costs, and it is covered in more detail at /learn/how-do-you-maintain-ai-built-apps-long-term.

What actually breaks when you run AI-built apps?

Storage replicas starved etcd on this platform. Longhorn was configured with multiple replicas on what was a single node. The replication traffic and disk contention starved etcd until the control plane crash-looped and the cluster stopped responding. The fix is a rule: on a single node, one replica. Redundancy across replicas of the same disk is not redundancy, it is load.

A build capped its own step limit and looped forever. A walk was given a step limit shorter than the work honestly took, so it was killed and re-dispatched hourly while the abandoned run kept finishing successfully with results nobody collected. Eight runs in one night, millions of tokens. Now the browser decides what is alive, and work that finishes after a timeout is still collected.

These are the things that actually break, and they break on infrastructure, not in the AI's code generation. A tool that only gives you the code generation and none of the infrastructure gives you nothing to fix these with. That is the churn. People do not leave because the AI got worse. They leave because the moment something real breaks, they have no levers to pull.

What this platform does about it

my-app.engineer puts every app in a Kubernetes cluster the user owns from the first deploy, as a real Helm release on K3s, in a namespace that belongs to the account. The source is a real repository, not a proprietary format. You can join your own hardware as a node over a private network, and pods schedule onto it like any other node. A separate QA agent opens the deployed app in a real browser and checks it against the blueprint. Deployments use helm upgrade --atomic, so a release that fails its health checks rolls back rather than half-landing. The cluster tools, from Ghost Browser for logged-in sessions to Velero for backups, install into the same cluster. The answer to churn is not a better vibe. It is ownership of the thing that actually runs.

Build an app and own the cluster it runs on