How to Set Up a Geo-Filter for PWA
Ad platform targeting doesn't guarantee a click actually came from the target country — roaming, VPNs, and mobile networks create mismatches. A geo-filter at the PWA level checks visitors by fact, not declaration, and shows the offer only to the target geo while everyone else gets the white page.
Why You Need a Geo-Filter Beyond the Platform's Targeting
Facebook's (or any ad platform's) targeting runs on the account's declared location, not the actual IP at the moment of the click — roaming, VPNs, and mobile carriers with foreign NAT all create mismatches. Some clicks are "on-target" by the platform's own data but actually arrive from a different geo than the one the offer is valid in. A geo-filter at the PWA level is an independent check based on fact, not declaration — and it's what protects your budget from off-target clicks.
How APEX Determines a Visitor's Geo
Detection runs off the IP address at the moment the page loads, checked against a live geolocation database. It happens at the same stage as the rest of the cloak's checks — before the pre-lander even renders, so an off-target visitor never gets a look at the offer at all. IP-based geolocation is generally reliable at the country level, though it can wobble at the city level, which is worth accounting for when you design the filter logic.
Setting Up Your Target Country List
In the dashboard, you set the list of GEOs the campaign is valid for — a single country for a narrow offer, or a group of same-tier countries for a broader run. Anything outside that list automatically gets routed to the white version instead of the offer. Keep the list scoped to one offer or a batch of closely related offers in the same geo zone, rather than one catch-all filter for everything.
Edge Cases: Borders, Carriers, and Margin of Error
IP geolocation has a natural margin of error — border regions, mobile carriers sharing IP pools across countries, and VPNs all produce occasional false positives in both directions. That's normal and can't be eliminated entirely — it's worth building that into your expectations rather than tuning the filter for zero false positives at the cost of overall traffic volume. Before a full launch, it's worth running a few test visits from different mobile networks inside the target geo.
Geo-Filter + Antibot + Storefront Language
The geo-filter works alongside the rest of the cloak's filters — antibot strips out non-human traffic first, then the geo check decides whose IP lands inside the target list. Separately, make sure the pre-lander's language and localization actually match the geo: a common beginner mistake is running an English-language offer on a funnel targeted at a Russian-speaking geo, which drags down conversion even for traffic that clears every filter. The geo-filter answers "who gets shown the offer" — content relevance is a separate setting entirely.
FAQ
- What if a real target-geo user gets routed to white because of a VPN or roaming?
- That can happen — it's the tradeoff for blocking off-target traffic. If false positives show up at a noticeable volume in your stats, ease off the filter's strictness for that specific source rather than turning it off entirely.
- Do I need a separate geo-filter for every offer?
- Yes, if your offers target different countries or tiers — one catch-all list loses precision fast. For a batch of offers in the same geo, you can reuse the same country list.
- How do I test the filter before a full launch?
- Run a few test visits over mobile data from different networks inside the target geo, not just home Wi-Fi, and confirm the offer serves normally while traffic from other countries gets routed to white.
- Can one offer target several countries at once?
- Yes — the target geo list can include multiple countries at once, which is standard practice for offers valid across an entire tier rather than a single country.
Cloaking, anti-bot, push, split tests and your own domains — in one service.
Get started free