Fog Creek Software
Discussion Board

Continuous income for software?

In a support newsgroup for a piece of software I sell, there has been some debate about a particular pricing model for an upgrade.  As a part of this thread, someone posted the following comment, which is something I have thought about a lot in running my own one-man software company:

"...don't forget, that you shouldn't follow
the way like other vendors do, namely to neglect existing customer in
favour of getting new customers."

From an idealogical standpoint, this is true, obviously... One should not burn existing bridges in the process of building new ones.

But there's another standpoint: the bottom line.  Existing customers have already paid their money, and new customers are the source of income.  Without going with the software "rental" model (the one where customers have to pay a continuous monthly/yearly/whatever fee to use the software), how does one continue to make money off of existing customers, thereby giving the vendor a good incentive to keep the customers happy, without making them angry about having to pay you more money?


Tuesday, November 25, 2003

Every so often release a major upgrade with so many great new features that they'll be happy to pay to get them.

What new features?  Ask your customers.

Tuesday, November 25, 2003

Maybe there's a longer view to be had.

Instead of looking at current customers as a source of immediate income, rather look at them as a start-off point for attracting new customers, via word-of-mouth, etc.

There's also the option of selling upgrades to existing users, but you still have to offer something with value.

Tuesday, November 25, 2003

Neglecting existing customers amounts to what?  Fixing their bugs?  Answering questions? Something else??

If you can figure out what might make an existing customer feel neglected, perhaps you can put measures in place a priori to minimize or eliminate the need to maintain a continuous relationship so you can focus on attracting new business.  For example, with fixing bugs, maybe you could put more effort into quality control so that the bugs don't get out there in the first place. 

just a thought
Tuesday, November 25, 2003

It's 3 times more difficult and expensive to acquire a new customer than it is to keep an existing customer.

What possible revenue streams can you generate from existing customers?
Tuesday, November 25, 2003

Do you only sell one product?  Once you become a trusted vendor, it is much easier to sell a related product to existing customers.

Are you planning to make major uprades at some point?  Charge for the upgrade -- obviously less than the full version price but this is easy income if you have treated your customers well and the upgrade is of value.

Billy Boy
Tuesday, November 25, 2003

"Release upgrades and charge for them."

That's exactly what we're doing, and the upgrade price is pretty darned good, too, but people aren't liking the 9-month release cycle.

As a bit of additional info:  The original product sold for $50 per license, and the new version will sell for $99 per license.  The upgrade price is (math is fun) $49, and yet a few customers are complaining "I just spent $50 in June, and now you want another $49 from me?!"  I want to respond "Yes, exactly.  I want as much money as I can get from you.  I am in business, after all."  But that probably wouldn't go over very well...

There are so many angles to look at this... for one, most companies would charge much more than the difference between versions for an upgrade... in this situation, $79 or so.  Should I point out the deal that they're getting by my "generous accounting?"

One other thought: The complainers (and there are only a handful, really) use phrases like "customer loyalty" and things like that, incinuating that this upgrade situation is somehow abandoning customers and screwing them over.  I want to coin the phrase "developer loyalty" and ask them to make sure that they keep me fed, otherwise they are disloyal and screwing me over... That probably wouldn't go over too well either.

Tuesday, November 25, 2003

I was looking at Novell's posted results yesterday, I can't remember why I'm not a shareholder any more so it can't be masochism.  The monthly sales come out at around 70-90 million $ on average for maintenance and 5-6 million $ on new licences.

Leave alone that after taking out operational and development costs there's a net loss of ten million a month; that kind of ratio of new sales to maintaining old can look at first sight as being healthy.  After all at the end of the year there'll be around 50,000 new licences to maintain in following years.

But that doesn't account for drop off, obsolescence and churning of the existing user base.  In reality it looks as though their pricing model (or maybe just their product line) is starving their new sales. 

There's a limit as to how long someone is going to maintain or sit with a subscription or maintenance licence model of buying software.  After a while, say two years, it becomes obvious that relicencing a piece of software that hasn't rusted, fallen apart or broken is a waste of money, especially given as the hardware it runs on is even more obsolete and moving software from one physical piece of kit to another is just a royal pain. 

So instead they keep the old software, if the new machine needs it, they jimmy it onto it, or maybe they buy the latest and greatest version, or maybe they buy a competitor's product.  But, its a certainty they stop paying for the maintenance.

