Win-Back in Sync: Email, SMS and Paid Retargeting
How do I sequence a win-back campaign across channels?
Run owned channels first and hold paid for the customers who do not respond. Most win-back budgets reactivate buyers who were returning anyway, which pays cold-acquisition prices for a purchase an email would have produced at nearly no marginal cost.
Most win-back budgets are spent reactivating buyers who were already coming back on their own. You fire a retargeting campaign at everyone who hasn’t purchased in 90 days, Meta serves an ad to a lapsed customer, that customer also gets your “we miss you” email an hour later, they buy — and the ad claims the conversion. You paid for a reorder your owned channels delivered for free. A disciplined customer win-back campaign fixes the sequence first and the creative second.
For the adjacent growth decisions, compare Browse-Abandonment Flows: Catching Intent Before the Cart and then use Unboxing as an Ad Format: Engineering the First 30 Seconds to pressure-test the operating plan.
Why last-click makes win-back look better than it is
Retargeting a known buyer is the most straightforward conversion a paid platform can claim. These people already trust you, already have your product, and many were going to repurchase regardless. So the click-attributed return on ad spend on a lapsed-buyer audience almost always looks spectacular — and almost always overstates what the spend actually caused.
The number that matters is incremental, not attributed. Incremental margin is the contribution you earned that would not have happened without the paid touch. On warm, already-engaged audiences, the gap between attributed and incremental can be enormous, because email and SMS are quietly doing the work and paid is harvesting the credit at the finish line.
This is a Goodhart problem. The moment platform ROAS becomes the win-back target, you optimize toward audiences that convert easily on their own — and away from the genuinely dormant buyers who need a paid nudge but won’t make your dashboard look good.
Sequence the channels by cost, not by reach
The fix is an ordering rule: least expensive owned channel first, paid last, and paid only on the people the owned channels failed to move.
Owned channels — email and SMS — cost a fraction of a paid impression and you already have permission to use them. They should always get the first attempt at a lapsed buyer. Paid retargeting is the expensive backstop, not the opening move.
A workable cadence for a 90-day lapsed segment:
- Days 1–3 — Email. The lowest-cost touch goes first. A reminder, a restock, a reason to come back. No discount yet — protect margin until you know they need the push.
- Days 4–7 — SMS. For subscribers who didn’t open or click the email. Short, direct, time-bound. Still cheap, still owned.
- Day 8+ — Paid retargeting, suppressed. Only now do you spend. And only against the people who ignored both the email and the SMS — everyone who reactivated gets removed from the audience.
The rule underneath the cadence: a buyer should never cost you a paid impression until your owned channels have had their cheaper shot and failed.
Suppression is the whole game
Sequencing only saves money if reactivated buyers actually exit the paid audience. Without suppression you’re running all three channels at the same people simultaneously and paying for overlap.
Two suppressions matter:
- Recent purchasers. Anyone who bought in the last N days should be excluded from every win-back audience. Obvious, frequently skipped — a stale customer list keeps serving ads to people who already reordered.
- Owned-channel reactivators. Anyone who opened, clicked, or converted from the email or SMS leg drops out of the paid leg. This is the suppression that actually separates a sequenced program from three campaigns running in parallel.
Operationally: maintain a custom audience of “lapsed but NOT yet reactivated,” refresh it on a tight cycle (daily if your stack allows), and exclude purchasers and engaged-owned-channel users on every refresh. The faster that audience updates, the less you pay to retarget someone who came back yesterday.
A practical caution on identity: email/SMS engagement and ad-platform matching don’t line up perfectly, and match rates are partial. Some leakage is unavoidable. Tight refresh cycles and generous suppression windows are how you keep the overlap small even when matching is imperfect.
Reserve paid for the genuinely dormant
After owned channels run and reactivators are suppressed, what’s left is the audience paid was always meant for: buyers far enough lapsed that they’ve stopped opening your email, ignore your SMS, and need a real reason — and a real impression — to return.
This is a smaller, harder, more expensive audience than “everyone who hasn’t bought in 90 days.” That’s the point. You’re no longer subsidizing easy reorders; you’re spending on reactivation that wouldn’t happen otherwise. Platform ROAS on this segment will look worse than the everyone-bucket — and the incremental margin will look better, because far more of it is genuinely caused by the spend.
Mind the delivery mechanics. A deeply dormant segment is small, and a small custom audience can starve the optimizer of the recent conversion signal it needs to find more buyers. Keep the audience workable: widen the lapse window if it’s too thin to deliver, or consolidate segments so the campaign clears enough optimization events to leave the learning phase. As an illustrative planning range, a single ad set wants on the order of tens of conversions over its optimization window before its delivery stabilizes — treat that as a budgeting guide, not a hard threshold, and don’t slice a small dormant pool into fragments that each starve.
Measure on incremental margin
Win-back economics live in three numbers, and platform ROAS isn’t the headline one.
| Metric | What it answers |
|---|---|
| Incremental conversions | How many reorders the paid touch actually caused |
| Margin per reactivation | Contribution after product cost, discount, and fulfillment |
| Cost per incremental reactivation | Paid spend ÷ incremental conversions |
The honest test of a customer win-back campaign is whether margin per reactivation comfortably clears cost per incremental reactivation — not whether attributed ROAS looks impressive.
To get the incremental number without heavy tooling, hold out a randomized slice of the dormant audience from the paid leg and compare reactivation rates. The lift between exposed and held-out, applied to margin, is your real return. Run it as an illustrative read on direction, not a precision instrument — but even a rough holdout is more honest than last-click, because it answers “what did paid add” instead of “what did paid touch last.”
Two margin guards:
- Don’t lead with the discount. A win-back coupon discounts buyers who’d have returned at full price. Sequence the no-incentive touches first; introduce an offer only at the dormant, paid stage where the math says you genuinely need it.
- Watch frequency. Reactivation intent doesn’t scale with impressions. Keep frequency on the dormant segment low, with a tight audience, exclusions for anyone who has just bought, a modest budget and creative rotation (Meta documents frequency caps only for Awareness and Engagement campaigns: How do I set a frequency cap on Facebook ads?), so you’re not paying repeatedly to convince someone the first three impressions already lost.
Putting it together
The sequence is the strategy: email, then SMS, then suppressed paid retargeting against only the people the cheap channels couldn’t move — judged on incremental margin, not attributed clicks.
This is exactly the kind of cross-channel overlap that’s hard to see by eye and easy to see in the data, which is where read-only diagnostics earn their keep. Bach.ai doesn’t measure that overlap for you, so check your exclusions in Ads Manager. Its audit estimates the revenue impact of what it finds in your connected Meta account and surfaces each leak for your approval rather than touching the campaign on its own.
The takeaway: before you raise the win-back retargeting budget, audit the suppressions. Confirm recent purchasers and owned-channel reactivators are excluded, push owned channels to the front of the cadence, hold paid in reserve for the genuinely dormant, and grade the whole program on incremental margin. The least expensive reactivation is the one your email already earned — stop paying for it twice.
Documented thresholds
Meta publishes the figures below; they are reproduced here with the article they come from. Retrieved 2026-09-22 — Meta revises this documentation without notice, so verify anything load-bearing against the current version before you act on it.
- Custom audiences do not backfill. Meta documents that a website custom audience starts populating from the moment you create it, and allows up to 5 rules per audience. A brand adding 300 purchasers a month needs roughly 3.3 months to reach 1,000 — the audience costs $0 to create and cannot be built retroactively.
- Lookalike source size. Meta requires at least 100 people and generally recommends 1,000–5,000. The hard floor is 10% of the bottom of that range and 2% of the top, so an audience can be technically valid and practically useless.
- How small is too small. Meta lists audience size first among the six documented causes of a learning limited ad set, and the operative test is whether the audience can generate about 50 optimisation events a week — at 30 a week you are at 60% of the threshold.
Source: Meta Business Help Centre — https://www.facebook.com/business/help/465262276878947, https://www.facebook.com/business/help/1474662202748341, https://www.facebook.com/business/help/269269737396981.
Method and sources
“Run owned channels first and hold paid for the customers who do not respond.”
Source: Where this guide describes platform behaviour, it follows Meta’s published advertising and Marketing API documentation, which changes without notice — verify anything load-bearing against the current version before you act on it. Every threshold the guide asks you to supply is first-party, drawn from your own account exports and commerce ledger, because no external benchmark can stand in for your own margin structure.