Skip to main content
Nerve Centre KPIs · Audit Profile · Sentiment Settings The questions an enterprise programmatic trader asks at 9am on Monday: did budgets pace cleanly across the flight window, are PMP deals delivering at agreed floors or leaking into open exchange, is cookieless identity (UID 2.0 / EUID via the Universal Pixel) still resolving, and is ROAS holding after Koa AI bid adjustments. Cross-references commerce siblings (BigCommerce, Shopify, Adobe Commerce) and website_performance for the highest-leverage findings - running a premium PMP catalog deal on an out-of-stock SKU is the most expensive, most fixable mistake on the open internet.

What this audit checks

Authentication & access

  • TTD-Auth API token rejected or expired (validate against /v3/authentication/validate)
  • Partner ID / Advertiser ID mismatch - token resolves to a different advertiser than configured
  • 429 throttling on reporting or query endpoints - Retry-After backoff exceeded

Spend & budget pacing

  • Campaigns out of pacing across the flight window (PacingMode vs actual delivery drift >20%)
  • Budget under-delivering - daily burn below flat-line needed to spend Budget by EndDate
  • Budget over-delivering - PaceAhead campaigns burning the flight early, risk of mid-flight blackout
  • End-dated campaigns still spending past EndDate (date-bound flights that did not stop)

Campaign performance (ROAS / CTR / CPC)

  • ROAS per campaign below merchant target (myreports advertiser report)
  • ROAS drop >25% vs prior 7D same-day-of-week (Koa AI bid-strategy regression signal)
  • CTR below channel benchmark across Display / Video / CTV / Audio creative formats
  • CPC / CPM creep - effective bid above category benchmark after Koa AI overrides

Conversion & attribution

  • Universal Pixel firing rate drop >30% across the property (cookieless signal decay)
  • UID 2.0 / EUID resolution rate <40% - cross-device attribution breaking down
  • Zero-conversion spend - campaigns with >$X spend and no attributed conversions in 72h
  • Conversion rate below account average on PMP deals delivering at agreed floor prices

Creative & audience health

  • Creatives with ReviewStatus disapproved or pending in active campaigns
  • Audience segments below the 1000-record TTD bid-degradation floor (DMP segment shrink)
  • Creative format mismatch - CTV/Video budget served against Display-only inventory
  • Stale creatives - Availability Archived still attached to Available campaigns

Cross-channel revenue at risk (highest-value area)

  • Active PMP catalog deals on out-of-stock SKUs (sibling = commerce.product.qty = 0)
  • Spend on catalog campaigns with active Feedonomics feed rejections (creative falls back)
  • Branded paid clicks cannibalising free organic (sibling = google_search_console branded queries)
  • Landing pages with LCP p75 >4s and CR <0.5x account average (sibling = website_performance.page)

Severity thresholds

SignalWarnCritical
roas3.0-
ctr0.1-
conversion_rate1.0-
cpc2.54.0
wasted_spend_pct512
budget_pacing1530

Data sources

  • GET https://api.thetradedesk.com/v3/authentication/validate - Auth + TTD-Auth token sanity check
  • GET https://api.thetradedesk.com/v3/advertiser - Advertiser metadata + currency for spend normalisation
  • POST https://api.thetradedesk.com/v3/campaign/query/advertiser - Campaign state, budget, pacing mode (cross-channel join key)
  • POST https://api.thetradedesk.com/v3/creative/query/advertiser - Creative review status, format, availability
  • POST https://api.thetradedesk.com/v3/myreports/reportexecution/query/advertisers - Async spend / ROAS / CTR / CPC / conversion reports