The content of the campaign parameters must be communicated in the destination URL according to the format
at_medium is the source label and
at_campaign is the campaign label. These parameters are both mandatory for the campaign to be taken into account in your analyses.
The legacy "xtor" format is not recognized by Piano Analytics SDKs. Please use three-years-old, flexible and powerful
Add campaign parameters to the links pointing to your site:
If the link points to the root of the site or a directory:
If the link points to a file with no variable transmitted:
If the link leads to a file with a transmitted variable:
&, depending on the position of the variable) can be replaced by the character
|URL Parameter||Description||Detail||Format / Example|
|Name of the campaign|
|Customized properties of your campaign||Any querystring parameter starting with |
This will result in the following properties:
You can also associate standard data model properties to your campaigns:
Email opening measurement
In order to track email opening with Piano Analytics tagging, it is mandatory to build raw event, embedded in emails inside an
// Raw event
Force visit marketing source
It is possible to force the marketing source of a visit even if we’ve already retrieved another one on past events.
For this, you have to set the
src_force property (
'page': 'page name',
'page_chapter1': 'chapter 1',
'page_chapter2': 'chapter 2',
'page_chapter3': 'chapter 3',
If several sources are forced during a visit, the last one filled in will be the one kept.
The forced source is taken into account from the next day. The real-time functionalities (Data Query granular exports, or Data Flow) are still based on the classic source detection.
If you already use Google UTMs and you want to collect them into Piano Analytics, we offer you two options:
Collect UTM as properties
You can collect UTM parameters as Piano analytics properties.
To do so, please use the
enableUTMTracking configuration (
true by default).
Collect UTM as sources
You can collect UTM parameters as marketing campaigns (sources).
To do so, please setup the
For exemple, if you want to collect both
utm_, giving the priority to the first one, you can use:
pa.setConfiguration('campaignPrefix', ['at_', 'utm_'])
In that case, if no
at_ parameters are present, we will process the
If you want to use UTM, some properties need to be declared. They are not part of the native Piano Analytics data model :
|UTM||Piano Analytics native properties||Need to be declared?|
|utm_custom (example)||-||✅ (src_custom)|