Overview
Recovero - Cart Recovery for WooCommerce Free helps you win back shoppers who add items to their cart and then leave. It saves carts for guests and logged in shoppers as they shop. When a cart is left inactive, the plugin sends a series of reminder emails with a one click link that rebuilds the cart.
You don't have to set anything up first. When you activate the plugin, it installs five ready to use email templates and a three step recovery campaign, and recovery starts right away. Later you can change the timing, write your own campaigns, design emails in a visual builder and follow the results on the dashboard and in the reports.
The plugin is for WooCommerce store owners who want to recover lost sales with automatic emails. It doesn't connect to any external service: cart data, email content and statistics stay in your own WordPress database, and emails go out through your site's own mail setup.
Requirements
- WordPress 6.2 or later (tested up to 7.1)
- PHP 7.4 or later
- WooCommerce 8.0 or later (required, must be installed and active)
- Works with WooCommerce High Performance Order Storage and with the block based cart and checkout
- Optional: WPML or Polylang to send emails in each shopper's language
Installation
Recovero - Cart Recovery for WooCommerce Free is a free plugin on WordPress.org. It needs WooCommerce, so install and activate WooCommerce first.
Make sure WooCommerce is installed and active.
In your WordPress admin, go to Plugins > Add New.
Search for Recovero Cart Recovery for WooCommerce.
Click Install Now on the plugin, then click Activate.
Activation creates the plugin's tables, the five starter email templates and the default recovery campaign for you. Open Cart Recovery in the admin menu to see the dashboard. Recovery is already running.
Quick start
- Check the dashboard
Open Cart Recovery > Dashboard. The Email sending panel should show Scheduler healthy and a countdown to the next run. The Quick start box confirms that a default 3 email recovery series is already active.
- Set your sender details
Go to Cart Recovery > Settings, on the General tab. Under Sender, fill in From name, From email and Reply to. You can also pick an Email logo with Select image. Click Save settings.
- Keep your own test carts out
On the Capture tab, under Exclusions, tick the roles your staff use (for example Administrator or Shop manager) in Do not track these user roles. Add any test addresses or domains to Do not track these emails, one per line. Click Save settings.
- Personalize the emails
Go to Cart Recovery > Email Templates and click Edit on Friendly reminder. Change the text in the visual builder, watch the live preview, then click Save template. Under Send a test, enter your address and click Send test email to see what a shopper receives.
- Fine tune the timing
Go to Cart Recovery > Campaigns and open Default recovery series. Under Recovery steps, change Send after and the unit for each email, pick a template and an optional subject, then click Save campaign.
- Follow the results
As carts come in, check Cart Recovery > Abandoned Carts to see each cart and its scheduled emails. Check Cart Recovery > Reports for recovered revenue and recovery rate.
#Dashboard
Cart Recovery > Dashboard gives you an overview of recovery on your store. The numbers update in real time as shoppers browse, abandon and return.
Live counters across the top:
- Live carts: carts that are being used right now.
- In recovery: abandoned carts that have reminder emails scheduled.
- Recovered today: carts recovered today.
- Emails last hour: recovery emails sent in the last hour.
Email sending shows the state of the send queue: Queued, Sending, Sent, Failed and Cancelled. Next to it you see the scheduler status (Scheduler healthy, or Scheduler is running late when jobs fall behind) and a countdown to the next run.
- Click Process queue now to send every email that is due right away, without waiting for the next run.
- Click Scheduled actions to open WooCommerce's scheduled actions list, where you can see the plugin's background jobs.
Last 30 days shows Revenue recovered, Recovery rate, Carts recovered, Value abandoned, Email open rate and Email click rate. Amounts in different currencies are never added together: each currency gets its own line.
Recovery trend charts abandoned and recovered carts day by day. The Quick start box links to the screens you will use most: templates, campaign timing and settings.
#Abandoned Carts
Cart Recovery > Abandoned Carts lists every cart the plugin has saved. For each cart you see the customer, status, number of items, cart value, emails sent, location (the shopper's country, plus the IP address when you choose to store it) and last activity.
Find carts
- Click a status link at the top to filter: All, Live, In recovery, Abandoned, Recovered, Purchased or Merged.
- Type in the search box and click Search carts.
- Pick dates in Captured from and to, then click Filter.
- Click the Status, Value or Last activity column headings to sort.
What the statuses mean
| Status | Meaning |
|---|---|
| Live | The cart is still in use. It hasn't passed the abandonment time yet. |
| Abandoned | The cart was inactive past the abandonment time and has an email address. |
| In recovery | The cart is abandoned, matched to a campaign and has reminders scheduled. |
| Recovered | An order was placed after at least one recovery email was sent. It counts as recovered revenue. |
| Purchased | An order was placed before any recovery email was sent. It doesn't count as recovered. |
| Merged | A duplicate cart of the same shopper (another browser or device) that was merged into the newest one. Merged carts are kept for reference and left out of All and the abandoned totals. |
Act on carts
- Hover over a row to see its actions: View, Send now, Mark recovered, Unsubscribe, Delete, and View order when the cart became an order.
- To act on several carts, tick them, choose Mark as recovered, Mark as abandoned, Unsubscribe or Delete in Bulk actions, then click Apply. Only live carts can be marked abandoned.
- Click Export CSV to download the carts the list is showing right now. The export follows the status, search and date range you picked.
#Cart details
Click a customer name on Abandoned Carts to open that cart. The screen has four parts:
- Cart items: the products left in the cart, with quantity and line total.
- Scheduled emails: every reminder for this cart, when it is scheduled, how long until it sends, its status and when it was sent. If a message was cancelled or not sent, the reason is shown here.
- Activity timeline: everything that happened to the cart, for example Cart captured, Marked abandoned, Recovery sequence scheduled, Recovery email sent, Email opened, Recovery link clicked, Cart restored, Cart recovered, Order placed, waiting for payment, Order paid, Unsubscribed and Cart emptied by the shopper.
- Details: status, email, company, phone, customer (account or Guest), cart value, items, emails sent, language, device, country, IP address, created and abandoned dates, and the linked order. When an order is still waiting for payment, the cart says so. It counts as purchased once the payment arrives.
Emails send automatically at their scheduled time. To send the next one right away, click Send next email now at the top. Click Back to carts to return to the list.
#Campaigns
A campaign is an ordered series of recovery emails. Cart Recovery > Campaigns lists your campaigns with their status, number of steps, priority, and which one is the default. The plugin installs Default recovery series with three steps, active and set as the default.
How a campaign is chosen for a cart
Only one campaign runs for a cart. Active campaigns are tested in priority order, lowest number first, and the first one whose conditions match the cart runs. The default campaign runs for carts that no other active campaign matches. Only one campaign can be the default.
Create or edit a campaign
- Click Add campaign, or click a campaign name to edit it.
- Enter a Campaign name and choose its Status.
- Set a Priority. Lower numbers are checked first.
- Optionally limit it by Cart value condition (Min and Max, in your store currency) and by Shopper language.
- Under Options, choose whether to Stop the sequence once the cart is recovered and whether to Use as the default campaign.
- Under Recovery steps, set Send after and the unit for each email, choose the email template and, if you want, type a subject that overrides the template's subject. Click Add step for more emails. Click × to remove a step.
- Click Save campaign.
Changing a live campaign is safe. Each step's delay is counted from when the cart was abandoned. If you change a delay, the messages already queued move to their new time. If you add a step, it is also queued for carts that are already in recovery, while steps that already went out are left alone. Pausing a campaign or setting it to draft holds its queued messages until you set it active again. Deleting a campaign ends its messages.
If a step's template is inactive, the dropdown marks it as (inactive, this step will not send).
#Email Templates
Cart Recovery > Email Templates shows your email designs as cards. Five starter templates come with the plugin: Friendly reminder, You left something behind, Still interested, Cart saved and Premium dark. Each card shows whether it is a Starter or Custom template, its subject line and any translations.
- Create template starts a new template with a simple starter layout.
- Edit opens the template in the editor.
- Duplicate makes a copy you can change without touching the original.
- Delete removes a template together with its translations. You can't delete a template that a campaign step still uses: choose another template for that step first.
- The language dropdown and Add translation create a copy of the template for one language (see Template translations below).
If you delete every template, a Restore starter templates button appears so you can bring the starter set back.
The starter templates make no claims on your behalf (no reviews, ratings, shipping or returns promises, or deadlines). Add your own details in the builder.
#Editing a template
The template editor lets you build an email without writing code.
Template details
At the top, set the Template name, Subject line, Preheader (the preview text many inboxes show after the subject), Accent color, Status, Language and Translation of. An inactive template is never sent.
Visual builder
- Click a block under Add block to add it to the end of the email: Heading, Text, Button, Image, Divider, Spacer, Cart items or Social links.
- Edit each block's settings inline, for example the text, alignment, size and color.
- Use ↑ and ↓ to move a block, and × to remove it.
- Watch the Live preview on the right. It updates as you type.
- Click Save template.
The Cart items block has no settings. It shows the shopper's products with images, quantity and prices automatically. A Button with Link set to recovery takes the shopper back to their restored cart. Set it to custom and fill in URL to link somewhere else.
HTML mode
Click HTML to write the email body yourself. When you switch from the builder to an empty HTML box, it is filled with the HTML for your blocks. If you save while in HTML mode, that HTML is used and the blocks are cleared.
Merge tags
Merge tags are replaced with each shopper's details when the email is sent. Use them in subjects, text blocks and HTML. Click a tag in the Merge tags box to copy it.
| Tag | What it shows |
|---|---|
{{store_name}} |
Store name |
{{store_url}} |
Store home URL |
{{customer_first_name}} |
Shopper first name |
{{customer_name}} |
Shopper full name |
{{customer_email}} |
Shopper email |
{{customer_company}} |
Shopper company |
{{cart_items}} |
Rendered cart line items |
{{cart_total}} |
Cart total |
{{cart_subtotal}} |
Cart subtotal |
{{cart_item_count}} |
Number of items |
{{recovery_url}} |
One click cart recovery link |
{{recovery_button}} |
Styled recovery button |
{{unsubscribe_url}} |
Unsubscribe link |
{{current_year}} |
Current year |
Send a test
Save your changes first. Then, under Send a test, enter an email address (leave it empty to use your own account email) and click Send test email.
#Template translations and languages
Each cart stores the language the shopper was using: the WPML or Polylang language when one of them is active, otherwise your site language.
To send a template in another language:
- Go to Cart Recovery > Email Templates.
- On the template's card, choose the language in the dropdown and click Add translation.
- A copy of the template opens for that language. Translate the subject and text, then click Save template.
Shoppers whose cart was saved in that language receive the translation, with its own subject, in place of the base template. Campaign steps always point at the base template, so you don't need to change your campaigns.
When Send emails in the shopper language (WPML / Polylang) is ticked under Settings > General, WordPress switches to the cart's language while each email is built. The plugin's own texts, such as buttons and the footer, then appear in that language too.
To send a separate series to one language, tick that language under Shopper language in the campaign editor.
#Reports
Cart Recovery > Reports shows how recovery is performing. Click 7 days, 30 days or 90 days to choose the range.
- Totals: Revenue recovered, Recovery rate, Carts recovered, Value abandoned, Open rate, Click rate, Avg time to recover and Emails sent.
- Abandoned vs recovered: a day by day chart.
- Engagement funnel: how many emails were sent, opened, clicked and led to a recovery.
- Campaign performance: for each campaign, the carts targeted and recovered, the rate and the revenue.
- Most abandoned products and Most recovered products: the products that appear most often, with the number of carts and quantity.
Amounts are never added up across currencies. Recovered revenue, abandoned value and campaign revenue show one line per currency. A background job regularly checks the totals against the saved data to keep them accurate.
#Settings: General
Cart Recovery > Settings has four tabs: General, Capture, Tracking and Privacy. Click Save settings after you change anything.
The General tab has two parts:
- Recovery engine: the main switch for recovery emails, whether sending stops once a cart is recovered, multilingual sending, how long a cart must be inactive before it counts as abandoned, how long recovery links keep working, and whether the link takes the shopper to the checkout or the cart.
- Sender: the name and address recovery emails come from, the reply address, the logo at the top of each email, a footer line, and an option to BCC the store admin.
A good first step is to set From name, From email and Email logo. If you leave the sender fields empty, emails use your site title and the WordPress admin email.
#Settings: Capture
The Capture tab controls which carts are saved.
Cart capture: switch capture on or off, choose whether to track guests and logged in shoppers, and choose whether the email is captured live as the shopper types it at checkout. The email is read on the classic and block checkout only, never from newsletter or contact forms. You can also set a Minimum cart total to capture in your store currency.
Exclusions: keep carts out of recovery.
- Tick the roles to skip in Do not track these user roles, for example your staff testing the checkout.
- List addresses or whole domains in Do not track these emails, one per line, for example
test@example.comor@yourstore.com. - Pick products in Do not track carts with these products and categories in Do not track carts with products in these categories.
- Click Save settings.
Matching carts aren't captured, and recovery emails already queued for them are cancelled.
#Settings: Tracking
The Tracking tab decides whether email opens and recovery link clicks are recorded. These records feed the open rate, click rate and engagement funnel in your reports and the activity timeline of each cart.
- Track email opens adds a one pixel image to each email that records when it is opened.
- Track recovery link clicks records each click on the recovery link. When it is off, the link still restores the cart, but no click is recorded.
#Settings: Privacy
The Privacy tab holds your consent, data retention and opt out settings.
Privacy & data
- Require marketing consent before capturing an email adds a consent box to the classic and block checkout. Without a tick, no contact details are kept and no reminder is sent. Set the wording in Consent text.
- Data retention sets how many days cart data is kept (0 keeps it forever). After that, carts are anonymized or deleted, depending on Anonymize instead of deleting when retention expires. Carts that became an order are always anonymized, so your revenue reports keep their totals.
- Store the shopper IP address keeps the raw IP address. The country is always recorded for reporting.
- Delete all plugin data when the plugin is uninstalled removes the plugin's data when you delete it.
Every recovery email has an unsubscribe link that can't be switched off, plus one click unsubscribe headers (List-Unsubscribe) as Gmail and Yahoo require. Opening the link asks the shopper to confirm, so link scanners can't unsubscribe anyone.
Do not email list
Addresses that opted out are kept as a one way hash only, so the list survives the retention sweep and the privacy eraser. To manage it:
- Type an address in Email address.
- Click Add to the list to stop all reminders to it, or Remove from the list to allow reminders again.
Only remove an address when that shopper asked to hear from you again.
The plugin also works with the WordPress personal data export and erase tools, and suggests privacy policy text for your site.
#Import and export settings
At the bottom of every settings tab, Import & export lets you move your configuration between stores.
- On the store you want to copy, click Export settings. A settings file (
.json) is downloaded. - On the other store, go to Cart Recovery > Settings, click Choose File and pick that file.
- Click Import settings.
Importing overwrites the current settings. Carts, campaigns and templates aren't part of the file.
#How sending works
- A shopper adds items to the cart. The cart is saved, and their email is linked as soon as it is known.
- When the cart stays inactive past Mark abandoned after, a background job marks it abandoned and matches it to a campaign. Only carts with an email are marked abandoned, because there is no other way to reach the shopper.
- Each step is scheduled from the moment of abandonment plus its delay, and sent when it is due. An email is never sent early.
- The email's recovery link rebuilds the cart and takes the shopper to the checkout or the cart.
- When the shopper places a paid order, it is linked to the cart, the sequence stops and the revenue appears in your reports.
Mail delivery
Recovery emails are sent with WordPress's own mail function, so they use your site's mail setup, including any SMTP plugin. For better inbox placement, pair the plugin with a transactional email service.
Background jobs
Scheduling runs on WooCommerce Action Scheduler. Failed sends are retried automatically before they are marked failed. Right before a message goes out, it is checked again. It is cancelled, with the reason shown on the cart screen, if the campaign was paused, set to draft or deleted, the template was made inactive or deleted, the cart was emptied or converted, it holds an excluded product, or the shopper opted out.
When a shopper returns
Stock is checked again when the recovery link is opened. Items that were deleted, unpublished or are out of stock are skipped, and quantities larger than the stock left are reduced. Saved items are added to whatever the shopper has in their cart now, and coupons they had applied themselves are applied again when still valid.
#Built in documentation
Cart Recovery > Documentation is a guide inside your admin. It covers getting started, how cart capture works, cart statuses, recovery and attribution, cart lifetime and stock, the sending engine, campaigns, templates, merge tags, managing carts, reports, privacy, multilingual sending and troubleshooting. It also has a full reference of the plugin's developer hooks for your developer.
Settings reference
Cart Recovery > Campaigns > Add campaign or Edit
Set who a campaign is for, when it runs and which emails it sends. The step fields repeat for every step you add.
#Campaign name
The name you see in the campaign list and in reports. Shoppers never see it.
When to change it
Use a name that says who the campaign is for, for example a cart value range or a language.
#Status
Whether the campaign is running. Pausing a campaign or setting it to draft also holds the messages it has already queued. Setting it active again sends them, keeping the spacing between steps. Deleting a campaign ends its messages.
When to change it
Use Draft while you build a new campaign, and Paused to stop one for a while.
#Priority
The order in which active campaigns are tested against a cart. Lower numbers are evaluated first, and the first matching campaign is the one that runs.
When to change it
Give more specific campaigns (for example high value carts) a lower number than your general campaign.
#Min
Part of Cart value condition: the lowest cart value this campaign runs for, in your store currency. Carts in another currency are converted with your currency switcher rate when it provides one.
When to change it
Set it to send a separate series to larger carts.
#Max
Part of Cart value condition: the highest cart value this campaign runs for, in your store currency. Leave max at 0 for no upper limit.
When to change it
Set it together with Min to target a value range.
#en
Part of Shopper language: one checkbox for each language your site offers. Only carts saved in the ticked languages get this campaign. Leave all unticked for every language. Templates with a translation in the shopper language send that translation automatically.
When to change it
Tick a language when you want a separate series for shoppers in that language.
#Stop the sequence once the cart is recovered
Stops this campaign's remaining emails once the cart is recovered. It only has an effect when Stop sending once a cart is recovered under Settings, General is switched off, because that setting stops every campaign on recovery.
When to change it
Untick it, with the general setting off, to keep sending later steps after a recovery, for example a thank you message. A shopper who bought without a reminder is never emailed.
#Use as the default campaign
The default campaign runs for carts no other active campaign matches. Only one campaign can be the default.
When to change it
Tick it on your general campaign so every abandoned cart gets reminders.
#Send after
How long after the cart was abandoned this step's email is sent. Changing a delay also moves messages that are already queued.
When to change it
Space the steps out, for example a first email after an hour and later ones after a day or two.
#Delay unit
The unit for Send after.
#Email template
The email this step sends. The list holds your base templates. A translation is sent automatically to shoppers whose cart was saved in its language. An inactive template is marked as not sending.
When to change it
Use a different template for each step so shoppers don't get the same email twice.
#Subject (optional override)
A subject line for this step that replaces the template's own subject. Leave it empty to use the template's subject. Merge tags work here.
When to change it
Use it when you share one template between steps but want a different subject for each.
Cart Recovery > Email Templates
Each template card has a language picker for creating a translation.
#Language
The language of a new translation of this template. Choose a language and click Add translation to create a copy for it.
When to change it
Use it when you sell to shoppers in more than one language.
Cart Recovery > Email Templates > Edit
Set a template's details at the top, then build the body with blocks. Block fields appear for each block you add.
#Template name
The name shown on the template card and in the campaign step dropdown. Shoppers never see it.
#Subject line
The email subject. Merge tags such as {{customer_first_name}} work here. A campaign step can override it.
#Preheader
The short preview text many inboxes show next to the subject.
When to change it
Use it to add a line that makes the shopper want to open the email.
#Accent color
The main color of the template, used for example for the recovery button.
When to change it
Pick your brand color.
#Status Active Inactive
Status: whether the template can be sent. An inactive template is never sent, and a step that uses it is skipped with the reason shown on the cart screen.
When to change it
Set a template to Inactive to stop it without deleting it.
#Language Any language en
Language: the language this template is for.
When to change it
Set a language on a translation. Leave base templates on Any language.
#Translation of None, this is a base template You left something behind Still interested Cart saved Premium dark
Translation of: the base template this one translates. A translation is sent instead of its base template to shoppers whose cart was saved in its language, with its own subject. Campaign steps always point at the base template.
When to change it
Choose the base template when this template is a translation. Translations you create with Add translation are linked for you.
#Text
Shown on a Heading block.
The words of a Heading block. Merge tags work here.
#Alignment left center right
Shown on Heading, Text, Button and Image blocks.
Alignment: where a Heading, Text, Button or Image block sits in the email.
#Size
Shown on Heading and Text blocks.
The font size of a Heading or Text block, in pixels.
#Color
Shown on Heading, Text and Divider blocks.
The text color of a Heading or Text block, or the line color of a Divider block.
#Label
Shown on a Button block.
The words on a Button block.
#Link recovery custom
Shown on a Button block.
Link: where a Button block leads.
When to change it
Keep recovery for the main call to action.
#URL
Shown on Button and Image blocks.
The address a Button block links to when Link is set to custom, or the image address of an Image block.
#you+6ao5iyrhhq@demo.propluginslab.io
Shown when you edit a saved template.
The address field under Send a test. Enter where the test email should go. When you leave it empty, the placeholder shows your own account email.
When to change it
Save the template first, then send a test to check what a shopper receives.
Cart Recovery > Settings > General
Controls the recovery engine and the sender details of every recovery email.
#Enable abandoned cart recovery
Master switch for scheduling and sending recovery emails.
When to change it
Untick it to stop all recovery emails at once.
#Stop sending once a cart is recovered
On: every campaign stops as soon as its cart is recovered. Off: each campaign decides with its own Stop the sequence once the cart is recovered option. A shopper who bought without a reminder is never emailed either way.
When to change it
Switch it off only when a campaign should keep sending after a recovery, for example a thank you email.
#Send emails in the shopper language (WPML / Polylang)
Switches WordPress to the language the cart was saved in while an email is built, and sends the template translation for that language when there is one.
When to change it
Keep it on if your store uses WPML or Polylang.
#Mark abandoned after
Minutes of inactivity after which a cart with an email is marked abandoned. The minimum is 5.
When to change it
Raise it if your shoppers often take longer to finish an order.
#Recovery links work for
Days after the cart was last active during which a recovery link still restores the cart (0 for as long as the cart is kept). The maximum is 365.
#After recovery link, send shopper to
The page a shopper lands on after clicking a recovery link.
#From name
The sender name of recovery emails. When empty, your site title is used.
When to change it
Use your store name.
#From email
The sender address of recovery emails. When empty, the WordPress admin email is used.
When to change it
Use an address on your store's domain that your mail setup can send from.
#Reply to
The address that receives replies to recovery emails.
When to change it
Set it to your support inbox so shoppers' questions reach you.
#Email logo
Shown at the top of every recovery email. Leave empty to use the store name. Click Select image to pick a logo from the media library, or Clear to remove it.
#Email footer text
A line shown at the bottom of recovery emails, for example your store address or a short note.
#BCC the store admin on recovery emails
Sends a blind copy of every recovery email to the store admin.
When to change it
Turn it on for a while to see exactly what shoppers receive.
Cart Recovery > Settings > Capture
Choose which carts are saved and which are kept out of recovery.
#Capture carts
Saves shoppers' carts so they can be recovered.
When to change it
Untick it to stop saving new carts.
#Track guest shoppers
Saves carts of shoppers who aren't logged in. A guest becomes recoverable once their email is known.
#Track logged in shoppers
Saves carts of shoppers with an account. They are linked by their account email automatically.
#Real time capture (report the cart as the shopper types their email)
Saves the cart and email at checkout as soon as the shopper types their email, before the order is placed.
When to change it
Keep it on so guests who leave the checkout can still be reached.
#Capture the email from the checkout email field
Read on the classic and the block checkout only, never from other forms on your site.
#Minimum cart total to capture
Carts below this total, in your store currency, aren't saved. 0 saves every cart.
When to change it
Raise it if small carts aren't worth a reminder.
#Do not track these user roles
Carts from logged in users with any of these roles are never captured, for example staff testing the checkout. The list shows the roles on your site.
When to change it
Tick the roles your staff use.
#Do not track these emails
One per line. Enter a full address, or @domain.com to exclude everyone at that domain. Matching carts are not captured and pending recovery emails to them are cancelled.
When to change it
Add your test addresses and your own store domain.
#Do not track carts with these products
A cart holding any of these products isn't captured, and messages already queued for it are cancelled. Type in Search for a product to find products and variations.
When to change it
Use it for products that shouldn't get reminders, for example free samples.
#Do not track carts with products in these categories
A cart holding any product in these categories isn't captured, and messages already queued for it are cancelled. The list shows your product categories.
When to change it
Use it to keep whole categories out of recovery.
Cart Recovery > Settings > Tracking
Decide whether email opens and recovery link clicks are recorded for your reports.
#Track email opens
Adds a one pixel image to each email that records when it is opened.
When to change it
Switch it off if you don't want to track opens. Open rates in reports then stop updating.
#Track recovery link clicks
When off, links carry no message id and no click is recorded. The link still restores the cart.
Cart Recovery > Settings > Privacy
Consent, data retention, IP storage, uninstall behavior and the do not email list.
#Require marketing consent before capturing an email
Adds a consent box to the checkout. Without a tick no contact details are kept and no reminder is sent. New stores in the EU, the EEA, the UK and Switzerland start with this on.
When to change it
Turn it on if your local rules require consent before sending reminder emails.
#Anonymize instead of deleting when retention expires
When retention expires, clears the shopper's contact details but keeps the totals, instead of deleting the cart. Carts that became an order are always anonymized, never deleted, so revenue reports keep their totals.
When to change it
Keep it on to keep your reports complete.
#Store the shopper IP address
Off by default. The country is always recorded for reporting; switching this on also keeps the raw address, which is personal data.
When to change it
Turn it on only if you need the IP address, for example to spot fraud.
#Data retention
Days a saved cart is kept, counted from when it was first captured (0 keeps data forever). After that, a daily job anonymizes or deletes it.
#Consent text
The label of the consent box at checkout. When empty, the box reads: Email me a reminder about my cart if I do not finish my order.
When to change it
Set your own wording when Require marketing consent is on.
#Delete all plugin data when the plugin is uninstalled
Removes the plugin's carts, campaigns, templates, settings and scheduled jobs when you delete the plugin. Data is kept while the Pro edition is still installed.
When to change it
Only tick it when you want to remove the plugin for good.
#Email address
An address to add to or remove from the do not email list. Click Add to the list or Remove from the list.
When to change it
Add an address when a shopper asks by email to stop reminders. Remove one only when that shopper asked to hear from you again.
On your site
The plugin adds nothing visible to your shop, product or cart pages. It saves carts in the background, and a visitor with an empty cart never gets a forced session or cookie, so full page caching keeps working.
What shoppers do see:
- At checkout: when Require marketing consent before capturing an email is on, a consent box appears on the classic and block checkout. Its label is your Consent text, or by default: Email me a reminder about my cart if I do not finish my order.
- Recovery emails: the emails from your campaigns, with your logo, their cart items and a link back to the cart.
- After clicking the recovery link: the cart is rebuilt and they land on the checkout or the cart. They see Welcome back, your cart has been restored. If items are no longer available or quantities were reduced to match stock, a message names those items instead.
- Expired or used links: a link to a cart that was already checked out says This cart was already checked out, so there is nothing to restore., and an old link says This cart link has expired.
- Unsubscribe page: the unsubscribe link opens a confirmation page asking Stop sending cart reminder emails to ... ? with an Unsubscribe button. After confirming, they see You have been unsubscribed from cart reminder emails.
Frequently asked questions
Do I need to set anything up before it works?
No. On activation the plugin installs five email templates and a three step recovery campaign, and starts saving carts right away. You will probably still want to set your sender name, address and logo under Cart Recovery > Settings.
Does it recover carts from guest shoppers?
Yes. A guest's email is captured in real time as they type it in the checkout email field, before the order is placed. Only carts with an email can be recovered, since there is no other way to reach the shopper.
How are recovery emails sent? Do I need an email service?
Emails go out through WordPress's own mail function, so they use whatever mail setup your site already has, including any SMTP plugin. The plugin doesn't connect to any external service. For better inbox placement, the built in documentation recommends pairing it with a transactional email service.
Will it slow down my store?
No. The plugin does no work on requests that don't need it, never forces a session or cookie on an anonymous visitor, and only loads its capture script on the checkout. All sending runs in the background through WooCommerce Action Scheduler.
When does a cart count as recovered?
When an order is paid after at least one recovery email was sent. If the shopper buys before any reminder goes out, the cart is marked Purchased instead and isn't counted as recovered. If the order is later cancelled or refunded, the recovery is reverted so your reports stay accurate.
What happens if a product sold out after the cart was saved?
Stock is checked again when the shopper opens the recovery link. Items that are gone or out of stock are skipped, quantities are reduced to what is available, and the shopper sees a message naming those items. If every product in a cart is gone, the reminder is cancelled instead of sent.
Can I send emails in my shoppers' languages?
Yes. Each cart stores the shopper's language (from WPML, Polylang or your site language). Use Add translation on a template card to create a translated copy. Shoppers in that language receive it automatically. You can also limit a campaign to chosen languages.
How do I keep my own test orders from getting reminders?
Go to Cart Recovery > Settings > Capture. Under Exclusions, tick roles such as Administrator or Shop manager, and list test addresses or domains in Do not track these emails, one per line. Matching carts aren't captured, and queued emails to them are cancelled.
How can shoppers unsubscribe?
Every recovery email has an unsubscribe link that can't be switched off, plus one click unsubscribe headers that Gmail and Yahoo show as a button. The unsubscribe applies to the shopper's email address, so no cart from that address is emailed again. You can also add addresses by hand under Settings > Privacy > Do not email list.
Is anything limited in the free plugin?
No. Everything in the free plugin works fully, with no caps or trials. The Pro edition is a separate plugin that adds more features. It doesn't unlock anything in this one.
What happens to my data if I move to Pro?
Nothing is lost. Both editions use the same data, so every cart, campaign, template and setting carries over. When Pro is active, this plugin stays idle and shows a notice on the Plugins screen so you can deactivate it. Recovery emails are never sent twice.
Troubleshooting
- A reminder hasn't been sent yet.
Emails only send at their scheduled time. Open the cart from Abandoned Carts and check the Scheduled emails table to see when each one is due. The first step waits for its delay after the cart was abandoned, and a cart only becomes abandoned after Mark abandoned after minutes. To send right away, click Send next email now.
- "Scheduled jobs are running late (oldest pending job is about N minutes overdue). Recovery emails may be delayed."
Sending relies on WooCommerce Action Scheduler, which runs on site traffic or a real system cron. Make sure loopback requests work on your site. On a store with little traffic, ask your host to add a system cron that runs
wp action-scheduler run. You can see progress under WooCommerce > Status > Scheduled Actions, or click Process queue now on the dashboard to send due emails right away.- A cart didn't become abandoned.
Only carts with a captured email are marked abandoned. Carts without an email, or with no items left, stay Live. Also check the Capture tab: the cart may match an excluded role, email, product or category, or be below Minimum cart total to capture. If Require marketing consent before capturing an email is on, the shopper must tick the consent box.
- "The test email could not be sent. Check your site mail setup (for example your SMTP plugin log)."
The plugin uses your site's mail setup, and sending failed there. Check your SMTP plugin's settings and log, make sure From email under Settings > General is an address your mail setup may send from, then click Send test email again.
- "No pending recovery email for this cart to send."
The cart has no queued reminder left. All steps may already have been sent, or the cart was recovered, purchased, emptied or unsubscribed. Check the Scheduled emails table and Activity timeline on the cart screen.
- "The next message was not sent and has been cancelled."
The message failed a final check before sending. The notice and the cart screen show the reason. Common causes: the campaign is paused, a draft or deleted, the template is inactive or deleted, the cart was emptied or converted, it holds an excluded product, or the shopper opted out. Fix the cause (for example set the template back to Active) for future carts.
- "The next message could not be sent. It will be retried automatically."
Your site's mail setup returned an error. The plugin retries with a growing delay before marking the message failed. Check your SMTP plugin log, and watch the Failed count in the Email sending panel on the dashboard.
- "This template is still used by a campaign step. Choose another template for that step first."
A template that a campaign step uses can't be deleted. Open Cart Recovery > Campaigns, edit the campaign, choose a different Email template for that step, click Save campaign, then delete the template.
- "Bulk action applied to some of the selected carts. Only live carts can be marked abandoned."
Mark as abandoned only works on carts with the Live status. The other selected carts were skipped. Filter the list by Live before using this bulk action.
- "Import failed. Please upload a valid settings file."
Only a small
.jsonfile made with Export settings can be imported. Export the settings again from the source store and upload that file without editing it.
Free vs Pro
Recovero Free vs Pro
Recovero Free already captures guest and logged in carts, sends multi step recovery emails designed in a visual builder, and reports recovered revenue, with no caps. Pro adds an exit intent popup, session replay, single use coupons, webhooks, email throttling and SMS or WhatsApp steps.
22 of 28 features in Free6 more with Pro
| Feature | Free | Pro |
|---|---|---|
| Cart capture | ||
| Capture guest and logged in carts in real time | Included | Included |
| Minimum cart total to capture | Included | Included |
| Exclude staff roles, test emails, products and categories | Included | Included |
| Merge duplicate carts from other devices | Included | Included |
| Recovery campaigns | ||
| Multi step recovery campaigns with priorities | Included | Included |
| Default campaign installed on activation | Included | Included |
| Target campaigns by cart and shopper details Free targets by cart value and shopper language only. Pro adds products, categories, new or returning customers, role and country. | Limited | Included |
| One click recovery link with stock check | Included | Included |
| Emails | ||
| Visual email builder with live preview | Included | Included |
| HTML mode for email templates | Included | Included |
| Merge tags for shopper and cart details | Included | Included |
| Template translations with WPML or Polylang | Included | Included |
| Send test emails from the editor | Included | Included |
| Carts and reports | ||
| Live dashboard with send queue status | Included | Included |
| Abandoned carts list with filters and bulk actions | Included | Included |
| Export carts to CSV | Included | Included |
| Reports on recovered revenue, rates and campaigns | Included | Included |
| Email open and click tracking | Included | Included |
| Privacy and settings | ||
| Marketing consent box at checkout | Included | Included |
| Unsubscribe link and do not email list | Included | Included |
| Data retention with anonymize or delete | Included | Included |
| Import and export settings between stores | Included | Included |
| Conversion tools | ||
| Exit intent popup that captures emails before shoppers leave | Not included | Included |
| Session replay recordings of each shopper's visit | Not included | Included |
| Single use recovery coupons inside reminder emails | Not included | Included |
| Sending and integrations | ||
| Email throttling with hourly caps and a send window | Not included | Included |
| Webhooks that send cart events to Zapier, Make or your CRM | Not included | Included |
| SMS and WhatsApp reminder steps through Twilio | Not included | Included |
Upgrade
Upgrade to Recovero - Cart Abandonment Recovery for WooCommerce
Recovero - Cart Abandonment Recovery for WooCommerce is a separate Pro plugin that adds more recovery tools. Both editions share the same data, so every cart, campaign, template and setting carries over when you upgrade. Pro adds:
- Exit intent popup that captures emails before shoppers leave
- Session replay recordings of each shopper's visit
- Single use recovery coupons inside reminder emails
- Webhooks that send cart events to Zapier, Make or your CRM
- Email throttling with hourly caps and a send window