Skip to main content
Version: 8.3Marketing

Matomo tracking solution

If you design landing pages in Creatio using Landing Page Designer, use Google Analytics 4 (GA4) to collect website analytics. Creatio supports GA4 natively starting from version 8.3.1 and provides out-of-the-box landing page performance dashboards with daily data synchronization. Learn more: Use Google Analytics on landing pages designed in Creatio.

If your landing pages are built outside Creatio, use Matomo or GA4 to track contacts who submit forms or follow links in bulk emails sent from Creatio Marketing products.

Matomo collects detailed reports on your website and its visitors. The reports include the search engines and keywords the visitors used, the language they speak, which pages they like, and the files they download.

You can use Matomo data associated with specific Creatio contacts to personalize product and service offers as well as improve your website UX. For example:

  • Evaluate which products or services interest the contact the most.
  • Create detailed marketing reports using filters by contact channels, traffic sources, and location.
  • Analyze which website pages users visit the most or on which pages they spend the most time.
  • Review which OS and devices your customers use the most and optimize the website accordingly.

Use the imported data with Creatio to segment contacts for bulk emails and marketing campaigns as well as build detailed analytical reports.

note

Before you can use Matomo data in Creatio, make sure you have an active Matomo account. Learn more: How to create a Matomo Cloud account (official vendor documentation).

Connect Matomo tracking solution

1. Retrieve connection data from Matomo

  1. Log in to Matomo as a superuser of the relevant website.
  2. Open AdministrationPersonalSecurity.
  3. Click Create new token.
  4. Confirm your account password.
  5. Enter a description for the token.
  6. Make sure the Only allow secure requests checkbox is cleared, then click Create new token. Matomo displays the Auth token once, so copy it somewhere safe.
  7. Open the Matomo dashboard and copy the full domain, including the subdomain, from the browser address bar.

2. Connect Matomo in Creatio

  1. Click the button to open the System Designer.
  2. Open the System settings section.
  3. Open the "Address of Matomo API service" (MatomoAPIAddress code) system setting.
  4. Paste the Matomo service domain you copied in the previous section into the Default value field.
  5. Save the changes.
  6. Open the "Matomo API key" (MatomoAPIKey code) system setting.
  7. Paste the Auth token you copied in the previous section into the Default value field.
  8. Save the changes.

As a result, Creatio will identify contacts who follow links in bulk emails.

To import Matomo data of users who submit forms, proceed to the next step.

3. Connect your external landing page to Creatio

Before you perform the setup, make sure your external landing page is connected to Matomo.

We recommend connecting external landing pages to Creatio using webhooks.

If you use a landing page service that supports webhook integration, follow the instructions in Retrieve a webhook in Creatio. Then perform the additional setup below.

  1. Add the following script to the landing page:

    <script>
    function createOrReplaceInput(inputName, inputValue, formSelector, currentForm) {
    var existingInput = jQuery(formSelector + " input[name='" + inputName + "']")[0];
    if (existingInput) {
    existingInput.value = inputValue;
    } else {
    var newInput = document.createElement('input');
    newInput.setAttribute('type', 'hidden');
    newInput.setAttribute('name', inputName);
    newInput.setAttribute('value', inputValue);
    currentForm.appendChild(newInput);
    }
    }

    /* Generate an individual VisitorId and sync it with Matomo. */
    function defineVisitor() {
    _paq.push([function () {
    var visitorId = this.getVisitorId();
    var currentUrl = window.location.href;

    /* For each form, add hidden TrackingUserId and PageUrl fields. */
    var formsCollection = document.getElementsByTagName('form');
    for (var i = 0; i < formsCollection.length; i++) {
    var formSelector = "";
    if (formsCollection[i].id) {
    formSelector = "#" + formsCollection[i].id;
    } else if (formsCollection[i].name) {
    formSelector = "form[name='" + formsCollection[i].name + "']";
    }
    createOrReplaceInput("TrackingUserId", visitorId, formSelector, formsCollection[i]);
    createOrReplaceInput("PageUrl", currentUrl, formSelector, formsCollection[i]);
    }
    }]);
    }

    jQuery(document).ready(defineVisitor);
    </script>
  2. Add extra TrackingUserId and PageUrl hidden fields to the relevant landing page.

  3. Ensure the webhook is connected to the "Submission" (FormSubmit code) Creatio object ("Submitted form" in Creatio 8.3.0 and earlier).

If you use a landing page created in the Landingi.com page builder, follow the instructions in the article: Landingi, Creatio, and Matomo integration (official vendor documentation).

If you use the web-to-object mechanism to integrate your external landing page with Creatio, follow the instructions in the article: Integrate with landing pages via web-to-object mechanism. Then perform the additional setup below.

  1. Go to the Landing pages and web forms section in Creatio. Find the landing page you want to integrate. The record must have the "Contact registration form" type.
  2. Open the landing page you want to integrate.
  3. Copy the code snippet in the Connect your landing page to Creatio and set up field mapping between the lead page and landing page form block.
  4. Replace the old snippet with the new snippet in the source code of the landing page.

Import Matomo data

After Creatio identifies a contact, it imports that contact's Matomo data recorded over the past year. Creatio identifies contacts and imports their Matomo data in two ways:

  • When a user submits a form on a landing page that involves contact creation, the standard contact identification mechanism runs and Creatio imports the Matomo data immediately.
  • When a user follows a link in a bulk email sent using Creatio Marketing tools, Creatio uses the contact ID embedded in the link and imports the Matomo data as part of the next update scheduled by the "Matomo data synchronization for contacts by userId" business process.

