Criteo isn't a generic display buy — it's a dynamic retargeting network, serving personalized banner ads to people who've already visited your site rather than cold prospecting new ones. That changes what 'quality' even means for the traffic it sends back: a click here is, by design, someone who's already interacted with your brand once. Appending Criteo's macros lets ValidVisit attribute each of those return visits to the campaign, publisher domain, and placement that produced it, and score it 0-100 so a quiet drop in traffic quality on retargeted clicks doesn't hide inside an otherwise-healthy number.
Cross-check any macro against the network’s official documentation. Criteo official docs →
{{criteo_campaign_id}} is the required token and anchors every visit to its retargeting campaign. {{domain}} is the one worth building your reporting around — it's the publisher domain where the banner actually rendered, and because Criteo buys across a wide programmatic footprint of publisher inventory, that domain can vary enormously from one impression to the next even within a single campaign. {{width}} identifies the slot size the ad ran in, which doubles as a rough placement descriptor. {{adid}} and {{creative_type}} identify the specific dynamic ad and which creative template (single-product, carousel, and so on) generated it, useful given how much of Criteo's creative is auto-assembled per user rather than fixed. All five populate automatically once they're appended as parameters on your landing page URL, with no additional tagging required beyond that.
A spike in low-quality traffic on retargeted clicks is its own kind of signal worth watching separately from prospecting traffic, since these are supposed to be warm visits from people who already showed interest — a domain that's suddenly sending a lot of return-visit clicks that don't look like real return visitors is a specific and useful thing to catch. ValidVisit's part is limited to that detection, scoring, and reporting; it doesn't have a way to stop Criteo from serving on a given domain or adjust bids on your behalf. If {{domain}} keeps surfacing the same low-scoring publisher, the follow-through happens inside your Criteo account — excluding that publisher domain from the campaign's supply, adjusting the campaign's site or category settings, or tightening the retargeting audience itself.
| Token | Criteo macro | ValidVisit param | Example |
|---|---|---|---|
| Campaign ID *campaign | {{criteo_campaign_id}} | vv_campaign_id | 123456 |
| Publisher Domainpublisher | {{domain}} | vv_publisher_id | pub_42 |
| Slot Widthplacement | {{width}} | vv_placement_id | plc_7 |
| Ad IDad | {{adid}} | vv_ad_id | 456789 |
| Creative Typecreative | {{creative_type}} | vv_creative_id | 987 |
{{criteo_campaign_id}}vv_campaign_id{{domain}}vv_publisher_id{{width}}vv_placement_id{{adid}}vv_ad_id{{creative_type}}vv_creative_id* required for Criteo attribution.
https://yoursite.com/landing?utm_source=criteo&utm_medium=banner&vv_campaign_id={{criteo_campaign_id}}&vv_publisher_id={{domain}}&vv_placement_id={{width}}&vv_ad_id={{adid}}&vv_creative_id={{creative_type}}Append these params to your landing-page URL — Criteo fills the macros at click time, so every visit arrives attributed and ready to score. No funnel hop.
The buyer pastes the bad domains/app-bundle IDs (one per line, no http/https) or uploads a .txt/.csv blocklist (up to 100,000 domains per upload, 255 chars/entry) and applies it to the ad set/line item; it takes effect within ~1 hour.
Retargeted clicks are supposed to come from people who already visited your site, so they should generally score cleaner than cold prospecting traffic. A publisher domain sending a lot of low-quality 'return visits' is a distinct signal worth catching separately, which is what {{domain}}-level scoring is for.
{{domain}}. Because Criteo buys across a broad programmatic footprint, the publisher domain can vary widely between impressions even inside one campaign, so it's the key dimension for spotting a specific low-quality source.
No — ValidVisit only detects, scores, and reports. If a domain keeps scoring poorly, you exclude it yourself inside your Criteo account, either through the campaign's site settings or by adjusting its supply and audience configuration.
See which Criteo publishers and placements send real buyers vs. bots.
Free trial at launch · just your email
One script · no cookies · no fingerprinting · raw IP never stored