Skip to main content
Skip table of contents

Zync Tag Implementation

“To understand the best is to work on its implementation” - Jean-Marie Guyau

Zync Container Tag Bundle

The Zeta Global Container Tag Bundle includes both a Universal tag and a unique Conversion tag per conversion type. Each tag URL contains marketer-specific hardcoded key-value pairs including:

  • c, the client hash key

  • p, the partner hash key

  • k, the tag short name which defines the tag type within the Zeta Marketing Platform

  • zmpID which defines the account in the Zeta Marketing Platform

Based on the predetermined requirements of the marketer, a tag might also contain additional standard or custom parameters.

Types of Tags

Sample Tag

Universal Tag

The Universal Tag should be implemented upon all pages of the marketer's site, such as the home page, generic pages, product level pages, category level pages, configurators, shopping cart, customer only accessible areas (for e.g., my account), and all stages of a conversion funnel excluding the final conversion page. The more comprehensive site coverage the tag has, the more complete your customer journey data events will be.

CODE
<!-- Zeta Global – Sample Code Do Not Implement – Universal Tag -->
<script async type="text/javascript">
   function zync_call() {
      var z = document.createElement("script");
      var zmpID="client-site-id";
      var CustID="{custID}";
      var z_src = "https://live.rezync.com/sync?c=16b6410431b6374e780104abb0443ca8&p=4e23407029914d0e0d24470fd37577e2&k=client-site-id&zmpID="+zmpID+"&CustID="+CustID;
      z.setAttribute("src", z_src);
      document.body.appendChild(z);
    }
    if (['complete', 'interactive'].indexOf(document.readyState) >= 0) {
       zync_call();
    } else {
       window.addEventListener("DOMContentLoaded", function(){
       zync_call();
     });
  }
</script>

Conversion Tag

The Conversion Tag should be implemented to fire exclusively upon the final conversion/transaction/lead event or page load.

CODE
<!-- Zeta Global – Sample Code Do Not Implement - Conversion Tag -->
<script async type="text/javascript">
    function zync_call() {
       var z = document.createElement("script");
       var zmpID="client-site-id";
       var OrderID="{OrderID}";
       var OrderAmount="{OrderAmount}";
       var z_src = "https://live.rezync.com/sync?c=16b6410431b6374e780104abb0443ca8&p=4e234070
29914d0e0d24470fd37577e2&p=4e23407029914d0e0d24470fd37577e2&k=client-site-id&zmpID="+zmpID+"&OrderID="+OrderID+"&OrderAmount="+OrderAmount;
       z.setAttribute("src", z_src);
       document.body.appendChild(z);
    }
    if (['complete', 'interactive'].indexOf(document.readyState) >= 0) {
       zync_call();
    } else {
       window.addEventListener("DOMContentLoaded", function(){
       zync_call();
    });
  }
</script

Each tag is supplied in HTML format and consists of an asynchronous HTML script tag containing an src attribute pointing to the URL of the tag's JavaScript payload. 

Implementing Zync Container Tags

On this note, we are here to clearly guide you all on how to implement Zync Container tags within your websites.

The Zeta Global Container Tag bundle, which should be triggered to fire upon the DOM ready state, provides compatibility with the marketer's chosen TCF2.0 compliant Consent Management Platform (CMP) and is compatible with all the enterprise tag management systems (TMS), either via a specific Zeta Global template or a custom HTML template. However, if deploying directly within a content management system (CMS), the marketer should implement the tags just before the closing </body> tag in the relevant HTML documents.  

  • The Zeta Global Container Tag bundle should not be piggybacked by a third-party technology vendor platform that utilizes iframes to deliver piggybacked tags, as owing to its nature, the iframe blocks script access to the parent document.  

  • The tag code samples provided here are for the purpose of illustrating the implementation process only; they are not to be implemented on the marketer's site. You can find unique marketer-specific Zeta Global Container tags in the .txt file within the zip archive that accompanied your onboarding.  

Refer to the Common Implementation Methods section for screenshots of correct implementations in various systems.  

Please alert your Zeta Global Account Manager once tagging implementation has been confirmed. If a pre-production sandbox environment is available, please provide it along with any relevant credentials. If tags are on production pages, please confirm from which webpage URLs, the tags should be reviewed. Zeta will view the web pages using a web debugger and check back-end platforms and databases for activity in order to verify successful implementation.  

Cache_busterPageUrl, and Page_Referrer Zync variable values are self-populating and do not require the application of macros or any modifications.

Implementing via Tag Management Systems 

You may already have a tag management system integrated throughout your website. These are some instructions on how to add the Zeta Tag Bundle to various common systems:

  • Google Tag Manager 

  • Adobe Launch 

We would recommend not using frequency capping or conditional firing rules as they may provide an incomplete understanding of your audience. 

Google Tag Manager

1. Add a new Custom HTML tag.

2. Paste the Zeta Global Container tag within the HTML input field.

3. (If applicable) Replace additional parameter value placeholders with the appropriate GTM Variable:

  • GTM Variables will be of the format: {{Variable Name}}

4. Select appropriate Firing Triggers:

  • For Universal Tag: Trigger should include all website pages except the conversion page(s)  

  • For Conversion Tag: Trigger should include website conversion page(s) or event(s)

Additional Notes about Google Tag Manager: 

  • Use the chart below to confirm the {{Random Number}} cachebust macro is set up correctly.

Google Tag Manager Version

Access URL

To Enable {{Random Number}}

V1

http://google.com/tagmanager

Create a new user-defined variable (macro) of type Random Number.

V2

tagmanager.google.com

Activate the Random Number Built-in Variable.

  • Ensure firing rules (called Triggers) are correctly set up. If incorrectly set up, this can lead to unexpected conditional firing. 

  • Confirm that the most recent changes have been published to the live container. 

Adobe Launch

1. Select the appropriate Rule that corresponds to the expected implementation methodology  

  • For Universal Tag: Rule should include all website pages except the conversion page(s)  

  • For Conversion Tag: Rule should include website conversion page(s) or event(s)  

2. Within the Rule, add a new Action

3. Select Extension: Core, Action Type: Custom Code, Language: HTML  

4. Open the Editor  

5. Paste the Zeta Global Container Tag  

6. (If applicable) Replace parameter value placeholders with the appropriate Adobe Data Element

  • Adobe Launch Data Elements will be of the format: _satellite.getVar('Data Element Name')

Implementing via Direct Placement in HTML

When a tag management system is not available, the tags can be placed directly into the HTML. Below are the instructions on where to place the tags:

1. Implement within the </body> element in the HTML on relevant page(s)

2. (If applicable) Replace parameter value placeholders with the appropriate code snippet or variable

Implementation Tips

Be careful with Duplicate / Multi-tag calls 

In order to facilitate the correct setup, page view tags should only be placed once (1x) on the pages they were designed to be placed on.

For example, a coupon download tag should only be placed once on the coupon download page, a home page tag should be placed once on the home page, and a landing page tag should be placed once on the landing page, etc.

Most importantly, the conversion tag should only be placed once (1x) on the intended user conversion action and nowhere else.  

Debugging Tools 

Google Chrome Dev Tools is the recommended tool to view tag fires on a page within its Network tab and comes included with the Google Chrome browser.

 

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.