All guidesEmail Flows

The Flow Audit: Where Your Automations Leak Revenue

Your flows are live, but are they actually built out? Learn the audit ZHS runs to find the gaps, missing branches, and dead sends quietly costing you revenue.

OutcomeAfter this lesson, you can
  • Build the trigger, timing, branches, and exits for this flow
  • Measure and improve the flow against a stable cohort
PrerequisiteRead this firstThe VIP & Loyalty Flow: Reward Your Best Customers

Why do email flows leak revenue?

Most flow problems are not one dramatic failure. They are a stack of small logic, consent, timing, content, and QA gaps that compound over time. ZHS uses a 61-point internal audit; the public version below includes the core checks and a downloadable working checklist. Across a built-out program, flows should contribute 30 to 50% of email-attributed revenue, not total store revenue.

The canvas can look complete while customer paths, product logic, consent, reporting, or message pressure still fail. ZHS uses the 61 checks to make those assumptions explicit before a flow is marked approved.

30-50%
Email revenue core flows should drive
61
Points we check before launch
5
Leak classes covered in this guide

Your flows can be "on" and still leak.

A flow can be live yet still have an unintentional branch, channel role, timing rule, or exit condition.

The short version

Treat the 61 points as an operating audit, not a universal promise that every flow needs the same channel or cadence. Fix missing journey coverage and broken customer paths first, then repair links, product logic, consent, branches, timing, and reporting. Re-audit business-critical flows monthly and after a catalog, offer, integration, or consent change.

Here is a sample of what those 61 points check.

Triggers, Filters, and Exits
  • Cart and checkout abandon fire on separate triggers
  • Purchase exit filters pull buyers out of abandonment flows
  • Browse abandon runs on its own, not merged into cart
  • Site-abandon coverage is assessed where the customer behavior and tracking support it
  • Customer treatment is intentionally assessed for purchase history or another relevant signal
  • Winback re-engages, then sunset suppresses the unengaged
  • Welcome has a distinct job per message; message count is cohort-tested, not assumed
Timing, Content, and Channels
  • Smart Sending behavior is intentional for the journey and tested with a real profile
  • SMS quiet hours and local-time behavior are verified for every eligible recipient
  • Time delays between sends, no doubled-up messages
  • Discount codes in live HTML text, never trapped in an image
  • Auto-apply discount links tested and working
  • No out-of-stock products named in copy
  • SMS is added only when valid consent, pressure rules, and an incremental channel job support it
  • Business-critical flows are re-audited monthly and after material changes

What does a fully built-out flow look like?

A built-out flow is not a preset message count or an automatic SMS track. It is a customer journey with deliberate trigger, eligibility, message job, channel role, exits, pressure settings, and end-to-end QA. "Set up" can mean a trigger fires; "built out" means the intended path has been tested and documented.

Most brands set a flow live and call it done. One welcome email. One cart reminder. A trigger that fires.

That is "set up." It is not built out.

Built out means the intended sequence, branching, channel role, exit logic, and QA path have been documented and tested end to end.

Set up, not yet validated
  • One generic welcome email
  • Channel choice is inherited rather than justified
  • Back-to-back sends with no delay logic
  • No exit criteria, so buyers keep getting nudged
  • Pressure settings are untested with a real profile
Built out and validated
  • Multi-email sequence with a clear job per send
  • Email plus SMS only where consent and an incremental channel job justify it
  • Time delays that make sense, no doubled-up sends
  • Filters so purchasers exit the flow
  • Smart Sending and quiet-hour behavior are deliberate, compliant, and tested

Which email flows should you audit first?

Start with the customer journeys that actually apply to the store, often welcome, site or browse abandonment, cart, checkout, post-purchase, and re-engagement. Do not treat that list, a message count, or an SMS path as universal. Every qualifying path needs intentional trigger, eligibility, exit, and reporting logic. If foundational journeys are missing, start with the complete welcome flow guide and abandoned cart recovery guide.

