Get the working resource ↓
SaaS Email Marketing Guide 12 min read

SaaS Email Marketing Examples

Thirty real SaaS emails from onboarding to win back, annotated with the trigger behind each one, the single ask, the copy pattern, and the part worth stealing.

On this page 10 sections
  1. How these thirty emails were captured
  2. Welcome and first run: five emails that arrive in the first hour
  3. Activation nudges: what happens when you stop using the product
  4. Trial expiry: four emails carrying more revenue than any newsletter
  5. Upgrade prompts: the limit is the trigger, not the calendar
  6. Dunning: four emails nobody on the marketing team has read
  7. Expansion and renewal: five emails aimed at accounts already paying
  8. Win back: four emails sent after I cancelled
  9. What the best eleven emails had in common
  10. What to change this week
  11. Frequently asked questions

The short answer

Most SaaS lifecycle email falls into eight stages: welcome, activation, trial expiry, upgrade, dunning, expansion, renewal and win back. The examples that work share three traits: a behavioural trigger rather than a calendar date, one link rather than six, and plain text from a named sender. Across thirty emails captured from live products during 2026, the weakest performers were HTML newsletters sent to accounts that had not logged in for weeks.

Key points before you start

A good SaaS email looks like something a colleague typed between meetings. One line of context, one ask, one link, sent because the person did or failed to do a specific thing inside the product. Most of what lands in a trial user’s inbox is the opposite: a three column template with five calls to action, sent on day four because it happens to be day four.

Over five months I kept paid and trial accounts open on ten products, behaved deliberately badly in some of them, and logged every message that arrived. Thirty of those emails are annotated below, grouped by the lifecycle stage they belong to rather than by the company that sent them.

How these thirty emails were captured

Ten products, one account each, all created on a dedicated domain between January and June 2026: Notion, Figma, Loom, Linear, Calendly, Miro, Webflow, Grammarly, Zapier and Intercom. Each account followed a script. Complete signup, then stall. Do one core action on day six, then stall again. Let a card fail on purpose. Cancel one subscription outright and watch what follows.

Stalling on purpose is the part that matters. You cannot read a trigger from the outside, but you can infer it by controlling the input. If an email arrives 40 minutes after you create your first project and names that project, the sender has an event stream. If the same email would have arrived anyway on day three, it has a signup timestamp and nothing else.

Each capture was logged against six fields: product, date, subject line, sender type, the single ask, and the data the sender must have had in order to send it. Subject lines below are transcribed from the capture inbox with workspace names and account figures removed.

You are reading the design, not the results

A sample of one account per product shows you sequence architecture, timing and copy. It cannot show open rates, suppression logic, A/B variants, or the sends that were held back. Treat everything here as a pattern library, and check performance against the SaaS email benchmarks before you assume a pattern is worth copying.

Products change their sequences constantly. Two of the ten rewrote their trial flow during the capture window, which is why every row carries a date. If you quote one of these in a deck six months from now, re-verify it first.

Welcome and first run: five emails that arrive in the first hour

The job of a welcome email is to get one action done, not to explain the product. Four of the five below understood that. The fifth tried to be a tour.

ProductCapturedSubjectSenderThe single ask
Linear6 Feb 2026Your workspace is readyProduct aliasCreate your first issue
Notion14 Feb 2026Getting started in NotionTeam aliasOpen a starter template
Calendly2 Mar 2026Set your availabilityProduct aliasConnect a calendar
Loom19 Mar 2026Record your first LoomNamed personRecord a 30 second video
Miro4 Apr 2026Welcome to Miro, here is what to tryTeam aliasSix different links

Linear’s was the shortest message in the entire capture set at 41 words. It named the workspace, gave the keyboard shortcut to create an issue, and stopped. Copy the brevity and the shortcut, because teaching one keystroke inside a welcome email is a real activation mechanic. Avoid assuming your audience is as technical as Linear’s; the same email sent to a non technical buyer reads as unfinished.

Loom’s came from a named person with a reply-to that accepted replies. That single decision changes the response rate on every lifecycle email you send. The thing to avoid is the fake version, where the from name is a founder and the reply bounces off a no-reply address. Users check. They reply, get a bounce, and learn that your emails are theatre.

Miro’s six links are the failure case. Each one was reasonable on its own, and together they produced the standard outcome: the reader scans, picks nothing, archives. If you want to offer a menu, send the menu after the first action is complete, not before.

The welcome email that explains the pricing page

Two captures included a pricing link in the first message. Nobody who signed up 40 minutes ago is comparing plans. All that link does is move a curious user to a page designed to create hesitation, and it is one of the most common errors in the SaaS email mistakes list.

