How To
Summary
This page covers how you can update tracking codes to make them work on the Responsive Apply Talent Gateways (for the apply process). This information is fairly technical and might need to be passed along to your vendor to make the necessary edits to the tracking codes before you add them in BrassRing Workbench.
Objective
With the migration from Classic Talent Gateways to Responsive Apply, there are numerous questions regarding tracking codes and how they work in Responsive Apply
Clients are taking the same tracking code that worked in the Classic Talent Gateway and adding it to the Responsive Gateway Questionnaires, through text widgets
This document provides tips and tricks for migrating and converting those tracking codes so they can work with your Responsive Apply Gateways
Types of Tracking Codes
There are several types of tracking codes that exist, such as:
- IMAGES: Pixel tracking code from app cast
- IFRAMES: DoubleClick Floodlight Tag from fls.doubleclick.net
- Direct JavaScript
These scripts inject the html tags (such as img/Iframe/frame) with source from the respective vendor hosted URL that uses plain JavaScript method “document.write()”. The responsive design of our Talent Gateways means that it’s a single page application and the “document.write()” method makes the entire webpage empty. (This method replaces the existing view with img/Iframe/frame tags, which cannot be identified visually.) As a result, it can affect the candidate experience.
Steps
NOTE:
IBM allows for tracking through self-service as explained in this document, however we cannot test, debug, or assist with issues as the information is only used for placement for the tracking to operate. All third-party scripts are the responsibility of the customer and vendor.
Instead of document.write, IBM recommends creating tracking elements dynamically, with JavaScript, that uses document.createElement() and append that element to the page body. Note, this can require some technical effort. An example is provided to show the steps.
IMAGE PIXEL TRACKING CODE

MANIPULATED SCRIPT
A function was created as part of the $(document).read() call (circled in blue) by suffixing the trackingid (highlighted src variable) to maintain unique function name and the source value “src” (circled in red) with a new source string. When reviewing the provided code, attributes such as width, height, Alt, and src become node attributes (by using “setAttribute()” method).
This process might differ for each tracking vendor.

SCRIPT FOR TRACKERS USING AN IMAGE
<!--
Start of DoubleClick Floodlight Tag: Please do not remove
Activity name of this tag: 1608 - ATS - Pre-Screening Questions
URL of the web page where the tag is expected to be placed: https://krb-sjobs.brassring.com/TGnewUI/Search/Home/Home?partnerid=30079&siteid=6062
This tag must be placed between the <body> and </body> tags, as close as possible to the opening tag.
Creation Date: 08/08/2016
-->
<script type="text/javascript">
$(document).ready(function(){
function executeScript5904605(){
var axel =Math.random()+"";
var a = axel*10000000000000;
var imgNode=document.createElement("img");
imgNode.setAttribute("width", 1);
imgNode.setAttribute("height", 1);
imgNode.setAttribute("alt", "");
imgNode.setAttribute("src", "https://ad.doubleclick.net/ddm/activity/src=5904605;type=linkl0;cat=1608-000;dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;ord=" + a + "?");
document.body.appendChild(imgNode);
}
var objFound = $("img[src*='https://ad.doubleclick.net/ddm/activity/src=5904605']")[0];
if(typeof objFound == 'undefined'){
executeScript5904605();
}
});
</script>
<noscript>
<img src="https://ad.doubleclick.net/ddm/activity/src=5904605;type=linkl0;cat=1608-000;dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;ord=1?" width="1" height="1" alt=""/>
</noscript>
<!-- End of DoubleClick Floodlight Tag: Please do not remove -->
DOUBLE CLICK FLOODLIGHT TAG
ACTUAL SCRIPT

MANIPULATED SCRIPT
The function name was changed (circled in blue) by suffixing the trackingid to maintain unique function name and the source value “src” (circled in red) with a new source string. The Token [BRUID_TOKEN] is replaced by Candidate Reference Number during the job apply flow. When looking at the provided code, attributes such as width, height, alt, and src become node attributes (by using “setAttribute()” method).

