Plausible Analytics au lieu de Google Analytics

Tout le monde connaît Google Analytics mais savez-vous qu’il existe une alternative simple, open source et qui ne nécessite pas de bannière de cookies ? Je vous présente Plausible Analytics.

Plausible Analytics est une plateforme d’analyse Web open source qui se concentre sur le respect de la vie privée et la simplicité. Contrairement à des solutions plus courantes comme Google Analytics, Plausible a été conçu avec une approche centrée sur la vie privée, ce qui signifie qu’il ne collecte pas de données personnelles des visiteurs.

Cela rend la plateforme conforme aux réglementations strictes en matière de protection des données, telles que le RGPD en Europe, donc idéal pour nous.

Caractéristiques clés

  1. Respect de la vie privée : pas de cookies, pas de suivi des adresses IP, ce qui signifie que vous n’avez généralement pas besoin de demander le consentement des utilisateurs pour suivre les statistiques.
  2. Open Source : le code source est disponible pour tout le monde, ce qui signifie que vous pouvez l’héberger vous-même et examiner le code pour vous assurer qu’il respecte ses promesses en matière de vie privée.
  3. Simple et facile à utiliser : l’interface utilisateur est simple, propre et facile à comprendre, même pour les personnes qui ne sont pas techniquement compétentes.
  4. Léger : le script de suivi est beaucoup plus léger que celui de solutions concurrentes, ce qui signifie qu’il a un impact minimal sur les performances du site Web.
  5. Rapports en temps réel : vous obtenez des rapports en temps réel sur les visiteurs, les pages vues, les taux de rebond, et plus encore.
  6. Intégration facile : Plausible Analytics peut être facilement intégré avec d’autres plates-formes et outils, grâce à des API et des webhooks.

En résumé, Plausible Analytics est une alternative solide et respectueuse de la vie privée aux solutions d’analyse Web traditionnelles. Il est particulièrement utile pour ceux qui valorisent la simplicité, l’open source, et le respect des données des utilisateurs.

Ce tutoriel aborde l’installation sous Ubuntu Server mais comme c’est une image docker, c’est totalement adaptable pour votre distribution linux préférée.

Installation de Plausible Analytics sous Ubuntu Server

1. Commençons par vérifier que notre système est à jour :

sudo -i
apt update && apt upgrade

Installation de Docker

2. Plausible fonctionne avec un container Docker donc nous allons la clé du repo officiel de Docker :

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

3. Ajoutons le repo de Docker à notre configuration apt :

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. Installons maintenant docker et ses dépendances avec le gestionnaire de paquets apt :

apt update && apt install docker-ce docker-ce-cli docker-compose containerd.io docker-buildx-plugin docker-compose-plugin

Installation de Plausible

5. Téléchargeons plausible :

git clone https://github.com/plausible/hosting
cd hosting

6. Générons une clé secrète de 64 caractères de long :

openssl rand -base64 64 | tr -d '\n' ; echo

7. Cette clé va nous servir à remplir la constante SECRET_KEY_BASE du fichier plausible-conf.env :

nano plausible-conf.env

