Skip to content

Tracking overview ​

For: Advertisers, media buyers, UA managers, developers, affiliate and partner managers

RevoSurge optimises your campaigns against the conversions you send us. This page explains how to set that up: create a Product, decide what you are optimising for, then connect the methods that carry it.

Coming from Meta or Google? Start here

Most of what you already know maps one-to-one. The names change; the model does not.

You already knowOn RevoSurge
Meta Pixel · Google gtag.jsWeb Tracker — same idea, one script, six events
Conversions API · GA4 Measurement ProtocolS2S Server Events (v3) — your backend POSTs to us
Standard events (Purchase, CompleteRegistration)The event catalog — 24 events: 9 Standard, 15 iGaming
fbclid · gclididentity.click_id — capture it on landing and pass it back
Advanced Matching · Enhanced Conversionscontext.privacy.email_hash / phone_hash — SHA-256, same as theirs
Purchase value + currencycontext.amount + context.currency — required on deposit
Test Events · Tag AssistantS2S test mode — send X-Test-Mode: true and review what you sent for 14 days, outside reporting. ?dryrun=1 on any endpoint returns the full verdict and stores nothing
event_id deduplicationPartner Postback: event_id, with a documented priority ladder. S2S: context.transaction_id on money events

Three things that will be new to you:

  • The iGaming catalog. Deposits, bets, KYC, bonuses, VIP tiers and sessions are first-class events, not custom conversions you have to define yourself. This is what makes bidding on player value possible.
  • iGaming events are enabled per Product. Unlike a Meta standard event, deposit does not work the moment you send it — RevoSurge enables the iGaming preset for your Product first. See 7. The event catalog.
  • Partner Postback has no equivalent. If your conversions live in an affiliate platform's back-office rather than your own backend, you can integrate without writing any code. See 2.2.

1. Create your Product ​

Nothing else works until this exists. A Product is your website or app as RevoSurge sees it. Creating one registers your domain and issues the credentials every method depends on: a Tracker ID for the Web Tracker, and an API key for S2S.

Go to Product → Manage Product in either portal:

PortalURL
AdWaveadwave.revosurge.com/product
DataPulsedatapulse.revosurge.com/product

One Product, both portals

AdWave and DataPulse share the same Product list. Create it in one and it appears in the other — you do not create it twice. The Open DataPulse / Open AdWave button top-right switches between them.

A Setup Wizard at the top of the page walks you through the whole integration in order and gates each step on the one before it. Steps 2–4 read Locked · Complete Step 1 first until your Product exists.

The Setup Wizard on the Product page

1.1 Fill in the form ​

Click + Create Product, in the Setup Wizard or above the Manage Product table.

The Create Product form

FieldRequiredWhat to enter
Product DomainYesYour main domain including the scheme — https://yourbrand.com. This is what RevoSurge attributes traffic to.
Product NameYesA human-readable label. Used in reports and the product switcher.
Landing Page URLNoAny additional domain or URL you send paid traffic to. Pick a Funnel Type for each. + adds a row, the bin icon removes one.
Deposit CurrencyYesThe currency your deposits settle in — Fiat (searchable) or Crypto. Every amount we report is converted into it.

Then click Submit. The wizard advances to 1/4 and Step 1 reads Created.

Register every domain you advertise to

All registered domains require an installed Web Tracker. A campaign's Destination URL must match an active domain to be served.

Point a campaign at a domain that isn't registered here and it will not serve. Add pre-landers, mirrors and redirect domains now.

Pick the deposit currency your back office actually settles in

Every amount we report is converted into it. If it doesn't match what you settle in, your totals and ours will differ by whatever the exchange rate moved. Crypto-settling operators should choose crypto, not the fiat equivalent.

1.2 Choose the right Funnel Type ​

Each Landing Page URL needs a Funnel Type so RevoSurge knows what the page is for.

The Funnel Type dropdown

Funnel TypeUse when
Direct RegisterVisitors register directly on this landing page.
Redirect RegisterThis page redirects to a register page. Register both URLs under the same Product.
Direct DownloadVisitors download the app directly from this page.
Redirect DownloadThis page redirects to an app download page. Register both URLs under the same Product.
AI Companion Home PageThe home page of an AI Companion product.
AI Companion Survey FunnelA survey-style AI Companion acquisition funnel.

Redirect types need a Direct page first

Redirect Register and Redirect Download stay greyed out until you have added at least one Direct landing page URL — the portal says "Add a Direct landing page URL first." Add the destination page, then the redirect.

1.3 What you get ​

IdentifierFormatUsed for
Product IDAWP-20260827-052659-007-3119Internal reference, support tickets
Tracker IDTRA-AWP-20260827-052659-007-3119Goes in the Web Tracker snippet

