Documentation Index
Fetch the complete documentation index at: https://docs.upstackdata.com/llms.txt
Use this file to discover all available pages before exploring further.
Data direction: This is a destination — Upstack sends event and conversion data out to this platform via server-side APIs.
What it does
Klaviyo is connected through Upstack Flows, the product that handles event delivery to marketing automation platforms. Upstack Flows sends enriched event and profile data to Klaviyo so its flows — abandoned cart, browse abandonment, checkout abandonment, post-purchase — fire on a much larger pool of visitors than Shopify and Klaviyo’s native integration can identify on their own. The practical impact is more recovered revenue. Anonymous visitors that Shopify cannot match to an email get matched by Upstack’s identity resolution and pushed into Klaviyo as enriched profiles, which means more abandoned cart flows fire, more browse abandonment emails send, and more SMS messages reach the inbox.How it works
Upstack Flows posts events to Klaviyo’s API as custom metrics and creates or updates Klaviyo profiles with identity data resolved by Upstack ID. When the Upstack Pixel sees an anonymous visitor add to cart, identity resolution attempts to match the session to a known customer — using cookies, click IDs, and cross-session behavioral data — and attaches the email before the event is forwarded to Klaviyo. Klaviyo then has enough information to trigger flows that would otherwise never fire. Profiles synced from Upstack include standard properties ($first_name, $last_name, $city, $region) plus custom properties from Upstack’s identity resolution, so they are immediately usable for segmentation.
How Upstack works with Klaviyo
Klaviyo already knows many of your customers. Upstack builds on that: anyone who clicks a Klaviyo email gets looked up and resolved through Upstack’s identity engine.- Identity enrichment. Upstack hooks into Klaviyo to attach resolved identity data to every event it sends.
- Re-identification. When a returning visitor can’t be identified by standard Klaviyo tracking — cookies expired, new device, different browser — Upstack re-identifies them and fires enriched events back to Klaviyo.
- Backup abandonment flows. These enriched events trigger a second set of abandonment flows that only fire for visitors Klaviyo couldn’t identify on its own.
- Result. Roughly 40% more people flow back through your abandonment sequences.
The Upstack team handles Klaviyo flow setup during onboarding. They’ll request access to your Klaviyo account and configure UTM tracking, flow cloning, triggers, and exclusion filters. The setup guides above describe what gets configured so you understand the setup.
Best practices
Setup guides
Klaviyo onboarding guide
End-to-end walkthrough for connecting Klaviyo to Upstack Data.
Configure Klaviyo destination
Configure the Klaviyo destination inside Upstack Data.
Generate Klaviyo API key
Create a Klaviyo private API key with the right scopes for Upstack.
Set up abandonment flows
Build the recommended Klaviyo flows powered by Upstack-enriched events.
Clone standard flows
Clone Klaviyo’s standard flows as a starting point for Upstack-powered versions.
Cross-flow exclusion filters
Prevent the same visitor from receiving overlapping flow messages.
Enable UTM tracking
Tag Klaviyo flow links with UTMs so attribution flows back into Upstack.
Event mapping
| Upstack event | Klaviyo metric | Key properties | Notes |
|---|---|---|---|
ViewContent | Viewed Product | ProductName, ProductID, Price, ImageURL | Powers browse abandonment flows |
AddToCart | Added to Cart | ProductName, ProductID, Price, Quantity, CartValue | Powers abandoned cart flows |
InitiateCheckout | Started Checkout | CartValue, ItemCount, CheckoutURL | Powers checkout abandonment flows |
Purchase | Placed Order | OrderID, Revenue, Items, DiscountCodes | Powers post-purchase and win-back flows |
$first_name, $last_name, $city, $region) plus custom properties derived from identity resolution. These are available for Klaviyo segmentation immediately after sync.
FAQ
How does Upstack increase the number of abandoned cart flows that fire?
How does Upstack increase the number of abandoned cart flows that fire?
Shopify can only fire Klaviyo’s abandoned cart flow when it knows the visitor’s email — typically because the visitor logged in or reached the email step in checkout. Upstack identifies many more visitors than that by matching anonymous sessions to known customer profiles using cookies, click IDs, and cross-session behavior. When Upstack identifies an anonymous cart with an email, it forwards an enriched
Added to Cart event to Klaviyo, which lets the abandoned cart flow fire on visitors that Shopify could not identify.Will I see duplicate events if Klaviyo's native Shopify integration is also active?
Will I see duplicate events if Klaviyo's native Shopify integration is also active?
You can. The recommended approach is to disable the Klaviyo metrics in Shopify’s native integration that overlap with the events Upstack is forwarding (
Viewed Product, Added to Cart, Started Checkout, Placed Order). Keep the native integration enabled for any events Upstack is not handling.What permissions does the Klaviyo API key need?
What permissions does the Klaviyo API key need?
Upstack only needs three scopes on the private API key:
Events: Write, Profiles: Write, and Lists: Write. Avoid using a full-access key — least-privilege scopes keep the integration safe. The setup guide above walks through generating the key with the correct scopes.Are new profiles created in Klaviyo, or only existing ones updated?
Are new profiles created in Klaviyo, or only existing ones updated?
Both, by default. When Upstack identifies a visitor with an email that does not yet exist in Klaviyo, it creates a new Klaviyo profile. When the email already exists, Upstack enriches the existing profile with new properties and event history. You can disable either behavior in the destination settings.
How do I know events are arriving in Klaviyo?
How do I know events are arriving in Klaviyo?
In Klaviyo, open Analytics → Metrics. Upstack-forwarded events appear as custom metrics (for example,
Added to Cart from Upstack) and start populating within a few minutes of storefront activity. To trace a specific visitor, find the profile in Klaviyo and check the Activity Feed.Troubleshooting
Upstack events not appearing in Klaviyo
Upstack events not appearing in Klaviyo
If events are showing in the Upstack Live Event Stream but not arriving in Klaviyo:Steps to fix:
- Confirm the Klaviyo destination shows Active (green) in the Upstack dashboard
- Verify your Private API key has the required scopes (
Events: Write,Profiles: Write,Lists: Write) — read-only keys cannot receive events - In Klaviyo, go to Analytics → Metrics and search for events containing “Upstackified” — they may be arriving under a different name than expected
- If the destination status is red, disconnect and reconnect with a fresh API key
Duplicate abandonment emails
Duplicate abandonment emails
Customers receiving emails from both your standard flows and Upstack flows means mutual exclusion filters are missing or misconfigured.Steps to fix:
- Open both the standard and Upstack versions of the flow in Klaviyo
- Verify each flow has a cross-flow exclusion filter: “Has received email 0 times in last 7 days where Flow = [other flow name]”
- If filters are in place but duplicates persist, check that the flow names in the filters match exactly (including the ” - Upstack Data” suffix)
- Disable flows from previous tools (Elevar, Triple Whale) if they are still active
For additional troubleshooting beyond Klaviyo-specific issues, see Troubleshooting: Events Not Reaching Destination.
Related
Data enrichment
How Upstack Enrichment improves visitor identification — the foundation of Flows recovery.
Identity resolution
How Upstack ID connects anonymous sessions to known customers with email addresses.
Destinations overview
How Upstack Signal and Upstack Flows power different types of destinations.
Events not reaching destination
End-to-end diagnostic guide when events aren’t arriving at any destination.