Caution : Before moving to server-side tagging, make sure you don't need client-side features (identity sync, heatmap, etc.), as server calls do not allow client-side scripting.
2. Configuration of the measurement protocol
2.1 Query structure
Data is sent via HTTP POST or GET requests to the Eulerian tracking server.
The URL format is as follows:
https://TRACKING_HOSTNAME/TYPE/WEBSITE_NAME/
Example for a site named demo-site with a tracking server dem.eulerian.net :
https://dem.eulerian.net/collector/demo-site/
Recommended : Use POST (allows more data to be sent).
If you are using a custom library that can be identified as a bot (such as cURL or wget), the call will not be logged. So provide a specific user-agent or a standard user-agent to override the default of your client library, so that the call can be made. (e.g. Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0)
2.2 Cache management
In some environments, such as browsers, HTTP GET requests can be cached. When a request is cached, subsequent requests can be retrieved from the cache instead of being sent to Eulerian.
To work around this issue, the Measurement Protocol allows a CACHE_BUSTER value to be added as the last element of the URL path, before the payload is sent.
Other : Check and correct the error before trying again.
3. Data to send
Data sent to Eulerian must be UTF-8 and URL encoded as key-value pairs ( param1=val1¶m2=val2 ).
For example, to send the urlp key with the value /my page € , you must first ensure that it is encoded in UTF-8, then in URL, which gives:
urlp=%2Fmy%20page%20%E2%82%AC
3.1 Identification of users
Eulerian Analytics allows the customer to use multiple types of identifiers to maintain identity across the platform and ensure data aggregation to the correct identity.
Therefore, it is necessary to provide specific identity parameters in each hit in order to maintain user identity throughout the current navigation (and future navigations).
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Device ID
euidl
Anonymous user ID
n / A
Yes
d213be2e-053f-4bfb-9c32-1bd6efb5687e
Customer ID
uid
Known customer ID
n / A
No
customer123
3.2 Replay Settings
These settings allow you to override some default values in order to insert client data rather than server data.
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Hit timestamp
ereplay-time
Timestamp (Unix timestamp) at which the hit was recorded.
The current time of the data collection server.
Yes
1599210524
Client IP
ereplay-ip
IP address of the client that generated the hit. If not provided, this will affect the geographic resolution.
The IP address of the server generating the hit.
Yes
12.236.2.65
Client User-Agent
ereplay-ua
User-Agent of the client that generated the hit. If not provided, this will impact device resolution and filtering.
n / A
No, provided that the ereplay-mdevicetype parameter is specified
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0
Client device type
ereplay-mdevicetype
If ereplay-ua cannot be provided, it is possible to manually specify the device type to ensure proper device filtering.
n / A
No, provided that the ereplay-ua parameter is specified
Allows you to specify which categories are disabled for the user. These are the same IDs as those defined in the user interface.
n / A
Yes unless gdpr_consent parameter is present
89-5-3
Allow all categories
pmcat=-
Allows to allow all categories available to the user. Value must be set to - .
n / A
No
-
4. Implementation of the marking plan
4.1 Generic tracking for all pages
These parameters can be provided in all queries sent to Eulerian.
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Page URL
url
Used to send the full URL (document location) of the page where the content is located.
n / A
Yes
https://www.eulerian.com/page/to/awesome/content
Page Name
urlp
Allows you to set a specific page name when the URL is not descriptive enough or needs cleaning.
n / A
No
/page/to/awesome/content
Page group
pagegroup
Allows to assign a specific group of pages. Can be configured directly from the Eulerian platform based on page names?
n / A
No
FAQ
Page label
pglbl
You have 5 labels for each page. The labels are sent in a string and are separated by a comma. ( pglbl=sport,football,madrid) . The order of the labels is important because it indicates which pagelabel id will be filled in. This order must be maintained on all pages of the site.
n / A
No
content, faq, attribution, meta
All tracking parameters from sections 4.2, 4.3, 4.4 and 4.5 must be included within the same call, in addition to the generic tracking parameters.
4.2 Tracking Traffic Sources for Attribution
Traffic sources should be provided through parameters added on the landing page.
This full landing page (including ad tracking parameters) must be provided again to the url parameter.
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
All campaign settings
param1
param2
...
Advertising tracking settings Eulerian, Google Analytics, others.
n / A
Yes
http://maboutique.com/?param1=abc¶m2=xyz ...
Referent
rf
Source URL (SEO)
n / A
Yes
https://www.bing.com/query?kw=eulerian
4.3 Conversion Tracking
These parameters are required to track conversions. Eulerian supports the following transaction types:
order : When a sale is made.
estimate : When a quote, estimate or lead request is generated.
scart : When a shopping cart is created.
⚠Calls are mutually exclusive : a query cannot contain scart=1&estimate=1&order=1 .
It is important to ensure that only one of these parameters is set to 1 per request.
Conversion settings
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Transaction ID
ref
Unique identifier of the transaction.
None
Yes (order or estimate)
518fbb68-707e-4baa-ab46-de3499786751
Transaction amount
amount
Total revenue associated with the transaction, including shipping costs and taxes.
0
Yes (order or estimate)
321.32
Order
order
Must be set to 1 to indicate a sale transaction. Exclusive to the estimate and scart parameters.
0
Yes (order)
1
Estimate
estimate
Must be set to 1 to indicate an estimate/quote. Exclusive to order and scart parameters.
0
Yes (estimate)
1
Shopping cart summary (check if param scartcumul is necessary?)
scart
Must be set to 1 to indicate creation of a cart. Exclusive to order and estimate parameters.
0
Yes (scart)
1
Conversion Status
status
Indicates the status of the transaction.
PENDING
Yes (order or estimate)
VALID / PENDING / INVALID
Order Type / Estimate
type
Description of the order or estimate type. Exclusive to the order and estimate parameters.
None
No
code-promo
Payment method
payment
Payment method used for the order.
None
No
Paypal
Margin
margin
Margin value for the order or estimate. Exclusive to the order and estimate parameters.
None
No
29.00
Products
See 4.4
See 4.4
See 4.4
See 4.4
See 4.4
Good practices
Ensure that only one value betweenorder,estimateandscartis set to1Verify that the transactional ID (ref) is unique for each orderInclude payment method if relevant (payment)
Include product loops
4.4 Product tracking
A call without conversion parameters and containing a single product reference will be identified as a product page.
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Product Name
prdn<productIndex>
Product name when the current page is a product page.
n / A
Yes
my-blue-shoes
Product Reference (SKU)
prdr<productIndex>
Product SKU reference when the current page is a product page.
n / A
Yes
123456
Product group
prdg<productIndex>
Native setting for product groupings. Allows you to define a margin rate per Product Group
n / A
No
shoes
Product price
prda<productIndex>
Price of the product. Used only for scart , estimate and order calls. Required if prdr<productIndex> is provided.
n / A
Yes
199.00
Product quantity
prdq<productIndex>
Quantity of the product. Used only for scart , estimate and order calls. Required if prdr<productIndex> is provided.
n / A
Yes
2
Key to a custom product parameter
prdp<productIndex>k<productParamIndex>
Key to a custom parameter for the product, for example a category.
n / A
No
brand
Value of a custom product parameter
prdp<productIndex>d<productParamIndex>
Custom parameter value for the product in the specified category.
n / A
No
jordan
4.5 Advanced Navigation Path Tracking
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Subkey2
custom_param
Main key to traffic segmentation
n / A
No
customers
prospects
4.5 Tracking internal search engine queries
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Name of internal search engine
eise
Name of internal search engine
n / A
Yes
my search engine
Number of results
eisr
Numerical value for the number of results of the current query
n / A
No
13
Search parameter key #x
eisk<index>
Search parameter key #x
n / A
Yes
destination
Value of search parameter #x
eisd<index>
Value of search parameter #x
n / A
Yes
bordeaux
4.6 Advanced tracking:
Custom Dimensions (Dimension Explorer) & User Segments
For each page view you can add custom parameters using the following format: key=value
These custom parameters can then be declared as: Dimensions Personnalisées or Segments Utilisateurs .
4.7 Event tracking:
These parameters must be included in all event requests.
Nom
Paramètre
Description
Valeur par défaut
Obligatoire
Exemple
Action Name
actn<index>
Action name. <index> starts at 0.
n / A
Yes
loggued user
Mode of action
actm<index>
Allows to build closed funnels. Do not use for simple event counting.
n / A
No
Closed funnel: in , out
Simple count: nothing
Action Label
actl<index>
An action can be characterized by one or more labels. The <index> position determines the targeted label.
n / A
No
content download
Unique action reference
actr<index>
Allows you to record in Datamining a unique reference for this action and the associated parameters.
n / A
No
Action parameter
actp<index>n<index>
Allows you to declare a parameter for the action.
n / A
No
pdf
Value of the action parameter
actp<index>v<index>
Allows you to declare a parameter value for the action.
n / A
No
finance
Action parameter type
actp<index>f<index>
Allows this parameter to be declared as having a finite number of values. Required for storing values in Eulerian.