The Tracker ID is the Product ID with a TRA- prefix.

2. Choose your setup ​

RevoSurge supports four integration methods — Web Tracker, S2S Server Events, Partner Postback, and AppsFlyer. You will use more than one, and almost nobody uses all four.

So which combination suits you? Let us answer that with three questions of our own.

QuestionWhat your answer decides
2.1Where do your players land?Whether AppsFlyer is in the picture at all
2.2Which system holds your conversion data?Partner Postback or S2S — these are alternatives, not additions
2.3What do your campaigns optimise for?How deep you go, and which events you send

Answer all three and the routing table gives you your setup. Skip straight to it if you already know them.

2.1 Where do your players land? ​

A websiteWeb Tracker carries the click and the browser events
A mobile appYou also need an MMP. RevoSurge integrates with AppsFlyer
BothBoth of the above — they run side by side, on the same Product

An app-install campaign without an MMP cannot attribute installs. The app store sits between the click and the install, and nothing we control can see across it.

2.2 Which system holds your conversion data? ​

This is the question most setups get wrong, because it is about who can send the event, not about what you would prefer.

Where deposits and registrations are recordedMethodWhat it needs from you
Your own backend — your platform confirms the paymentS2SA developer, ~2–5 days
An affiliate platform's back-office — Income Access, Affilka, MyAffiliates, or your own affiliate systemPartner PostbackSomeone with access to that platform's postback settings. No engineering.
Your MMP — in-app events already flowing to AppsFlyerAppsFlyer postbacksConfiguration in AppsFlyer, plus permissions on the RevoSurge tile

Pick one source of truth per event

S2S and Partner Postback do the same job. If both report the same deposit, precedence applies — see Core concepts → Deduplication — but you are paying twice to build the same thing, and reconciliation gets harder, not easier.

Run both only when they genuinely cover different events or different brands.

If you have engineering resource and an affiliate platform, choose S2S. It is the only method that carries amounts and bet, so it is the only one that will still be enough when your goals deepen.

2.3 What do your campaigns optimise for? ​

You do not pick a tracking method. You pick what your campaigns optimise for, and that decides how deep the setup has to go.

  • App installs — volume of new installs
  • Registrations — volume of new accounts
  • First deposits — number of first-time depositors
  • Deposit value — bid on how much they deposit
  • Player value — GGR and LTV over time

Pick every goal that applies. They are cumulative: optimising for player value does not mean you stop counting registrations. Read down to your deepest goal — that row sets the floor, and everything shallower comes with it.

The routing table ​

Find the row matching your three answers.

Lands onDeepest goalData lives inYour setupEffort
WebRegistrationsThe browserWeb TrackerSame day
WebFirst depositsAn affiliate platformWeb Tracker + Partner PostbackSame day
WebFirst depositsYour own backendWeb Tracker + S2S (Basic)~2–3 days
WebDeposit valueYour own backendWeb Tracker + S2S (Basic, with amounts)~2–3 days
WebPlayer value — GGR, LTVYour own backendWeb Tracker + S2S (Full catalog)~3–5 days
AppInstallsYour MMPWeb Tracker (click forwarding) + AppsFlyer~3–5 days
AppRegistrations, in-app eventsYour MMPThe above + AppsFlyer in-app event postbacks~3–5 days
AppDeposit value or player valueYour own backendThe above + S2S~3–5 days on top
Web and appAnyMixedWeb Tracker + AppsFlyer + whichever of S2S or Partner Postback matches your back officeSum of the rows above

The Web Tracker is required in every setup

It is what captures the ad click in the first place. No other method sees which ad brought the visitor — and on the app side, it is also what forwards your clicks to AppsFlyer.

3. The four methods ​

3.1 Web Tracker — browser-side ​

A JavaScript snippet on your site. It reports what happens in the browser — page views, registrations, logins, deposits, game entries, download clicks — and captures the attribution context: which ad, which source, which landing page.

3.2 S2S Server Events — backend-side ​

Your backend POSTs events to our API. Nothing runs in a browser, so nothing is lost to ad blockers, tracking prevention or a closed tab.

This is where money belongs. A deposit your payment provider confirmed is a fact your server holds with certainty; the browser may never have seen it.

3.3 Partner Postback — your platform calls us ​

A URL your back office or affiliate platform calls when a conversion happens. You paste it in; they fire it. No engineering.

  • Implemented by: you, or your affiliate platform admin
  • Credential: postback key, sent as the k query parameter
  • Guide: Partner Postback API

3.4 AppsFlyer — app installs and in-app events ​

