Skip to main content
Card class: HeroCategory: Email Marketing
Healthy mid-market accounts run >40% of email revenue through programmes. Below = under-automated.

At a glance

Splits Dotdigital-attributed revenue into two buckets: Programmes (Dotdigital’s term for behaviourally-triggered automations, equivalent to Klaviyo “flows”) and Campaigns (one-off broadcasts to a list or segment). The mix is the single most diagnostic Dotdigital health number after revenue itself. Healthy mid-market UK and EU B2C accounts run above 40% of email revenue through programmes; below 40% means the account is under-automated and is leaving easy revenue on the table.
What it countsprogrammeRevenue / (programmeRevenue + campaignRevenue) summed across the period. Sources: /v2/programmes/{id}/summary and /v2/campaigns/{id}/summary aggregated.
Why programmes win on efficiencyProgrammes are triggered by behaviour (cart abandonment, browse abandonment, post-purchase, replenishment, win-back). Each entry is an audience of one with high purchase intent at a precise moment. Per-recipient revenue is typically 6 to 8x higher than a campaign send.
Why campaigns still matterProgrammes only fire when a contact takes a specific action; campaigns reach the entire active list. For broad-reach moments (BFCM, Boxing Day, new-collection launches, sale events) campaigns are the only tool. The right balance is “programmes always-on, campaigns for tentpoles”.
What “above 40%” meansThe brand has working Welcome, Abandoned-Cart, and Post-Purchase programmes at minimum, plus probably a Browse-Abandon and a Win-Back. Mature accounts hit 50 to 65%. Above 70% usually means campaigns are under-leveraged, not that programmes are too good.
What “below 40%” meansEither programmes are not built (most common in newly-onboarded accounts, the Dotdigital implementation team typically builds 2 to 4 in the first 90 days), or programmes exist but are paused/erroring, see Active Programs.
Vs Klaviyo benchmarkKlaviyo brands typically run 35 to 55% flow share at maturity. Dotdigital programmes hit a similar band but the lever to get there is heavier engineering (Dotdigital programmes use the EasyEditor visual builder; Klaviyo flows have a richer trigger library out of the box).
Attribution modelBoth programmes and campaigns share the 7-day click + 1-day view default attribution window. The split between them is at the send level (was the contact added to a programme, or did they receive a campaign blast?), not the attribution level.
Time window90D (default 90D for stable mix view, programmes are slower to accumulate revenue than campaigns)
Alert triggerprogramme share <40%
Rolesowner, marketing, finance

Calculation

Calculated automatically from your Dotdigital data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A UK gifting brand running on BigCommerce with Dotdigital. List size 312,000. The 90-day window covers 02 Feb 26 to 02 May 26 (which spans Mother’s Day on 14 Mar 26 and Easter on 05 Apr 26, both major calendar moments).
Source bucketSendsRecipientsRevenuePer-recipient revenue
Campaigns total (8 broadcasts)82,360,000£346,000£0.15
Mother’s Day (3 sends)3894,000£198,000£0.22
Easter early-bird1298,000£42,000£0.14
Spring catalogue2596,000£58,000£0.10
Brand stories newsletter (×2)2572,000£48,000£0.08
Programmes total (6 active)rolling67,200 entries£284,000£4.23
Welcome (5-step)rolling18,400 entries£39,000£2.12
Abandoned-cart (3-step)rolling22,800 entries£148,000£6.49
Browse abandonmentrolling14,200 entries£18,000£1.27
Post-purchase replenishmentrolling7,400 entries£52,000£7.03
Win-back (90D inactive)rolling3,200 entries£24,000£7.50
Birthday programmerolling1,200 entries£3,000£2.50
Total Dotdigital revenue£630,000
Programme share45.1%
What’s interesting:
  1. 45.1% programme share is healthy, just above the 40% threshold. The brand has the full lifecycle programme stack and revenue is balanced between always-on and tentpole moments.
  2. Per-recipient revenue is 28x higher on programmes (£4.23 vs £0.15). This is the structural advantage of behavioural triggers, the right message at the right moment to a small audience beats a broad blast every time.
  3. The Mother’s Day campaign was disproportionately effective at £0.22 per recipient. UK gifting brands earn most of their annual revenue from 4 calendar moments (Valentine’s, Mother’s Day, Father’s Day, Christmas); the campaign-revenue line is dominated by these.
  4. The Welcome programme is under-performing at £2.12 per entry. Compare against the 5 to 10 GBP per entry benchmark for healthy Welcome flows. The brand should review the welcome content (probably too brand-heavy, not enough product or discount). Open Welcome Programme Status for the diagnosis.
  5. Browse-abandon programme is the weakest at £1.27 per entry. This is normal-low; browse-abandon audiences have lower intent than cart-abandon. The brand could improve by adding a 2nd-step delay of 24h with a “limited stock” hook, but the structural ceiling is much lower than cart-recovery.
