27
14 Comments

How to Build a Million-Dollar WordPress Plugin Business

Hello! What's your background, and what are you working on?

My name is Pippin Williamson. I'm a nature-loving farmboy who runs a software company called Sandhills Development. We build eCommerce, membership, and affiliate marketing plugins for site owners using WordPress.

I launched my first product in June, 2010, as a college student. Miraculously, my first sale came in within a few hours of launching the product, so I walked across the street and bought a latte I couldn't typically afford. Today we're a company of 13+ people making $191,000 per month.

Sandhills Development LLC

What motivated you to get started with Sandhills Development?

When I launched the first product in 2010 it was just me building small products and doing freelance website development for clients. I had no expectations of creating a company or doing anything more than what I was doing then. I was mostly just tinkering around with web development (primarily WordPress projects), having a good time, and managing to make just enough money to pay my bills. I also worked part time as a stagehand at a local theater to supplement my income.

I began to take web development and selling products seriously when my now-wife and I got engaged and the responsibility of providing for us while she finished her college degree became very real.

I spent the next two years building dozens of small WordPress product plugins and continuing site development for a few select clients. This worked really well for me. My customer base and revenue continued to grow rapidly from $100 or less per month up to $20,000-$25,000 per month. It was about this time, in early 2013, that I realized I needed to better insulate myself and my family by forming an LLC and making the business more "official". Mid 2013 is also when I decided to hire my first employee as the products had gotten too big for me to fully manage by myself.

By the end of 2013, the company was earning more than $30,000 per month with me, one employee, and a couple of part time contractors.

The company was originally filed as Pippin's Pages, LLC (left over from when I was primarily building custom websites), and later changed to Sandhills Development, LLC.

What went into building the initial product?

Early on there was no rhyme or reason to the products I built; if I had an idea that sounded fun, I built it, launched it, and hopefully made a few dollars. I built small widgets that would sell for $5 each, image slider plugins, custom font tools, content management systems, FAQ managers, and others. Anything and everything really.

The shotgun approach worked pretty well for me for two years and got me to the point of making ~$8,000 per month. Considering I had no employees and very low expenses, I was doing quite well. My focus narrowed, however, once I built the first product solely for the purpose of solving a pain point I had in my own business.

Execute. Nothing gets done if you don't launch an MVP.

I wanted to run a membership website that sold access to advanced development tutorials for WordPress, and I really wasn't happy with any of the available solutions at the time so I decided to make my own. The product that came out of this was called Restrict Content Pro and is now one of the three primary legs of the company's revenue.

Up until early 2012 I had been selling all of my products through a 3rd-party marketplace. I really wanted to become more independent, however, and manage everything myself. I spent some time researching the current options for selling digital products on my own site for a few weeks only to discover, once again, that I really wasn't happy with any of the existing options. So this led me into creating another product to solve my own problem. The product was a digital-only eCommerce plugin called Easy Digital Downloads.

The launch of Easy Digital Downloads made it possible for me to take control of the products I was selling by transitioning them over to my own site, https://pippinsplugins.com. This is one of the moves that catapulted me from making $6,000-8,000 per month in 2012 to $30,000 per month in 2013.

Sandhills Development LLC

As Easy Digital Downloads, Restrict Content Pro, and Pippin's Plugins continued to grow, I wanted to introduce an affiliate system to help grow even more. This was an area I wasn't too familiar with so I didn't do nearly enough research into the available options. Instead I picked the first system that looked okay and went with it. This turned out to be a blessing in disguise. The system I chose had some significant flaws that cost me a lot of time, money, and effort, but the silver lining was that it motivated me to build my own affiliate marketing platform that I could use for my products. That system was called AffiliateWP and launched in early 2014. It grew from $0 to $22,000 per month in fewer than 8 months.

Restrict Content Pro, Easy Digital Downloads, and AffiliateWP are the three main legs to our table but a fourth and fifth will likely be joining them sometime in 2018.

How have you attracted users and grown Sandhills Development?

Early on, my customers came from two primary sources:

  1. The large existing audience of CodeCanyon.net, the marketplace that I was publishing my products on.
  2. A naturally grown audience I was building through my frequent writing.

