Playbook · 4 min read

Using ValidVisit with Voluum

Voluum sits between the ad network and your landing page, so ValidVisit only learns what you put on the lander URL. Set it up once and every judged visit carries the zone you already work with in Voluum. Below: where the script goes, a lander URL for a PropellerAds campaign, click IDs, reading ValidVisit’s verdicts next to Voluum’s reports, and sending verdicts back into Voluum.

01 /

Where the script goes

Paste the ValidVisit snippet before </body> on the landing page Voluum sends visitors to. It sits on that page whichever way the visit arrives:

  • Through Voluum’s click-through hop. The ad points at your Voluum campaign URL; Voluum records the visit and sends the visitor on to the lander.
  • Direct tracking. The ad points straight at the lander, and Voluum’s Campaign Tracking Script runs at the bottom of the page’s <head>. The ValidVisit snippet is a separate script on the same page.

The script only runs on hosts listed under Allowed domains in your ValidVisit site, so add the lander’s domain there.

02 /

The lander URL for a PropellerAds campaign

ValidVisit reads the network’s values from the landing-page URL, under its own vv_* names. With Voluum in the middle, PropellerAds fills its macros into your Voluum campaign URL, and Voluum’s traffic-source template stores them in custom variables. The lander URL reads them back with {var1} to {var10}, or {var:name} by the variable’s name.

Say your PropellerAds traffic source stores {zone_id} in var1 and {subzone_id} in var2; check the template, since the slot numbers are yours. Add to the lander URL in Voluum:

  • vv_source=propellerads: names the network.
  • vv_publisher_id={var1}: the zone, the unit you’ll cut.
  • vv_placement_id={var2}: the subzone inside it.
  • vv_click_id={externalid}: the network’s click ID (below).

Start the list with ? and join the pairs with &. Under direct tracking there’s no hop to fill tokens, so put PropellerAds’ macros on the ad’s URL directly, such as vv_publisher_id={zone_id}; the PropellerAds tracking tokens page lists them all. ValidVisit’s Link Wizard builds that list for any network; behind Voluum, swap each macro for the {varN} that holds it.

03 /

Click IDs with Voluum

Voluum creates its own click ID when the visitor clicks through from the lander to the offer, so a lander’s URL can’t carry it. What the lander can carry is the network’s click ID, which Voluum holds as {externalid}: send vv_click_id={externalid} and each judged visit keeps the ID the network uses for that click. Check that Voluum fills it in on your lander URL.

ValidVisit reads clickid, click_id and vv_click_id as one field, so send one of them. In a funnel without a lander, where the visitor opens an offer page you own, that page does get Voluum’s click ID: put the script there and add clickid={clickid} to the offer URL.

Under direct tracking, Voluum’s script assigns its click ID after the page loads, so it isn’t on the URL the ad opens. Pass the network’s click ID instead: on PropellerAds, vv_click_id=${SUBID}.

See your own channel judged the same way — join the early-access waitlist.

04 /

Read the verdicts next to Voluum’s reports

Voluum reports on the custom variables its template defines; ValidVisit shows the same zones under Publisher and subzones under Placement. They’re one source seen twice: Voluum counts visits and conversions, ValidVisit judges each visit that loaded the page Valid or Invalid, with its evidence.

  • Zones that convert but are judged invalid. Check the conversions before you scale; bot traffic that fires a conversion event looks profitable in any tracker.
  • Zones with volume and no conversions. A high invalid share points at the traffic, not the offer or the bid.
  • Totals that differ. Voluum records the visit before the lander loads; ValidVisit counts visits that loaded the page with the script. Compare shares, not raw counts.
05 /

Voluum’s Anti-Fraud Kit and ValidVisit

Voluum says it filters known bots out of its stats on every plan. Its Anti-Fraud Kit, on higher plans only, adds anti-fraud metrics (fast or frequent clicks, poor referrer reputation, unrecognised user agents), IP and user-agent filtering that stops matching traffic before it reaches Voluum, and a honeypot link on the lander that works with click-through tracking only. What the kit flags, Voluum’s docs tell you to block in the traffic source.

Keep it on. It works at the click, and ValidVisit grades whatever gets through, attributed to the zone that sent it; tracker bot filters vs ValidVisit sets the two side by side.

06 /

Cut the zones in PropellerAds

ValidVisit never changes your campaigns, rules or ad accounts, and sends nothing into Voluum. It ranks zones worst first and exports the ones worth cutting as a Cut-list CSV for you to paste into Zone Limitation → Exclude in the PropellerAds campaign’s targeting. Blacklisting zones in PropellerAds has the steps; blocking bad sources by network covers other networks.

Voluum’s auto-rules can pause a zone on a traffic source with a full API integration, working from Voluum’s own metrics.

For visitors you never want on the page, ValidVisit’s traffic rules tag visits by country, data-center hosting or VPN and can send them to another page; whole countries can also be blocked at your own firewall. The verdict itself blocks nothing.

07 /

Test the setup before you scale

Before real budget goes through, open your Voluum campaign URL with sample values in place of the network’s macros and check:

  1. The lander’s address bar shows filled-in vv_* values, not literal tokens.
  2. The visit appears in ValidVisit with the zone under Publisher.

If the kit’s honeypot link or other scripts sit on the lander, confirm each still fires. Retest after any template edit; the {varN} slots move with it.

FAQ

Frequently asked questions

Where does the ValidVisit script go in a Voluum setup?+
On the landing page Voluum sends visitors to, before </body>, in both click-through and direct tracking. Add the lander’s domain to your ValidVisit site’s allowed domains.
Which Voluum token carries the zone?+
The {varN} (or {var:name}) your traffic-source template stores the zone in. Pass it on the lander URL as vv_publisher_id, with vv_source naming the network.
Can a lander URL carry Voluum’s click ID?+
No. Voluum creates it when the visitor clicks through to the offer, so pass the network’s click ID on the lander instead, as vv_click_id={externalid}. An offer page you own does carry Voluum’s click ID.
Does ValidVisit change anything in Voluum?+
No. It never changes your campaigns, rules or ad accounts, and sends nothing into Voluum; the cuts in the network stay yours.
Related reading
Invalid traffic by channel
deal-alerts.example71% invalid
zone 447123% invalid
premium-news.example2% invalid

Judge your own traffic the same way.

One script, every visit judged Valid or Invalid and attributed to the source that sent it.

Just your email · no card · unsubscribe anytime · privacy policy

Join the waitlist with just your email · 7-day trial at launch

One script · no cookies · no device IDs · raw IP never stored