If you promote a mobile app, AppsFlyer reports installs and in-app events back to us, and the Web Tracker forwards your ad clicks to it. Most configuration happens in AppsFlyer's own console, not in RevoSurge.

  • Implemented by: your UA manager, in AppsFlyer
  • Credential: partner tile name and pid, from your account manager
  • Guide: AppsFlyer overview

Ask your account manager for three things

The exact partner tile name to search in AppsFlyer's Partner Marketplace, the partner event names to map your events to, and your pid. You cannot start without the first.

Side by side ​

Web TrackerS2SPartner PostbackAppsFlyer
Runs whereVisitor's browserYour backendPartner's systemAppsFlyer's servers
Who implementsWeb developerBackend developerYou, no engineeringUA manager
Sees ad attributionYes, nativelyYes, via click_idYes, via click_idYes, via forwarded clicks
Blocked by ad blockersPossibleNoNoNo
Authoritative for moneyNoYesYesYes
CoversWebWeb + appWeb + appApp only
Setup effortSame day~3–5 daysSame day~3–5 days

New to these terms?

Browser-side / client-side — code running in the visitor's browser. Sees the ad click and the journey, but can be blocked. Server-to-server (S2S) — your servers talking to ours directly. Cannot be blocked, but does not see the browser. Postback — a URL someone else calls to tell you something happened. MMP — mobile measurement partner. A third party like AppsFlyer that attributes app installs and reports them to advertising platforms.

4. What each method unlocks ​

Features switch on as your event coverage grows. The Setup Wizard shows this live — each step lists what it unlocks.

What you sendUnlocks
page_view via Web TrackerSource Traffic
register, loginRegistration Funnel
deposit, withdraw via S2S or PostbackFTD reporting
deposit, withdraw, bet with amounts via S2STrue LTV · ROAS
Full Standard + iGaming catalog via S2SPredicted LTV · Churn · Bonus Engine
Installs and in-app events via AppsFlyerApp install attribution · app-side funnel
Ad sources connected in DataPulseSource Intelligence

5. FAQ ​

Do I need all four methods?

No. Most advertisers run Web Tracker + one conversion method. Add AppsFlyer only if you promote a mobile app. See the routing table.

Can I start with one and add more later?

Yes. Nothing is lost when you add a method — the extra events simply start arriving. A common path is Web Tracker + Partner Postback to launch, then S2S once engineering has time.

I have no engineering resource. What can I do?

Partner Postback. It is two URLs pasted into your back office or affiliate platform, live the same day. It reaches first deposits, which is enough to optimise on. You still need a developer for the Web Tracker snippet itself, but that is a single script tag.

Which method should I trust for revenue?

S2S. Browser-reported deposits under-count — ad blockers, closed tabs and payment redirects all drop events. If you optimise on browser-reported revenue you are optimising on an incomplete number.

Do I have to send the same user ID everywhere?

Yes, and this is the single most common integration mistake. Whatever ID your system uses for an account, send that exact value as user_id in the Web Tracker and client_user_id in S2S. If they differ, we see two different people and your attribution breaks.

Do not use a session ID, a cookie ID, or an anonymous visitor ID.

What happens if two methods report the same deposit?

We store both and count one. The source closest to the money wins: your back office knows a deposit settled, a browser only knows a button was clicked. In practice that means S2S > Partner Postback > Web Tracker for deposit, and amounts are taken from S2S only.

Do I create the Product twice, once per portal?

No. AdWave and DataPulse share one Product list.

I only promote an app. Do I still need the Web Tracker?

Yes. When you set your AppsFlyer App ID in the tracker's init options, the snippet forwards each ad click to AppsFlyer so the install can be attributed to us. A landing page without the snippet forwards nothing, and every install it drives is counted as organic.

How long before my campaign optimises well?

Clicks serve immediately. Install and registration optimisation typically stabilises in 1–2 weeks; first-deposit optimisation in 2–4 weeks, because FTDs are sparse; value-based optimisation in 4–8 weeks. Judging a value-based campaign at day three shows noise, not performance.

My campaign is not serving. Is that a tracking problem?

Possibly. A campaign's Destination URL must match a registered, active domain on the Product. Add pre-landers, mirrors and redirect domains as Landing Page URLs, each with its Funnel Type. See 1. Create your Product.

6. Getting started ​

Work top to bottom. Each step depends on the one above it.

  1. Create your Product — domain, landing pages, deposit currency — section 1 above
  2. Copy your Tracker ID — Step 1
  3. Install the Web Tracker and fire register, login, deposit — Steps 2–4
  4. Confirm Tracker Status reads Active — Step 5
  5. Connect your conversion method — S2S or Partner Postback
  6. Connect AppsFlyer if you promote an app — AppsFlyer overview
  7. Launch your first campaign — Create your campaign

Start here: Install the Web Tracker.