Skip to content
All help pages

How Adswave calculates budget pacing

The arithmetic behind the pacing view: a 30.4-day month, expected against actual spend over rolling windows, the colour bands, and where the number can be off.

Pacing answers one question per client: is actual spend where the monthly budget says it should be? This page shows the arithmetic exactly as the pacing view runs it, so the number on screen is one you can recompute.

The formula

daily budget  = monthly budget / 30.4
expected      = daily budget * days in the window
variance %    = (actual - expected) / expected * 100

The monthly budget is the sum of the budgets on the client's linked ad accounts: the Google accounts make up the Google budget and the Meta accounts the Meta budget. Actual spend is the Google Ads and Meta spend of those same accounts over the same days. Monthly budgets covers where the budget is entered.

A client on €3,000 a month has a daily budget of €98.68. Over a 14-day window the expected spend is €1,381.58. If the client spent €1,500, the variance is +8.6 per cent.

The windows

Each client card has a table of rolling windows: 2, 14, 30, 90, 180 and 365 days, plus one custom range you can set. Every window ends today. The table shows expected and actual spend for Google and for Meta next to the totals, and the card header shows the 30-day variance.

Every window is measured against the current month's budget, the long ones included. A 365-day window therefore answers "has this client been spending at today's agreed rate", not "did each past month hit its own budget".

Why 30.4

30.4 is 365 divided by 12, the average length of a month. It is the constant Google uses for its own monthly spending limit:

Your monthly spending limit (30.4 times your average daily budget for most campaigns) in any particular month.

Using the same constant means a Google daily budget set as the monthly figure divided by 30.4 paces exactly to plan. It also means the expected line is never exact for the calendar month you are in. For a client spending its budget evenly across the month, a window inside that month reads:

Days in the monthVariance for an even spenderColour
31about -1.9%green
30about +1.3%green
29about +4.8%amber
28about +8.6%red

So in February a perfectly paced client shows red. Know that before you quote a February figure to a client.

The colours

Each window's variance is coloured by its size, in either direction:

  • Green when it is within 2 per cent of expected.
  • Amber when it is within 5 per cent.
  • Red beyond 5 per cent.

Overspend and underspend get the same colours on purpose. A month that under-delivers costs a client as much as one that overspends.

The free budget pacing calculator works differently. It takes the days elapsed in the month, adds a projected month-end figure, and calls anything within 5 per cent "on track". The pacing view shows rolling windows and no projection.

Where the number can be off

  • Today counts as a whole day while today's spend is still partial, so every window leans toward underspend until the day is over. The effect is largest in the 2-day window, where today is half of it.
  • Recent figures can move. Reported spend can be revised after it first appears, so re-check a surprising number the next day.
  • Freshness. Figures are fetched live and cached for five minutes. Refresh clears the cache and uses one analysis run per workspace refreshed.
  • Currency. Spend from accounts in different currencies is added without conversion. Keep a client's accounts in one currency.
  • No budget. A client with no budget entered shows zero expected spend and a green 0.0 per cent. Enter budgets before relying on the colours.

What pacing does not do

It never changes a budget or a campaign. Adswave is read-only on both platforms: the pacing view tells you a client is 8.6 per cent ahead over 14 days, and you make the change in Google or Meta yourself.