Build a Win-Back Email End to End
Objective: Write a complete win-back email, subject line, PAS body copy, one behavior-based personalization insert, and a single first-person CTA, using real subscriber data.
You're the lifecycle marketing writer at Mailchimp's internal team, building a win-back email for subscribers who haven't opened in 60 days and have an item sitting in an abandoned cart.
Draft the full email using the lesson's formulas, then verify it against the personalization and single-CTA rules before calling it done.
Before you start
What you'll need
Free path (everything below is enough to finish)
Free, shareable, sufficient for a written deliverable
Free, matches the CRM-export workflow used in the personalization step
Paid upgrades (optional, faster/deeper)
Free tools are enough to complete this project end-to-end; Klaviyo only matters if you want to actually send the email.
Built-in behavioral triggers and segment tooling that match the personalization step
No access? The Google Docs draft is the graded deliverable; a sending platform is optional for this exercise
The process
4 steps
Step 01 of 04
Belkins' 2025 study found 41-50 character subject lines hit 17.57% CTR, and question-format subjects reached 46% open rates.
Write a subject line for a 60-day-lapsed subscriber using the question formula, staying within the 41-50 character range.
Procedure
- Draft 3 candidate subject lines using the question formula
- Count characters, keep the shortlist to lines between 41-50 characters
- Pick the one with the most specific, credible outcome
Candidate: 'Still deciding? Your discount expires Friday' (46 chars)
Healthy
The chosen subject line is a specific question tied to a real deadline, within the 41-50 char band.
Unhealthy
Shipping a vague subject like 'We miss you!' with no specific hook or length discipline.
What this means
Subject line length and format aren't style choices, they're the highest-leverage open-rate lever documented.
So what do I do about it?
| Symptom | Action | Effort |
|---|---|---|
| Subject line drafts are all over 60 characters | Cut to the single sharpest clause and re-count | 5 min |
Step 02 of 04
PAS names the Problem precisely, Agitates why it matters now, then introduces the Solution as the natural resolution.
Write 3 sentences for the body, one per PAS stage, for a subscriber who abandoned a cart 60 days ago.
Procedure
- Write one Problem sentence naming the specific abandoned item
- Write one Agitation sentence stating what they're losing by waiting
- Write one Solution sentence introducing the win-back offer
Problem: The wireless earbuds in your cart sold out twice since you last looked. Agitation: The current batch has 6 left in stock. Solution: Here's 15% off to lock in a pair before they're gone again.
Healthy
Each PAS sentence is specific and references the reader's own behavior, not generic copy.
Unhealthy
Writing a single vague paragraph that doesn't name the specific product or urgency.
What this means
PAS only works when Problem and Agitation are concrete; vague versions of either stage collapse the structure.
So what do I do about it?
| Symptom | Action | Effort |
|---|---|---|
| Body copy reads as one generic paragraph | Split it into 3 explicit PAS sentences with specifics | 5 min |
Step 03 of 04
Personalization beyond first names, behavior triggers, segment-specific copy, dynamic content blocks, drives the 26% open-rate and 133% reply-rate lifts Campaign Monitor documented.
Add one behavior-based personalization element to the draft using the subscriber's actual cart data.
Procedure
- Look up the subscriber's exact abandoned item and date from the export
- Insert the specific item name and days-elapsed into the body copy
- Confirm the personalization references real behavior, not just a first name
Row: subscriber_id 4471, item 'Wireless Earbuds Pro', abandoned 60 days ago -> inserted into subject and body
Healthy
The email references the exact product and timeframe pulled from real subscriber data.
Unhealthy
Personalizing with only '{{first_name}}' and calling it done.
What this means
First-name personalization is table stakes; behavior-based personalization is what multiplies engagement.
So what do I do about it?
| Symptom | Action | Effort |
|---|---|---|
| The only personalization token is {{first_name}} | Pull one behavior data point from the CRM export and write it into the copy | 30 min |
Step 04 of 04
Moosend/WordStream data shows single-CTA emails generate 371% more clicks; the CTA should complete the sentence 'I want to ___'.
Write one button CTA for this win-back email, and confirm there are zero competing links in the draft.
Procedure
- Draft a CTA completing 'I want to ___' in first person
- Scan the full draft and remove any secondary links or buttons
- Confirm exactly one button CTA remains
CTA button: 'Get My 15% Off' Secondary links removed: 'Browse New Arrivals', 'View Account Settings'
Healthy
The final draft has exactly one CTA, first-person, tied directly to the offer.
Unhealthy
Keeping the win-back CTA plus a 'Browse New Arrivals' link 'just in case'.
What this means
Every additional link is a vote against the one action that actually matters.
So what do I do about it?
| Symptom | Action | Effort |
|---|---|---|
| The draft has 2+ buttons or links competing for attention | Delete every link except the single primary CTA | 5 min |
Final deliverable
A complete win-back email draft: subject line, PAS body copy with one personalization insert, and a single first-person CTA.
See a reference example
Klaviyo win-back email draft (excerpt) Subject: 'Still deciding? Your discount expires Friday' (46 chars) Body: Problem/Agitation/Solution referencing the subscriber's cart CTA: 'Get My 15% Off' (single button)
Success criteria
You're done when you can:
- Subject line falls within 41-50 characters and uses a real formula
- Body follows Problem-Agitation-Solution with one concrete detail per stage
- Includes one behavior-based personalization element beyond first name
- Exactly one CTA appears in the final draft