Analytics produit auto-hébergé : ce qu’il faut faire tourner
PostHog, Plausible CE, Umami, Matomo et Trailic comparés sur ce qu’il faut faire tourner : services, bases, licence, minimums. Vérifié en novembre 2026.
La plupart des comparatifs d’outils auto-hébergés comparent des fonctions. Je voulais d’abord savoir ce que j’aurais sur les bras à deux heures du matin : combien de services, quelles bases de données, qui répond quand ça casse. J’ai donc lu la documentation d’installation et les fichiers Compose de chaque projet, en novembre 2026, à partir des sources listées à la fin. Je n’ai pas installé les quatre autres outils : rien ici n’est un banc d’essai.
Le tableau
| PostHog | Plausible CE | Umami | Matomo On-Premise | Trailic | |
|---|---|---|---|---|---|
| Surtout | Analytics produit, plus rejeu de session, flags, enquêtes et d’autres | Mesure d’audience | Mesure d’audience avec analyse des comportements | Mesure d’audience | Pages vues, événements, entonnoirs, rétention pour sites Next.js |
| Déploiement | bin/deploy-hobby sur une VM Ubuntu, Docker Compose | Docker Compose | Docker Compose, une image, ou depuis les sources | Application PHP sur votre serveur web | Application Next.js sur Vercel, ou partout où tourne Node |
| Services | 48 entrées dans docker-compose.hobby.yml, dont quelques tâches ponctuelles | 3 conteneurs | 2 conteneurs | Serveur web, PHP, base, cron | 1 application, 1 base, un tampon, 2 appels planifiés |
| Stockage | Postgres, ClickHouse, Redis, Valkey, Redpanda en guise de Kafka, ZooKeeper, SeaweedFS, Elasticsearch, Temporal, etcd | Postgres 16, ClickHouse 24.12 | Postgres 12.14 ou plus | MySQL ou MariaDB | Postgres, sans extension |
| Minimum annoncé | 4 vCPU, 16 Go de RAM, plus de 30 Go | 2 Go de RAM recommandés, un processeur avec SSE 4.2 ou NEON | Aucun trouvé | 2 CPU, 2 Go de RAM, 50 Go de SSD jusqu’à 100 000 pages vues par mois | Aucun. Voir le test de charge plus bas |
| Licence | MIT, sauf ee/, sous sa propre licence | AGPL-3.0 | MIT | GPL-3.0, extensions payantes sous contrat InnoCraft | AGPL-3.0 |
| Entonnoirs | Oui | Pas dans CE | Oui | Extension payante | Oui |
| Rétention | Oui | Non confirmé pour CE | Oui | Extension payante (Cohorts) | Personnes identifiées seulement |
| Qui vous aide | « Officially unsupported », pas de support client | La communauté seulement | Rien trouvé | Rien trouvé pour l’auto-hébergement gratuit | Personne pour l’instant, ouvrez une issue |
| Trafic réel | Oui | Oui | Oui | Oui | Pas encore |
Ce que chacun demande
PostHog
De loin le plus complet des cinq. La version auto-hébergée est, selon ses propres mots, le même produit que PostHog Cloud : vous avez le rejeu de session, les feature flags et les enquêtes, que Trailic n’a pas. Le prix, c’est la pile technique. Le fichier Compose liste 48 entrées, et l’exemple de la documentation est une machine de 16 Go. PostHog ne s’en cache pas : l’auto-hébergement est « officially unsupported », sans versions étiquetées, et son arbre de décision demande si vous dépassez 300 000 événements avant de vous orienter vers le cloud. Voyez-y plutôt un moyen d’essayer l’outil ou de garder un petit projet chez vous.
Plausible Community Edition
Trois conteneurs : l’application, Postgres et ClickHouse pour les événements. C’est petit et clair. ClickHouse est la pièce à surveiller : c’est lui qui impose 2 Go de RAM et un processeur avec SSE 4.2 ou NEON. CE est une version à long terme, publiée deux fois par an. Plausible réserve à son cloud payant les entonnoirs marketing, les parcours, les objectifs de revenus e-commerce, le SSO et l’API des sites, pour financer le projet dans la durée. Si cette limite vous convient, c’est un choix net.
Umami
La plus petite pile que j’ai lue : une application et Postgres. La documentation demande Node 20.19 ou plus et Postgres 12.14 ou plus. Licence MIT, et l’outil a bien dépassé le simple comptage : sa documentation couvre désormais entonnoirs, rétention, parcours, objectifs, rejeux et cartes de chaleur, et il embarque un serveur MCP à activer avec MCP_ENABLED=1. Un détail à traiter tout de suite : une installation depuis les sources crée un compte admin avec le mot de passe umami. Changez-le d’abord.
Matomo On-Premise
Pas besoin de conteneurs : PHP, un serveur web (Apache, Nginx, IIS ou LiteSpeed) et MySQL ou MariaDB. La page des prérequis donne PHP 8 avec MySQL 5.5 ou plus pour Matomo 5, et PHP 8.1 avec MySQL 8.0 ou MariaDB 10.6 pour Matomo 6. Il faut aussi une tâche cron pour l’archivage des rapports au-delà de quelques centaines de visites par jour, toutes les heures par défaut. C’est le dimensionnement le plus détaillé des cinq, jusqu’à plus de 100 millions de pages vues par mois sur cinq serveurs. Funnels, Cohorts et Heatmap & Session Recording sont des extensions payantes avec 30 jours d’essai. Les cookies sont actifs tant que vous n’ajoutez pas disableCookies, et les rapports sur les visiteurs récurrents deviennent alors inexacts.
Trailic
Une application Next.js 16 et un Postgres. Sur Vercel, rien d’autre pour le tampon, puisque Vercel Queues est disponible sur toutes les offres, en bêta. Mais la synchronisation horaire exige une offre Pro, car l’offre Hobby refuse les crons de plus d’un passage par jour. Ailleurs, vous réglez TRAILIC_BUFFER=file sur un disque qui dure, vous appelez /api/cron/flush toutes les heures et /api/cron/retention chaque jour, et vous placez l’application derrière un proxy qui transmet l’adresse du visiteur, puisque le hash la lit. Il faut aussi choisir une façon de se connecter : le fournisseur OpenID Connect de l’entreprise, Google, ou des mots de passe avec une clé Resend. Faire tourner Trailic donne la liste complète.
Le vrai point faible, c’est tout ce qui relève de l’exploitation. Il n’y a pas encore de chemin de mise à jour entre versions, le modèle de données peut changer, et le tampon Vercel Queues n’a tourné que contre une doublure de ce service. Les quatre autres sont aujourd’hui un endroit plus sûr pour des données que vous ne pouvez pas perdre.
Dimensionner
Les minimums annoncés disent peu de chose de votre propre trafic. Voici donc un calcul à refaire chez vous. Pour Trailic, je n’ai qu’une mesure, et elle est synthétique : pnpm load-test charge 5 millions d’événements générés sur 120 jours et 30 sites, dans un Postgres 17 limité à un CPU et 4 Go.
- Les événements bruts occupent 1,64 Go, soit environ 340 octets par événement, et les agrégats 139 Mo.
- Un site qui envoie 1 million d’événements par mois, conservés 90 jours par défaut, garde environ 3 millions de lignes brutes.
- 3 000 000 × 340 octets font environ 1 Go, et le stockage brut s’arrête là, car les vieux jours sont supprimés. Les agrégats restent, et ils pèsent peu.
Dans ce test, un entonnoir à trois étapes sur 90 jours, sur le plus gros site, prend 130 ms avec un CPU et 700 ms avec un quart de CPU. Les parcours depuis sa page la plus vue prennent 3,5 s et 20 s : c’est la seule requête qui grandit avec le trafic d’une page. Le trafic réel se comportera autrement, et je publierai les chiffres quand il y en aura.
Pour comparaison, Matomo prévoit 4 CPU, 8 Go et 250 Go de SSD jusqu’à 1 million de pages vues par mois. D’un côté un guide de dimensionnement, de l’autre un test synthétique : n’y voyez pas une course.
La licence, concrètement
Si vous l’utilisez pour vous-même, les cinq vous le permettent. Ils diffèrent quand vous modifiez le code et le proposez à d’autres. Avec l’AGPL-3.0 (Plausible CE, Trailic), proposer une version modifiée à travers un réseau oblige à publier vos changements sous la même licence. La licence MIT (Umami, l’essentiel de PostHog) n’en demande pas tant. La GPL-3.0 (Matomo) s’applique quand vous distribuez le logiciel. Les extensions payantes de Matomo et le dossier ee/ de PostHog sortent de ce cadre. Le choix de Trailic est expliqué sur la page open source.
Comment je choisirais
| Votre situation | Ce que je regarderais d’abord |
|---|---|
| Un petit serveur, des pages et des sources | Umami ou Plausible CE |
| Un hébergement PHP déjà là, des rapports façon Google Analytics | Matomo |
| Rejeu de session, flags et expériences, avec 16 Go à y consacrer et sans support de l’éditeur | PostHog |
| Tous vos sites en Next.js sur Vercel, des entonnoirs et de la rétention dans votre Postgres, et l’envie de tester un outil non éprouvé | Trailic, à côté d’un autre |
L’auto-hébergement ne règle pas la question du bandeau cookies : c’est à vous d’y répondre. La fiche du glossaire sur les analytics auto-hébergés en donne la définition courte.
Où en est Trailic
Trailic est une première version. Il fonctionne de bout en bout sur une instance de test, avec de vrais navigateurs, un vrai assistant et cinq millions d’événements synthétiques, mais il n’a encore collecté aucun trafic réel. Son tampon Vercel Queues n’a tourné que contre une doublure de ce service, son modèle de données peut changer et il n’existe pas de chemin de mise à jour entre versions. Il n’y a pas de version hébergée, et la bibliothèque n’est pas encore sur npm : elle se trouve dans le dépôt, sous packages/trailic. Le rejeu de session, la capture automatique des clics, les cartes de chaleur, les feature flags, les tests A/B, les enquêtes et la santé des comptes ne sont pas construits. N’en faites pas encore votre seule mesure d’audience. Le dépôt est ici, et les corrections de ce tableau sont les bienvenues dans les issues.
Sources
- PostHog, documentation de l’auto-hébergement et sa source (en anglais)
- PostHog,
docker-compose.hobby.yml,docker-compose.base.ymlet licence - PostHog, rétention et entonnoirs (en anglais)
- Plausible, Community Edition et cloud (en anglais)
- Plausible CE,
READMEetcompose.yml - Umami, installation, index de la documentation,
READMEetdocker-compose.yml - Matomo, prérequis et archivage automatique (en anglais)
- Extensions Matomo : Funnels, Cohorts, Heatmap & Session Recording
- Matomo, désactiver les cookies et l’effet sur les rapports (en anglais)
- Vercel, usage et tarifs des cron jobs et Queues (en anglais)
- Trailic,
READMEet spécification du produit (en anglais)