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, not1250) — in the store’s currency, which is also sent asCurrency. - Every server-side event (orders and reviews) carries
VenueNameandVenueSlug, so a multi-store account can filter or branch flows by store. Of the browser events, Added to Cart, Started Checkout and Viewed Menu carryVenueSlugonly; Viewed Brand carriesBrandSluginstead; 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 inItems on every order event and as the top-level properties of Ordered Product.
Placed Order
Sent when the customer completes payment. Event value isTotal. 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 isTotal. Properties: the shared order properties.
Canceled Order
Sent when the order is cancelled. Event value isTotal. 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 of5.
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 aRating 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 ownklaviyo.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’strackViewedItem, 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 inItems 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 setemail, 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.