A conversion is an action you want your website visitors to take, such as purchasing a product, signing up for a newsletter, downloading a brochure, or watching a video. You can define a conversion to be basically any variable in visitor behavior that you want to measure. What exactly you want to define as a conversion depends on your business goals.

What is conversion tracking?

Conversion tracking is the process of monitoring visitors for actions that qualify as conversions and collecting the data about those actions (conversion data). Conversion tracking also involves counting conversions and attributing them to modifications, which the Frosmo Platform does automatically when it receives conversion data from a site. The data is stored in the Frosmo back end.

Transaction tracking is a subset of conversion tracking. If you want to track conversions that involve the purchase of one or more products, use transaction tracking. For more information, see Tracking transactions.

Conversion tracking is essential for measuring the business performance of your site as well as Frosmo's impact on that performance. Conversion tracking is also a prerequisite for implementing features that rely on conversion data, such as generating recommendations and segmenting visitors based on the conversions they have completed.

Conversion tracking in the Frosmo Platform

Figure: Conversion tracking in the Frosmo Platform (click to enlarge)

Conversion tracking generates conversion and modification statistics, which you can view in the Frosmo Control Panel.

For more information about conversions:

Tracking conversions with the data layer

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.

To use the data layer on a site, the data layer module must be enabled for the site.

You can trigger conversion events from:

If you're only triggering conversion events, and not displaying any content, use shared code instead of a modification.

Tracking conversions by triggering a conversion event from shared code

Figure: Tracking conversions by triggering a conversion event from shared code (click to enlarge)

Triggering conversion events

To trigger a conversion event, call the dataLayer.push() function with a conversion object containing the conversion data:

    conversionId: 'string',
    conversionType: 'string',
    conversionValue: 0,
    frosmoConversionName: 'string'

Conversion object

The conversion object contains the data of a conversion event.

Table: Conversion object properties


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 frosmoProductId property of a product object when tracking products.

If you're tracking a product conversion, and if you do not use the product ID as the conversion ID, the platform has no way of mapping the conversion to the corresponding product in the Frosmo product database. For example, if you wanted to create a product recommendation based on the conversions, the recommendation engine would not be able to map the conversions to tracked products and would therefore fail to return the product data for the conversions.

String (128)Required

Conversion type.

If you're tracking a product conversion, use the product type as the conversion type. The product type is the same value you pass in the frosmoProductCategory property of a product object.

String (128)Required

Monetary value of the conversion (in the currency set for your 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.


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 frosmoProductName property of a product object.

String (128)Required

Conversion object examples

Example: Triggering a conversion event
    conversionId: 'ebook-download-personalization',
    conversionType: 'Ebook download',
    conversionValue: 0,
    frosmoConversionName: 'Personalization ebook download'
Example: Triggering a product conversion event
// Set the product data variables...

    conversionId: productId,
    conversionType: productType,
    conversionValue: 0,
    frosmoConversionName: productName

Testing conversion tracking

To test that conversions are correctly tracked with the data layer:

  1. Go to the site.
  2. Enable console logging for Frosmo Core.
  3. Go to a page where conversions are tracked. If conversion events are successfully triggered with the data layer, the browser console displays the following messages for each event:

    • EASY [conversion] log:: Conversion sent with the product type "<conversionType>" and product name "<frosmoConversionName>"
    • EASY [events] info:: conversion (contains the conversion data parsed from the conversion object)
    • EASY [events] info:: dataLayer (contains the conversion object passed to the data layer)

    The following figure shows an example of the conversion event messages.

    Testing conversion tracking

  4. If you want more details on a data layer call, select the Network tab in the developer tools, and check the setProductData and buyProduct requests to the Optimizer API. If the status is 200, the request completed successfully.

    Testing conversion tracking

    Triggering a conversion does not trigger a product view nor a transaction event. Frosmo Core merely uses the setProductData and buyProduct events to pass the conversion data to the Frosmo back end.