Before optimization, confirm every relevant core journey exists and passes its functional path. Evaluate the combined flow contribution against email-attributed revenue only.

FlowBuilt-out standardCommon leak
WelcomeDocumented onboarding sequence with a clear job per messageSingle discount delivery without onboarding context
Site AbandonUse only when tracking and a useful customer action support itAssumed necessary without viable tracking or message job
Browse AbandonProduct context, eligibility, and reporting treated independently from cartMerged into cart without testing the behavior difference
Cart AbandonOwn trigger, purchaser exit, and tested recovery treatmentOne reminder with no exit or measurement plan
Checkout AbandonOwn trigger and cohort reporting, separate from cartAssumed to be the same path as cart
Post-PurchaseLifecycle guidance based on product use, education, or repeat cycleThank-you message with no defined next customer job
Winback / SunsetRe-engagement and suppression policy matched to engagement dataUnengaged profiles never handled
Checkout is not cart

Cart abandon and checkout abandon fire on different triggers. Build and report them separately when both apply; checkout is a later-stage signal for many programs, not a guaranteed higher-converting audience.


What are the most common flow leaks?

This guide checks five recurring leak classes: generic customer treatment, channel duplication or omission, weak timing, missing exits, and dead sends. Each can damage a customer path even when the canvas looks live. The correction is not “add SMS everywhere”; it is to give every channel a consented, measurable job.

Once the flows exist, this is where revenue quietly drains inside them.

  1. No segmentation branches. The flow sends the same content to a first-time visitor and a repeat buyer. Splits should follow your email segmentation strategy, not fire one path for everyone.
  2. Channel mismatch. A flow either omits a consented, useful channel or duplicates the same message across channels. The SMS flow guide explains how to give email and SMS distinct jobs.
  3. Weak timing. Back-to-back sends with no delay, or account-level pressure settings that conflict with the intended journey.
  4. No exit criteria. Buyers stay in the abandonment flow and keep getting "you forgot something" after they already paid. Filters should pull them out.
  5. Dead sends. Discount trapped in an image instead of live HTML text. Broken auto-apply links. Out-of-stock products named in copy. Any one turns a working send into a dead one.

What share of email revenue should flows drive?

Flows should contribute 30 to 50% of email-attributed revenue across a built-out program. Do not assign universal store-revenue percentages to individual flows: welcome, abandonment, and post-purchase performance changes with traffic mix, catalog, repeat cycle, eligibility, and attribution settings.

Use flow-specific rates to diagnose the build: welcome first-purchase rate and total attributed revenue, cart and checkout recovery, post-purchase repeat rate, and winback conversion. Then use the combined flow share to judge whether automation carries enough of the email program.


How do you prioritize flow fixes?

Score each gap by impact and effort, then work high-impact, low-effort first. In practice that means four steps: cover missing customer journeys, fix broken sends, add appropriate structure, then test and review on a documented cadence. You cannot resolve every check across every live journey at once, so sequence the work.

Score each gap by impact and effort. Then work high-impact, low-effort first.

Process

How do you prioritize flow fixes

  1. 01
    Missing journeysCover the customer path

    Build the relevant journey before polishing a lower-impact message.

  2. 02
    Broken sendsFix dead links and product logic

    Bad auto-apply links, image-only codes, and unavailable products break an otherwise valid customer path.

  3. 03
    StructureAdd deliberate branches, channels, and exits

    Use consented channels, segment logic, timing, and purchase exits where they change the customer experience.

  4. 04
    OngoingTest and review on a recorded cadence

    Compare delivery, clicks, conversion, total attributed revenue, and skip reasons under stable reporting definitions.

Structured from the canonical article steps for responsive reading and presenter mode.


How do you run the audit inside Klaviyo?

Start in Flows, filter to Live and Manual statuses, and inventory every automation before opening individual messages. For each flow, record its trigger, profile and trigger filters, re-entry behavior, live/manual message count, channel, last edit, and performance over a documented comparison window. Then use a test profile to force the trigger and inspect the event timeline rather than assuming the canvas logic works.

