Zeropark is a pop and domain network where your traffic is bought across thousands of sources, and each one routes a click through to your landing page via the URL you set on the campaign. Appending these macros to that destination URL lets ValidVisit attribute every click back to the exact source it came from, and score each one 0-100 for traffic quality, so you can see which sources are sending real visitors and which are sending invalid traffic.
On Zeropark, the buyer-facing identifier is the {source} token, which carries the source ID of the publisher placement that fired the click, while {target} pinpoints the individual target inside that source for even tighter granularity. The one required token is {cid}, the auto-generated Click ID that ties each visit to a single uniquely tracked click, and you can layer in {campaign_id}, {campaign_name}, {creative_number}, and {keyword} for fuller context. Note Zeropark's macros use lowercase names wrapped in curly braces, so keep them exactly as written; {source} and {target} are what let ValidVisit attribute a click to the placement actually responsible for it.
Once every click is tied to its {source}, per-source granularity becomes actionable: ValidVisit reports a quality score for each source so you can tell apart the placements driving genuine engagement from those pushing bots and IVT. ValidVisit only attributes and scores after the click arrives, it never blocks traffic or excludes anything on its own. You take the underperforming sources to Zeropark's Sources tab and pause or blacklist them yourself, where ValidVisit's per-source rate is exactly what Zeropark's Sources blacklist (and auto-rules) consume, so the manual exclusion happens entirely in your own dashboard.
| Token | Zeropark macro | ValidVisit param | Example |
|---|---|---|---|
| Click ID *click | {cid} | vv_click_id | 8f3c1a2b-9d4e-4f12-bc77-0a1b2c3d4e5f |
| Campaign IDcampaign | {campaign_id} | vv_campaign_id | 1234567 |
| Campaign Namecampaign | {campaign_name} | vv_campaign_name | US_Pop_Sweepstakes |
| Source IDpublisher | {source} | vv_publisher_id | 5566778 |
| Target IDplacement | {target} | vv_placement_id | 9988776 |
| Creative Numbercreative | {creative_number} | vv_creative_id | 3 |
| Keywordkeyword | {keyword} | vv_keyword | best+vpn |
{cid}vv_click_id{campaign_id}vv_campaign_id{campaign_name}vv_campaign_name{source}vv_publisher_id{target}vv_placement_id{creative_number}vv_creative_id{keyword}vv_keyword* required for Zeropark attribution.
https://yoursite.com/landing?utm_source=zeropark&utm_medium=pop&vv_click_id={cid}&vv_campaign_id={campaign_id}&vv_campaign_name={campaign_name}&vv_publisher_id={source}&vv_placement_id={target}&vv_creative_id={creative_number}&vv_keyword={keyword}ValidVisit's per-source rate is exactly what Zeropark's Sources blacklist (and auto-rules) consume.
The {source} token carries the source ID for the publisher placement behind each click, and that is the unit ValidVisit scores. If you want a finer level, add {target} to break a source down into its individual targets.
Yes. {cid} is Zeropark's auto-generated Click ID and is the one required token, because it uniquely identifies each click so ValidVisit can attribute and score it. The other tokens like {source}, {target}, {campaign_name}, and {keyword} are optional but add useful context.
No. These are plain URL parameters you append to your campaign's destination URL in Zeropark, following the format shown in their tracking docs. There is no funnel hop or extra hop required; Zeropark fills in each macro at click time and the values arrive with the visit.
See which Zeropark publishers and placements send real, converting traffic vs. bots.
Free trial at launch · lock in early-access pricing
One script · raw IP never stored · GDPR legitimate-interest basis