If this brand removed all programmes for 90 days, total Dotdigital revenue would drop from £630,000 to roughly £346,000, a 45% loss. That is the value of “always-on” automation, the campaigns alone aren’t enough.

Sibling cards merchants should reference together

CardWhy pair it with Programme vs Campaign Revenue Mix
Dotdigital Email-Attributed RevenueThe total this card splits. The mix is meaningless without the headline.
Active ProgrammesThe supply side. If only 2 programmes are running, programme share will struggle to clear 30%.
Welcome Programme StatusThe single highest-leverage programme. If it’s broken or paused, programme share drops 5 to 8 percentage points.
Abandoned-Cart Programme StatusUsually the largest programme by revenue. Pausing it drops programme share 10 to 15 percentage points.
Programme Step Drop-OffDiagnoses why a programme is under-performing. Pair with a low programme share to find the broken step.
Top Campaigns by RevenueThe campaign side of the split. Useful for confirming campaigns are pulling their weight too.
Klaviyo Flow Revenue ShareThe Klaviyo equivalent. Mature brands hit similar 40 to 55% bands across both platforms.
Mailchimp Automation Revenue ShareThe Mailchimp equivalent. Mailchimp accounts typically run lower programme share (25 to 35%) because automation depth is shallower.

Reconciling against the vendor’s own dashboard

Where to look in Dotdigital: r1-app.dotdigital.com → Insights → Performance Overview, then toggle the Source filter between Campaigns and Programmes. Sum the two for the denominator. Or use the Custom Reports builder to create a side-by-side view; Dotdigital does not ship this split as a default card. For the per-programme drill-down: Programmes → Reports → Programme Performance. For per-campaign: Campaigns → Reports → Campaign Performance. Why our number may legitimately differ from Dotdigital’s dashboard:
ReasonDirection of divergence
Triggered campaigns. Dotdigital allows “triggered campaigns” (single-send messages triggered by an API call, distinct from programmes). Vortex IQ classifies these as Programme revenue; Dotdigital’s UI may class them as Campaigns depending on the report.±2 to 5 percentage points on programme share
Time-zone. The 90D window will differ by up to 24h at each boundary between UTC (Vortex IQ) and account locale (Dotdigital).±0.5 percentage points at the boundary
Conversion-window setting. Programmes accumulate revenue over the 7-day click window; campaigns peak quickly and fade. The split varies during the trailing 7 days of any window. Use the 90D window to absorb this.None on stable 90D readings
Cross-connector reconciliation: The programme/campaign split is a definitional pattern across email platforms. Each platform names it differently (Klaviyo: flows vs campaigns; Mailchimp: automations vs campaigns; Brevo: workflows vs campaigns) but the metric shape is the same.
CardExpected relationshipWhat causes legitimate divergence
klaviyo.klv_flow_revenue_shareSame shape, similar healthy band (35 to 55%)A brand running both (rare) typically sees Klaviyo flow share 5 to 10 percentage points higher because Klaviyo’s flow library is richer out-of-the-box.
mailchimp.mc_automation_revenue_shareSame shape, lower healthy band (25 to 35%)Mailchimp automation depth is shallower; ecommerce automations (cart abandon, browse abandon) require manual setup with the Connected Site app.
brevo_sendinblue.bs_workflow_revenue_shareSame shapeBrevo also UK and EU shaped; expect comparable bands.

