Skip to content

Best Practices ​

Timing, tone and discount habits that recover more carts without annoying shoppers, and how to tell what's working.

The rest of these docs describe what ShapedRecover does. This page is different: it's advice, the habits that tend to work for stores running cart recovery. None of it is a rule the plugin enforces. Your store and your shoppers are your best guide, so treat these as starting points and measure the results.

Timing ​

Send the first email soon. A shopper who left an hour ago still remembers what they were buying. The Soft Reminder starter sends 1 hour after abandonment, which is a good default. Remember the delay counts from when the cart becomes abandoned (15 minutes of no activity by default), not from the shopper's last click. See Triggers & Timing.

Space the rest out. The starters go 1 hour, 1 day, 2 days. Each email gives the shopper a fresh chance at a different moment in their day, without arriving back to back.

Leave the abandonment cutoff alone unless you have a reason. 15 minutes means a shopper who's still deciding isn't treated as gone. A very short cutoff can catch people who are simply slow at checkout.

Keep the lost cutoff realistic. After about a month, a reminder is more likely to annoy than to sell. The default 30 days is plenty for a sequence that ends after a few days. See General Settings.

Make links last as long as the sequence. Keep Link Expires After at least as long as the gap between your emails, so the link in an earlier email still works when the next one arrives. The default 7 days covers the starters comfortably. See How long it works.

How many emails ​

