Skip to main content
Advertiser Tracking Details

This article describes how the advertiser tracking link and Postback should be setup with additional macros and parameters.

Updated over a year ago

Advertiser Tracking Details

Advertiser S2S Tracking

Server-to-server (S2S) is the most commonly used tracking method in the Affiliate marketing Industry. All information passed by the publisher is stored on the server side and sent to the advertiser, who needs to have the capability of handling that information and transmitting the information back via a postback URL once there is a successful conversion.

How S2S Tracking Works in General

  1. A user surfs the publisher Ad which has been served in an APP or on the web

  2. The user clicks on the Ad and is redirected to the Swaarm tracker

  3. Swaarm tracker stores the publisher click ID (unique ID to track conversions) and forwards the user to the corresponding Google Play Store or Apple AppStore page through the MMP that has been used by the advertiser

  4. The MMP stores Swaarm click ID

  5. The user installs and opens the app

  6. MMP loads the server postback with the Swaarm click ID to notify the Swaarm tracker of a successful conversion

  7. Once the Swaarm tracker tracks the successful conversion, it matches with the corresponding publisher click ID which is responsible for that conversion, and loads the server postback URL which has been configured on the Platform publisher page.

Click Macros Supported by SWAARM for Advertiser Tracking Link

The following macros are available from the Swaarm tracker to use for the advertiser tracking URL. In general, the advertiser tracking link should redirect any click to the proper landing page but it is mandatory to enter at least the “Click ID”(unique ID to track conversion) in the tracking link in order to get the same ID via postback once there is a successful conversion tracked on the advertiser side. There are many other following macros that can be used in the advertiser tracking link:

Macros

Description

Examples

{id}

Swaarm click ID(mandatory pass)

Bd8aKzsAAAF1Wj-3twABwfUAAFG0

{publisher.id}

Swaarm network Publisher ID

1234

{publisher.placement}

Publisher placement identifier

abc_game123

{publisher.site}

Publisher site identifier

abc_game123

{publisher.subId}

Publisher Sub identifier

abc123

{publisher.subSubId}

Publisher sub sub ID

abc_xyz_123

{device.geo.country}

Country code

DE

{device.ids.gaid}

Google advertising identifier

GR56-1886–9D60–005776FC0465

{device.ids.idfa}

Apple iOS advertising identifier

4D6F-1226–9C60–0050E4C04654

{offerId} / {offer.id}

Offer ID in Swaarm platform

12345

{offer.name}

Swaarm network Offer Name

Ocean Clean Game

{offer.theyGet}

Payout per conversion in $

3

{offer.weGet}

Revenue per conversion in $

5

{pea.chain}

The non-unique token generated by Swaarm platform

e6UKM7lLUwlwAWXUyNO25TCY

{publisher.app_store_id}

Pass app ID

343204456

{publisher.app}

Publisher APP name/ID

coolgame_app

{publisher.clickId}

Publisher click ID

0a81ad386f991aef1c191dfd60cc

{publisher.creative}

Publisher creative ID/name

coolgame_320×50

{publisher.unique1}

Publisher unique value1

0a81ad386f991aef1c191dfd60cc_0a81ad386f991ae

{publisher.unique2}

Publisher unique value2

0a81ad386f991aef1c191dfd60cc_0a81ad386f991ae

{publisher.unique3}

Publisher unique value3

0a81ad386f991aef1c191dfd60cc_0a81ad386f991ae

{term}

Search Term

Electric Vehicle

{user.carrier}

Carrier of the user device

Verizon

{user.encoded_ua}

URL-encoded user agent string determined at the time of click

Mozilla%2F5.0+%28iPhone%3B+CPU+iPhone+OS+10_3_1+like+Mac+OS+X%29+AppleWebKit%2F603.1.30+%28KHTML%2C+like+Gecko%29+Version%2F10.0+Mobile%2F14E304+Safari%2F602.1

{user.ip}

IP of the user device

102.109.100.2

{user.language}

Language of the user device

EN

{user.make}

Device manufacturer name of the user device

e.g. Samsung

{user.model}

Device model number of the user device

e.g. GM-9621

{user.os_version}

OS version of the user device

9.2.2

{user.os}

Operating System of the user device

Android

{user.ua}

User agent string determined at the time of click

Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/613.2.7 (KHTML, like Gecko) Mobile/19F77 Listonic3/501

{att_detail}

Publisher placement identifier authorization status.

  • Authorization

  • Denied

  • Restricted

  • notDetermined

