Skip to content

Klaviyo

Klaviyo Lifecycle Strategy, Automation & Optimization

We rebuild Klaviyo accounts around the customer's real lifecycle, from first signup to repeat purchase, lapse and win-back, with the store data, consent and segments each stage depends on.

  1. Subscriber
  2. Browser
  3. Cart
  4. Checkout
  5. Customer
  6. Repeat Customer
  7. VIP
  8. At Risk
  9. Win-Back
Each state should be identifiable from real store data, not guessed from email clicks.

Most Klaviyo accounts we open have the standard flows switched on: a welcome series, an abandoned cart, maybe a post-purchase thank-you. They were set up from templates around launch and have run untouched since. Each one works on its own terms, and none of them knows the others exist.

A new subscriber gets the first welcome email with a discount code. That afternoon she browses, adds something to her cart and leaves. Now she’s in two flows at once, getting a cart reminder without the discount and a welcome offer with it. She buys using the code. The post-purchase flow starts, and next Tuesday the welcome series still sends email four, asking her to make her first purchase.

Fixing that takes flow filters, exit conditions and an agreed order of priority between flows. Underneath, it takes something more basic: a clear view of which state each customer is in, built from data Klaviyo can actually see.

The data Klaviyo runs on

Everything in Klaviyo hangs off two things: profiles (one per person, holding properties like location, consent and custom fields) and metrics (events recording what that person did, with a timestamp and details). Properties describe who someone is. Metrics describe what they did. Flows, segments and reports are built from both, so gaps in either show up everywhere.

With Shopify, Klaviyo’s integration brings in order and checkout events such as Checkout Started, Placed Order, Ordered Product, Fulfilled Order, Cancelled Order and Refunded Order. Onsite behavior is a separate layer. Active on Site, Viewed Product and Added to Cart depend on onsite tracking being set up, and for the Shopify-branded versions, on behavioral event tracking being enabled in the integration settings. WooCommerce stores connect through Klaviyo’s WooCommerce integration, and we check which order and browsing events are actually arriving rather than assuming they match Shopify’s.

This matters more than it sounds. If Added to Cart was never set up, there is no true cart abandonment flow, only a checkout abandonment flow triggered by Checkout Started, which reaches fewer people later in the process. Browse abandonment has the same limit: Klaviyo can only connect browsing to profiles it has identified.

Lists are static. People join through a signup form, an import or the API, and stay until they’re removed. They’re how subscription is collected and how many flows are triggered. Segments are dynamic. They’re defined by conditions on properties and metrics, and profiles move in and out as their data changes.

The common mistake is holding behavioral groups in lists. A “Customers” list that was imported once and never updated will be wrong within weeks. Customers, repeat buyers, VIPs and lapsed buyers belong in segments built on order metrics, so they stay accurate without anyone maintaining them.

Consent sits on the profile, separately for each channel. Email consent shows as Subscribed, Unsubscribed or Never subscribed. SMS has its own consent, and SMS marketing consent is distinct from transactional-only consent. Suppression is a separate flag again: a profile can be subscribed and still suppressed. Checkout customers who never opted in arrive as Never subscribed, and we look closely at how your account treats them, because sending marketing to that group is a consent risk in many regions and a deliverability risk everywhere.

Flows, mapped to the lifecycle

Each state in the lifecycle above should have a trigger Klaviyo can detect and a reason for a message to exist. Roughly:

  • Subscriber: a welcome series triggered by joining a list, which exits anyone who places an order.
  • Browser: browse abandonment on Viewed Product, filtered so recent buyers and people already in a cart flow don’t get it.
  • Cart and Checkout: abandoned cart on Added to Cart and a separate checkout flow on Checkout Started, each checking whether an order was placed since the trigger.
  • Customer: post-purchase on Placed Order or Fulfilled Order, with different content for first-time and repeat buyers.
  • Repeat Customer and VIP: segments built on order count and spend, used for replenishment, cross-sell and recognition rather than more discounts.
  • At Risk and Win-Back: triggered by time since last order relative to your typical buying cycle, followed by a win-back sequence and, eventually, a sunset.
  1. Checkout Started
  2. Wait a few hours
  3. Placed Order since trigger?
  4. No: send reminder
  5. Yes: exit flow
Every abandonment flow needs a check for the conversion it is trying to cause.

The order matters as much as the flows. We decide which flow takes priority when a customer qualifies for two, set flow filters to enforce it, and use Smart Sending and frequency rules so campaigns don’t land on top of flow messages. Our Klaviyo welcome flow guide walks through the first of these in detail.

Find the gaps between your flows

We map your flows against the customer lifecycle, check the store data feeding them, and show where customers fall between the cracks.

Request a Klaviyo Audit

Where does Klaviyo’s predictive analytics fit?

Klaviyo’s predictive analytics can sharpen VIP and at-risk segments once your store has enough order history. It adds fields such as predicted customer lifetime value, churn risk and average time between orders to each profile. To generate CLV predictions, Klaviyo needs at least 500 customers who have placed orders, an ecommerce integration or orders sent via API, at least 180 days of order history with orders in the last 30 days, and some customers with three or more orders.

Below that threshold, rule-based segments do the job well. “Two or more orders, none in the last 90 days” is a perfectly good at-risk definition for a brand with a 45-day buying cycle. Above it, predicted values help you separate a quiet VIP from a customer who has genuinely drifted.

SMS, deliverability and reporting

Email and SMS should behave like one program. If a cart abandoner receives an SMS and an email within the same hour, one of them is wasted and both feel pushy. We coordinate channels inside the same flows, respect each channel’s consent, and decide which channel goes first for which segment.

Deliverability problems in Klaviyo usually come from sending campaigns to everyone on the main list, including people who haven’t opened or clicked in a year. Engaged segments for campaigns, a sunset flow for the long-inactive, and authentication on your own sending domain fix most of it. When inbox placement has already slipped, our deliverability improvement work goes further, although where mail lands is ultimately decided by Gmail, Yahoo and Microsoft, not by us or by Klaviyo.

Klaviyo’s attributed revenue counts orders placed within a window after someone received or engaged with a message. It’s useful for comparing flows to each other. It is not proof that a flow caused the sale. We report on placed order rate by segment, repeat purchase rate and time to second order alongside it, so decisions don’t rest on attribution alone.

How we work on Klaviyo accounts

We start by auditing the account: integration, metrics, consent handling, segments, flows and reporting. Then we design the lifecycle states and the logic between them, rebuild the flows, test them with real profiles, and watch the results before adjusting. This sits inside our wider lifecycle automation and email marketing automation work, and our ecommerce solution covers how it connects to the rest of your store’s systems.

Do you work with WooCommerce stores as well as Shopify?

Yes. The setup differs: we confirm which order and onsite events the WooCommerce integration is sending, and fill gaps with onsite tracking or API events where needed.

Should our campaigns go to the whole list?

Usually not. Most brands do better sending regular campaigns to an engaged segment, defined by recent opens, clicks, site activity or orders, and reaching the wider list only for major moments. The right window depends on how often you send and how often customers buy.

Do you handle Klaviyo SMS?

Yes, as part of the lifecycle design. We set consent collection, channel priority and SMS steps inside flows so email and SMS work together.

What if our Klaviyo emails are going to spam?

Start with the basics: sending domain authentication, who you send campaigns to, and how often. If placement is already damaged, recovery takes a structured plan, which is what our deliverability service covers.

See what your Klaviyo account is missing

A Klaviyo audit checks your store data, consent, segments and flows against the lifecycle you want, and shows what to fix first.