Most media budgets are built backwards. A number is chosen for the year, split across channels by habit, and then defended with last year's spreadsheet. The month the results disappoint, nobody can say which assumption was wrong.
Start from contribution, not from a percentage
Before choosing channels, write down what a new customer is worth to you after delivery costs, and how much of that you are willing to spend to acquire one. That single number decides whether a channel is viable, and it survives changes in platform pricing that a fixed percentage of revenue does not.
Split the budget into three buckets
Divide spend into proven demand (channels already returning above your target), tests (new channels, audiences or offers with a fixed learning budget and a decision date), and defence (brand and retention work that protects existing revenue). Teams that only fund the first bucket stop learning; teams that only fund the second never compound.
Write the assumptions on one page
For every channel, record the expected cost per acquisition, the volume you expect, and the evidence behind both. Keep it to one page so it can be reviewed in a meeting rather than admired in a folder. When results diverge, you compare against the assumption instead of arguing about the outcome.
Give every test a decision date
A test without an end date becomes a line item. Set the date when the test starts, decide in advance what result counts as a pass, and move the budget on that date. This is the discipline that separates a budget that learns from a budget that simply spends.
Review monthly, re-plan quarterly
Monthly reviews should adjust pacing and creative, not the strategy. Re-planning quarterly gives tests enough time to produce a signal while keeping the plan responsive to real costs. Between those two rhythms, your budget stays defensible: every number has an assumption behind it, and every assumption has an owner.