Quick verdict: Ad verification at any meaningful scale requires residential proxies — datacenter IPs are excluded from advertiser impression counts so they literally don't see the ads being verified. The minimum viable spec is a 10M+ IP pool, 100+ country coverage, city-level targeting, sticky-session support for multi-step verification, and a verifiable IP sourcing chain for EU compliance. The top providers in 2026 are SpyderProxy, Bright Data, Oxylabs, NetNut, Smartproxy, and IPRoyal — head-to-head comparison below.
This guide covers what ad-tech buyers actually need from a proxy provider, the five factors that matter for verification, the top 6 providers compared on those factors, and cost math at DSP scale.
Why Ad Verification Needs Residential Specifically
Ad verification has three jobs:
- Confirm the ad rendered. Was the creative actually displayed? In what context? Adjacent to brand-safe content?
- Confirm the geo-targeting was honored. Did the campaign meant for Berlin actually serve in Berlin?
- Detect fraud. Was the impression a real human view or a bot fraud network?
All three require seeing the ad ecosystem from a real user's perspective. A datacenter IP can't do that:
- Ad networks exclude datacenter ranges from impression counting per IAB / MRC accreditation rules. The ad doesn't render to a datacenter visitor.
- Geo-targeting modules use IP-based geolocation that fails for datacenter ranges (which often show generic "AWS US-East" rather than a city).
- Fraud detection baselines come from comparing real residential traffic to suspect patterns — datacenter is the anomaly, not the baseline.
That's why every major ad verification vendor (Integral Ad Science, DoubleVerify, MOAT, Pixalate) operates massive residential proxy infrastructure as a core operational capability.
The 5 Things Ad Verification Buyers Need
1. Real residential IPs at scale
Pool size matters because verification spans thousands of campaigns × thousands of geos × multiple times per day. With a 1M IP pool, you recycle IPs within hours; sophisticated fraud detection flags this as suspicious. The practical floor is 10M+ IPs.
2. Country and city-level granularity
Modern campaigns geo-target by city, not just country. A campaign for Mumbai shouldn't be verified by a Delhi proxy. The provider must support city-level filters in their proxy authentication or routing layer.
3. Sticky sessions for multi-step verification
Verifying that an ad → click → landing page chain works requires staying on the same IP across all three steps (otherwise cookies break). Sticky sessions of 10-30 minutes are standard for ad-tech use.
4. Per-request audit logging
Compliance and contractual reporting need timestamped records: which IP, ASN, geo, and ISP served each verification. SaaS providers without API-accessible logs fail this requirement immediately.
5. Verifiable IP provenance
EU enterprise contracts increasingly require attestation that the residential IP pool is sourced through opt-in consent (paid SDK install, app rewards) rather than malware/botnet. Providers that can document this win procurement decisions.
Top 6 Provider Comparison
| Provider | Pool size | Countries | City granularity | $/GB premium | Sticky sessions |
|---|---|---|---|---|---|
| SpyderProxy | 130M+ | 195+ | Yes | $2.75 | Up to 24h |
| Bright Data | 150M+ | 195+ | Yes | $8.40 | Yes |
| Oxylabs | 102M+ | 195+ | Yes | $8.00 | Yes |
| NetNut | 52M+ | 100+ | Country only | $15.00 | Yes |
| Smartproxy / Decodo | 55M+ | 195+ | Yes | $6.00 | Yes |
| IPRoyal | 32M+ | 195+ | Yes | $7.00 | Yes |
Notes on the table:
- Pool sizes are vendor-stated and not independently verified. Real concurrent-active counts are typically lower.
- "$/GB premium" is the rate for premium residential. Each provider has cheaper budget tiers and more expensive ISP / static residential tiers.
- SpyderProxy at $2.75 vs Bright Data at $8.40 reflects different positioning — Bright Data sells extensive feature stack (anti-detect tools, integrations); SpyderProxy sells transparent pay-as-you-go pricing for the same pool quality. See full SpyderProxy vs Bright Data comparison.
Cost Math at DSP Scale
A typical ad verification check transfers ~50 KB (HTML + ad creative + tracking pixel + screenshot data). At various provider rates:
| Daily verifications | Bandwidth/month | SpyderProxy ($2.75/GB) | Bright Data ($8.40/GB) |
|---|---|---|---|
| 10,000 | ~15 GB | $41/month | $126/month |
| 100,000 | ~150 GB | $413/month | $1,260/month |
| 1,000,000 | ~1,500 GB | $4,125/month | $12,600/month |
| 10,000,000 | ~15 TB | $41,250/month | $126,000/month |
For mid-market ad verification platforms, the gap between $4K and $12K monthly recurring is typically the difference between feasible and not. For DSPs at the 10M+ daily scale, the gap is even more dramatic.
Implementation: Setting Up Verification at Scale
- Sign up and get static residential credentials. Static residential ($3.90/day) is the right tier for audit-trail consistency. Add rotating residential for sampling-style verification.
- Configure the verification engine. Most ad-tech engines use Python (requests + Playwright) or Node (axios + Puppeteer). Set the proxy URL with credentials in the engine config.
- Add city-level filters per campaign. Campaigns targeting specific cities should pin verification IPs to those cities — not country-level.
- Maintain sticky sessions for click-through verification. Use 30-minute sticky sessions for multi-step user-journey checks.
- Log everything. Every verification gets timestamped, IP, ASN, geo, ISP, and result logged to your audit trail. This is the contractual evidence for advertiser reports.