When the prototype needs a person.
Not every prototype needs a developer. Plenty should stay exactly where they are. Here is the honest line, and what crossing it should look like when you do.
Keep it in the builder while
You are still testing whether anyone wants it. A generated prototype that changes shape every week is a strength, not a liability. Paying for engineering before the idea settles buys you polish on the wrong thing.
Hand it over when any of these become true
Strangers use it: the moment people you do not know trust the app with their time or data, someone has to be accountable for what happens to it.
Money moves through it: payments mean webhooks, reconciliation, refunds, and disputes. This is where drafts hurt people.
It holds data that matters: customer lists, health, anything you would not want leaked with your name on it.
It becomes the business: when the app going down means revenue stops, weekend-project infrastructure is the wrong bet.
What the handover should look like
A fixed-price review first, a written keep-replace-fix list second, build milestones you approve third. You keep ownership of the code and accounts throughout, and the money sits in escrow until each stage is done to your satisfaction.
On Klyftly that shape is the default, with a verified developer matched to your stack and a coordinator keeping the thread. The plan is free; you pay when you want the work to start.
For prototypes that crossed the line.