Out of the box, Creatio updates most Matomo data of identified contacts once a day. To modify the update time and frequency, edit the start timer of the "Matomo data synchronization for contacts by userId" business process.

Important

Importing large volumes of data can affect website performance. Optimize synchronization time and frequency for your business case.

Matomo data passed with the submitted forms is always updated in real time. View the imported data on the Marketing tab of the contact page in Creatio. Learn more: Analyze online behavior of a contact.

Creatio uses a unified contact identification mechanism for form submissions on landing pages that involve contact creation. Learn more: Contact identification from web form submissions. The contact identification procedure has the following restrictions:

  • If a user enters data of a different contact in the form, Creatio associates Matomo data with the contact whose data was specified.
  • If a user submits multiple forms as part of a single session and enters different contact data in each submission, Creatio associates Matomo data with the contact whose data was specified in the earliest submission.
  • If a user forwards a bulk email and the new recipient follows the link, Creatio associates Matomo data of the user who followed the link with the original recipient.

Imported data reference

Creatio imports web session and web action data from Matomo and displays it on the Marketing tab of the contact page. A web session is a website visit during which a contact takes particular steps. A web action is a particular step the contact takes as part of a web session.

Learn more about web session data in the table below.

Data type

Description

Start date

Date and time when the first web action took place.

Duration, sec

Time between the session start date and the time of the last web action, in seconds.

Country

Value imported into the "Country (string)", "Country code", and "Country (lookup)" columns. Creatio selects the lookup value based on the code from the Countries lookup.

Creatio does not add new lookup values if imported data contains values missing from the lookup. You can add custom values to the Countries lookup manually.

Region

Value imported into the "Region (string)", "Region code", and "Region (lookup)" columns. Creatio selects the lookup value based on the code from the States/provinces lookup.

Creatio does not add new lookup values if imported data contains values missing from the lookup. You can add custom values to the States/provinces lookup manually.

City

Value imported into the "City (string)" and "City (lookup)" columns. Creatio selects the lookup value based on the English name in the Cities lookup among the values filtered by the specified Countries and States/provinces lookup values.

Creatio does not add new lookup values if imported data contains values missing from the lookup. You can add custom values to the Cities lookup manually.

Location

Geographic latitude and longitude imported as a string.

Source

Creatio selects the lookup value from the Lead sources lookup.

Imported data is matched to the lookup values based on the following rules, from higher to lower priority:

  1. If data includes the utm_source code and the lookup created based on the "Source code" (SourceCode code) object maps the tag to a Lead sources lookup value, Creatio populates the "Source" column with the mapped lookup value.

To edit the lookup, add it manually in the Lookups section. 2. If data includes the utm_campaign code and the lookup created based on the "Source code" (SourceCode code) object maps the tag to a Lead sources lookup value, Creatio populates the "Source" column with the mapped lookup value. 3. If neither of the first two rules applies, Creatio falls back to additional source identification logic. Learn more: Submission source tracking.

Creatio does not add new lookup values if imported data contains values missing from the lookup. You can add custom values to the Lead sources lookup manually. Make sure to fill out the "Default channel" column of the lookup value if you add a custom value.

Channel

Creatio selects the lookup value from the Lead channels lookup.

If the imported data includes the utm_medium code and the lookup created based on the "Channel code" (ChannelCode code) object maps the tag to a Lead channels lookup value, Creatio populates the "Channel" column with the mapped lookup value.

If the "Channel" column is not populated based on channel data, Creatio can populate it based on the Lead sources lookup.

To edit the lookup created based on the "Channel code" (ChannelCode code) object, add it manually in the Lookups section.

Creatio does not add new lookup values if imported data contains values missing from the lookup. You can add custom values to the Lead channels lookup manually.

Referrer type and name

Value imported into the "Referrer name (string)" and "Referrer type (lookup)" columns. Creatio selects the lookup value based on the "Matomo code" column of the Referrer type lookup value. The "Referrer name (lookup)" column is not populated. Creatio adds new lookup values if the imported data contains values missing from the lookup. Developers can add custom values to the lookup manually.

Referrer keyword

Keywords the user entered into the search engine before loading the page referrer URL.

Page referrer URL

URL of the page from which the user went to your landing page.

utm_id

Marketing code.

utm_source

Marketing code.

utm_medium

Marketing code.

utm_campaign

Marketing code.

utm_term

Marketing code.

utm_content

Marketing code.

Platform

Operating system of the user.

Device

Type of device the user is on. Value imported into the "Device (string)" column as a single string containing the device type, brand, and model. The "Device (lookup)" column is not populated by Matomo.

IP address

IP address of the user.

Learn more about web action data in the table below.

Data type

Description

Id

ID of the web session that includes the web action.

Action start date

Date and time when the action was triggered in Matomo. The value roughly corresponds to when the user performed the action. The difference between this value and the time of the actual action is usually negligible.

Action type

Creatio selects the lookup value from the Web tracking action types lookup. Imported data is mapped to Web tracking action types lookup values via the "Matomo code" column. The values of the "Name" column can be arbitrary but cannot be localized. The "Name" and "Matomo code" columns of the lookup values added by Creatio are populated automatically.

Creatio adds new lookup values if the imported data contains values missing from the lookup. Developers can add custom values to the lookup manually.

Web page

Creatio selects the lookup value from the lookup created based on the "Web page" (WebPage code) object. Imported data is matched to the "Name" and "Page URL" columns of the lookup. To edit the lookup, add it manually in the Lookups section. Creatio adds new lookup values if the imported data contains values missing from the lookup.

Web page URL address

URL of the page where the event took place.


See also

Analyze online behavior of a contact