E-commerce

Abandoned carts: what works and what does not

Abandoned carts shrink by removing friction, not with fake urgency. Five causes, recovery emails with consent, checkout mistakes and real blocks.

Abandoned carts shrink by removing friction, not by adding urgency: total cost visible early, guest checkout, errors next to the field, a stated delivery date. Recovery emails come later, and only with a legal basis.

Abandonment is one word for five different problems. Someone checks a price and leaves, someone discovers shipping at step three, someone cannot pay, someone gets distracted. They do not need the same remedy. Treating them as one number buys an email campaign when the problem was the return from the bank site.

The five causes and the fix

CauseSignal in the dataFix
Surprise costThe drop happens at the step where shipping appearsShipping worked out on the home page and in the cart, free threshold visible
Mandatory accountThe login step is the last event in the sessionGuest checkout, account offered only after the order
Delivery with no dateThe cart page never says when goods arriveTerm stated per zone, with a date before payment
Payment declinedAuthentication errors in the bank responseA return that restores the cart and a message with the alternative
Doubt about returnsVisits to the returns page before leavingReturn instructions on the product page and in the cart, with the 14 days
Expired sessionThe cart empties after the return from the bank siteA persistent cart and a resume link in the confirmation

A recovery email is commercial communication. Directive 2002/58/EC, article 13, allows it without prior consent only towards someone who has already bought, for similar products, with an easy opt-out in every message; for someone who only left a cart you need consent, or a documented legitimate interest under article 6(1)(f) of the GDPR, which requires a written assessment and an immediate way out. Two reminders, then stop: the third is reported as spam. Fake urgency, such as "your cart expires in 10 minutes", falls under the misleading practices banned by Directive 2005/29/EC.

The checkout that loses orders

  • Useless fields: mandatory phone, date of birth, company name. Each one adds a reason to stop.
  • Shipping shown at the third step: the total changes once the decision is made.
  • Errors far from the field: the customer cannot tell what to correct and retries once.
  • A session that expires while the bank asks for confirmation: the cart is empty on return.
  • No immediate confirmation with an order number: the purchase feels lost and the customer buys elsewhere.
# quante richieste arrivano al carrello e quante al checkout
grep -c "POST /api/cart" access.log
grep -c "POST /api/checkout" access.log

# il carrello dichiara la spedizione prima del pagamento?
curl -s https://www.esempio.it/carrello | grep -ci "spedizione"

# la conferma riporta il numero d'ordine?
curl -s https://www.esempio.it/conferma | grep -ci "ordine n"

Blocks from the catalogue

The Cart 01 block from commerci for the summary, Checkout 01 for the payment flow, Newsletter 01 from Shadcn Space for the sign-up form and the pricing category with 41 blocks for the free shipping threshold. The licence is the one the publisher declares on the record.

The limitation to state

The blocks are interface: no persistent cart, no email service integration, no analytics events. Recovery needs a sending service, a recorded legal basis and an unsubscribe that actually works. Without the data of a real shop there is no rate to improve, because the catalogue does not produce it.

What to measure instead

Three session counts are enough: sessions with at least one product in the cart, sessions that reach payment, confirmed orders. The ratio of the second to the first shows checkout friction; the ratio of the third to the second shows failed payments, which have technical causes and are fixed in days. Count sessions, not page views, and split mobile from desktop.

Where to continue

The whole shop is in creating an ecommerce site, the checkout step by step in guest checkout, the catalogue sections in blocks for ecommerce. If the choice is between a closed platform and components, the comparison is in WordPress, Wix or React components.

Frequently asked questions

How do you reduce abandoned carts?

By removing friction: total cost visible early, guest checkout, errors next to the field, a stated delivery date, a payment that survives the bank redirect. Recovery emails come later and address people who had already decided to buy.

Are cart recovery emails worth it?

They are worth it if you have a legal basis and honest wording. Someone who never bought needs to give consent; for an existing customer the ePrivacy soft opt-in can apply, with an easy opt-out in every message. Two reminders are a reasonable limit.

Do limited-time offers work?

They work when the discount is real and the time is true. A timer that restarts on every visit, or a discount price that never changes, are misleading practices banned by Directive 2005/29/EC and the consumer code, and they end in disputes.

Which friction costs the most orders?

Shipping discovered late and mandatory registration. Both move a cost after the buying decision, and the customer finds out while about to pay. They are also the two easiest to fix.

How do you measure abandonment?

With three session counts: cart with at least one product, access to payment, confirmed orders. The gap between the second and the third measures failed payments, which often depend on strong customer authentication and the return from the bank site.