Conversion Tracking
Post view & click conversions, Setting up Conversion Tracking, Conversion tracking scripts
Written by Marcus Johansson
Updated over a week ago

In addition to tracking ad impressions, clicks, and other derivatives of these parameters, BidTheatre supports tracking user defined "conversions" (also known as "actions"). These commonly indicate that site users have reached a target point in the site - a newsletter signup, a purchase order, etcetera.

Post View & Post Click conversions

When a conversion tracker is fired, the user's data profile will be analyzed for previous points of contact. Registered conversions will be shown in Campaigns / Conversions.

  • If the user previously has clicked an ad from the same advertiser as the conversion tracker, a post click conversion will be registrered. Post click conversions are computed each hour.

  • If the user previously has seen, but not clicked, an ad from the the same advertiser as the conversion tracker, a post view conversion will be registered. Post view conversions will be computed once each night, for the day before.

Expiry times

  • The default setting for days that can pass from the impression until the conversion for a post view conversion to be registered is 7 days.

  • The default setting for days that can pass from the click until the conversion for a post click conversion to be registered is 30 days.

Setting up Conversion Tracking

In order to set up a conversion tracker, go to Assets / Conversion Trackers.

To enable conversion tracking, clients need to install a BidTheatre tracking script on the page that shows when the action is confirmed.
It looks like this:

<!-- /* Conversion */ -->
<!-- /* BidTheatre Tracker Invocation Script v1.1 */ -->
<!-- /* Place this tracker script as the first element in the body tag on the confirmation page of the action you want to track. UNIQUE_ID is optionally replaced by a unique ID for the reported action. SUM is optionally reported as the value of the action. */ -->

<script type="text/javascript" src=""></script>
asxtrack.config = {
conversionId: 892,
advertiserId: 584,
sum: "[SUM]", // optional
uid: "[UNIQUE_ID]" // optional


The conversionId and advertiserId are identifiers for this particular tracker and should not be modified.

Unique ID

The "uid" is an optional parameter that associates the action with a client chosen ID. This can be used to understand what a particular action in ASX represents in the client's backend system. Any unique number-character combination is valid, but try to stay within 0-9 and A-Z. i.e. unix-timestamp or md5 on Linux/Apache/PHP, or use the guid-generator with hyphens removed on IIS/.NET.

To avoid duplication of conversion data a unique value needs to be added. Replace UNIQUE_ID with a unique client side value. If not added, ASX will add a random value server side.

If added by ASX the value will not be unique and can cause duplicated conversion data.


sum is also optional, and indicates order value if the action is a sale. This can be used to reward publishers related to the order value.


ASX also supports the use of a checksum to ensure the authenticity of an action. The checksum is calculated by the back-end system at the advertisers site and appended to the tracker config as field "chksum". The checksum is then re-calculated and verified in ASX when the action is reported.

The checksum is the SHA1-hash of the string concatenation of an action unique secret provided by Bidtheatre, the unique action id generated by the advertisers back-end system and the order value. These are provided to ASX as part of the action script in the uid- and sum-parameters respectively.

An implementation in Java could look something like this.

String plain = bidtheatreSecret + advertiserUniqueActionID + saleSum; 
SHA1 sha1 = SHA1.getInstance();
String checksum = sha1.hashData(plain.getBytes());

Custom parameters

BidTheatre also supports that the conversion script passes any parameter and corresponding value as part of the tracking url to be linked to this particular conversion. These parameters do need to be defined beforehand and is done so via the View parameters-link in the conversion section.

Did this answer your question?