At a glance
Gross media spend on Criteo across catalogue-driven retargeting, prospecting, and Commerce Media Network campaigns. SUM(spend) at the advertiser-account level. Criteo’s bid model is dynamic CPC at engine layer, with CPA-target overlays available; the card sums what Criteo billed regardless of the underlying bid type. Stronger in EU and APAC than the US, with the deepest catalogue-feed retargeting in the industry: Criteo serves dynamic product-detail-page (PDP) ads pulled from your live product feed, so feed freshness directly affects spend efficiency and ROAS.
| What it counts | Gross media spend at the advertiser-account level, summed across every active campaign in the period. Includes lower-funnel retargeting, mid-funnel consideration, and Commerce Media Network (Criteo’s retail-media product placement on partner publisher sites). Excludes platform service fees and managed-service overlays (those bill separately and aren’t in API-reported spend). |
| Cost basis | CPC-dominant. Criteo’s auction is mostly CPC-priced at line-item level, with CPM-priced inventory on a small subset of premium placements. The auto-bidder optimises toward CPA targets; the card sums whatever was billed regardless of bid mechanism. |
| Currency | Advertiser-account currency (single, set at account creation). Multi-currency advertisers run separate Criteo accounts per currency. No FX in this card. |
| Conversion attribution | Not relevant for spend (spend is what you paid; attribution is on the revenue side). For ROAS pairing: Criteo defaults to 30-day post-click + 7-day post-view attribution, configurable per advertiser. |
| Attribution window | N/A for spend. (For ROAS pairing: 30-day click + 7-day view default.) |
| Bot / invalid traffic | Criteo claims TAG-certified IVT filtering; detected invalid traffic is removed pre-billing. Real-world IVT slippage is <1% on Criteo’s owned-and-operated supply, materially higher (3, 6%) on long-tail Commerce Media partners. |
| iOS 14.5+ ATT impact on the card | None on the spend figure itself, you still pay for clicks and impressions. Indirectly, ATT and Safari ITP shrunk Criteo’s identity graph by an estimated 50, 70% on iOS / Safari traffic, so the auto-bidder shifts spend toward in-market retail-media placements and lookalike inventory where Criteo retains identity match. CPCs on retargeting line items typically rose 15, 30% post-ATT to maintain reach. |
| Catalogue-feed dependency | Spend is throttled by catalogue freshness. If your product feed has stale or missing items, Criteo’s dynamic ads cannot serve those products, the auto-bidder pulls back budget into whatever’s still in-feed. A feed outage of 24h+ typically drops spend by 30, 60% on retargeting line items because Criteo can’t render the dynamic creative. |
| Time window | T/7D/30D vsP (default 30D vs the prior 30D). Real-time updates with up to 4-hour ingest lag on “today”. |
| Alert trigger | spike >2σ vs 30D baseline. Single-day jump beyond two standard deviations of the rolling baseline. Usual cause: a new campaign launching, a budget cap lift, or a catalogue-feed re-sync that unlocked previously-stalled inventory. |
| Roles | owner, marketing, finance |
Calculation
Calculated automatically from your Criteo 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 French electronics DTC retailer running Criteo for catalogue-feed retargeting + Commerce Media Network mid-funnel prospecting. The 30-day window is 02 Apr 26 to 01 May 26. Account currency EUR. Catalogue feed refreshes hourly via Criteo Feed Manager.| Campaign | Spend (€) | Clicks | Impressions | Avg CPC | Catalogue items in feed |
|---|---|---|---|---|---|
| Lower-funnel retargeting (PDP visitors, 30d) | 14,200 | 38,400 | 9,800,000 | €0.37 | 4,820 active SKUs |
| Mid-funnel consideration (basket abandoners) | 6,800 | 18,200 | 4,200,000 | €0.37 | 2,140 active SKUs |
| Commerce Media (publisher network prospecting) | 4,400 | 9,800 | 11,200,000 | €0.45 | 1,820 active SKUs |
| Sponsored product (retail media) | 1,600 | 5,200 | 480,000 | €0.31 | 380 priority SKUs |
| Account total (this card) | €27,000 | 71,600 | 25,680,000 | €0.38 | 4,820 unique SKUs |
- Lower-funnel retargeting eats 53% of spend on 38% of clicks. Retargeting CPCs run higher than prospecting because the auctions are warmer and Criteo bids more aggressively for users with PDP-view signal. ROAS compensates: typical Criteo retargeting ROAS is 7, 11×, materially better than the 1.5, 3× expected on cold prospecting. If retargeting ROAS is below 5×, audience match has degraded (usually iOS / Safari ITP).
- Commerce Media at €0.45 CPC is structurally higher than retargeting. You’re competing against other advertisers for placement on publisher product-comparison pages and catalogue-driven editorial inventory. The trade-off is reach into a shopping-intent audience that retargeting cannot access. Expect Commerce Media ROAS in the 2, 4× band.
- Sponsored product (retail media) at €0.31 CPC is the cheapest because it’s keyword + category targeted on retail partner sites. Lowest CPC, but inventory is capped by partner availability; you can’t scale this beyond your priority-SKU allocation.
- The catalogue has 4,820 active SKUs but spend is concentrated on a smaller set. Criteo’s auto-optimiser concentrates spend on the SKUs with strongest conversion-rate signal, typically the top 300, 600 SKUs absorb 70, 80% of dynamic-ad impressions. If your top-seller SKU goes out-of-stock and exits the feed, expect a 15, 30% spend drop within 48 hours as the optimiser scrambles for replacement creative.
- Pre-feed-refresh-fix on this account, spend was running at €19,400 with 12% feed gaps. After Criteo Feed Manager moved to hourly sync (from daily), feed gaps dropped to <2% and spend recovered to €27,000 because more SKUs are auction-eligible. Catalogue freshness is the single biggest spend lever on Criteo accounts, more than bid strategy, more than budget caps.
- The 30-day prior window had spend €23,800, ROAS 6.2×. Spend up 13%; track ROAS in
cri_roasto confirm scaling is healthy. If ROAS dropped below 5× alongside the spend rise, the auto-optimiser is buying lower-quality inventory or feed quality slipped. - iOS share is 38% on this account (lower than US norms because it’s France, where Android leads). Post-ATT impact is real but less severe than on US accounts; expect retargeting CPMs 10, 20% higher than pre-ATT, vs 30, 50% higher in the US.
- Spend up + ROAS flat = healthy scaling.
- Spend up + ROAS down = scaling beyond efficient frontier, or feed quality dropped.
- Spend flat + clicks up = CPCs falling, optimiser found cheaper inventory.
- Spend dropped 20%+ overnight = check catalogue feed first (Criteo Feed Manager → Diagnostics). Feed outages or category-level rejection are the most common cause.
- Spend dropped 15% with stable feed = competitive auction heat, a competitor entered the auction or Criteo’s bid floor moved.
- Spend rose 25%+ with stable feed and budget caps = auto-bidder runaway; pause and contact Criteo client services.
Sibling cards merchants should reference together
| Card | Why it matters next to Total Spend | What the combination tells you |
|---|---|---|
| Total Revenue | The revenue side. Criteo-attributed conversion value for the same period. | Spend trend without revenue trend is meaningless. Criteo’s attribution is generous; expect claimed revenue to over-state by 30, 50% versus commerce-platform UTM truth. |
| ROAS | The ratio. The headline efficiency reading. | Retargeting platform ROAS should land 6, 10×; Criteo specifically tends 7, 11× on healthy catalogue-feed-driven accounts. |
| Spend vs Budget | Pacing. Are you on track, over-pacing, or under-pacing? | Catches auto-bidder runaway and budget exhaustion before month-end surprises. |
| Spend by Campaign | Per-campaign breakdown. | Lower-funnel retargeting typically eats 50, 70% of spend; if mid-funnel or Commerce Media dominates, you’ve shifted away from Criteo’s strongest format. |
| CPC Trend | Auction pressure proxy. | Rising CPCs without rising click volume = competitive heat eating budget without reach. |
| CTR Trend | Catalogue-creative effectiveness. | Falling CTR while spend climbs = creative fatigue or feed quality drift. Refresh creative or audit the feed. |
| Wasted Spend | Zero-conversion campaigns. | Pause-or-fix list. Typically 5, 12% of spend is wasted on accounts with 6+ campaigns running. |
| Conversion Lag | View-through latency. Critical for retargeting. | Today’s spend often credits revenue 2, 5 days from now; lag rising signals iOS attribution stress. |
Reconciling against the vendor’s own dashboard
Where to look in Criteo’s own dashboard:Criteo Management Centre → Reporting → Performance Report → “Spend” (filter to the same advertiser-account and date range used in this card).The “Spend” column in the Performance Report is the same field this card sums. Criteo’s Home dashboard tile shows the same headline figure for the chosen window. For granular sanity checks, Reporting → Custom Report → Group by Day shows daily spend rows that should sum to this card’s total within sub-percent rounding. For Commerce Media Network advertisers, the relevant view sits under Commerce Max → Performance; both surfaces share the same underlying API field (
metrics.spend in Criteo Management API v2025-01).
Why our number may legitimately differ from Criteo itself:
A small gap is normal. Usual suspects:
| Reason | Direction | Why |
|---|---|---|
| Time zone | Boundary days off | Criteo reports in the advertiser-account time zone (set at account creation, mutable via client-services request). Vortex IQ uses UTC for period boundaries. For 30-day windows the gap averages out; for “today” or “yesterday” on US Pacific accounts the boundary can shift the figure 4 to 10%. |
| Ingest lag | Ours lower for “today” | Criteo Management API has a 2 to 4 hour lag on impressions and spend; today’s number is incomplete until catchup. Yesterday and earlier are stable. |
| Managed-service overlay | Theirs higher in some views | Criteo’s Billing surface (Settings → Billing → Statement) bundles managed-service fees, audit add-ons, and Commerce Yield optimiser fees for accounts on full-service plans. The Performance Report’s “Spend” column is media-only and matches this card. Don’t reconcile against Billing for performance reads. |
| Catalogue-feed-restated impressions | Ours marginally higher | Criteo periodically re-credits impressions where the dynamic creative rendered against a since-removed SKU (typically <0.5% of monthly spend). The Performance Report shows pre-credit; the invoice is post-credit. Reconcile to invoice for finance, not for performance. |
| Currency | None expected | Both views use advertiser currency. |
| Archived campaigns | Ours captures them | Criteo’s UI hides archived-campaign spend from default reports; the API returns the full history. Our card includes everything in the date range. |
spend figure has no direct counterpart on other platforms. For merchants running parallel retargeting on multiple platforms, the reasonable comparison set is:
| Card | Expected relationship | What causes legitimate divergence |
|---|---|---|
adroll.adr_total_spend | Independent retargeting platform spend. No mathematical relationship; useful as a benchmark of how much the merchant invests on each retargeting vendor. | Different inventory: AdRoll skews toward GDN + Facebook Audience Network display; Criteo skews toward open-exchange catalogue retargeting and its own Commerce Media Network. |
facebook_ads.fac_total_spend | Different funnel position. Meta is top-of-funnel + retargeting; Criteo is heavy retargeting + mid-funnel commerce. | Most DTC accounts spend 3 to 7× more on Meta than on Criteo; if Criteo is more than 30% of Meta spend, retargeting allocation is unusually heavy. |
google_ads.gads_spend | Different funnel position. Google is intent-driven (search + shopping); Criteo is awareness/retargeting. | No reconciliation, comparable benchmark only. |
shopify.total_revenue / bigcommerce.total_revenue / adobe_commerce.total_revenue | Commerce-platform revenue is the ultimate denominator for Criteo’s ROAS claim; sanity-check Criteo-claimed revenue against the realised order line in your store. | Criteo attributes generously: 30 to 50% over-state versus commerce-platform UTM truth is normal on healthy retargeting accounts. Use the store ledger as the source of truth for ROAS, Criteo’s number for in-platform optimisation. |
Known limitations / merchant FAQs
Why is my Criteo spend higher than my Criteo invoice? The Performance Report (and this card) shows pre-credit gross media spend; the invoice reflects post-credit billing after Criteo applies catalogue-rejection credits, IVT credits from MOAT or IAS verification, and any client-services goodwill credits. The difference is typically 0.5 to 1.5% on monthly spend; bigger gaps usually mean a credit dispute is in flight. Reconcile to invoice for finance reporting; reconcile to this card for performance decisions. My spend dropped 30% overnight, what should I check first? On Criteo specifically, the catalogue feed is the first place to look, not the bid strategy. Open Criteo Feed Manager → Diagnostics. The five most common causes (in order):- Feed sync failure, hourly or daily catalogue push silently failed; active SKU count collapsed and dynamic ads cannot render.
- Top-seller out-of-stock, the SKUs absorbing 30 to 50% of impressions exited the feed. The optimiser scrambles for replacement creative; spend dips for 24 to 72 hours during re-learning.
- Image rejection, Criteo’s image-quality filter rejected a batch of product images (low resolution, watermarks, banned overlay text). The affected SKUs are auction-ineligible until images are fixed.
- Price-mismatch suppression, Criteo’s price-on-feed and price-on-landing-page audit found mismatches above tolerance. Affected SKUs are paused. Common after a sale-price launch where the feed updates lag the storefront.
- Auto-bidder pulled back, ROAS dropped below the configured CPA target (often after iOS-attribution stress) and the optimiser is throttling delivery.
cri_total_revenue and cri_roas for the cross-platform read.
iOS 14.5 ATT and Safari ITP, what do they actually do to my Criteo spend?
The spend figure itself is unaffected, you still pay for impressions and clicks. What ATT and ITP broke is the targeting precision on iOS users who declined the prompt and Safari users with full ITP enforcement (60 to 75% combined opt-out across UK and US iOS traffic). Criteo can no longer reliably identify those users across publisher sites, which:
- Shrinks retargetable audience pools (typically 50 to 70% smaller post-ATT for retargeting line items).
- Forces the auto-optimiser onto broader, cheaper inventory to hit pacing.
- Compresses ROAS without reducing spend.
spend field. The line items appear under their own campaign type in Spend by Campaign. To isolate retargeting-only spend, filter on campaign type in the breakdown card.
Can I trust the “today” spend?
Less than the rolling 7-day. Criteo Management API has a 2 to 4 hour ingest lag and Commerce Media settles nightly; today’s spend is structurally low until catchup. Yesterday is fully reliable. Don’t restructure budgets based on a single day’s reading, use the 7-day rolling for in-week decisions.
My multi-currency setup, how does spend work?
Criteo advertiser accounts are single-currency by design; multi-currency merchants run separate accounts per currency. Each account reports spend in its own currency. This card is per-account. For unified-currency reporting across regions, FX-convert externally at month-end rates; Criteo doesn’t surface a unified-currency total.
Does Criteo’s Commerce Yield optimiser change how I read this card?
Commerce Yield (Criteo’s managed-bidder option) shifts more spend toward the highest-ROAS auctions and away from constant-pacing. The card sums total spend regardless, but you may see daily-level variance increase by 30 to 60% under Commerce Yield because the bidder front-loads spend on high-conversion-probability days (e.g. Sunday evenings on US apparel accounts). Daily variance is normal under Commerce Yield; weekly variance vs plan is the right baseline.
Should I optimise for absolute spend, ROAS, or CPA on Criteo?
Depends on funnel position. For lower-funnel retargeting line items (PDP visitors, basket abandoners), optimise for ROAS, retargeting ROAS should sit at 7 to 11× because the audience is warm. For Commerce Media prospecting, optimise for CPA against your blended target, ROAS will be lower (2 to 4×) but it’s reaching audiences retargeting cannot. For sponsored-product retail-media, optimise for incremental revenue against organic search rank, this is a brand-defence spend, not a pure ROAS play.