Et modifiez BASE_URL avec le sous-domaine où vous consulterez vos statistiques (par exemple https://plausible.example.com), et SECRET_KEY_BASE avec la clé secrète que vous avez généré en étape 6 :

ADMIN_USER_EMAIL=admin@your-domain.com
ADMIN_USER_NAME=admin
ADMIN_USER_PWD=Str0ng_Passw0rd
BASE_URL=https://plausible.your-domain.com
SECRET_KEY_BASE=VSqCkxxFh0lQAcKgM+NmLzya28kbAr++FBL8b6qUxtAi9AeGScacv+fSGfYBqHiAVevv3H70qIJML1MabF+Klg==

Configuration du sous-domaine

8. Créons le sous-domaine. J’utilise Cloudflare donc un simple enregistrement de type A suffit pour obtenir le sous-domaine plausible :

plausible in A xxx.xxx.xxx.xxx

9. Créons un nouveau server block NginX pour notre sous-domaine :

nano /etc/nginx/sites-available/plausible.example.com.conf

avec:

proxy_cache_path /home/nginx-cache/plausible levels=1:2 keys_zone=plausible:100m inactive=30d  use_temp_path=off max_size=100m;

# HTTP server block
server {
    listen 80;
    listen [::]:80;
    server_name plausible.skyminds.net;

    # Redirect all HTTP traffic to HTTPS
    location / {
        return 301 https://$host$request_uri;
    }
}

# HTTPS server block
server {
        listen              443 ssl;
        listen              [::]:443 ssl;
        http2  on;

        server_name plausible.skyminds.net;

        ssl_certificate         /etc/nginx/ssl/skyminds.net/fullchain.pem;
        ssl_certificate_key     /etc/nginx/ssl/skyminds.net/privkey.pem;

        #access_log /var/log/nginx/plausible-access.log;
        error_log /var/log/nginx/plausible-error.log;

        location / {
                    proxy_pass http://127.0.0.1:8010;
        }

        location = /js/script.js {
            # Change this if you use a different variant of the script
            proxy_pass http://localhost:8010/js/script.js;
            proxy_set_header Host plausible.skyminds.net;
            proxy_ssl_server_name on;
            proxy_ssl_session_reuse off;

            # Tiny, negligible performance improvement. Very optional.
            proxy_buffering on;

            # Cache the script for 6 hours, as long as plausible.io returns a valid response
            proxy_cache plausible;
            proxy_cache_valid 200 6h;
            proxy_cache_use_stale updating error timeout invalid_header http_500;

            # Optional. Adds a header to tell if you got a cache hit or miss
            add_header X-Cache $upstream_cache_status;
        }

        location = /api/event {
            proxy_pass http://localhost:8010/api/event;
            proxy_set_header Host plausible.skyminds.net;
            proxy_ssl_server_name on;
            proxy_ssl_session_reuse off;
            proxy_buffering on;
            proxy_http_version 1.1;

            proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Host  $host;
        }
}

Notez que mon domaine utilise un certificat SSL wildcard donc je n’ai pas besoin de créer un nouveau certificat pour le domaine plausible. Nous testons la configuration nginx :

nginx -t

Et nous créons le lien symbolique pour activer le server block :

ln -s /etc/nginx/sites-available/plausible.example.com.conf /etc/nginx/sites-enabled/

Nous pouvons désormais redémarrer le serveur nginx :

service nginx restart

10. Passons maintenant à la configuration des ports. Sur mon serveur, le port 8000 est déjà utilisé par IceCast donc nous allons utiliser le port 8010.

Nous éditons le fichier docker-compose.yml :

nano docker-compose.yml

Et nous changeons la ligne :

8000:8000

Pour :

127.0.0.1:8010:8010

Cela empêche l’accès à distance à Plausible sur le port 8000, pour plus de sécurité.

Nous pouvons maintenant relancer notre instance docker :

docker-compose down --remove-orphans && docker-compose up -d

Mettre à jour Plausible Analytics

La procédure pour mettre à jour le container plausible est vraiment simple :

cd /root/hosting

docker-compose down --remove-orphans
docker-compose pull plausible
docker-compose up -d

Ajouter un site à la console Plausible

Rendez-vous sur votre nouveau sous-domaine Plausible et identifiez-vous. Vous pouvez alors ajouter un site (un domaine plus précisément). On clique sur le bouton “Add a site” :

Une capture d'écran du bouton Ajouter un domaine avec Plausible Analytics.
Une capture d’écran du bouton Ajouter un domaine avec Plausible Analytics.

Validez, vous obtenez le code à insérer dans vos pages à l’étape suivante :

Ajoutez l’extrait Javascript Plausible Analytics à votre site Web.
Ajoutez l’extrait Javascript Plausible Analytics à votre site Web.

Ajoutez ce code dans l’un des fichiers de votre thème, ou via un utility plugin. C’est aussi simple que ça !

Visualiser les statistiques depuis WordPress

Si vous êtes sous WordPress, vous pouvez installer l’extension Plausible Analytics et avoir accès à vos statistiques directement depuis l’interface d’administration, sans avoir à quitter le site. C’est très pratique.

  1. Dans votre interface Plausible, rendez-vous sur votre domaine puis Settings → Visibility → Add link. Vous pouvez alors créer un nouveau lien partagé (shared link) :
Création d'un nouveau lien partagé Plausible Analytics
Création d’un nouveau lien partagé Plausible Analytics

Note : ne donnez que le nom pour être en mesure de l’identifier rapidement dans la liste mais ne mettez pas de mot de passe, cela bloquerait l’intégration dans WordPress puisque ce ne serait plus public.

  1. Une fois que le lien est créé, vous êtes redirigé vers la page précédente qui vous donne un lien partagé sécurisé avec un token d’identification. Copiez ce lien pour l’étape suivante :
Un lien partagé de Plausible Analytics
Un lien partagé de Plausible Analytics
  1. Installez l’extension Plausible Analytics.
  2. Lors de la configuration initiale, sélectionnez l’onglet Self-Hosted puis remplissez les options :
    • Domain name : plausible.example.com – cela correspond à votre sous-domaine plausible.
    • Shared link : collez le lien partagé que vous venez de créer plus haut.
  3. Dans l’onglet Settings, activez toutes les options de Enhanced measurements :
Les options de mesures statistiques de Plausible Analytics
Les options de mesures statistiques de Plausible Analytics

Une fois que vous avez tout configuré, vous avez accès aux statistiques de Plausible Analytics pour votre site WordPress dans Dashboard → Analytics.

Une solution simple à mettre en place. Vous pouvez ainsi ajouter tous vos sites sur votre sous-domaine Plausible et avoir une vue unifiée de toutes les statistiques sur le tableau de bord.

Recherchez-vous un expert WordPress ou WooCommerce sur qui vous pouvez compter? Ne cherchez plus.

Faites confiance à mon expertise »

Articles conseillés :

Opinions