Activation nudges: what happens when you stop using the product

An activation nudge exists to restart a stalled setup. The interesting question with each one is whether it knew what I had actually done. Three of the four did.

ProductCapturedDays after signupSubjectInferred trigger
Webflow11 Mar 20263You started a site but have not publishedProject exists, publish event missing
Figma25 Mar 20264Nobody else has opened your file yetFile created, zero collaborators
Grammarly8 Apr 20265Finish setting up your browser extensionInstall started, no first check event
Zapier22 Apr 20266Popular automations for your appsSignup date only

Webflow’s referenced the unpublished site directly. That requires two events and a negative condition, which is more instrumentation than most teams have shipped. Copy the structure: name the specific unfinished object, give one link straight into it, and say what happens after. Avoid the guilt register, which Webflow stays clear of and plenty of competitors do not.

Figma’s is the sharpest social trigger in the set. A design file with no collaborators is a file that will be abandoned, and the email said so plainly and offered one invite link. What I would not copy is the timing. Four days is slow for a product whose value is other people being in the document, and 24 hours would have caught me while the file was still live in my head.

Zapier’s is the control group. Nothing in it indicated any knowledge of my account, and the app suggestions were category defaults rather than the two tools I had connected. It’s a perfectly competent email that any competitor could have sent, which is the definition of a wasted send.

11 of 30

Captured emails that referenced a specific object in my account by name rather than a generic feature

Capture log, January to June 2026

Editable CSV worksheet

SaaS Email Marketing planning worksheet

A practical email planning worksheet: decisions, owners, evidence and next actions.

We never sell your data. Your resource opens here after submission.

Trial expiry: four emails carrying more revenue than any newsletter

Trial expiry email is the most valuable copy in a SaaS program and usually the least edited. These four were sent in the last 72 hours of a trial, and the differences between them are worth more than a quarter of blog posts.

ProductCapturedTimingSubjectOffer
Notion9 Feb 20263 days beforeYour team trial ends ThursdayPlan comparison
Webflow17 Mar 20261 day beforeTomorrow your site goes back to a staging URLWhat you lose, named
Intercom30 Apr 20262 days beforeYour trial ends soon, book time with usSales call
Miro12 May 2026Day of expiryLast chance to keep your boardsDiscount, unprompted

Webflow’s is the model. It named the exact consequence, gave the date, and linked to one page. Loss framing works in trial expiry precisely because the loss is real and the reader can verify it, unlike the same technique used on a cold prospect. Copy the specificity. Avoid running this copy with a vague consequence, because “you’ll lose access to premium features” tells the reader nothing and they can feel the difference.

Intercom’s sales call ask is correct for the price point and wrong below it. At an ACV where a human conversation pays for itself, a booking link beats a self serve upgrade link. At $19 a seat it destroys conversion because you have inserted a meeting into a purchase that took four minutes. Match the ask to the deal size, which is the same logic that governs your whole email marketing strategy.

Miro’s day-of discount is the one I would not copy. Offering money off before the user has said no trains a price expectation, and it arrived without a single question about whether the product had worked for me. Hold the discount for the save sequence and lead with the reason instead.

FormatBest stageRenders reliablyTradeoff
Plain text, named senderActivation, trial expiry, win backEverywhere, including clipped Gmail threadsNo branded layout and weak click heatmaps
Light HTML, one imageUpgrade prompts, renewal noticesMostly, with alt text disciplineImage blocking hides the ask for a subset of readers
Full template newsletterProduct launches and changelogsFine in modern clients, clips past 102KBReads as marketing, which suppresses replies
Transactional system noticeDunning, seat changes, renewal receiptsEverywhereNobody edits the copy, so it stays cold for years
Format choices observed across the thirty captured emails.

Upgrade prompts: the limit is the trigger, not the calendar

Every good upgrade email in this set fired when I hit something. Every weak one fired because a month had passed.

ProductCapturedTrigger observedSubjectAsk
Zapier5 Feb 2026Task quota at 80 percentYou have used most of this month’s tasksUpgrade or reduce usage
Loom26 Feb 2026Video length cap hitYour recording was trimmed at five minutesRemove the limit
Calendly15 Apr 2026Second event type createdMultiple event types need a paid planUpgrade
Notion3 Jun 2026Monthly scheduleExplore what Plus can doUpgrade

Zapier’s quota email is the best commercial email in the whole capture set, and the reason is that it offered a way not to pay. It showed usage, showed the cap, and suggested turning off a noisy Zap as an alternative to upgrading. That builds trust at the exact moment most products get grabby. Copy the honest alternative. Avoid Zapier’s density, because the message ran to four paragraphs and two tables when one usage bar would have said it.

