Annual Maintenance Payments


We are planning on introducing an annual maintenance fee for a new enterprise-level product we will soon be launching.

How do you handle when the payments are to be made?

For example, let's say a custom purchases 10 licenses in January, 10 in February, 10 in July...etc

It doesn't seem sensible to send an invoice every month (or whatever) - is there a better or more 'normal' way to do this?

If it makes any difference, the first year's maintenance is included in the initial purchase.


Sales Software Subscriptions

asked Mar 12 '10 at 23:28
327 points
Top digital marketing agency for SEO, content marketing, and PR: Demand Roll

3 Answers


What we do is ignore the problem on new sales but fix it on the maintenance renewal. For example if you purchase 10 licenses in Jan-2010 and 5 licenses in Jul-2010 then when we do the maintenance renewal for Jan-2011 for maintenance that covers all of 2011 we include 12 months for the 10 licenses and also include 6 months for the 5 licenses so then all licenses are covered for all of 2011.

If the customer complains that they are paying early for the batch of 5 licenses then we just split the payment date. Then when we do 2012 maintenance we do all 15 licenses for 12 months.

answered Mar 15 '10 at 13:22
1,866 points
  • I like the sound of this approach - it's nice and simple to explain to customers. – Cocowalla 13 years ago
  • I don't suppose you know of any good, reasonably priced software for managing when maintenance payments are due? – Cocowalla 13 years ago
  • Originally we used quickbooks and put in invoices with future dates for when it was time to quote the customer. These days we use Salesforce and put in opportunities on the renewal dates. Probably most CRM systems can handle this pretty well. – Dane 13 years ago


We have a similar situation with our product Gibraltar. We thought through a range of options, got some feedback and what we ultimately settled on is that each time you purchase a new license it includes 12 months of maintenance - but we keep a common end date for a customer. So for example if you purchase 10 new licenses, that gives you 10*365 license-days of maintenance. We then look at how many licenses you already have and when their maintenance ends and come up with the new effective date. This way a customer always has a single renewal date and is always getting full credit for the maintenance they are purchasing - regardless of when they buy new licenses.


  • You purchased 10 licenses 6 months ago originally. That means your maintenance is currently set to expire 6 months (180 days) from now.
  • You purchase 10 new licenses. This gives you 10*365 license days of maintenance to add to your account, which currently has 1800 license-days of maintenance left for a total of 5450 license-days.
  • Since you have 20 licenses, you now go through 20 license-days of maintenance per day, so you end up with 273 days of maintenance left instead of the original 180.

We send out notifications to people that their maintenance is coming due 90 days before it lapses, then again ever half interval, more or less (45 days, 30 days, 15 days, 2 days, 0). We've gotten feedback that people like the earlier announcements even though they don't act on them because they can make sure the budget is there, etc. Then they act on one of the last reminders - 15 or 2 typically. We modeled this after the experience of two other companies that sell noncompeting products to our market and had a few years of track record for what works.

answered Mar 13 '10 at 00:24
Kendall Miller
968 points
  • Whoa, I think I may need to read that a few more times before I get my head round it! I think I get the gist of it though, and it's definately worth consideration – Cocowalla 13 years ago
  • Kendall, thanks for sharing you're approach. I've never heard of anyone doing that but it makes a ton of sense and I'm surprised it's not done a lot more often. – Dane 13 years ago
  • What got us thinking in this direction is how FogCreek does FogBugz. They have the idea of user-days of maintenance and it hit us that applying that concept to our case would create something absolutely fair and would keep people from biasing against buying new licenses based on where they were in their maintenance cycle. – Kendall Miller 13 years ago


As an alternative strategy which we found works quite well in the enterprise space, you could consider Subscription Pricing (I've talked about it before in answers to this question and this question ).

To recap, the idea is that instead of charging a big licence fee and then annual maintenance, you charge an annual subscription fee that includes everything, including the initial licence fee, maintenance and all major upgrades. If you want you can set up a minimum subscription period, say three years. (If you're feeling brave or very confident in your offering, then by all means give the client the option to cancel when they like, although I would avoid any structure which means having to repay the current year's fees).

Why is this interesting to enterprise buyers? I would suggest the following:

  • As the annual fee is going to be less than the up-front licence would have been, it's less immediate impact on this year's budget. Next year's budget may be someone else's problem.
  • Enterprises like to be able to predict whole lifecycle costs. Although they'll know what your annual maintenance will be, they won't know what you are going to charge them for major upgrades (this is an important revenue source for you, so you won't want to give them away). Using subscription pricing means they know what they are going be paying you in year 1, year 2, year 3, etc.

Accepting that there is a downside for you of less cash in the door up-front (not an insignificant issue for a start-up), why would you do go the subscription route?

  • The obvious main is recurring revenue. Each year you're building on top of last year's sales (and all the preceding years), rather than starting from scratch.
  • I would also argue there is a customer intimacy argument too. As customers are paying you the same amount of money each year (inflation adjusted if you like), then they are a little bit like new customers all the time. Potentially this gives you more opportunity to keep close to them than if you're just shipping out maintenance invoices each year.
  • Probably the biggest justification for you (and the reason we adopted the approach) is that when you go to a customer in year 2 or 3 and start suggesting they pay you a load of money to upgrade (under a conventional licence model), then there's every chance they'll go back into the market to see whether they can get a better deal. In other words, subscription pricing is a way of increasing your product's long-term stickiness.

In terms of admin, then becomes simple - you agree one date with the customer that you are going to bill them up-front for that year's usage. If they add additional subscriptions, you keep the date and pro-rata the subscription fee for the rest of the current period.

This approach isn't for everybody, particularly considering its up-front cashflow impact, but I would strongly recommend considering it for the long-term health of your business.

answered Mar 13 '10 at 19:50
Steve Wilkinson
2,744 points
  • I agree with the benefits of using subscription licensing but often your competition sets the market dynamics and it's not practical to use only subscription based models. – Dane 13 years ago
  • Subscription based pricing isn't something any of our competitors are doing, so we wouldn't want to take the risk of going down that route (although we may have it as an _option_ in the future). Many thanks for the detailed response though - I'd upvote your post if I had the rep to do so ;) – Cocowalla 13 years ago

Your Answer

  • Bold
  • Italic
  • • Bullets
  • 1. Numbers
  • Quote
Not the answer you're looking for? Ask your own question or browse other questions in these topics:

Sales Software Subscriptions