A guide on storing license files within local databases in the C++ SDK.
Perpetual Licenses - Glossary
Commercial software licenses are configured in many different ways, and perpetual licenses are to this day still one of the most common licensing models. In particular, software sold directly to consumers is often done through perpetual licensing. Many computer games do not require a subscription to play, whereas many commercial software applications that run on mobile devices also omit any notion of validity periods.
What is a perpetual software license?
Perpetual Software licensing, as its name suggests, is a commercial licensing model by which a software vendor grants permission to an end-user to use their application for an indefinite period of time. In other words, if you are granted a perpetual license, the app publisher allows you to use their application forever. Although there are often many other aspects that go into a license agreement (who/how many people can use the license, what environments the license can be used in, for what purpose etc.). The main distinction is that perpetual licenses lack a validity period associated with the right to use the software. This license is different from, say a time-limited license, a timed-trial license, or a subscription-based license.
What are some of the benefits to licensing software perpetually?
There are a few reasons why perpetual licenses are still popular to this day:
- Historical Consumer Habits: Traditionally, software updates were rare and difficult to administer pre-internet (remember CDs, or even Floppy Disks?). Patches and updates, along with licenses were transferred using physical mediums, and given all the hassle, most software packages were not being distributed using overly complex licensing models. Even if today, software updates and patches can be seamlessly delivered over the internet, the world got used to a certain way of doing things, and some people will simply expect to be able to purchase a copy of an application with a 1-time fee and not have to worry that it will be switched off.
- Infrequent Usage from the end-user: There is plenty of software that people want to have accessible for very occasional usage. Personally, I don't need PowerPoint very often, but I like the fact that it's installed on my computer for the rare presentation I need to make once in a blue moon. I also still play the occasional round of Cities: Skylines, and am glad I don't need to worry about my access being cut.
- No compelling reason to monetize further: Another reason for the prevalence of perpetual software licensing today is that a lot of software still runs on a local machine, and does not require a lot of maintenance or support, if any at all. Unless there is some resource being consumed elsewhere (eg compute resources on a server, cloud storage) or there are frequent updates and improvements to the software (eg: an antivirus app), rebilling for software can be difficult to justify from the end-user's perspective.
Who should offer perpetual licenses?
Software Vendors of all sorts license their software without an expiry date, from desktop or mobile app developers, video game publishers, or vendors that distribute Standard Development Kits (SDKs) for use in other people's software. Here are LicenseSpring, we also see vendors who license the same apps using several different licensing models (here are some of the software licensing models you can implement with LicenseSpring), one of which is a perpetual model. Providing this flexibility can help acquire customers with different concerns. In particular, different customers weigh differently the pros and cons of paying the total cost of ownership upfront for a software vs a Software as a service model, where the entry point is low, but the tap can be switched off at any given time. It typically makes sense for the end-user to provide perpetual software licenses if the version release cycle is infrequent (eg: one major release per year), and there are few to no remote resources being used (cloud storage or compute, as an example).
Can an Independent Software Vendor (ISV) monetize a perpetual license after it has been issued?
A perpetual license usually limits the end-user to a specific version of the software application, and may or may not include updates. ISV can (and often should) charge for upgrades to more recent versions of their application, and can also charge a maintenance fee for updates. Another strategy would be to offer different editions of your software, and manage a clever upgrade policy between the tiers. One could, for example, provide a low (free) tier of the application, and charge for extra features as add-ons.
Vendors should be aware that in order to increase the Lifetime value (LTV) of the customers whom have been granted perpetual licenses typically will require a deliberate action taken by the customer to pay for new versions of the application. From a Monetization perspective, it can be preferable to keep a customer forever and allow them to choose when they upgrade at their convenience rather than forcing them to subscribe putting them at risk of churning at any time. Subscription cancellations can happen quickly, once the customers start looking at competing services or once they feel like the recurring charge is greater than the value they attribute from the software.
What are alternatives to using a perpetual software licensing model?
The main license models that are not perpetual have some validity period component, which are usually seen as:
- Time-Limited Software Licenses: This license type has an expiry date, which can be configured as a fixed date, or as a certain period after the licenses is first used. Time-Limited Licenses can be extended. Once they expire, the the application is no longer licensed to be used.
- Subscription Licenses: This license model means that the end user pays periodically and has the right to use their license for that given period. It's essentially a time-limited license model that is automatically extended each time the billing cycle is renewed. This usually ties the validity of the license to the status of the subscription, controlled by the recurring billing provider (eg: Stripe).
- Consumption-licenses: Also known as licensed usage metering, this is a pay per use model. Although technically, consumption-based software licenses don't usually have validity periods associated with them, perpetual licenses don't meter usage, so they can't really be classed as the same type of software license. Charging per number of API requests is an example of consumption-based software licensing.
Remember that a software application may have components that are licensed perpetually, and other components or add-ons have a validity period.
What is the difference between a perpetual software license and a time-limited license?
A Perpetual license never expires and would need to be disabled in order to stop working. A Time-Limited license has an expiry date, after which will stop working. The validity period of a time-limited license can be extended by the ISV.
What is the difference between a perpetual license and a subscription license?
On the surface, the time-limitation aspect of a subscription distinguishes it from a perpetual license. However, behind the scenes, a subscription license on our platform behaves similarly. We synchronize the status of the license with that of the subscription: so long as the subscription is active, we don't touch the valid status of the license. Once we receive an instruction from the recurring billing system that the subscription is no longer active, the license then gets disabled. This is similar to perpetual licenses, where online license checks will always pass, unless the license deliberately disabled or revoked by the vendor.
Last Updated: September 26, 2022