Skip to content
Docs

Supply-quality readout checklist

Read a remnant display flight on concentration and click-to-page-view. IVT needs a vendor tag on the creative. Delivery clicks use the clicks plural field.

2 min readOur judgmentUpdated
On this page

Do not open a report and read click-through rate first.

On the open exchange, leftover inventory produces clicks readily. The June 2026 learning flight was judged on clicks and click-through rate, then thrown out. The later Supply Bench pull showed why: most placements did nothing, and a few domains produced a large share of billed clicks.

This checklist is how we read a flight. The verdict is our first-party traffic grade, built from real visits to our own landing pages, bot traps, and engagement. Vendor IVT is a hint, not the verdict, and IVT and viewability stay blank until a vendor tag is attached to the creative. Zero invalid_impressions means nothing is measuring, not that the traffic is clean.

Meters, in order

  1. Coverage. Did the report include the whole spend slice, or only the top rows? Our August 2026 Supply Bench pull ignored offset and 50,000-row limits returned 400, so we only saw the high-spend tail. State that limit before you quote a share.
  2. Concentration. How many domains or placements produced the clicks? Seven domains produced 41.3 percent of clicks from 4.7 percent of impressions in that pull. That shape is the story.
  3. First-party traffic grade. Exchange clicks are not visits, and visits are not all people: ad-verification scanners fetch landing pages too, so raw landing sessions overstate humans. The grade counts real visits, bot traps, and engagement. Click-to-page-view is one input, used when unique visit sessions do not exceed billed clicks. Anonymized brand-name display campaigns from Adprime's managed ad operations sat at 15.85 percent click-to-page-view when usable and 3.75 percent when not. Missing visit instrumentation is an instrumentation gap, not automatic fraud.
  4. IVT, only after a vendor tag, and only as a hint. Strict rate is invalid_impressions / impressions. Do not use measurable_invalid_impressions as the numerator. The same anonymized campaigns sat at 0.523 percent acceptable and 1.544 percent when they triggered intervention.
  5. Click-through rate last, and only as a contamination clue. Implausible rates on a handful of domains are a watchlist, not a quality score.

Reporting traps that look like "zero quality"

  • Request the clicks plural field. click singular is the wrong name and reads as zero.
  • Async rows come back label-cased (Campaign ID, Clicks). A parser keyed on snake_case reads every metric as zero.
  • Snapshot spend rows can store clicks as zero on purpose. Do not sum snapshot and hourly rows as if they were different auctions.
  • generated_at is when our API responded. It is not provider freshness.

Checklist

Checklist
Supply-quality readout

Window: _______________
Spend observed: _______________
Coverage (full / partial / unknown): _______________

[ ] Report field for delivery clicks is clicks (plural)
[ ] Parser reads label-cased keys
[ ] Spend is not a raw sum of snapshot plus hourly rows
[ ] Placement count, domain count, and zero-click placement share written down
[ ] Click concentration written (top domains, share of clicks, share of imps)
[ ] First-party traffic grade read; click-to-page-view computed only if the visit join exists
[ ] IVT left blank unless a vendor add-on is on the creative and fields are non-zero
[ ] measurable_invalid_impressions is not used as the rate numerator
[ ] Click-through rate used only to flag implausible domains, not to pick a winner
[ ] ads.txt unauthorized spend noted if present (our Aug 2026 slice: $0.48)
[ ] No sentence that says "low fraud" or "high quality" without the first-party grade behind it

Publish the window and the coverage caveat next to any number. A share from a partial pull is still useful. A share presented as a category benchmark is not.