Building a WordPress Plugin

I recently decided to build a WordPress plugin. It’s called Stackable, a lightning fast way to create a duplicate copies of your WordPress site. I’ve built WordPress plugins for myself before, however this is the first time I’m going through the complete process with plans to actually sell it to other WordPress developers.

Now to be clear, actually building a plugin that solves a problem is hard enough. It’s a completely different story to build something you plan to sell to others. Since this is first time I’m going through this process, this blog post will mostly be me documenting how I’m going about it. If you’re thinking about selling your first WordPress plugin then read on. You’ll most likely have all of same questions that I have.

What to charge? Unless possibilities.

There many ways a WordPress developer can go about selling a WordPress plugin. One option is to build out two versions of the plugin: a free version and a paid version. The free version is submitted to the WordPress.org repository and provides some core functionality with a plug to upgrade to the paid version. The paid version is typically sold directly on the plugin author’s own website with some sort of license key system. I really wanted to keep it simple and started by asking the following question on Twitter.

After some really valuable conversations I decided the following:

  • Not doing a free version. That means I’ll miss out on any free exposure that comes from the WordPress.org repository. In exchange I can control how I provide technical support and focus on building a single paid version of my plugin.
  • Will sell directly on my own. I actually considered just doing a “pay what you want” model however, that has its drawbacks. If people don’t have to pay for something then they most likely won’t. If something has value then charge for it. There are plenty of people willing to pay for something as long as it provides value and is easy to purchase.
  • Require an active subscription for automatic updates. I dislike license keys however there needs to some sort of mechanism that insures plugin updates and support requests are provided for customers that are actually paying for it. I’m not talking about some unhackable method but something simple that makes sure honest folks keep paying for things they actually use.

There are still lots of other decisions like, do I sell a limetime license for early adopters? Do I charge on a tiered approach? How do I determine pricing? Will it be per site? Or maybe per feature? So many questions and so many things to consider. At the end of the day, it should be a pleasure for a potential customer to examine your digital product and decide to purchase or not.

Choose a plugin e-commerce delivery system.

There are two popular self hosted options for selling plugins: Easy Digital Downloads (EDD) and WooCommerce. I use WooCommerce for Anchor Hosting and decided to try out Easy Digital Downloads. Both ecosystems are fairly well supported. They pretty much have any add-on you would need. Picking which add-ons you need can get quite pricey. Luckily EDD now sells all access passes which keeps the cost to around $300/year for the e-commerce add-ons that I plan to use. I’d recommend checking out CodeinWP’s post “EDD vs Freemius vs Gumroad vs WooCommerce – Which Is the Best for Selling WordPress Plugins and Themes?“.

All of the costs, so far.

Due to the fact that I run a WordPress hosting company, I don’t charge myself for hosting services. Even if I did, Stackable is unique because stackablewp.com is actually a stacked website itself. That means it’s pigged backed on a single instance of WordPress and literally costs me nothing extra to host. So essentially I have no web hosting costs. So far here is what I’ve paid:

Collecting emails while under development.

After my initial decision to actually build something, it took about a week until I had built a mostly working concept. It wasn’t fully functional, however it covered pretty much what I wanted the plugin to be. It was enough development time to screencast a video preview, see below, and to start collecting email signups. I created https://stackablewp.com as a single page with a video, and a short explanation with a Gravity Form.

At the time of this writing, my website has been up for 1 week and I’ve collected 33 email address. Considering I’ve never done this before, I’m more than thrilled. I do expect this number to steadily increase over the next few months as I prepare for launch day.

ARVE Error: src mismatch
provider:    vimeo
url: https://vimeo.com/434706320/d6416053fb

src: https://player.vimeo.com/video/434706320?dnt=1&app_id=122963
src mod: https://player.vimeo.com/video/434706320
src gen mod: https://player.vimeo.com/video/434706320?h=d6416053fb
src gen: https://player.vimeo.com/video/434706320?h=d6416053fb&dnt=1

Preview of Stackable
Preview of Stackable

Spend ample time figuring out the things you haven’t done before.

I’ve been reading and learning from others. I’d highly recommend Brian Jackson’s post 17 things we’ve learned from building and selling WordPress plugins (good and bad). It’s a fantastic look at what it takes to sell WordPress plugins as your full time gig. Another great example is looking at how Rich Tabor launched his new Iceberg plugin: Rich Tabor and his latest digital product Iceberg.

Talk about what you’re doing, a lot.

It just so happened that my post queue for Anchor Hosting had dried up. What should I write about? Why the plugin I’m building, of course :). Both this week and last week are all about different aspects of Stackable. Trust me there is more to come! Writing isn’t just about getting more exposure. Yes that’s bound to happen. It’s about being transparent and helping others. It also helps me, the plugin author, to figure out what I’m actually creating.