How to Forecast Email and SMS Revenue Without Making Up the Upside
Build low, base, and high retention scenarios from a stable denominator, eligible audience, conversion economics, and explicit attribution assumptions.
- Build attributed-share and driver-based scenarios
- Separate attributed upside from incremental contribution
- Pressure-test a forecast against audience and margin
What makes an email and SMS forecast credible?
A credible forecast exposes its denominator, attribution model, eligible audience, conversion drivers, cost, margin, ramp, and uncertainty. It shows low, base, and high scenarios. It never treats the difference between current attributed share and a benchmark as guaranteed incremental revenue.
ZHS uses the operating range above to frame investigation, not to declare that every brand below it can collect the entire difference.
Which forecast models should you build?
Build two complementary models. The attributed-share model is fast and helps leadership understand scale. The driver model starts from real eligible audiences and behavior, which makes it better for resourcing and execution. If they disagree materially, investigate instead of averaging them.
Two forecast models, two different jobs
| Criteria | Attributed-share scenario | Driver-based scenario |
|---|---|---|
| Starts with | Store revenue and an attributed-share range | Eligible profiles, entries, sends, conversion, AOV, and repeat behavior |
| Best for | Strategic sizing and comparison | Execution plans and capacity |
| Main risk | Treating attribution gap as incremental money | False precision from weak input assumptions |
| Required output | Low, base, high attributed scenarios | Low, base, high driver scenarios plus constraints |
| Reconciliation | Must fit audience and economics | Must fit total-store and channel-share reality |
Use both models as cross-checks. Neither becomes a promise merely because the spreadsheet balances.
How do you build the attributed-share scenario?
Start with a normal monthly store-revenue denominator, current email and SMS attributed revenue under recorded platform settings, and three directional target shares. Apply the same dates, timezone, returns, cancellations, taxes, shipping, and discount treatment to every case.
Attributed-share scenario
store-revenue denominator × scenario attributed share- Email and SMS are combined only after reporting each separately
- Attribution settings are fixed and documented
- The scenario is attributed, not incremental, revenue
- The store can support the required audience, demand, inventory, and execution
Subtract current attributed revenue only to describe a modeled attribution gap, not guaranteed added revenue.
For a $500,000 denominator, a 20% low case equals $100,000 attributed to email and SMS combined, a 30% base case equals $150,000, and a 40% high case equals $200,000. Those are transparent scenarios. They are not evidence that moving from 10% to 30% creates $100,000 of incremental revenue.
How do you build the driver-based scenario?
Model each production surface separately: campaigns, welcome, checkout, cart, browse, post-purchase, replenishment, subscription recovery, and any other eligible lifecycle. Use real audience or entry volume, delivered rate, conversion, AOV, attributed or incremental factor, and expected ramp.
Driver-based message scenario
eligible volume × delivered rate × conversion rate × average order value × attribution or incrementality factor- Eligibility is deduplicated across overlapping paths
- Rates match the same message type and audience
- AOV is net of expected discounts and refunds when possible
- The incrementality factor is explicit; use attributed revenue when causal evidence is unavailable
Sum individual surfaces, then reconcile the total against store revenue and the combined channel-share range.
How should the forecast ramp over time?
Do not switch the full scenario on in month one. Forms need traffic, lists need net growth, flows need eligible entries, domains may need warmup, campaigns need production capacity, and experiments need enough observations. Tie the ramp to completed capabilities rather than arbitrary optimism.
A capability-based forecast ramp
- 01BaselineLock definitions and current performance
Save the denominator, attribution settings, channel split, list health, flow inventory, and production capacity.
- 02FoundationRepair eligibility and measurement
Consent, suppressions, integrations, authentication, capture, and reporting must work before scaling.
- 03CoverageBuild the highest-intent missing journeys
Forecast only the flows that have an owner, implementation plan, entry volume, and QA date.
- 04CadenceIncrease useful campaign production
Ramp one engagement track at a time while monitoring marginal performance and negative signals.
- 05OptimizationUpdate assumptions with observed cohorts
Replace planning inputs with actual entry, delivery, conversion, margin, and retention behavior.
Every step has evidence that can replace an assumption. That is how the forecast becomes more accurate over time.
How do you estimate incrementality?
Platform-attributed revenue and incremental revenue answer different questions. Attribution assigns credit under a rule. Incrementality estimates what would not have happened without the message. Use holdouts, randomized suppression, geo tests, or other causal designs where volume and risk justify them. When causal evidence is unavailable, show attributed revenue and state that limitation.
A blanket fraction of attributed revenue claimed as incremental is still an unsupported assumption unless it comes from relevant experiments. If you need a planning factor, label it as a low/base/high assumption and show how the decision changes across the range.
What costs and constraints belong in the forecast?
Include creative and strategy labor, platform fees, SMS credits, discounts, COGS, fulfillment, returns, refunds, support load, inventory, and the opportunity cost of overlapping promotions. Also include the constraint most forecasts omit: the number of quality campaigns, flows, assets, and tests the team can actually ship.
Forecast contribution
incremental collected revenue − COGS − fulfillment − discounts − channel cost − production cost − expected refunds- Incremental revenue is estimated separately from attributed revenue
- Costs use the same evaluation period
- Discount and refund behavior are reflected
- No capacity-dependent work is counted before it can ship
Revenue can rise while contribution falls. Forecast the business result, not only dashboard credit.
How do you pressure-test the model?
Pressure-test the model by changing one major assumption at a time, running low/base/high scenarios, and comparing the implied rates with observable historical cohorts. Reject any scenario that requires impossible audience overlap, conversion, capacity, or margin.
Forecast credibility checklist
- Store-revenue denominator is named
- Email, SMS, and combined attributed revenue are separate
- Attribution settings and dates are recorded
- Low, base, and high assumptions are visible
- Eligible audiences and flow entries support the volume
- Overlapping audiences are not double-counted
- Conversion and AOV match the audience and message type
- List growth and suppression are modeled net, not gross
- Domain warmup and production capacity constrain the ramp
- Inventory and offer conflicts are included
- Incremental and attributed revenue are never used interchangeably
- Contribution includes channel, production, discount, COGS, and refund costs
- Every assumption has an owner and replacement date
- Actuals update the model on a fixed cadence
If a forecast cannot pass this checklist, use it as a question list, not a commitment.
The ZHS operating rule is transparent uncertainty: show the scenarios, reveal the assumptions, separate attributed from incremental revenue, and let actual cohorts replace the model as the program ships.
Need help implementing this?
We build and manage complete email & SMS programs for DTC brands. Get a custom plan for your brand.
Apply Now