Micro ISV Mistake #2

This is the second in a series of posts on common Micro ISV mistakes. Without repeating my entire introduction from the first article, these mistakes are based on lessons learned over the last few years as I started my company, developed our products, and then tried to sell them. Discussion is, as always, welcomed and encouraged in the comments.

Mistake #2 is trying to be all things to all people.

This is a very easy mistake to make. Even if you don’t consciously choose to make a general purpose product from the outset, it creeps up on you. You start with a simple idea, identify a neat little market, plan your development, and know exactly where you’re going. Then you spot another market which you could also serve with just a little extra development, or you decide that if you spent a little more time, you wouldn’t need to limit yourself to that niche; you could attack the entire market. Even if you don’t think of it yourself, someone, an advisor, friend, relative, customer, or potential sales partner, will suggest it to you. It can be seductive and can trick you into feeling like a genius, you’ve gone from a small market to a massive market and you’re just getting started. You’ve actually made a terrible mistake.

Trying to create a product which you can sell to anyone will make your life harder and lower your chances of success. It also plays against some great advantages that you have as a Micro ISV. The mistake is going to hit you hard in three main areas.

Firstly, there will be a big development hit due to the increased complexity. Your general purpose product is going to take longer to develop than it would if it was specifically designed for a particular market. This will be especially true if you started out with a specific niche in mind, but decided to broaden your design, and even more so if you have domain knowledge in the niche, but not in the market as a whole. You will lose control of your schedule, and you will constantly find new areas of complexity which you need to address.

That might seem like a small price to pay for a better product and a bigger market, but your product is also going to suffer. By trying to be everything to everyone, your product is unlikely to be anything to anyone. In other words, your product may be great, but by trying to appeal to an entire market you could end up with something which is bland and confusing, and which doesn’t really do enough for anyone. In yet more words, rather than giving one niche 100% of what they need, you’ve given the entire market 70%... and it’s the remaining 30% which would have blown their minds. If you aren’t convinced that Micro ISVs need to exceed their customer’s expectations, Google “customer evangelists”, or wait for a CodeSniper to explain what they are and why they matter.

Finally, your marketing is going to suffer. You may think that being able to market the product to anyone will make your life easier, but that’s unlikely to be the case. As a Micro ISV if you are lucky enough to have a marketing budget it will be a limited one, so you really need to know where to spend it. Having too general a target, or too many targets, will only dilute your message. Even when you manage to bring potential customers to your site, they will be more excited by your product if you talk to them directly about their problem, general terms and broad concepts will only incite apathy.

I also mentioned earlier that this strategy plays against your Micro ISV advantages, and the most obvious of these is your size. As a Micro ISV, your size allows you to survive in markets which are too small for bigger companies to enter. If you identify a small niche market which may be worth less than a couple of million dollars per year, you can make a very comfortable living by giving them exactly what they want, Microsoft can’t. Without small companies like yours targeting them, these niches will be forced to custom build their solutions, or work around whichever big player offering is the closest fit.

I made this mistake with both of our products. I failed to appreciate the importance of identifying a suitable niche, or a specific enough problem to solve, and the results were that the initial development phase took longer than it should have and the products weren’t sufficiently targeted. Marketing has been difficult too, I don’t have any specific group to aim for, and as yet I don’t have a strong enough message or big enough budget to bring in a significant share of the wider markets. In both cases, by picking niche markets and developing less flexible but more targeted products, I could have saved a lot of sleepless nights.

In most of this article I’ve used the words niche and market, which may suggest that I don’t think you should develop software that could be used by a lot of people. In fact, you could substitute the words problem and problem domain for niche and market in most places. I’m not suggesting that you give up on solving a problem that everyone has, just that you stick to that problem and solve it before deciding you’ll tackle the entire problem domain. The core concept is that a Micro ISV product needs focus, whether it is solving one problem or targeting one niche.

To summarise, make sure you know who your customers are or what problem your product will solve. If you don’t, marketing will be a nightmare, the quality of the end product will suffer, and your initial development will take much longer.

Good Call.

I think that you are right on. As ISV's, we don't have the resources (time, money, customer base, marketing, etc) of giants such as Microsoft and therefore are putting a huge amount at risk by trying to play their role.

When a Microsoft solution only fits 70% of someone's requirements, most people don't worry about it and move on. When someone buys a custom solution from an ISV, it better cover more of the requirements...


While it is appealing to imagine software that everyone will use, thereby tapping a 6 billion user marketplace (as if), the biggest risk is identifying the user stories and use cases that drive development. Niche software is wonderfully optimized and much easier to produce. Besides, trying to satisfy all the people all the time is so untenable that you would have to be crazy to try it.

In addition...

If you sell well in that niche, expansion is always an option because you'd have revenue, customer feedback, endorsements, etc.

If you expand before you have sales, you're trying to build from a base of nothing.


Thanks for all the feedback so far, and for the book tip.

It may seem crazy to try to please everyone, but I'm sure a lot of people either don't realise it, or fall into the habit by accident. I'm not sure which group I belonged to, probably a bit of both.