Events
    • 3 Minutes to read
    • Dark
      Light

    Events

    • Dark
      Light

    Article summary

    You can use the Event Tracking Extension to automatically track clicks on internal or external links.

    1 Overview

    This page provides a comprehensive guide on how to track and analyze event-related data in Mapp Intelligence. Events complement page tracking by offering detailed insights into user interactions, such as clicks on links or buttons, navigation through specific page elements, and other actions users perform on your website.

    Event tracking requires JavaScript to be enabled in the visitor's browser.


    2 Configurable Properties

    The following table outlines all supported properties, their descriptions, and request parameters.

    Property

    Description

    Data Type

    Request Parameter

    name

    Unique identifier of your event. This property must be explicitly set. The value is analyzed in Navigation > Events.

    String

    ct

    parameter

    Tracks additional custom data points for an event. More details below.

    Object

    ck[ID]

    goal

    Defines and tracks key website goals related to events. More details below.

    Object

    cb[ID]

    2.1 Event Parameters

    Event parameters allow tracking of additional details about specific user interactions, such as link types (internal/external), click areas (text, image, header), Scroll Depth, or errors.

    • Mapp Intelligence provides predefined parameters and also allows the creation of custom event parameters for specific tracking needs.

    • Event parameters must be set up under Configuration > Custom Parameters > Event Parameter before use.

    • Text parameters are analyzed in Navigation > Event Parameter, numeric parameters are analyzed as metrics.

    For setup instructions, see: How to Set Up Custom Parameters.

    2.2 Goals

    Goals measure specific user actions linked to your events, such as newsletter signups, registrations, or downloads. They are essential for evaluating user behavior and  performance.

    • Goals track meaningful actions that users complete after interacting with an event.

    • Goals enable campaign evaluations by tracking attributed conversions.

    • Once tracked, goals are marked as achieved. Track positive achievements (e.g., "Newsletter Signup: yes").

    Goals can be analyzed in Marketing > Website Goals.

    For setup instructions, see: How to Define Website Goals.


    3 Objects and Methods

    Tracking Objects

    Mapp Intelligence uses three primary objects for event tracking:

    • data 
      Contains complete event tracking data for initial setup or updating multiple values.

    • parameter 
      Stores custom event values separately, useful for dynamic updates.

    • goal
      Tracks user-defined actions or conversions independently.

    Supported Methods

    Each object supports the following four methods:

    Method

    Description

    set()

    Completely overwrites existing data with provided values.

    add()

    Updates or adds only specific values, keeping existing data unchanged.

    get()

    Retrieves the current configuration or stored data.

    remove()

    Removes the current configuration or individual values.

    3.1 data – Full Event Configuration

    The data object includes all event-tracking information, combining the event name and the nested objects parameterand goal.

    /**
     * @param {{
     *      [name]: string,
     *      [parameter={}]: {[number]: string},
     *      [goal={}]: {[number]: string}
     * }} data
     *
     * @returns {wtSmart.action.data}
     */
    wtSmart.action.data.set(data);
    /**
     * @param {{
     *      [name]: string,
     *      [parameter]: {[number]: string},
     *      [goal]: {[number]: string}
     * }} data
     *
     * @returns {wtSmart.action.data}
     */
    wtSmart.action.data.add(data);
    /**
     * @returns {{
     *      name: string,
     *      parameter: {[number]: string},
     *      goal: {[number]: string}
     * }}
     */
    wtSmart.action.data.get();
    /**
     * @param {string[]} [removeList]
     *
     * @returns {wtSmart.action.data}
     */
    wtSmart.action.data.remove(removeList);

    Example

    // set action data
    wtSmart.action.data.set({
        name: 'en.click.on.some.link',
        parameter: {
            1: 'en'
        },
        goal: {
            2: 'goal value 2'
        }
    });
    
    // add action data
    wtSmart.action.data.add({
        name: 'en.click.on.some.link2'
    });
    
    // get action data
    var data = wtSmart.action.data.get();
      
    // remove all action data
    wtSmart.action.data.remove();
    
    // remove only name
    wtSmart.action.data.remove(['name']);

    3.2 parameter – Custom Event Values

    The parameter object stores custom values assigned to an event.

    /**
     * @param {{[number]: string}} data
     *
     * @returns {wtSmart.action.parameter}
     */
    wtSmart.action.parameter.set(data);
    /**
     * @param {{[number]: string}} data
     *
     * @returns {wtSmart.action.parameter}
     */
    wtSmart.action.parameter.add(data);
    /**
     * @returns {{[number]: string}}
     */
    wtSmart.action.parameter.get();
    /**
     * @param {number[]} [removeList]
     *
     * @returns {wtSmart.action.parameter}
     */
    wtSmart.action.parameter.remove();

    Example

    // set action parameter
    wtSmart.action.parameter.set({
        1: 'en'
    });
    
    // add action parameter
    wtSmart.action.parameter.add({
        1: 'de',
        7: 'foo.bar'
    });
    
    // get action parameter
    var data = wtSmart.action.parameter.get();
      
    // remove all action parameter
    wtSmart.action.parameter.remove();
    
    // remove only action parameter 7
    wtSmart.action.parameter.remove([7]);

    3.3 goal – Event Goals

    The goal object is used to track specific actions completed by users in response to an event.

    /**
     * @param {{[number]: string}} data
     *
     * @returns {wtSmart.action.goal}
     */
    wtSmart.action.goal.set(data);
    /**
     * @param {{[number]: string}} data
     *
     * @returns {wtSmart.action.goal}
     */
    wtSmart.action.goal.add(data);
    /**
     * @returns {{[number]: string}}
     */
    wtSmart.action.goal.get();
    /**
     * @param {number[]} [removeList]
     *
     * @returns {wtSmart.action.goal}
     */
    wtSmart.action.goal.remove(removeList);

    Example

    // set action goal
    wtSmart.action.goal.set({
    	5: 'goal value 5'
    });
    
    // add action goal
    wtSmart.action.goal.add({
    	8: 'goal value 8'
    });
    
    // get action goal
    var goal = wtSmart.action.goal.get();
    
    // remove all action goals
    wtSmart.action.goal.remove();
    
    // remove only action goal 8
    wtSmart.action.goal.remove([8]);

    4 Code Generator

    Use the Code Generator to create customized event-tracking code snippets for integration into your website.


    Was this article helpful?

    What's Next
    ESC

    AI Assistant, facilitating knowledge discovery through conversational intelligence