Win-back campaigns for dormant customers: timing, message and offer
A win-back campaign for dormant customers starts by defining dormant clearly using a last-activity custom field, then sends a Marketing template reactivation message with a specific, time-bound reason to return, handles replies with an AI Reply step scoped to re-engagement, and measures success by tracking how many actually placed a new order within a set window, not just how many opened the message.
- Define 'dormant' with an actual number of days since last purchase, not a vague feeling.
- Split dormant customers into recency bands; a 60-day dormant customer needs a different message than a 300-day one.
- A win-back message needs a specific, believable reason to return, not just 'we miss you'.
- Use a Marketing template since these contacts are outside the 24-hour service window.
- Measure success by actual repeat purchase within a defined window, not by message open or reply rate alone.
Why 'dormant' needs a number, not a feeling
Most businesses know intuitively that some customers have 'gone quiet', but without a defined threshold, a win-back campaign either goes out too early (annoying customers who are still actively considering) or too late (long after the relationship was recoverable). Set a clear rule: for a fast-repeat business like a restaurant or salon, 45-60 days without an order might count as dormant; for an annual-purchase business like insurance or a jeweller, 8-12 months without contact might be the right threshold. Whatever the number, write it down and apply it consistently.
Tracking dormancy with a custom field
Store a last-order-date or last-activity-date as a custom field on each contact, updated automatically whenever an order, booking or payment completes via a Webhook or Google Sheets connection. A Condition block comparing this date against today's date, run on a schedule or triggered periodically, moves a contact into a 'dormant' Contacts group once the threshold is crossed, without anyone having to manually review the customer list.
Segmenting by how dormant, not just dormant or not
| Band | Typical message tone |
|---|---|
| Recently dormant (just past threshold) | Light, familiar tone: 'noticed it's been a while', a small relevant update |
| Mid-dormant | A specific reason to return: new arrivals, a changed policy, a genuine improvement |
| Long dormant | A stronger incentive or a direct question: are you still interested in hearing from us at all |
Treating a customer who ordered 50 days ago the same as one who has not engaged in a year wastes a good offer on someone who might have returned anyway, and under-serves someone who genuinely needs a stronger reason.
For genuinely high-value dormant customers, a large past order value, an annual policyholder, a long-standing account, a WhatsApp message alone may not carry enough weight. An outbound AI voice call or a call from a relationship manager, reserved specifically for this smaller, high-value dormant segment, tends to have noticeably better recovery odds than a template message, since it signals the business genuinely values the relationship rather than sending a mass broadcast.
Writing a win-back message that isn't generic
'We miss you, come back!' rarely moves anyone. A believable win-back message gives a specific, current reason: a new product line since they last shopped, a policy or service improvement, a genuinely relevant seasonal offer, or simply an honest question about why they stopped. For a jeweller: 'We've added a new lightweight daily-wear collection since your last visit, would you like to see it?' works better than a blanket discount message that could be sent to anyone.
Occasionally a customer went dormant for a reason a discount cannot fix, a genuine service problem, a change in their own circumstances, or simply having found the product no longer relevant to them. Reading replies carefully rather than treating every response as a pure sales opportunity helps you avoid repeatedly re-targeting someone who has clearly moved on, and instead redirect that effort toward dormant contacts genuinely likely to return with the right nudge.
Building the win-back flow on Convo360
Here is how to build this on Convo360, no code required.
- Set up the dormant-detection Condition and Contacts group as described above.
- Create a Marketing template for each dormancy band, since these contacts are outside the 24-hour customer-service window and a template is required to reach them.
- Send the appropriate template based on the contact's band, with a clear single call-to-action button.
- Route any reply into an AI Reply step scoped specifically to re-engagement, catalogue questions and current offers.
- On genuine interest, move the contact into a short follow-up drip sequence similar to a fresh lead, rather than assuming one message will convert on its own.
- Update the custom field the moment they place a new order, automatically removing them from the dormant group.
Handling replies honestly, including 'please stop messaging me'
A win-back campaign will surface some contacts who explicitly want no further contact. Treat a STOP keyword or an explicit opt-out reply as final, removing them from future broadcasts entirely rather than a lighter dormant band. Continuing to message someone who has asked to stop damages both the relationship and your account's deliverability standing with Meta.
Measuring what actually worked
The only measurement that matters for a win-back campaign is whether the customer actually returned, not how many opened the message. Track, per dormancy band and per template variant, how many contacts placed a new order or booking within a defined window (for example 30 days) after receiving the campaign. Compare this against a small holdout group who received no campaign message, if practical, to see whether the campaign genuinely drove the return or whether some of those customers would have come back anyway. Log results honestly using your own numbers; do not extrapolate a headline percentage from a single small campaign.
Not every dormant customer will return, and continuing to message someone who has not responded to two or three well-crafted win-back attempts across several months usually has diminishing returns. Set a final threshold, for example after three unanswered win-back messages over six months, move the contact to a very low-frequency list (a single seasonal message a year) rather than a genuinely active reactivation sequence, keeping your Marketing template spend focused on contacts more likely to respond.
Step by step
- Define dormancy with a specific day countSet a clear number of days since last order or activity that qualifies a contact as dormant for your business type.
- Track last-activity date as a custom fieldUpdate this field automatically via webhook or Google Sheets whenever a new order or booking completes.
- Segment into dormancy bandsGroup recently dormant, mid-dormant and long-dormant contacts separately rather than treating dormancy as one bucket.
- Create a Marketing template per bandWrite a specific, believable reason to return for each band and get templates approved.
- Route replies to a scoped AI Reply stepHandle re-engagement questions with an AI agent focused on current offers and catalogue updates.
- Move interested contacts into a short follow-up dripTreat a re-engaged dormant contact like a fresh lead rather than expecting one message to convert.
- Measure actual repeat purchasesTrack how many contacts per band genuinely ordered again within a defined window after the campaign.
Example conversation
Set up your win-back campaign on Convo360
Start free in minutes — no code, no credit card. Bring your own AI keys and pay no per-message markup.
Frequently asked questions
How long should a customer be inactive before counting as dormant?
It depends on your typical repeat-purchase cycle. A restaurant might use 45-60 days, while an annual-purchase business like insurance might use 8-12 months. Base the number on your own typical reorder pattern rather than copying another industry's threshold.
Should a win-back message always include a discount?
No, a discount is one option but not the only one. A genuine update (new products, improved service, a policy change) can work as well as or better than a discount, and avoids training customers to wait for a sale before returning.
Is a win-back message a Marketing or Utility template?
It is a Marketing template, since it is promotional in nature and the contact has gone quiet outside the 24-hour customer-service window after their last interaction. You create it in WhatsApp Studio, Meta approves it, and Convo360 sends it to the whole dormant segment in one broadcast.
How do I know if the campaign actually worked, and not just coincidence?
Compare the repeat-purchase rate of contacts who received the campaign against a small holdout group who did not, over the same time window, where practical. This gives a more honest read than simply counting orders after the campaign went out.
What if a dormant customer replies negatively about why they left?
Treat this as valuable feedback, not just a lost sale. Route it to a human via live-chat handoff or log it for review, since a pattern of similar complaints from win-back replies often points to a fixable service issue.
Related reading
Available across India — see WhatsApp & AI calling automation by state and city.