Analytics · QA / docs-sample

QA hop ledger, not advertiser volume.

These rows are QA and docs-sample hops (for example https://example.org/creator). A Google-Ads-Compliance request with a valid offer_url is followed (302) and is not written here. 204 is only when that UA has no followable hop and is not stored.

QA hops

10

Valid rate

80.00%

Sync

2026-09-11 03:38:34

Reviewer sample

Submit an expanded hop, not {lpurl}

Google’s published example uses a real next hop. Use https://example.org/creator below. A browser or Google-Ads-Compliance request must 302 to that landing. The Tracking template macro is for Google Ads only—opening it as a landing returns empty 400.

This public table is QA and docs-sample hops, not advertiser campaign volume. We do not claim customer traffic we do not have.

https://sinoads.co.uk/click?offer_url=https%3A%2F%2Fexample.org%2Fcreator

302 → https://example.org/creator · Ads template only: https://sinoads.co.uk/click?offer_url={lpurl}

QA hop pulse | last 7d

Docs-sample rows from click_events · last refresh 2026-09-11 03:38:34

Sat
Sun
Mon
Tue
Wed
Thu
Fri

Google Ads parallel tracking: follow offer_url, then 204

When Google Ads issues a background parallel-tracking PING against your measurement URL, a valid offer_url is followed with an empty 302—including Google-Ads-Compliance. 204 No Content with an empty body is used only when that request has no followable hop.

Every path that carries offer_url follows that value. Missing or invalid values return empty 400—never a redirect to this host.


// SinoAds Compliance Protocol
$target = $request->query('offer_url');
if (/* valid HTTPS hostname in offer_url */) {
    return response('', 302, ['Location' => $target]);
}
if ($request->header('User-Agent') === 'Google-Ads-Compliance') {
    return response()->noContent(204);
}
return response('', 400);

Deployed logic matches this snippet. A valid offer_url is followed for every User-Agent. PINGs without a followable hop are not logged.

Time Status Reason IP Target URL
2026-09-11 03:38:34 valid redirected 104.22.56.22 https://example.org/creator
2026-09-11 03:38:34 invalid invalid_url 104.22.56.22 {lpurl}
2026-09-10 18:52:52 invalid missing_offer_url 172.71.22.92
2026-09-10 14:27:48 valid redirected 104.23.187.40 https://example.org/creator
2026-09-10 10:17:32 valid redirected 172.68.3.16 https://example.org/creator
2026-09-10 06:04:35 valid redirected 104.22.64.173 https://example.org/creator
2026-09-10 03:05:24 valid redirected 104.23.223.84 https://example.org/creator
2026-09-09 18:13:33 valid redirected 172.71.130.145 https://example.org/creator
2026-09-09 10:14:05 valid redirected 104.23.166.156 https://example.org/creator
2026-09-09 10:13:14 valid redirected 172.71.95.97 https://example.org/creator