All posts
Marketing·7 min read·

Re-engagement Email Campaigns for Shopify

How to build a re-engagement email campaign that wins back lapsed Shopify customers using intent signals, not a 90-day timer or a blanket discount.

The quiet list every Shopify store carries

Every Shopify store has a quiet list. Customers who bought once, maybe twice, and then stopped opening your emails. On most stores it's one of the biggest groups in the database. It grows every month you leave it alone.

The usual fix is a re-engagement campaign: a "we miss you" email with 15% off, sent to everyone who hasn't ordered in 90 days. A few people come back. Most don't. And the ones who do often came back for the discount, not for you.

This guide covers what a re-engagement email campaign is, why the standard version underperforms, and how to build one that reaches lapsed customers at the moment they're actually open to coming back.

What a re-engagement email campaign actually is

A re-engagement email campaign is a series of emails sent to customers or subscribers who have stopped buying or stopped opening. Its job is simple: bring them back, or find out they're not coming back and stop mailing them.

It's easy to mix up with the other flows in your email platform, so here's how they differ:

FlowWho it targetsWhat triggers it
WelcomeNew subscribersSigning up
Abandoned cartActive shoppersLeaving a cart in the last few hours
Browse abandonmentActive shoppersViewing a product without adding it to cart
Re-engagement (win-back)Lapsed customers and inactive subscribersGoing quiet for a set period

The first three catch people while they're still warm. Re-engagement is the only one aimed at people who have already drifted. That makes it the hardest flow to get right, and the one most stores set up once and never touch again.

You'll also see it called a win-back campaign. Some teams split the two: win-back for customers who stopped buying, re-engagement for subscribers who stopped opening. On a Shopify store they usually overlap, so this guide treats them as one problem.

Why the standard win-back campaign underperforms

The stakes are real. The average ecommerce repeat purchase rate sits around 28%, which means roughly 7 in 10 customers never place a second order (Rivo). Every one of them is a candidate for re-engagement. So why does the usual campaign bring so few of them back? Four reasons.

72 of every 100

customers never place a second order.

28 come back for order two

72 make up your quiet list

Average ecommerce repeat purchase rate ≈ 28% (Rivo), shown as 100 customers.

1. It runs on a timer, not on behaviour. "Hasn't ordered in 90 days" treats every customer the same. But a coffee subscriber who skips a month is a warning sign, while a sofa buyer who goes quiet for a year is completely normal. One fixed window means you email some people too early and others far too late.

2. It leads with a discount. 15% off is the default because it's easy. It also teaches customers that waiting pays. The ones who respond are often deal-seekers, not people who wanted the product. And you give that discount away to everyone, including people who would have come back at full price.

3. It damages your sender reputation. Lapsed subscribers are the people most likely to ignore your email or mark it as spam. Gmail and Yahoo both require bulk senders to keep spam complaints below 0.3% (Google's email sender guidelines, Yahoo's sender best practices). Google recommends staying under 0.1% (Bird). Blasting a large dormant list is one of the fastest ways to cross that line, and it hurts delivery for your active customers too.

Safe
Risky
Too high
0%0.1%0.3%

0.1% is Google's recommended ceiling: 50 complaints on a 50,000-email send.

0.3% is the Gmail and Yahoo limit: 150 complaints on the same send.

Spam-complaint rate = complaints ÷ emails delivered. Dormant lists push it up fastest.

4. It says nothing about the customer. "We miss you" is about the brand. It doesn't mention what they bought, what they looked at, or why now is a good time to come back. Generic emails get generic results.

The common thread: the standard campaign asks "who has been silent?" A better campaign asks a different question.

A smarter approach: re-engage on intent, not on a timer

The better question is: who has been quiet, but is showing signs of coming back? A lapsed customer who visits your store again this week is not the same as one who hasn't thought about you in six months. Treating them the same wastes your best chance.

Example: Megan bought a trench coat on day 0, then went quiet.

90-day timer

Day 0Day 90Day 120

Day 90: "We miss you, here's 15% off." Same email as everyone else, six weeks after she was last looking.

Intent trigger

Day 0Day 49Day 120

Day 45 and 49: she's back on the site, viewing knitwear. Day 49: "Knits to wear under your trench." 41 days earlier, while she's actually looking, and no discount.

Illustrative example. The intent trigger fires when she comes back, not when a calendar says so.

Doing that well comes down to four changes in how you run the campaign.

