A guide to software licensing
This article explains the most common software licensing models and lists various ways you can enforce your software licence terms and conditions. Particular focus is given to how software protection systems can control the use of your software and the number of copies allowed.
What is a software licence?
A software licence is a contract between the software creator and the end user governing the installation, use and distribution of the software.
How can I enforce my software licence?
Relying on a legal document is often not enough to ensure that an end user abides by the terms and conditions of your software licence agreement. Software companies often turn to software protection systems to enforce their licence conditions. This enables them to control the number of copies of their software that an end user can run. This is known as copy protection and works by locking the software to a special licensing key, which can be implemented as a hardware dongle or a software token.
Software licensing strategy
It can be difficult to know the best way to licence your software. There are many factors you need to take into account.
How do your customers use your software?
The more accurate information you have on how your customers use your software, the better. This will enable you to devise a licensing strategy which will charge your customers for the features that they use and possibly also the frequency that they use your software. Customers do not want to pay for features or licences that they do not use, or pay large amounts for features that they rarely use.
Understand each customer's business model
No matter how good your product is, you can lose business if your licensing model does not fit with how your customers expect to use and pay for your software. Startup companies may prefer to pay-as-you-go to avoid a large upfront cost. However, more established companies might prefer a long-term contract with monthly/annual payments while large organisations may prefer bulk licences at a discounted price or to purchase your software outright.
The more flexible you can be with your licensing then the more likely it is that your customers can use your software in a way that works best for their business.
Monetise your software
Copy-protecting your software automatically increases revenues because only authorised copies of your software can be run. However, a well-thought out licensing strategy can enable you to offer your customers more licensing choices and continuing revenue streams such as subscription or usage based licensing. It also offers a way to monetise new features and upgrades.
A good licensing strategy should help you maximise your revenues whilst still being flexible enough to meet your customer's business needs. However, it should not be so complex that it is difficult for the customer to understand or to budget for properly.
Common software licensing models
- One-off purchase
- Also known as a perpetual licence, the end user purchases the software and can use it indefinitely. This traditional model is still popular. It is transparent in terms of implementation and also cost to the buyer. However, it lacks the flexibility and precision of more complex licensing models.
- The end user can rent the software, paying monthly or yearly, for example. This licence model is easy to understand and has become more popular due to the prominence of companies like Spotify and Netflix.
- Network licence
- Also known as a floating licence, the end user is allocated a limited number of licences which can be used on a first come, first served basis by any user across a network. When a user has finished using the protected software the network licence is freed up for somebody else to use. Once the number of concurrent network users has reached the limit specified by the software vendor then no users can consume a licence until one has been freed by another user.
- The end user pays for their consumption of your software. This can be done by counting how many times your software is used or how many times certain functions or features are used within your software and billed accordingly. This is a flexible and precise method of licensing but can make it more difficult for the end user to budget.
- The end user pays for which features of your software they can use. This is a very flexible type of licensing and can be tailored to each individual end user.
- The end user can freely download your software. However, your software is restricted in some way e.g. having limited functionality or a short period of evaluation. This enables the user to try your software before making a purchase.
You can also combine licensing models to create more complex licensing schemes. For example, you could use a feature-based licence and charge per-use of each feature. Or you might want to provide a feature-based licence that is charged on a subscription basis.