This guide is for developers who want to set up data tracking using the default data layer events supported by the Frosmo Platform. If your site has or is getting a basic feature setup from Frosmo, see the appropriate site preparation guide instead. Basic feature setups rely on their own dedicated data layer events. |
To use the data layer on a site, the data layer module must be enabled for the site. |
For an introduction to conversions and conversion tracking in the Frosmo Platform, see Data tracking overview#Conversion tracking.
Tracking conversions with the data layer means triggering a conversion event whenever a visitor successfully completes an action that qualifies as a conversion. The data you pass in the conversion event defines the conversion.
You can trigger conversion events from:
Page code is the recommended solution. If you cannot use the data layer in your page code, use shared code.
Figure: Tracking conversions by triggering a conversion event from a page (click to enlarge)
To trigger a conversion event, call the dataLayer.push()
function with a conversion object containing the conversion data:
dataLayer.push({ conversionId: 'string', conversionType: 'string', conversionValue: 0, frosmoConversionName: 'string' }); |
The conversion object contains the data of a single conversion event.
Table: Conversion object properties
Property | Description | Type | Role | |
---|---|---|---|---|
conversionId | Conversion ID. If you're tracking a product conversion, use the product ID as the conversion ID. The product ID is the same value you pass in the
| String (128) | Required | |
conversionType | Conversion type. If you're tracking a product conversion, use the product category as the conversion type. The product category is the same value you pass in the | String (128) | Required | |
conversionValue | Monetary value of the conversion (in the currency set for the site). If you're tracking a product conversion, this property should not reflect the product price, but rather some other monetary value associated with the conversion, as this property does not map to any product data. If you want to track a purchase-based product conversion, trigger a transaction event instead. | Number | Required | |
frosmoConversionName | Conversion description. If you're tracking a product conversion, use the product name as the conversion description. The product name is the same value you pass in the | String (128) | Required |
dataLayer.push({ conversionId: 'ebook-download-personalization', conversionType: 'Ebook download', conversionValue: 0, frosmoConversionName: 'Personalization ebook download' }); |
// Set the product data variables... dataLayer.push({ conversionId: productId, conversionType: productType, conversionValue: 0, frosmoConversionName: productName }); |
For instructions on how to test that conversions are correctly tracked on a site, see Testing data tracking#Conversion tracking.