Skip to main content
You can define a source for the following purposes:
  • A source can be a website or an app and all the events happening on site. Assume that pixels are fired on all pages on the sample website X.
  • A source can be a specific landing page(s) that you want to collect information from. This landing page can be a subset of a website or an app due to seasonality or security concerns. Assume that pixels are fired in the Level 10 event page, where in-App purchases are made.
  • A source can be a campaign and all the events relating to that campaign. For example, the launch of the Redmi Note 4 on technological blog websites.
  • A source can be a set of campaigns that are logically grouped together or all the campaigns and their corresponding events. For example, the launch of Redmi Note 4 launch as one source consisting of data from each of the following campaigns:
    • Campaign A consisting of celebrity banners
    • Campaign B consisting of technical specifications
    • Campaign C is key-word based

Create Global Properties and Pixels

Global properties are parameters attached to all pixels created under a source and are mandatory for the pixel to function properly. These properties are opt-in related parameters and macros as follows:
  • IAB’s TCF-based macros for GDPR countries or simple optin-yes/no macros
  • Macros for MAID in the case of mobile app pixel
When the pixel endpoint receives data, the endpoint either requires the optin=yes/no or gdpr={euconsent}information in order to process the data. In the case of a mobile app, pixels and MAID are mandatory for user identification. A mobile advertising identifier or MAID, is a unique pseudo-anonymous identifier tied to a mobile phone. In the case of TCF-based consent signals, we decrypt the data to check for Publisher consent as the pixel is placed on your website or app properties. Once you have created the source, the next steps are explained in the topics below.

Create Global Properties

After creating a source, the next step is to create the individual pixels within the source. Start by adding the global properties. The global properties are applied to all the pixels that you create for that source. To add the global properties, perform the following steps:
1
Go to the IMPLEMENTATION DETAILS tab of the source.
2
Click ADD GLOBAL PROPERTIES and add the global properties.
3
Specify if you have GDPR or TCF-based macros to define the user consent.
  • If you have a GDPR or TCF-based macro, then enter the GDPR macro and the Consent String macro.
    https://spl-alpha.zeotap.com/fp?env=mWeb&w_k=MmE2NGJiZTctMjZmMy00MGMyLWE1ZTgtNThjNGIzzQ3YjM1&eventType=click&gdpr_consent=CPPFUAyPPFUAyAKAjAENBzCsAP_AAH_AAAYgIUNf_X__bX9j-_59f_t0eY1P9_r3v-QzjhfNt-8F2L_W_L0X42E7NF36pq4KuR4Eu3LBIQNlHMHUTUmwaokVrzHsakWcpyNKJ7LEmnMZO2dYGHtPn9lTuZKY7_78__fz3z-v_t_-39T378X_3_d5_X---_e_V399zLv9____39nN___9v-_8EKQCTDUvAAuzLHBk2jSqFECMKwkKgFABRQDC0RWADA4KdlYBHqCFgAhNQEYEQIMQUYMAgAEEgCQiICQAsEAiAIgEAAIAUICEABEwCCwAsDAIABQDQsQIoAhAkIMjgqOUwICpFooJbKwBKCrY0wgDKfAigUf0VGAjWaIFgZCQsHMcAQAAIAABAAAA.fhgACAgAAAAA&gdpr=1&z_fpuid=login%40gmail.cm
    
  • b. If you do not have a GDPR or TCF-based macro, then enter the Opt-In macro.
    https://spl-alpha.zeotap.com/fp?env=mWeb&w_k=MmE2NGJiZTctMjZmMy00MGMyLWE1ZTgtNThjNGIzzQ3YjM1&eventType=click&optin=yes&z_fpuid=login%40gmail.com
    
4
Click ADD PROPERTIES. The CREATE PIXEL button is activated once the global properties are added.

Create New Pixel per Event

After you have added the global properties, next you have to create pixels for the events. The pixel that you create contains the following details:
  • The write_key for your source
  • The environment whether it is mobile App or mobile Web
  • The global properties and their values
  • The eventType added in the pixel
Perform the following steps to create pixels for the individual events:
1
Go to the IMPLEMENTATION DETAILS tab of the source.
2
Click ADD NEW EVENT PIXEL to add the event pixel.
3
A list of events supported by the Zeotap catalogue appears. You can either select the event that is applicable for you or an event that is closest to the event that you want to capture.
4
Once you have chosen an event, add the properties that you want to attach to the pixel. For the pixel that is created, you can attach more properties to be tracked using the add/update properties section. The properties are grouped as follows:
  • ID Properties
  • User Properties
  • Page Properties
  • Campaign Properties
  • Events General Properties
  • Events Automotive Properties
  • Events eCommerce Properties
