TL;DR: Custom software that fits a 10-user startup almost never fits the same company at 200 users. The fix is not "better architecture" or a "better vendor". It is matching what you build to the growth stage you are actually in. Below 50 users, buy. Between 50 and 200, hybrid. Above 200, custom earns its keep.
Key Takeaways: - 60% of software buyers regret their purchase. The cause is usually a stage mismatch, not bad code. - MVPs that survive 200 users own the data model, the API, and the deployment pipeline from day one, even when the rest is SaaS. - The build-vs-buy math flips at every threshold: what looks expensive at 10 users is cheap at 200, and vice versa.
You hired a dev shop at 10 users because nothing else fit. By 200 users, you are rewriting the entire backend, and the CTO you hired to fix it just quit. This is the most predictable failure in startup software, and almost nobody talks about why it happens at exactly 200. The number is not random. It is the breaking point of almost every architecture decision made in the first six months.
The 10-to-200 User Graveyard: Where Custom Builds Die

Founders pick custom software development at 10 users because nothing else fits. Their pricing model is unusual. Their workflow is proprietary. Their integration stack has three legacy APIs no SaaS product talks to cleanly. Custom is the right call at that stage.
The same call becomes a trap at 200 users. The database that handled 10 concurrent users now blocks on schema migrations. The feature flags that gave flexibility now look like spaghetti. Every new feature takes three weeks instead of three days. Bugs block customer onboarding because there is no rollback path.
The scope of the problem is bigger than founders admit. Practitioner research from Tymon Terlikiewicz shows that 60% of software buyers regret their purchase, calling it a time sink and a chore. Most of that regret shows up at the same point in the lifecycle.
The mistake is not that custom was wrong. It is that the system was built for a version of the company that does not exist anymore.
The 10-user version had three customer personas, one pricing tier, and a manual onboarding flow. The 200-user version has fifteen personas, four pricing tiers, and an automated funnel that the old code cannot model.
This is not a vendor problem or a technology problem. The code did what it was asked to do.
The ask itself changed, and the architecture did not absorb the change. Sound familiar? The pattern we see in the 40-user wall is the same one, just with different numbers.
But here is the uncomfortable part: most founders blame the vendor or the technology. The real cause is structural, and it starts much earlier than the rewrite.
Why Your MVP Architecture Won't Survive 200 Users
The MVP you shipped at 10 users was almost certainly a monolith. One backend. One database. Business logic hardcoded into controllers. Authentication copied from a tutorial. This is the right way to ship an MVP. Speed beats elegance when you have five paying users and a hypothesis to test.
The problem is that monoliths do not bend. They break. At 200 users, three things fail at once: - Concurrent writes collide because the database has no row-level locking strategy. - Schema migrations require downtime because the app and the schema were never decoupled. - Feature flags turn into a maze of conditional statements because there is no clean extension point.
The microservices decision gets deferred with "we will figure it out later." Later arrives at user 150, and the cost of fixing it grows with each stage. Ash Maurya's research on startup failure patterns names the core mistake. Founders keep adding features instead of proving one core idea. Then they hire specialists for problems they do not have yet.
A solo developer can build an MVP. They cannot architect for 200 concurrent users. The bespoke software that worked at 10 users was not designed to be the system that survives 200.
The fix is not to design for scale from day one. That is exactly the advice that bankrupts seed-stage startups. The fix is to design for the next stage, not the current one. It also means knowing which decisions are reversible and which are not.
Most top custom software development companies in India sell the "scale from day one" pitch because it wins deals. The good ones push back. We have seen the MVP quote lie play out hundreds of times. Each one starts the same way: a quote that doubles once the scope becomes real.
The Build-vs-Buy Math That Changes at Every Threshold
Published ROI comparisons between custom and off-the-shelf software are real. They are also useless as a decision input unless you know the stage. The averages hide where each option actually wins: - Below 50 users: buy or use no-code. Your problem is product-market fit, not infrastructure. Off-the-shelf plus three integrations will out-ship a custom build every time. - 50 to 200 users: hybrid. Buy the core (CRM, billing, auth, email). Build the differentiator (your proprietary logic, your unique API integrations, the part that wins deals). - 200+ users: custom becomes necessary because the cost of workarounds in SaaS now exceeds the cost of a targeted rebuild. Vendor lock-in is a real tax.
Business decision-makers who consider custom software crucial are right. But only when custom is deployed at the threshold where it earns its keep. Deploy it at user 10 and you are paying for capabilities you will not use for two years.
Custom software development works when the vendor understands the stage and staffs accordingly. The software development companies in India that retain clients long-term do one thing differently. They refuse to oversell stage-three architecture to stage-one budgets.
The thresholds matter, but they are useless without knowing what "custom" should actually look like at each one. That is exactly where six-figure rewrites get signed off in a panic at user 180.
What "Custom" Actually Means at Each Stage

