Fix a half-built app most of the time, and rebuild only when the base itself is the problem. The main signals are a wrong data model, security flaws built into the base, or code so tangled that every fix breaks something else. Even then, you keep the most valuable part: everything you learned about your product.
You have an app that is almost done. It works in the demo, but every week brings a new bug, and the finish line does not get closer. At some point a hard question comes up: do we keep fixing this, or do we rebuild it? This article is about that one decision. It is the step after the audit, and it is where most of the money is won or lost.
Fixing is the default, and it should be
Let us start with the honest answer: most of the time, you should fix it. In our audits, the most common outcome is a rescue. The foundation holds, the work is really most of the way there, and we finish it, harden it and ship it. We explain that process step by step in our guide to finishing a half-built app if you want the full picture.
So a rebuild needs a reason. "The code is ugly" is not a reason. "A new developer prefers another tool" is not a reason either. A rebuild is only worth it when fixing would cost more, take longer or carry more risk than starting the foundation again.
Signals that point to a rebuild
No single sign decides it. But when several of these show up together, fixing usually becomes the slow and expensive path:
- Every fix breaks something else. If one change in the payment screen breaks the login, the parts of the app are tangled together. Each new fix then costs more than the one before.
- The data model is wrong. The data model is how the app stores its information: users, orders, bookings. If it was designed badly, almost every feature sits on top of the mistake. Changing it later means touching everything.
- Security problems are built into the base. An exposed key can be fixed in an hour. Data that leaks between user accounts because of how the database was set up is a different problem. It often means the base has to be redone.
- It only runs inside the tool that made it. Some AI-built apps work well in the builder but will not run anywhere else. If moving the app out is harder than rebuilding the base, that tells you something.
- Nobody can say what is really done. When screens look finished but the logic behind them is missing, the "90% done" can be much less.
- You cannot get the code. If a previous developer will not hand it over, you may have no choice. The old app then becomes the reference for a new build.
Rebuild does not mean starting from zero
Many founders fear a rebuild because they picture throwing everything away. That is rarely what happens. There are two kinds of rebuild, and they are very different in cost.
- Rebuild the foundation. The interface and the idea are worth keeping. The plumbing underneath is not. We keep the screens, the flows and the good parts, and we re-lay the base: the data model, the logins, the security and the hosting. This is often faster than trying to untangle the old base.
- Restart. Sometimes a clean build really is the fastest route. Even then, your existing app is not wasted. It becomes the brief: every screen, every flow and every lesson from real users tells the new build exactly what to do.
In both cases you are not paying to rediscover your product. That work is already done. You are paying for a base that can carry it.
A rebuild is not a failure. Paying again and again for fixes that do not hold is the real failure.
What each path really costs
People compare the price of fixing with the price of rebuilding. That comparison misses half the costs. Here is a fuller list.
The hidden costs of fixing a weak base:
- Each change takes longer, because the developer must work around old problems first.
- Bugs come back after launch, when real users find them instead of you.
- New features get harder to add, so the app slows down just as it should grow.
- Security risks stay in the base, even when the visible bugs are gone.
The real costs of a rebuild:
- You pay for some work twice. This is the cost everyone sees, and it hurts.
- It takes time before you can launch, and that time has a price too.
- If the app already has users, their accounts and data must be moved over with care.
There is also the cost of waiting. An app stuck at "almost done" earns nothing and teaches you nothing. The longer the decision waits, the more both paths cost.
The risks of a rebuild, and how to reduce them
A rebuild has its own traps. Knowing them in advance removes most of the danger.
- The scope grows. "While we are at it, let us add…" is how rebuilds stall too. Fix the scope first. Rebuild what you have, then add new features after launch.
- Things that worked get lost. Small details users relied on can disappear. Write down every flow in the current app before the work starts, and check each one before launch.
- The same mistakes return. If the first build had no clear plan, a second build without one will end the same way. A fixed scope and a timeline are what protect you.
- You depend on one person again. Make sure the code, the hosting, the database and the domain are all in your name from day one. Choose a common, proven stack, so the next developer can pick it up if needed.
Questions to ask before you decide
Whoever gives you the verdict, ask them these questions. Clear answers are a good sign. Vague answers are a warning.
- Can you run the app outside the tool or laptop it was built on?
- Which parts would you keep, and which would you replace, and why?
- Is the data model sound? What would it take to change it?
- Are there security problems in the base, or only on the surface?
- What is the fixed scope and the timeline for each option?
- If the app has users, how do their accounts and data move over safely?
Be careful with anyone who recommends a rebuild before they have read the code. Be just as careful with anyone who promises a quick fix without reading it. Both are guessing.
The bottom line
Fixing is the right answer most of the time. A rebuild is right when the base itself is the problem: a wrong data model, security flaws built in, or code so tangled that every fix breaks something else. Even then, you keep the most valuable part, which is everything you learned about your product.
The only way to know which case you are in is to have the code read by someone with no reason to push one answer. That is what our rescue audit for half-built apps is for: a fixed price, an honest verdict and a roadmap that is yours to keep. If the verdict is a restart, you can also read what an MVP costs in 2026 to plan the budget.



