> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Spend vs Budget, AdRoll

> Spend vs Budget for AdRoll stores. Tracked live in Vortex IQ Nerve Centre. How to read it, why it matters, and how to act on it.

**Metrics type:** [Key Metrics](/nerve-centre/overview#metrics-types-explained)  •  **Category:** [Ad Platform](/nerve-centre/connectors#connectors-by-type)

## At a glance

> Pacing of AdRoll media spend against the configured budget cap for the current period: **`SUM(spend) / budget_cap`** for in-flight line items or the advertisable-level monthly budget, expressed as a percentage with a target line at `100% × (days_elapsed / days_in_period)`. AdRoll's auto-bid optimiser can over-pace by up to 20% on any single day on favourable auction days; the card surfaces both the daily wobble and the period trajectory so merchants can distinguish normal optimiser-front-loading from genuine runaway.

|                                      |                                                                                                                                                                                                                                                            |
| ------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **What it counts**                   | Period-to-date spend as a percentage of the period's budget cap, summed across all active line items in an advertisable. Includes display, native, video, and email-amplification spend if the merchant runs the orchestrated suite.                       |
| **Cost basis**                       | CPM-dominant on AdRoll. The card sums billable media cost regardless of bid type.                                                                                                                                                                          |
| **Currency**                         | Single advertisable currency. Multi-currency merchants run separate advertisables and pace each independently.                                                                                                                                             |
| **Conversion attribution**           | Not relevant for pacing. (For ROAS pairing: 30D click + 7D view default on AdRoll.)                                                                                                                                                                        |
| **Attribution window**               | N/A for pacing.                                                                                                                                                                                                                                            |
| **Pacing target**                    | Linear by default: a 30-day flight should be at `~50%` of cap on day 15. Auto-bid lift days can push the daily figure 20% above linear; over a 7-day average the variance smooths out.                                                                     |
| **Daily over-delivery rule**         | AdRoll auto-bid can over-deliver up to 20% above the daily cap on any single day if it identifies a high-conversion-probability auction; self-corrects within a 7-day pacing window. **Daily over-pace is normal; weekly over-pace is not.**               |
| **iOS 14.5+ ATT impact on the card** | None on the pacing math. Indirectly, post-ATT CPM inflation pushes the same impression volume to higher cost, so the same campaign hits cap sooner than pre-ATT plans assumed. Plan for 15 to 30% higher unit-cost when budgeting iOS-heavy advertisables. |
| **Time window**                      | `T/30D` (today vs 30D plan). For weekly or quarterly budgets, the card scales the target line accordingly.                                                                                                                                                 |
| **Alert trigger**                    | `>90% used before 80% of period`. Fires when spend has consumed more than 90% of the budget before 80% of the period has elapsed, the campaign will exhaust before period-end without intervention.                                                        |
| **Roles**                            | owner, marketing, finance                                                                                                                                                                                                                                  |

## Calculation

Calculated automatically from your AdRoll data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

## Worked example

A US apparel DTC brand running AdRoll across site retargeting, lookalike prospecting, and email-orchestration. Monthly AdRoll budget \$20,000. Period 01 Apr 26 to 30 Apr 26. Today is 22 Apr 26 (day 22 of 30, 73% elapsed). Account currency USD.

| Line item                                    | Period budget (\$) | Spend MTD (\$) | % of cap | Linear target | Variance from target |
| -------------------------------------------- | ------------------ | -------------- | -------- | ------------- | -------------------- |
| Site retargeting (web visitors, 30d)         | 9,000              | 7,800          | 87%      | 73%           | +14pp ahead          |
| Lookalike prospecting (purchaser LAL)        | 6,500              | 4,200          | 65%      | 73%           | -8pp behind          |
| Cart-abandoner email + display orchestration | 3,000              | 2,400          | 80%      | 73%           | +7pp ahead           |
| Brand-safe contextual prospecting            | 1,500              | 700            | 47%      | 73%           | -26pp behind         |
| **Account total (this card)**                | **\$20,000**       | **\$15,100**   | **76%**  | **73%**       | **+3pp ahead**       |

Reading this:

1. **Account-level pacing is +3pp ahead, on the edge of the alert window but not over.** Not yet actionable at the rollup; the line-item picture is the real story.
2. **Site retargeting at 87% of cap on day 22 will exhaust \~day 25.** Five days of retargeting darkness at month-end means cart-abandonment recovery loses its primary channel. Decision needed by day 24: lift the cap by \$1,000 (if marginal ROAS still beats break-even, retargeting on AdRoll typically runs 6 to 10× ROAS, so the answer is usually yes), or accept the dark week.
3. **Lookalike prospecting at -8pp behind** is the auto-bidder pulling back, often after a CPA-target threshold was reached. Check the Insights Tag conversion fires; if the prospecting funnel's measured CPA is just above the configured target, the bidder is throttling. Loosen the target if you want the volume.
4. **Brand-safe contextual prospecting at -26pp behind** is suspicious. Either the line item's bid floor is too low to win the brand-safe inventory, or the audience is too narrow. Audit in AdRoll → Campaigns → Diagnostics; if the bid is the issue, lift it 15 to 25%; if the audience is too narrow, broaden the contextual category list.
5. **Cart-abandoner orchestration at +7pp ahead** is the highest-ROAS line item working as expected; the auto-bid is rightly putting more spend behind it. Don't intervene; this is precisely the front-loading the optimiser is supposed to do on a high-ROAS warm audience.

Pacing decision tree:

* **Account-level on target, line items diverging**: rebalance per line item; ignore the rollup.
* **Account-level ahead by 5 to 10pp**: monitor; usually self-corrects within 7 days.
* **Account-level ahead by 15+ pp on day 15**: investigate, was a cap lifted, did auto-bid front-load on a high-conversion day, did a competitor pull back from the auction?
* **Account-level behind by 10+ pp**: investigate, are there approval blocks on creative, is the CPA target too tight, has the audience saturated?
* **Account-level pacing flat for 48 hours**: campaign delivery interrupted. Check (a) account-level approval status, (b) billing payment method, (c) creative-rejection notifications.
* **Daily spend exceeded daily cap by >20%**: the auto-bidder over-delivered on an opportunistic auction. Self-corrects across the flight; only escalate if the over-deliver pattern recurs daily.

## Sibling cards merchants should reference together

| Card                                                                                | Why pair it with AdRoll Spend vs Budget                          | What the combination tells you                                                                           |
| ----------------------------------------------------------------------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| [Total Spend](/nerve-centre/kpi-cards/adroll/total-spend)                           | The numerator in absolute terms.                                 | Whether absolute spend rose or pacing target is unusually low.                                           |
| [ROAS](/nerve-centre/kpi-cards/adroll/roas)                                         | Pacing-decision context.                                         | Pacing ahead at high ROAS = green light to expand cap; pacing ahead at low ROAS = stop signal.           |
| [Spend by Campaign](/nerve-centre/kpi-cards/adroll/spend-by-campaign)               | Per-line-item pacing.                                            | Account-level on-target masks per-line-item variance. Always read both.                                  |
| [Wasted Spend](/nerve-centre/kpi-cards/adroll/wasted-spend)                         | Drag on pacing.                                                  | Zero-conversion line items still count toward cap; pause them to free pacing capacity.                   |
| [Conversion Lag](/nerve-centre/kpi-cards/adroll/conversion-lag)                     | Lag between spend pacing and revenue settling.                   | Avoids pacing cuts that ignore late-arriving view-through revenue.                                       |
| [Total Revenue](/nerve-centre/kpi-cards/adroll/total-revenue)                       | The "is the spend working" check.                                | Spend ahead but revenue flat = pacing into ineffective inventory.                                        |
| [Shopify / BC / Adobe Total Revenue](/nerve-centre/kpi-cards/shopify/total-revenue) | Commerce-platform truth-side check on AdRoll-attributed revenue. | Reality check before requesting a cap lift.                                                              |
| [Criteo Spend vs Budget](/nerve-centre/kpi-cards/criteo/spend-vs-budget)            | Cross-retargeting pacing peer.                                   | If AdRoll is on cap-pace and Criteo is behind, redirect new budget to AdRoll for the rest of the period. |

## Reconciling against the vendor's own dashboard

**Where to look in AdRoll's own dashboard:**

> [AdRoll Dashboard → Campaigns → Budget Pacing](https://app.adroll.com/campaigns) (filter to the same advertisable, line item, and budget period used in this card).

The Budget Pacing view shows period-to-date consumption with a target line, mirrors what this card surfaces. The header summary on the *Home* tile shows account-level pacing. Reconciles within sub-percent rounding once the API's 2 to 4 hour ingest lag has caught up.

**Why our number may legitimately differ from AdRoll:**

| Reason                      | Direction                           | Why                                                                                                                                                                                                                                                                         |
| --------------------------- | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Time zone**               | Boundary days off                   | AdRoll uses the advertisable's configured time zone (set at account creation, mutable via support request); this card uses UTC. For most accounts the gap is sub-percent; for US Pacific advertisables on calendar-month periods the boundary can shift the figure 2 to 5%. |
| **Mid-period cap changes**  | Either direction                    | If the merchant lifted or cut the budget cap mid-period, the card's percentage recalculates against the latest cap. Historical AdRoll screenshots may show pre-change percentages.                                                                                          |
| **Auto-bid over-delivery**  | Same in both                        | Daily over-delivery up to 20% is normal; both views show it.                                                                                                                                                                                                                |
| **Ingest lag**              | Ours lower for "today"              | 2 to 4 hour API lag means today's percentage is incomplete until catchup.                                                                                                                                                                                                   |
| **Currency**                | None expected                       | Both use advertisable currency.                                                                                                                                                                                                                                             |
| **Multi-line-item rollups** | Card defaults to advertisable-total | If line items have separate budgets and the merchant wants per-line-item pacing, configure separate budget IDs. The default rollup view sums them.                                                                                                                          |

**Cross-connector reconciliation:**

| Source                                                                                     | Expected relationship                                                | What causes legitimate divergence                                                                                            |
| ------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| [`criteo.cri_spend_vs_budget`](/nerve-centre/kpi-cards/criteo/spend-vs-budget)             | Cross-retargeting pacing peer.                                       | Use to rebalance retargeting allocation in mid-period if one platform is on track and the other lagging.                     |
| [`facebook_ads.fac_spend_vs_budget`](/nerve-centre/kpi-cards/facebook-ads/spend-vs-budget) | Independent platform pacing.                                         | Cross-platform allocation: if AdRoll is on-target and Meta is exhausted, redirect new budget to AdRoll.                      |
| [`google_ads.gads_spend_vs_budget`](/nerve-centre/kpi-cards/google-ads/spend-vs-budget)    | Independent platform pacing.                                         | Same as Meta.                                                                                                                |
| **Accounting / GL system** (Xero, QuickBooks, NetSuite)                                    | Period budget here should match the GL planning module's allocation. | If the GL says $20k allocated to AdRoll but the card shows a $17k cap, the cap was set incorrectly in AdRoll. Fix at source. |

***

<details>
  <summary><em>Documentation cross-reference (post-ATT pacing planning)</em></summary>

  AdRoll budgets set in 2020 to 2021 (pre-ATT) often pace the same nominal dollars but reach materially less audience. The auto-bidder, faced with a smaller match-rate iOS audience, shifts spend toward broader Android and desktop inventory, which can be cheaper-CPM but also lower-conversion. **Pre-ATT-set budget caps may pace identically while delivering 30 to 50% less revenue impact**.

  Two practical adjustments for post-ATT planning:

  1. **Re-baseline the budget against ROAS, not impression volume.** A $20k AdRoll budget that produced $80k in 2021 may produce \$48k in 2026 against the same nominal ROAS expectation; reset the goal to reflect today's economy of the channel.
  2. **Pace alerts should compare to a rolling 90-day average, not last-year-same-month.** Year-over-year comparisons on AdRoll pacing are unreliable; the underlying audience is materially different.

  The [`adr_total_revenue`](/nerve-centre/kpi-cards/adroll/total-revenue) and [`adr_roas`](/nerve-centre/kpi-cards/adroll/roas) cards are the right pair to read alongside this one when planning future periods; pacing alone gives a false sense of stability if the underlying channel economics have shifted.
</details>

## Known limitations / merchant FAQs

**My AdRoll budget says I'm at 92% on day 22 of 30; will I exhaust early?**
Likely yes. At 92% on day 22, daily run-rate of (92% / 22) × 30 projects to \~125% of cap by day 30, exhaustion around day 24. The decision tree: (a) is marginal ROAS still beating break-even? Retargeting on AdRoll typically runs 6 to 10× ROAS, so usually yes. Lift the cap by 25%. (b) If you're capital-constrained, accept early exhaustion; the channel goes dark for the last week. (c) Reallocate from a behind-pacing line item like brand-safe contextual prospecting if it's running below 50% pace.

**Why is my AdRoll pacing 18% ahead of linear today?**
AdRoll's auto-bid optimiser front-loads spend on auctions it identifies as high-conversion-probability. On a Friday or Sunday-evening for apparel, on a holiday-week morning for travel, the optimiser will deliberately spend ahead of pacing. **Daily wobble of 15 to 20% is the optimiser doing its job**; weekly wobble of 15+% is the runaway signal. Look at the 7-day rolling pace in [Spend by Hour](/nerve-centre/kpi-cards/adroll/spend-by-hour) before treating it as a runaway.

**Why is my AdRoll pacing 25% behind linear?**
Three usual causes:

1. **Creative-rejection block**, a creative was rejected in the past few days and a line item that depended on it has nothing live. Check Account Notifications.
2. **Inventory-partner change**, AdRoll occasionally changes which SSP partners are on the allow-list; a tightening can collapse fillable inventory. Check Settings → Inventory.
3. **CPA target too tight**, the auto-bidder hit your configured CPA threshold and pulled back delivery. Loosen the target if you want volume.

**Should I cap budgets at the line-item level or advertisable level?**
Both. Advertisable-level cap as the hard ceiling (finance discipline). Line-item caps as soft floors that let the auto-bidder reallocate within the advertisable but prevent any single line item from absorbing more than its allocation. **Without line-item caps, AdRoll's optimiser silently shifts spend toward retargeting and away from prospecting**, this is the bidder doing its job for ROAS, but it undermines strategic allocation.

**Why does AdRoll's auto-bidder over-deliver on the daily cap?**
By design. AdRoll's pacing engine over-delivers up to 20% on any single day if it identifies a high-value auction; self-corrects across the flight (typically a 7-day pacing window). Daily over-pace is normal; weekly over-pace is not. **If you need strict daily caps for finance reasons**, set a hard daily cap (Settings → Budget → Daily Cap), accepting some optimisation efficiency loss for predictability.

**My pacing alert fired but the campaign hasn't actually exhausted; why?**
The alert is forward-looking. `>90% used before 80% of period` projects exhaustion before period-end based on current trajectory. The campaign hasn't physically exhausted yet, but it will if you don't intervene. **The alert is the early warning, not the failure event.**

**My AdRoll budget rolled over because the campaign didn't fully spend; how does that look here?**
AdRoll doesn't roll over unspent budget; each period's cap is fresh. If your March cap was $20k and you spent $17k, the unspent $3k is forfeit; April starts at $20k regardless. For roll-over discipline, manage at your finance / GL layer, not in AdRoll.

**Can I forecast next period's required budget from this card?**
Yes, with adjustments: (1) take this period's actual spend as a baseline; (2) overlay any planned bursts (sale events, product launches); (3) add 10 to 25% for CPC and CPM inflation if your account is iOS-heavy (post-ATT drift). Forecasts further than one period out are unreliable; AdRoll's auction dynamics shift quarterly with broader programmatic market trends.

**Why does the pacing percentage sometimes go down day-over-day?**
Almost always because the budget cap was lifted by the merchant or by an AdRoll account manager mid-period. The numerator (spend) keeps rising but the denominator (cap) rose more, so the percentage dropped. Check Settings → Activity Log for cap changes.

**Should I worry about AdRoll's ATT-driven CPM inflation when planning next quarter's pacing?**
Yes. CPM on iOS-heavy AdRoll line items has drifted up 15 to 30% since ATT. **Plan for 15 to 25% higher unit-cost** when budgeting for the same impression volume; equivalently, expect 15 to 20% less reach for the same dollar. Re-baseline against ROAS and conversion volume, not against impression count.

***

### Tracked live in Vortex IQ Nerve Centre

*Spend vs Budget* is one of hundreds of KPI pulses Vortex IQ tracks across AdRoll and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English.

[Start for free](https://app.vortexiq.ai/login) or [book a demo](https://www.vortexiq.ai/contact-us) to see this metric running on your own data.
