How to sell an online course with Facebook ads: the cost-per-enrollment math, three funnel shapes, audiences and tracking, with 4 real course ads.
The Facebook ads that fill online courses work as a funnel, not a single ad: a cold audience sees an ad for a free class or lead magnet, registers, and is then asked to enroll, or sees a direct-enrollment ad with a price and a deadline. To run it profitably, work out what one enrollment is worth first, then build backward to what each registration and each click can cost.
This guide covers the math, three funnel shapes (lead magnet, webinar and direct enrollment), audiences, the ad formats that work (with 4 real course ads from November 2026), tracking and testing.
See which hooks win and run rules on cost per result.
Why courses need a funnel, not one ad
A course is a considered purchase. The buyer is trusting you with their time and money, and a single ad to a stranger rarely earns that trust. A funnel splits the job into steps, each with a small ask:
- Attention. An ad earns a click with a promise (a lesson, a fear named, a price).
- Registration. A landing page trades a free class, guide or checklist for an email address.
- Nurture. Email, a live session or a replay builds trust and shows the method.
- Enrollment. An offer with a deadline asks for the sale.
Each step has its own conversion rate, and your cost per enrollment is the product of all of them. That is why the math comes before the creative.
Work out what an enrollment is worth
Start with three numbers: the course price, the costs that come out of each sale (payment fees, support, refunds, affiliate commissions) and how many people you expect to enroll from every 100 who register. Then:
- Max cost per enrollment = price minus costs per sale. Pay more than this and every sale loses money.
- Max cost per registration = max cost per enrollment x enrollment rate (enrollments divided by registrations).
Here is a worked example with illustrative numbers for a $297 course sold through a free webinar:
| Step | Example number | What it means |
|---|---|---|
| Registrations | 100 at $4 each | $400 of ad spend |
| Attend the webinar | 40 of 100 | A 40% attendance rate |
| Enroll | 4 of 40 | A 10% close rate, or 4% of registrations |
| Cost per enrollment | $100 | $400 divided by 4 enrollments |
| Revenue | $1,188 | 4 enrollments at $297 |
| ROAS | 2.97 | $1,188 divided by $400 |
If $30 of each $297 sale goes to fees and support, the max cost per enrollment is $267, so $100 leaves room to grow. At a 4% enrollment rate, the most you could pay per registration is about $10.68. If your registrations cost more than that, fix the page or the offer, not the ad. The break-even ROAS calculator works out your break-even point from your margin.
For reference, the closest category in Madgicx's Meta ads benchmarks is Personal Coaching & Development. In September 2026 its median link CPC was $0.85 (middle 50%: $0.47 to $1.30), its median link CTR was 1.84% and its median CPM was $15.64. Use those as a sense check on ad costs, and compare with your own numbers.
Lead magnet, webinar and direct enrollment funnels
| Funnel | The ad offers | Best when | Watch |
|---|---|---|---|
| Lead magnet | A guide, checklist or mini-lesson in return for an email | Your course solves one clear problem and you can teach part of it in a page | Cheap registrations that never buy: judge by cost per enrollment |
| Webinar or free class | A live or on-demand class with a named teacher | The course price is higher and people need to see you teach first | Attendance rate, since people who register but skip the class rarely buy |
| Direct enrollment | The course itself, with a price and a deadline | You have a warm audience (past buyers, email list, site visitors) | Cold audiences often need more trust than a price can give |
The lead magnet is the cheapest step in, and it works through text and a landing page rather than a special ad format. You make a small, useful piece (a template, a cheat sheet, a short lesson), put its promise in the headline of an ordinary image ad, and send people to a page with one form field. We did not find a clean lead-magnet ad to show you, so there is no example here; the webinar and free-class ads below follow the same pattern.
Audiences: cold, warm and email lists
Meta's custom audiences let you build audiences from your own data sources or Meta engagement data, for retargeting and new customer campaigns. For a course, three layers cover most needs:
- Cold. People who have never heard of you. A custom audience can be used to create a lookalike audience, so your email list or past buyers can seed it.
- Warm. A website custom audience targets people who visited your site, tracked via the Meta Pixel. A video custom audience targets people who watched your video content on Meta platforms, and a lead form custom audience targets people who opened or submitted a lead form on your ads.
- Email lists. A customer list custom audience uploads a list of customer emails or phone numbers to match with Meta users. Use it to reach registrants who haven't enrolled yet, and use an exclusion-only audience (a type of customer list audience used only to exclude people) to keep current students from seeing enrollment ads.
Each ad account can have up to 500 custom audiences, which is plenty for one audience per funnel step.
Ad formats and hooks for courses
All 4 course ads below are image ads, and each makes one promise in the headline. Two sell a course directly (Marie Forleo and MasterClass) and two offer a free class or summit (Mindvalley and Foundr). Their buttons are Learn more (Marie Forleo, Foundr) and Sign up (MasterClass); Mindvalley's collected ad shows no button.
| Ad | Funnel | Hook | Button |
|---|---|---|---|
| Marie Forleo | Direct enrollment | The price objection in the customer's own words | Learn more |
| MasterClass | Direct enrollment | 50% off certificates with an end-of-year deadline | Sign up |
| Mindvalley | Free class | A free masterclass with a named teacher | None shown |
| Foundr | Free summit | A fear named: launching a bad product | Learn more |
Direct enrollment ads
Direct ads fit warm audiences: people who already know you and need a reason to act now.
Marie Forleo: say the objection out loud

