The short version: the campaign-versus-flow split is the single most diagnostic number in an email program, and the baseline is stark: campaigns account for 94.7% of send volume while flows generate nearly 41% of total email revenue from just 5.3% of sends, at nearly 18 times the revenue per recipient, with flows clicking at 5.58% against campaigns' 1.69% and placing orders at 13 times the rate. The right target for your brand depends on stage: 25 to 35% of email revenue from flows under $5M, 40 to 50% between $5M and $20M, 50 to 60% above $20M, with the top decile running 58 to 65%. This post is how to read your number, the worked math for both failure directions, and the quarter-by-quarter path from a bad split to a healthy one.
Why flows out-earn campaigns per send, structurally
Nothing about flow emails is better written; they are better timed. A flow fires when a specific person does a specific thing (signs up, abandons, buys, runs low, goes quiet), which means every recipient is at a live decision point, while a campaign lands on the whole engaged list on a calendar date regardless of anyone's state. The 18x revenue-per-recipient spread is the price of relevance measured directly. It is also why the split is diagnostic rather than cosmetic: a healthy split means the account is capturing its lifecycle moments, and an unhealthy one means money is leaking at specific, findable points, which is why the flow stack gets built before the campaign calendar gets optimized in every account we run.
How to pull your number, precisely
Klaviyo's dashboard makes this a two-minute exercise: attributed revenue for the trailing 90 days, split by flows versus campaigns, with three honesty conditions. Use the same attribution window for both sides (the defaults are fine; what invalidates the read is changing them mid-comparison). Exclude the current month if you are inside a major promotional window, because BFCM legitimately swings the split campaign-ward and reads as a false signal. And note your engaged-list definition while you are there, because the third number that contextualizes the split is campaign audience size: a shrinking engaged segment inflates the flow share without anything improving.
Reading your split: the stage-adjusted targets
- Under $5M: 25 to 35% from flows. Younger brands skew campaign-heavy legitimately: the list is growing fast (so welcome-flow revenue is a big share of flow revenue), launches and promos drive discovery, and several lifecycle flows barely have populations yet (a 2,000-customer brand's winback segment is a rounding error). Below 25% almost always means missing flows, not strong campaigns.
- $5M to $20M: 40 to 50%. The maturing band, where replenishment, post-purchase, and recovery flows should be complete and tuned, and where the customer base is finally large enough that lifecycle events fire constantly. Stuck at 30% here is the most common audit finding, and it usually traces to the missing high-leverage flows: replenishment and back-in-stock lead the list, per the audit checklist.
- Above $20M: 50 to 60%, top decile 58 to 65%. At scale the customer base is large enough that lifecycle events outnumber calendar moments; the automated layer becomes the majority engine, and campaign strategy shifts toward the demand-creation role that feeds it.
The worked math: what a split problem costs
Take a $8M brand doing $2M through email (a healthy 25% email share) at a 30% flow split: $600K flow revenue, $1.4M campaign revenue. The stage target says 40 to 50%, so the flow layer is underperforming by $200K to $400K a year against peers, and the gap is not abstract: it lives in specific missing or mistimed flows. Using the published per-flow benchmarks, an unbuilt replenishment flow on a consumable catalog (10 to 15% conversion on reminders), an unarmed back-in-stock flow (7.9% email conversion), and a recovery flow running at the 3.33% average instead of the 7.69% top decile (the published gap) will jointly account for most of a gap that size. The split tells you money is missing; the stack guide tells you which rooms to search.
When the flow share is too low: the fix list, in order
First, events: confirm Placed Order, Checkout Started, Added to Cart, Viewed Product, and the delivered event all fire with live volume, because a flawless flow on a dead event is a parked car, and broken onsite tracking after a theme change is the most common silent killer.
Second, coverage: run the four questions and list the flows your brand type owes versus what exists. Build in the roadmap's order: money layer, category heavy-hitters, lifecycle, hygiene.
Third, timing math: quantity-blind replenishment clocks, flat 90-day winbacks on 30-day products, post-purchase counted from order date instead of delivery. These leak quietly because the flows technically run.
Fourth, entry-email quality: only now does copy matter, and the entry email of each flow first, because revenue concentrates there in every build. A low flow share is a coverage and plumbing problem far more often than a quality one, and treating it as a copywriting brief wastes the quarter.
When the flow share is too high: the less famous failure
A 70% flow share is not a trophy; it usually means the campaign layer is asleep. The symptoms: a calendar that only sends during sales, an engaged segment shrinking because nothing non-promotional maintains the relationship, flow revenue itself plateauing because fewer warmed customers are entering the lifecycle moments flows harvest, and the whole program's revenue quietly becoming a function of paid acquisition feeding the welcome flow. The diagnosis check: pull campaign sends per month and the engaged segment's 90-day trend; a quiet calendar plus a shrinking segment confirms it. The fix is the four-job calendar at the cadence the formula supports: campaigns create the demand and engagement that flows then harvest, and a program that only harvests eventually runs out of field.
Moving the number: a realistic quarter-by-quarter arc
For the low-split brand: quarter one is events plus the two biggest missing flows, and the split typically moves 5 to 10 points because the missing flows were the largest leaks. Quarter two is timing math and the remaining stack, worth another few points. Quarter three is entry-email optimization against the testing hierarchy, slower but compounding. Expecting the full journey from 25% to 45% inside one quarter sets up a disappointment that the arithmetic never promised: flow revenue builds as populations flow through triggers, and several flows (winback, sunset-recovered re-engagement) take a full cycle to show their number at all.
The measurement honesty rules
- Same attribution window for both sides: comparing flow revenue on one window against campaign revenue on another manufactures whatever story you want. Klaviyo's defaults are fine; changing them mid-year invalidates your trend.
- Judge on clicks and orders, never opens, per the standing MPP rule, and remember flows send to tiny precise audiences: rate comparisons (RPR, placed-order rate) are meaningful, volume comparisons are not.
- Watch the split's trend, not just its level: a stable 45% with both sides growing is health; a rising share caused by campaign revenue shrinking is decay dressed as progress. The same number can be good news or bad news, and only the components say which.
- Exclude the BFCM window from the trend read: the split legitimately swings campaign-ward in promotional peaks and back after, per the calendar's seasonal overlay.
- Sanity-check against total email share: email at 15 to 30% of store revenue is the common healthy band for DTC; a perfect internal split on a 5% email share means the whole channel is underbuilt, and the split was the wrong question.
Frequently asked questions
What percentage of email revenue should come from flows?
By stage: 25 to 35% under $5M, 40 to 50% from $5M to $20M, 50 to 60% above $20M, against a cross-industry baseline where flows earn nearly 41% of email revenue from 5.3% of sends.
Why do flows convert so much better than campaigns?
Timing, not copy: flows fire at individual decision points while campaigns land on calendar dates. The result is an 18x revenue-per-recipient spread and 13x placed-order rates in Klaviyo's published data.
My flow share is 20%. What do I fix first?
In order: events, coverage (the missing flows from the stack guide), timing math, then entry-email copy. Expect the split to move 5 to 10 points in the first quarter from coverage alone, then compound slower.
Can the flow share be too high?
Yes: past roughly 60 to 65%, check whether campaigns have simply gone quiet and the engaged segment is shrinking. Flows harvest engagement; campaigns create it, and a harvest-only program shrinks its own field.
How fast can the split improve?
Coverage fixes move it within a quarter; timing and copy fixes compound over two more. Flow revenue builds as customer populations flow through triggers, so the full journey from a bad split to a stage-appropriate one is a two-to-three-quarter arc, not a sprint.
Does the split change during BFCM?
It should: promotional peaks legitimately swing revenue campaign-ward. Read the split's trend on non-peak months and let the season do what seasons do.