When building apps, entrepreneurs often dream that their creations might become the next Truecaller, which surpassed the 100 million-user mark in December after doubling its daily new users in less than three months.

With this vision in their heads, tech entrepreneurs might be tempted to build apps capable of handling millions of users from the start.

This is a mistake.

Building an app to handle 100 million users isn’t a practical approach for startups. When entrepreneurs take this approach, their apps usually never launch. They run out of time, miss their market opportunity or blow through their funding. The reason is simple: Creating software that can accommodate millions of users takes a lot of time and money.

When setting out to build apps or websites, most entrepreneurs don’t have unlimited budgets, unlimited time or perfect visions for their end products. If you have a good app idea, you must start somewhere. And it’s better to ship an app that won’t reach 100 million users than to never launch at all.

Here’s a practical approach to building software that has a chance at success:

1. Focus on immediate needs.
Most apps won’t have many visitors at launch, so focus on such elements as market validation. That will provide important feedback that will inform how you could improve your app by adding and removing features, fixing issues or making design changes.

Those steps will improve a site’s efficiency. Then you can scale the development to add users without having to undo changes later.

Nathan Furr and Paul Ahlstrom perhaps said it best in their book Nail It Then Scale It: “All too often, entrepreneurs fall in love with their product or technology, they ignore negative feedback from customers, and they spend years building a product based on a vision that no one else shares.”

2. Find bottlenecks.
When your app reaches the point of beginning to experience performance issues, don’t immediately think about a complete rebuilding of it — not just yet. Instead, use tools such as New Relic and Blitz for bottleneck monitoring and load testing.

Tackle the biggest bottlenecks first and stick to an incremental approach to growth and development rather than feeling like you must overhaul everything immediately.

Related: A Step-by-Step Guide To Building Your First Mobile App

3. Rebuild when necessary.
When you have enough users that you need to take major steps to ensure that your app keeps working properly, celebrate because that’s a great problem to have and most developers never get there.

At this point, it might be time to rewrite the entire app from scratch if you have sufficient demand to justify the expense. Even then, stick to an incremental approach to keep launch time frames realistic.

Amazon.com didn’t start as a website capable of serving hundreds of millions of users. For the site’s first six years, Amazon focused on making incremental improvements to accommodate growth. In 2001, when the site reached its limits, the company overhauled the architecture to better serve existing users and plan for future growth.

If Amazon had tried to build the first iteration of the website to its current scale, the effort would have likely failed and there wouldn’t be Kindles and other delights such as unicorn meat.

Most smart investors won’t put money into your company if you’re trying to build an app on your first iteration that can scale up in size like Truecaller did. They know the importance of not overreaching but addressing critical issues first, then looking at how to grow.

In short, don’t blow the budget on expectations. Spend it wisely according to current realities.