Click Macros

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.

  • NOTE: in order for Beeswax click tracking to work properly with Flashtalking, you’ll need to have the Flashtalking team enable some additional settings on your ad tags as they’re trafficked. Click here for more detailed information.

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.

  • Some ad servers have the capability to properly escape your destination URLs without any additional work.
  • Some ad servers require you to declare within a parameter how many times a destination URL should be escaped.
  • Some ad servers do not offer such a parameter, and you will be responsible in your tag for properly escaping the URL using a custom “for” loop.
  • Still other ad servers fire off click trackers like Beeswax’s in parallel.  In this case, you would not need to escape your destination URL at all and would only need to insert the Beeswax click macro as the value for the proper parameter.

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.
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us