Adieu Google (Analytics) !

Commençons par une petite citation :

"New year, new me"
— Trop de monde,trop souvent

La bonne résolution

Évitons les bonnes résolutions que l’on ne tiendra pas. Néanmoins, essayons de nous améliorer régulièrement…​

Pour commencer l’année 2022, j’ai décidé de me passer de Google Analytics pour suivre les visites de mon site. Tout d’abord parce que se passer de Google est toujours une bonne idée, ensuite parce qu’il est possible de faire presque aussi bien sans traquer ses visiteurs.

Je l’évoquais dans un article en octobre dernier, pour respecter le RGPD et recueillir le consentement de ses visiteurs à être pistés, nous devons nous-mêmes consentir à mettre en place un système (type popover ou bannière), contraignant en plus de dégrader l’expérience utilisateur.

Souriez, vous êtes traqués
Souriez, vous êtes traqués

La recherche d’une alternative

Mes critères étaient :

  • Une solution gratuite (je n’ai pas assez de visites pour justifier d’un autre investissement que mon temps)

  • Une solution sans cookie (inutile de quitter Google pour offrir trop de données à un autre)

  • Une solution en SaaS (en accord avec mon site hébergé via GitHub Pages)

Il existe des dizaines et des dizaines d’articles qui listent des alternatives à Google Analytics. Plus ou moins bons, plus ou moins à jour, plus ou moins intéressés par vos clics sur des liens affiliés…​

J’y ai passé du temps, pour finalement me rendre compte que le meilleur récapitulatif se trouve sous forme d’un repository GitHub : Awesome Analytics qui recense plus d’une centaine d’outils d’analytics, regroupés par catégories.

Ma solution : Insights.io

Et mon choix s’est porté sur un outil qui n’est même pas dans cette liste !
Note à moi-même : penser à ouvrir une PR pour proposer l’ajout de la solution retenue dans la liste !

Le credo d'Insights.io
Le credo d'Insights.io

J’ai finalement choisi Insights.io, qui propose :

  • Une utilisation gratuite jusqu’à 3000 pages vues par mois (j’en suis bien loin)

  • De ne pas déposer de cookie dans le navigateur du visiteur

  • Une interface digne de ce nom sur leur site

Alors évidemment, le jour où mon site sera très célèbre (ah ah !), il faudra passer à la caisse ou changer d’outil. Et puis mes statistiques ne sont pas chez moi, mais sur les serveurs d’Insights.io, ils ne proposent pas d’auto-hébergement.

Ce n’est donc sûrement pas la solution parfaite.
En attendant, l’outil est très simple et fonctionne bien.

La mise en place

Pour démarrer, rien de plus simple ! Une fois le compte créé, on ajoute un "projet" sur son dashboard.
On obtient alors un code (exactement le fonctionnement de Google Analytics en somme), qui sert d’identifiant.

Il faut alors ajouter à toutes vos pages la librairie JavaScript qui va émettre les informations depuis votre site vers les serveurs d’Insights.io. Pour cela, deux solutions sont décrites sur le repository GitHub de la librairie :

  • Installation via npm install/yarn

npm install insights-js
  • Directement depuis le CDN unpkg :

<script src="https://unpkg.com/insights-js"></script>

Les statistiques obtenues

Comme je vous le disais, les statistiques obtenues sont bien moins complètes que celles fournies par Google Analytics. Ici, pas de géolocalisation de vos visiteurs ou de tunnels conversions incompréhensible sans un PhD en marketing, on va droit à l’essentiel !

En premier lieu, le graph du nombre de pages visitées sur 24 heures, par semaine, mois, etc. :

Aperçu du dashboard d'Insights.io - Le graph
Aperçu du dashboard d'Insights.io - Le graph

Et parce que les choses sont bien faites, on retrouve tout de même des détails sur les visites qui ont eu lieu, avec les pages les plus vues, le temps passé sur le site, ou encore les OS, navigateurs et écrans des visiteurs. Largement suffisant pour un site comme le mien !

Aperçu du dashboard d'Insights.io - Le détail
Aperçu du dashboard d'Insights.io - Le détail

Bonus : filtrage des robots

Lorsque j’ai mis en place Insights.io sur mon site, j’ai été surpris de voir l’insistance des visites d’un certain "PetalBot" :

Des statistiques phagocytées par un robot
Des statistiques phagocytées par un robot

Renseignement pris, il s’agit d’un robot d’indexation pour le moteur de recherche proposé par Huawei. Et le moins que l’on puisse dire, c’est qu’il indexe ! Souvent.

Dans l’absolu, je n’ai rien contre cette indexation, qui pourra peut-être me rapporter quelques visites un jour. Mais cela vient largement fausser mes statistiques…​

Je me suis donc permis de forker la librairie insights-js pour lui ajouter un filtrage des robots, sur la base des "user agents" qu’ils affichent. Encore faut-il connaître les mauvais user agents…​ Et pour cela, encore une fois, un repository GitHub, et plus particulièrement ce fichier !

Ma version de la librairie avec ce filtrage est disponible ici. Par contre, cette fois-ci il faut builder la librairie soi-même, je ne vais pas tout faire hein ! 😘


Résultat, j’ai pu retirer l’import du script Google Analytics, mais aussi de la librairie Tarteaucitron que j’évoquais il y a quelques mois, ce qui ne peut qu’accélérer le chargement de mon site. Ce qui favorise …​ le référencement par Google !

Hé oui, parce que sans Google pour me référencer, qui visiterait mon site ? 😅