Getting Started with Flows

Last updated at:


In Klaviyo, a flow is an automated sequence that is set in motion by a specific trigger and then includes one or more steps. Flows can be built to send timely communications to recipients via email or SMS, or they can simply apply certain actions, like updating a specific field on a profile.

Klaviyo flows are designed to make it easy to initiate and nurture relationships with your subscribers and customers over the course of their lifecycle. With flows, you can automate emails that will help grow your business, without losing any of the personalization and relevancy needed to build strong customer loyalty.

Flows allow you to trigger a message, or series of messages, based on when someone joins a list, is added to a segment or takes any other action—such as making a purchase or abandoning a cart. Any data syncing to your Klaviyo account can be used to trigger and target automated flows.

When you integrate an ecommerce store or other third-party tools into Klaviyo, we automatically add popular flows to your account. We also have a Flow Library full of pre-built best practice flows spanning the customer lifecycle.  Once you customize these flows, you can start sending them right away. Here are a few examples of popular flows:

  • A welcome series flow to introduce subscribers to your brand and convert them into first-time customers
  • An abandoned cart flow to convert would-be customers that is customizable based on items in someone's cart and whether they're already a customer
  • A post-purchase flow to show appreciation for customers and let them know about related products they might be interested in
  • A winback flow for customers who purchase but then don't come back to buy again, customizable based on the products they've purchased and how many purchases they've made

The Klaviyo flow builder offers several key features to help make targeted automation easy:

  • An intuitive drag-and-drop interface that lets you quickly add and configure messages and other components
  • A visual canvas where you can see each step of the customer journey you're building
  • The ability to turn certain messages "live" while keeping others "draft" or "manual" so you can start sending right away while continuing to build and add onto your flow
  • Advanced scheduling options, such as sending at a certain time of day in each recipient's local timezone, or restricting sending to certain days of the week
  • Two ways to split a flow to create parallel paths for recipients based on properties about them or past behavior, allowing for advanced segmentation inside a single flow
  • The ability to design messages directly within the flow editor

In this article, you'll learn more about flows and how triggered messages can fit into your email marketing strategy. 


If you're new to automation, it will help to define a few common terms we use when talking about flows.

  • Flow
    An automated sequence of steps that is set in motion by a single trigger and, optionally, filtered based on specific profile or trigger details.
  • Email
    An individual email in a flow. Each flow email has an email template and settings that can be configured. Unlike campaigns, which are emails sent in batch, flows emails are sent to recipients one at a time as individuals enter the flow.
  • SMS Message
    A text message sent through a flow. Each SMS has a template and settings that can be configured.
  • Trigger
    A catalyst event or activity that sets a flow in motion. For example, when someone makes a purchase or when someone subscribes to a list.
  • Trigger Split
    A Trigger Split component creates two distinct paths in your flow, branching based on a defining characteristic of the trigger. For example, for an abandoned cart flow triggered by a Started Checkout event, you can create two paths in your flow split around cart value—where high-value cart abandoners receive a discount, and lower value cart abandoners do not. This component is only available for event-triggered flows.
  • Conditional Split
    A Conditional Split component creates two distinct paths in your flow, branching based on defined recipient properties and/or activity. For example, you can create two paths in your flow split around gender, where content within each path can be personalized for male or female recipients.
  • Event / Metric
    When you choose a metric flow trigger, you will then need to pick the specific type of activity that will trigger your flow. Each metric in Klaviyo represents a specific action (like Placed Order, Started Checkout, etc.). When someone takes the action, it's considered a metric, or event. When a flow is triggered based on a specific metric, whenever this action occurs the individual who took the action will qualify to enter the flow.
  • Time Delay
    The Time Delay component is used to create delays—or wait periods—between components in a flow series.
  • Waiting Queue
    This is a list of profiles scheduled and waiting at a given step in a flow. When a person qualifies to enter a flow based on the configured trigger, this person is scheduled for the first step in your flow. Once someone moves through one step, they will be scheduled for the next. The Waiting queue is where you'll gain visibility into who is waiting at different steps in your flow, next to who has already moved past a given step. Potential steps include receiving a message, being evaluated at a split, and more. Learn more about how contacts move through a flow series.

