Launching an Extension in the WooCommerce Marketplace

I launched an extension in the WooCommerce Marketplace! It’s been three years since I came up with the initial idea and it’s exciting to see it being sold on

For anyone interested in selling WooCommerce products, I wanted to share some thoughts on the process.

Coming Up With A Product

The extension idea originally came out of a client project. A company I worked with acquired a lot of their new customers through Facebook advertising, and they wanted a way to offer those new customers a big discount on their first purchase.

The first version of the extension took a couple days to build. It simply added a checkbox to the coupon editor for marking coupons as “new customer only” and validation on checkout. From that basic idea, I then started to add other restriction options I thought would be useful.

WooCommerce client work is great source of extension ideas because it requires solving a real need for a customer (and is something they’re willing to pay for).

To get the extension idea accepted to the WooCommerce Marketplace, I also had to prove that others wanted this functionality. Luckily, a number of people had also requested this on the WooCommerce idea board as well.

Marketplace Review

I submitted the extension to the WooCommerce Marketplace March 10th, two days after it re-opened to third-party sellers. The extension was officially approved May 24th and went live June 28th. So, I’d encourage anyone going through this process to have patience.

The Marketplace Review consisted of three main parts: a user experience review, a code review, and a support review/setup.

UX Review

I really liked that UX was first in this process. My reviewer had a number of great questions and suggestions. Some of the feedback required small tweaks, like changing a select field to radio buttons, or updating field label text to be more consistent with WooCommerce core. Others were more involved, like adding an entire onboarding sequence with tooltip pointers when someone first activates the extension.

The idea behind a UX review is that the interface should be as intuitive as possible. Most customers don’t bother to read the docs before contacting support, so having a great onboarding sequence and clear labels really helps everyone.

Code Review

The code review happened after the UX review, and just consisted of a few architecture recommendations. But one of the recommendations was to switch from using the stored customer data (for location restrictions) to session data (in case the customer changed address fields for shipping, etc), which called for a major rewrite of the codebase and took a number of days to complete.

To make sure the code was 100% solid before selling it to Marketplace customers, I also asked another developer I know to do a code review (paid). This gave me a number of great additional improvements. Most were under-the-hood code styling tips, but it also flagged a potential performance issue that could happen for stores with high order volume.

Automated Tests

Unit and integration tests are essential for any WooCommerce plugin. I discovered this the hard way when the first version of my plugin worked perfectly for coupons that had a new customer restriction, but broke checkout for all other coupons.

The plugin now has 19 different integration tests, which ensure coupons work with all the different restrictions applied (or none at all applied). It also runs against different versions of WooCommerce (which is great when a new version is being released) and multiple versions of PHP. I run the tests frequently when updating code, and the test also run automatically on Travis CI every time a commit is pushed to GitHub.

Although automated tests won’t catch every bug, it allows me to test against new versions of WooCommerce core much quicker and provides a greater level of confidence when releasing new code.

Pricing and Sales

The WooCommerce Marketplace doesn’t give you a lot of control over pricing. There are a few different price tiers based on the amount and complexity of functionality being added. As a fairly simple plugin (especially compared to something like Subscriptions or Memberships), my extension was priced at $49.

WooCommerce returns 60% of net sales to the extension author. That “net sales” part is important, as your rate is calculated after discounts, refunds, reversals, affiliate fees, payment processing fees, and taxes.

For instance, I’ve have 25 active subscriptions this month, but also had a 50% off sale for their 10th anniversary this month, which is when a lot of those sales happened. Total revenue for the month is $805, which is about $32 per unit (rather than $49). And my commission is $384 (about 48%).

This will probably be an outlier month because of the big sale, but it’s something to consider as you decide whether to launch on Marketplace.

Benefits of the Marketplace

I sold this extension through DevPress for about a year before listing it on the Marketplace and had about 100 sales. It’s pretty neat how many people actually found the product through a search and were willing to purchase through a site they had never heard of before.

But selling through the WooCommerce Marketplace has a lot of advantages. Here’s a few:

  • The vast majority of shop owners and developers have an account and credit card registered with, so there’s way less friction for purchases.
  • The Marketplace handles licenses and automatic updates. You don’t need to add any additional code to your extension, it just works.
  • License renewals! Although a customer doesn’t have to renew, they’ll see a notice on their site if they’re using an outdated version of your extension- which should encourage them to keep their license active.
  • WooCommerce does the marketing for you. They have an affiliate program and also run promotions.

Worth the Effort?