Process

A repeatable Klaviyo flow-audit pass

  1. 01
    InventoryMap every flow and status

    Export or record Live, Manual, and Draft flows. Flag duplicate triggers and missing core journeys.

  2. 02
    LogicInspect triggers, filters, splits, and exits

    Confirm eligibility, purchaser exits, re-entry rules, consent checks, and mutually exclusive branches.

  3. 03
    ExperienceTest every message as a customer

    Force each trigger with test profiles, receive the messages, click every link, apply every code, and verify mobile rendering.

  4. 04
    PerformanceCompare like with like

    Use the same date window and attribution settings. Review delivery, click, conversion, total attributed revenue, and skip reasons by message.

  5. 05
    PrioritizeAssign owner, impact, and due date

    Fix broken logic first, missing coverage second, then weak creative and incremental tests.

ZHS default: run this pass monthly for business-critical flows and after any catalog, offer, integration, or consent change. Adapt the cadence to the actual risk and change rate.

Checklist

The 20-point launch and recurring audit

  • Trigger fires from a real storefront action
  • Trigger filters include only the intended event
  • Profile filters exclude ineligible or non-consented contacts
  • Purchasers exit every abandonment path
  • Re-entry rules prevent repetitive enrollment
  • New and returning customer branches are intentional
  • Email and SMS consent are checked separately
  • Quiet hours and local time behavior are verified
  • Smart Sending behavior matches the journey design
  • Delays do not cause messages to collide
  • Every message is Live or intentionally Manual
  • Subject, preview, From name, and reply-to are correct
  • Dynamic product and profile variables have fallbacks
  • Discount codes and auto-apply links work
  • Every CTA lands on the intended mobile page
  • Out-of-stock and excluded products are handled
  • UTM and campaign naming follow the reporting standard
  • Test profiles cover eligible, ineligible, buyer, and non-buyer paths
  • Skip reasons and delivery failures have been reviewed
  • Every issue has an owner, priority, and due date

A flow is not approved because its canvas looks complete; it is approved when the customer path and reporting both pass.

Download the complete 61-point flow-audit checklist (CSV) →

Lock the attribution view before comparing performance

Klaviyo-attributed revenue can change when the conversion event, lookback window, channel settings, or reporting date range changes. Record those settings in the audit. Compare messages and periods under the same configuration, and label the number as attributed revenue, not total store revenue.

What are the most common flow audit mistakes?

The six recurring mistakes are calling a flow done at launch, leaving pressure settings unexamined, adding or skipping channels without a reason, missing purchase exits, trapping a code inside an image, and never re-auditing. Each is testable with a controlled profile and a documented review pass.

  1. Calling a flow done at launch. A live flow still needs the full 61-point pass before it is marked approved.
  2. Never checking pressure settings. Smart Sending and other account-level controls must match the journey design and be tested with a real profile.
  3. Treating SMS as mandatory or optional by default. Add it only when valid consent, pressure rules, and a distinct customer job support it.
  4. No purchase exit filter. Customers who bought keep getting abandonment reminders. That erodes trust fast.
  5. Discount trapped in an image. Put the code in live HTML text and confirm the auto-apply link works.
  6. Never re-auditing. Flows drift after product, offer, integration, consent, and catalog changes. ZHS defaults to a monthly business-critical-flow review and a review after material changes; adjust that cadence to the operating context.

Get Expert Help

Our team runs the full 61-point flow audit as part of onboarding, documents priority gaps, and sequences fixes by expected customer-path impact.

You get built-out flows, not just flows that are technically switched on.

See our pricing | Apply to work with us

Need help implementing this?

We build and manage complete email & SMS programs for DTC brands. Get a custom plan for your brand.

Apply Now

Join 2,000+ ecommerce strategists

Get all my brand breakdowns, Klaviyo guides, and the exact systems behind $50 million in DTC sales, directly in your inbox.

We respect your privacy. Unsubscribe anytime.