The existing audience that Code Canyon offered was critically important to my early success. Back then I had no reputation, no following, and no way to reach potential customers on my own. Leveraging the audience Envato (owner of Code Canyon) provided allowed me to build up an early customer base without having any marketable audience of my own.

Code Canyon helped me to build a small following pretty quickly that I was then able to cultivate into a much larger group through the content I was producing on my personal site, Pippin's Plugins. I was publishing tutorials, tips, and other blog posts several times per week. While my audience started out at nothing, I was able to build this into a pretty significant following fairly quickly.

Sandhills Development LLC

Through my products and writing, I was able to grow my site's traffic from a few hundred page sessions per month to more than 85,000 sessions per month at its peak. That traffic was critically important to the success of my products early on. Today the traffic to pippinsplugins.com is significantly lower but only because the majority of it is now sent directly to our product-specific websites.

We now continue to grow our audience through continual content production, email marketing, and social outreach. We're starting to get pretty good at these more traditional aspects of business, but that's only a recent development. For the first five years of the company, my traditional marketing skills were laughably bad. I just knew how to focus, work hard, and write about what I was doing. That won't work for everyone, but it worked for me.

For the first five years of the company, my traditional marketing skills were laughably bad.

One aspect of my writing that really attracted a lot of people was my transparency. I've always appreciated companies and individuals that embrace transparency and help others learn from their own achievements and failures, so I decided to embrace this as well and frequently wrote about my company's progress.

I shared everything. Revenue, mental struggles, milestones, etc. This helped to build a significant level of trust with my audience that then led to much of my audience becoming paying customers, brand evangelists, or both.

What's your business model, and how have you grown your revenue?

We sell each of our products through their own dedicated websites with an annual subscription that automatically renews each year. This currently provides us with $191,000.00 in average monthly revenue.

Over the last five years we have made a number of changes to our product pricing and sales models that have had significant impacts on our revenue.

When first starting out on Code Canyon, my products were all sold as one-time purchases that granted lifetime access. I quickly realized that was not sustainable and worked towards selling the products on my own sites where I could control the terms. Once I completed this product migration to my own site I instituted annual license renewals that helped to significantly raise the company's revenue as it provided an avenue for ongoing revenue from existing customers instead of relying wholly on new customer revenue.

It's been said by nearly every successful business, but I'll say it again: raising prices is one of the best decisions we made.

In 2013 I raised the price of Restrict Content Pro from $24 to $42. This provided a large boost in the average customer value, which was sorely needed after the initial move off of Code Canyon. Since I did not have as large of an audience as the marketplace, I had fewer customers. But raising the price allowed the product's revenue to remain steady as each sale put more money in the bank than previously. I was also keeping 100% of each sale instead of giving up 30% to Envato.

Between 2013 and 2015 the only real changes that affected our revenue was the introduction of new products and the continual development of existing products. That was enough to help us grow from $360,000 to $1,140,000.00.

Sandhills Development LLC

In 2016 and 2017 we made three distinct changes that had a positive impact on our cash flow.

First, we significantly raised the prices on our suite of Easy Digital Downloads products. The price change was significant enough that it actually lowered the total number of new customers coming on board, but it simultaneously raised our monthly revenue by $10,000 to $20,000. Prior to this price increase the Easy Digital Downloads project had been really struggling with the revenue-to-expense ratio as we weren't making nearly enough to cover the cost of supporting our customer base. By lowering the number of customers but raising the average customer value, we were able to return the project to profitability.

The second change we made was to implement automatic annual renewals. Previously we had relied on manual renewals for all customers. When renewal time came around, customers would receive an email asking them to renew their license. While this did work well, it didn't work nearly as well as it could. Enabling automatic renewals for all new purchases in early 2016 helped to significantly raise our monthly revenue in 2017 once we began seeing the first automatic renewals being processed.

Third, we raised the price of AffiliateWP and Restrict Content Pro (for the second time) in March, 2017. This price change successfully raised the average customer value without decreasing the number of new customers we brought on each month.

