You will learn
Learn how to create a browse abandonment flow and show potential customers a product they visited but did not start or complete their checkout.
In browse abandonment flows, a visitor doesn't have to add an item to their cart to trigger this flow. All a site visitor has to do is view an item and move on.
Visiting a product page doesn’t indicate the same level of interest as adding an item to a shopping cart and beginning the checkout process, so we recommend making your browse abandonment messages a "lighter touchpoint" than your abandoned cart flow.
Configure viewed product tracking
Browse abandonment flows are triggered by the Viewed Product metric. This flow thus requires Viewed Product tracking to be enabled on your website.
For Shopify, Viewed Product tracking is enabled by Klaviyo's app embed in Shopify. You can find out more in our guide to getting started with Shopify.
For BigCommerce stores, when you first integrated with Klaviyo, the Setup Wizard prompted you to add two onsite tracking code snippets: home page tracking and Viewed Product tracking. If you didn't already complete this step, click into Account > Setup Wizard to finish it now.
For details on adding Viewed Product tracking, click the name of your integration in the list below:
Magento storesMagento stores
For Magento stores, all you need to do is download the latest extension:
Custom carts and ecommerce platformsCustom carts and ecommerce platforms
If you've set up your own custom ecommerce integration and would like to create a browse sbandonment flow (or build segments based on product page browsing data), you'll need to add JavaScript event tracking for a Viewed Product metric. We've built a snippet you can add to your product page template.
Monitor the Viewed Product metricMonitor the Viewed Product metric
When you add onsite tracking to your site, Klaviyo is only able to track the browsing activity of "known browsers;" i.e., browsers who have visited and engaged at least once before. There are two key ways we are able to identify a site visitor:
- If they clicked through a Klaviyo email to your website
- If they subscribed or opted in through a Klaviyo form
Anonymous browsers are not tracked.
To check on this metric:
- Click into your account's dashboard.
- Navigate to the Activity Feed tab.
- Adjust the Showing Feed for to filter for the metric Viewed Product.
After viewed product web tracking has been configured for your site, data should begin populating in your account as known visitors browse your product pages.
If there is no data available, test the metric out yourself by browsing your website and clicking around to view different products. You should see this data begin to flow into Klaviyo.
For Shopify stores: Based on your Customer Privacy settings in Shopify, Klaviyo may not track onsite events for visitors to your Shopify store in the EU, EEA, UK and Switzerland, unless they have provided consent. Thus, your browse abandonment flow will not include non-consented individuals.
Are you using Amazon Buy with Prime?
If you're using Buy with Prime to power payment and fulfillment for any of the products on your store, make sure to do the following:
- Integrate Buy with Prime with Klaviyo to bring Buy with Prime data into your Klaviyo account.
- When you create your browse abandonment flow (either pre-built or from scratch) add the following profile filters to incorporate Buy with Prime data into your flow:
- Checkout Started (Buy with Prime) zero times since starting this flow AND
- Placed Order (Buy with Prime) zero times since starting this flow.
Use a pre-built browse abandonment flow
The pre-built browse abandonment flows are available for Shopify, BigCommerce, and Magento stores.
Klaviyo provides you with pre-built browse abandonment flows. These flows include emails designed to dynamically populate with information about the product viewed (the item’s image, name, and price).
If the flow is not in your account, you can access it be following these steps:
- Navigate to the Flows tab.
- Click Browse Ideas.
- Filter by "browse abandonment" to customize the type of flow you start with.
For Shopify, we also offer an abandoned collection flow and an abandoned search flow.
Build your own browse abandonment flowBuild your own browse abandonment flow
We recommend using one of the pre-built flows, if available, rather than creating your own to ensure all the dynamic variables work properly.
- Navigate to the Flows tab.
- Click Create Flow.
- Select Create from Scratch.
- Choose Metric to trigger the flow.
- Click into the dropdown menu and choose Viewed Product.
- Add the following profile filters:
-
Placed Order zero times since starting this flow
AND -
Started Checkout zero times since starting this flow
AND -
hasn't been in this flow in the last 30 days
AND -
Added to Cart zero times since starting this flow
- Only applies if you also have a flow triggered by the Added to Cart metric, as otherwise, customers could get emails from both flows
-
Placed Order zero times since starting this flow
- Add in a time delay for at least one hour.
- (Optional) Add in splits to provide more personalized communications to different groups:
- Purchasers vs. non-purchasers
- Domestic vs. international
- Product type or category
- Add in your email or SMS.
- Add in additional time delays, splits, and emails as needed.
How to show the product viewed in an email
Do not copy the default abandoned cart message for a browse abandonment flow. Whereas the block for an abandoned cart message should be set to Dynamic, the block for a browse abandonment message should be Static. Switching the block type will erase the tags, text, etc. If you already cloned the default abandoned cart message for your browse abandonment flow, copy the tags before changing the block from Dynamic to Static.
Build the email
- Drag an image block into your template.
- In the image block’s Dynamic Image or Placeholder field, add
event.ImageURL
- Drag a text block into your template, then add the following tags:
-
{{ event.Name }}
where you'd like to insert the product's name -
{{ event.Price }}
where you want to insert the product's price -
{{ event.URL }}
in any URL or Link URL field that you’d like to direct to the product page
-
- Save your changes.
- Preview your email; you should see dynamic product data populate into the placeholder variables.
If a customer views multiple products, the one that is shown depends on your setup:
- If you are using hasn't been in this Flow in the last X days, then it'll be the first item the customer viewed.
- If you're using has viewed product zero times since starting this flow, it'll be the most recent.
Other audiences to target
There are a few different types of audiences you can target with your custom browse abandonment emails, including:
-
Someone views a product and has received email from flow zero times in the last X days
If you're worried that frequent browsers might receive too many browse abandonment emails, you can add this filter to limit how often someone will get an email from this flow. Leaving Smart Sending ON for all browse abandonment emails is also a good idea. -
Someone views a product and has placed order equals zero over all time
This filter allows you to target people that have never purchased before and might be new to your brand. You may want to incentivize these browsers to make a first purchase by including a discount code or promotional offer in your flow email. -
Someone views a product and has placed order at least once over all time
This filter is the inverse of the example above -- if you target browsers that have never purchased before in one flow, you will also want to target customers that are re-visiting your site to potentially buy again through a separate flow. You may not want to include a discount offer here, since these customers have already taken the leap to buy and are back again to browse on their own. -
Someone views a product and has viewed product at least Z times since starting this flow
This filter allows you to target those that are spending a bit of time on your site viewing different products. Adding this filter means as someone begins to browse, the first X number of products viewed will not trigger this flow -- only after Z number of items are viewed will someone receive your flow email, and the email can be configured to show the last item the recipient viewed. -
Someone views product where product equals Product X
This filter allows you to create special offers for those browsing a specific item. Let's say you want to share a special discount for those browsing a more expensive item on your site. You can target those browsing certain items by adding a trigger filter for the specific item you'd like to target.
Additional resources
Check out this article on branching flows.