Justin Ferriman


When I started LearnDash, I was going up against a very large competitor with deeper pockets. As time went on, the online course space in WordPress became incredibly saturated, and to stay relevant, I kept a watchful eye on my competitors, so that I could nullify any advantage.

In this interview on plugin.fm, I share exactly how I did this, the lessons learned, what to avoid, and how to win in a crowded market.


👋 Did you like this?

Get an article like this emailed to you once a month.

RSS feed

In the competitive world of WordPress products, it's all too common to find yourself trapped in the cycle of insufficient revenue (or no revenue at all), questioning where the disconnect lies between your product and potential customers.

It’s something I come across often, when coaching and when participating in various WordPress communities. As such, I’m writing this post which outlines the most common mistakes I’ve seen by WordPress entrepreneurs.

From targeting an overly niche market to undervaluing the power of compelling calls-to-action (CTAs), each mistake is a barrier to maximizing your earnings.

They are as follows…

Market isn't big enough. Simple economics... there isn't enough demand for the problem you're solving. This is especially true if your product is an add-on for another plugin (i.e. WooCommerce add-on). I've even seen some people create add-ons to add-ons. Best to avoid that, the market will always be too tiny.

Your CTAs are lacking. If you have a free version on the repo, is the pro version enticing enough? That pro version needs to have a unique value that creates anxiety by not having it. That's not to say the free version is bare-bones. Quite the opposite. You need a kick-ass free version to build trust. But once someone has that free version, what's the flow? How do they find out about the pro version? Are there minimal steps to give payment info and get the better features?

