Back to Blog

Recover Revenue with Cart Abandonment Workflows

Growth TeamFeb 5, 20258 min read

Recover Revenue with Cart Abandonment Workflows

Cart abandonment is inevitable - but losing those sales isn't. Learn how to build workflows that recover 10-15% of abandoned carts.

The Cart Abandonment Problem

On average, 70% of online shopping carts are abandoned. That's revenue sitting on the table. The good news? A well-timed recovery sequence can bring back 10-15% of those would-be customers.

Anatomy of a High-Converting Recovery Flow

The best cart abandonment workflows share common patterns:

Timing is Everything

  • First touch: 1 hour after abandonment
  • Second touch: 24 hours later
  • Final touch: 48-72 hours with an incentive

Why these timings? Within the first hour, the purchase intent is still fresh. By 24 hours, a gentle reminder works. By 48 hours, you need to create urgency.

Multi-Channel Coordination

Don't rely on a single channel:

  1. Email: Your workhorse - detailed, visual, includes product images
  2. Push notification: Immediate, attention-grabbing
  3. SMS: High open rates, great for time-sensitive offers
  4. In-app: Catch them when they return

Building the Workflow

Step 1: Track the Abandonment

TSTypeScript
// When user leaves with items in cartawait fbf.track({  userId: user.id,  event: 'cart.abandoned',  properties: {    cartId: cart.id,    cartValue: cart.total,    itemCount: cart.items.length,    items: cart.items.map(i => ({      id: i.productId,      name: i.name,      price: i.price,      image: i.imageUrl    }))  }});
Ln 16

Step 2: Configure the Workflow

Trigger: cart.abandoned

Condition: Only target carts worth recovering

JSJavaScript
event.properties.cartValue > 25 && user.emailVerified == true
Ln 1

Step 3: The Sequence

Hour 1 - Email Reminder

{}JSON
{  "type": "notify",  "channel": "email",  "template": "cart-reminder",  "variables": {    "items": "{{event.properties.items}}",    "cartValue": "{{event.properties.cartValue}}",    "cartUrl": "{{cartRecoveryUrl}}"  }}
Ln 10

Hour 1 - Push Notification

{}JSON
{  "type": "notify",  "channel": "push",  "title": "Forgot something?",  "body": "Your cart is waiting - complete your order now",  "data": { "deepLink": "/cart" }}
Ln 7

Wait for Purchase

{}JSON
{  "type": "wait_for_event",  "event": "purchase.completed",  "timeout": 86400}
Ln 5

Hour 24 - Second Email

{}JSON
{  "type": "notify",  "channel": "email",  "template": "cart-reminder-2",  "variables": {    "items": "{{event.properties.items}}",    "urgency": "Items are selling fast"  }}
Ln 9

Hour 48 - Final Push with Discount

{}JSON
{  "type": "notify",  "channel": "sms",  "message": "Last chance! Use code SAVE10 for 10% off your cart. Shop now: {{cartUrl}}"}
Ln 5

Best Practices

1. Personalize Everything

Include the actual items they abandoned. Show product images. Use their name. Generic messages get ignored.

2. Create Urgency (Honestly)

  • "Items in your cart are selling fast"
  • "Your cart expires in 24 hours"
  • Low stock warnings (if true)

3. Test Your Incentives

Start without discounts. Many users convert with just a reminder. Only offer discounts to those who don't convert.

4. Respect the Exit

If someone unsubscribes or explicitly removes items, stop the sequence. The wait_for_event action handles this automatically.

Measuring Success

Track these metrics:

  • Recovery rate: % of abandoned carts that convert
  • Revenue recovered: Total $ from the workflow
  • Time to conversion: Which touch point converts most
  • Channel performance: Email vs push vs SMS

Results You Can Expect

Our customers typically see:

  • 10-15% cart recovery rate
  • 3x ROI on the first email alone
  • 20% higher conversion with multi-channel

Start recovering revenue today. Create your first workflow →

Ready to get started?

Start building automated workflows today.

Fourbyfour | Revenue workflows on autopilot