Matomo
Matomo, formerly Piwik, is an open source web analytics application to track online visits to one or more websites and display reports on these visits for analysis. Using this destination you can implement server-side tracking using Matomo Tracking HTTP API.
Key features
The Matomo destination provides the following key features:
Events structure: our Events reference covers Matomo's request structure, meaning that your data is properly bridged to the expected fields in an optimized way.
Prebuilt mappings: data mapping for event-based destinations happens automatically, which simplifies user inputs.
Automatic hashing: information is automatically hashed matching partner specifications.
Custom events and properties: you can freely push custom events and properties based on your specific needs.
Support for multi-item data: information included in the item array is bridged to Matomo.
Destination setup
Matomo recommends using custom parameters instead of custom variables as the latter are deprecated. The data for some Matomo optional fields will not be available in your app / technical layer which is expected, but you should provide as much information as you can.
Configuration
Server Domain
Required
Your server domain as provided by Matomo. (E.g. for https://your-matomo-domain.example
/matomo.php, include the blue string only).
Site Id
Required
Your site identifier as provided by Matomo. More details are available following this LINK.
Visitor Id Cookie Name
Cookie name holding a few details about the user such as the unique visitor identifier. It normally starts with the string _pk_id
. This has priority over the following field Visitor Id Value
. More details are available following this LINK. (E.g. value "4e4eb04b31f37eac.1653656637.")
Visitor Id Value
The unique visitor identifier value if you need to pass it without a cookie.
User Identifier
You can bridge your selected user identifier for logged users. More details are available following this LINK.
Matomo Custom Variables
Map your Matomo custom variables by setting their field names in Custom Variable Name
and adding the field name holding the value in Commanders Act event property or static value
. E.g. if you inputsize
in Custom Variable Name
and items.0.product.size
in Commanders Act event property or static value
, you'll have a custom variable in Matomo calledsize
with a value based on the content of the field items.0.product.size
[1]. You also have the option to set a static string/numeric value in Commanders Act event property or static value
.
More details on custom variables are available following this LINK.
Matomo Custom Parameters
Map your Matomo custom parameters by setting their field names in Custom Parameter Name
and adding the field name holding the value in Commanders Act event property or static value
. E.g. if you inputsize
in Custom Parameter Name
and items.0.product.size
in Commanders Act event property or static value
, you'll have a custom parameter in Matomo calledsize
with a value based on the content of the field items.0.product.size
[1]. You also have the option to set a static string/numeric value in Commanders Act event property or static value
.
More details on custom parameters/dimensions are available following this LINK.
Matomo Goals
Map your Matomo goals by setting the Commanders Act Event Name
in the related field and the Matomo Goal Id
associated with it.
More details on goals are available following this LINK.
Authorization Token
An authorization token is required to send additional parameters. Going to Matomo's interface, It's recommend to create a user specifically for accessing the "Tracking API", and give the user only write permission on the website(s). More details on the additional parameters are available following this LINK.
[1] Using "dots" (".") you can navigate deeper to the specific field you want to get the value of. See Events reference for more details on the standard field names by event. You can also freely set custom fields: there are no boundaries.
Field mappings
Matomo propertye_c
is statically set withca_event
.
Ecommerce parameters are passed for incoming purchase events.
Site Id
idsite
event_name
action_name
e_a
e_n
value
e_v
revenue
page.location
url
device.user_agent
ua
Visitor Id Cookie Name
Visitor Id Value
_id
[1]
page.referrer
urlref
Matomo Custom Variables
_cvars
user.id
user.email
user.email_md5
user.email_sha256
[custom_property]
uid
[2]
search_term
search
Matomo Goals
idgoal
[3]
id
ec_id
[[items.0.id
,items.0.product.name
,items.0.product.category_1
,items.0.product.price
,items.0.quantity
],...
,[items.N.id
,items.N.product.name
,items.N.product.category_1
,items.N.product.price
,items.N.quantity
]]
ec_items
[4]
revenue
ec_st
tax_amount
ec_tx
shipping_amount
ec_sh
Authorization Token
token_auth
device.ip
cip
event_timestamp
cdt
[1] If a cookie is not provided, this destination searches for a cookie name containing the string_pk_id
to retrieve the visitor identifier from it. Alternatively, you can pass the value using a datalayer property. See Configuration for more details.
[2] Depending on the drop-down selection (SeeUser Identifier
inConfiguration
), a specific Commanders Act property is used.
[3] Based on your configuration (SeeMatomo Goals
in theConfiguration
), a specific identifier is set in this field. Withpurchase
events,0
is bridged as identifier.
[4] The resulting array is encoded.
Last updated