> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nextintent.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Klaviyo: the reason in your email

> Turn on Send the moment to Klaviyo and your abandoned-cart email can say why the shopper stopped, in one sentence, for the shoppers Klaviyo already knows.

Your abandoned-cart email says the same thing to everyone: you left something behind. NextIntent knows why the shopper stopped: a size they kept flipping, a code that did not take, the shipping line. With this switch on, the storefront tells Klaviyo the reason and the sentence we showed, on the shopper's own browser, and your email can swap its generic sentence for the real one. The email stays as short as it is.

## Where it is

**Settings → What it may say → Send the moment to Klaviyo.** The row appears only after the app has seen Klaviyo on your storefront (it looks once a day). If you do not run Klaviyo, you will not see it, which is correct.

## What happens when it is on

When a shopper gets stuck and a sentence is delivered (shown by our card, or handed to your popup tool or your developer's code), the page checks whether Klaviyo already knows this browser. Klaviyo knows a shopper once they have subscribed, placed an order, or clicked through from a Klaviyo email. If it does, the page gives Klaviyo two things:

1. **An event, `NextIntent moment`,** with the reason ("Choosing a size or color"), the sentence we showed (or that nothing was shown), whether it was shown, the page path, the cart total and the moment id. You can build a flow on this event.
2. **Three profile properties:** `NextIntent last reason`, `NextIntent last sentence`, `NextIntent last moment at`. Your existing abandoned-cart flow can read these with one conditional block, no new flow needed.

If Klaviyo does not know the browser, nothing is sent. Shoppers who were just looking get nothing extra; that is correct.

## What is never sent

No email address, no name, no phone number, nothing the shopper typed. The reason and the sentence are about the moment, not the person. Klaviyo matches the event to a profile it already holds; NextIntent never learns who that is. See [Privacy and data](/shopify/privacy-and-data).

## Put it in your email

Open your abandoned-cart email in Klaviyo and find the one sentence that tells the shopper they left something behind. Replace that sentence with this block. A shopper we have a reason for gets the matching line; everyone else gets your sentence back, which is the `else` branch. Nothing is added; one sentence is swapped.

```
{% if person|lookup:'NextIntent last reason' == 'Choosing a size or color' or person|lookup:'NextIntent last reason' == 'Size or fit' %}
Not sure about the fit? Our size notes are on each product page, and returns are open for 30 days, so order the size you think and swap it if it is not right.
{% elif person|lookup:'NextIntent last reason' == 'Hunting for a discount code' or person|lookup:'NextIntent last reason' == 'Discount code not taking' or person|lookup:'NextIntent last reason' == 'Lost a discount they had' %}
The code you tried did not take. The offers that do apply are already on the page; nothing hidden is coming later.
{% elif person|lookup:'NextIntent last reason' == 'Shipping cost or speed' or person|lookup:'NextIntent last reason' == 'Under the free-shipping line' %}
Shipping is free at $75. You were close; add one more thing and it ships free.
{% else %}
You left something in your cart. It is still here when you are ready.
{% endif %}
```

Edit the three lines to your store: your return window and your free-shipping line are in **Settings**, and the lines should match them. The code line promises nothing; it never invents a discount. The same block, with **Copy** buttons, is under the switch in Settings.

For a flow triggered by the event itself, use `event.reason` in place of the profile lookup. The Settings page has that version too.

`person|lookup:'...'` and `{% if %} ... {% elif %} ... {% else %} ... {% endif %}` are Klaviyo's own personalization syntax; see Klaviyo's help on personalization tags if you have not used them before.

## Prove it before you believe it

We do not claim a lift from this. Klaviyo can test it for you, inside the flow you already run:

1. In the flow, click the email and choose **Create A/B test**. Klaviyo makes two variations; keep the split equal.
2. In one variation, paste the block above in place of the generic sentence. Leave the other as it is.
3. After a month, click **View test** on the email and read **Placed Order** for each variation, not opens or clicks. That number is the answer.

## How to test it today

1. Turn the switch on and press **Save**.
2. On your storefront, in a browser where you are a Klaviyo subscriber (click through from one of your own Klaviyo emails first), run a scenario from [Try it](/shopify/test-it) until a card shows.
3. In Klaviyo, open your own profile. The **NextIntent moment** event is in the activity feed and the three properties are on the profile.

## Questions

**Does this send an email?** No. NextIntent never sends anything. Klaviyo sends the email it already sends; it now has one more fact to use.

**Will Klaviyo show a popup too?** Only if you also chose Klaviyo as your popup tool under **How to speak on the page**. The two are separate switches.

**What about shoppers Klaviyo does not know?** Nothing happens for them, and they get no email from Klaviyo either, because Klaviyo cannot reach them. Shoppers who were just looking get nothing extra; that is correct.

## Related

* [What it may say](/shopify/settings/what-it-may-say)
* [What we said](/shopify/how-it-works/what-we-said)
* [Why shoppers stall](/shopify/reports/reasons)
* [Privacy and data](/shopify/privacy-and-data)
* [The card and the event](/api/the-card)