There is an exception to this and that's purely electronically distributed product.  If the licence number is sufficient to get all the updates (and move the original software), then it may well have a longer life span.  But it aint forever.

Simon Lucy
Tuesday, November 25, 2003

That three times figure was from a study done decades ago regarding comestibles like detergent and ice cream.

For software where people are not having to pay for it each week to continue using it, it doesn't make any sense to apply the results of that study.

Dennis Atkins
Tuesday, November 25, 2003

Ah Ok, now that you tell us the whole story.

If I bought a program far price P and was asked to pay price P in less than 6 months later just to get rid of the skanky bugs you should have fixbed in the first place, I'd be majorly pissed at you.

Solution: upgrade all customers of less than 6 months for free or $15 media charge if they want a CD. Customers of less than 1.5 years, pay a $30 upgrade fee. Customers of longer than 1.5 years pay the $49. Customers of less than 60 days get a free copy of the CD in the mail.

Dennis Atkins
Tuesday, November 25, 2003

Who said anything about skanky bugs?  We're talking about a major version release with significant new functionality... significant enough that the majority of those questioned in a price point survey indicated that they would happily pay more than $99 for the product.

That's not the question though... the question is about business model.  Is it acceptable for income to come only from sales of new software (whether a first-time buyer or a previous customer buying something else), or would the ideal software business model involve something different?

Hrm... I think I just hit on something.... As software vendors in the typical model, we don't have "current" customers.  We have "previous" customers - people who have bought from us before.  When we release an upgrade, we hope that previous customers will buy again.  Companies like cell phone providers have "current" customers, who are still using their service, and they're still getting paid for it.  So, would the ideal business model be more like a commodity, where the customer buys once, and then buys again later?  Or like a service, where the customer buys continually and semi-dependably?

Tuesday, November 25, 2003

Our company 'rents' software to our customers.  We have a very stable base of customers most of which have been with use for 5+ years. 

We charge a yearly fee for our product and allow our customers to pay monthly, quarterly, or yearly as they like.  Although in any group of renters there are those who try to bargain and delay... they have on the whole paid and mostly without complaining about the fees.

In return for their 'support fees' they get 2 upgrades per year, free bug fixes, free support calls, and some database management as required due to corruption, HD failures, new equipment etc.

We even have some clients overseas that we require to be on the internet so we may support them via tcp/ip

This model is successful on a small scale (less than 300) clients and on a medium scale (greather than 750 clients)  I don't know if it would work with a huge scale or not.


Dayna S.
Tuesday, November 25, 2003


You keep doing exactly what you're doing now. I'm sure it will all work out for the best.

Dennis Atkins
Tuesday, November 25, 2003

I think it depends on your product.  If your product is of the type that has *regular* enhancements, you can make money off current customers.

I took a look through the programs I use on a regular basis and came up with the following models:

* Service Model.  Also known as the Everquest Model. :)  Programs where the real cost is in the service you provide THROUGH the application.  You charge customers monthly, or perhaps per-use, or perhaps yearly.  Then you really do have "current customers".  Unfortunately, many companies blow this one.  As an example: The Sims Online.  EA desperately wants you to shell out $50 for the game.  Then they'd like you to spend $15/mo or whatever to stay online, but they're far more worried about getting new customers.  In this kind of model, you need to think long-term.  Perhaps even to the point of giving away* your software so that people will pay you for your service.  (AOL anyone?).

* Content Model.  Programs which rountinely come out with new content but not really new features.  Right now I have McAfee VirusScan and Ad-Aware.  Every couple days these programs spit out new databases that I've paid to get for the next 12 months.  After that, I can choose to buy another yearly subscription for a small fee or not.  But if I wanted, for example, to go from McAfee 3 -> McAfee 4, I basically have to buy a whole new program.

* Maintenance Model.  Lots of the developer tools we have, including third-party controls, use this model.  This model says, for a price (often yearly), you get free access to all point upgrades for the software you bought.  After your maintenance contract is up, you don't get upgrades anymore.  Often as part of your maintenance agreement is a hefty discount on the next higher version, depending on how long ago you bought the current version.  The downside to this model is, if your users think to hard, they realize they're paying for bug fixes.  The upside is, you are motivated to include new or updated features in point releases because you're getting money from them.

* Service Pack Model.  Probably the most common, in no small part because it's how Microsoft typically works :).  Buying software entitles you to bug fixes *only*, for free.  Upgrades cost money no matter how quickly they come out, and you almost never get new features in the service packs.  This is the easiest for customers to wrap their heads around, but if you have a rapid development cycle it can get annoying.

