If you are asking this question, you have probably already spent money once. Maybe an agency delivered something that almost works. Maybe an in-house build stalled when your developer left. Either way, you are not pricing an app: you are pricing a second attempt, and second attempts follow different math than first ones.
An estimate made before the existing code, data and operating behavior are reviewed carries assumptions. Ask what is included and what could change the quote. This guide gives you a framework for comparing repair and replacement, the work an estimate should include, and the evidence needed to choose a next step.
We are not publishing a universal rebuild price without comparable, approved project budgets. A repair that retains the data model and release path is a different purchase from replacing a platform, migrating customers and maintaining two releases during cutover. TDAT scopes those responsibilities before quoting.
Compare a targeted repair with a replacement
Illustrative scope comparison: a repair might preserve the current customer accounts and correct a broken payment-to-access flow. A replacement may also require migration mapping, parallel operation, reconciliation and rollback. Ask whether both proposals include those responsibilities before treating their totals as comparable.
Why rebuilds are priced differently than new builds
A rebuild may carry useful assets: customer feedback, working design, tested business rules and components worth keeping. Establish which of those are actually present. The second build can then reuse verified knowledge from the first. It is not a guarantee of a lower price: the useful question is which decisions and working components can actually be kept.
It also carries liabilities: nobody knows what is buried in the old code until someone reads it, data may need to be migrated without losing customers, and the old system might need to keep running while the new one comes up. Where important behavior is unknown, scope a bounded assessment before committing to a replacement plan.
The five factors that actually move the price
1. Scope discipline. Decide whether the next release needs every existing feature. Review actual use, customer requirements and operational dependencies before cutting anything. Removing a feature can remove implementation work, but the effect on cost depends on the dependencies and behavior that must remain.
2. Integrations. Payments, calendars, phone systems, CRMs, AI providers: each external system the app talks to adds real work, and legacy integrations that no longer have maintained APIs add more. Count your integrations before any pricing call.
3. Data migration. Inventory the records, files, configuration and history that must survive. Even an app without external customers can have important operating data. Price the mapping, cleanup, rehearsal, reconciliation and access checks required for the replacement to use that information correctly.
4. Security and review requirements. Identify the data, privileged actions and customer requirements the product must support. Agree the controls, evidence and review responsibilities before pricing the build. If contractual or regulatory obligations apply, establish them with the appropriate advisers rather than treating this cost guide as a compliance review.
5. Who is building and reviewing. Compare the relevant experience, implementation and review responsibilities, delivery evidence and operating handover. An hourly rate does not tell you the total work or risk included. Compare proposals against the same scope, assumptions and acceptance conditions.
What a rebuild estimate should separate
Ask for distinct lines for assessment, retained components, replacement implementation, migration, parallel operation, release verification and handover. Identify which lines are fixed, which depend on an unresolved question and what investigation would resolve it. This lets you compare two proposals without treating different scopes as equivalent.
Migration deserves an acceptance plan of its own. Which records and files move? How are relationships, historical states and customer access checked? Can you reconcile the result before retiring the old system? A successful import job is useful evidence, but the business still needs to verify that the imported product behaves correctly for its users.
AI-generated replacement code still needs a release plan
A generated replacement may make the interface appear quickly. It does not establish that the old system’s customer rules, data relationships and integration behavior have been reproduced. Ask for a list of those behaviors and tests that compare the replacement with the required outcome. Judge the working system rather than the volume of generated code.
Keep the current release available while the replacement is reviewed, where the architecture and operating constraints allow it. Define the cutover conditions and the recovery path if reconciliation or a critical journey fails. Those responsibilities remain part of the work regardless of how the code was written.
When a rebuild is cheaper than continuing
Compare a repair, a partial replacement and a broader rebuild against the same required journeys. Include investigation, migration, continuity, regression checks and operating responsibility in each option. A lower headline quote may simply exclude work that another proposal includes.
Fix, refactor or rebuild: compare the affected boundary
Choose from evidence about the current product
- Approach
- Focused fix
- Evidence that supports it
- A reproducible failure with a bounded cause; the wider journey works
- Work still to price
- Repair, regression checks and deployment
- Approach
- Refactor a component
- Evidence that supports it
- The behavior is useful, but the implementation blocks safe changes
- Work still to price
- The component boundary, compatibility and regression tests
- Approach
- Replace part of the system
- Evidence that supports it
- One subsystem cannot meet requirements; other parts remain sound
- Work still to price
- Integration with retained parts and any affected data migration
- Approach
- Broader rebuild
- Evidence that supports it
- Assessment shows that bounded repairs cannot support the required product
- Work still to price
- Replacement, migration, continuity, cutover and operating handover
| Approach | Evidence that supports it | Work still to price |
|---|---|---|
| Focused fix | A reproducible failure with a bounded cause; the wider journey works | Repair, regression checks and deployment |
| Refactor a component | The behavior is useful, but the implementation blocks safe changes | The component boundary, compatibility and regression tests |
| Replace part of the system | One subsystem cannot meet requirements; other parts remain sound | Integration with retained parts and any affected data migration |
| Broader rebuild | Assessment shows that bounded repairs cannot support the required product | Replacement, migration, continuity, cutover and operating handover |
Avoid comparing an open-ended repair with an unrealistically complete rebuild plan. Both options need the same target journeys, assumptions and release conditions. Where the evidence is incomplete, price a bounded investigation before committing to either path.
Write a cutover and recovery checklist
- Identify the release, records and integrations the old system currently serves.
- Rehearse migration using a safe copy and reconcile the required records and files.
- Test the replacement’s critical customer and staff journeys.
- Define who approves cutover and what evidence they need.
- Document how to restore or recover service if the cutover fails.
Then account for ongoing costs. The app build and operating-cost guide explains how to separate implementation from recurring charges and compare proposals on the same scope. A second attempt does not automatically qualify for a lower price.
Salvage can retain parts of the codebase that work and replace a defined weak boundary. That can reduce replacement work, but integration and retained constraints still need pricing. An assessment establishes whether the boundary is practical. Our rescue process starts there for exactly that reason.
Getting a quote you can actually trust
- Insist the estimate comes after someone reads your code, and pay for that read if needed. Agree a bounded review with written findings, exclusions and the decisions it must support.
- Require the quote in fixed-scope form, in writing, with what is excluded stated as clearly as what is included.
- Confirm everything lives in your accounts from day one: repository, hosting, domain. A proposal should identify any ownership, provider or transfer constraints explicitly.
- Ask what could be deferred and why. Compare the effects on the customer journey, total cost and evidence needed after the first release.
Not sure yet whether you are rebuilding, finishing, or walking away? Take the 2-minute salvageability quiz as a conversation prompt, not a technical verdict, or read the 12 signs your dev team is failing you if the real question is about the team you already have.
Hire TDAT to scope your app repair or rebuild.
Compare retaining the working system with replacement, including migration, continuity, acceptance and handover responsibilities before committing budget.
Hire TDAT for your projectQuestions founders ask
Is rebuilding always cheaper than fixing?
No. Compare the verified cost and risk of a repair with replacement, migration, parallel operation and support. Reuse can save work, but a rebuild can introduce obligations a repair avoids.
How do I choose between refactoring and rebuilding?
Ask which specific boundaries prevent the required change. A focused improvement may be enough when the rest of the system works; broader replacement needs evidence that a bounded repair is not maintainable.
Which lines should a rebuild estimate include?
Data migration, old-system continuity, customer behavior hidden in the existing app, integrations, release verification and operating support should all be addressed.
Can you quote before seeing the current system?
A high-level conversation can identify assumptions, but a defensible rebuild scope needs an assessment of the implementation, data and required outcomes.