These three changes took us from $123,000.00/month to a $191,000.00/month almost overnight. Of course there is no such thing as an overnight success. There were months and months of work that led to this overnight increase.

We have successfully maintained profitability every year, but only by pretty slim margins. The changes made in 2016 and 2017, however, moved us from 2-5% profit margins to 15-20% profit margins.

Our annual revenue break down for the past eight years:

Year Revenue
2010 24326
2011 61666
2012 68500
2013 360000
2014 782000
2015 1140000
2016 1480000
2017 2268000

What are your goals for the future?

The most important piece of our philosophy at Sandhills Development is taking care of our people. While we are just a small team, the people that make up our team are the most important part of the company. Our goals are therefore always structured around improving the quality of life and happiness of our team.

When we are happy in our work, we're better at our work. Being happy and motivated is one of the best ways to ensure we're able to help customers do awesome things with our products.

To help ensure we maintain our ability to promote personal growth and happiness, I am constantly pursuing sustainable profitability. I view this as a level of monthly and yearly profit that allows a company to:

  1. Be financially stable and able to weather downturns in revenue
  2. Have adequate resources to make strategic investments
  3. Have the ability to bring on new team members to fill needed roles at any time
  4. Be financially able to pay all employees greater than a living wage
  5. Be financially stable enough to allow less-liked or neglected revenue streams to be removed
  6. Have adequate cash reserves to permit the company to survive in the case of catastrophe

With 2-5% profit margins in 2016 and years prior, it would have been very challenging for us to weather significant downfalls in revenue. If we struggle financially, every aspect of the company struggles, so the goal is to avoid struggling. It seems overly simple and perhaps a bit silly, but it's completely true.

While cash is not the most important thing in a company, it permits a company to pursue the things that are the most important. Therefore, cash is king.

The strategic changes we made to our pricing and sales models in 2016 and 2017 allowed us to reach sustainable profitability in 2017.

My goal going forward is to sustain and improve this level of profitability in 2018, 2019, and onwards. By doing that, I can ensure my team is given the flexibility needed to pursue their own avenues of personal growth and happiness. This in turn gives us the opportunity to take care of our customers as best as we possibly can.

What are the biggest challenges you've faced and obstacles you've overcome?

There's been so many, big and small. The biggest I think was the experience of launching a marketplace for 3rd-party add-ons to our Easy Digital Downloads product, running it for four years, and then, in October, 2017, shutting it down.

Easy Digital Downloads uses a freemium distribution model, meaning the core product is free and then a number of premium add-ons are sold. When Easy Digital Downloads was first launched, I decided to encourage 3rd-party developers to build add-ons for my platform by offering to sell add-ons they'd built on easydigitaldownloads.com. In exchange for selling the products on behalf of these 3rd-party developers, I took 30% of each sale.

This actually worked really, really well and helped Easy Digital Downloads grow significantly early on. I cannot say for sure, but I suspect a decent amount of the project's early success was due to the 3rd-party marketplace.

Overtime, however, a number of significant challenges surfaced from the marketplace. These challenges nearly resulted in half of my team leaving, caused huge levels of financial and emotional stress, and ultimately were the catalyst that caused us to close the marketplace.

First, the support burden was nearly insurmountable. We made a decision early on that our team would handle all of the technical support for add-ons sold through our marketplace, 1st and 3rd party. This decision was based purely on being able to control our brand. Customers bought from us so it was our brand that was on the line if they had a poor experience. I still believe it was the right choice, but it led to high stress and low morale as the team struggled to keep its head above the endless waves of support tickets, many of which were for products we barely knew how to use.

Sandhills Development LLC

Second, the management burden of reviewing, testing, updating and supporting hundreds of products from 3rd-party developers was overwhelming. The review queue for new product submissions would frequently be backlogged for 3-6 months at a time. Just managing the communication with dozens of product creators was prohibitively difficult, much less actually getting the products they created out the door.

