I started creating online courses in 2014. At the time it was for fun and really just to see if I could create one (I never intended it to be the main part of my business).
But now, years later, I’ve created courses that have been taken by over 10,000 students (which is scary to imagine) and generated over $1,000,000 dollars in revenue. Online courses have become the main source of revenue for my business.
($27k/month is pretty nice for a single course (not even including Paypal or partner revenue).)
Along the way, I’ve experimented a lot with what works and what doesn’t – not based on what other people or “industry thought leaders” were saying – but what works for me and my style of communicating with my audience.
What I like about online courses is this: it democratizes learning. You don’t need acceptance by some stuffy admissions board, you don’t need to go into 6-figures of debt to get an education, and you can learn specifically what interests you. Online courses are also a $107b industry and growing every day.
Here’s what you’re going to learn:
There are a million plugins, processors and mailing list software you can use to create your course, but I’m going to share with you my top pick because it’s the easiest and cheapest (which is good, because I’m cheap). In the “Total Costs” section there are discounts for each of the software products I use too.
Restrict Content Pro (WordPress plugin)
I’ve tried so many WP course plugins, and this is by far the easiest to both setup and use moving forward. RCP lets you sell access to restricted pages on your website.
To setup, all you have to do is install the plugin, setup how you want to get paid, and then pick which pages are only accessible to your students. The good thing is, if you sell multiple levels of access (at different price points), you can pick which type of students can see which content (and up-sell from the middle/low tiers to the highest one).
Stripe and Paypal
To be honest, I hate Paypal. It’s awful to use and their customer support is atrocious. That said, lots of people want to use it to pay for things online. I noticed a 20% increase in sales when I added Paypal as a payment option to one of my courses, and for every course I have Paypal as an option, I see 50% of customers paying through Paypal. So it’s a necessary evil if your audience uses it.
Stripe, on the other hand, is great. It’s easy, it works well, and I never have problems with it. Payments go into Stripe and are transferred straight into my bank account without me having to think about it.
If you’re going to have an online course, you need a mailing list – period. It’s what will sell your course the most effectively and makes it easy to stay in touch with current students.
MailChimp is the easiest newsletter service to use and integrates with RestrictContentPro if you use MC4WP (20% discount using this link). If you only are going to a single signup form, you can even use MC4WP for free.
MC4WP is a useful plugin regardless for every WordPress website because it lets you update subscribers as they sign up for or do different tasks. What I mean by that is, a typical MailChimp form won’t allow a current subscriber to signup for your webinar or free email series since they’re already on your list. But with MC4WP, you can update existing subscribers and keep them on your list but give them what they continue to sign up for.
MC4WP’s User Sync also keeps your mailing list sync’ed with purchaser information, so you can send things like onboarding sequences or post-purchase education sequences to buyers.
Honestly here: I created this plugin because I saw a tremendous need for it. WPComplete lets your students mark lessons as finished, and gives them a progress bar (which prompts them to keep going and finish your course. It only takes a few minutes to setup, and you can customize it to match your colours on your course.
As I mentioned, I’m pretty cheap, so I like having my courses on WordPress because a) I have full control over the platform and b) operating costs are pretty low. I’ve also got exclusive discounts for you on all the products I use (they’re all affiliate links, but the links are worth over $110 in savings):
All in, that’s around $75/month or less than $1,000/year if you including buying a premium WordPress theme (which is nice but definitely not required). Even less with the discounts above. This is also less than a lot of hosted or fully managed course software (which isn’t infinitely customizable or owned, like a WordPress course is).
Since all my courses cost between $147-$300, I can cover the entirety of my expenses by selling one course per month. That’s totally doable.
Past the above costs, you also get charged for transactions on Stripe and Paypal (2.9% + .30c), but those only happen when you make a sale.
Now that you have all the software needed for your course, it’s time to connect everything.
Setting up Restrict Content Pro for the first time
Now your course website is connected to your payment processors. Which means you can collect money from students!
Breath deeply, that’s the most technical part of the entire setup and you only have to do it once ever.
Connecting MailChimp to RestrictContentPro
Your mailing list is just as important as your course software. Why? Because it’s what going to sell your course (email marketing destroys all other channels in terms of ROI and conversion rates).
So your goal with your course mailing list is two-fold:
There are tons of options for creating a lead magnet that will entice visitors to give you their email address as a trade for something awesome like partial access to your lessons or a free email sequence of related lessons.
To track this, you need to connect your list to your site.
Voila, your list and course are now connected. What the above means is that MailChimp now knows if someone signed up for a free trial or purchased your paid course. This means you can create automation sequences in MailChimp that trigger if the merge field for the following:
Now your list is going to stay up to date with your course signups, and you are going to be properly segmenting free trial subscribers and paid subscribers. The possibilities are endless for what you can send to each segment in terms of emails that’ll help them decide if they should buy or help them get the most from the course if they did buy.
Letting students track their progress
You want to make sure students are propelled through your lessons from start to finish, so they can get the most of the course. Successful students = a successful course. To do this, it’s a good idea to let them mark lessons they’ve finished as complete and then see their overall progress.
That’s why I co-created WPComplete, it’s a simple plugin that let’s student track their progress and teachers track the overall progress of students through the lessons.
That’s it! You can now use shortcodes found here to display progress bars, text percentages of progress even a circular graph of progress.
If you have a “dashboard” on your course, or a page that lists all the available lessons, WPComplete will automatically append some CSS classes, so you can customize how completed vs not-yet-completed lessons look like – editable on the Settings page.
You’re set up!
Congrats, you’ve now connected all the pieces of your course together. It may seem like a lot of work, but you only do it once, and then it runs forever.
A good plan is to test this throughly before you give people access to your potentially signup and buy. If you use Google Email or Gmail, you can signup with your variations of own email address, so you get the emails, but you’re signing up for a fresh testing email. Like so: if your email is email@example.com, then you could try firstname.lastname@example.org to test the free trial. And then email@example.com to buy the course in Sandbox mode with the test Stripe credit card. So it’s your firstname.lastname@example.org. Then you can make sure payment processes, access is correctly granted, and the email address is properly added to MailChimp with the correct merge field data.
Now that the tech stuff is out of the way, let’s get into actually planning your course material.
Creating content for your course can be overwhelming or stressful, but there are two things that can really help:
The main things every online course can have:
Now that you’ve setup all the tech and created the lessons, you’re ready to plan for your launch. I go into massive detail about how I launch and re-launch my courses in this article , this article and this one .
For about $75/month you can own the platform your course uses, which lets you be in 100% control of what you do, how you sell it, what it looks like, and the overall customer experience. That’s worth it to me (instead of using a hosted platform) and I can cover my costs with only needing a single sale per month.
Now get out there and create your course.