A measurement plan helps identify what data to collect and how to track it in Matomo. Its purpose is to align analytics implementations with business objectives by creating a clear path between what matters and what is measured. The plan lays the foundation for:

  • Collecting useful data – see how visitors use the website or app, so you can make informed, data-driven decisions.
  • Establishing consistent measurement practices – apply standard tracking methods, naming conventions, and event logic that are clear and maintainable, making it easy for others to work with the tracking setup in future.

Whether you’re migrating from another platform or building a new setup, this guide helps teams apply Matomo in a way that’s purposeful, consistent, and privacy conscious.

download icon You can download the ready-to-use measurement plan and adapt it to your organisation. Completing this plan before implementation ensures your tracking is structured, consistent, and directly linked to your business goals.

Getting started: What teams should know first

Matomo gives your organisation full control over its analytics data. Unlike platforms like Google Analytics, Matomo does not share data with any third parties, making it a privacy-first choice that unlocks new tracking possibilities. This means you can measure platforms, such as:

  • Intranet sites and internal portals.
  • Mobile apps.
  • Secure login environments.
  • Internal tools in regulated industries (e.g. finance, healthcare, government).

Who should use this plan?

This measurement plan is designed for:

  • Technical teams implementing Matomo tracking.
  • Marketers, product teams, or analysts using the reports.
  • Data governance or privacy leads ensuring responsible data use.

It is intended to help everyone work from a shared, consistent framework.

Help for subscribers

If you’re using Matomo Cloud, your plan includes access to dedicated email-based support with most questions answered within 24 hours, six days a week. Encourage your teams to reach out, whether it’s for help configuring reports, optimising campaigns, or exploring Matomo-specific features (which may be unfamiliar to former GA users). You can find the email address in the messages you received when you signed up to use Matomo Cloud.

This Matomo Cloud Support includes technical teams, marketers, analysts, and data consumers who use Matomo reports. Please share the email address widely with your teams.

Help for free users

Take advantage of Matomo’s extensive learning materials from user guides to in-depth developer documentation to get the most out of your analytics setup and discover new features:

  • Matomo Knowledge base: Discover user guides, how-to instructions, troubleshooting articles and FAQs.
  • Matomo Developer docs: Technical documentation for extending, customising, and integrating Matomo.
  • Matomo and community video tutorials: Matomo’s official and community-created video tutorials offer guidance on setup, features, and best practices.
  • MatomoCamp videos: Community-run event featuring deep-dive talks, case studies, and workshops from Matomo users.
  • Matomo Forums: Join the Matomo Community Forums where users, developers, and enthusiasts connect to share knowledge, ask questions, and collaborate on solutions.

Section 1: Default and Custom Tracking in Matomo

When Matomo is installed and the tracking code is active, it automatically collects a wide range of visitor data, such as pageviews, traffic sources and device types, without requiring any custom configuration.

This gives you a solid baseline for understanding how people find and navigate your site. For a comprehensive list of data collected by Matomo, see What does Matomo track by default?

Code example – To set up default page tracking:

<!— Example Matomo JS tracking code -->
<script>
  var _paq = window._paq = window._paq || [];
  // Enable page view tracking
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  // Set your Matomo site ID and URL
  (function() {
    var u = "https://your-matomo-domain.example.com/";
    _paq.push(['setTrackerUrl', u + 'matomo.php']);
    _paq.push(['setSiteId', '1']); // Replace with your Site ID
    var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0];
    g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s);
  })();
</script>
<!-- End Example Matomo JS tracking code -->

However, actions like button clicks, form submissions, or ecommerce activity are not tracked by default. These require premium features or additional configuration in Matomo or Matomo Tag Manager. When manually tracking interactions (e.g. clicks, form submissions), you should:

  • Add _paq.push() calls after the default tracking code block has loaded on the page.
  • Wrap tracking logic in DOMContentLoaded or an event listener to ensure the page elements exist before tracking is triggered.
  • Always initialise the _paq array before pushing events to avoid errors.

Code example – Track a button click:

<!— Example custom tracking -->
document.getElementById('signup-button').addEventListener('click', function() {
  _paq.push(['trackEvent', 'cta', 'click', 'Signup Button']);
});<!-- End Example custom tracking -->

Code example – Track a form submission:

<!— Example custom tracking -->
document.getElementById('contact-form').addEventListener('submit', function() {
  _paq.push(['trackEvent', 'form', 'submit', 'Contact Form']);
});});<!-- End Example custom tracking -->

Code example – Track an Ecommerce order:

