Skip to main content
Klaviyo already has great abandoned cart flows. Checkout Links makes them better by adding tiered promotions based on cart value. Klaviyo’s default abandoned cart link takes customers back to their cart - that’s it. With Checkout Links, you can:
  • Offer tiered discounts - 10% off for carts over $50, 15% for carts over $100
  • Add free shipping thresholds - Free shipping on orders over $75
  • Include free gifts - Bonus item for high-value carts
  • Combine incentives - Stack discounts, free shipping, and gifts based on cart value
This guide does not require a Klaviyo API key. You’ll use Klaviyo’s built-in variables to pass cart data directly through your link.

Quick Setup

Replace [abandonedId] in your link with this Klaviyo variable:
{% for item in event.extra.line_items %}{{ item.variant_id }},{{ item.quantity|floatformat:0 }}{% if not forloop.last %}:{% endif %}{% endfor %}
Your final link:
https://yourstore.com/abandoned-cart?a={% for item in event.extra.line_items %}{{ item.variant_id }},{{ item.quantity|floatformat:0 }}{% if not forloop.last %}:{% endif %}{% endfor %}

1

Create a new link

Go to Checkout Links and click Create Link.
2

Name your link

Give it a descriptive name like “Abandoned Cart” so you can easily identify it later.
3

Set a custom slug

Enter a custom slug such as abandoned-cart or abandonment. This will be part of your URL.
4

Enable Dynamic mode

Toggle on Dynamic to enable dynamic cart loading.
5

Select Abandonment type

Under the Dynamic settings, select Abandonment. This tells Checkout Links to expect cart data from the URL parameter.
Your link is now configured to automatically load cart contents from Klaviyo.

Add Promotions (Optional)

With tiered promotions, you can offer different incentives based on cart value:
Cart TotalOffer
Up to $50Free shipping
$50 – $150Free shipping + 10% off
$150+Free shipping + 10% off + free gift
Set a maximum limit if you don’t want to discount high-value carts. This protects your margins on large orders.
Combine with Pre-checkout extensions to let customers modify their cart before checkout - great for fashion brands where customers might need to change sizes, or for adding optional upsells.
1

Save your link

Click Save to create your abandonment link.
2

Copy the URL

Copy the link URL. It will look something like:
https://yourstore.com/abandoned-cart?a=[abandonedId]
Keep the ?a=[abandonedId] parameter - you’ll replace [abandonedId] with a Klaviyo variable in the next step.
1

Open your Abandoned Checkout flow

In Klaviyo, navigate to your Abandoned Checkout flow. If you don’t have one, create a new flow using one of Klaviyo’s built-in abandoned cart templates.
2

Edit your email template

Open the email or SMS template you want to add the recovery link to.
3

Find your call-to-action button

Locate the CTA button (e.g., “Back to my cart” or “Complete your order”).
4

Replace the link URL

Replace the current link (usually {{ event.extra.checkout_url }}) with your Checkout Links URL.
5

Add the Klaviyo variable

Replace [abandonedId] with this Klaviyo variable:
{% for item in event.extra.line_items %}{{ item.variant_id }},{{ item.quantity|floatformat:0 }}{% if not forloop.last %}:{% endif %}{% endfor %}
Your final link will look like:
https://yourstore.com/abandoned-cart?a={% for item in event.extra.line_items %}{{ item.variant_id }},{{ item.quantity|floatformat:0 }}{% if not forloop.last %}:{% endif %}{% endfor %}
Make sure to copy the Klaviyo variable exactly as shown. Any missing characters will prevent the cart from loading correctly.

Test Your Flow

1

Save your template

Save your changes in Klaviyo.
2

Send a test email

Use Klaviyo’s preview and test feature to send yourself a test email.
3

Click the CTA button

Open the test email and click your call-to-action button.
4

Verify cart contents

Confirm that the abandoned cart items are loaded into checkout with your promotions applied.