Cart abandonment recovery
Recover shoppers who add items to their cart but leave without buying, using an event-triggered EngageApp campaign.
Most abandoned carts are recoverable — the shopper got distracted, not disinterested. This playbook sends a timely reminder and then a stronger follow-up if they still haven't purchased, so you win back revenue without nagging buyers.
Build it
- Send the abandonment event. From your store, emit a
cart_abandonedevent (orcheckout_started) via the Events API or an SDK. Include useful properties likecart_total,item_count, and acheckout_urlso you can reference them in your message. - Create an event-triggered campaign. Go to Campaigns → New, then set the trigger to event and choose
cart_abandoned. Each contact who fires the event enrolls in the flow. - Build the flow. In the flow builder, add a delay step of 1 hour (enough time that they've truly left), then a send message step with an email reminder that surfaces the cart contents and a link back to checkout.
- Wait for the purchase, then follow up. Add a wait_until step on the
purchaseevent with a 24-hour timeout. If the contact buys, the event → true edge lets them exit. On the timeout → false edge, add a second send message step — an SMS nudge or a discount email — to close the sale. - Set the conversion goal. Set the campaign conversion goal to
purchase. Buyers are removed from the flow automatically and each recovery is counted in your campaign analytics.
Tips
- Keep the first reminder friendly and reserve any incentive for the timeout follow-up — you don't want to train shoppers to abandon for a discount.
- Use
{{ merge_fields }}to pull the product name and cart total into the copy so the reminder feels specific. - Because wait_until listens for
purchasedirectly, anyone who checks out through any channel exits cleanly.
Next steps
- Learn how to send behavioral events reliably.
- Fine-tune enrollment with campaign triggers.
- Set the success metric with conversion goals.
Related
Events
Send behavioral events about your contacts to trigger campaigns, gate waits, and power segments.
Triggers & enrollment
A trigger decides how contacts get enrolled into a campaign — manually, by event, on a schedule, or when they join or leave a segment.
Flow builder
The drag-and-drop canvas where you assemble a campaign from trigger, send, delay, condition, and wait-until steps.
Email channel
Send provider-backed email through SMTP or a hosted provider, authored with the visual MJML editor.