Meta Ads Manager: budgets, bidding and delivery

How Meta spends your ad budget: daily vs lifetime, campaign budget optimisation, bid strategies, and the learning phase you keep resetting.

Adam Murray4 September 20268 min read
On this page

You set a budget, picked a bid strategy because it was the default, and now the spend is uneven, the cost per result is jumping around, and you cannot tell whether the campaign is bad or just new. Almost none of that is your creative. It is how Meta's delivery system spends money, and it behaves in ways that are easy to fight by accident.

This guide is the concept map. It will not tell you which button is where, because Meta moves the buttons. It will tell you what each control actually does, so that when you open Ads Manager the layout makes sense and the defaults stop surprising you. Every specific number here is deferred to Meta's own documentation, because the specifics change and an out-of-date figure in a guide is worse than no figure at all.

How delivery actually works

Meta does not sell you a fixed number of impressions. It runs an auction for every ad it could show to every person, many times a second, and your ad competes in the auctions that match your targeting. You are not really bidding against a price. You are telling the system what a result is worth to you, and it works out where to spend to get you the most of that result for the money.

The winner of any given auction is not simply the highest bid. Meta describes the auction as balancing your bid, the ad's estimated action rate (how likely this person is to do the thing you optimised for) and its own quality and relevance signals. The practical consequence is the one worth remembering: a genuinely relevant ad can win against a higher bid, because the system is optimising for total value, not for your money alone. Meta explains the mechanics in its own Business Help Center, and it is worth reading their version rather than trusting any second-hand summary, including this one.

This is why "the algorithm" is not a mystery you can trick. It is an optimiser with an objective, and most delivery problems are really a mismatch between the objective you chose and the result you actually want.

Daily versus lifetime budgets

There are two ways to fund a campaign, and the difference is about time.

A daily budget is an average the system tries to spend each day, roughly evenly, for as long as the campaign runs. It suits always-on work with no end date: a campaign you intend to leave running and adjust as you learn.

A lifetime budget is a total for the whole flight, and the system is allowed to spend it unevenly across the dates you set, leaning into the days and times it expects to perform. It suits anything with a hard start and end: a launch window, a sale, an event. Lifetime budgets are also what unlock time-of-day scheduling, because the system needs to know the total and the window to plan the pacing.

Neither is more advanced than the other. Pick the one that matches whether your campaign has an end date. Meta documents how each behaves and what each enables; check the current behaviour in their budget documentation before you assume scheduling or pacing works a particular way.

Where the budget lives: campaign or ad set

You can set the budget at the campaign level or at the ad-set level, and this choice quietly decides who does the allocation.

Set it at the ad set and you are the allocator. Each ad set gets its own money and spends it regardless of how the others are doing. You keep control; you also keep the job of moving budget towards what works.

Set it at the campaign level (Meta's term for this has been campaign budget optimisation, and it appears in newer campaigns under the Advantage+ campaign budget banner) and the system allocates across your ad sets for you, in real time, pushing money towards the ad sets getting cheaper results. You give up manual control over the split in exchange for the optimiser reacting faster than you can.

The trade is genuine and depends on how much you trust your own audience structure. If you have deliberately separated audiences you want to fund on purpose (a prospecting set you refuse to starve, say), campaign-level allocation can defund it because it looks expensive early. If you mostly want the best results and do not care which audience delivers them, letting the campaign allocate is usually the calmer choice. Because Meta has renamed and reshaped this feature more than once, confirm what it is called and how it behaves today in Meta's current documentation rather than from memory.

Bid strategies, in plain terms

The bid strategy answers one question: how hard should the system push to spend your budget, and against what cost target? The names drift, so hold the concepts, not the labels.

Highest volume (you may see it described as lowest cost) tells the system to get you as many results as it can for the budget, with no cost ceiling. It will spend the whole budget and accept whatever cost per result the auction demands. It is the simplest starting point and the right default when you do not yet know what a good cost looks like, because it teaches you that number.

Cost per result goal (cost cap) tells the system to aim for an average cost per result around a figure you set. It will try to hold that average while still getting volume. Useful once you know from experience what a result is worth to you.

Bid cap is the manual control: a hard limit on what the system will bid in any single auction. It gives the most control and is the easiest to misuse: set it too low and the ad simply stops winning auctions and stops spending.

ROAS goal aims for a target return on ad spend rather than a target cost, and only makes sense when you are passing back purchase values the system can optimise against.

The honest sequence for most brands is to start on highest volume, learn what a result costs you, and only then reach for a cost or ROAS goal once you have a real number to aim at. Setting a cost cap on day one is guessing with extra steps. Meta keeps the current list and definitions in its bidding documentation, and the names there are the ones to trust.

The learning phase, and why editing hurts

When a new ad set starts (or when you make a significant edit to an existing one), Meta puts it into a learning phase. During this period the delivery system is still working out who to show the ad to, and performance is deliberately unstable. Cost per result in the first stretch is not a verdict on your creative. It is the sound of the system exploring.

The ad set exits learning once it has gathered enough of the events you optimised for, within a set window, to deliver stably. Meta publishes the specific event count and window, and it has changed before, so read the threshold in Meta's learning-phase documentation rather than trusting a number you saw quoted somewhere, including the number you may have seen in an older guide on this very library.

Here is the part that costs people money: a significant edit resets the learning phase. Changing the budget by a lot, changing the optimisation event, changing the audience or the creative can all send the ad set back to exploring, which throws away what it had learned and restarts the unstable period. So the instinct to "fix" a struggling new ad set by editing it daily is the thing keeping it unstable. You are never letting it finish learning.

The discipline that follows is simple. Give a new ad set the room to clear learning before you judge it. Make changes in deliberate batches rather than continuously. And size your budget and audience so that the ad set can realistically gather enough optimisation events to exit learning at all. An ad set optimising for a rare event on a tiny budget may never get there, which Meta's documentation is explicit about.

Where Acumin fits

Acumin does not spend your budget or place your bids. That happens in Ads Manager. What it helps with sits either side of the auction. The which posts deserve budget method uses your own organic results to decide what is even worth promoting before you fund it, so you are not paying to distribute something that never earned attention for free. And when you are choosing where the money should go across campaigns that already have real results, Ad Lab's budget comparison ranks them on actual recorded cost per result and only suggests moving money when the gap is genuinely large. It never invents a budget or models a return. Reading those results back automatically from Meta is pending Meta's app review, so for now you read the numbers in Meta's reporting and bring the decision to Acumin.

Do this today

Open your active campaign and find two things: whether the budget sits at the campaign or the ad-set level, and which bid strategy is running. If you cannot say why each is set the way it is, you have found the reason your delivery feels random. Decide on purpose (daily or lifetime for the time frame, highest volume until you know your cost), then leave it alone long enough to clear learning before you touch it again.

Written by
Adam Murray
Founder, Acumin

Adam builds Acumin. He spends his days on the same two problems this library is about: working out what a piece of content is actually worth, and getting a brief through production without it turning into something else.

Want this done on your own channel?

Acumin reads your public content and your category and hands back what to make next. Every call comes with its confidence and the evidence it rests on. The first Snapshot is free.