Skip to content
Browse documentation

Redirect modes

How each link answers — 302, the hide-referrer page, fallbacks, transparent redirects, HTTPS upgrade — plus allowed destination schemes and app deep links.

Last updated 3 min read

On this page

Every tracking request is answered with one response; there are never intermediate hops on the tracking domain. What that response looks like depends on the link type and, for affiliate and smart links, on the offer's Redirect mode.

Set the redirect mode#

  1. Open the offer, tab Advanced, section Redirect & unique clicks.
  2. Under Redirect mode, choose:
    • 302 redirect — "Standard and fastest." (default)
    • Hide referrer — "A page that navigates without sending the Referer header."
  3. Click Save settings.

What each mode returns#

302 redirect#

URL
HTTP/1.1 302 Found
Location: https://shop.example.com/?cid=0192a6c3f1e04b7e9c2d8a1f3b5c7d9e
Cache-Control: no-store
Referrer-Policy: no-referrer-when-downgrade
Content-Length: 0

The browser normally sends the partner's page as Referer to the advertiser (except from HTTPS to HTTP).

Hide referrer#

URL
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Cache-Control: no-store
Referrer-Policy: no-referrer
X-Robots-Tag: noindex, nofollow

The body is a tiny page with <meta name="referrer" content="no-referrer">, a meta refresh to the destination, a script that calls location.replace(…), and a Continue link as a last resort. The advertiser receives no Referer, so the partner's site stays private. A HEAD request gets the headers only.

Use it when partners do not want their sources revealed. It is slightly slower than a 302 because the browser renders a page first.

Which responses the mode affects#

SituationResponse
Affiliate (/r, /click) or smart link (/s) click that reaches the offer or a landing pageOffer's redirect mode
Fallback URL (offer, smart link, workspace)Always 302
Fail route or forwarding rule to a URLAlways 302
Fail route or forwarding rule to another offer or smart linkThat offer's redirect mode
No fallback configured, or workspace inactive200 neutral "link not available" page, no redirect
Transparent link (/c, or any link with url=)Always one 302 to exactly the url= value
Refused transparent link400 / 403 HTML error page, never a redirect
Unknown offer or smart-link code (without url=); an unknown partner code is treated as not approved404 page
Impression pixel /i200 1×1 GIF
Server-side click /clk200 / 401 JSON

HTTP to HTTPS#

A request to http:// on a tracking domain gets 308 Permanent Redirect to the same URL on https:// with path and query unchanged. This is the only extra hop, and Google allows it for transparent trackers. Always publish https:// links to avoid it.

Methods#

GET and HEAD are served on all click paths. POST gets exactly the same response as GET (background beacons may POST; the body is never read). Any other method gets 405 Method Not Allowed with an Allow header and no Location.

After macro expansion the destination must be a safe absolute URL, at most 8,192 characters, without control characters:

SchemeAccepted
https://, http:// (with a host)Yes
App deep links, e.g. myapp://product/42, intent://…Yes
javascript:, vbscript:, data:, file:, blob:, about:, filesystem:No

A destination that fails this check sends the click to the fallback chain with reason bad_destination. (Transparent url= values must always be http(s) on a public hostname; see Transparent links.)

Caching and cookies#

Responses are never cacheable (Cache-Control: no-store). No cookie is set unless the workspace enables the First-party pixel cookie or the offer identifies unique visitors by Cookie — and never on transparent links.

Not available#

Double meta refresh, JavaScript-only redirects and iframe cloaking are not offered: the tracker sends every visitor, bot or human, to the same destination in one step.

Something unclear or missing in this article?Tell us