SCRIPT FOR TRACKERS USING AN IFRAME
<!--
Start of DoubleClick Floodlight Tag: Please do not remove
Activity name of this tag: 04_Application_Submitted
URL of the webpage where the tag is expected to be placed: http://www7.i-grasp.com/fe/tpl_Linklaters15.asphttp://
This tag must be placed between the <body> and </body> tags, as close as possible to the opening tag.
Creation Date: 08/04/2014
-->
<script type="text/javascript" id="DoubleClickFloodlightTag1073178">
$(document).ready(function(){
function executeScript3736901(){
var axel = Math.random() + "";
var a = axel * 10000000000000;
var newIFrame=document.createElement('iframe');
newIFrame.setAttribute("width", 1);
newIFrame.setAttribute("frameBorder", 0);
newIFrame.setAttribute("height", 1);
newIFrame.setAttribute("src", "http://3736901.fls.doubleclick.net/activityi;src=3736901;type=atsvg580;cat=04_ap073;u2=[BRUID_TOKEN];u1=[Requisition ID];ord=" + a + "?");
newIFrame.setAttribute("style", "z-index:-11111");
document.body.appendChild(newIFrame);
}
var frameExists = $("iframe[src*='http://3736901.fls.doubleclick.net/activityi;src=3736901;']")[0];
if(typeof frameExists == 'undefined'){
executeScript3736901();
}
});
</script>
<noscript>
<iframe src="http://3736901.fls.doubleclick.net/activityi;src=3736901;type=atsvg580;cat=04_ap073;u2=[BRUID_TOKEN];u1=[Requisition ID];ord=1?" width="1" height="1" frameborder="0" style="display:none"></iframe>
</noscript>
<!-- End of DoubleClick Floodlight Tag: Please do not remove -->
APP CAST TRACKING SCRIPT
ACTUAL SCRIPT
![]()
MANIPULATED SCRIPT
The function name in this example is br3-1529. The numbers after executeScript need to be unique.

SCRIPT FOR TRACKERS USING ONLY JAVASCRIPT
<script type="text/javascript">
$(document).ready(function(){
function executeScript1529(){
var jsElm = document.createElement("script");
jsElm.setAttribute("src", 'https://pixel.appcast.io/pixels/br3-1529.js?ent=0');
jsElm.setAttribute("type", "text/javascript");
jsElm.setAttribute("async", true);
document.body.appendChild(jsElm);
}
var isElmFound = $("script[src*='https://pixel.appcast.io/pixels/br3-1529.js?ent=0']")[0];
if(typeof isElmFound == 'undefined'){
executeScript1529();
}
});
</script>
Notes
- Tracking codes or scripts must be placed in a text widget of your Responsive Gateway Questionnaires. It must be added to each page you would like to track candidate activity for.

- IBM is not changing any tracking id’s from the URLs. The manipulation of the script must be complete to execute the tracking codes.
- There are no issues with <noscript> tags; you can add them as-is.
- Currently, IBM offers the BRUID_TOKEN only to be used.
- This process might differ for each tracking vendor.
- All changes are the responsibility of the client or vendor.
- Note: If your organization would like one tracking code placed on the Talent Gateway pages (non-GQ pages), you can enter a maintenance request with your IBM representative. (These codes/pixels/scripts must meet IBM Requirements.) IBM helps with the implementation of that script. If your organization would like the tracking code or pixel run on the home page or job details page, you need to make accommodations within your tracking code/pixel/script to not tag the other Talent Gateway pages. The BrassRing Talent Gateway architecture is such that we fire the script on every page.
Testing and QA are the responsibility of the client or vendor. Testing is critical to ensuring no disruption in service due to bad java script.
Was this topic helpful?
Document Information
Modified date:
13 May 2021
UID
ibm10717507