<!— Example custom tracking -->
_paq.push(['addEcommerceItem',
  'SKU1234',        // SKU
  'T-Shirt',        // Product name
  'Clothing',       // Category
  29.99,            // Price
  1                 // Quantity
]);
_paq.push(['trackEcommerceOrder',
  'ORD001',         // Order ID
  29.99             // Grand Total
]);
});
<!-- End Example custom tracking -->

If you’re using Matomo Tag Manager, custom tracking (such as button clicks or form submissions) is configured using:

  • Triggers (e.g. Click, Form Submit, Scroll Reach)
  • Tags (e.g. Matomo Event Tag)
  • Variables (e.g. Click ID, Page URL, Custom JavaScript, Data Layer)

MTM offers more flexibility and is the recommended approach for most setups, specifically when working with teams and non-developers.

Note: Matomo does not configure compliance or tracking consent automatically. Privacy protections must be manually reviewed and enabled in Matomo settings (Administration) Settings Cog Icon > Privacy > Anonymize data, especially if you are operating under GDPR or similar regulations.

Section 2: Data Privacy and Security

This section clarifies privacy-related responsibilities that should be considered before collecting and storing data in Matomo.
While Matomo is privacy-first by design, it does not automatically configure compliance – your team needs to plan and decide which privacy controls to enable.

Refer to the GDPR and Matomo Analytics guide and Matomo ePrivacy Directive for national implementations and website analytics for general information on privacy compliance.

2.1 Configure privacy settings manually

Matomo offers built-in privacy features, but they are not all enabled by default. You must manually configure:

  • Implement consent-based tracking using a Consent Management Platform (CMP) or Matomo Tag Manager triggers. Read more on integrating CMPs with Matomo.
  • Use tag conditions or event listeners to ensure that tags only fire after valid consent has been given (if required under your jurisdiction).
  • Clearly document which tags rely on consent and how consent is stored (e.g. in a cookie or localStorage).

2.3 Review data access and security

  • Define who can view, edit, or export reports and visitor data.
  • Assign Matomo roles appropriately (admin, view, write, etc.).
  • Consider enabling two-factor authentication (2FA) in Personal > Security settings.
  • If self-hosted, ensure your server uses HTTPS, secure credentials, and has regular backups. Consult the guide on configuring Matomo for security.

Section 3: Identify Goals & Conversion opportunities

Before deciding what to track, assess how your website functions and what success looks like from both a user experience and business performance perspective. The objective is to identify user behaviours that can be tracked in Matomo and linked to measurable outcomes, specifically those that support campaign goals, drive conversions, or improve ROI.

3.1 Map organisational goals to measurable outcomes

Gather input from key stakeholders e.g., marketing, sales, or product teams and break down broad goals into specific, observable actions that users take on the website. These actions should be trackable in Matomo using core or premium features such as Goals, Events, Funnels, Ecommerce, and Site Search.

Examples of goal-to-KPI mapping:

Business Goal KPI Matomo Data Source
Increase newsletter signups Number of successful form submissions Event tracking, Goals
Boost participation in webinars Clicks on event registration links Click tracking, Goals
Improve engagement on blog Scroll depth, average time on page Pageview tracking, Heatmaps plugin, A/B Testing plugin
Reduce user churn in signup flow Abandonment rate Funnels plugin
Evaluate internal search performance Top search terms and result usage Site Search tracking enabled
Maximise ROI of ad campaigns Ecommerce revenue per campaign Campaign parameters, Ecommerce tracking enabled
Increase engagement with video content Average watch time, completion rate Media Analytics plugin, Event tracking

3.2 Review key pages, user journeys, and conversion paths

Explore the site from a user’s perspective to identify pages and components that contribute to acquisition, engagement, and conversion.

  • List high-value pages: homepage, landing pages, campaign pages, product and order confirmation pages.
  • Confirm whether Ecommerce is configured for product views, add to cart, and checkout steps.
  • Examine dynamic features like accordions, tabbed content, and embedded media that should be tracked. These features will require custom tracking.

3.3 Define trackable user actions with direct or indirect ROI impact

Focus on behaviours that reflect purchase intent, content engagement, or marketing attribution. For example:

  • Clicking a ‘Buy Now’ button feeds into ecommerce revenue.
  • Filling out a lead generation form evaluates ad or content effectiveness and contributes to conversion tracking and campaign effectiveness.
  • Abandoning a shopping cart shows missed revenue that can justify digital ad spend to launch a retargeting campaign.
  • Arriving from a Google Ad and completing a purchase attributes revenue to the campaign via UTM parameters.
  • Scrolling through a specific web page indicates engagement that supports content performance metrics.