Third, the financial impact of selling and supporting 3rd-party code was significant. On the outside it looked like Easy Digital Downloads was doing great, but in reality we were barely above water for several years. For example, in 2016 the Easy Digital Downloads project brought in $693,000.00 in gross revenue. Of that, $197,000.00 was paid to 3rd-party vendors. In 2015 we paid out even more in commissions with a total of $213,000.00 paid to vendors, and that was on a lower gross revenue of $562,000.00. We were losing 20-40% of our revenue to 3rd-party commissions but we were doing 95% of all the work since we provided all of the customer support.

These challenges were all of our own making and largely results of my own inexperience and stubbornness. Even though I knew the marketplace was hurting us, I refused to take decisive action for several years. In 2016 we worked to gradually reduce the footprint of the marketplace, but nothing we did was enough.

Stay humble. Believing you're the best or better than everyone else is one of the quickest ways to tumble to the bottom.

Finally, in September of 2017, it came to a tipping point and I made the decision to fully close down the marketplace. After the decision was made, we executed a plan to purchase, discontinue, or remove every 3rd-party add-on from our site. This involved reaching out to every vendor and informing them of our decision and then giving them an offer. They could sell their add-on to us, discontinue it, or move it somewhere else.

In the end, we removed 55 add-ons from our site. Out of the 55, we purchased the rights to 37 of them, spending nearly $150,000.00 in the process. Thankfully we had been working towards sustainable profitability, so spending that amount of cash was possible.

Running the marketplace for those years was chock full of valuable learning experiences, some more painful than others, but perhaps the biggest takeaway for me was the importance of fully owning our brand and product. We willingly permitted others to directly affect our brand and to influence where our efforts were put, and it nearly ended the Easy Digital Downloads product.

I would encourage everyone to embrace the valuable assets that 3rd-party developers provide but to simultaneously be very cautious about how that involvement affects the platform itself and a team's ability to work on the platform.

Have you found anything particularly helpful or advantageous?

The decision to move from manual renewals to automatic renewals is easily one of the best decisions we've made. That move alone added $30,000-$50,000 to our monthly revenue without any added marketing effort.

Intentionally working to cut "noise" out of my daily routine has helped me focus and work better. I used to actively follow all of the industry news and was constantly engaging in chatter on Twitter and various websites. I don't doubt that doing so helped me in many unseen ways early on, but now I try and limit the amount of noise from external sources I allow into my work day. The impact this has made is very, very noticeable.

In college I developed a love for cycling, and now I try to ride at least 20-50 miles each week. Sometimes I succeed and frequently I don't, but I still strive to make cycling part of my weekly routine. I have found that cycling not only gives me an enjoyable way to pursue better physical health, it also helps me tremendously with my own mental health. Being on the road for one to three hours with nothing but the wind and the sound of the world around me gives me time to just think, and I've found that time to be very important. If I'm battling with a difficult problem, whether it be in the logic of code I'm writing or in figuring out financial or personal issues, hopping on my bike and giving my mind the freedom to wander usually helps me work things out. Many of my best decisions have come while cycling.

Lastly, working hard to build a team of great people has helped us to advance far faster than anything else. I've made mistakes and hired (and fired) the wrong people but I've also done great in hiring the best people.

What's your advice for indie hackers who are just starting out?

Stay humble. Believing you're the best or better than everyone else is one of the quickest ways to tumble to the bottom.

Listen. Great pieces of advice are everywhere, but we're often too blind or busy to pay attention to them.

Read. Books contain hundreds of years of collective knowledge. Take advantage of them. I suggest Small Giants for those that want to build great companies.

Execute. Nothing gets done if you don't launch an MVP.

Share. We all learn from mistakes so share your own mistakes so others can learn from them.

Where can we go to learn more?

Our company website is http://sandhillsdev.com. From there you can find all of our products, including AffiliateWP, Easy Digital Downloads, Restrict Content Pro, and others we are working on.