The first line reads: "Don't let a price tag hold you back from the business growth you deserve. Now you can get inside the doors of B-School for as low as $27/mo." The headline is "I'm dying to do B-School, but I just can't afford it... (Get into B-School for as low as $27/mo)", the offer is the Module 1 "Profit Plan" from $27/mo, it expires Monday 11:59pm ET, and the button is Learn more.
Why it works: it names the price objection in the customer's own words, then answers it with a low monthly entry price and a deadline.
What to copy: write the headline as the thought in your buyer's head, then answer it. If cost is the objection, show the monthly price and the end date.
Marie Forleo ads in the Meta Ad Library
MasterClass: one bold discount and a deadline

The first line reads: "End 2025 on a high note: 50% off MasterClass Certificates. Learn how to turn big ideas into bold products from innovators at The Moonshot Factory." The headline is "Turn vision into velocity - Get 50% off MasterClass Certificates" and the button is Sign up.
Why it works: one bold discount sits in a lime button over a warm portrait, with an end-of-year deadline that pushes sign-up.
What to copy: for a sale, make the discount the most visible thing and tie the deadline to a date people recognize.
Webinar and free-class ads
When the course is a bigger commitment, the ad sells the free class. These two put the free part up front and the teacher or the topic in the headline.
Mindvalley: name the free class and the teacher

The first line reads: "Are you ready to turn the impossible into the possible?" The headline is "FREE MASTERCLASS: How to Master Manifestation for Transformation & Success with Regan Hillyer".
Why it works: the free class is named on the creative itself, with a named teacher and "as seen on" style credibility, and the copy ends on a clear sign-up ask. (Mindvalley is not a US company.)
What to copy: put "free" and the format (masterclass, workshop, summit) in the headline, with a teacher's name, and finish the text with one clear ask.
Mindvalley in the Meta Ad Library
Foundr: name a fear, then offer the free summit

The first line reads: "Let’s make 2026 the year you finally launch." The headline is "The biggest mistake? Launching a bad product." and the offer is a free Product Sourcing & Manufacturing Summit. The button is Learn more.
Why it works: a bold one-line headline on a flat orange image names a fear, and the copy lists four things you will learn and says it is free.
What to copy: lead with the mistake your audience most wants to avoid, then list what they will learn in short bullets.
Track sign-ups and purchases
A funnel has two events that matter, registration and purchase, and Meta needs to see both. The Meta Pixel on your pages is the base. Meta's Conversions API adds events sent from your server, which are processed like events sent with the Meta Pixel. If you already have the Pixel on your website, you can set up the Conversions API for website events in one click from Meta Events Manager, with no code. Then use its verification step to confirm that Meta has received your events and that they are deduplicated and matched correctly.
Also check:
- Which ad sent each registration. Tag your links with the Facebook UTM builder and keep the tags in your email tool so a later purchase traces back to the ad.
- Your registration page. A slow or confusing page wastes the click you paid for. The landing page analyzer reviews a page.
- Purchases that happen elsewhere. If checkout is on a payment or course platform, send the purchase event from there, or from your server, rather than relying on the page alone.
Madgicx Cloud Tracking hosts the server connection to Meta for you, so Meta sees and attributes more of your registrations and purchases.
Budget, testing and scaling
- Start at the registration step. Set a daily budget that buys enough registrations to read results, for example the number your max cost per registration allows.
- Test hooks first. Change one thing per test: the fear, the price objection or the teacher's name. The ads above give you four hook types to try.
- Judge by cost per enrollment, not cost per registration. A cheap registration that never buys is a cost, not a win.
- Scale gradually. Increase budgets in steps and watch cost per enrollment. Add lookalikes of buyers once you have enough of them.
- Refresh before it wears out. Course audiences are small, so frequency climbs fast. New hooks keep the funnel fed.
If you also sell through other channels, see these overviews of online advertising and the best online advertising options to decide where else to spend.
Run your course funnel with Madgicx
Creative Insights breaks down every creative to show what makes winning ads win, and flags creative fatigue, so you know which hook to keep and when to swap it. Automation runs rules on conditions you set, such as pausing an ad when its cost per result passes your limit. And the AI Ad Generator can turn an ad you like from the Meta Ad Library into a new image ad for your course.
Try Madgicx free for 7 days on your next course launch.
FAQ
How do I sell an online course with Facebook ads?
Send cold audiences to a free class or lead magnet, collect the registration, nurture with email or a live session, then make an enrollment offer. Warm audiences (past visitors, your email list) can see direct enrollment ads.
How much should I pay per enrollment?
No more than the course price minus the costs of each sale (fees, support, refunds). Work backward from that to a max cost per registration using your enrollment rate.
Should I use a webinar or a lead magnet?
A lead magnet suits a single clear problem and a lower price. A webinar or free class suits a higher price, where people need to see you teach before they buy.
What audiences work for course ads?
Start with a lookalike of your email list or buyers, retarget website visitors and video viewers, and upload your list to reach registrants who haven't enrolled. Exclude current students.
What should an online course ad say?
One promise in the headline: a named objection, a fear, a clear discount with a deadline, or a free class with a teacher's name. The four ads in this post each do one of these.





