Expense Modelling
Scaling ad budget without going broke: the payback check
Turning up the ad budget is the fastest way to grow a store — and the fastest way to run out of cash if the maths doesn't work. The good news: there's a simple check that tells you whether you're scaling or just spending. It comes down to margin and payback.
The payback check, in one line
For every €1 you put into ads, you get some revenue back (that's your ROAS), and a slice of that revenue is actual margin. Scaling is safe as long as the margin an order produces covers what you paid to win it, fast enough that you're not funding the gap out of your dwindling bank balance.
- Contribution margin per order — AOV minus product cost, shipping and fees.
- Cost to acquire an order — ad spend ÷ orders from ads (or 1 ÷ ROAS × AOV).
- The rule: if margin per order > acquisition cost, each new order adds cash. If not, you're buying revenue at a loss.
| Per order (€) | |
|---|---|
| Contribution margin | 29.40 |
| − Acquisition cost (ads ÷ orders) | 18.00 |
| Margin after acquisition | 11.40 |
So the discipline is simple: track your margin and stay inside it. Scale the budget while acquisition cost sits comfortably below contribution margin, and ease off when the gap closes. (If you haven't nailed your margin yet, what an order really costs shows exactly how to work it out.)
| Jan | Feb | Mar | |
|---|---|---|---|
| Ad budget (€) | 5,000 | 6,000 | 7,000 |
| Orders from ads | 280 | 280 | 280 |
| Revenue (€) | 50,000 | 50,000 | 50,000 |
| Acquisition cost / order (€) | 17.86 | 21.43 | 25.00 |
| Contribution margin / order (€) | 29.40 | 29.40 | 29.40 |
This keeps you solvent — but notice what the sheet quietly assumes. It holds orders (and revenue) fixed while you change the budget. In reality, spending more on well-targeted ads should win more orders, which lifts revenue too. The simple method is safe precisely because it ignores that upside: your projected revenue doesn't budge when the budget does. Great for staying inside your margin — but it undersells how much a bigger budget can actually grow the top line.
A 3× ROAS sounds great until you remember your product, shipping and fees eat most of the order. On a 30% margin, a 3× ROAS is barely break-even on the first order. Always run ad spend through margin, not just revenue.
Model the upside: split paid and organic revenue
To let the forecast actually react to your budget, split revenue into two streams. Organic revenue is the baseline you'd earn with no ads at all — repeat customers, SEO, word of mouth. Paid revenue is what the ad budget buys: ad budget × ROAS. Total revenue is just the two added together.
Now the model has a lever. Raise the ad budget and paid revenue rises with it at your ROAS, while organic stays put — so total revenue climbs by exactly the extra sales your spend should win. To see how far a bigger budget takes you, bump the budget row and watch paid and total revenue follow. You keep the payback check running on top: the extra revenue is only worth it while margin still covers the extra spend.
| Jan | Feb | Mar | |
|---|---|---|---|
| Ad budget (€) | 5,000 | 6,000 | 8,000 |
| ROAS (×) | 4.0 | 4.0 | 4.0 |
| Paid revenue (€) | 20,000 | 24,000 | 32,000 |
| Organic revenue (€) | 30,000 | 30,000 | 30,000 |
| Total revenue (€) | 50,000 | 54,000 | 62,000 |
The same model, kept in sync for you
You can absolutely build all of this by hand — but keeping the organic/paid split, ROAS and twelve months of budgets linked is real upkeep, and it goes stale the moment you forget an update. Foreqast wires it up out of the box: your Shopify orders and revenue and your Meta (Facebook / Instagram) ad spend sync in automatically, advertising is a driver that feeds paid revenue through your real ROAS, and the whole forecast recalculates the moment you change a budget — no formulas to maintain. Here's the same example inside the app:
| Forecast | Mar 26 | Apr 26 | May 26 | Jun 26 | Jul 26 | Aug 26 |
|---|---|---|---|---|---|---|
| Revenue | 50,000 | 50,000 | 54,000 | 54,000 | 54,000 | 62,000 |
| Shop revenue Σ organic + paid | €50,000 | €50,000 | €54,000 | €54,000 | €54,000 | €62,000 |
| Orders Shopify | 860 | 860 | 930 | 930 | 930 | 1,070 |
| Avg order value Shopify | €58 | €58 | €58 | €58 | €58 | €58 |
| Σ Organic revenue | €30,000 | €30,000 | €30,000 | €30,000 | €30,000 | €30,000 |
| Σ Paid revenue (budget × ROAS) | €20,000 | €20,000 | €24,000 | €24,000 | €24,000 | €32,000 |
| Cost of goods | 11,760 | 12,040 | 12,040 | 13,020 | 13,020 | 13,020 |
| COGS Σ prev-month orders × €14 | €11,760 | €12,040 | €12,040 | €13,020 | €13,020 | €13,020 |
| Avg purchase cost Manual | €14 | €14 | €14 | €14 | €14 | €14 |
| Marketing | 5,000 | 5,000 | 6,000 | 6,000 | 6,000 | 8,000 |
| Advertising driver-based | €5,000 | €5,000 | €6,000 | €6,000 | €6,000 | €8,000 |
| Ad budget | €5,000 | €5,000 | €6,000 | €6,000 | €6,000 | €8,000 |
| ROAS Manual | 4.0 | 4.0 | 4.0 | 4.0 | 4.0 | 4.0 |
| Other expenses | 9,400 | 9,400 | 9,400 | 9,400 | 9,400 | 9,400 |
| Other expenses last period | €9,400 | €9,400 | €9,400 | €9,400 | €9,400 | €9,400 |
Change a future ad-budget cell (one of the dashed pills) and it becomes a decision in the simulator, which replays the month-by-month cash impact before you commit. Either way — spreadsheet or app — the rule that keeps you solvent is the same: scale inside your margin.
- Know your contribution margin per order.
- Keep acquisition cost below it — that's the payback check.
- Simple: hold the margin line and grow steadily.
- Advanced: model budget → revenue together for faster, efficient growth.
Test a bigger ad budget before you spend it
Foreqast models budget, ROAS and revenue together and simulates the cash impact — so you scale inside your margin, not past it.
Get early access →No credit card required.
Prefer to read this on its own? Open the full article.