
A guide on storing license files within local databases in the C++ SDK.
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.
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.
There are a few reasons why perpetual licenses are still popular to this day:
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).
[Read my Guide on implementing a Subscription Business Model here]
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.
The main license models that are not perpetual have some validity period component, which are usually seen as:
Remember that a software application may have components that are licensed perpetually, and other components or add-ons have a validity period.
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.
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