The real business case for your application just depends on how often it gets updated and what those updated entail.  If your app fits into the content delivery of service delivery model, you should seriously consider moving to those models and *driving your marketing* around them.  They are vastly different from the traditional shrink-wrapped software model, but the potential for continuous ongoing income is quite high.

People don't want to pay money, obviously, but they can't expect to get everything for free.  If your new version has significant enhancements, as evidenced by the doubling in price, previous users shouldn't expect to get it for free.  Those users aren't being realistic, and sometimes you just have to put your foot down.  You can't go into McDonalds and argue "I just bought a cheeseburger and now I want a Big Mac, why do I have to pay for it?"  (Yes, yes, all analogies suck but you get the idea.)  If you want new software features, you pay for new software features.

Ultimately it's a compromise between you and the customers.  How much are they willing to spend and how much are you willing to give away.  If the quick development turnaround is the problem, the customers complaint may be less of "I have to spend more money now?" than it is "Why did you make me spend money BEFORE?".  Installshield, for example, gives away major upgrades for free if you've purchased the previous version within a very short (3 months??) time before the new release.  Perhaps something like that will work with your business model.

In conclusion:  Don't get into nit-picking and haggling with customers.  Set a pricing model, publish the pricing model, and stick to it.  If your software is worth the price and you play fair business with your customers, they'll buy.

Tuesday, November 25, 2003

Hey, JT!

As one of your "previous customers", I thought I'd jump in to let you know that I feel I've more than gotten my money's worth from my use of The Product, and that I'm quite happy with your proposed upgrade price. I suspect most of us are, but there is a vocal minority that are not so happy for one reason or another. Without passing judgment on their position, in my opinion the productivity enhancement The Product offers dwarfs the dollar cost. I think you should just continue as planned - the upgrade cost is reasonable, and the existing product is perfectly usable, so those that don't want to upgrade can just use the version they have. The only change I might suggest is a free upgrade for those that post positive comments on popular websites. (Just kidding, of course - I'll have my credit card ready on release of 2.0!)

Tuesday, November 25, 2003

Thanks for the encouragement, Jack.  Just so you know, you're in the great majority in your opinion... the small, but vocal, minority just made me think about this question that I've had for a while, and I figured that since the JOS community is one of the most sensible around, it would be a good place to bring it up.  Anyway, I'm glad you're happy with the product, and it's success stories like yours that keep me in business. :)

Tuesday, November 25, 2003

The suspense is kiling me so, what is "The Product"?

Tuesday, November 25, 2003

I meant killing.

Wednesday, November 26, 2003

Dear JT,
            What makes you think that you can get money for something you've already sold?

              Make another product to capitalize on the goodwill.

Stephen Jones
Wednesday, November 26, 2003

The great and mysterious product is Castalia, a suite of enhancements to Borland Delphi.  More info can be had here:

Wednesday, November 26, 2003

the author wrote: "That's exactly what we're doing, and the upgrade price is pretty darned good, too, but people aren't liking the 9-month release cycle.

Hmmm.... would these users be willing to pay the upgrade in, say, a year?

Is thier objection ONLY that they JUST bought from you?
Or, are the features worth what they're paying?

1.  Offer a special , limited time upgrade  price of, say $25.00, good for 30 days or something. 
This makes them feel special and encourages them to buy SOON instead of procrastinating.

2. Make sure the features you're offering are worth what you're charging.


BTW, tried Castilia last year when considering Delphi. It was well worth the $50.00.

Wednesday, November 26, 2003

So this whole thread is merely an infomercial.

Thanks for wasting my time.

Would never buy a turd from a turd
Wednesday, November 26, 2003

That's a bit harsh - maybe he got a plug in, but it was still a fair and valid question. Otherwise you wouldn't have read the whole thread!

FWIW I wouldn't touch Delphi with someone else's barge-pole. so I have NO vested interest ;-)

Wednesday, November 26, 2003

There's another model you're missing:

* One time registration fee, then all upgrades for the life of the product are free.

It's a fairly common model with shareware. I believe this works out well for some products, because although you lose out on the chance to sell upgrades to people, you're more likely to sell the product up front if people know they'll get any new versions created for free.

For it to work you probably need a potential customer base that's pretty large though, because there is the requirement that you continuously attract new users if you want to make money.

Sum Dum Gai
Wednesday, November 26, 2003