{att_duration}

Pass value from parameter att_duration as time in seconds took the user to respond to the iOS ATT prompt.

59175525

{att_time}

Pass value from parameter att_time as UNIX timestamp (Authorization time for IOS ATT)

1622163110

{att}

Pass value from parameter att.

  • 0 - tracking not authorized

  • 1 - tracking is authorized

  • Unpopulated for mobile web traffic

{device.geo.city}

City

Berlin

{device.geo.region}

Region or State

CA (California)

{device.ids.gaid.sha1}

Yes

{device.ids.idfa.sha1}

Yes

{device.ids.idfv}

Pass value from parameter IDFV.

3K0XXXXX-83XX-HEXX-KIXX-29KH83XXXXXX

{http.referer}

{kochava_ad_platform}

Transform value from parameter traffic_type for Kochava MMP.

  • in_app = in_app

  • mob_web = m_web

  • desktop_web = web

{performcb_ad_platform}

Transform value from parameter traffic_type for Perform cb.

  • in_app = app

  • mob_web = web

  • desktop_web = web

{publisher.originalSubId}

Publisher group original publisher sub ID

1234

{publisher.realId}

Publisher group original publisher ID

2

{publisher.unique4}

Publisher unique value4

0a81ad386f991aef1c191dfd60cc_0a81ad386f991ae

{publisher.unique5}

Publisher unique value5

0a81ad386f991aef1c191dfd60cc_0a81ad386f991ae

{taptica_ad_platform}

Transform value from parameter traffic_type for Taptica.

  • in_app = 1

  • mob_web = 2

  • desktop_web = 3

{time.date}

Date of click

2023-09-06

{time.datetime}

DateTime of click

2023-09-06T16:34:20.389915626

{time.timestamp}

Timestamp of click

1694018060

{appsflyer.signature}

AppsFlyer Signature

(Usually a big String value)

{offer.appsflyer_revenue}

Pass Encrypted WeGet value to advertiser

Pass Encrypted WeGet value to advertiser

ATT Privacy Macros

Additionally, we support more macros related to Apple's ATT Privacy for different MMPs, Here you will find the updated list:

🔗Sample Advertiser Tracking Link

https://advertiser.offer.com/click?offer_id=9876&pub_id=1234&click_id={id}&source_id={publisher.id}&idfa={device.ids.idfa}&gaid={device.ids.gaid}


Postback Parameters Supported by SWAARM

The following table contains Swaarm supported exclusive set of parameters that can be used to receive raw data and information via real-time callbacks (or postbacks) from advertisers:

Parameter Name

Description

Example

click_id

Swaarm click id for the user for which the conversion is attributed

AUbVa-sAAAFpEHMTvQAA3FEAADph

offer_id

Swaarm Offer ID

123456

publisher_id

Swaarm Publisher ID

321

publisher_sub_id

Swaarm Publisher Sub ID

abcdEFG

app_id

App ID of the Publisher App

332193586; de.is24.android

app_title

App title/name of publisher app

MyApp

app_version

Version of the App

5.13.1 (Android); 5131 (iOS); unknown (if unavailable)

gaid

Google Aid of the device

4R45-1226–D565–8850E4C04654

gp_opened_at

Time recorded by Google play when the app was opened

2020-06-04T21:00:56

gp_installed_at

Time recorded by Google play when the app was installed

2020-06-04T21:06:56

idfa

IDFA of the iOS device

8C6CBCOD-5F43-4765-A6E6-84DFF3D24707

installed_at

Time recorded by the SDK when the app was opened for the first time

2020-06-04T21:06:56

sale_amount

The revenue per conversion we made in the advertiser platform

5.00

sale_amount_currency

Currency of the revenue per conversion we made in the advertiser platform

USD/EUR

original_sale_amount

The revenue (crypto) per conversion we made in the advertiser platform

1.50

original_sale_amount_currency

Currency of the revenue (crypto) per conversion we made in the advertiser platform

Bitcoin

sdk_version

The version of the SDK used by the advertiser

12.3.3

rejection_reason

Advertiser’s reason for rejected attribution

CTIT is too high

rejected_reason_value

Value related to the conversion rejection

123434123

rejected_reason_subvalue

Sub-value related to the conversion rejection

bot_traffic

status

Advertiser’s status for the attributed conversion

Approved/rejected

click_timestamp

Click timestamp recorded by the advertiser’s SDK on click

2020-06-04T21:00:56

