Are All Paid WordPress Plugins Technically Free Under GPL?

James Parsons by James Parsons Updated Jun 4th, 2024 12 min read

0:00 Listen to audio podcast

WordPress Plugins Under GPL

Every now and then, as a developer, you might run into discussions of licensing and legal requirements relating to the products you develop.

For WordPress developers like myself, particularly those working on creating plugins, the biggest stumbling block is the GPL and what it means for your business.

The discussion stems from the use of the GNU Public License agreement, which WordPress uses for their CMS in general, and which many open-source projects use as a way to prevent anyone from taking their projects private and putting them behind a paywall.

What does that mean for plugins, though? Well, there's some debate. It's actually pretty interesting:

30 Second Summary

Discussions around licensing are common in the development community, especially concerning the GNU Public License (GPL) agreement and its implications for WordPress plugins. Opinions about it being applied on derivative works (plugins or themes) are divided, with some asserting all themes and plugins should be free due to the GPL's nature. However, the GPL also allows for selling of the licensed code. What is often paid for are updates, security, API access, advanced features, support, ongoing development, and ethical peace of mind.

What Is the GPL?

First, let's talk a bit about the GPL.

The GPL is the GNU General Public License, and it's broadly considered the go-to license to use for open-source coding projects. It's not the only free and open-source software license out there, but it's one of the most common.

GNU General Public License

WordPress itself is a collaboratively-created platform using open-source principles. You can dig into the code yourself and take a look, or even consider helping to collaborate, on their public GitHub page. By licensing WordPress under GPL, they ensure that no one can just copy their code, make a few changes, and license it privately.

One of the biggest elements of the GPL is, in fact, the license extending to derivative works. It's how open-source projects protect themselves, and it's a legal framework for defending otherwise open intellectual property.

Are Themes and Plugins Derivative Works?

What constitutes a derivative work? Well, that's a matter that's up for debate.

Many people, including WordPress themselves, consider things like WordPress plugins and themes to be derivative works.

GNU Public License

Here's what WordPress has to say about it directly:

"Part of this license outlines requirements for derivative works, such as plugins or themes. Derivatives of WordPress code inherit the GPL license. […] There is some legal grey area regarding what is considered a derivative work, but we feel strongly that plugins and themes are derivative work and thus inherit the GPL license. If you disagree, you might want to consider a non-GPL platform such as Serendipity (BSD license) instead."

WordPress also cites Drupal, a similar platform-with-plugins service that uses the GPL, for their page on the ramifications of the license on plugins. Drupal's page is here and goes through a lot of common questions and scenarios.

All of this brings you to the natural question.

If the GPL is for free software, and if the license trickles down and applies to derivative works, and if derivative works include themes and plugins, shouldn't themes and plugins be free?

One Weird Trick

Let me ask you this: if it's entirely legal to get a thing for free, but seemingly everyone involved in the industry is happy paying for it, why is that the case?

There are thousands upon thousands of WordPress plugins and themes available, both freely in the WordPress directories and for money on countless individual websites and marketplaces like Envato and derivative sites. How would any of these exist if everything they sell can be obtained for free?

People who believe the GPL makes all plugins and themes free are trying to exploit this "one weird trick" to get paid content for free.

Here's the thing, though: they're kind of right. More on that later, though.

Various WordPress Plugins

This has been the subject of intense debate for over 15 years at this point. The original founder of WordPress, the people behind the GPL, and many people in all spheres, from software developers to lawyers, have weighed in on the conversation.

The tricky part lies in how the GPL defines plugins, themes, and derivative works. When you're reading into the situation, you get to read such insightful sections as:

"When is a program and its plug-ins considered a single combined program?

It depends on how the main program invokes its plug-ins. If the main program uses fork and exec to invoke plug-ins, and they establish intimate communication by sharing complex data structures or shipping complex data structures back and forth, that can make them one single combined program. A main program that uses a simple fork and exec to invoke plug-ins and does not establish intimate communication between them results in the plug-ins being a separate program.

