--- title: Matomo created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, web-analytics, privacy, self-hosted, analytics, php, mysql, mariadb, open-source, gdpr] confidence: high contested: false sources: [https://selfh.st/apps/?tag=web-analytics] --- # 📊 Matomo > Plateforme d'**analyse web open source** de référence, fork éthique de Google Analytics, riche en fonctionnalités, conforme RGPD et auto-hébergeable. > Source : [selfh.st](https://selfh.st/apps/?tag=web-analytics) ## 📋 Métadonnées | Métadonnée | Valeur | | :--- | :--- | | **Site web** | [matomo.org](https://matomo.org/) | | **GitHub** | [github.com/matomo-org/matomo](https://github.com/matomo-org/matomo) | | **License** | GPL-3.0 | | **Langage** | PHP 8+ / MySQL/MariaDB | | **Étoiles** | 2 853 | | **Dernière MAJ** | 2026-05 | | **Catégorie** | [[cat-web-analytics]] | ## 📝 Description Matomo (anciennement Piwik) est l'une des solutions d'**analyse web open source** les plus matures du marché. Elle a été lancée en 2007 comme alternative à Google Analytics, avec pour philosophie le **respect de la vie privée** des utilisateurs finaux. Matomo propose une expérience d'analyse web **complète et professionnelle**, comparable à GA4 sur le plan fonctionnel, tout en gardant la maîtrise des données sur son propre serveur. Fonctionnalités principales : **tableaux de bord personnalisables**, **heatmaps**, **session recording** (via plugin), **analyse de formulaires**, **funnels de conversion**, **suivi d'événements**, **A/B testing**, **rapports e-commerce**, **attribution multi-canal**, **API Reporting** et **API Tracking**. Plus de 100 plugins officiels ou communautaires viennent étendre les capacités de base. Matomo est distribué sous licence **GPL-3.0** en version on-premise (auto-hébergée) ; une licence commerciale est nécessaire pour certaines extensions avancées (Premium, Cloud). L'architecture est basée sur **PHP** (framework maison) avec une base **MySQL ou MariaDB**, ce qui en fait une solution éprouvée mais plus lourde que [[app-umami]] ou [[app-plausible]] en termes de ressources. Matomo est également disponible en mode **Cloud** (matomo.cloud) géré par l'éditeur, et dispose d'une **marketplace de plugins** très active (WordPress, Drupal, Joomla, Magento, etc.). Le projet est traduit en plus de 50 langues, dont le français. ## 🚀 Installation ### Option 1 : Docker Compose (recommandé) ```yaml # docker-compose.yml version: '3.8' services: matomo: image: matomo:5 container_name: matomo restart: unless-stopped ports: - "8080:80" environment: MATOMO_DATABASE_HOST: db MATOMO_DATABASE_ADAPTER: mysql MATOMO_DATABASE_TABLES_PREFIX: matomo_ MATOMO_DATABASE_USERNAME: matomo MATOMO_DATABASE_PASSWORD: matomo_secure MATOMO_DATABASE_DBNAME: matomo volumes: - ./matomo-data:/var/www/html depends_on: db: condition: service_healthy networks: - matomo-net healthcheck: test: ["CMD", "curl", "-f", "http://localhost/"] interval: 30s timeout: 10s retries: 3 db: image: mariadb:11 container_name: matomo-db restart: unless-stopped environment: MARIADB_DATABASE: matomo MARIADB_USER: matomo MARIADB_PASSWORD: matomo_secure MARIADB_RANDOM_ROOT_PASSWORD: "yes" volumes: - ./db-data:/var/lib/mysql networks: - matomo-net healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] interval: 10s timeout: 5s retries: 10 networks: matomo-net: driver: bridge ``` Lancement : ```bash docker compose up -d # Accéder à http://localhost:8080 et suivre l'assistant d'installation web # Créer le compte super-utilisateur au premier démarrage ``` ### Option 2 : Installation manuelle (LAMP) ```bash # Prérequis : PHP 8.0+, MySQL 8 / MariaDB 10.5+, Apache/Nginx wget https://builds.matomo.org/matomo-latest.zip unzip matomo-latest.zip -d /var/www/ chown -R www-data:www-data /var/www/matomo # Configurer un VirtualHost pointant sur /var/www/matomo # Accéder à l'URL pour finaliser via l'installateur web ``` ## ⚙️ Configuration - **Matomo nécessite PHP 8.0+** avec extensions `pdo_mysql`, `gd`, `mbstring`, `curl`, `xml`, `zip`, `intl`. - **Paramètres d'anonymisation** : activables pour anonymiser les IP (dernier octet) et désactiver le tracking des utilisateurs uniques. - **Branding & White-label** : personnalisable, support de plusieurs marques/sites. - **JS Tracking Code** : généré automatiquement, supporte `doNotTrack` et `cookie-less tracking`. - **Plugins** : Market accessible depuis `Administration > Marketplace`. Recommandés : Heatmap & Session Recording, Form Analytics, Custom Dimensions, Funnels. - **Cron** : configurer une **tâche cron** pour l'archivage des rapports (sinon, archivage à la demande moins performant) : ```cron */5 * * * * www-data /usr/bin/php /var/www/html/console core:archive --url=https://matomo.example.com > /var/log/matomo-archive.log 2>&1 ``` - **Archivage** : deux stratégies possibles — *à la volée* (par défaut, gourmand) ou *cron* (recommandé en production). - **Sécurité** : activation 2FA possible, IP allowlist, fail2ban recommandé. ## 🔄 Alternatives **Open source** : - [[app-umami]] — plus moderne, plus léger, Node.js - [[app-plausible]] — privacy-first, script unique < 1 Ko - [[app-open-web-analytics]] — fork historique de Matomo - [[app-ackee]] — minimaliste, MongoDB - [[app-goatcounter]] — ultra-léger en Go - [[app-rybbit]] — concurrent moderne TypeScript - [[app-litlyx]] — alternative simple avec dashboard - [[app-swetrix]] — fork open source complet - [[app-vince]] — analytics Go minimaliste **Propriétaire (SaaS)** : - **Google Analytics 4** — leader, mais problématique RGPD - **Matomo Cloud** — version managée officielle - **Adobe Analytics** — enterprise, onéreux - **Plausible Cloud** — payant, simple - **Fathom Analytics** — payant, RGPD - **Mixpanel** — product analytics, freemium - **Heap** — analytics comportemental automatisé ## 🔒 Sécurité - **Changer immédiatement** les mots de passe par défaut et créer un super-utilisateur fort. - Activer la **2FA** (TOTP) pour tous les comptes admin. - Mettre Matomo derrière un **reverse proxy HTTPS** (Traefik, Caddy, Nginx). - L'IP du serveur ne doit **pas** être exposée en direct ; derrière un WAF (Crowdsec, Coraza) recommandé. - **Sauvegardes régulières** : `mysqldump` quotidien + `matomo-data` (config + plugins uploadés). - **Durcir PHP** : `open_basedir`, `disable_functions`, `expose_php=Off`. - Surveiller les **logs d'accès** : Matomo logge les requêtes au tracker (`misc/log/`), utiles pour détecter du trafic malveillant. - Mettre à jour Matomo à chaque **LTS** (toutes les ~6 semaines). - Activer le **Trusted Host Security** pour éviter le Host header injection. ## 📚 Ressources - [Documentation officielle](https://matomo.org/docs/) - [GitHub matomo-org/matomo](https://github.com/matomo-org/matomo) - [Matomo Marketplace](https://plugins.matomo.org/) - [Guide d'installation](https://matomo.org/docs/installation/) - [Awesome Matomo](https://github.com/matomo-org/awesome-matomo) - [Tracking HTTP API](https://developer.matomo.org/api-reference/tracking-api) ## 🔗 Pages Liées - [[cat-web-analytics]] - [[recettes-docker-compose]] - [[app-umami]] - [[app-plausible]] - [[app-open-web-analytics]]