The Inside Story of a Small Software Acquisition (Part 3 of 3)

When we left Part 2 I had fixed 23 bugs and released the next version, DotNetInvoice 2.1, to the existing customers. The release included a fix for every known issue. Customers felt supported, and a few new sales rolled in. Things were looking up until the end of the first month rolled around.

What Sales?
The funny thing (not funny “haha,” but funny like you feel after eating Sushi from a street cart in Mexico) was that after four weeks of sweating bullets, fixing bugs, and dealing with angry customers, sales were quite a bit below previous months.

Given the extensive conversations I had with the former owners I was confident their numbers were correct. But I could not for the life of me explain the sudden drop in sales.

After emailing a few customers I began to put it together: when the developers had released version 2.0 a few months earlier they had a large block of the 1.0 customers lined up to purchase it. In fact, many of them pre-purchased the product at a discount.

When the product released the flood gates opened, revenue shot up, and gobs of version 2.0 went out the door. The month I took over was one month after sales had stalled and the bug backlash began. My timing was impeccable.

The end result? I overpaid for the product. It wasn’t a huge amount of money, but it did sting.

Present Day
Flash forward seven months.

With two more releases under my belt and a heck of a lot of marketing, monthly revenue is nearly triple its previous levels, and DotNetInvoice 2.3 is a solid piece of software.

Written in ASP.NET 2.0 and SQL Server 2005, it includes source code and a 30-day money back guarantee. In the last seven months my team has implemented dozens of new features and performed some major refactors (important when selling an open source product).

We even received a 4-star review from asp.netPRO magazine.

My Advice When Acquiring a Software Package

  1. Spend a lot of time working with the code. I’m a five year veteran of .NET and I had a pretty in-depth look at the code before making an offer. The code was clean, consistent, and worked as expected. What I didn’t do was perform a complete install and thoroughly test the software (or hire someone to thoroughly test it). It would have taken several hours to get into the meat of the app and really get my hands dirty, but I trusted that since the code was clean that it functioned well. Bad assumption.
  2. Email current customers. You’re spending a lot of money on a product that, even if you’ve spent time testing, could still have fatal flaws only noticed by someone who’s used the product for months. Ask for 5 email addresses and contact customers, asking them everything: how they purchased the software, how much they paid for it, how helpful the support has been, how many bugs they’ve encountered, and how many have been fixed. The answers will be invaluable when extending an offer.
  3. Attack the demo. Don’t be smitten by the emotional aspect of a demo (such as the glitz of AJAX or a slick design). Get in there and break the thing. Enter thirty digit dollar amounts, try a SQL injection attack, or lob rotten tomatoes at it from 10 paces. If the code was well written, the back end should gracefully handle any garbage you throw at it. If not, drop that offer by a few percentage points.
  4. Investigate revenue and expenses for the previous 6 months. Look back as many months as you can. If a month is not available assume it was terrible and adjust your offer accordingly. Take the average monthly revenue from the previous 6-12 months to eliminate seasonal or “new version” peaks. If the product is relatively new, assume revenue will drop after the first 2-3 months. If there’s a lack of information, assume the worst. As a general guide, products like this tend to sell for between 12 and 30 months of revenue.
  5. Fix bugs quickly to earn customer trust. If you discover your new product has bugs, fix them quickly to show customers you mean business. One advantage to acquiring the product was that everyone was patient with me since I was learning the product along with them. Customers were surprisingly respectful because I was willing to spend the time to help them. Remember that these customers are your lifeblood. Even though they’ve already paid for the product, they can help you in more ways than you realize. Early on, they know the product better than you do.
  6. Clean up around the edges. It’s very possible you will inherit a solid product that’s rough around the edges, such as one lacking documentation or a decent user interface. Providing installation instructions or improving the look of the application are ways to impress present and future customers.

[tags], .net invoicing, software startups[/tags]

Start Small, Get Big
Growth Secrets for Self-Funded Startups. It'll Change Your Life.
What you get for signing up:
  • A 170-page ebook collecting my best startup articles from the past 5 years
  • Previously unpublished startup-related screencasts
  • Exclusive revenue-growing techniques I don't publish on this blog
"The ideas and information Rob provides should be required reading for anyone that wants to create a successful business on the web." ~ Jeff Lewis
Startups for the Rest of Us...
If you're trying to grow your startup you've come to the right place. I'm a serial web entrepreneur here to share what I've learned in my 11 years as a self-funded startup founder. Luckily several thousand people have decided to stick around and join the conversation.

For more on why you should read this blog, go here.


#1 orcmid on 10.23.07 at 3:06 pm

Thanks Rob, this is a great little series. As an open-source developer, I can see the same impacts around take-up, bugs, and rough edges. (Generating revenue is a different matter, of course.)

#2 The Inside Story of a Small Software Acquisition (Part 2 of 3) | Software by Rob on 10.23.07 at 3:10 pm

[…] (To be continued…) Tags: startup, software startup,, dotnetinvoice About Me: My name is Rob Walling and I’m a software developer living and working in Los Angeles (temporarily residing in New Haven, Connecticut). I write about hiring, managing, and motivating software developers, in addition to random outbursts on improving development skills and software startups. My consulting firm, The Numa Group, performs .NET development for clients throughout the United States. If you are in need of a .NET developer or architect, drop me a line. If you’d like to subscribe via RSS, my feed is here. If you prefer email, use the box below. Cancel anytime. […]

#3 Andrew McVeigh on 10.24.07 at 12:36 pm

fantastic series. thanks very much for the helpful information and advice.

#4 Joshua Volz on 11.08.07 at 6:32 pm

Great post. I think your suggestions also reflect some good lessons that you learned. I think the most important thing it points out is that even if you buy a product from someone, you are still going to have to spend every waking moment relentlessly improving the product. And, it’s evidence that doing so actually leads to more sales.

Nike got it right, Just Do It.

#5 Won Lee on 09.16.10 at 9:38 pm

Stumbled on your latest blog via HN. I just finished reading like ten of your blogs and it’s been very insightful and motivational as ever. This is perhaps the closest I felt to a startup/entrepreneurial blog since I’m a .NET developer myself (about 6 years of solid experience working on high traffic site(s))

By the way, you mentioned “a heck of a lot of marketing”. Would you mind detailing that out a bit? For many developers wanting to start a new product/site, this is perhaps the biggest unknown challenge. Using social media seems to be the most popular tool nowadays, but I’d like to hear about some of the efforts you put in back then. Thanks.

#6 Rob on 09.17.10 at 1:45 am

Won – Thanks for the comment. Startup/app marketing is a huge topic. For starters, check out the “Startup Marketing” area in the sidebar.

I also go in-depth on my take on the three best ways to market a software product in my book ( But in essence, the best sustainable traffic sources are mailing lists, blogs/podcasts, and SEO. Referral links for having a remarkable product rank high as well, but these are extremely challenging to obtain.

Social media is nice for building relationships, striking deals, and getting the word out. But not very good for selling products.