You can also follow me on Twitter @pippinsplugins or my personal blog at Pippin.com.

  1. 1

    I am one of those who thinks that Restrict Content Pro (RCP) had a huge impact in my personal growth as well. I can't remember exactly how I chose RCP plugin for one of my businesses, but I had the need to provide a membership site and today it is one of the core plugins that we use. RCP helped to cross the $1MM mark in sales for one of my businesses back in 2016. I believe there are other multi-million businesses out there that are based on this plugin and that they have a lot to thank Pippin, too. In addition to appreciating the quality of how it is developed, making it easy to customize and extend.

    One of the questions I have for Pippin, after reading this interview is the following:

    With the revenue growth you experienced over this time, how it impacted in the infrastructure you used to host your websites? I could guess you started with a simple website powered by WordPress when you only had a few visits (be it a dedicated server, VPS, etc), but as soon as you started to receive more traffic and more sales, what configuration do you use today to ensure the level of service you need, stability and scalability? A single powerful server, multiple servers, load balancers? Could you please describe this in more detail, and how this impacted you during the growth phase?

    1. 1

      Hi JulianUY!

      I'm so happy to hear that RCP helped you grow your business. $1MM is amazing! Very little makes me happier than hearing about such great success stories from customers.

      My early websites were hosted in $3-5/month shared hosting plans with Dotster. After that I moved to perhaps an $8 / month Hostgator plan. From there I moved to WP Engine when they were brand new. I was one of their early customers they signed up through WordCamps and their "1-year free hosting" marketing plans. We upgraded through a number of WPE account levels as the business grew, but that infrastructure ultimately ended up not scaling well for us so a few years ago we migrated to a VPS at Pagely.

      We still host all of our sites with Pagely on their VPS-2 plan, which you can see the specifics of here: https://pagely.com/plans-pricing/

      Pagely has worked beautifully well for us and their support and devOps teams are top-notch.

      I have never been great at managing my own servers and would much prefer to have a hosting configuration I can be hands-off with so I can spend more time building the products we sell instead of building the infrastructure on which to sell our products. Pagely's VPS-2 has been exactly that.

  2. 1

    2-5% profitability on $191,000 per month means that you have very large costs. Is that mostly marketing? Do you need to spend the majority of your revenue on marketing costs? Im just trying to work out how much you have to spend marketing a product in order to sell it well - thanks

    1. 1

      Small update :)

      So far this year we're now up to a 17% profit margin.

    2. 1

      Our number one cost is people. We pay our team well and provide a number of benefits. For example, we cover 100% of all costs for medical insurance.

      Marketing certainly has its costs but they're not that high all things considered.

      Payroll is nearly always the largest expense in businesses that grow beyond 1-3 people.

  3. 1

    Awesome and inspiring story man!

  4. 1

    Thanks for sharing your story!

    Couple of questions:

    • What's the reason you're charging per year instead of per month, which is more the industry's standard?
    • Do you do a lot of A/B testing of your landingpages?
    • Was it difficult to schale your company from one person to a staff of 13? Any tips?
    • When you increase prices, do existing customers keep their current price?
    1. 1

      Monthly renewals work really well in SAAS offerings where the customer loses access to the product/service as soon as they stop paying. With our system the renewals are purely for access to updates and support as the software is self-hosted and licensed under the GPL. For this reason, we've found yearly works well for us.

      We will be exploring monthly options for a new product we are launching though. I'm excited to see how that works.

      In terms of A/B tests, we do try to have at least one A/B test running constantly. We're not always great at this but it is our goal.

      Scaling from 1-13 has been challenging, but it's been gradual so each challenge came at a reasonable pace. My best advice would be to hire an account and pay for a service like Gusto to help manage payroll and benefits. Also, communication is key. You and your team need to communicate frequently and well.

      Our price increases have always included a grand-fathering option for existing customers.

  5. 1

    Wow, awesome read Pippin! I use EDD for our premium plugins and honestly don't know what I would have done without it. So a big personal thank you for helping make my life easier. Your success is well deserved. Can't wait to see what you do next.

    1. 1

      So glad to hear it has worked well for you!

  6. 1

    Great revenue figures, reflective of lots of hard work, congratulations team!

  7. 1

    Pippin and his work has had a huge impact on my personal growth, and who I am today! Keep setting the bar high, Pippin!

  8. 1

    This comment was deleted 5 years ago