Loom’s arrived within a minute of the trim. Speed is the entire value of that message, because I was still looking at the cut-off recording and the upgrade felt like a fix rather than a pitch. The thing to avoid is sending it every time; after the third identical trim notice, an upgrade prompt becomes an error message.

Notion’s monthly nudge is the weak one, and the tell is that it could have been sent to any user on any plan in any month. If you are choosing between building a monthly upgrade broadcast and instrumenting one usage event, build the event. The email revenue calculator will tell you what the difference is worth on your numbers before you commit engineering time.

Dunning: four emails nobody on the marketing team has read

Failed payment email recovers revenue you already earned, and it is almost always written by whoever set up the billing system. I let a card expire on four accounts to see what arrived.

ProductCapturedAttemptToneLink count
Grammarly21 Feb 2026FirstNeutral system notice1
Webflow2 Apr 2026FirstPlain, named consequence and date1
Figma19 Apr 2026SecondNeutral, with retry schedule shown2
Calendly6 May 2026ThirdUrgent, account suspension warning3

Webflow’s again did the specific thing: it said which card, which date the next retry would run, and what happens to published sites if all retries fail. Copy the retry schedule. Telling someone their card will be tried again on Thursday removes the anxiety that makes people cancel rather than fix.

Calendly’s third notice is where dunning copy usually goes wrong. It shifted to urgency language and added two links, one of which was to a help centre article. A person whose payment is failing needs one button that opens a card form on mobile in under five seconds. Everything else on the page is a reason to close the tab.

None of the four dunning emails came from a named human, and all four went to the billing contact only. If the billing contact left the company, the sequence talks to nobody. Sending the third attempt to the workspace admin as well is a one line change worth a measurable slice of involuntary churn.

Check who owns your dunning copy

In three of the four accounts, the dunning wording was clearly the default from the payment processor. That copy was written to be legally safe, not to recover revenue. Read yours this week, because it may be the oldest customer-facing text your company owns.

Editable working copy

Get this checklist as a working file

Save the checks on this page as a working copy and assign an owner, status and evidence for each action.

We never sell your data. Your resource opens here after submission.

Expansion and renewal: five emails aimed at accounts already paying

Expansion email only works when the product data justifies it. Send a seat upsell to a team with three unused licences and you have told them you are not paying attention.

ProductCapturedStageSubjectBasis for the ask
Figma8 May 2026ExpansionTwo people are waiting for edit accessPending access requests
Notion21 May 2026ExpansionYour guests are using this more than your membersGuest activity counts
Linear2 Jun 2026ExpansionCycles are available on your planFeature never opened
Grammarly14 Jun 2026RenewalYour annual plan renews on 14 JulyRenewal date
Calendly27 Jun 2026RenewalHere is what your team booked this yearUsage summary

Figma’s pending access email is expansion done correctly, because the request came from inside the account and the email just surfaced it. Two people had asked for edit seats and the admin had not seen the notification. Copy the mechanic of turning an in-product request into an email to the person who can approve it. Avoid using it for anything the user did not initiate.

Calendly’s renewal summary showed the number of meetings booked through the account over twelve months. A usage recap before a renewal date is the cheapest retention asset in SaaS and hardly anyone builds it. What I would change is the placement of the renewal amount, which was in the footer; hiding the price reads as evasive even when it is not intended that way.

Linear’s dormant feature email is the quiet winner of the set. It named a feature I was already paying for and had never opened, which is expansion revenue you already booked and are failing to defend. The risk is obvious: send four of these and the product starts to feel like a nag. One a quarter, tied to the single highest value unused feature, is about right.

We stopped writing expansion emails and started writing queries. If the query returns nobody, there was no email to send that week, and that turned out to be fine.

Composite , Anonymised from two lifecycle marketers interviewed for this page

Win back: four emails sent after I cancelled

Win back is the stage most programs skip entirely, and the capture set reflects that. Of the products I cancelled outright, several sent nothing beyond a confirmation receipt.

ProductCapturedDays after cancelSubjectOffer
Loom30 Apr 20262Before you go, what went wrongReply, no offer
Miro26 May 202630We miss you, here is 30 percent offDiscount
Webflow18 Jun 202660What shipped since you leftChangelog
Zapier2 Jul 202614Your data export expires in 14 daysDeadline, honest

