Skip to content

Template

Klaviyo Flow Checklist

A build and review checklist for Klaviyo flows: triggers, trigger filters, profile filters, splits, time delays, Smart Sending, message status, consent and what to check after launch.

Klaviyo makes it easy to switch a flow on and hard to see what it’s doing to the rest of your program. This checklist focuses on the settings that decide who enters a flow, who gets skipped, and which message wins when two flows want the same person at once. Use it before turning a flow live and again when reviewing flows you’ve inherited.

How to use this checklist

Go through it in the order you’d build: trigger, filters, structure, messages, flow-level settings, then testing. Setting names follow Klaviyo’s current flow builder. Klaviyo is rolling out multi-branch splits, which combine the older conditional split and trigger split into one action with multiple paths, so depending on your account you’ll see one or the other. The checks apply either way.

The general workflow QA checklist covers platform-neutral testing and monitoring if you want a broader pass.

1. Flow setup

  1. The flow name says what it does and which audience it serves, for example “Browse Abandonment | Non-buyers | Email + SMS”.
  2. A tag is applied so the flow can be found and grouped (welcome, abandonment, post-purchase, winback).
  3. You’ve checked for an existing flow with the same trigger. Two live flows on “Started Checkout” is a common way to double-send.
  4. The flow’s purpose and priority relative to other flows are written down. Which wins if someone qualifies for this and another flow on the same day?

2. Trigger

  1. The trigger type is the right one for the job: a list (someone is added), a segment (someone newly joins), a metric (an event such as Placed Order, Started Checkout, Viewed Product), a date property (birthday, subscription renewal), or a specialized trigger such as price drop.
  2. For metric triggers, you’ve confirmed the metric is arriving. Open the metric in Analytics and check recent activity and which integration sends it.
  3. For segment triggers, you understand that only profiles who join the segment after the flow is live will enter, not everyone already in it.
  4. For list triggers, you know every way profiles are added to that list (sign-up forms, imports, integrations, API). An import can enroll thousands of people at once.
  5. If you’re using an option to add past profiles when turning the flow on, you’ve decided it deliberately and checked the count first.

3. Trigger filters

  1. Trigger filters are used to restrict on properties of the triggering event itself: order value, product type, collection, discount code used, source.
  2. Trigger filter values match exactly what the integration sends. Check spelling and case against a real event in the profile’s activity feed.
  3. You’ve considered events that contain several items. A filter on one product in a multi-item order may behave differently from what you expect.

4. Profile filters

  1. Profile filters are set for conditions about the person rather than the event.
  2. You know profile filters are checked when someone enters the flow and again before each step. A profile that stops meeting them partway through leaves the flow. That’s usually what you want, but confirm it for each filter.
  3. Abandonment flows exclude anyone who has Placed Order since starting the flow.
  4. If people should only go through this flow once in a given period, a profile filter like “has not been in this flow in the last 30 days” (or “since starting”) is set. Without it, a metric-triggered flow can start for the same person every time the event fires.
  5. Internal staff and test profiles are excluded, for example by email domain or a property.
  6. Filters on predictive fields (predicted CLV, churn risk, expected next order date) only target profiles that actually have predictions; anyone without them won’t match.

5. Splits

  1. Each conditional split, trigger split or multi-branch split has a clear reason, written in the split’s notes or the flow description.
  2. Every path has a test profile that goes down it.
  3. In multi-branch splits, path order is correct. Profiles go down the first path they qualify for, and the Everyone else path catches the rest.
  4. Splits on event data (trigger split, or trigger-event conditions in a multi-branch split) are only used in metric-triggered flows, where that data exists.
  5. Splits that check consent or channel eligibility send people without SMS consent to an email-only path rather than nowhere.
  6. Random-sample paths used for testing have an end date and a defined winning metric.

6. Time delays

  1. The first delay fits the intent. An abandonment email sent two minutes after someone leaves feels intrusive; one sent three days later is too late for most.
  2. Delays use the right unit and, where needed, a specific send time or days of the week.
  3. Delays account for the profile’s local time if that option is in use and the time zone data is reliable.
  4. The total time a profile can spend in the flow is written down, and you’ve checked overlap with the next flow they’re likely to enter.

7. Messages

  1. Each email and SMS has been previewed with a real profile, including one with empty first name and other blank properties.
  2. Dynamic product blocks pull from the trigger event correctly (the abandoned items, the purchased items).
  3. Discount codes are valid for the life of the flow and not stackable in ways you didn’t intend.
  4. Links carry UTM tracking if you rely on it in your analytics tool.
  5. Sender name, from address and reply-to are correct, and the from domain is authenticated.
  6. SMS messages respect quiet hours and include required opt-out language.
  7. Additional message-level filters (set on an individual email or SMS) are documented. They’re easy to forget when the flow is reviewed later.
  8. A/B tests on flow messages have a defined winning metric and a date to review.

8. Smart Sending

  1. You’ve decided per message whether Smart Sending should be on. It skips a profile who received a message within your account’s Smart Sending window.
  2. Smart Sending is on for promotional flow messages that could pile up on top of campaigns.
  3. Smart Sending is off for messages the person needs regardless of recent sends, such as the first welcome email, order or account-related messages, and anything time-sensitive.
  4. You know your account’s Smart Sending window and have checked it suits your sending volume.
  5. Messages marked as transactional (where Klaviyo has approved that use) contain no promotional content.
  1. Marketing emails only go to profiles who can receive email marketing; you’ve confirmed unsubscribed and suppressed profiles are skipped.
  2. SMS messages only go to profiles with SMS consent.
  3. Flows don’t send to long-term unengaged profiles if your sunset policy excludes them from campaigns.
  4. A flow that suddenly increases daily volume (a new list trigger, a backfill) has been checked against your normal sending pattern, since large jumps can affect deliverability.

For more on this, see Klaviyo deliverability.

10. Status and go-live

  1. Each message has the right status: Draft (not sending), Manual (profiles queue up for you to send by hand, useful while testing) or Live (sends automatically).
  2. You’ve used Manual for an initial period on high-volume flows and checked the queued profiles before switching to Live.
  3. Any older flow this one replaces has been switched off, and profiles already inside it have been considered.
  4. Someone owns the flow and knows where to check its performance.

11. After launch

  1. Day 1: check flow analytics for the number of profiles entering and compare against expectations.
  2. Day 1: open recipient activity for a few profiles and confirm their path matches the design.
  3. Day 3: check skipped counts and reasons. A high number skipped for Smart Sending or filters can mean the flow is reaching far fewer people than you think.
  4. Week 1: check unsubscribe and spam complaint rates against your campaigns.
  5. Week 2: check conversion against the flow’s purpose (first order, repeat order, review left).

Quarterly flow review

  1. List all live flows with trigger, filters, owner and last-edited date.
  2. Look for pairs of flows a single profile could be in at the same time. Decide which wins and add filters to enforce it.
  3. Confirm every metric used as a trigger is still arriving from the integration.
  4. Review discount codes, seasonal copy and product references in all live messages.
  5. Recheck Smart Sending settings on every message after any change to campaign frequency.

The Klaviyo audit checklist guide covers account-wide checks beyond flows, and the welcome flow guide shows these settings applied to one flow in detail.

Flows working against each other?

Klaviyo lifecycle work looks at your flows as one system, with shared exclusions, clear priorities and events you can trust.