Two or three emails suit most stores. One reminder leaves sales on the table. Five starts to feel like pressure, and pressure turns into unsubscribes and spam reports. The three starters follow a common shape: a friendly nudge, a reason to act (the items won't be held forever), then an incentive.

Give each email its own job. If the second email says the same thing as the first, it adds nothing. Change the angle: a reminder, then the products and urgency, then the offer.

You don't need to worry about over-sending to buyers. Any order from the shopper stops their emails, with or without the link. Each campaign emails a cart once at most, however many times it's abandoned. See Orders stop the emails.

Subject lines and preheaders ​

Write like a person, not a promotion. "You left something in your cart" tends to do better than "DON'T MISS OUT!!!", and it's kinder to your spam score. Avoid all caps and strings of exclamation marks.

Personalise with care. The shopper's first name in a greeting helps. Always give it a fallback, {{customer.first_name|there}}, because guests don't always type a name. See Fallbacks.

Always write a preheader. It's the grey preview text after the subject. Without one, many inboxes show "Hi Rina!" instead, which wastes the space. See Subject and preheader.

Put the offer in the subject when there is one. "Your {{coupon.amount}} code is waiting" tells the shopper why to open before they open. See Coupon merge tags.

Check it on a phone. Most shoppers read on their phone, where long subjects get cut off. A test email shows you exactly what they see.

Discount strategy ​

Hold the discount back. Many shoppers come back for a reminder alone. Putting a coupon in the first email gives money away to people who'd have paid full price, and teaches regulars to abandon on purpose. Send reminders first and keep the discount for the last email. Build a Discount Sequence walks through the reasoning and the setup.

Use generated codes, not a shared one. A generated coupon is made for one shopper, works only with their email address, and works once. A shared code you picked with Use an existing coupon can be posted on a coupon site and used by anyone. See What a generated coupon looks like.

Keep expiry short. A code that expires in a day or two gives a real reason to act now. The 10% Discount Offer starter uses 1 day.

Turn on Auto Apply Coupon. The shopper clicks, and the discount is already in their total. Every step you remove from checkout helps. See Auto Apply Coupon.

Protect your margins. Generated codes can't be combined with other coupon codes unless you switch on Allow Coupons to Combine (Pro), so leave it off. To keep the discount off items already on sale, use Exclude Sale Items (Pro), and Exclude Products (Pro) for items with thin margins. See Coupon restrictions.

Try free shipping. For a store where shipping costs are what scare people off at checkout, free shipping can work better than a percentage off. It needs a free shipping method that accepts coupons.

Make your privacy policy mention cart reminders. The checkbox at checkout is the only notice shoppers see, so your privacy policy should explain that you save carts and send reminders, and how long you keep the data. Set your privacy page in WordPress so the checkbox links to it. See What shoppers see.

Selling into the EU or UK? Get advice on the pre-ticked box. The consent box starts ticked, and a pre-ticked box may not count as valid consent under the GDPR. Ask your legal adviser whether the default fits your store. See Ticked by default.

Write a clear checkbox label. Say what the shopper is agreeing to, in plain words: "Email me a reminder if I don't finish my order." See Change the label.

Keep only what you need. The retention defaults (90 days for finished carts, 180 days for send history) suit most stores. Shorten them if you don't look back that far. See How long data is kept.

Honour requests straight away. When someone asks you to stop, add them to Never Track (Pro), or point them to the unsubscribe link. For data requests, use WordPress's export and erase tools. See Unsubscribe & Privacy.

Test before going live ​

Prove your email works first. Run the Delivery Check, then send a campaign test to a Gmail or Outlook address and see whether it lands in the inbox or spam. Fix delivery before switching any campaign on: a campaign that can't reach inboxes recovers nothing.

Send yourself every campaign. Read each test email on your phone and your desktop. Check the greeting, the product table, the coupon and the link text.

Run the whole loop once. On a staging copy if you can, abandon a cart as a logged-out guest, get the email, click through and order. It's the only way to know your checkout, mail and caching all play along. See Test the Recovery Flow.

Check your cache. If you use a CDN or a server cache, make sure it leaves the recovery link's query string alone. See Page Caching.

Keep test carts out of your figures. Test as a guest with obviously fake addresses, then delete the test carts and cancel test orders afterwards. See Clean up.

Keep your coupon list clean ​

Leave automatic cleanup on. Every email with a coupon creates a new WooCommerce coupon, so a busy store builds up hundreds of single-use codes. Cleanup deletes the expired ones, and used ones a week after use, every week by default. See Coupon Cleanup.

Don't edit generated coupons by hand. Each is made for one shopper. To change the discount, edit the campaign: new coupons follow the new settings.

Use a recognisable prefix. The default SAVE prefix, or one of your own, makes recovery codes easy to spot in Marketing → Coupons and on your orders. See Code format.

Measure what works ​

Give it a few weeks. A handful of carts tells you little. Let a sequence run for two or three weeks of real traffic before judging it.

Watch two numbers. In Reports → Recovered Sales:

  • Recovery Rate is the share of carts abandoned in the range that ended up recovered. It's the best single measure of whether your sequence works. See Recovery Rate.
  • Revenue per Message is recovered revenue divided by the recovery emails sent in the range. It tells you what each email is worth, and whether adding another email paid off. See The KPIs.

Look at which email did the work. The Message column in Recovered Sales shows which campaign's link each sale came through. If most sales come from the reminders, your discount is doing its job by staying in reserve.

Change one thing at a time. Adjust a subject line, a delay or a discount, then compare with the previous period of the same length. Change three things together and you won't know which one helped. See Measure and adjust.

Trust the numbers, and know their limits. ShapedRecover only credits sales that came back through the link, within 14 days, and were paid. Shoppers who come back on their own show as Ordered. Your real recovery is likely a little higher than the report shows. See Attribution & Audit.

Protect your sender reputation ​

Mail services decide whether to deliver your email based on your domain's track record. A poor reputation sends your order confirmations to spam too, so it's worth guarding.

  • Send through a proper email service with SPF, DKIM and DMARC set up for your domain. See Set Up SMTP.
  • Send from your own domain. Set From Address to an address on your store's domain, never a free webmail address. See Sending Settings.
  • Make unsubscribing easy. ShapedRecover always includes the link and you can't remove it, but you can make it clearer. A shopper who can't find it marks the email as spam instead, and spam reports hurt far more than unsubscribes. See The unsubscribe link.
  • Don't send too many. Every unwanted email is a chance for a spam report. Fewer, better emails win.
  • Use a Reply-to Address someone reads. Shoppers do reply to recovery emails with questions, and a conversation is the best possible outcome.

Where to go next ​