What Can Flows Do

Every message you send should be relevant and engaging to the person receiving it. Two of the best ways to increase the relevance of your messages is to time them based on actions your customers take and use information about their activity to personalize each message's content. With flows, you can automate both of these techniques.

Unlike campaigns, flows don't require constantly developing new content and, because they're tied to customer behavior, have higher and greater engagement and ROI. Businesses use flows to substantially increase their sales, grow faster, and automate their customer communication while maximizing the impact of each touchpoint.

Types of Flow Triggers

Every flow must have a trigger. A flow's trigger is what sets the automated series in motion. There are four types of flows:

  • Metric-Triggered
    People will qualify to enter a metric-triggered flow when they take a specific action (for example, placing an order). To see all possible metrics that can trigger a flow, check out your account's Metrics tab.
  • List-Triggered
    People will qualify to enter a list-triggered flow when they are added to a specific list.
  • Segment-Triggered
    People will qualify to enter a segment-triggered flow when they are added to a specific dynamic segment.
  • Date Property-Triggered
    People will qualify to enter a date property-triggered if they have a specific date-based profile property set (for example, a birthday).

Klaviyo's Out-of-the-Box Flows

When you integrate an ecommerce or nonprofit platform with Klaviyo, we will provide different best practice flows for you out-of-the-box.

After configuring your core company details in the Setup Wizard, you can navigate to the Flows tab in your account. Here, you will see any best practice flows we have pre-populated. These flows will contain default templates that provide a suggested layout and example text. Most of these templates will also be configured to pull in relevant dynamic personalized content through your integration.

Even if you don't integrate any third-party tools, you will still get a default welcome series flow out-of-the-box. This flow is triggered when new subscribers are added to a list. When editing this flow, you will need to select the list you would like subscribers to be added to in order to trigger the welcome series.

We highly recommend reviewing, customizing, and previewing all default flow messages before turning your flows live.

Create a New Flow

To create a new flow, click the Flows tab in your account's main navigation sidebar and then click the Create Flow button. If you aren't sure where to start, browse the Flow Library for innovative automation ideas spanning the customer lifecycle. Otherwise, click Create from Scratch to create a brand new flow.

When creating a brand new flow, you'll first need to name your flow. The name of your flow should be easily understood by you and your team—as you start to use Klaviyo more and more, the number of flows can add up quickly. 

Next, you'll select a trigger for your new flow—you will be able to choose one of four options outlined above: list, segment, metric, or date property.

You will narrow each trigger. For example, if you choose a list-triggered flow, you'll need to choose which specific list will set your flow in motion.

Klaviyo offers advanced filtering for flow triggers so you can get highly targeted with your flows. For example, you can trigger a post-purchase flow off the Placed Order metric but restrict the trigger so only people who ordered a specific item will actually qualify to enter.

Learn more about how flow triggers and filters work.

Adding Steps to a Flow

After you create a new flow, select a trigger, and add any desired trigger and/or flow filters, you are ready to start adding additional components into your flow series.

To add an email into your flow, click on the Email component in the sidebar and drag it onto the visual canvas. Every "droppable" location for an email will turn green as you drag it onto the canvas, and a light green drop zone will appear as you get close to a drop point. Once an email is dropped onto the canvas, it can be configured in the lefthand sidebar. Learn more about the Email component.


To add an SMS message to a flow, drag the SMS component onto the visual canvas. Learn more about adding an SMS message to a flow.

Scheduling a Step in a Flow

Messages and other components are scheduled by time delays that are added before them in a flow series. If components are back-to-back, without any time delays, they will all occur simultaneously.

Each time delay creates a waiting period between one component and the next. In this way, emails in a flow series will be scheduled relative to one another. This means that if Email #1 in a flow is sent one day after the trigger event, and you drag in a time delay set to two days between the first email and the second, Email #2 will be sent three days after the trigger event.

