Abandoned cart email for course creators

Course buyers abandon checkout because they doubt they will finish, not because of price. This template recovers the enrollment with an outcome reminder, a 14-day refund guarantee, and one CTA to complete enrollment.

Open the full email ↗ Get this on your brand
Live preview View HTML ↗

What makes this abandoned cart work for course / education

The trigger and timing

Course buyers do not abandon for the reasons shoe shoppers do. A shoe cart dies at price or shipping. A course cart dies at self-doubt: Will I finish? Will this actually work for me? Your sequence has to answer that question, not nudge.

Trigger on a checkout-started event. In Klaviyo that is the native Started Checkout metric, which fires on Shopify and BigCommerce and via API on Kajabi, Teachable, and Thinkific. Send the first email one hour after the event. The doubt is fresh, the pricing page is still in their head, and they have not yet talked themselves out of it.

Send a second email at 24 hours if they still have not enrolled. Past 48 hours, evergreen course carts go cold. For live cohorts the close is the enrollment window itself, so urgency is built in and you should not stack discount emails on top.

The offer is the refund window, not a discount

Do not discount a course in cart recovery. Marking down the transformation tells the buyer it was never worth full price, and it trains last-minute refund behavior from the people who would have paid. The offer that actually moves courses is the refund window: Try it for 14 days. Watch modules 1 and 2. If it is not landing, reply to this email and I refund the full amount. No forms.

A clean 14-day refund line lifts click-through on the recovery CTA more reliably than a 10 percent code, and a solid course sees only 3 to 7 percent of buyers claim it. You remove the risk that blocks the purchase without cheapening the product.

The copy angle

Lead with the outcome, not the curriculum. Course buyers pay for the transformation, so name it. You are 6 modules from a storyboard portfolio strong enough to send to a story supervisor beats 12 hours of HD video, 40 lessons, lifetime access.

Lead with the instructor, too. A course is a trust purchase. One line of credibility, the instructor's name, a film credit, a student outcome, carries the email further than a feature list. First-person instructor voice. Short paragraphs.

The CTA

One button. Complete your enrollment or Finish enrolling. Not Buy now, which is transactional and stokes doubt, and not Continue shopping, because courses are not shopped. One link, one decision.

Example copy, the 1-hour email

Subject: {{ person.first_name }}, you're 6 modules away Preview: Your seat is held for 24 hours. 14-day refund if it's not for you.

Hey {{ person.first_name }},

You started enrollment for Dial In: The Storyboard Method about an hour ago. The seat is still held for you.

In module 2 you board your first sequence. By module 6 you have a portfolio piece strong enough to send to a story supervisor.

If the first two modules are not clicking, reply within 14 days and I refund the full $297. No forms.

[ Complete your enrollment ]

Numbers to expect

Course checkout abandonment runs 70 to 80 percent, in line with physical ecommerce but stickier, because the hesitation is internal. A two-email sequence typically recovers 10 to 15 percent of those carts. The refund-window line usually adds 20 to 30 percent to CTA click rate over a discount code. Single-CTA emails outperform multi-link ones because the buyer has nowhere to wander.

Why it renders in every inbox

Nested tables, not divs

Every layout container is an HTML table nested inside another table. Email clients, especially Outlook, have rendered tables predictably for 20 years. Flexbox, CSS grid, and floated divs break the moment they hit the Word rendering engine. The template stacks a header table, a hero table, a body table, and a footer table, each centered and held to 600px.

Inline CSS only

Every style lives on the element it styles: td style="padding:32px 40px;". Gmail strips style blocks for non-Gmail accounts and clips anything it considers redundant, so a single inline declaration per element is what actually reaches the inbox. One style block survives in the head, and it holds exactly one rule, the mobile media query.

Bulletproof VML button for Outlook

Outlook 2007 through Outlook 2021 render email with Microsoft Word, which ignores border-radius, padding on anchors, and most CSS on links. A plain button collapses to a thin underlined link. This template wraps the button in VML, a Microsoft vector format Word understands, so Outlook draws a solid colored rectangle with the correct padding and a working click. Gmail and Apple Mail ignore the VML and use the normal button. One button, two rendering paths, no broken links.

Live text

Every word is real text. No headline baked into a hero image. Live text scales on the reader's phone, stays sharp on retina screens, and survives translation. It also means screen readers and dark-mode inversion both work.