Known limitations / merchant FAQs

My programme share is 22%. Where do I start? Build the Welcome programme first if it doesn’t exist; it’s the highest-leverage programme for new accounts. Second, the Abandoned-Cart programme. Third, the Post-Purchase replenishment or thank-you flow. These three together typically lift programme share from 20% to 40% within 60 days of being live, because they capture revenue from contacts who would otherwise have only received campaign blasts. Dotdigital’s implementation team can build these in EasyEditor in 2 to 3 working days; ask the account manager for a “lifecycle programme review”. My programme share is 70%. Is that bad? Probably yes. 70%+ usually means campaigns are under-leveraged, not that programmes are over-performing. Healthy mature accounts run 50 to 60%. Above 70% the brand is either: (a) afraid to send campaigns because of past deliverability issues, (b) understaffed on email content production so they’re relying entirely on automations, or (c) a low-frequency luxury brand where campaigns are intentionally rare. The fix is to add 1 or 2 well-targeted campaigns per month and watch the mix re-balance. What counts as a “programme” vs a “campaign” in Dotdigital’s data model? A programme is a multi-step automation built in the EasyEditor visual builder, triggered by a contact-property change, an event from the Insights pixel, or an API call. A campaign is a one-off send to a list or segment, optionally scheduled. The API endpoints are different (/v2/programmes vs /v2/campaigns), and Dotdigital treats them as distinct entities throughout. Triggered campaigns (single-send programmes that fire once per trigger, like a password reset) are a grey area; Vortex IQ classes them as programme revenue. My Welcome programme is set up but only has 1 step. Should I expand it? Almost certainly yes. Single-step Welcomes capture roughly 60% of the revenue a 4 to 5 step Welcome would capture; the rest comes from the second and third sends as the contact gets re-exposed and remembers they signed up. The Dotdigital recommendation is 4 steps over 7 days: T+0 (immediate brand introduction + discount), T+2d (best sellers or new arrivals), T+5d (social proof + community), T+7d (urgency or expiring discount). Why is the 90D window the default? Why not 30D? Programmes accumulate revenue slowly. A welcome flow signed up today has up to 7 days of programme exposure plus a further 7 days of click-window for revenue attribution. The 30D window can under-state programme revenue if the start of the window is during a low-acquisition period; 90D smooths this. Use 30D for campaign-only views, 90D for the mix. My Easter campaign sent £58,000 in revenue but the Easter programme only fired 200 times. Is the programme working? Yes, this is the structural pattern. Programmes target audiences of one with high intent; campaigns blast wide with lower intent. A 200-trigger programme generating, say, £4,000 is healthy at £20 per trigger; a 250,000-recipient campaign generating £58,000 is healthy at £0.23 per recipient. Don’t compare totals, compare per-recipient or per-trigger efficiency. I’m migrating from Mailchimp. Will my programme share increase? Probably yes, by 10 to 20 percentage points within the first 90 days, but the credit goes to building proper programmes during migration, not to the platform itself. Mailchimp users typically migrate with 1 or 2 basic automations; a Dotdigital onboarding includes 4 to 6 programmes built by the implementation team. The platform difference is real but the building-during-migration effect is bigger. Can I see programme share by individual programme? This card shows the aggregate split. For per-programme contribution use Top Programmes by Revenue (when available) or pull the programme-level summary from Dotdigital’s Programmes → Reports view directly. My programme share dropped 8 percentage points in the last 30 days, but no programme was paused. What changed? Almost always a campaign-volume increase, not a programme problem. Check Campaign Sends Trend: if campaign sends jumped (e.g. a tentpole moment), the denominator grew while programme revenue stayed flat, so the share dropped. This is healthy unless the tentpole campaign cannibalised programme conversions, which can happen when a Black-Friday campaign reaches contacts who would otherwise have triggered the abandoned-cart programme later.

Tracked live in Vortex IQ Nerve Centre

Programme vs Campaign Revenue Mix is one of hundreds of KPI pulses Vortex IQ tracks across Dotdigital and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.