To the "infomercial" guy:  I only identified the product because someone asked.  Go back and read the first post for the real intent of this thread.

To the "shareware" guy: This model is the problem model.  It gives the developer absolutely no incentive to keep current (or better stated, previous) customers happy.  I have your money, I'm not going to get any more of it, so why am I interested in you?  Is the value of word-of-mouth marketing high enough for that alone to be the incentive?  Perhaps.  What do you think?

Wednesday, November 26, 2003

Schedule upgrades annually. 9 months quickly does not fit common budgeting schedules.

I tend to be skeptical of frequent "major" upgrades because it seems that sole point is to make money (i.e. the "Microsoft model".

Giving recent purchasers a break on a upgrade that follows soon after is a reasonable way to build good will.

Wednesday, November 26, 2003

As a software user/puchaser as a general rule I do expect to get every version to come out within at least a 12 Month period after purchase to be free. Any less and I feel ripped off and will probably not purchase. As a customer I like a stable release cycle for the non-free upgrades. This is of course a though one for a new company.

I hate the update every 5 days syndrome. I don't want to be downloading/installing a new version 3 days after the last because you released 1.68 who's major new feature is that the cursor now changes to a hand in the "About ..." box.

If it is a business app be clear about what you support out of what you release, and for how long.

While as a developer I know version numbers/release names are mostly arbitrary, as a user I do not want to pay again before at least a major verion number increase if that is reflected in the product name. One of the worst offenders agains this was Borland, who if memory serves me right charged full upgrade pricing for Borland C++ 4.0 to Borland C++ 4.01 (which even worse was a pure "fix the most rampant showstoppers" release). Bad bad bad!

Unless you feel suicidal announce a release for which you will be charging existing customers many months in advance (at least 6), and give them a serious discount. Provide free upgrade guarantees for at the very minimum the last 3 months before the release.

Just me (Sir to you)
Wednesday, November 26, 2003

This is interesting. I have some software (textpad, winzip, sr32 come to mind) that I paid for. They ALWAYS have worked as advertised/expected.  I would not NEED to update them. It so happens that textpad and winzip put out new versions a lot. They don't charge me for new versions (NEW FEATURES). I would gladly pay a fee ... some reduced percent of the new cost of the softeware or I'd just keep what I bought and which does what I expected it to do when I bought it.

If the program has REAL bugs which prevent it from doing what it was advertised to do then CERTAINLY I would never have to pay for getting updates, on the contrary, perhaps they might want to apologize to me in some way.

I have bought software from some companies that want to charge me FULL price for changes in their products. Cute-FTP comes to mind. I just stopped using their product. It would have been nice to get secure ftp working but I was not going to pay the full price to get it, I felt they should have given me a discount as I was already a customer but they didn't.

I think companies like winzip and texpad should get some money from me when they increase the features or make the product better ... I want them to stay in business.  But so far I bought winzip way back in 96 or 97 and I just installed the laters version with the same license key from back then when it was distributed to me on a floppy.

Companies like Cute-FTP I will avoid like the plague.

Wednesday, November 26, 2003

  I think that there's no problem paying for new features.  After all, your current clients payed a fee for a product.  The new version is a new and, hopefully, improved product.  If you want the features, you pay for it.

  To avoid problems, maybe you should warn your prospects when a new version is coming.  Something like "there´s a new version coming in 3 months.  You can pay $50 now for the current version, and upgrade it for $49 later, or wait 3 months and pay $99".

  On the release cycle, I see no problems having a new version every X months (months, not days :-) ).  If you have new features that can be deployed, why wait ?  Your customer will have the benefits of those features earlier, and will be happier. 

  And if (s)he has a problem with the period, make it clear that (s)he can always skip a version.  Create an upgrade price list based on the client's current version.

  Finally, about your original post, I think the income from current users should come from new versions, with new features, and maybe other products, if that's possible.  The biggest problem I see with the "rental" model, is that someone can always clone your application and sell it ( or even worse, release it at GPL :-( ), to your customer, that will be happy to not have to pay a diary/monthly/anual fee anymore.

Ricardo Antunes da Costa
Thursday, November 27, 2003

  Just one thing:  When I talk about features, I mean real and useful features, that justifies an upgrade.  I'm not talking about MS-Office's stupid clip! :-)

Ricardo Antunes da Costa
Thursday, November 27, 2003

*  Recent Topics

*  Fog Creek Home