If the main program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single combined program, which must be treated as an extension of both the main program and the plug-ins. If the main program dynamically links plug-ins, but the communication between them is limited to invoking the 'main' function of the plug-in with some options and waiting for it to return, that is a borderline case."

Makes sense, right?

Well, not really. The way modern computers, software, and operating systems work, this means a lot of different things can conceptually be argued to fall under the license that most people would definitely not attribute as being the same system.

In official discussions between GNU and WordPress, the general opinion was that plugins and themes are generally derivative works. It's theoretically possible to build an isolated plugin that doesn't interact with the rest of WordPress in a way that makes it not inherit the GPL, but realistically, no one is bothering to do that because it eliminates pretty much any reason you would have to make it a plugin in the first place.

So, by the broadest reading, technically, yes, most paid plugins would fall under the GPL and could be had and distributed for free.

But there are two reasons why this isn't how it all shakes out in practice. At least, in most cases.

The Murky Waters of Code

Here's where things get a little more complicated. What is a plugin when you get right down to it? It's code, and that code includes things like PHP, CSS, JavaScript, HTML, and even images and copywriting inside the plugin.

The derivative work of WordPress is only the PHP code. Anything else – the CSS or JS, the writing, the images – does not inherit the GPL and can have a different, more restrictive copyright or license applied to it.

You can see how this shakes out in practice. Envato's marketplace uses a split license system. Basically, they agree that the PHP components of a plugin and its integrated HTML elements are covered by the GPL as derivative parts of WordPress.

Everything else is covered by the Envato Market License.

Envato Split Licensing

Z
Z
Z
Is your blog earning you business? If not, let's fix that.

We create blog content that converts - not just for ourselves, but for our clients, too.

We pick blog topics like hedge funds pick stocks. Then, we create articles that are 10x better to earn the top spot.

Content marketing has two ingredients - content and marketing. We've earned our black belts in both.

If you run an internet-based business and are looking to scale, schedule a call to speak with our founder:

Authors of plugins can choose different licenses, and many do. Some choose to put everything under the GPL and just make free plugins, supported by ads, or by donations, or just as a hobby they don't monetize.

Per GPL, Free Isn't Always Free

Another way this gets murky is that, despite being a free software license, the GPL allows for people to sell their licensed code.

GPL FAQ Answers

There are quite a few sections on this in their FAQ.

"Does the GPL allow me to sell copies of the program for money?

Yes, the GPL allows everyone to do this. The right to sell copies is part of the definition of free software."

And

"If I distribute GPLed software for a fee, am I required to also make it available to the public without a charge?

No. However, if someone pays your fee and gets a copy, the GPL gives them the freedom to release it to the public, with or without a fee. For example, someone could pay your fee and then put her copy on a website for the general public."

Are two such passages.

Technically, you can get a plugin for free if that plugin is wholly licensed under the GPL. You can't go to a developer and demand that they give you a copy for free, though. You would have to get it from someone else, and that someone else would need to have paid for it originally (or in turn have gotten it from someone else who had paid, or… and so on.)

For split-license plugins, though, you don't get that option. You can get the GPL-covered code, but plugins are usually heavy on non-PHP elements, and having a pile of PHP isn't going to help you all that much.

What You Pay For

So, let's talk about things from the other perspective. Instead of trying to find some legal loophole to get some plugins for free, think about what you're actually paying for when you buy a theme or a plugin. These are both things that are tangible for you and things that are intangible.

1. Updates and security

Perhaps the single biggest thing you're paying for when you buy a plugin is the license to get updates to that plugin. When you get a plugin for free, when that plugin is usually paid, great; you have a pile of code. It works fine for now, but what if WordPress pushes an update that breaks a core feature of the plugin or theme you were using? What if there's an exploit found in the code, either of WordPress or of the plugin, that compromises the security of your site?

A Plugin Update

You can't just click the update button and get a new version of the plugin because you don't have the license for those updates. You got the code, be happy with the code. If you need an updated version, well, you can go jump through hoops to get it the same way you got it the first time. Hopefully your source has the update, right?

2. API access and integrations

