1. Scope
Allocates a total marketing budget across channels with per-channel ROAS estimates and a blended return projection. It does not perform media-mix modelling or account for incrementality.
2. Inputs and outputs
Inputs
- totalBudget number (currency)
- channels array
Each: name, allocationPercent, estimatedRoas.
Outputs
- perChannelSpend
totalBudget × allocationPercent.
- perChannelRevenue
spend × roas.
- blendedRoas
totalRevenue / totalBudget.
Engine source: src/lib/marketing-budget-allocator/engine.ts
3. Formula / scoring logic
spend_i = total_budget * alloc_i
revenue_i= spend_i * roas_i
blended = sum(revenue) / total_budget 4. Assumptions
- Channel ROAS is independent (no saturation, no cross-channel halo).
- Allocation percentages must sum to 100%.
5. Data sources
This tool relies on user inputs and standard arithmetic; no external benchmark data is bundled. When a question depends on an industry reference (for example, typical churn rates or hourly-wage medians), the linked adjacent tools cite their primary sources on their own methodology pages.
6. Known limitations
- Real channels saturate at higher spend levels. Doubling Facebook spend does not double revenue past a point.
- Multi-touch attribution is a separate problem the tool cannot solve.
7. Reproducibility
Input
budget = $10,000; channels = [{SEO, 40%, 5×}, {Paid, 40%, 2.5×}, {Email, 20%, 8×}].
Expected output
spend = 4k/4k/2k, revenue = 20k/10k/16k, blended = 4.6×.
8. Change log
- 2026-04-24 methodology page first published.