Skip to main content
Every metric storekit sends to Klaviyo, with its properties. Use it when building flow filters, segment conditions and email templates. For when each event fires and what to build with it, see Flows to Build.

Conventions

  • Order and review events are linked to profiles by email. Orders without an email are never sent. For app customers, see Customer Profiles.
  • Money is in major units — pounds, not pence (12.50, not 1250) — in the store’s currency, which is also sent as Currency.
  • Every server-side event (orders and reviews) carries VenueName and VenueSlug, so a multi-store account can filter or branch flows by store. Of the browser events, Added to Cart, Started Checkout and Viewed Menu carry VenueSlug only; Viewed Brand carries BrandSlug instead; Viewed Product carries neither.
  • Duplicates are suppressed. Each order event has a stable unique ID (for example one per order for Placed Order, one per dish line for Ordered Product), so a retry never creates a second event in Klaviyo.
  • Empty properties are left out rather than sent as blank.

Order Events

Sent by storekit’s servers, so they arrive whether or not the customer’s browser blocks tracking. All five share the same order properties.

Shared Order Properties

Item Object

Used in Items on every order event and as the top-level properties of Ordered Product.

Placed Order

Sent when the customer completes payment. Event value is Total. Properties: the shared order properties.

Ordered Product

Sent once per dish line, immediately after Placed Order. Event value is the line total including modifiers.

Fulfilled Order

Sent when you mark the order Complete in storekit (or your POS marks it complete). Event value is Total. Properties: the shared order properties.

Canceled Order

Sent when the order is cancelled. Event value is Total. Properties: the shared order properties. Note the American spelling — it matches Klaviyo’s built-in metric name so Klaviyo’s own reports and templates recognise it.

Refunded Order

Sent for each refund, full or partial. Event value is the amount refunded, so a £5 partial refund has a value of 5.

Review Events

Sent when customer feedback is switched on for the store. See Review Events for what to build with them.

Shared Review Properties

Review Requested

Sent when storekit asks the customer to rate their order — after the order’s estimated ready time plus the delay set under Settings → Feedback.

Review Submitted

Sent when the customer submits their rating.

Positive Review Submitted, Negative Review Submitted

Sent alongside Review Submitted, with the same properties. Positive Review Submitted is sent for a Rating of 4 or 5; Negative Review Submitted for 1 to 3. This is fixed and cannot be changed in the dashboard.

Reviewed Product

Sent once per dish the customer rated.

Reviewer Profile Properties

Review events also update these custom properties on the customer’s Klaviyo profile, so you can segment on them:

On-Site Events

Sent from the customer’s browser by Klaviyo’s own klaviyo.js, which storekit loads when the store has a Public API Key / site ID. They are tied to the profile once the customer is identified (see Customer Profile); until then Klaviyo holds them anonymously. Ad blockers stop these events for some customers — that is normal.

Viewed Product

Sent when a customer opens a dish. storekit also records the view with Klaviyo’s trackViewedItem, which powers Klaviyo’s Recently Viewed template block.

Added to Cart

Sent each time a dish is added to the basket.

Started Checkout

Sent when the customer reaches the payment step. Repeat visits to checkout with an unchanged basket on the same day are deduplicated into one event; a changed basket or a new day is a new Started Checkout.

Basket Line

Used in Items on Added to Cart and Started Checkout.

Viewed Menu

Sent when a customer opens your ordering page. This is the event name Klaviyo’s restaurant flow templates expect; it replaces storekit’s older custom Viewed Venue event, so update any flow or segment still referencing that name. The customer is usually still anonymous when the menu loads, so the event only becomes usable in a flow once Klaviyo can link the visit to a profile — when they enter their email at checkout, or arrive from a Klaviyo email or SMS link. Klaviyo records its own Active on Site at that point. Menu-browse flows triggered on Viewed Menu therefore fire for known customers only.

Viewed Brand

Sent when a customer opens a brand landing page — the page that lists your stores and asks them to pick one. Only brands with more than one store have this page. The same anonymous-visitor caveat as Viewed Menu applies.

Native App Events

Available when Klaviyo is connected to your branded iOS or Android app. These are separate from ordering website activity. Signing in updates a customer profile; it does not record a separate Signed In event. Connecting the app does not track every screen a customer visits. Dish views, basket changes and checkout activity depend on your ordering website’s tracking. See Native Apps.

Customer Profile

When a customer enters their email at checkout, storekit identifies them in Klaviyo and fills in first name, last name and phone number as they are entered, and their browsing events from that session are linked to the profile. Kiosks are shared devices, so kiosk customers are only identified when their order is placed. Order events set email, first_name and last_name on the profile. When a customer opts in to marketing, storekit subscribes the profile to your chosen list for email and, if they gave a valid phone number, SMS — see Marketing Consent. When customers sign in to your app, their profile is updated with their name, email and phone number, where available. Signing out stops subsequent app activity being attributed to that signed-in customer. Neither action changes their email or SMS marketing consent.

Catalog Items

With catalog sync on, each dish is also a Klaviyo catalog item — see Menu Catalog Sync for the fields.