WordPress product monetization issues

Creative Motion founders Ilya Sukharev and Vladislav Chernov share their experience of monetizing their WordPress products.







Currently, WordPress is not very popular in our territories, but globally it covers over 28 percent of the Internet. WordPress has over 150,000 plugins and themes, accounting for over 1.3 billion downloads on WordPress.org alone. This is a really powerful platform for running a lucrative plugin business.



However, when we examine the space more closely, we find that only 5% of the products have a paid offer. You might think that this 5% owns 99% of the market, but in reality, this is far from the case.



Monetized items account for only 22 percent of the total active items. Most of the installed and active plugins and themes on the WordPress market are completely free. Not all WordPress developers monetize their work.



Technically speaking, developing open source distributed software like a WordPress plugin or theme is pretty straightforward. A combination of PHP and JavaScript / HTML, that's it - you're ready to deploy your WordPress product!



You don't need servers to run your software, you don't need to know much about databases, and you don't even need object-oriented programming. In fact, many of the most popular plugins and themes in the WordPress ecosystem have been created by self-taught developers.



There are also very complex plugins with a lot of logic, as well as "Serviceware" plugins that wrap the cloud service. But these are exceptions.



In a sense, WordPress has democratized not only publishing, but development as well. The combination of a weakly typed internal language like PHP, great documentation, and the ability to use third-party GPL code has turned tens of thousands of WordPress users into entry-level programmers.



It should be noted that you don't need a server to offer your product on the WordPress.org repository, which is a double-edged sword, which makes developing and maintaining a project relatively easy, but very limited.



When it comes to turning a plugin or theme into a commercial product (i.e. business plugins), it's a completely different story. This is technically much more complex and layered than creating a plugin / theme and has nothing to do with the functionality of your module.



The main (technical) problems of WordPress product monetization



After working at WordPress for several years, we identified the main technical problems associated with monetization and here's what we learned:



Collection of payments



This is obvious: if you want to start a WordPress business, you have to raise money. There are so many different aspects and changing circumstances in accepting payments that it is difficult to know where to start.



The simplest solution would be to register with a payment gateway that offers a standalone payment solution like PayPal (assuming PayPal is supported in your country). You will be able to create a custom checkout link and add this link to your desired location in the free version of the plugin.



This is a good start for collecting your first dollars, but it is not reliable. All popular gateway solutions like PayPal, Stripe, Braintree, or Authorize.net won't host your Pro code, won't handle licensing management, and the best you'll get from them beyond the actual processing of transactions is an electronic purchase notification.



To automate the process, you will need to integrate the API of these services into your product and run processes to open a download link for the professional version or automatically send a zip archive by email after purchase.



You can try to implement these API callbacks in your free software, but that means you will transfer your license and "post-payment processing" logic to anyone. If you want to protect this mechanism, it must be running on your server and synchronized with the logic of the licensing level.



Software licensing



Once a user gets your Pro version, if you don't have some sort of licensing mechanism, there is nothing you can do to prevent them from using it across multiple sites, sending to friends, sharing it on Facebook, or even torrenting it to the internet.



The obvious reason you should be careful is loss of income. If you sell a license for each site for $ 100 a year, and one customer installs their only copy on 10 different sites, then you are at a $ 900 loss.



Another important reason is support. Since you provide priority support to paid customers, how do you know if the person who contacted you is a real customer or just downloaded your code as a torrent?



When you want to protect your paid offering instead of basing your licensing on trust alone, you need to have a licensing control layer so that only paid customers can access your paid software.



Secure code hosting



Due to the limitations of the WordPress.org repository, namely - “everything should be free”, placing premium plugins or themes in the repository is prohibited. Moreover, when offering a freemium product, the paid features of your product are not allowed in the repository.



You can sign up to one of the popular Git services like GitHub or BitBucket, or host it without any version control solution in a cloud storage like Amazon S3. Whichever hosting you choose, you will need to write a set of permissions to restrict access to the repository / cloud files only to customers who have a valid license.



Software updates



When it comes to version updates, the good news is that WordPress comes with a software update mechanism as part of the core. Unfortunately, this mechanism only works with the official WordPress.org API, so you won't be able to use it for your PRO code.



Since PRO code must be stored in an external repository, your PRO code requires an additional logical layer to control the default software update mechanism to work with your API endpoint.



You will need to design and provide your RESTful API endpoint to the software update mechanics. The logic behind this endpoint should check if the calling site has a valid license. If so, check if there is a newer version of the software and return the secure URL to download the latest PRO version.



If you want to make this API secure, you will have to configure SSL and add authentication and authorization levels. Is it related to the core of your plugin or theme? Absolutely not. But this is a prerequisite if you want to monetize yourself.



Unfortunately, the above points are just the tip of the iceberg. Whether you want to automatically send invoices, provide free trials, sign up for support services, sell to European customers, or sell from Europe, things get messy pretty quickly.



When we launched our first Clearfy plugin , we sold only $ 1,350 in licenses in the first month. It was only then that we realized that creating plugins and selling them are two completely different skills.



To be successful in sales, in addition to technical problems, programmers also have to be marketers (designers, content writers, SEO experts, security specialists and customer support).



Add that to the fact that if you want to monetize yourself, you'll need to run multiple servers and dive into some serious backend work. Is it possible for loners? Our experience shows that it is not possible to advance in this market without well-coordinated teamwork.



All Articles