It's the first question almost every founder or business owner asks, and it's also the question that's impossible to answer honestly with a single number. A simple MVP with one core workflow and no integrations can cost a fraction of what a multi-role enterprise application with five third-party integrations costs — and both of those are legitimately "a custom application."
What actually determines cost isn't the word "app" — it's a handful of specific decisions: how many platforms you need to support, how many systems it has to talk to, how much of the design and UX work is genuinely custom versus using established patterns, and how much testing and post-launch support the use case demands. Understanding those levers is more useful than any flat number, because it lets you make the trade-offs that actually change your budget.
A cross-platform build (one codebase for iOS and Android, using something like Flutter or React Native) is typically faster and cheaper to get to launch than two fully separate native builds — but native development can be the better call when an app leans heavily on device-specific performance or hardware features. Neither is universally "right"; the correct choice depends on what your specific app actually needs to do, not a default preference.
Scope matters more than raw feature count. Ten simple, well-understood features (a login flow, a profile page, a basic list view) cost far less than three complex ones (real-time sync, a custom recommendation engine, an offline-first data layer). When a project's budget estimate feels too high, the more useful question usually isn't "which features can we cut" — it's "which of these features are actually complex, and do we need that complexity in version one?"
Every third-party system your application needs to talk to — a payment gateway, a CRM, an ERP, a shipping provider, an SMS/email service — adds real engineering time: understanding that system's API, handling its edge cases and failure modes, and testing the integration under real conditions. A project that looks simple on a feature list but needs to sync with three different backend systems is usually not a simple project.
This is also the area most often underestimated in early ballpark quotes, because the integration's difficulty often isn't visible until someone actually reads that third-party API's documentation in detail. A credible estimate accounts for integration complexity explicitly, rather than folding it into a generic "development" line item.
An MVP (minimum viable product) is deliberately scoped to validate a business idea with real users as fast as possible — which means intentionally deferring anything that isn't essential to that validation. This isn't a lesser version of the "real" product; it's a different, and usually smaller, project with a different goal.
A full-featured enterprise build, by contrast, is scoped around supporting a business at scale — role-based permissions, audit trails, extensive integrations, high test coverage. Comparing an MVP quote to an enterprise quote and concluding one vendor is "more expensive" is usually comparing two different scopes, not two prices for the same thing.
Rather than asking "how much does an app cost" before scope is defined, a more productive starting point is: what's the smallest version of this that would let real users tell us whether the idea works? From there, a credible development partner should be able to walk through platform choice, integration complexity, and design depth as concrete trade-offs against your specific budget — not abstract percentages.
If a vendor gives you a firm number before understanding your integrations, your platform requirements, and your actual feature list, that number is a guess dressed up as a quote. A short, honest discovery conversation before any estimate is the strongest signal that the number you eventually get will hold up once development actually starts.