The word "custom" gets used to mean four different things. Conflating them is why founders overpay.
At 10 users, "custom" usually means a custom frontend on top of a SaaS backend. You keep data portability. You can migrate in a weekend. The build is fast and cheap because you are not inventing infrastructure.
At 100 users, "custom" means owning your core data model and your API layer. Your frontend, your backend business logic, but commodity infrastructure for auth, payments, and email. This is where most founders should be living for as long as possible.
At 500+ users, "custom" means microservices, event-driven architecture, and ownership of the full stack. Vendor lock-in now costs more than engineering. You have the revenue to justify a platform team.
The mistake is jumping from stage 1 to stage 3 because a pitch deck promised "enterprise-grade architecture." You paid for scale you did not need and complexity you cannot maintain. A staged application development approach typically deploys far faster than an in-house team building from scratch because the vendor's team is already at productivity on day one. The custom software development company that wins long-term clients sells stage 1 when stage 1 is the right answer. It does not sell you the whole platform on day one.
The year-two bill that kills most custom CRMs is almost always traceable to this mistake. The architecture was right for the company the founder wished they had, not the company they actually had.
Architecture stages only work if you make three specific decisions correctly. Miss any one, and you are back in the 10-to-200 graveyard.
The Three Decisions That Separate Regret From Scale
These three decisions are not about technology. They are about ownership.
Decision 1: Own the data model from day one. Even if you buy SaaS, your domain objects (customers, transactions, workflows) should live in a database you control. This is the single biggest determinant of whether your custom build can be salvaged or must be thrown out. If your customer data lives in a vendor's database with no clean export, you are already locked in.
Decision 2: Treat your API as a product. If your frontend talks directly to vendor APIs, you are locked in at the UI layer. A thin internal API layer costs slightly more upfront and prevents most of the rewrite later. This is also how you decouple microservices from a monolith when the time comes.
Decision 3: Hire for the next stage, not the current one. A solo developer built your MVP, and they are not the person who will architect for 200 users. That is a scope mismatch, not a failure. The best software development company embeds this into the engagement model. They staff for the stage you are heading into, not the stage you are in.
For security-critical systems (fintech, healthtech, banking), a fourth decision is implicit. Vendor track record on audit trails, compliance posture, and incident response. The high retention rates you see at the top of the market are not marketing. They are the residue of getting these three decisions right, repeatedly, for years.
The companies that execute these three decisions rarely write blog posts about their architecture. They are too busy shipping.
What Changes When You Time Custom Correctly
The most visible change is that the rewrite at user 200 never happens. Your architecture absorbed the growth, and your engineering spend shifted from "keeping the lights on" to building the next differentiator. That is the only thing that compounds.
The second change is psychological. Off-the-shelf decisions stop feeling like technical debt because you chose them deliberately for the stage they fit. You are not patching around a CRM that was wrong for you. You are using the CRM that was right for the stage you were in. You moved off it on your own terms.
The third change is operational. Your team stops firefighting schema migrations at midnight. Your new engineers onboard in days, not months, because the system has clean boundaries.
The backend you built is boring, predictable, and well-documented. Boring is the goal. When the system matches the stage, custom stops being a bet and starts being an asset you compound on quarter after quarter.
Frequently Asked Questions
At what number of users should a startup switch from off-the-shelf to custom software?
There is no universal number, but the practical threshold is 50 to 200 users. Below 50, off-the-shelf plus integrations is faster and cheaper. Above 200, the cost of workarounds in SaaS typically exceeds the cost of a targeted custom build for your differentiator. The middle range is where most founders miscalculate.
How much does MVP development cost in India for a startup at 10 users?
A focused MVP built by a custom software development company in India varies widely. Cost depends on complexity, integration count, and the seniority of the team. The cost advantage comes from staged delivery, which lets you avoid the recruiting, onboarding, and idle ramp-up drag that an equivalent in-house team would absorb before its first commit ships.
What is the biggest reason custom software projects fail?
According to practitioner research, 60% of software buyers regret their purchase, and the most common cause is a mismatch between what was built and what the business actually needed six months later. Custom software is most likely to fail when it is designed for the current product instead of the next product iteration.
When should a startup NOT build custom software?
When your core process is already solved by a mature SaaS product and your differentiator lives in marketing, sales, or distribution, not in software. Custom builds are justified when your workflows are proprietary, your data model is unique, or your compliance requirements make off-the-shelf impossible.
Is it cheaper to build custom software or buy off-the-shelf long-term?
Published ROI comparisons favor custom software on average, but that assumes the custom system was built at the right stage and for the right scope. Built too early, custom software is the most expensive option available. The ROI math only works when the build-vs-buy decision matches the company's actual stage of growth.
About the author
Mayank Singh is a software developer at Levitation Infotech, where he builds web and AI-powered applications across the company’s fintech, healthcare, and enterprise projects.