You can set a delay to any number of minutes, hours, or days. To send a message immediately after the previous step, you don't need to drag in a time delay at all.

You can also choose if you like to set a delay until a specific time of day or delay until only specific days of the week.

After you set a delay, you can always adjust it by clicking on the Time Delay component. Keep in mind that updating a time delay before a message will not impact any already-scheduled messages. The updated timing will only impact newly scheduled messages moving forward.

The Flow Action Status

There are three possible statuses for a flow action: draft, manual, or live. You can change the status of a message in the lefthand panel.


  • Draft
    This is the default status for a new message and is the status you should use while you're still configuring your content and adjusting settings. When a message is in draft, nobody will be queued up or receive it.
  • Manual
    When you are done configuring a new message and are interested in testing it out, you can place it in manual mode. When a message is in manual, it is active in your flow but no messages will send automatically. You will need to manually review and send all scheduled messages.
  • Live
    To "turn on" a message in a flow series, you will want to change the message's status to live. A live message is active in your flow and is sending automatically.

When a flow message is set to manual, you will see all ready-to-review-and-send messages in the Needs Review section within the Analytics snapshot in the left-hand sidebar. By clicking View all Analytics, you will be taken to a report where you can explore all recipient activity for your flow message.

If you switch the status of a message from manual to live, any messages in the Needs Review section will continue to remain there until manually reviewed and handled—these messages will not automatically send when the message's status switches to live.

From the Needs Review section within Recipient Activity, you can choose to Send All or Cancel All, or alternatively click Send Now or Cancel for an individual message.

If your flow message has a time delay before it, you will also notice individuals queued up in the Waiting section within your message's Recipient Activity. This view shows you who entered your flow and is currently waiting to receive the selected message.


Trigger Filters and Flow Filters


Whenever someone qualifies to enter a flow based on the trigger, we will also first check all trigger and flow filters:

  • Those who fail the trigger and flow filters at this time will be filtered out immediately and will not be scheduled for any components in your series.
  • Everyone who passes the flow's trigger and flow filters will officially enter the flow and be scheduled for messages and splits based on the delay period you've set.
  • At send time, flow filters will be checked once more to ensure that recipients still meet the criteria of the flow. Trigger filters are not checked again at send time.

When each message is scheduled to send, Klaviyo will apply your flow filters again (e.g., has Placed Order zero times since starting this flow) and skip anyone who fails these filters at send time. This is why you may see people queued up for flow messages—in the Waiting bucket—who you know shouldn't actually get the message based on the flow's filters. If someone qualifies to get the message initially upon entering the flow, this person will appear as waiting for messages in your series. Flow filters will always be applied again, however, right before each message sends.

You can explore the complete Recipient Activity for a given flow message by clicking on View all Activity in a message's left-hand sidebar. Here, you will also see who was skipped from receiving a message in the Skipped tab. When you click this dropdown, this will reveal a range of different skipped options. When someone no longer qualifies to receive a flow message at send time, we'll skip over them—most often, someone will be skipped because they fail the flow's filters, or because they've since unsubscribed and are suppressed in your account.


Back-Populating Flow Recipients


If you create a new flow and want to queue up those who would have been captured by the flow if it had been running previously, you can use our back-populate feature. This feature can be found in the Manage Flow dropdown menu.

Learn more about back-populating a flow.

Flow Analytics

In order to understand how a flow is performing overall, you will want to view message performance across your whole series. With the Visual Flow Builder, you can show analytics on the visual canvas itself. To do this, once inside the builder for a given flow, click Show Analytics on the top header menu. Then, you'll see all message cards expand to feature a key performance metrics with an adjustable timeframe.


For each action, when selected, you can also view a 30-day snapshot in the sidebar and click in to view robust analytics around that action step in your series.

To dive deeper into flow analytics, review our guide to understanding flow analytics.

Additional Resources

Learn more about flows: 


Was this article helpful?
461 out of 571 found this helpful