Methodology
ROAS to Contribution Planner methodology
Educational only: Business decision support, not accounting, tax or legal advice.
Privacy: Calculations run locally; Margin101 does not receive your commercial inputs.
Update policy: Reviewed when formulas or official dependencies change.
Scope: Market-neutral small-business planning using your own assumptions.
1. Formulas and units
CPAᵦ = CWhere
- C
- contribution before ads (currency units/order)Source: Business record
- CPAᵦ, CPAₜ, CPAₐ
- break-even, target and actual acquisition cost (currency units/order)Source: Calculated output
ROASᵦ = R ÷ CWhere
- R
- revenue per acquired order excluding indirect tax (currency units/order)Source: Business record
- C
- contribution before ads (currency units/order)Source: Business record
- ROASᵦ, ROASₜ, ROASₐ
- break-even, target and actual revenue return on ad spend (ratio)Source: Calculated output
CPAₜ = C − TWhere
- C
- contribution before ads (currency units/order)Source: Business record
- T
- contribution to retain (currency units/order)Source: User decision
- CPAᵦ, CPAₜ, CPAₐ
- break-even, target and actual acquisition cost (currency units/order)Source: Calculated output
ROASₜ = R ÷ (C − T)Where
- R
- revenue per acquired order excluding indirect tax (currency units/order)Source: Business record
- C
- contribution before ads (currency units/order)Source: Business record
- T
- contribution to retain (currency units/order)Source: User decision
- ROASᵦ, ROASₜ, ROASₐ
- break-even, target and actual revenue return on ad spend (ratio)Source: Calculated output
CPAₐ = S ÷ NWhere
- S
- campaign spend (currency units/period)Source: Business record
- N
- acquired orders (orders/period)Source: Business record
- CPAᵦ, CPAₜ, CPAₐ
- break-even, target and actual acquisition cost (currency units/order)Source: Calculated output
ROASₐ = (R × N) ÷ SWhere
- R
- revenue per acquired order excluding indirect tax (currency units/order)Source: Business record
- S
- campaign spend (currency units/period)Source: Business record
- N
- acquired orders (orders/period)Source: Business record
- ROASᵦ, ROASₜ, ROASₐ
- break-even, target and actual revenue return on ad spend (ratio)Source: Calculated output
P = (C × N) − SWhere
- C
- contribution before ads (currency units/order)Source: Business record
- S
- campaign spend (currency units/period)Source: Business record
- N
- acquired orders (orders/period)Source: Business record
- P, Pₜ, G
- campaign contribution, target total and target gap (currency units/period)Source: Calculated output
Pₜ = T × NWhere
- T
- contribution to retain (currency units/order)Source: User decision
- N
- acquired orders (orders/period)Source: Business record
- P, Pₜ, G
- campaign contribution, target total and target gap (currency units/period)Source: Calculated output
H = CPAₜ − CPAₐWhere
- CPAᵦ, CPAₜ, CPAₐ
- break-even, target and actual acquisition cost (currency units/order)Source: Calculated output
- H
- acquisition-cost headroom (currency units/order)Source: Calculated output
G = P − PₜWhere
- P, Pₜ, G
- campaign contribution, target total and target gap (currency units/period)Source: Calculated output
Money inputs and outputs use the currency selected in the scenario without changing the canonical methodology. Rates, margins, utilisation and buffers are entered as percentages and converted to decimal values for calculation.
2. Worked example
Input assumptions
The default fixture uses only user-entered records; every row below is formatted from the engine result.
Calculation and outputs
Example
The default fixture uses only user-entered records; every row below is formatted from the engine result.
- Break-even CPA
- 40.00 currency units
- Target CPA
- 30.00 currency units
- Break-even ROAS
- 2.50x
- Target ROAS
- 3.33x
- Actual CPA
- 24.00 currency units
- Actual ROAS
- 4.17x
- Campaign contribution
- 1,600.00 currency units
- Target contribution total
- 1,000.00 currency units
- Acquisition-cost headroom
- 6.00 currency units
- Gap to target
- 600.00 currency units
- Decision state
- Above target
The exact engine-derived outputs are shown in the labelled rows below.
Interpretation
Use contribution-based ROAS and target CPA as spending boundaries, not as guarantees of campaign demand or attribution.
3. Validation and boundary checks
- Target contribution must be below contribution before ads.
- Zero spend or zero orders produces only the ratios with valid denominators; zero spend and zero orders together is insufficient data, never break-even.
- Target gap equals acquisition-cost headroom multiplied by acquired orders when actual CPA exists.
4. Assumptions and source classification
- All values are user supplied, exclude indirect tax and use one consistent attributed-order basis.
- No platform, industry, attribution or conversion benchmark is used.
This planner has no current policy-data dependency. Its commercial assumptions are user supplied. Registered family-level regression suites exercise the shared business-logic engine and worked-result reconciliation.
5. Limitations
- Attributed orders may not equal incremental customers; revenue ROAS does not measure profit by itself.
- The model excludes refunds not already included in contribution, uncertain cash timing and tax advice.
This is educational decision support, not tax, accounting, legal or financial advice. Check the treatment of your actual transactions under the rules that apply to your business and seek qualified advice where appropriate.
6. Update and evidence policy
Registered family-level suites test formula invariants and example reconciliation; the release ledger records that coverage without claiming a separate oracle for every line of public copy. There is no official threshold or benchmark to refresh for this planner. Commercial inputs remain user-supplied because they vary by business and contract.
Change history
- : Initial public release of the planner and methodology after pre-launch calculation, content, source and interaction review.
Related reading
Guides to interpret the decision and its assumptions.
- Profit-First ROAS and CAC: Start With Contribution
Set break-even and target acquisition ceilings from contribution before advertising rather than revenue alone.
Read guide