Dark-mode color-scheme meta

The head carries meta name="color-scheme" content="light dark" and meta name="supported-color-schemes" content="light dark". Apple Mail and iOS Mail read these and recolor the email sensibly in dark mode instead of blindly inverting your header. The body background is a light neutral, so a forced invert does not turn your hero into an unreadable blob.

One mobile media query

A single breakpoint at max-width: 600px. Below it the hero font-size drops from 30px to 26px and the body copy drops one step, so lines do not overflow on a phone. One breakpoint is all most email clients honor cleanly. Two or three start fighting each other in Yahoo and the Samsung mail client.

Web-font fallbacks

The body stack is Georgia, Times New Roman, serif. A display serif reads as editorial and pairs with a craft-course brand, and the fallback chain means Outlook and Gmail, which strip web fonts, still render a clean serif instead of default Times. Load a custom web font with @import if you like, but never let it be the only option in the stack.

How to use it in Klaviyo or Mailchimp

1. Copy the HTML

The page ships compiled HTML from the MJML below, plus the MJML source. Copy whichever you prefer. The compiled HTML is what you paste into your ESP.

2. Paste into Klaviyo or Mailchimp

In Klaviyo, create a Flow, trigger it on the Started Checkout metric, add an email, and when you configure the email choose the HTML editor, not the drag-and-drop builder. Paste the HTML into the source. Save.

In Mailchimp, start an Abandoned Cart automation under Commerce, available on Standard and above. In the email's Content step, choose Code your own, then Paste in code. Paste the HTML. Save.

3. Swap brand, colors, links

Replace Storyboard Lab with your course brand. Swap the two hex codes for your brand colors: #1B3A4B for the header and footer, #C24A2C for the button (and its VML fill). Replace Dial In: The Storyboard Method with your course name, the $297 with your price, and the CTA href with your checkout URL or merge tag.

4. Wire the merge tags

The template ships with Klaviyo tags in place. On Mailchimp, swap them:

First name: {{ person.first_name|default:'friend' }} becomes *|FNAME|* Checkout URL on the CTA: {{ event.checkout_url }} becomes *|CART_URL|* Course name as a custom event property: {{ event.CourseName }} in Klaviyo, or *|PRODUCT_TITLE|* in Mailchimp Unsubscribe link in the footer: leave {{ unsubscribe_url }} on Klaviyo, swap to *|UNSUB|* on Mailchimp.

5. Test before you send

Send a test to four inboxes: Gmail on the web, Apple Mail on iOS in light and dark mode, Outlook for Windows (the Word-engine build, not the new Mac client), and Yahoo. Check three things: the VML button renders as a solid rectangle in Outlook, the refund line and price stay legible in dark mode, and the CTA resolves to a working checkout URL with the cart still intact. Fix, resend, then activate the flow.

Questions

Is this abandoned cart template free to use for my course? +

Yes. Copy the HTML or MJML and use it for your own course or your clients' courses, no attribution. You need an ESP plan that supports a checkout-started trigger: Klaviyo Email on any tier, or Mailchimp Standard and above for the Abandoned Cart automation.

Will the enroll button actually render in Outlook? +

Yes. The button is wrapped in VML, so Outlook 2007 through Outlook 2021, which render email with Word, draw it as a solid, padded, clickable rectangle in your brand color. Without VML, Outlook collapses the same button to a thin underlined link. Gmail and Apple Mail ignore the VML and use the standard button.

How do I change the colors to match my course brand? +

There are two hex codes to change: #1B3A4B for the header and footer, and #C24A2C for the CTA button including its VML fill. Find them in the inline styles and replace with your brand hex. Keep the body background a light neutral so dark mode does not invert your hero into something unreadable. Re-test dark mode after every color change.

Do I need to know HTML to use this? +

No. Copy the compiled HTML, paste it into Klaviyo or Mailchimp, and edit the text and links in the ESP editor or directly in the code. The merge tags are labeled so you can find them. HTML only matters if you want to change the layout, and even then the MJML source lets you edit structure without writing raw tables.

Want this on your client's brand?

Paste a client's site and we build a real, on-brand sample in clean, ESP-safe HTML you can paste into Klaviyo.

Get a free sample

More templates