5
You can set the country of the user by selecting property - country under user group and sending standard alpha iso 3 country codes as values. If this is not sent, by default we will consider the IPAddress of the request for resolving country > Region.
Note:The Click event pixel works in a different manner as no cookie syncing is performed. Assume that you do not want toland the clicker on a campaign page and do not want to cause any delays that may happen due to redirection to any cookie syncing and the final landing page. Therefore, for the Click event, only the Zeotap cookie is captured in the pixel. To capture other cookies, configure other pixels in the same source. So that other pixels can be used to capture cookie sync through other events.

Create a Generic Pixel

Assume that you have created a source to capture all the events on a website. In that case, you can create a generic pixel for an event rather than creating one pixel per event.
For example, you can create a generic pixel such as Viewarticle and then add all the properties that you would like to capture across all the website pages, such as page name, page URL or product-related properties such as product ID, price and so on.
Note:We recommend that you check the pixel across pages to ensure no data loss as across the different browsers mightrestrict the different event names.

Create Masked Pixels

In the pixels that are created per event, the more you add properties, the longer the pixel becomes. This could potentially be a problem with browsers that accept smaller lengths of URLs. To counter this, you can create a pixel where all the data is sent in base64 encoded format. This data can be in the form of a JSON payload with the campaign, event, page, user and id objects, which gets built-in real-time and then must be base64 encoded and attached as value to the parameter ‘&payload=’. Switch to the MASKED tab for each pixel to copy the base pixel to which this base64 encoded payload must be attached. This section also has a base64 encoder that you can try for static payloads typically for campaigns or campaign landing pages. The static payloads encode and generate the pixel that you can use. A sample payload (static or in real-time with actual values) looks as follows:
Code
{
  "event": {
    "eventName": "viewPage"
  },
  "page": {
    "path": "/models/modelX/discover/",
    "referrer": "https://www.carbrandA.com/models/",
    "title": "Product Page",
    "url": "https://www.carbrandA.com/fr/models/modelX/discover/"
  },
  "user": {
    "cellno_with_country_code": {
      "md5": "015f11b906f9150f91910b8420d8a70d",
      "sha1": "eba0dabb4f483bdee39cb3a97644865833a31771",
      "sha256": "92b5072176e723878b5e06ff3ca61898e4eb74e8c46642a0f2db800b17364ab0 "
    },
    "email": {
      "md5": "3f009d72559f51e7e454b16e5d0687a1",
      "md5_lowercase": "3f009d72559f51e7e454b16e5d0687a1",
      "md5_uppercase": "91bf8d1be4424564a5bfd5f0c7a88909",
      "sha1": "c0d0a32c405c68cb538e3891a3e3bce98887f012",
      "sha1_lowercase": "c0d0a32c405c68cb538e3891a3e3bce98887f012",
      "sha1_uppercase": "c47ef0365033801b45a1ce20428079482874a108",
      "sha256": "48ddb93f0b30c475423fe177832912c5bcdce3cc72872f8051627967ef278e08 ",
      "sha256_lowercase": "48ddb93f0b30c475423fe177832912c5bcdce3cc72872f80516279 67ef278e08",
      "sha256_uppercase": "2aad18725e88057c933a6371d1b341ce0faa725e1a936b10f552b3 2e6b0c54c0"
    },
    "fpuid": "0c37ece7-86e5-409e-921c-b38c52f7a795"
  }
}
Below is an example of how the same can be achieved.
1
On the page or event being triggered, create a JSON payload as shown below.
Code
let payload = {"event":{ 
"eventName":"viewPage" 
}, 
"page":{ 
"path":"/models/modelX/discover/", 
"referrer":"https://www.carbrandA.com/models/", 
"title":"Product Page", 
"url":"https://www.carbrandA.com/fr/models/modelX/discover/" }, 
"user":{ 
"cellno_with_country_code":{ 
"md5":"015f11b906f9150f91910b8420d8a70d" 
}, 
"email":{ 
"md5":"3f009d72559f51e7e454b16e5d0687a1" 
}, 
"fpuid":"0c37ece7-86e5-409e-921c-b38c52f7a795"}}
2
Encode it in base64 as mentioned below.
let encodedData = window.btoa(JSON.stringify(payload)); console.log("The payload encoded is: "+encodedData);
3
Add this to the pixel (whether iframe or image).
ifrmElement = document.getElementById("zeotap"); 
ifrmElement.src = "https://spl.zeotap.com/fp?env=mWeb&zdid=X&payload="+encodedData;
4
Below is the final tag that is fired.
<iframe id="zeotap" style="display:none" 

src="https://spl.zeotap.com/?env=mWeb&zdid=X&payload=ewogICJldmVudC I6ewogICAgICJldmVudE5hbWUiOiJ2a

Copy or Email Pixels

Once the pixels are created, you can directly copy them from the Collect UI or send an email to the Implementation Team directly from the UI, with the pixels and the Implementation Guide.
Note:The records for the country and city columns are blacklisted for ingestion because SPL uses the user’s IP address to find out the country and city automatically. For the complete list of blacklisted fields, click here.
Last modified on February 26, 2026