Abandoned Cart Recovery for WooCommerce
Reminder emails for shoppers who leave the checkout, with a link that rebuilds their cart and an optional single-use coupon, sent from your own store and stopped the moment they buy.
- Block cart and checkout
- Classic cart and checkout
- High-performance order storage
- WooCommerce 9 – 11
- WordPress 6.6 – 7.1
- PHP 7.4+
What Abandoned Cart Recovery does
A shopper puts products in the cart, types their email at the checkout and leaves. Abandoned Cart Recovery saves that cart and, half an hour after the shopper goes quiet, starts a short series of reminder emails: one after an hour, one after a day and one after three days. Each email shows the cart and has a button that rebuilds it on any device and opens the checkout. The series stops the moment the shopper buys, by any payment method, on any device. No SaaS account and no per-contact fees: the emails go out through your own WooCommerce mailer, in your WooCommerce email design.
Abandoned Cart Recovery features
Capture
- Block checkout and classic checkout. On the block checkout the email is read from the requests WooCommerce already sends, so nothing extra runs while the shopper types; the classic checkout sends one small request when the email field changes, never per keystroke
- Logged-in customers are tracked when they open the checkout
- An optional "Save your cart?" box after add to cart, on the cart page or on exit intent, for guests who have not reached the checkout yet
- Consent that fits the shopper's country: an unticked opt-in box for the EU, EEA, Switzerland, Australia, New Zealand, India, Japan and South Korea, and a notice with a "don't email me" box everywhere else. The choice, the time and the exact wording are saved with every cart. No IP address or browser details are stored
- Bot and fake carts filtered: Google's Storebot, crawlers and headless browsers, reserved and test domains, a blocked-domain list, a mail-server (MX) check and rate limits
- Skip user roles, products, categories and carts under a minimum value
Reminders
- Up to five reminders, three switched on by default at 1 hour, 24 hours and 72 hours after the cart is abandoned, each with its own subject, preview text, heading and message
- Sent in the shopper's language, with WPML and Polylang string translation for your edited texts
- One "Cart reminder" email under WooCommerce > Settings > Emails: HTML and plain text, your email colours, a theme-overridable template, a preview and a test send
- Every reminder has a visible unsubscribe link and one-click unsubscribe headers (List-Unsubscribe and List-Unsubscribe-Post) that Gmail and Yahoo look for. No tracking pixels
- Each step is claimed in the database before it is sent and is never sent twice, even after a cron outage; at most three reminders per address in a week
- An optional discount code: unique, single use, locked to the shopper's email, with the exact expiry in the email, added to the cart by the button and deleted when it expires unused
- Unpaid orders get one follow-up: a failed payment or an order left at the payment page gets a "complete your order" email with a link to the payment page; an order cancelled for non-payment gets a link that puts the same items back in the cart
Stops
- Any order by that email, account or browser cart stops the series, including bank transfer, cheque and cash-on-delivery orders that are still on hold. A fresh order check runs right before every email
- Orders on another device stop it too, and so do orders you create in the admin
- A 24-hour pause after a purchase, a 7-day pause between two series for the same address, and nothing older than 14 days
Recovery link
- Rebuilds the products, variations, add-on choices and the coupons the shopper had applied, adjusts quantities to stock and opens the checkout with the email filled in
- Asks "replace or add?" when the shopper already has a different cart, and never doubles quantities
- Never logs anyone in. Link scanners in mail programs can open it without changing anything
Reports
- WooCommerce > Abandoned Carts: recovered revenue (via the link, after an email, or awaiting payment), recovery rate, abandoned and emailed carts, carts bought without a reminder, clicks, unsubscribe rate and the cost of discount codes
- Results per reminder, the reasons carts were not emailed, the most abandoned products, and the latest recovered carts
- A list of every cart with filters, search, CSV export and a detail view with the consent record, the reminders and a timeline of what happened and why
- A health panel and Site Health test for the scheduler, the mailer, the store address and the From address
Privacy
- A do-not-email list stored as one-way codes, never addresses
- The WordPress personal data export and erase tools, suggested privacy policy text built from your settings, and a retention setting under WooCommerce > Settings > Accounts & Privacy (30 days by default)
- Sending pauses on its own when the store address is missing, the From address is on a free-mail domain, mail keeps failing, or the site was copied to staging
From the empty checkout to the recovered order
A shopper adds products, types their email at the checkout and closes the tab. The plugin has already saved the cart against that email, on the block checkout from the request WooCommerce sends anyway and on the classic checkout from one small request when the email field changes. What happens next, with the default settings:
| When | What happens |
|---|---|
| At the checkout | The email and cart are saved, with the shopper's reminder choice: an unticked opt-in box in the EU and other opt-in countries, a "don't email me" box elsewhere |
| 30 minutes without activity | The cart counts as abandoned; browsing other pages keeps it active, so nobody is emailed mid-visit |
| 1 hour later | Reminder 1: the cart with images and prices, and a Return to my cart button |
| 24 hours later | Reminder 2, unless an order has been placed since |
| 72 hours later | Reminder 3, with a single-use discount code if you attached one to this step |
| The shopper clicks | The cart is rebuilt on whatever device they use, quantities adjusted to stock, email filled in, coupon applied, and the checkout opens |
| The shopper buys | Every remaining reminder stops, on any device and by any payment method, and the order is counted as recovered |
Right before each email the plugin checks again for an order by that email or customer account, so a bank-transfer order still on hold or an order placed on a phone stops the reminders too. Each reminder is claimed in the database before it is sent and never sent twice, even after a cron outage, and no address gets more than three reminders a week.
Reminders from your own store, with consent and numbers you can trust
Email marketing services can send abandoned cart flows too, but they need an account, a per-contact plan and a script on your checkout. This plugin sends through your own WooCommerce mailer, in your WooCommerce email design, listed under WooCommerce > Settings > Emails with a preview and a test send. Every email has an unsubscribe link and the one-click unsubscribe headers Gmail and Yahoo look for, and none has a tracking pixel.
Regulators treat cart reminders as marketing, so the reminder choice sits directly under the email field and adapts to the shopper's country, and the choice, the time and the exact wording are saved with every cart. WooCommerce > Abandoned Carts shows recovered revenue split into orders placed through the link, orders placed after an email and orders still awaiting payment, with refunds taken off, plus results per reminder and the reasons carts were not emailed. Failed and unpaid orders get one follow-up with a link to the payment page.
How to set up Abandoned Cart Recovery in WooCommerce
- 1
Upload the plugin to
/wp-content/plugins/or install the zip from Plugins > Add New > Upload Plugin. - 2
Activate it. Enter the licence key from your purchase email when asked (also under Activate License on the Plugins screen).
- 3
Open WooCommerce > Abandoned Carts, work through the setup checklist (store address, From address, privacy page, a test email) and click "Turn on cart reminders". The texts and timings are under WooCommerce > Settings > Abandoned Carts.
Questions about Abandoned Cart Recovery
When is a cart abandoned?
When the shopper has done nothing on the site for 30 minutes after entering their email (you can set 15 minutes to 24 hours). Browsing other pages counts as activity, so nobody is emailed while they are still shopping.
Will it email people who already bought?
No. Any order by the same email or customer account, in any status except a draft, stops the reminders, and the plugin checks for orders again right before each email. On-hold orders (bank transfer, cheque, cash on delivery) count as bought.
Do I need consent to send these emails?
Regulators treat cart reminders as marketing. The plugin asks for consent with an unticked checkbox where the shopper's or your store's country requires it, shows a notice with an opt-out box elsewhere, and puts an unsubscribe link in every email. You can force the checkbox everywhere. This is general information, not legal advice; check with your lawyer.
Does it work with the block checkout?
Yes. The reminder choice appears directly under the email field on both the block and the classic checkout.
Which email service does it use?
Your site's own mailer, through WooCommerce. Use an SMTP plugin with a DKIM-signed domain for the best inbox placement; the health panel warns when none is detected.
Can I add a discount code?
Yes, to the reminder of your choice. Each cart gets its own single-use code, locked to the shopper's email, with an expiry you set (48 hours by default). It can be limited to new customers, to a minimum cart value and to full-price items.
Does it work with WPML or Polylang?
Yes. Carts are saved with the shopper's language, emails are sent in it, the links open the checkout in that language, and your edited texts are registered for string translation.
Does it support High-Performance Order Storage?
Yes.
Do I need a licence key?
The key from your purchase email is what delivers updates and support to this site. Enter it on the screen shown after activation, or later through Activate License on the Plugins screen. The plugin's features work either way.
Abandoned Cart Recovery changelog
- 1.0.0
- Initial release.
Plugins that pair with Abandoned Cart Recovery
Checkout Order Bumps
One-click product offers at the cart and checkout: customers tick a box to add a related product at a special price, with conditions, limits and conversion stats.
View plugin
Back in Stock
Turn "Out of stock" into sales. Customers leave their email on sold-out products and variations and are emailed automatically when stock returns.
View plugin
Gift Cards
Sell digital gift cards and vouchers with preset or custom amounts, messages and scheduled delivery, redeemed on the block or classic checkout; issue store credit too.
View plugin