You can get the code of a plugin for free, but what are you going to do if that plugin needs API access, either to the developer's servers or to a third-party system, and you don't have that API access?

WordPress Plugin API Access

Most APIs are gated behind paywalls of some sort, and your legal loophole to use the GPL to get the plugin guilt-free isn't going to give you access to those servers. The same goes for other integrations that aren't with GPL-covered systems.

3. Advanced features and code-based data processing

There are a lot of plugins that do things like track user usage, like heatmap data, for example. You can get the PHP code under the GPL to track all of that user data, but what good is that data to you? You might just end up with a spreadsheet full of timestamped coordinates and URLs; you don't get the fancy heatmap because that heatmap is part of the JavaScript and other code that isn't covered by the GPL. Sure, maybe the heatmap plugin is fully GPLed instead of a split license, but that's something you need to verify.

WordPress Plugin Advanced Features

The same goes for anything that takes data, whether it's from your site or from another source like Google Analytics, and formats, interprets, or displays it in a novel way. Getting raw analytics data is free; displaying it in fancy comparative charts may use proprietary scripts.

4. Support and onboarding

Another huge element of paying for plugins is getting support. Does it even work on your site? Maybe there's a conflict with another plugin, or maybe you made a mistake in installing it, or maybe there's some error somewhere.

Userlike WordPress Plugin Support

It's not common, sure, but when it happens, it sure is handy to have someone in the developer's crew you can ask to help you out. If you're not paying for the license, you don't have any right to demand their time or attention. Onboarding is the same for larger and more complex systems that might require training.

5. Ongoing development and improvements

One of the more intangible benefits of paying for a plugin is helping to keep the developers around. Most people don't have the luxury to spend hours of their weeks on a passion project. People have jobs, families, and responsibilities. When you buy a paid plugin, your money keeps these people employed, keeps their attention on further development and improvements, and helps ensure the plugin will keep working in the future.

A WordPress Plugin With Upgrades and Support

If you've ever run into a plugin that would be perfect, except it hasn't been updated in five years and doesn't work with modern WordPress; well, that can happen to any plugin if it's not profitable to run.

6. Safety from your web host

This one is less common, but it has been known to happen. A lot of times, when you're exploiting GPL loopholes for plugins, you're not actually getting the plugin as-is. That's because the plugin probably has some kind of callback or authentication to get it to function, and in order for that to work for people who haven't bought licenses, it needs to be nulled out.

Article About Nulled WordPress Plugins

Some web hosts might check, and if they find that you're running nulled plugins, they might even cancel your hosting. Again, it is rare, but it is known to happen from time to time.

7. Ethical peace of mind

The GPL, the open-source movement, and the intersection between it and WordPress is an ethical minefield. Some people feel fully within their rights to weaponize the GPL to get whatever they want for free. Others respect the boundaries of developers and the ethics of the project. The GPL exists to try to make the world a better place and to foster collaboration between developers, coders, and users. Using it for personal gain, just to take a plugin for free for your personal use, doesn't benefit anyone but yourself.

Again, while it might not be legally wrong – and in some cases, not even ethically wrong – it's a consideration.

A WordPress Plugin License Certificate

As a site owner, do what makes the most ethical and moral sense to you.

As a developer, consider full GPL releases, a split license, a freemium model, or whatever you like, but keep in mind that this is a landscape you'll need to navigate, and it isn't always easy.

What do you think? Did you learn anything from this? Do you have any questions for me on WordPress plugins or GPL? Please share in the comments! I'd love to start a convo on this subject.

Written by James Parsons

James Parsons is the founder and CEO of Content Powered, a premier content marketing agency that leverages nearly two decades of his experience in content marketing to drive business growth. Renowned for founding and scaling multi-million dollar eCommerce businesses through strategic content marketing, James has become a trusted voice in the industry, sharing his insights in Search Engine Watch, Search Engine Journal, Forbes, Entrepreneur, Inc, and other leading publications. His background encompasses key roles across various agencies, contributing to the content strategies of major brands like eBay and Expedia. James's expertise spans SEO, conversion rate optimization, and effective content strategies, making him a pivotal figure in the industry.