So, you're (thinking about) making a product (app, game, website, whatever). That product needs to make interesting promises and deliver upon them.
But the kind of promises your product makes, and how well you communicate them, define the potential audience for that product. (Of course, you still need to produce something which delivers on those promises in order to keep people using and engaging with it, but let's take that as a given for the sake of discussion.)
On one hand that thought is kind of freeing. Make the product, and it will have the audience it's going to have; big or small, don't sweat it. But on the other, it's kind of frustrating because you have to accept that your product's audience does have an upper bound. If your product currently only has an audience of 1,000 people then what can you do?
Go back and consider the promises that your product makes. If those promises are honestly, truely compelling to a potential audience of 100,000 people (say), and so far it's reached just 1,000, then yes, you can take it from 1,000 to 10,000 to 100,000. This requires you to invest the right kind of work at the right time.
However, if the product promises are actually rather niche, and only compelling to a potential audience of 1,000 people, and your product has reached them all, then no amount of work of any kind will ever get it to reach 10,000, let alone 100,000.
A product's potential audience changes over time, of course. Public tastes change. The needs of the marketplace change. People grow and regress. You might discover 15 years later that now your product has an audience of 1,000,000 people. Who knew?
Note that this is most heavily felt when you have an almost complete reliance on word of mouth: Outside of throwing marketing money at the problem, there's really no way to take a product whose potential audience is 1,000 people and make 100,000 people like it.