Send wishlist actions from your storefront to Klaviyo, then use them to trigger Klaviyo Flows.
Published guide: Klaviyo storefront events
This guide is optional marketing setup. Installing Gatto Wishlist & Loyalty does not require changing theme files. Wishlist and Loyalty on the storefront use the app embed and theme app extensions. The listener below is only if you want Klaviyo Flows to react to wishlist clicks.
This is a client-side integration: a small script in your theme listens for wishlist events and sends them to Klaviyo. It is separate from the server-side Klaviyo Flow events in Emails → Email Integrations (back in stock, price drop, low stock, loyalty emails). You can use both.
| Integration | Where | Use case |
|---|---|---|
| Client-side (this guide) | Optional theme script → Klaviyo | Wishlist add, remove, add to cart from wishlist |
| Server-side | Emails → Email Integrations (no theme-file changes) | Back in stock, price drop, low stock, loyalty emails |
In the app, browse event names under Integrations → Wishlist Events.
| Event | When it fires | Suggested Klaviyo metric |
|---|---|---|
gatto-wl:gwl-added-product |
A product is added to the wishlist | Gatto Loyalty: Product added to wishlist |
gatto-wl:gwl-deleted-product |
A product is removed from the wishlist | Gatto Loyalty: Product removed from wishlist |
gatto-wl:gwl-add-to-cart |
Shopper clicks Add to cart or Add all to cart from the wishlist | Gatto Loyalty: Wishlist add to cart |
Metric names are suggestions. The Flow trigger must use the exact name your script sends.
In Klaviyo, go to Integrations → Shopify and turn on onsite tracking (recommended). You can also add the Klaviyo snippet through Klaviyo’s Shopify integration without hand-editing theme files when that option is available.
Skip this section if you only use Emails → Email Integrations (server-side). Add a listener only when you want client-side wishlist metrics in Klaviyo Flows.
Preferred: add the script in a theme JavaScript asset that loads on every storefront page, or ask your developer to add it.
Alternative: add it in your theme’s global layout (Shopify Admin: Online Store → Themes → … → Edit code, then open the layout file such as theme.liquid):
theme.liquid).</body>, after the Klaviyo onsite snippet.Do not use a Shopify Custom Pixel for this script. Custom Pixels usually cannot see wishlist events.
The script looks up product images and prices, then sends the event to Klaviyo with properties such as product_title, product_url, product_image_url, ImageURL, and Price.
Gatto Loyalty: Product added to wishlist.customer_logged_in equals true, so only logged-in shoppers get emails.{{ event.product_title }}{{ event.product_url }}{{ event.ImageURL }}{{ event.Price }}Image_placeholder_4
A metric appears in Klaviyo only after the first real event fires on your storefront.
| Shopper | Result |
|---|---|
| Logged in | Klaviyo knows the shopper's email. Flows can send emails. |
| Guest | No email is known. Events may be tracked anonymously, but Flows usually will not send. |
ImageURL is a full https:// link.Image_placeholder_5
| Issue | Tip |
|---|---|
| No events in Klaviyo | Confirm Klaviyo onsite tracking is on, the optional listener is present after the Klaviyo snippet, and the app embed is enabled. |
| Wishlist events do not fire | Turn on the app embed in the theme editor (Customize → App embeds). |
| Flow never sends | Test with a logged-in customer. Guests usually cannot receive Flow emails. |
| Product image is empty | Replace any older script with the latest version, and keep only one copy in the theme. |