Table of Contents



Overview

If you are uploading assets directly into Beeswax or using VAST 2.0 Wrapper, this article does not apply, as Beeswax handles all click redirection automatically.

You must include a click macro in third-party JavaScript ad tags or HTML5 creatives in order to track clicks in Beeswax and to serve on Google AdX (and other exchanges requiring click redirects). The Buzz API and UI automatically detect tags from popular ad serving systems including Doubleclick Campaign Manager and Sizmek.

How it works

The {{CLICK_URL}} macro expands into two parts: the Beeswax click tracker and the Beeswax redirect. This URL is from the domain "https://event.bidr.io" and ends in "&dest=".  For the redirect to your destination URL to work properly, you must populate the destination URL value after the macro, and the destination URL must be properly escaped (aka encoded) [Example 1].

Example 1: {{CLICK_URL}}https%3A%2F%2Fwww.beeswax.com%2Fprivacy.html

As an additional complication, some exchanges require a redirect through their exchange as well.  In this scenario, Beeswax populates the required exchange macros automatically after "dest=". Thus, the inserted destination URL must be escaped one additional time, and the destination URL will need to be escaped twice [Example 2].

Example 2: {{CLICK_URL}}https%253A%252F%252Fwww.beeswax.com%252Fprivacy.html

Beeswax additionally offers an escaped click macro: {{CLICK_URL_ESC}}. This version is often used when the click redirects through your ad server before redirecting through Beeswax. The destination URL must be encoded twice in this case [Example 3], and when serving on exchanges that require a redirect through their system, the destination URL will need to be encoded three times [Example 4].

Example 3: {{CLICK_URL_ESC}}https%253A%252F%252F www.beeswax.com%252Fprivacy.html

Example 4:

{{CLICK_URL_ESC}}https%25253A%25252F%25252Fwww.beeswax.com%25252Fprivacy.html

When using a third party ad server, you often will insert the {{CLICK_URL}} or {{CLICK_URL_ESC}} macro as a value for one of your ad server’s parameters, and you will declare the destination URL in your ad server.

To determine how many times to escape your destination URL, use the {{NUM_DEST_URL_ESCAPES}} macro (or our {{NUM_DEST_URL_ESC_ESCAPES}} macro, which is incremented by one) to indicate how many times the destination URL should be escaped.  The potential values of the {{NUM_DEST_URL_ESCAPES}} macro will be 1 or 2.  The potential values of the {{NUM_DEST_URL_ESC_ESCAPES}} macro will be 2 or 3.

Typically, the {{NUM_DEST_URL_ESCAPES}} macro is used in conjunction with the {{CLICK_URL}} macro, and the {{NUM_DEST_URL_ESC_ESCAPES}} is used in conjunction with the {{CLICK_URL_ESC}} macro.  We strongly recommend testing the various combinations as this is not a hard and fast rule.

Examples of how clicks are tracked:

Using the {{CLICK_URL}} macro on a custom tag that does not use an ad server

  1. Prior to the ad being served, the Beeswax click macro expands to an Beeswax URL with a domain https://event.bidr.io/.
  2. Ad is served.
  3. User clicks on the ad.
  4. If the exchange the ad ran on does not require a redirect, the user is sent:
    1. First, through https://event.bidr.io/clk so Beeswax can track the click -- The Beeswax URL is not escaped.
    2. Second, to the destination URL -- The destination URL in the tag needs to be escaped 1 time.
  5. If the exchange the ad ran on requires a redirect, the user is sent:
    1. First, through https://event.bidr.io/clk so Beeswax can track the click -- The Beeswax URL is not escaped.
    2. Second, through the exchange -- The Exchange URL is escaped once.
    3. Lastly, to the destination URL -- The destination URL in the tag needs to be escaped 2 times.

Using the {{CLICK_URL_ESC}} macro on an ad server that redirects through the ad server first and then to the landing page (e.g. Most 3rd party Ad Servers)

  1. Prior to the ad being served, the Beeswax click macro {{CLICK_URL_ESC}} expands to an escaped Beeswax URL value.
  2. Ad is served.
  3. User clicks on the ad.
  4. If the exchange the ad ran on does not require a redirect, the user is sent:
    1. First, to your adserver -- The ad server URL is not escaped
    2. Second, through https://event.bidr.io/clk so Beeswax can track the click -- The Beeswax URL is escaped 1 time.
    3. Lastly, to the destination URL -- The destination URL needs to be escaped 2 times.
  5. If the exchange the ad ran on requires a redirect, the user is sent:
    1. First, to your adserver -- The ad server URL is not escaped
    2. Second, through https://event.bidr.io/clk so Beeswax can track the click -- The Beeswax URL is escaped 1 time.
    3. Third, through the exchange -- The Exchange URL is escaped 2 times.
    4. Lastly, to the destination URL -- The destination URL needs to be escaped 3 times.

Using the {{CLICK_URL_ESC}} macro on an ad server that fires off click trackers in parallel (e.g. Sizmek)

  1. Prior to the ad being served, the Beeswax click macro {{CLICK_URL_ESC}} expands to an escaped Beeswax URL value.
  2. Ad is served.
  3. User clicks on the ad.
  4. If the exchange the ad ran on does not require a redirect, the user is sent:
    1. Directly to the landing page -- The landing page URL is not escaped.
    2. In parallel, an image pixel from domain https://event.bidr.io/clk is fired so Beeswax can track the click -- The Beeswax URL is escaped 1 time.
  5. If the exchange the ad ran on requires a redirect, the user is sent:
    1. Directly to the landing page -- The landing page URL is not escaped.
    2. In parallel, an image pixel from domain https://event.bidr.io/clk is fired so Beeswax can track the click -- The Beeswax URL is escaped 1 time.
    3. Second in parallel, the image pixel redirects to the exchange -- The Exchange URL is escaped 2 times.