Imagine your website is like a large supermarket. Each aisle represents a different section of your site, and each product is a possible feature or interaction for your visitors.
Now, if you want to understand which products are most popular, what times of day customers most often visit certain aisles, or even how much time they spend contemplating a product before buying it (or abandoning their purchase), you will need a system to track this information.
This is where
Just as you might place sensors in a supermarket to track customer movements and behavior, a tagging plan determines where and how to place "tags" on your website to track user interactions.
These tags capture valuable information every time a visitor performs an action (such as visiting a page, clicking on a link, filling out a form, etc.) and transmit this data to Eulerian for analysis, attribution & activation.
Attribution is the practice of determining which marketing channels (such as paid advertising, organic search, social media) have contributed most to a desired action, such as a sale or a lead.
To do this, it is necessary to be able to track the user's journey on the site where the sale or lead will take place.
Without an adequate tagging plan, it will be difficult or even impossible to analyze the quality of traffic sources (and their profitability in the case of paid marketing campaigns).
A well-thought-out tagging plan will also add depth to the quality and profitability analysis of traffic sources.
If, for example, you wish to be able to analyze the performance of a traffic source for certain categories of products sold on your site, you will first need to have correctly collected the information related to the products at the time of sale.
Analytics is the study of user behavior on a website. It's like a detailed map that shows where visitors go, what they like or dislike, and where they abandon their journey.
Without a good tagging plan, your map would be incomplete or unclear.
You could be missing crucial information about how users interact with your site, which could lead you to make decisions based on incomplete data.
A CDP is a technology that collects, unifies, and segments customer profiles from different sources.
It allows companies to understand their customers holistically, create audiences (groups of users who share common characteristics) and be able to synchronize/send these audiences to advertising platforms for the purpose of targeting or excluding marketing campaigns.
The tagging plan ensures that all relevant interactions are captured and sent to the CDP.
Without proper tagging, your CDP may not have a complete view of the customer, thus limiting its ability to personalize experiences and effectively target ads.
This refers to almost all the pages on your site. This tag allows us to count these pages.
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"profile","visitor"
]);
EA_push(EA_datalayer) ;
</script>
: This refers to all pages presenting a single product; it counts the product page viewed, the product data associated with the product page present, and identifies the users who visited that page.
<script type="text/javascript">
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"profile","looker"
"prdref","<product_sky>",
"prdname","<product_name>",
"prdgroup","<product_group>"
];
EA_push(EA_datalayer);
</script>
A category page is defined as having at least three products on the same page. This tag identifies a page containing a product listing. It is triggered each time the category page loads.
<script type="text/javascript">
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"prdref","<product sku 1>",
"prdref","<product sku 2>",
"prdref","<product sku 3>"
];
EA_push(EA_datalayer) ;
</script>
This tag allows you to display user queries entered into your internal search engine (which must be declared in the tag) in the user interface. If you have a search engine, this tag will be triggered on the results page.
: The isearch values must be declared beforehand.
<script type="text/javascript">
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"isearchengine","<name_searche_engine>",
"isearchresults","<number of total results>"
"isearchkey","<search_param>",
"isearchdata","<search_value>"
];
EA_push(EA_datalayer) ;
</script>
These are the "" objectives of your site, anything you consider an engaging action that converts your user into a lead (account creation, form completion, newsletter sign-ups, etc.). This tag is triggered when the action is completed.
<script type="text/javascript">
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"ref", "<unique_lead_id>",
"estimate","1",
"type","<lead_type>",
"<crm_parameter_1>","<crm_parameter_value_1>",
"<crm_parameter_2>","<crm_parameter_value_2>",
"<crm_parameter_3>","<crm_parameter_value_3>",
"<custom_conversion_parameter_1>","<custom_conversion_parameter_value_1>",
"<custom_conversion_parameter_2>","<custom_conversion_parameter_value_2>",
"<custom_conversion_parameter_3>","<custom_conversion_parameter_value_3>"
];
EA_push(EA_datalayer) ;
</script>
: triggers on the cart page and/or when a user clicks "add to cart". Counts a cart started, measures conversion and cart abandonment rates, collects shopping cart contents, and enables audience building based on cart-related behaviors.
<script type="text/javascript">
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"profile","shopper"
"scart","1",
"scartcumul","0",
"prdref","<product_sku>"
"prdamount","<product_product>",
"prdquantity","<quantity_sold>",
"prdparam-<custom_product_parameter_1>","<value_custom_product_parameter_1>",
"prdparam-<custom_product_parameter_2>","<value_custom_product_parameter_2>",
"prdparam-<custom_product_parameter_3>","<value_custom_product_parameter_3>",
"<crm_parameter_1>","<crm_parameter_value_1>",
"<crm_parameter_2>","<crm_parameter_value_2>",
"<crm_parameter_3>","<crm_parameter_value_3>",
"<custom_conversion_parameter_1>","<custom_conversion_parameter_value_1>",
"<custom_conversion_parameter_2>","<custom_conversion_parameter_value_2>",
"<custom_conversion_parameter_3>","<custom_conversion_parameter_value_3>"
];
EA_push(EA_datalayer) ;
</script>
: This is the primary goal of your site, what you want the user to do. Most of the time, it's to make a purchase, but it's also possible to set a form to fill out or any other important interaction as the primary conversion. It's triggered on the Thank You page or the payment confirmation page to ensure the conversion is successfully completed.
<script type="text/javascript">
var EA_datalayer = [
"path","<page name>",
"pagegroup","<page group>",
"uid","<unique user id>",
"email","<hashed_email_sha156>",
"profile","buyer"
"newcustomer","set to 1 for new customer",
"ref","<unique_transactoin_id>",
"amount","<total_amount>",
"type","<transaction_type>",
"payment","<payment_type>",
"currency","<ISO code for currency>",
"prdref","<product_sku>"
"prdamount","<product_product>",
"prdquantity","<quantity_sold>",
"prdparam-<custom_product_parameter_1>","<value_custom_product_parameter_1>",
"prdparam-<custom_product_parameter_2>","<value_custom_product_parameter_2>",
"prdparam-<custom_product_parameter_3>","<value_custom_product_parameter_3>",
"<crm_parameter_1>","<crm_parameter_value_1>",
"<crm_parameter_2>","<crm_parameter_value_2>",
"<crm_parameter_3>","<crm_parameter_value_3>",
"<custom_conversion_parameter_1>","<custom_conversion_parameter_value_1>",
"<custom_conversion_parameter_2>","<custom_conversion_parameter_value_2>",
"<custom_conversion_parameter_3>","<custom_conversion_parameter_value_3>"
];
EA_push(EA_datalayer) ;
</script>
: This tag allows you to retrieve URLs that have generated a 404 error page, so it should be triggered on pages that present this type of error when the page is loaded.
<script type="text/javascript">
var EA_datalayer = [
"error","1"
];
EA_push(EA_datalayer) ;
</script>
Custom goal tracking is a complex event concept that allows for more advanced data capture. It precedes/complements the concepts of shopping cart/sale/lead.
<script type="text/javascript">
var EA_datalayer= [
"actionname", "form-subscribe1",
"path", "/i/am/here",
"actionmode", "in",
"actionlabel", "sales,form,blue",
"actionpname", "param1",
"actionref", "jb8VtnxBwnMhbq",
"actionpname", "param2",
"actionpvalue", "value1",
"actionpvalue", "randomvalue",
"actionpfinite", "0"
];
EA_push(EA_datalayer);
</script>
Here are some examples of reports generated by these different types of tags:
Overall summary, Analytics reports (page, page group, funnel, heatmap...)
Overall summary, Product performance reports, Analytics reports
Analytics Reports (Page Category, Page Group...)
list of internal search engine queries and list of internal search engines
Overall Summary, Product Performance, Data Mining: List of Quotes
Overall Summary, Product Performance, Data Mining: Sales List
Conversion tracking report and action report
: Taxonomy refers to the hierarchical classification or to the systematic organization of information or data into categories and subcategories, often based on common relationships or characteristics.
: Imagine an e-commerce company. It could have a taxonomy to organize its tracking events as follows:
- (main category)
- Visit the homepage
- Visit the product page
- Visit the basket
- (main category)
- Add to cart
- Pick up your basket
- Purchase finalized
- (main category)
- View from a promotional video
- Click on a promotional link
- Newsletter signup
: By organizing events in this way, the company can easily analyze and understand user behavior in different sections or categories of interactions. The taxonomy facilitates data segmentation and enables more detailed and relevant analyses.
Well-designed naming conventions ensure reliable and interpretable data. Here are some best practices for developing effective naming conventions:
Before diving into tagging, clearly define your objectives. Ask yourself:
- What KPIs do you want to track?
- What type of user behavior do you want to analyze?
These objectives will guide your entire taxonomy.
: Use clear and descriptive names. Prefer "click_button_purchase" to "cba".
: Be consistent in your naming conventions. If you use "click_" as a prefix for click actions, make sure you use it for all clicks.
: Always use lowercase characters to avoid confusion. A taxonomy in "Click_Button" is different from "click_button" for some systems, which can lead to misinterpretations.
: They can sometimes cause interpretation or encoding problems. Use underscores (_) instead of spaces or other characters.
Consider the hierarchy of data (taxonomy):
: Defines the global group (e.g., "videos", "buttons", "forms").
: Details the specific action (e.g., "play", "pause" for the "videos" category).
: Adds additional granularity, if needed (e.g., the video name).
Ensure that similar or related events have normalized values. For example, do not use both "registration" and "registration" to refer to the same action.
Even with a well-designed taxonomy, without documentation you risk losing essential information:
: What exactly does "click_button_purchase" mean?
: This helps to clarify the intent and use.
: If the taxonomy changes, the documentation must follow.
The taxonomy must be able to evolve over time. Your website or application will evolve, new features will be added, and others will be removed. Your taxonomy must be able to easily adapt to these changes.