Loom’s exit question arrived 48 hours after cancellation with no offer attached, from a named person, and asked exactly one thing. That is the correct first win back email, because the answer is worth more than the reactivation. Avoid making it a survey; the moment a link opens a form with five radio buttons, the reply rate collapses.

Webflow’s changelog at 60 days is the pattern I would build first. It works only if you actually shipped something the churned user complained about, which means your win back list has to be segmented by cancellation reason. That’s a lot of plumbing for one email, and it’s still the highest converting approach in this category. The full breakdown of these sits in the win back email examples teardown.

Miro’s blind 30 percent discount is the pattern to avoid. Nothing about the product had changed, the discount was untargeted, and it implied the original price was negotiable all along. A discount with no product change is worse than silence, because silence at least leaves your pricing intact.

What the best eleven emails had in common

Eleven of the thirty read like a message rather than a campaign. They shared four properties, and none of the four cost anything to copy.

Test your next lifecycle email against this

0 of 7 done

The inverse holds too. The weakest sends were HTML newsletters delivered to accounts with no login activity for a month or more, which is a pattern worth checking in your own tool right now. Suppressing inactive accounts from broadcast sends and routing them to a re-engagement branch protects deliverability and stops your newsletter from being the thing that earns the spam complaint.

Sender infrastructure decides whether any of this lands. If your lifecycle sends and your marketing broadcasts share a subdomain, one bad newsletter drags the trial expiry email down with it, and that comparison is part of how you should read any platform decision or a head to head like Customer.io against Braze.

What to change this week

Pick the two stages with the most revenue attached and read the current copy aloud. For most SaaS companies that means trial expiry and dunning, both of which are usually running on text nobody has edited since the billing system was installed.

Then do the capture exercise yourself on three competitors. Two hours of signups and a dedicated domain will tell you more about what to build next than any swipe file, because you control the behaviour and can therefore see the trigger. Start with the subject lines, which are the fastest thing to fix and are collected in the SaaS email subject line file, then work backwards into the sequence design on the email marketing hub.

Editable CSV worksheet

SaaS Email Marketing planning worksheet

A practical email planning worksheet: decisions, owners, evidence and next actions.

We never sell your data. Your resource opens here after submission.

Frequently asked questions

What are the main types of SaaS marketing emails?

Eight stages cover the field: welcome and first run, activation nudges, trial expiry, upgrade prompts tied to a limit, dunning for failed payments, expansion and seat growth, renewal notices, and win back after cancellation. Most SaaS programs build welcome, a newsletter, and nothing else. The revenue sits in trial expiry, dunning and expansion, which are the three least written.

How many links should a SaaS lifecycle email contain?

One, in almost every case. Of the thirty emails captured for this page, the ten that read as a message from a person had a single link, and the ten weakest averaged six. Extra links do not give the reader choice, they give the reader a decision to postpone. Footer legal and unsubscribe links do not count against this.

Should SaaS onboarding emails be plain text or HTML?

Plain text for anything triggered by behaviour, HTML for anything that genuinely needs images, such as a product launch or a changelog with screenshots. Plain text renders identically everywhere, survives clipping in Gmail, and matches the tone of a transactional message. The tradeoff is real: you lose branded layout and you lose click heatmaps that rely on image tracking.

What is a behavioural email trigger?

A send condition based on something the user did or failed to do in the product, such as creating a second project, inviting no teammates within 72 hours, or hitting 80 percent of a plan limit. The alternative is a calendar trigger that fires on day three regardless of what happened. Behavioural triggers require event instrumentation before any copy gets written.

How soon after a trial starts should the second email go out?

When the user completes or abandons the first core action, not on a fixed schedule. In the capture set the fastest useful second email arrived 40 minutes after account creation and referenced the exact workspace that had been created. The slowest arrived on day three with generic tips. Same product category, completely different quality of attention.

Do dunning emails belong to marketing or to billing?

Billing owns the system, marketing should own the copy. Failed payment emails recover revenue that has already been earned, and the difference between a cold system notice and a clearly written one with a single update-card link shows up in recovery rate. Most SaaS teams never review dunning copy because it lives in Stripe or Chargebee rather than the email tool.

Where can I find real SaaS email examples to copy?

Sign up for accounts on products in an adjacent category using a dedicated domain, then deliberately stall at different points and log what arrives. That gives you the trigger logic, not just the copy. Public swipe files show the message but never show what the user did beforehand, which is the part that determines whether the email works.

The saas-marketing.net editorial team Research and editorial

We research, write and maintain every page on this site. The library explains marketing decisions through practical frameworks, explicit assumptions and references. Corrections can be requested through the contact page.

Published September 11, 2026. Last updated .