Shift 1: Trigger on signals, not on a date. Instead of one store-wide cutoff, watch for the moments a lapsed customer shows interest again:

  • They return to your site after weeks or months away
  • They view a product they bought before, or something in the same category
  • They open or click an email after a long silence
  • They add something to cart and leave
  • They pass their own usual reorder window, based on their purchase history rather than a store average

A dormant customer who starts browsing again is one of the highest-converting groups on a store. We covered that cohort in llea.ai for D2C brands, and how these signals get scored in How llea.ai measures purchase intent.

Shift 2: Match the message to the customer. Lapsed customers didn't all leave for the same reason, so one email won't bring them all back. At llea.ai we group shoppers into four types, and each one needs a different nudge. Here's what that looks like for four lapsed shoppers:

Megan

Loyalist
Knit sweater

Signal: Four past orders. Back on the site twice this week.

A personal note, new arrivals in her favourite category, or early access. No discount needed. She already likes you.

Subject: "First look at the new knitwear drop"

Jake

Impulse Buyer
Suede sneaker

Signal: One order, in a flash sale. Viewed these sneakers yesterday.

A limited drop or a low-stock alert with a short window. Urgency works here. Long nurture sequences don't.

Subject: "Only a few left in your size"

Hannah

Researcher
Leather tote

Signal: Compared two bags across five visits. Never bought.

What's changed since she last looked. New reviews, comparisons, updated product details.

Subject: "Satchel vs. tote: an honest comparison"

Marcus

Hesitant Explorer
Brown leather boots

Signal: Added these to cart twice. Left at the shipping step.

Reassurance. Customer reviews, easy returns, and clear shipping terms remove the reason he stalled.

Subject: "Free returns, no questions asked"

Illustrative examples: same quiet list, four reasons for going quiet, four different emails.

Shift 3: Use discounts last, and only where they change the decision. A discount should be a tool, not a default. Save it for the customers who have shown interest but haven't moved after a softer message. Everyone else gets relevance instead of a price cut, and your margin stays intact.

Shift 4: Reach them where they're active. A customer who ignores email might still read WhatsApp or browse your store on their phone. If email clicks have stopped but site visits haven't, switch the channel: an SMS or WhatsApp nudge, or an on-site message on their next visit. The same rule applies everywhere. One relevant message beats three generic ones.

Better still, catch them before they lapse. The cheapest win-back is the one you never need. A growing gap between orders or fewer site visits are early warnings. Reaching a drifting Loyalist while they're still warm works far better than waiting until they've gone quiet. We explain how in Predictive ecommerce marketing.

How to build a re-engagement campaign on Shopify

You can build this in Klaviyo, Omnisend, Attentive or most other email platforms connected to Shopify. The steps are the same.

  1. Define "lapsed" for your store. Start from your own data, not a blog's 90-day rule. Look at the typical time between first and second orders in Shopify Analytics. A customer is lapsed when they've gone well past that gap. For subscribers who never bought, use engagement instead: no clicks for 90 to 120 days.
  2. Split the list before you send anything. Separate lapsed customers from subscribers who never bought. Then split customers by value, so your best past buyers get more personal treatment. Exclude anyone with a recent order or an open support ticket.
  3. Set up the triggers. Build a flow that starts when someone in the lapsed segment does something: visits the site, views a product, clicks an email. If your email tool can't see browsing data on its own, Shopify Flow can tag customers and pass that signal across. Keep a slower, date-based flow as a backstop for people who show no signals at all.
  4. Write a short sequence. Three emails over two to three weeks is enough. More than that and you're pushing people toward the spam button.
  5. Add exit rules. Anyone who buys leaves the flow immediately. While someone is in the sequence, hold them out of your regular campaigns so they don't get two different messages in one day.
  6. Sunset the ones who don't respond. If someone ignores the full sequence, stop emailing them. Suppress them from regular sends. A smaller list that engages beats a big list that doesn't.
  7. Test one thing at a time. Subject line, send time, or offer. Change one, measure it, then move to the next.

A three-email sequence you can adapt

We use a three-email structure, and it's short on purpose. Each email does one job.

EmailWhenJobWhat goes in it
1. The reminderWhen the trigger firesReconnectWhat's new since their last visit, tied to what they bought or browsed. No discount.
2. The reason4 to 6 days laterRemove the blockerReviews, easy returns, restocks, or a product that fits their past order.
3. The choice7 to 10 days laterGet a decisionA small offer if their behaviour says it's needed, plus a clear way to stay or unsubscribe.

Here's how that sequence reads for Megan, the returning Loyalist from earlier:

1. ReminderDay 49
AAster Studio

Knits to wear under your trench