3.4 Identify campaign tracking needs

To evaluate the impact of paid campaigns and digital marketing efforts, identify and document the key components needed for campaign reporting and ROI analysis:

Use campaign parameters for traffic attribution

  • Use Matomo-specific parameters (e.g. mtm_source, mtm_campaign) when you’re creating links in emails, promotions, or banners that you manage directly. Campaign URL example: https://example.com/product1?mtm_source=newsletter&mtm_medium=email&mtm_campaign=spring-sale
  • Tag campaign URLs with standard UTM parameters (e.g. utm_source, utm_campaign) when driving traffic from third-party platforms like Google Ads and Facebook. Campaign URL example:
    https://example.com/landingpage?utm_source=facebook&utm_medium=cpc&utm_campaign=launch-promo

List tracked campaign landing pages

  • Identify which landing pages are used in paid campaigns.
  • Confirm that goals or events (e.g. form submissions, purchases) are configured to measure conversions on these pages.

Track revenue by campaign source

Calculate cost-based ROI

  • Where ad spend data is available, compare it against Matomo’s tracked revenue. While Matomo does not track ad spend directly, you can manually match campaign revenue from Matomo with spend data from your ad platform to calculate ROI.

3.5 Capture engagement signals that inform optimisation

Not all actions lead directly to revenue as some signal interest, usability issues, or content relevance. There is value in tracking these types of interactions because you can uncover what resonates with users, where friction exists, and how campaigns or content can be improved. The following are examples of engagement signals that may not represent direct conversions or revenue, but indicate interest, intent, or friction.

Analysing these interactions are valuable for refining campaigns, improving UX, and understanding how visitors experience your site.

3.6 Summary of metrics for key interactions

Interaction Type Metric Example Why It Matters
Form submission Form starter rate, Conversion count Lead quality, campaign performance
Page views Bounce rate, Avg. time on page Content relevance, engagement
Scroll tracking % reached bottom of page Measures content consumption
Ecommerce Revenue, Cart value, Abandonment rate ROI, optimisation opportunities
Click events CTA clicks, External link clicks Micro-conversions, navigation performance
Campaign performance Revenue by UTM source Marketing attribution, ad ROI
Site search Top terms, Searches with no results Intent discovery, UX/content gaps

It is important to align tracking priorities with what can be acted on, so you can focus on behaviour that drives revenue and improves engagement and campaign performance.

Section 4: Define the Measurement Framework

This section formalises the technical mapping of interactions identified in Section 1 and bridges business goals with practical implementation using the Matomo tracking code or Matomo Tag Manager (MTM).

Note: You can pass events between Matomo and Google Tag Manager to coordinate tracking across both platforms. Matomo Tag Manager can also read from the existing Google Tag Manager dataLayer, enabling you to reuse structured event data without duplicating your tracking setup.

4.1 Build a measurement specification

Choose your Matomo tracking method and create a spreadsheet to list the interactions that should be tracked and how each one ties back to business goals. Include technical tracking logic required for custom JavaScript tracking or for the MTM configuration with references to specific click targets, classes, data attributes, or container structure if needed.

For example:

Page / Feature Goal KPI Event Category Action Name / Variable Trigger
Product Landing Page Increase add-to-cart activity Number of Add to Cart clicks ecommerce add_to_cart {{product_name}} Click add-to-cart-btn
Contact Page Increase sales enquiries Successful form submissions form submit Contact Form Form ID equals #contact-form
Blog Article Template Measure content engagement Scroll depth >75% engagement scroll {{page_title}} Scroll depth reaches 75%

4.2 Establish tracking naming conventions

Define a consistent approach for naming events and custom dimensions that highlights clarity, maintainability, and team-wide understanding.

  • Custom dimensions should clearly describe the data it captures, e.g. User Type, New Visitors, Returning Visitors, and avoid vague terms like Misc, Type1.
  • Follow a defined naming format (e.g. Title Case, snake_case) to maintain consistency across dimensions, reports, filters, and API responses.
  • For event categories, use broad groupings based on feature or function, e.g., form, ecommerce, engagement.
  • For event actions, use a verb that describes the user’s interaction, e.g., add_to_cart, submit, scroll, click, play, download.
  • For event names, include a clear, descriptive value for context and use a dynamic variable where appropriate, e.g., {{product_name}}, Contact Form.

