Put simply, dual-licensing describes a situation where the same piece of software can be obtained under two different software licences. Usually one of these licences is an OSI-approved open source licence and the other is a proprietary licence.
Open source business models
Although awareness of open source software has become more widespread, many people still have difficulty with the concept that an open source business model can exist. The most common question is ‘How can anyone make money from open source software if they give it away for free?’ Generally, the licence fee is only one of the ways that a software vendor makes its money, as usually they also offer additional chargeable services such as support and consultancy. These supporting services are often available from third parties. For example, an institution may purchase some proprietary software by paying a licence fee to that software’s vendor but may then negotiate a support contract with a third party that may or may not be affiliated in some way with the vendor. This might, for example, involve purchasing Microsoft SharePoint from Microsoft and purchasing support services from Cap Gemini. This scenario of using separate licence and support vendors is also common in the open source world, where the software may be freely available under an open source software licence, incurring no licence cost, but a support contract or consultancy services may be purchased from a third party business specialising in that particular piece of software. A good example of this from the education sector is that Moodle, a popular virtual learning environment, may be deployed in an institution with no licence cost, but a commercial support contract may be purchased from a Moodle partner to support its deployment.
Dual-licensing as a business model
Supporting services are not the only way that an open source business can make money. They can also make money from licensing. Clearly, if software is released under an open source licence it is not practicable to charge for the software as your neighbour can give it away for free. However, an open source software vendor may choose to dual-license its software. This means that its software is made available both under an open source licence and under a different licensing scheme that may incur a licence fee. But why would anyone choose the chargeable licence? There are some very good reasons why this might happen. The most common by far is that the open source software is released under a licence that imposes certain restrictions that the prospective licensee is unhappy with. An example is when the open source code will need to be re-used within a proprietary software product; some open source licenses do not allow this.
A company, Databases-r-us, is developing a database application aimed at the first time database user. They wish to develop and sell an application that consists of a database back end with a suite of easy-to-use tools on top that make designing, maintaining, and using a database a trivial task. They would like to use the popular MySQL database, an open source application, which is released under the GNU General Public License (GPL) by the owning company. The terms of this licence are such that if Databases-r-us develops and releases software that contains the MySQL database code then that MySQL-based application must be redistributed in a way where the complete source code for the application is open and available for redistribution. In practical terms this means that the resulting application must also be released under the GPL. In this situation, Databases-r-us do not want to do this because they feel that the software code they have developed is part of their business advantage. However, they are very keen on the MySQL database and still want to bundle it with their software. Fortunately for Databases-r-us, as the MySQL database is a dual-licensed product this is indeed possible.
Under MySQL’s dual-licensing business model, users may choose to use MySQL products under the open source GPL or under a commercial licence. Anyone who is developing and distributing open source applications under the GPL is free to use MySQL under the GPL. Additionally, anyone who is developing and distributing open source applications under an OSI-approved licence that is not the GPL, may take advantage of the FLOSS exception of the GPL licence that allows specific licences to be used.
For anyone who wants to develop and distribute but does not want to release the source code for their application, MySQL is able to provide a commercial licence. Because MySQL has full ownership of the MySQL code, it is able to tailor its commercial licensing terms to meet the unique requirements of users interested in embedding or bundling MySQL.
Can dual-licensing benefit the open source world?
Sometimes a company may choose to use the commercial licence initially but then decide to alter their business model and open source their product. This decision may come about for several reasons. Perhaps the company’s focus has shifted away from software development and towards the consultancy market. For example, Databases-r-us could change to using the open source version of MySQL and release their own code under the GPL. The company might choose to do this in the belief that a side effect of making their code open source would be that their product became more widely used. This larger user base would in turn provide an opportunity for Databases-r-us to increase the revenue generated by its consultancy services. Clearly, this decision would only make sense if the business model of the company had changed, but if market penetration is a significant goal then this type of business model makes good sense. So, in a case like this, the open source world benefits from the dual-licensing model as the code developed by Databases-r-us is now available to anyone who wishes to use it.
However, it should be noted that dual-licensing may have a negative effect on community contributions to open source projects. That is, by allowing some people to keep modifications private, while others are forced to make their changes public, a number of developers will be locked out of the process. Nevertheless, for a specific type of business model, dual-licensing can be an important part of a company’s marketing armoury.
Dual-licensing for licence compatibility
Another reason for using a dual-licensing model is to circumvent some of the incompatibilities between OSI-certified licences. For example, the Mozilla Foundation uses a tri-licensing model employing the Mozilla Public License (MPL), the General Public License, and the Lesser General Public License (LGPL) to license certain software in an effort to address the issue of incompatibility with other open source licences.
Other dual-licensed products
MySQL is not the only open source company providing dual-licensed products. Other examples include:
- Qt, a cross platform toolkit used to develop GUIs, from Nokia (originally Trolltech)
- Berkeley DB, a database system, from Oracle (originally Sleepycat software)
- Asterisk, an open source telecommunications software suite, from Digium
Associated licensing models
A different type of licensing model can be seen when a company decides to offer two versions of its product, an open source version that offers basic functionality and a proprietary version that offers an enhanced feature set. This allows people who require only the baseline version of the product to use the open source version while customers with more complex requirements can purchase the proprietary version. Of course developers can take the open source version and add their own required customisations to this code in the normal way of open source but those who either cannot or do not want to do their own development can choose to pay for the proprietary version. Often, some of the additional features or customisations of the proprietary version make their way into the open source version. Thus the proprietary version helps pay for the development of the open source version.
Examples of products that are licensed under this model include:
- Sendmail - the legendary Mail Transfer Agent is available as open source software from sendmail.org, while Sendmail, Inc. produces proprietary messaging software targeting enterprise wide solutions
- Jaspersoft produces both an open source embedded library and a proprietary server based version of their tools for data access, analysis and reporting
- SugarCRM offer a community edition of their CRM software that is freely downloadable
Some vendors operate a licensing model where they offer a version of their software that is free to use but still proprietarily licensed alongside their commercial software products. Although this model is superficially similar to an open source business model it is not an open source business model. Unless software is released under an OSI- approved licence, it is not open source. These free-to-use versions are usually intended to introduce prospective customers to a vendor’s products, a marketing practice in common use across all markets and often known as a loss leader.
- OSI [http://www.opensource.org/]
- MySQL [http://www.mysql.com/]
- Oracle Berkeley DB [http://www.oracle.com/database/berkeley-db/index.html]
- Digium [http://www.digium.com/en/index.php]
- Moodle [http://moodle.org]
- LAMS [http://www.lamsfoundation.org/]
- Sendmail.org [http://www.sendmail.org/]
- Sendmail Inc [http://www.sendmail.com/]
- SugarCRM [http://www.sugarcrm.com]
- VMWare [http://www.vmware.com/products/]
- Jaspersoft [http://www.jaspersoft.com/]
Related information from OSS Watch