QA & Integration Testing
For developers, integrators, and QA — the things that commonly go awry while building and testing against AdGem, and how to tell them apart from a real integration bug.
Configuring your test device setup
Before testing any offer end-to-end, confirm your test device is clean:
- No VPN or proxy active.
- iOS: Private Relay off (Settings → Apple ID → iCloud → Private Relay). This is one toggle — there's no separate Safari setting. Also disable any other privacy tools that may obfuscate device information (IP address, etc.).
- A real device — not a jailbroken/rooted device, emulator, or simulator.
- No prior install of the offer's app on that device. Advertisers will not re-attribute an install or conversion if the device has already had the app installed, whether it's currently active or has since been deleted.
- Pass idfa (iOS) / gaid (Android) wherever your integration supports it — this helps us troubleshoot potential attribution issues.
- Our offer targeting surfaces the offers eligible for your device and location. Don't override this during testing by testing an offer that isn't eligible for your device or location.
Postback timing
While the vast majority of conversions post within seconds or minutes, a conversion can be delayed for a couple of reasons:
- Advertiser tracking configurations (affects <5% of offers, typically a 0–3 hour delay).
- AdGem anti-fraud controls — more common with high-paying events.
VPN usage and atypical testing patterns
VPN usage and repeated testing from the same device or account can trigger extra fraud checks, causing conversions to fail or route through review. This is common in QA and rare for real users. Avoid the following testing patterns:
- Using a VPN.
- Testing many different offers with the same player_id in a short period of time.
- Repeatedly clicking the same offer with the same device and player_id in a short period of time.
- Testing from multiple devices, all using the same player_id.
When to escalate to us
Not every "missing reward" report is a user-setting issue — there are legitimate cases of an error on our platform or in the integration. Escalate to AdGem rather than closing as user error when:
- A cluster of testers report the same offer failing to attribute despite clean devices, correct windows, and idfa/gaid present.
- Attribution failures correlate with a specific app version, SDK version, or release date on your side or ours.
- The pattern looks structural rather than behavioral — e.g., a whole cohort or grouped-app segment failing the same way, not scattered individual cases.