Du web analytique léger et respectueux de la vie privée
En 2021, j’avais annoncé vouloir changer d’outil de web analytique. Matomo fait très bien son travail si vous possédez un site à fort trafic ou si vous venez de Google Analytics. Par contre, si vous n’avez pas besoin de toutes ses fonctionnalités – comme moi – il est peut-être plus intéressant de se pencher sur des alternatives plus légères. Je vais ainsi vous présenter certaines de mes découvertes.
Avant-propos
J’ai longtemps utilisé Google Analytics pour sa simplicité et sa gratuité – il faut le dire – puis j’ai découvert Piwik. Cet outil est tout aussi complet mais libre et installable sur son propre serveur. Je l’ai ainsi adopté. J’en ai déjà parlé sur ce blog donc je ne vais pas m’étendre sur le sujet.
Je ne remets pas en question l’intérêt de Matomo (le nouveau nom de Piwik) comme solution de web analytique. Au contraire, je n’hésiterais pas à le recommander aux personnes utilisant encore Google Analytics afin de ne pas trop les dépayser. En revanche dans mon cas, cela fait un moment que je fais un constat simple : j’utilise un nombre très réduit de fonctionnalités. Est-ce que ça vaut vraiment le coup de poursuivre avec cet outil assez gourmand en ressources ? Je pense que non ; j’ai ainsi cherché des alternatives plus légères.
Web analytique : des alternatives à Matomo
Je ne vais pas rentrer dans le détail de chaque application pour plusieurs raisons :
- je ne les ai pas toutes testées (entendre par là : installer, configurer et utiliser l’outil),
- elles se veulent toutes légères et axées sur le respect de la vie privée,
- les données collectées semblent assez similaires,
- les fonctionnalités également,
- toutes ces solutions sont gratuites, open-source et installables sur votre propre serveur.
De ce fait, je vais seulement m’attarder sur les points qui diffèrent entre chacune d’elles. Si vous souhaitez vous faire votre propre avis, la plupart d’entre elles propose une démo en ligne.
Ackee
- L’outil requiert un serveur Node.js.
- Il propose différentes méthodes d’installation, avec ou sans Docker.
- Deux modes de récolte de données sont disponibles : une qui se limite – en gros – au nombre de visites et une autre qui récupère un peu plus d’informations comme les sites référents ou le système d’exploitation.
- Il est possible de connaître la langue mais pas le pays.
- Il supporte des événements personnalisés.
- Il met à disposition une API pour construire d’autres outils basés sur Ackee.
Une démonstration en ligne est disponible sur le site officiel d’Ackee.
Counter.dev
- L’outil est écrit en Go. Ainsi, si vous souhaitez l’installer, il vous faudra un serveur supportant Go. Il utilise également Redis.
- Il propose des statistiques sur la période (heure ou jour de la semaine) la plus active.
- Pour le moment, l’installation sur son propre serveur n’est pas documentée mais l’auteur prévoit d’améliorer ce point. Je ne sais pas s’il est actuellement possible de l’installer sans documentation ; je n’ai pas testé.
Là encore, pour la démo en ligne, vous trouverez un lien sur le site officiel de Counter.
GoatCounter
- L’outil est écrit en Go. Ainsi, si vous souhaitez l’installer, il vous faudra un serveur supportant Go.
- Son installation semble simple et rapide.
- Son interface est différente des autres ; elle ne plaira pas à tout le monde.
- Il ne propose pas de moyenne pour l’ensemble du site ni d’estimation sur le temps passé sur une page.
Vous trouverez un lien vers une démo et plus d’informations sur le site officiel de GoatCounter.
Offen
- Il est possible de naviguer par date.
- Il différencie les pages d’entrées et les pages de sorties.
- Il propose un lien pour que chaque visiteur puisse voir ses propres statistiques et les supprimer s’il le souhaite.
- Une bannière est nécessaire puisqu’Offen ne collecte les données qu’après consentement de l’utilisateur.
Il n’existe pas de démo en ligne, mais vous trouverez sur le site officiel d’Offen des instructions pour tester une démo en local.
Plausible
- Il est possible de naviguer par date.
- Il différencie les pages d’entrée et de sortie.
- Il est possible d’avoir des statistiques par page.
- Il est possible d’enregistrer des objectifs.
Vous pouvez essayer une démo en ligne sur le site officiel de Plausible.
Shynet
- L’outil utilise Django donc Python est requis.
- Il est possible d’enregistrer plusieurs utilisateurs.
- L’auteur prévient que l’outil n’a pas été testé sur sites à fort trafic.
Shynet ne propose pas de démo en ligne. Il n’a pas non plus de site officiel. Si vous souhaitez en savoir plus, il faut vous rendre sur le dépôt Github de Shynet.
umami
- Un serveur Node.js est requis.
- Il supporte des événements personnalisés.
- La version du navigateur ou du système d’exploitation n’est pas enregistrée.
Vous trouverez une démo en ligne sur le site officiel de umami.
Mes critères
Comme je le disais, je trouve Matomo trop complet. J’ai donc établi une liste des fonctionnalités que j’aimerai retrouver dans un outil de web analytique :
- le nombre de visites par jour/mois/année et un graphique montrant l’évolution,
- la possibilité de naviguer par date (je n’ai pas les yeux rivés sur les statistiques tous les jours…),
- les sites référents,
- une liste des pages les plus consultées avec si possible des statistiques par page (donc visites + sites référents),
- quelques données techniques comme la résolution ou les navigateurs utilisées et leur version,
- la possibilité de configurer plusieurs domaines sans que tout soit mélangé.
Jusqu’à cette année, j’avais un autre critère : que l’outil soit installable sur un hébergement PHP. J’utilisais un hébergement mutualisé et je n’avais ni accès à Node ni à Docker par exemple. Malheureusement, je n’ai trouvé aucun outil qui correspondait à ce dernier point. C’est pourquoi il m’a fallu plus d’un an pour passer de Matomo à une autre solution de web analytique. Les choses ont changé. Avec la nouvelle version du site, je suis finalement passé à un VPS ce qui enlève certaines contraintes d’installation. Il restait donc à faire un choix.
Mon outil de web analytique actuel
Depuis cette semaine, j’ai remplacé Matomo par Ackee sur mes sites. Je n’ai pas assez de recul pour vous dire clairement si je vous le recommande ou non. Il a ses avantages mais également ses inconvénients. Tout dépendra donc de votre usage. De mon côté, il est probable que je finisse par en essayer un autre d’où le « actuel » dans le titre. Je vais tenter de faire un premier point sur mon ressenti pour que vous compreniez mieux pourquoi.
Avant de rentrer dans le positif/négatif, je souhaite vous informer que l’utilisation d’Ackee implique un autre changement pour ce site : je ne supporte plus Do Not Track (puisqu’Ackee ne le supporte pas). Est-ce un défaut ? Avec un outil aussi complet que Matomo ou Google Analytics, je dirais oui. Avec des outils plus respectueux de la vie privée comme Ackee, je ne pense pas. Je vous invite à lire l’avis du créateur de GoatCounter sur la question ; je trouve son point de vue intéressant.
Les points positifs
Son installation a été très simple, contrairement à Plausible que j’ai voulu tester mais qui me générait des erreurs. J’utilise la méthode Docker Compose et j’ai configuré Apache comme reverse proxy.
L’interface est simple et fluide. Elle est toutefois un peu déroutante quand on vient de Matomo puisqu’il n’est plus possible de savoir qui visite quoi. Ceci dit, c’est un point positif puisque c’était un peu l’objectif : ne plus collecter de données qui ne me servaient à rien.
L’idée des deux modes est intéressante puisque cela laisse un peu de contrôle aux visiteurs. Sur ce site, j’ai choisi d’utiliser le mode détaillé d’Ackee par défaut pour que l’outil corresponde mieux à mes critères. Ce paramétrage va un peu à l’encontre de leurs recommandations, mais, à moins d’être dans la même pièce que vous comme ils disent, je ne vois pas comment je pourrais vous identifier. Donc, même avec en mode détaillé, l’outil reste respectueux de votre vie privée. Si cela vous dérange, vous pouvez modifier le paramètre dans le menu réglages de ce site.
Ackee propose également différentes méthodes pour mettre en place le tracker. Il est possible de placer le script donné au moment de l’ajout d’un domaine, d’installer un package npm ou encore d’utiliser un hook React. Il s’adapte donc facilement à différents types de projet sans se prendre la tête.
Ce qui me gène
Le premier point qui me dérange c’est l’exclusion de ses propres visites : l’outil propose bien un paramètre pour cela mais mes visites sont tout de même comptées. Elles ne le sont pas en local (il existe un autre paramètre pour ignorer localhost
) mais elles le sont sur le site de test et sur ce site.
Ensuite l’outil ne correspond pas tout à fait à mes critères :
- il ne semble pas possible de naviguer par date,
- les statistiques par pages se limitent au nombre de visites,
- il est possible de configurer différents domaines mais les statistiques sont un peu « mélangées » je ne trouve pas ça très pratique,
- globalement l’interface ne me semble pas très pratique dès lors qu’il y a un peu de trafic sur le site ; pourtant, ce site n’est pas un site à très fort trafic.
Pour l’affichage des statistiques, il est peut-être possible d’y remédier en construisant sa propre interface. L’outil propose une API pour construire d’autres outils basé sur Ackee donc ce devrait être faisable. Ceci dit, je n’ai pas testé et je ne pense pas le faire.
Un exemple concret
Je vais vous exposer un exemple simple d’un reproche que j’ai à faire envers Ackee. Depuis que je suis passé sur Next.js, il arrive que certaines pages provoquent un bug qui génère une sorte de loupe – sans que je ne sache vraiment pourquoi pour le moment. Avec Matomo, je pouvais constater ce problème rapidement : en guise de titre pour la page, je voyais « Application error: a client-side exception has occurred ». Avec Ackee, je ne vois que l’URL… Si je n’avais pas ce comparatif, je ne me poserai sans doute aucune question et, plus malencontreux, je ne saurai même pas que ce type de bug existe.
Le 25 février (le jour où j’écris ces lignes), j’ai une page qui a généré 402 vues durant les dernières 24h. Avec Ackee, je ne peux pas dire d’où proviennent les visites pour cette page. Est-ce que ce trafic est normal ? Je sais que cette page a un certain succès parce qu’elle a été partagée sur d’autres sites, mais je ne me souviens pas l’avoir déjà vu en tête de classement avec Matomo. Y-a-t-il eu des problèmes ? Est-ce une journée exceptionnelle ? Impossible à dire.
Vous allez me dire que le bug n’est pas lié à Ackee, ce qui est vrai. En revanche, le manque d’information est là et il vient bien d’Ackee. Je suis pour collecter moins d’info mais là c’est peut-être un peu trop. Compter les pages vues sans pouvoir mettre un minimum de contexte, ça n’a aucun intérêt : autant ne pas utiliser de suivi analytique.
Au final
Je pensais continuer mon expérience d’Ackee un peu plus longtemps. Cependant, cet exemple me refroidit un peu. Il a pourtant ses qualités – c’est pourquoi je l’ai mis en place si rapidement sur le site – mais ça ne me suffit pas. Il me reste donc à tester et mettre en place un autre outil de web analytique. Je ne sais pas encore lequel. Chacun a ses qualités, mais aucun ne semble répondre exactement à ce que je voudrais.
Pour commencer, je vais sans doute retenter l’expérience avec Plausible malgré mes problèmes d’installation la première fois. Il semble le plus proche de mes critères. Counter.dev est également intéressant (j’aime bien l’idée du récapitulatif journée/heure la plus active, ça peut être utile pour les grosses mises à jour du site) mais il n’est pas prévu de l’auto-héberger pour le moment. Sur le papier, Offen me plaît également mais je souhaite me passer de bannière ; il y en a déjà trop de partout sur le web.
Bref, si je ne suis toujours pas satisfait après ces tests… je continuerais mes recherches et je vous en ferai part. Il est probable que je n’ai pas fait le tour de tous les outils existants.
Michel Campillo
Bonjour,
Votre conclusion (“toujours pas satisfait”) est mi-figue, mi-raisin pour le coup. Evidemment le choix d’un outil “meilleur” que Google Analytics dépendra des besoins spécifiques, et les alternatives que vous présentez ont leurs avantages et inconvénients respectifs. Le fait de les héberger sur ses propres serveurs, pour plus de sécurité, est un critère que vous avez choisi mais qui n’a rien d’obligatoire et demande un certain niveau de compétence technique.
C’est paradoxal aussi de vouloir une analyse du comportement des utilisateurs de votre site, avec en même temps une préoccupation sur le respect de la vie privée, puisqu’on peut traquer l’utilisateur qui revient sans cesse sur le site et analyser son comportement (les pages visitées, etc.) Ceci dit, suivre le parcours des utilisateurs à travers son site web est utile pour nous (les blogueurs) permettre de comprendre comment les visiteurs interagissent avec notre contenu… or c’est pour eux que l’on écrit. 😉
Concernant le suivi des informations en temps réel sur les visiteurs, cela n’est utile à mon sens que pour surveiller les performances en temps réel du site. Pour le reste je ne vois pas trop, si ce n’est que c’est amusant de savoir que quelqu’un est en train de consulter telle page! Anecdotique quand même.
Une chose est sûre : il n’y a pas de solution unique qui convienne à tout le monde, j’ai apprécié dans votre article que vous ayez cette ouverture.