I wish I had tracked hours on this extension from the beginning. It was at least 200 (and likely quite a bit more). Would I have been better off financially by just taking on a freelance WooCommerce jobs with this time? We’ll see. The extension will need to earn at least $30,000 over its lifetime to match a freelance project of the same hours.

In the first month live, it’s earned $384 in commissions (with 25 active subscriptions)

This may not seem like a lot, but if half of those renew their license when it expires, one year from now I’ll earn an additional $588. It’s definitely a business that can grow over time if people like the extension and keep it active on their site.

Final Thoughts

I enjoyed building this extension. It gave me an opportunity to get more familiar with the WooCommerce codebase, gain experience with feature testing, and help out a number of people who needed this feature for their site. It was also neat to see sales on the first day- that doesn’t always happen with a new product.

However, I’m really curious to see how the extension sells over time and what the support load is like. I have a few additional extension ideas, but am hesitant about investing the time until I see how this first one does.

If you know anyone who uses coupons with their WooCommerce site, please let them know about the extension! If you’re thinking about launching your own extension in the WooCommerce Marketplace and have any questions, feel free to contact me at!

Change the Look of Your Site with Jetpack Modules

Jetpack offers dozens of different options to expand upon the basic layout and settings within WordPress. With the expanded Appearance modules, you can add several exciting options to your site. These will improve the look and feel of your site as well as add additional functionality and usability.

We at DevPress think these are great options for your site, and encourage you to check them out. Below we’ll look at each option and how it can be used. Continue reading

Building an Author Website with WordPress

Every writer needs a website.

You might want to have a portfolio of your writing, feature short pieces on a blog, or connect with your fans.

In this post we will take a look at how you can build a simple author website using DevPress themes. In this particular example, we’re going to focus on the Luminate theme, but any of the other DevPress themes that feature at least one sidebar will work just as well.

Here’s an example of a simple author site using Luminate:

screenshot of sample site

Let’s look at how to put it together! Continue reading

Get Social with Jetpack!

We know you value your content and want to share it as widely as possible. The Social modules within the free Jetpack plugin give you new ways to interact with your readers. You can make it easier for them to comment on your posts, and you can add sharing buttons to allow your readers to post your content on various social media sites. By connecting your site to Facebook and Twitter, and allowing your visitors to share the content, you will drive even more traffic to your site. Continue reading

Track your WordPress Site Visits with Google Analytics

Whether you’re a small business or a blogger, once you build a website you’ll want to know how much traffic you’re getting. This can help you better plan your marketing strategy, determine which of your web copy and call to action items are most successful, or convince companies to advertise on your site.

Even if you don’t know how you might use this data in the future, it’s a good idea to start tracking your site visits immediately upon building a website, or as soon as you can afterwards. That way you can start monitoring changes over time and see how much your site traffic grows along with your business.

Although there are lots of services that will allow you to track some of your site data, we at DevPress think the best, and most comprehensive, solution for the average website will be Google Analytics, a free data collection tool from Google. It can be modified to track pretty much any activity on a site, including page clicks, button clicks, and time spent on a page, and the great thing is, once you’ve set it up, it’s completely invisible to your visitors. Continue reading

Luminate: A Bright New Theme

We’re super happy to announce that we’ve added a new design. Luminate officially joins the DevPress theme family!

Luminate is designed with small business in mind. It features a page showcase layout where you can easily highlight services on the home page with eye-catching images and text. You can also display important information like a phone number, hours, or location in the top bar of every page.

screenshot Continue reading

Thoughts on Theme Options

One of the most difficult decisions I face when building a new theme is which customization options to include.

It’s an incredibly difficult feature to balance. Customization options can make it possible for a single theme to be used for a greater variety of websites (which is good from a sales perspective), but it can also make a theme more complex to set up and customize.

Many of the best-selling commercial WordPress themes are ones that allow non-developers a huge amount of customization choices. Avada, Canvas, Divi, Make, Total and X Theme all have hundreds of settings. The big website platforms like Squarespace and Wix also provide a huge amount of design control.

Options Are Both Popular and Complex

I understand why customization is important. One of the main purposes of a website is to express a brand or identity. Customization of fonts and colors can be hugely important. When I helped my wife set up her first WordPress site years ago, I installed Canvas by WooThemes because I knew she’d want something that could be altered to fit her specific design aesthetic (and I didn’t have time at the time to customize it for her).

But even with a thousand options, there’s no way that everything can be customized. And adding many options has a downside: it increases the complexity of the user interface and code. Continue reading