--- type: post date: 2018-11-01T19:08:00.367Z title: Matomo plugin for Gatsby image: gatsby-plugin-matomo-teaser.png changelog: gatsby-plugin-matomo tags: - goodies - gatsby - matomo featured: true toc: true --- Plugin for [Gatsby](https://www.gatsbyjs.org) to add tracking with the open-source analytics platform [Matomo](https://matomo.org) (formerly Piwik) onto a site, prioritizing user experience & privacy with sensible defaults. ## Features - include tracking code in all server-side rendered routes - track all route views as custom events - load tracking scripts at end of body tag - use image tracking fallback for `<noscript>` - don't load anything when visitor has Do Not Track enabled - don't load anything in non-production environments - consent mode for privacy - allow loading tracking script locally - define paths to be excluded from tracking - dev mode for local development ## Usage First, install the plugin from your project's root: ```bash cd yourproject/ npm i gatsby-plugin-matomo ``` Then load the plugin from your `gatsby-config.js` and set the required variables: ```js plugins: [ { resolve: 'gatsby-plugin-matomo', options: { siteId: 'YOUR_SITE_ID', matomoUrl: 'https://YOUR_MATOMO_URL.COM', siteUrl: 'https://YOUR_LIVE_SITE_URL.COM' } } ] ``` ## Check out & contribute Head over to GitHub for more documentation, take a peek into the code, or to report some bugs. <p class="content-download"> <a class="icon-github btn-primary" href="https://github.com/kremalicious/gatsby-plugin-matomo">GitHub</a> </p>