Post-Purchase Reviews: Automate Review Request Emails
Automate post-purchase review requests by email: send 5 to 10 days after delivery, schedule through an API, and keep transactional and marketing apart.
6 min read
How to use replenishment and win-back emails in your store: estimate the purchase cycle, define an inactive customer, what to write, and when to stop sending.
Pidgely teamPublished 5 min readMarkdown version

Replenishment and win-back are two different flows. Replenishment emails go to active customers just before a product runs out, based on the consumption cycle. Win-back goes to people who stopped buying: it fires when a customer goes two to three times your store's normal time between orders without coming back, has two or three emails, and ends with a clear decision: anyone who doesn't respond leaves your regular campaigns. Skip that last step and win-back becomes one more ignored email that drags down your reputation.
Acquiring a new customer costs ads, subsidized shipping and first-order discounts. Someone who already bought knows the store, trusts delivery and has an address on file. A well-timed email is usually the cheapest way to drive the second, third and tenth order.
The problem: without rules, old customers get the same campaigns as everyone else, stop engaging, and the store keeps mailing them for years.
Send the reminder a few days before the estimated end, to allow for shipping time.
Subject: Running low on {{product}}?
Hi {{first_name}}, you last ordered {{product}} on {{date}}.
If you're near the end, restocking takes one click:
[Buy again] (link to a prefilled cart)
Order by 2pm and it ships today.Good practice:
There's no universal threshold. Use your store's time between orders:
| Store type | Typical gap between orders | When to consider inactive |
|---|---|---|
| Consumables (coffee, pet food, skincare) | Weeks | 2 to 3 missed cycles |
| Fashion and accessories | Months | 2 to 3 times the median gap |
| Durable goods (furniture, electronics) | Over a year | Focus on accessories and add-ons |
These rows are illustrations; what counts is the gap you calculate from your own orders.
| When | Approach | |
|---|---|---|
| 1 | On becoming inactive | What's new since their last order, no discount |
| 2 | 7 to 10 days later | An incentive (free shipping or an expiring code) |
| 3 | 7 to 10 days later | A direct question: "Still want to hear from us?" |
Email 1: what changed. New arrivals in the category they used to buy, the return of a product they bought, or real improvements (faster shipping, easier returns).
Subject: New in {{category}} since your last visitEmail 2: the incentive. If you use one, this is where. Free shipping often outweighs a small percentage.
Subject: Free shipping on us, through SundayEmail 3: the question. Be honest: say you'll stop if they're no longer interested.
Subject: Still want our emails?
You haven't opened our emails in a while, and we don't want to
crowd your inbox. Click below to keep hearing from us.
If you don't, we'll stop sending updates.
[Keep me subscribed]Anyone who didn't engage with any of the three emails should leave regular campaigns (or get only a big campaign once a quarter):
Transactional emails keep going: if the person comes back and orders, they get confirmation and shipping emails as usual.
Opens aren't a good signal of "active" since Apple Mail Privacy Protection; prefer purchases and clicks. More in ecommerce email metrics.
On the Scale plan, the Win-back automation of a connected store does the win-back part for you: it starts when a customer's last paid order is 90 days old (adjustable), sends an email and a second one a week later, and stops when they order again, with the recovered revenue on the automation page. Replenishment reminders can run as a Contact date automation on a date property you keep updated, such as replenish_at. See the automations guide.
On every plan you can also drive the timing from your own system:
last_order_at, favorite_category and order_count, updated from your backend (contacts guide).scheduled_at.If your store runs on Shopify, WooCommerce, Nuvemshop or VTEX, connect it and your customers become Pidgely contacts automatically. Create a free account to start.
When they've gone well beyond the normal time between orders at your store. A practical rule is two to three times the median gap between the first and second order. For a skincare store that may be a few months; for furniture, more than a year.
Replenishment goes to active customers when the product should be running out. Win-back goes to customers who stopped buying, to bring them back before they forget the store.
Stop sending them regular campaigns, or cut frequency sharply. Contacts that never engage hurt your domain reputation, can turn into spam traps over time, and cost money on tools that bill per contact.
Not always. Real news, a product they used to buy coming back, or a direct question about what happened can work without one. If you use a coupon, save it for the second or third email and give it an expiry date.
Pidgely team
Published
We build Pidgely, the email API that gets you to the inbox. We write about what we learn delivering email, citing the standards and mailbox provider guidelines behind every claim.
Automate post-purchase review requests by email: send 5 to 10 days after delivery, schedule through an API, and keep transactional and marketing apart.
6 min read
How to segment an online store's email list by purchase behavior: recency, frequency, value, category and engagement, with ready-made segments and what to send.
6 min read
A practical guide for ecommerce campaigns that reach the inbox: domain and authentication, separate streams, list hygiene, frequency, content and Gmail's rules.
6 min read