My name is Milan, and I am the owner of Dev4Press, a company dedicated to WordPress and bbPress plugins development. Dev4Press was created in 2009 as a side project, and a lot has changed since then, except for one thing: it is still a team of one.
In this guest post, I want to share my challenges and methods for growing a WordPress plugin.
Starting with WordPress
I have been developing plugins for WordPress for a long time now, starting way back in 2007. At first, I created a few small plugins to enhance a friend’s website. These plugins started to gain popularity in the WordPress.org repository, and that has soon expanded to small freelance jobs, which expanded to even more freelance jobs. I have quit my day job and started working full time as a WordPress freelancer.
Freelance work was bringing in money and with it came financial security. In the period from 2007 to 2011, I have created more than 100 plugins and themes for various clients and built complete websites. I was very comfortable with the work I did, and have even started rejecting job offers, choosing only the projects I found interesting.
First steps in selling WordPress plugins
In parallel, I continued to work on my free plugins, and have even started the first version of the Dev4Press website, where I began selling paid versions of two of my plugins. In 2010, the Dev4Press website started selling more licenses, and this trend continued through 2012. This was still not close to the income the freelance work was bringing in, but it was hard to ignore. Therefore, I incrementally started allocating more and more days to work on the plugins while reducing the amount of freelance work and increasing my hourly rate to maintain the same revenue.
A plugin business or freelance?
Selling plugin licenses became a real thing, so I started to weight whether to continue with the freelance career or focus on growing a WordPress plugin business.
Here is the list of things I had to take into account:
- Freelance work does offer a chance to work on a variety of interesting projects But, whatever I do is eventually not mine, and in many cases, I don’t get the chance to develop these plugins further.
- Working for clients is very hard because most of them are not tech-savvy, so navigating the development process can be very taxing, going back and forth between decisions, doing things that I don’t quite agree with… To be honest, I had many great clients that often agreed with my feedback, but for every cooperative client, there were probably 5 that it was “their way or the highway”.
- Working for clients involves a lot of time wasted on discussions, showcasing the completed work (sometimes on a daily basis), adjusting my working hours for clients that live in different time-zones, sometimes literally on the other side of the world. And when dealing with larger projects, almost half of the time is spent on other things that don’t involve any development.
- Working on my plugins gives me the opportunity to work on my own pace, develop features based on real users feedback while incorporating my vision and roadmap for the products.
- Having my own business is better for the long term. Whatever plugin I make, it remains mine, and in the long run, this business has a potential to bring in more money than freelance work.
- I liked the idea of being my own boss 🙂
The decision was not easy. In fact, I spend months considering all the pros and cons.
Should you continue with the freelance career or focus on growing a WordPress plugin business? Here are the pros & consTweet
One thing was obvious though, one job had to be terminated. In 2014, I have stopped taking freelance jobs. My time was now fully dedicated to my plugins shop and to the Dev4Press website.
The Dev4Press project is essentially just me. I am the sole developer of all the Dev4Press plugins. I handle everything starting from maintaining the eCommerce, writing the knowledge base content, social media, support, and obviously the development.
Most of my work is dedicated to the plugins & add-ons development and maintenance. Only in the past year, I had 33 major releases for 13 Pro Dev4Press plugins, and even more minor releases. All of that in parallel to providing a top-notch support, testing, bug fixes, creating new documents for the knowledge base, and working closely with users to better understand the direction to take with each plugin. I also handle paperwork, deal with the payment processor, the banks, and accountant.
The Challenges Of Being A Solopreneur
Running any business has its challenges. But, running every aspect of the business alone, is a challenge in itself. Since Dev4Press went online for the first time, and especially in the past 4 years, I had to make many hard decisions to ensure that Dev4Press will endure, for me and for all my customers.
Over the years I had to retire several plugins. There are many factors that come into play with a decision to retire a product, and it is never easy. With some plugins I have been struggling for years trying to improve them and rescue them, only to accept, in the end, that some plugins were beyond saving.
The first major plugin I decided to retire was GD Star Rating. It was a free plugin and a very popular one with more than 1 million downloads on the WordPress.org repository. This plugin offered rating-related features that other plugins lacked at the time. It had a wide range of settings and for most purposes, it was easy to use. But, the plugin suffered from various problems: the initial code design was not easy to expand, a lot of features were added to the plugin over the years which made it really hard to maintain and customize. The codebase of the plugin was so bad that it became annoying for me to deal with it, so I eventually decided to retire it. Years later, I developed a new rating plugin on a solid expandable foundation. Now, the GD Rating System is in its third year and gaining popularity.
If you have a lot of plugins, like I had, it is not easy to allocate the same time to each one. Naturally, over time some plugins get left behind, and with the dynamic WordPress core development, and all the new trends and technologies, plugins get outdated fairly quickly. This happened to my first two Pro plugins: GD Press Tools and GD Custom Posts and Taxonomies Tools.
In 2015, I decided to develop a unified code library for WP Admin UI, which is now shared by all Dev4Press plugins. That helped a great deal with rewriting old plugins, renewing the settings interface, expanding them with new features, and making them relevant again.
It took over a year to write the library and implement it across the plugins, but, in the end, it was worth it. All these plugins are now up-to-date and powering the Dev4Press website security, administration and maintenance, custom content and more.
Subscribe and grab a free copy of our
WordPress Plugin Business Book
Exactly how to create a prosperous WordPress plugin business in the subscription economy.
Share with a friend
Enter your friend’s email address. We’ll only email them this book, scout’s honor.
Thank you for sharing
Awesome – a copy of ‘The WordPress Plugin Business Book’ was just sent to . Want to help us spread the word even more? Go on, share the book with your friends and colleagues.
Thanks for subscribing!
– we just sent your copy of ‘The WordPress Plugin Business Book’ to .
Have a typo in your email? click here to edit the email address and send again.
Direct Support vs Documentation / Knowledge Base
Support is a big part of any software-based business, and if you want the business to survive, you have to provide great support. While direct support is important, having good documentation is a key to reduce the direct support.
From my experience, almost half of the support questions can be solved by searching the documentation. That also points to a problem that a lot of (WordPress) based companies have: how to bring the documentation closer to the users, and make sure they can find what they need when they need it. This is one of the challenges I am still working on solving, and in the recent years, with the help of my own GD Knowledge Base plugin, I managed to grow the documentation to over 500 articles, user guides, FAQ entries, and references.
One of the toughest things when running a business is figuring out the best pricing structure and sales model that will allow revenue to sustain the business, ensure its future, and at the same time, help drive new customers.
When Dev4Press first started, I offered Lifetime licenses for all of my plugins. That has proven to be a huge mistake, especially due to the low prices I set. Since it was my mistake I decided to honor and grandfather all those Lifetime licenses purchased during 2010 and 2011. These licenses are still active and will remain that way for as long as the plugins are active. Back in those days, plugin licenses were all for unlimited sites, and in general, premium plugins were significantly undervalued. So, by the end of 2013, I decided to create the new licensing system and move to annual licenses. It was an important step that was part of my transition to a full-time plugin shop. That system is still in use today.
When Dev4Press first started, I offered Lifetime licenses for all of my plugins. That has proven to be a huge mistake.Tweet
Pricing the plugins is also quite of a challenge. When I approach a plugin pricing, I try to assess the value of its feature-set, ease of use, and the time it can save customers. Only then, I can decide on the price for the plugin. Over the years I also realized that pricing is dynamic and that I have to proactively experiment with it. I update my plugins frequently, and new features are added on an ongoing basis. So, the prices can’t remain the same forever because the value of the product is also increasing.
Pricing a WordPress plugin is challenging. When I approach a plugin pricing, I try to assess the value of its feature-set, ease of use, and the time it can save customers.Tweet
I have been doing this work for years now, and over time, I was (and still am) trying to find the right balance, between life and work. I try to balance how much time I work each day and how much time I spend with my wife and son. One good thing about running my own business is that I am the boss, so I’m in control of my time. I can allow myself downtime for when I don’t feel like working, or start working later in the day.
Keeping to the tasks list
The main thing is trying to follow the monthly tasks lists as close as possible, and I do keep several lists of projects/plugins which I want to work on each month, list of tasks to complete, and while I can’t do everything according to these plans, they do help to keep me on track.
The most popular plugins get most of my development time. Users constantly have suggestions and feature requests, so the more vocal the community is, the more time is spent on certain plugins. For instance, GD bbPress Toolbox Pro had 4 major releases in the last year, and over 80% of the features in these versions were based on feedback. Some plugins are simply demanding more time due to their scope. GD Rating System Pro had 6 major releases in the past year, and I already have features planned to span across the next 4 or 5 versions.
Handling the sales fluctuations
It’s crucial to understand that sales are not the same on every month. We have summer months where sales can drop by 30%! The good thing is that usually the support load also drops, so I get extra time for development. This allows me to have my vacation time, and additional time for development and the lower sales in the summer are balanced back by increased Autumn and Winter sales.
Having A private life
Sticking to the list means also allocating time for private life. When I was living alone years ago, I had been working 10 to 12 hours a day, including weekends. Now, I want to have enough time for my wife and son. I am the cook in the family, and besides that, I try to have enough time for anything that will keep me away from the laptop.
Growing A WordPress Plugin – The Team Aspect
Considering how many plugins I handle, how many things I have to do to keep the business on track, you might ask: why not hire more people to help in growing a WordPress plugin business? And, I have been thinking about that for years.
Expanding the team is not easy, there are multiple variables to factor. In fact, before even starting, you need to ask yourself what type of business would you like to build, what revenues can you expect, and be honest with yourself when answering. Based on the answers you may realize that keeping status quo by staying a one-man-show is a better fit to achieving your goals.
Hiring new people
My plugins currently have about 550,000 lines of code – for the good or bad, that’s more code than WordPress itself 🙂 If I’d want to onboard new developers I would have to invest a lot of time into training them to make them an integral part of the team… Moreover, I can’t foresee if I’ll be able to get the return on my investment, what impact will it have on the business during the training period, and whether the developer I hire would deliver or will I have to let them go after a few months.
I know that this is a bleak look at the way the things work, but over the past 20 years I have worked with a lot of developers, and I have found only few I was able to work with. That tells more about me than about the people I worked with, but I have the way I work, and it is not easy for me to adjust to others working habits and practices. With the current state of my business and in this period of my life, I am just not ready to take those risks. I am sure that everyone who is running their own small business can relate to this.
Growing a WordPress plugin business can take different routes, some involve finding investors and hiring more people. This can help in growing a WordPress plugin business quicker, but it can also place a burden on it, that can lead to a failure or loss of control.
Or, sticking to your guns
There are many ways for projects to become successful. You can work alone, or with a friend, and you don’t need big investments to get started. You need to set and to manage your expectations, and that includes the number of customers (and with that the revenue you will get over time).
For me, growing a WordPress plugin business doesn’t have to be steep. I am fine with smaller increments as long as it keeps my current workload at the levels I can handle myself.
I am satisfied with the growth of Dev4Press. I currently have a nice balance between the number of customers, the growth of sales and the amount of support which I handle myself. It works for me. Sure, sometimes I feel the burden of the work, and I wish I had some help, but that quickly passes. And yes, I would like to earn more, but that is not my priority right now.
The work continues, my tasks lists are full for months in advance, and I am working on two big and ambitious projects. One will be unveiled in a matter of weeks, and the other, hopefully, by the end of this year. Dev4Press plugins will keep getting better, and hopefully, I will have time to create a few more in the coming years.
And, I will continue to weigh my options, and maybe my solo act will grow into a team. Not this year, or the next, but soon after.
As a fellow solopreneur who’s running a WordPress plugin or theme business, how do you approach team growth? What are your thoughts or experience on adding support and development to your project?