Tracking & Attribution
Campaigns and tracking links
Partners organise their traffic themselves, in the partner portal.
A campaign has a name and its own commission terms. The partner starts the campaign and names it; they never choose its terms. A new campaign starts with terms pending: its links work and its players are counted, but they earn nothing until your staff set the terms, and then only from that moment (see Campaign Terms & Commission). Staff can also create or rename a campaign for a partner in the backoffice, optionally with terms from the start.
A partner archives a campaign when they are done with it: its links keep tracking and earning, but no new links can be added. An archived campaign can be restored.
Inside a campaign the partner creates tracking links. Each one has:
- a traffic source — SEO, paid search, social, email, Telegram, push, display, app stores, influencers, forums or other, from a fixed list; it is set once and never changes, so your managers can review traffic by source;
- a landing page, chosen from the destinations you allow-list in the backoffice (Affiliates › Destinations);
- a short link to share, with optional deep links that let the partner send players to any page of your player site (other sites fall back to the landing page);
- optionally a promo code (3 to 32 letters, digits,
-or_) a player can type at sign-up instead of clicking.
Campaigns carry a readable id (CMP-…), shown the same way in the portal and
the backoffice.
Removing or disabling a destination does not switch off links already pointing at it; they keep redirecting. Such a link is flagged no longer offered on the partner's link card and in the backoffice link lists, so nobody reads it as a current landing page. To stop a link, disable the link itself.
Visits
Every click is recorded as a visit before the visitor is redirected to the landing page. The redirect only ever goes to your own site.
Partners add their own parameters to a link — click ids, sub-ids, ad names — and those travel with the visit into reports and postbacks. Because a partner's parameters end up in URLs you send, they follow strict rules: only known-safe names, at most 20 per visit, values capped at 255 characters, and every value URL-encoded on the way out. A hostile value is encoded, truncated or dropped, never passed through. Parameter values are cleared from old visits once they are past the attribution window plus 90 days, except for visits a player is bound to.
The visitor's browser keeps a first-party cookie naming the visit for the partner's attribution window (30 days unless you set another per partner). Only an active partner's links attribute: a paused partner's links still redirect, but the visit is not counted.
The binding rule
At sign-up the player is bound by last click wins: the most recent tracked visit in the browser decides, and it beats a promo code or tag in the sign-up form. A promo code typed at sign-up with no click binds the player to that code's link and campaign. The binding — partner, campaign, tracking link — is permanent. A later click through another partner's link does not move the player.
Self-referral earns nothing. A player whose email matches one of the
partner's own logins or its contact address never earns that partner
commission. The match uses the canonical form of the address, so case,
+tags, Gmail dots and Proton variants do not get around it.
Conversions
Each referred player produces a sign-up conversion and a first deposit conversion, picked up within five minutes. Qualification for a CPA payment, and its withdrawal if the qualifying activity is later reversed, are tracked as events too.
When a sign-up counts is an operator setting (backoffice Affiliates, Registration counting, audited): at sign-up, which is the default, or only once the player's email is confirmed. With confirmation on, Google and Telegram sign-ups still count at once. The setting decides affiliate sign-ups, registration postbacks and registration promotions, and is not retroactive.
Postbacks
Partners wire their own tracker in the portal. A postback is a URL template with variables, sent for the events they choose: registration, first deposit, deposit (every credited deposit), qualification and disqualification. A postback can be set for the whole account, one campaign or one tracking link, and every matching one fires.
Besides the partner's visit parameters, a template can carry the event, the player, campaign and link ids, the amount (also as whole minor units such as cents), the currency, the deposit id and whether the deposit is the player's first. The portal's postback builder has presets for common trackers (Keitaro, Voluum, Binom, RedTrack, BeMob, Everflow, Scaleo) that fill in the parameter rows for the chosen event; the URL can still be edited as text, and a test send shows what the tracker would receive.
Deliveries are sent every two minutes, retried with backoff up to six attempts, guarded against being pointed at internal addresses, and listed in a delivery log the partner can read. Failing postbacks show on the partner's dashboard and on the partner's page in the backoffice. A deposit postback can arrive up to five minutes after the deposit.
Scope & Roadmap
Everything above is part of the program. Links shared before campaigns
existed (/r?btag=…) keep working. A tag that names none of the partner's
campaigns (a bare code, or a typo) binds to the partner's newest active
campaign that has terms in force, so traffic does not land on a campaign that
earns nothing.
Staff changes to partners, campaigns, links and postbacks are recorded in the audit log.