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

Quick Setup

Add the ?li= parameter with this Klaviyo variable to load cart items:
{% 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?li={% 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 URL parameters. This allows the link to accept cart items via the ?li= parameter.
Your link is now configured to load cart contents from Klaviyo’s line item data.

Add Tiered Promotions (Optional)

Common mistake: Do NOT create a separate link for each tier. You configure all tiers on a single link. Checkout Links automatically applies the right tier based on the customer’s cart value at checkout.

How It Works

You create one abandonment link and add multiple promotion tiers to it. When a customer clicks the link in your Klaviyo email, their cart contents are loaded via the ?li= parameter. Checkout Links evaluates the cart total and automatically applies the matching tier’s promotions — no separate links needed.

Setting Up Tiers

1

Enable Promotions

In your link editor, toggle on the Promotions section.
2

Add your first tier's promotions

Click Add discount and select your promotion type (e.g., free shipping).
3

Set a threshold condition

Change the condition from No threshold to Cart total.
4

Set the value range

Enter the minimum and maximum values for this tier. For example, $0 to $50.
5

Add another tier

Click Add promotion to create a new tier. Set a higher threshold range and add different promotions.
6

Repeat for additional tiers

Continue adding tiers until you’ve covered all cart value ranges. Higher tiers typically get better offers.

Example Configuration

All of these tiers are configured on one link:
Cart TotalOffer
Up to $50Free shipping
$50 – $150Free shipping + 10% off
$150 – $300Free shipping + 15% off + free gift
$300+Free shipping only (no percentage discount)
For the complete promotions reference, see Promotions.
Consider adding a ceiling tier for high-value carts. You probably don’t want to give 15% off a $500 order — set a top tier that offers free shipping only, or a smaller flat discount. 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
You’ll add the ?li= parameter with Klaviyo variables 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

Add ?li= to your URL followed by 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?li={% 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.