Before you start

Transmitting a click ID in the conversion tag allows tracking and attribution even without cookies or in case no cookie is found or available.

The idea is to transmit an ID when a user clicks is redirected to a shop or a web site. This ID then is saved by the shop/website, for example in a first party cookie or in the database. When the conversion is called, it is transmitted in the conversion tag.

For the ID you can use the default Ingenious click ID. The possibility exists to use custom click IDs as well, e.g., if you want to use existing IDs that you have in your system. The next two sections explain both variants.

Assigning and transmitting a click ID to a shop

Transmitting the default click ID

The default click ID is automatically generated by the Ingenious Platform and assigned to the click. Usually, Ingenious adds a click id automatically to every (bounce) tracking link, so you do not need to do anything. The name of the Ingenious click id is ICLID. It looks like this (example)

https://www.shop.com/?iclid=#{ICLID}

where #{ICLID} will obviously be replaced by the click id.

 

Exception: Manual configuration

In (usually very rare) cases, where you need to set up the transmission of the click id manually (for example if a certain specific parameter is needed, you may do the set up manually. The automatically generated parameter ICLID is not added by default in this case.

The click ID will be transmitted as query parameter in the URL with every click. This happens with the use of the additional parameter tool.

You reach this page by clicking on ‘manage advertiser’ in the advertiser section main navigation menu. On the page with the overview of all the advertisers on your platform, click on the icon next to the relevant advertiser. You will find the additional parameter feature in the middle of the page.

When you are done, scroll down the page and click on the button ‘save’ in the right lower corner.

Example result: https://yourshopdomain.com/?clicklid=#{CLICK_ID}

read more here: Additional parameters

Transmitting an Ingenious ID (ICLID) on ad impressions

In some cases it can be useful to transmit an Ingenious ID with ad impression redirects. You can use the placeholder #{ICLID} on any redirect target: trg=https%3A%2F%2Fyourshop.com%2Fhtlp.html%3Ficlid%3D%23%7BICLID%7D

You can provide such ad impression ID on conversions the same way as the click one. The background system will automatically add the corresponding ad impression touchpoint to the user journey and process it according to the attribution rules.

read more here: Post View Tracking with a High Traffic Landing Page (HTLP)

Transmitting a custom click ID

The default click ID is automatically generated by the Ingenious Platform. However you can also assign a custom click ID. A custom click ID could be an existing Click ID of your own system or the ID of a tool that you use. To assign a custom click ID to a click, you need to pass your click ID in the form of a query parameter with the click tracking request.

Make sure you have a query parameter name for custom click ID tracking configured for your Platform. If you do not have it yet, please contact our Customer Success team.

To add a click ID, place an ampersand sign (&) at the end of the tracking URL and use your query parameter name as the name of the parameter. Subsequently, add the equal sign (=) and the value you want to use. See this example of a click tracking URL with a click ID:

https://track.example.com/ts/i3621155/tsc?amc=aff.demonet.2209.5310.5173&YOUR_PARAMETER_NAME=00edacd8-74d1-11ea-bc55-0242ac130003

The platform will store the custom click ID with the click. This enables you to pass this ID with a conversion to connect the click with the conversion.

If you need to transmit your custom click ID to the shop, please configure it in the Additional Parameter Settings of the advertiser.

Saving the parameter and fetching it

The shop/ website reads the clickID from the URL and saves it either in a first party cookie or a database.

When saving it in a cookie we recommend to to this server side (e.g. with PHP).

Then, before executing the conversion tag, the click ID needs to be fetched from the cookie/ the data base so that it can be transmitted in the conversion tag.

Examples for saving the click ID

Code example PHP: Set cookie with clickID server side

<?php 
if(isset($_GET["clickid"])) { 
    setcookie("clickid", $_GET["clickid"], time() + 365*24*60*60);
}
?>

Code example Javascript: Set cookie with clickID browser side

<html>
<head>
</head>

<body>
    <div id="mydiv">Hello, this a Test Page</div>
    <script>
        function setCookie(cname, cvalue, exdays) {
            var d = new Date();
            d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
            var expires = "expires=" + d.toUTCString();
            document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
        }

        function getCookie(cname) {
            var name = cname + "=";
            var decodedCookie = decodeURIComponent(document.cookie);
            var ca = decodedCookie.split(';');
            for (var i = 0; i < ca.length; i++) {
                var c = ca[i];
                while (c.charAt(0) == ' ') {
                    c = c.substring(1);
                }
                if (c.indexOf(name) == 0) {
                    return c.substring(name.length, c.length);
                }
            }
            return "";
        }

        function saveClickId(qparam) {
            //Get ClickID and save to Cookie
            var urlParams = new URLSearchParams(window.location.search);
            if (urlParams.has(qparam)) {
                var cli = urlParams.get(qparam);
                setCookie(qparam, cli, 60);
            }
        }

        (function () {
            //read new value with name clickid
            saveClickId('clickid');
            //show value in Browser
            var para = document.createElement("P");
            var t = document.createTextNode("This is the ID: " + getCookie('clickid'));
            para.appendChild(t);
            document.getElementById("mydiv").appendChild(para);
        })();

    </script>
</body>
</hmtl>

Examples for fetching the click ID

Code example PHP: Fetch clickID from cookie server side

<?php 
if(isset($_COOKIE["clickid"])) { 
    $clickid = $_COOKIE["clickid"]; 
}
?>

Code example Javascript: Fetch the clickID from cookie browser side

<script> 
function getCookie(cname) {
    var name = cname + "="; var ca = document.cookie.split(";"); for (var i = 0; i < ca.length; i++) {
        var c = ca[i]; while (c.charAt(0) == " ") {
            c = c.substring(1);
        } if (c.indexOf(name) == 0) {
            return c.substring(name.length, c.length);
        }
    } return "";
}
var clickid = getCookie("clickid"); 
</script>

Implementing the conversion tag with click ID

When implementing the conversion tag, add all the parameters you need. Make sure, that the click ID that you fetched from the cookie is transmitted. This happens with the parameter ‘clickId’ when you use the Javascript code or with ‘cli’ when you use the image pixel or server to server callback URL. 

Further reading on how to implement the conversion tag: