In Piano Analytics, each property has a scope.
This scope has an impact on the data and your analyses.
Definition of a scope
Scope
A scope allows data from the tagging to persist across multiple events.
This persistence is linked to a visitor and limited in time. It is retroactive.
The maximum duration of a scope is that of the visit, i.e. 24 hours.
This means that you can add information to an event and propagate it to other events that share a common characteristic (see the different scopes available below).
Let's take the example of a "Visit" scope on a "User" property:
The user information was only entered once, on the "Login page" page event.
Thanks to the "Visit" scope, the information was propagated to all the events of the visit. Even those that took place before the User information was entered.
Retroactivity
Retroactivity is only available on D+1. On real-time data (on the solution, but also on Data Flow and Data Sharing, a scope is not retroactive).
Characteristics of a scope
The scope is defined by two elements.
The scope:
Defines the events on which the value of the property is propagated.
- Visit: A visit-scoped property is propagated to all events in the visit. The propagation key is the "visit_id".
- Pageview: A pageview-scoped property is propagated to all events that occurred on the same page load. The propagation key is the "pageview_id".
- Event: An event-scoped property is not propagated. It only exists for the event to which it is linked.
Page view scope
To date, the "Page View" scope is only available with events coming from the JavaScript SDK. Mobile SDKs (Android and iOS) do not generate a pageview_id, necessary for the scope to function properly..
The assignment:
In the case where the tagging returns several values for a property, defines the value that is assigned to the scope.
- First value: If the value of the property varies during the visit, the first value is kept in memory and is propagated to all events in the scope.
- Last value: If the value of the property varies during the visit, the last value is kept in memory and is propagated to all events in the scope. The last value will be retroactively applied on D+1 to subsequent events.
- First value (resettable): If the value of the property varies during the visit, the first value is kept in memory and is propagated to all events in the scope. It is possible to reset the propagated value to zero via a specific action (see the case of "src_force" for marketing campaigns).
There is a fourth "Analytics business" assigment used only by Piano Analytics for specific calculations.
View a property scope
The scope of a specific property is visible from Data Management.
You can click on a property and look at the "Scope" section of the metadata:
Assigning a scope to a property
You can add a scope and an assignment to your custom properties.
This is done during the property creation step.
Information
Modifying the scope of an already existing property is not available in the interface. Indeed, changing the scope of a property that has already collected data can have significant business impacts.
If you still wish to modify the scope of an already existing custom property, please contact the support center.
Limits
You can check the number of available custom properties, broken down by scopes, from the "Custom Properties" button at the top right of the interface:
By clicking the button, you will have access to the "custom properties" panel. This will indicate the number of properties you can create per scope:
By default, you can create 500 custom properties including:
- Up to 500 within "event" scope
- Up to 50 within "visit" scope
- Up to 50 within "page view" scope
You can also subscribe to the option "1000 custom properties" to benefit from 1000 properties including:
- Up to 1000 within "event" scope
- Up to 100 within "visit" scope
- Up to 100 within "page view" scope
If you want to subscribe to this option, please reach out to your Account Manager.
Information
For a property to be counted, it must be:
- Origin: Custom
- Status: Validated
- Treatment: Processed