Your sales copy is poor. If you're selling a pro version, then don't be afraid to sell. Build hype! You need to be a hype machine on every page of your website. All the stuff that you know already needs to be at play:

  • Crystal clear headline (avoid confusion)
  • Defined audience (it's not for everyone)
  • Testimonials and case studies
  • Targeted opt-ins (for email marketing)
  • Value prop reiterated across headlines
  • Front-end demo
  • Skimmable
  • Money-back guarantee (14 or 30 days)
  • One primary CTA
  • 3 or 4 tier pricing, only one toggle (if any)
  • Single page checkout

You're not easily accessible. Making money without having to talk to people is not a realistic expectation. If you're trying to gain traction, there should be no reason you're not using online chat. At the very least, a very clear “contact us” page or form needs to be visible. Don't make it impossible to contact you.

Your support docs suck. Support documentation is a silent seller. Thorough tutorials with actual images of your software (not artistic renderings). Potential customers will see your level of detail and gain confidence that you'll be there for them should they need help.

You don't get 3rd party, expert opinions. Once you implement these strategies and fill the gaps, you benefit greatly by having your work reviewed by someone who has done it successfully before. I can review what you have now and point you in the right direction.

Email me, and we'll get on the calendar to discuss for an hour. There’s no charge, and we’ll make some progress in your business.


👋 Did you like this?

Get an article like this emailed to you once a month.

RSS feed

Earlier this week, I published the longest X thread that I’ve ever published. I did this for two reasons:

  1. I had a lot to say.

  2. I wanted to test long content to see how much it’s shared.

The conclusion is that long content does quite well on that platform. The post itself was reposted, saved, and commented more than my shorter ones.

But the way X works, content dies a quick death. As such, I feel it’s a good idea to republish it here on my personal blog:

An Open Letter to WP Product Owners

Let's face it... Selling WP products today is a helluva lot harder than it was just 3 to 5 years ago.

In fact, one could argue that ever since COVID, the entire space has become more crowded, more competitive, and more challenging than ever before.

Your product does great things, yet no one is noticing. You're not growing. Worse, your sales are starting to stagnate. 😑

Here's the blunt truth.

What worked before will no longer work today. You know this, because you can see your company's metrics.

  • It's not Matt or Automattic's fault.
  • It's not because people aren't as “hot” on WP as they were during the pandemic.
  • It's not because of bigger companies like Automattic, AwesomeMotive, and LiquidWeb investing into the WP space, eating up the market share.

The answer is actually more simple than that...

The market is changing, and you're not. Be honest with yourself — Have you really tried to up your game?

When was the last time you did a brand refresh? Or worked on your Inbound Sales Plan (you have one, right?) Adventured into new marketing channels? Leveled up your support experience (things like live chat... actual live chat, weekend hours, etc.)? Or made any kind of investment back INTO your customers with success tools, community building, or the like?

You haven't.

Admitting that you haven’t changed is how you start progressing.

WordPress is a cutthroat space. The competition has more money than ever before — and not just WP solutions, but the SaaS competitors who are snapping away WP users as well.

Your purpose, as a founder, is to stay on top of the market. If possible, to LEAD the market. So let's chat... how do you do that?

It's an exercise of INWARD and OUTWARD data collection.

INWARD... things like:

  • Connecting with your most active users and discussing their pain points and wishes for your product.
  • Listening to feedback on all the review channels, documenting themes devoid of the emotion.
  • Looking at your inbound sales processes and finding the gaps that need to be filled. Optimizations that need to occur. TRAINING FOR YOUR SALES TEAM (support reps ARE NOT sales).
  • Analyzing effectiveness of support in maximizing renewals. Also, strategies for decreasing churn.

This is just scraping the top. Each one of these can branch off into several other subsections for optimizing. New plans, new policies, new ways of measuring...

OUTWARD... things like:

Exploring new content marketing avenues to expand reach. Where are your competitors, and why are you not doing the EXACT same as they are?

Creating a variety of content, not just “helpful content”. Going directly after your competition IN AND OUT of WordPress.

Networking with people in the space with similar interests. Helping others make money, so they return the favor for you. Stop sitting behind your computer and put yourself out there.

Paid Ads... it's time. Do it.

Hack-y isn’t cute anymore.

There was a time when WordPress products had a “grassroots” feel to them.

Not anymore. I mean, you can go that route, but you'll lose to others who show up and put out a PROFESSIONAL, well-polished image and experience.

What do I mean?

Does your demo site just toss someone into the WordPress admin dashboard and have a bare-bones skeleton theme? That's simply not good enough.

Is your website just some cookie cutter template or Blocks Pattern with no real thought around branding? That's not good enough either.

Does your headline speak to the customer's pain points? Or is it still saying something dumb like, “XYZ for WordPress”? Yeah... needs fixing.

Does your website sales copy point back to your unique selling proposition? On every page? Do you have an about page with your face? Are you getting personal? Are you getting CLOSE TO THE CUSTOMER in their journey to build real connection?

This shit is hard. But the hard stuff makes you profitable.

I get it. This is hard stuff. These things can't be solved in a week or two. I wish this was easy, too.

Look at your business and determine where your biggest opportunity area lies. Start there. Go DEEP. Really understand the challenge and work towards resolving.

If you need help, get it.

I coach WordPress product owners on this stuff because, well, I've done this stuff. It doesn't have to be me though, there are other people in (and out) of WordPress who can provide direction as well.

The point is: start doing something different if you want to get different results. Light the fire 🔥 and don't stop... in a year from now, you'll thank yourself.


PS: If you wanna chat about the pain points in your business, book some time with me. It's free.


👋 Did you like this?

Get an article like this emailed to you once a month.

RSS feed

I recently released a new logo and web design for GapScout. It’s not perfect, nor will it win any awards, but I’m happy with it as a first version.

The main tool used to build the design was Elementor. I insisted on this because it’s a plugin I am very comfortable in using, which meant I could make future design modifications myself once the designer was done.

The problem, however, is that Elementor can lead to some pretty crappy performance scores, in particular for mobile. In fact, I ran a Google PageSpeed Insights report for Elementor’s own homepage, and their mobile score is pretty… uh…bad.

Your mobile performance score is vital for rankings.

I didn’t believe this until I saw it first hand.

The old GapScout site had a pretty bad mobile score, and when I boosted it to ~90/100, I noticed an uptick in the number of visitors. Seeing as a slight majority of visitors to GapScout are using mobile compared to laptop/desktop, this was a big win.

So, while the new GapScout homepage has a perfect desktop performance (100/100), the mobile score originally sat at a pretty depressing 50/100.

But not for long!

With just a few adjustments and was able to get it up to 99/100.

Note: PageSpeed Insights fluctuates at any given time the test is run. GapScout’s mobile score usually lands between 94-99.

Being a good internet citizen, I tweeted at Elementor to let them know that improving their mobile score is definitely possible with just a few tweaks, and this tweet elicited a few responses:

Thanks to Robert and Ross, their replies to my tweet were the inspiration for this blog post. So, I’m writing it for them, but you as well, because this probably helps anyone who is using Elementor and WordPress.

How I get a great mobile performance for the GapScout website.

Okay, onto the good stuff. I’ll keep it short because:

  1. You don’t care about backstories, just what works.

  2. I’m not very technical, and can’t explain a ton of detail anyway.

STEP 1: Use a host that doesn’t suck.

I’ll start with the often overstated, but most critical part to any website performance metric: use a good webhost!!!!!!!!@*&($@*

You’re not going to get great results on some $10/mo hosting plan. Sorry.

I’m using Rocket.net, and holy crap, it’s fast. Like amazing.

I think I’m currently on the $30/mo plan, but maybe I paid yearly, so that dropped to $25/mo. I dunno, I’m too lazy to go look.

They will migrate you for free, so just switch. Also, I’m not affiliated with them nor do I get any kickback for referrals. I just take comfort in knowing that you will like me because my recommendation is a good one. 😉

STEP 2: Buy the Perfmatters plugin.

This is the other critical component, especially for mobile. Perfmatters was actually recommended to me by Rocket.net. The plugin is $29/year (there is no free version).

Okay, so now I am going to share with you my settings, but first things first:

Disclaimer: My settings probably won’t work 100% for your site because it depends on which plugins you have installed. I also can’t help you troubleshoot anything.

With that out of the way, these are the settings I have in place in Perfmatters on the GapScout website:

  • Under Assets, the follow settings are turned on: Defer Javascript Include JQuery Delay Javascript Delay All Scripts (for Delay Behavior setting) Delay Timeout Remove Unused CSS
  • Under Lazy Loading, the following settings are turned on: Images Add Missing Image Dimensions
  • Under Lazy Loading, in the “Exclude from Lazy Loading” field: Filename of the website’s logo
  • Under Fonts, the following settings are turned on: Disable Google Fonts

That last setting is because I am not using Google fonts, but have instead uploaded a custom font through Elementor. If you are using Google fonts, you will not want to turn on that setting. Instead, turn on these two:

  1. Display Swap

  2. Local Google Fonts

STEP 3: Add support for custom fonts in Elementor. (Optional)

If you are like me and have uploaded your own custom font to Elementor, then there is one more step to take for optimizing font display. Do not worry about this step if you are not using custom fonts or Elementor.

First, you need to preload your fonts in Perfmatters.

  1. Navigate to Preloading.

  2. Paste the URL where you uploaded your font in WordPress.

  3. Under Select Type, choose “Font”.

  4. Select the CrossOrigin checkbox.

  5. Repeat for font variations as needed and save.

Now that the custom fonts are specified in the preloading menu, the last thing you need to follow this support article to add the following filter:

add_filter( 'elementor_pro/custom_fonts/font_display', function( $current_value, $font_family, $data ) { return 'swap'; }, 10, 3 );

Once you have added that (I recommend using the code snippets plugin), you have to do the following steps:

  1. Head over to the Custom fonts screen at Elementor > Custom Fonts.

  2. Edit the custom font you want to regenerate (simple edit and update, no changes are needed).

  3. Repeat step 2 for each font you want to regenerate.

  4. Head over to Elementor > Tools > click on the Regenerate Files.

And you’re done!

Most of this process took me only 15 or 20 minutes. I did run into a snag at one point and simply reached out to Perfmatter’s support (you’re in good hands, they were incredibly helpful).

In the end, I skyrocketed the GapScout homepage mobile score from a pathetic 50/100 to a consistent 94-99/100.

Want to dig a little deeper?

As always, whenever you make changes like this, it’s a good idea to use an incognito window to visit your website to make sure it still looks (and performs) the way that you expect. If something goes wrong, simply turn off the settings you activated so that you can troubleshoot effectively.

If you are interested in optimizing your WordPress site, then Perfmatters has a more comprehensive guide that I can recommend. I like that they also include references to individuals who can help you in the event that you need a little assistance.

And remember: chasing high mobile scores can be fun, but the most important thing is that your website is a pleasant user experience for your visitors.


👋 Did you like this?

Get an article like this emailed to you once a month.

RSS feed

I don’t write much about WordPress anymore now that I’m working on GapScout. That said, I enjoy the industry, but now merely as a user of the software rather than a product creator.

Still, I can’t help but always have my business mind turned-on as I witness the emerging trends.

There is a lot of chatter about blocks, and the theme space dying (as it has traditionally been defined). Some folks seem excited, as the feeling resembles the early days of plugins.

I don’t think blocks will become the “new” plugins. Not initially, anyhow. Some maturity needs to happen first. Specifically, with how these solutions are marketed on a wider scale to the average user.

More on that shortly, but for the moment, let’s look at how we got here.

2012-2016: Plugins emerge as viable money-makers.

My entrepreneurial stint in WordPress was from 2012-2021, in what I would say was the golden era of WordPress plugins. Prior to these years, it was all about themes. But developers started to get creative with the introduction of custom post types.

The WordPress plugin landscape in 2012 was a different beast altogether. It was young, innovative, and very grassroots. There were very few “big players” at the time. Off the top of my mind, we had WooThemes, iThemes, GravityForms, and Easy Digital Downloads.

The years of 2012-2016 marked the emergence and maturation of WordPress plugins as a business endeavor. Plugins transitioned from being donation-based, to one-time payment, to recurring license fees.

In my mind, WooThemes was the biggest proponent in pushing the industry in this direction. I have them to thank for giving me the confidence to start charging yearly for LearnDash. WooThemes normalized this business model, and it was further validated when they were bought out by Automattic in 2015.

Shortly after the acquisition of WooThemes, the plugin market exploded in growth.

Whether it was Automattic validating the plugin approach, or the overall growth of WordPress as a CMS via hosting companies doubling-down on WordPress, 2016 marked the beginning of the upswing in the plugin market.

Each vertical became flooded again with a new wave of players. From memberships, to forms, to learning management systems, and more – there were always five or six viable options available to users.

With more options in the space across the board, we saw a larger range of pricing. From the “buy me a coffee” donation schemes, to hundreds of dollars, and everything in between. WordPress plugins started to compete directly with popular SaaS solutions.

Some people didn’t like this. They felt that the WordPress industry was getting too greedy and losing touch of its original intent. The reality though was WordPress was growing up. Big players, and big money, were now entering the ecosystem.

This expansion continued through the next four years, until…

The pandemic over-accelerates growth, exits begin to occur.

The pandemic resulted in a surge of revenue for LearnDash. Like, in a very significant way, and my company wasn’t the only one. Everyone who I talked to in my network experienced the same.

I can’t recall the exact number, but I’m pretty sure I hired roughly 12-15 more people in about three months. It was a crazy, stressful, and extremely profitable time.

For reasons that I have already discussed, selling became the best way forward – and I wasn’t the only one. A record number of WordPress companies sold, particularly in 2021.

These weren’t small “Flippa”-style sales, either. By way of example, I hired investment bankers to manage the sale of LearnDash and I learned quickly that WordPress was a legitimate investment space for many large VC firms. This was big-time stuff, and I knew that I needed top-tier professionals involved in the process.

The market normalizes, with more competition than ever before.

What no one knew at the time of the pandemic was when (or even if) there would be an end to this “COVID bump”. Today, the consensus is that things have definitely calmed down.

Many established WordPress plugin providers came out the other side of the pandemic with better processes, bigger teams, and bigger pocketbooks. The popular segments (online courses, for example) have seen a surge in competition as everyone tried to get a piece of the pie.

More players, more money, more at stake. No matter which niche you choose today, breaking into the WordPress plugin space is more difficult than ever. The bigger players are part of larger VC portfolios, resulting in more resources and reach. Your best chance is to already have a following (YouTube channel, popular website, etc.) and to sell to your audience.

This has the entrepreneurial-minded folks looking outwards to other opportunities, which brings us to Gutenberg Blocks.

Blocks today are what plugins were in 2010-2012.

There is a lot of hype around blocks, and rightfully so, though I am not yet convinced that we have found the commercial way forward.

People don’t search for blocks, they search for solutions, and currently the market is very “block-focused” with the marketing and terminology. Not only is that boring, it only appeals to the indoctrinated of WordPress.

It reminds me of when everyone was talking about “custom post types”, and describing their plugins in this way, instead of the end-result that they allowed you to accomplish.

Innovation is coming to WordPress in the form of blocks, not plugins. This will lead some to discover some new, profitable segments. Will it be as big of a gold rush as the plugin boom we saw? Maybe – but that hinges on something important.

To be successful, the WordPress community shouldn’t look to Automattic to define the Gutenberg block market.

Plugins grew in popularity because of the third-party players in the space. Full stop. In fact, Automattic’s success with plugins (WooCommerce) was the result of an acquisition, not anything they did. Any other plugin they’ve released is usually a fourth or fifth tier option at best.

This being the case, the community should resist the temptation to look to Automattic for “the path forward”. Objectively, they don’t have a great track record for inherent innovation.

I believe we are seeing community innovation happen, and this is encouraging. From block patterns and frameworks, the transition of themes, and block-powered functionality in popular plugins. The market is starting to innovate and define not only how to use blocks commercially, but why blocks are a good way forward.

So, is this the new gold rush in WordPress? I think it very well could be. It is still in the very early days, which is fun and confusing at the same time. We don’t know how things will play out quite yet because, well, everything is still in flux.

But if you are an entrepreneur and are looking for opportunities in the WordPress space, then you will do well to keep blocks at the top of mind.


👋 Did you like this?

Get an article like this emailed to you once a month.

RSS feed

The revenue engine behind most companies is renewal income. Be it a food delivery service or software, compounding renewals is what helps move up your bottom floor up year-over-year.

But the thing that many entrepreneurs don’t realize is that the process of selling customers on your product initially is different from selling customers on the renewal purchase. In theory, selling an existing customer should be easier than getting a new one, but only if you do it right!


Once upon a time, calling someone on the phone was the way to go for receiving technical support. I can remember being on the phone with Dell all the time because something was always happening to my desktop computer.


WordPress has been a part of my life in one form or another since 2006 when I started my first blog on WordPress.com. I went from a user of their hosted service, to self-hosting websites for family and friends, to starting (and eventually selling) a premium plugin company.


I created my first WordPress blog like most people did: using WordPress.com. I remember the entire concept of blogging being pretty new back in 2006, and I cut my teeth in the industry by setting-up and writing with WordPress.


Over the past 15+ years, I have had the pleasure of meeting some incredibly smart people in the WordPress industry. Some of these people have businesses (such as selling courses), and others are building products for WordPress users (plugins & themes).