# Troubleshooting and Trackers Configuration Guides
# Troubleshooting guide for 3rd party trackers
##### **How to check if the tracker is a pixel:**
Easiest way to check if the tracker you’re using is a 1x1 pixel or not is just to open it in a browser, for example:
```
https://pixel.adsafeprotected.com/jload?anId=931059&advId=Eskimi&campId={campaign_id_enc}&pubId=
{site_domain_enc}{app_bundle_enc}&chanId={creative_id_enc}&placementId={placement_id}
```
From the first view these two trackers look almost identical, but they’re not, if you would open both of them in your browser you will see. You will always recognize the pixel if the browser window is a black screen with a small 1x1 white dot in the middle.
---
If you implement the pixel incorrectly (for example if you use the first URL) there might be huge discrepancies between us and the 3rd party platform (they might even not track anything), so it’s very important before you launch a campaign that uses 3rd party trackers to double check if the trackers are correctly implemented.
Other 3rd party pixel examples:
```
https://ad.doubleclick.net/ddm/trackimp/N705418.1727343ESKIMI.COM/B28985587.353603375;dc_trk_aid=
545020201;dc_trk_cid=182974786;ord=[timestamp];dc_lat=;dc_rdid=;tag_for_child_directed_treatment=;tfua=;
gdpr=${GDPR};gdpr_consent=${GDPR_CONSENT_755};ltd=?
```
```
https://track.adform.net/adfserve/?bn=60266225;1x1inv=1;srctype=3;ord={cachebuster}
```
**Some other ways to recognize if it’s a pixel:**
```javascript
```
This is a our internal IAS JS tracker, but you can extract a pixel from this tracker. Most of the tracking pixel will be placed inside the **<img>** element:
```javascript
```
If you look closely you we will that the height and the width are set to 1x1 for this element (witch almost always indicates that it’s 1x1 pixel). So just extract the URL part from this element and use it as a tracking pixel (it’s not always possible to extract the pixel from JS trackers, keep that in mind).
---
##### **How to validate that you have a 3rd party JavaScript tracker:**
- The tag will be in a `
```
However, if you run a campaign on Gadsme exchange with this pixel, then the client might have bid data discrepancies between 3rd party platform and our impressions. To avoid that, please always edit the tracker as in the example below:
```javascript
```
The pixel below doesn't have "$" before GDRP macros and the macros themselves are written in lowercase format. Also `GDPR_CONSENT_755` is changed to `gdpr_consent` (it doesn't have the "755" number).
# Adform creative tag implementation (updated)
The following article presents the approach how adform tags should be implemented in Eskimi DSP.
1\. Usually the tags which you will receive from client will be placed in excel file and looks similar to example below
```javascript
```
2\. To continue tag implementation, you need to create banner type creative set, then add creative as JS/HTML banner and copy the tag from spreadsheet manually.
- *When copying tags from this spreadsheet, make sure that you click inside the cell and highlight the text that you want to copy. If you select and copy the entire cell, rather than the text within it, some applications may put an extra set of quotation marks (") around the tags, causing them to function incorrectly when they're placed on the publisher's web page.*
- *Don't forget to establish weight and hight for creative in DSP system*
*3. Once the code is copied, you need to adjust tag with click macro in order to track clicks in campaign.*
*3.1 add `;click={click_url}` into the redirect string.*
*3.2 To ensure proper cache-busting, replace **\[timestamp\]** with **{CACHEBUSTER}**.*
Once all 2 steps completed the tags should look like
```javascript
```
4\. Press save and later you can link this creative to your campaign.
---
**Possible issues and troubleshooting:**
According to our experience we noticed that the adform create tags might be created in multiply variations. Unfortunately, sometimes the creatives might be prepared incorrectly, not follow adform requirements. Therefore sometimes you might notice that after you followed the guide of tag adjustment the tag don't track clicks properly. In such cases suggest to client double check how the creatives were created, and if they follow all adform requirements. In that scenario client can refer to adform support team, or refer to official adform documentation:
The documentation of how the creative should be created below:
*[https://www.adformhelp.com/s/article/UUID-ba1da05a-285e-ade0-1165-a33481f90b35](https://www.adformhelp.com/s/article/UUID-1a343877-58f8-363d-69d3-0f81da9b9715)*
Please also note that there are three important things to be taken into consideration when talking about Adform clicks to work correctly and tracker to fire well:
\- Adform DHTML library;
\- manifest.json file;
\- Click function.
# Sizmek Tags
Sometimes it may happen that you will receive JS banner tags for Sizmek. But the tags may not be compatible with our DSP platform, without any additional changes.
Lets take an example of a bad tag:
```javascript
```
Upon looking at the tag there are a few things:
- First of all our **{CLICK\_URL}** macro is missing.
- And no use of **{CACHEBUSTER**} macro.
- The URL in the **<a>** needs to be encoded.
In order to fix the tag, we need to make several changes.
To start let's look at the correct tag.
```javascript
```
1\. **{CLICK\_URL}** macro is added in two places, the **<script>** part of the tag, and the **<noscript>** part of the tag.
**<script>** part of the tag: to insert the **{CLICK\_URL}** macro you have to add the **"&ncu=$${CLICK\_URL}$$"** of the first URL.
**<noscript>** part of the tag: insert **{CLICK\_URL}** before the **href="" url**
2\. Enable Cachebuster. Cachebuster in Sizmek is enabled, by using the **\[timestamp\]** property of the URL. To enable this from our DSP end, that has to be changed to **{CACHEBUSTER}**.
3\. Encode the **<noscript>** URL: the after the **{CLICK\_URL}** part has to be encoded. To encode the URL use this tool: [https://meyerweb.com/eric/tools/dencoder/](https://meyerweb.com/eric/tools/dencoder/).
# Ad Discrepancy in CM360
##### **What is CM360?**
Google Campaign Manager 360 (CM360) is an ad server within [Google’s Marketing Platform](https://marketingplatform.google.com/about/) which allows to host and manage digital advertising all in one place and review creative performance in real-time.
Marketers use CM360 to manually create tracking assets called “tags”, which are then delivered by a media partner.
---
##### **What is Ad Discrepancy?**
Ad discrepancy refers to a difference in analytical data between two parties. Discrepancies arise from the use of multiple tools, formulas, and methodologies to calculate data. The most frequent metrics used by publishers and advertisers are impressions, clicks, page views, user sessions, bounce rate, and others, depending on the use case.
The advertising industry is currently experiencing two types of discrepancies:
1\) between ad tech vendors;
2\) between sell-side and buy-side platforms.
---
##### **What percentage of discrepancy is considered normal by CM360?**
When counting clicks and impressions, discrepancies of up to 20% are considered normal by CM360.
---
##### **What are the frequently occurring reasons of discrepancies in CM360?**
1. Reports with imprecise comparisons. For instance, do the third-party report and the Campaign Manager 360 report have the same date range?
2. The initially exported tag has been wrapped or changed.
3. Incorrectly implemented cache-busting.
4. Tag has been implemented more than once.
---
##### **What do to if discrepancy is more than 20%?**
If clicks/impressions discrepancy is more than 20%, recommend to the client to contact Google Marketing Platform support and to do so while the campaign is still live.
Before contacting support, client has to make sure that campaign has enough data, since according to CM360 discrepancies with limited data (less than 1,000 impressions) cannot be investigated.
To receive a faster support, CM360 [recommends](https://support.google.com/campaignmanager/answer/2835377?hl=en) to have this information ready:
1. A placement report broken down by date that allows comparison between CM360 and 3rd Party platform/Site.
2. A live URL or a live app where support can view the ad tags. If that's not possible, provide a test URL or app that's implemented exactly as the live tags - creative preview page in our instance.
Use CM360's [official discrepancy spreadsheet](https://storage.googleapis.com/support-kms-prod/yVJJXbFF87Am6xENmXpRtCXeSHCcvznTn0Nc) to send this information to their support.