conversion_timestamp

Conversion timestamp recorded by the advertiser’s SDK on conversion

2020-06-04T21:05:56

event_name

Name of the event attributed in the advertiser’s SDK

Purchase

event_value

JSON object containing all the custom event information collected by the SDK

{“level_reached”: “4”, “tasks_completed” : ”20”}

event_id

Id of the event attributed in the advertiser’s SDK

45332

tracker_name

Name of the tracker/SDK used by the advertiser

Adjust

adgroup_name

Adgroup name as taken from the tracker

test_group

creative_name

Creative name as taken from the tracker

320x70_en

impression_based

1 if impression-based engagement, 0 if not

1

conversion_duration

Time between click and install or reattribution in seconds

3453

is_organic

1 if organic traffic, 0 if non-organic

1

install_finish_time

App download completion timestamp

2019-06-04T21:05:56

install_begin_time

App download began timestamp (Android and Google Play Store only)

2019-06-04T21:00:56

cpu_type

CPU type of the device that installed the app

CPU_SUBTYPE_ARM64_V8

hardware_name

Hardware name of the device that installed the app

D101AP

network_type

The network type of the device that installed the app

CTRadioAccessTechnologyLTE

click_attribution_window

Attribution window settings for device matching (hours)

168

adid

Adjust device ID (all platforms)

18546f6171f67e29d1cb983322ad1329

match_type

Attribution method

fingerprint; device_tag; reftag; external_click_id; google; facebook

tracking_enabled

1 if tracking is enabled, 0 if not

1

tracking_limited

1 if tracking is limited, 0 if not

0

timezone

Device timezone

UTC+0400

session_count

Number of sessions recorded by the current version of SDK

56

lifetime_session_count

Number of sessions recorded across the entire user lifetime

78

deeplink

Deeplink URL appended to click URL

myapp://product?id=650

partner_parameters

Custom partner parameters collected by the SDK or S2S request and transmitted to third-party providers via postbacks

client_id

postback_id

Postback ID passed by the Advertiser

WEhtwrkgjoirdkjwehdfkjwefihwr

postback_time

Postback time passed by the advertiser

2022-01-25 07:00:00.000

os_name

Operating system of the device that installed the app

iOS

os_version

Operating system version number of the device that installed the app

7.1.3

ip_address

User Device IP

102.109.100.2

device_ip

User Device IP

102.109.100.2

device_language

User Device Language

EN

user_agent

User Device UserAgent

Mozilla%2F5.0+%28iPhone%3B+CPU+iPhone+OS+10_3_1+like+Mac+OS+X%29+AppleWebKit%2F603.1.30+%28KHTML%2C+like+Gecko%29+Version%2F10.0+Mobile%2F14E304+Safari%2F602.1

isp

Internet service provider of the device that installed the app

Verizon Internet

region

Region code of the device that installed the app

us; gb; kr; pe

country

Two-character country code of the device that installed the app

us

city

City of the device that installed the app

Berlin

postal_code

Device postal code of IP address

12101

device_name

Device model number of the device that installed the app

G313HZ

connection_type

Internet connection type of the device that installed the app

SM-cellular; Cable%2FDSL; Corporate

device_manufacturer

Device manufacturer name of the device that installed the app

Samsung

our_event_type_id

OUR event type id for which the event was attributed

20876

tune_status

Indicates whether or not the click and corresponding installs/events were flagged as suspicious; possible values 1 (flagged as suspicious) or 0 (not flagged as suspicious)

0

pea_chain

A non-unique token generated by the Swaarm platform

e6UKM7lLUwlwAWXUyNO25TCY

retargeting

Whether the conversion is retargeted or not

1 or 0

first_event

Whether the event conversion is fired for the first time or not

1 or 0

uq

Identifier to match duplicated events

abc123xyz

🔗 Sample Postback Link

https://track.yournetwork.swaarm-clients.com/postback?click_id=[Click ID macro for Advertiser]&event_id=[Advertiser Event ID/name Macro]&sale_amount=[Payout per conversion macro]&gaid=[Google Advertising ID macro]&idfa=[iOS advertising ID Macro]

💡 Publisher Value in Event Parameter

If your publisher requires a value in their event parameter for default events then use the following Swaarm macro for passing the Swaarm event ID to the publisher:

#{offer.eventTypeId?:'1'}

Using this macro, it will pass 1 for any conversions on the default event and the respective Swaarm event ID for any in-app conversions.

Did this answer your question?