Knit sweater

You were looking at these on Monday. Three new colors just came in.

See the colors
2. ReasonDay 54
AAster Studio

What customers say after 30 days

"Fits true to size and works with everything I own."

Free returns for 60 days. Delivery in 2 to 4 days.

Read the reviews
3. ChoiceDay 62
AAster Studio

Still want to hear from us?

If the knit's still on your mind, here's 10% off. If not, no hard feelings.

10% only if she hasn't clicked

Keep me subscribedUnsubscribe
Illustrative example from a fictional store. Only email 3 carries an offer, and only if she hasn't acted.

Email 3 matters more than it looks. Giving people an easy way to opt out is better than being marked as spam, and it keeps your list honest.

Subject line ideas by customer type

  • Loyalist: "First look at the new [category] drop" or "Saved you a spot before this goes live"
  • Impulse Buyer: "Only a few left in your size" or "Back in stock, but not for long"
  • Researcher: "What changed since you last looked" or "[Product] vs [Product]: an honest comparison"
  • Hesitant Explorer: "What customers say after 30 days" or "Free returns, no questions asked"

Keep subject lines plain and specific. A lapsed customer is skimming. A clear reason to open beats a clever one.

What to measure, and when to let go

Open rates won't tell you much here. Apple Mail Privacy Protection loads emails in the background, which records "opens" nobody actually made (Twilio SendGrid). Track these instead:

MetricWhat it tells you
Reactivation rateShare of lapsed customers who buy within 30 days of entering the flow. Your headline number.
Repeat rate after win-backShare of won-back customers who order again within 90 days. Tells you if they stayed or just took the discount.
Revenue per recipientWhether the campaign is worth running at all.
Click rateWhether the message is relevant enough to act on.
Discount costHow much margin you gave away to win each customer back.
Unsubscribes and spam complaintsWhether you're pushing too hard. Check spam rate in Google Postmaster Tools.
Worked example. 2,000 lapsed customers enter the flow in March and 140 of them buy within 30 days: a 7% reactivation rate. If 60 of those 140 order again within 90 days, your repeat rate after win-back is 43%. If you gave each of the 140 a $12 discount, that's $1,680 of margin to weigh against the revenue.

Compare reactivation by trigger. If customers re-engaged on a fresh browsing signal convert far better than the date-based backstop, that tells you where to spend your effort.

When to sunset. If a subscriber has ignored the full sequence and shown no activity on your site, stop mailing them. Removing them protects deliverability for everyone else on your list. They can always come back on their own, and if they visit your store again, the signal-based flow will pick them up.

Where llea.ai fits

Everything above can be done by hand. The hard part is the signals. Spotting which lapsed customers came back to browse this week, working out each person's own reorder window, and deciding which type of shopper they are takes data most email tools don't read on their own.

That's the layer llea.ai adds. It reads the browsing and order data Shopify already captures, scores intent for every customer, and assigns each one a customer type. When a lapsed customer shows fresh interest, llea.ai flags them and passes that to the email tool you already use, like Klaviyo or Attentive, through Shopify Flow. Your email platform still sends the email. llea.ai decides who should get one, and when.

No migration, no new email tool. Just better timing on the campaigns you already run. See how llea.ai connects to your stack.

Frequently asked questions

How long before a customer counts as lapsed? It depends on your store. Use the typical gap between orders for your products, then add a buffer. Fast-replenishment products lapse in weeks. Furniture or electronics can take a year.

Should every re-engagement email include a discount? No. Lead with relevance. Keep discounts for customers who have shown interest but haven't acted after a softer message.

How many emails should the sequence have? Three is a good default. Past that, most people who were going to respond already have.

What's the difference between re-engagement and win-back? Many teams use the terms interchangeably. When they're split, win-back targets past customers who stopped buying, and re-engagement targets subscribers who stopped opening.

Will removing inactive subscribers hurt my list size? Your list gets smaller, but your deliverability gets better. Emails to engaged people land in the inbox more often, which matters more than the raw number.

Where to start

If you change one thing this month, make it this: stop sending the same 90-day email to everyone. Take the lapsed customers who visited your store in the last two weeks, and send them something about what they looked at. Skip the discount. Then compare it against your current win-back flow and see which one earns more.

Want to see how many of your lapsed customers are already showing signs of coming back? Book a 30-minute walkthrough and we'll pull your numbers live.

We use cookies and similar technologies to analyse traffic and personalise your experience. Our third-party partners may associate your visit with your email for marketing purposes. Read our Privacy Policy.