If you are using Matomo Tag Manager, define standards to make your container scalable and maintainable:

  • Tag naming: e.g. event – form submission – signup
  • Variable naming: e.g. var - click ID, var - URL path
  • Versioning and notes: Enforce a process where your users include descriptions for every published version, especially for releases tied to marketing campaigns or product launches.

Section 5: Segment and Report Strategy

This section outlines how to use the data once collected. A clear reporting strategy ensures the analytics setup delivers actionable insights and supports ROI evaluation.

5.1 Define reporting use cases

  • What segments will support analysis? e.g. Paid campaign visitors, Blog readers with high scroll depth, Cart abandoners, Subscribers, Guests.
  • What custom dashboards are needed, who are they for and how will they be accessed? e.g. Marketing, Content, Product teams.
  • Will scheduled reports be sent (weekly, monthly)? Who receives them, and how are they used?
  • Are there alerts for review? e.g. If bounce rate on landing pages exceeds 65%, flag for review.

5.2 Define required metadata and dimensions

To power meaningful segments and reports, it’s not enough to just track what users do (pageviews, clicks, form submissions). You also need to understand the context of their actions, such as what type of content they’re engaging with, or how they got to your site.

This contextual information is typically captured using custom dimensions, campaign parameters, user attributes, and content metadata (e.g. category, author, feature type).

Examples of metadata to capture:

Type Description How It’s Used
Page title Name of the content being viewed Used in content performance reports
Page URL / Path Full or relative URL Enables page-level segmentation
Referrer URL Previous page or source Attribution and funnel analysis
Campaign parameters mtm_campaign, mtm_kwd, utm_source, utm_medium, etc. Marketing ROI reporting
Device type Mobile, tablet, desktop Usability analysis
Custom dimensions e.g. User Type, Region, Paid Campaign Segmentation and audience filtering

Code example – Track a custom dimension called User Type:

<!— Example custom tracking -->
// Set the custom dimension before the trackPageView call
_paq.push(['setCustomDimension', 1, 'subscriber']); 
_paq.push(['trackPageView']);
<!— End Example custom tracking -->

In Matomo Tag Manager, custom dimensions can be set directly within individual tags or globally using a Matomo Configuration Variable. Setting them in a tag allows for context-specific values, while defining them in the configuration variable ensures they’re applied consistently across all relevant tags.

5.3 Export and Integrate Matomo Data with External Platforms

To support advanced analysis, automated reporting, and multi-source dashboards, you can export Matomo data or connect it to business intelligence (BI) tools.

Export Options

  • Schedule reports and share custom or standard Matomo reports via email (PDF, HTML, or CSV). Useful for stakeholders who don’t log into Matomo.
  • Manual CSV/TSV/XLS export to download reports directly from the Matomo interface for ad hoc analysis in Excel or Google Sheets.

Matomo Reporting API

Pull data using the Matomo HTTP API for use in external tools or internal pipelines. Supports custom dimensions, segments, and goal data.

Integrate with BI tools

  • Power BI – use Matomo’s API to create data queries and feed them into Power BI via custom connectors or REST API integrations. Some community-created connectors also exist.
  • Looker Studio – Connect via the official Matomo connector to explore your Matomo data in Looker Studio at no cost. You can connect to Matomo Cloud or On-Premise instances using your Matomo URL and a Matomo Auth Token.

Data warehouse integration

The Matomo Data Warehouse Connector is a premium feature used to export raw Matomo data directly into supported warehouse platforms. This provides full access to granular hit-level data in a structure optimised for long-term storage and advanced queries.

Section 6: Governance, Ownership, and Maintenance

This section defines who owns the measurement plan, how tracking is reviewed and updated, and where documentation is maintained. Without clear governance, even the best-designed tracking plans can become outdated or inconsistent over time.

6.1 Define ownership and responsibilities

  • Measurement plan owner: Who maintains this document and ensures it’s up to date?
  • Tagging owner: Who manages Matomo Tag Manager (or direct JavaScript tracking)?
  • Privacy lead: Who ensures compliance settings stay aligned with policy or law?
  • Create onboarding notes for new contributors.
  • If working across regions or properties, note any localisation or structure differences.

6.2 Establish review and update cycles

  • Review goals and KPIs every quarter or campaign cycle.
  • Audit tracking setup after site changes, feature launches, or redesigns (after A/B Testing).
  • Evaluate segment/report relevance at least twice per year.
  • Maintain a change log for all tracking changes.
  • Store the latest measurement plan in a central location (e.g. internal wiki, shared drive).
Previous FAQ: Choosing your tracking method: Matomo Tag Manager or Matomo JS