Salta al contenuto principale

Matomo vs Google Analytics: scelta tecnica ed etica per siti europei

Inviato da tuxsa il
Matomo

Matomo è una piattaforma open‑source per analytics che può essere self‑hosted o usata come servizio cloud. Offre tracciamento pagine, eventi, ecommerce, funnel, segmentazione, API, tag manager e plugin per heatmaps e session recording.

Perché preferire Matomo in Europa

  • Proprietà dei dati: Con Matomo self‑hosted i dati risiedono sul tuo server: sei tu il titolare dei dati.

  • Indipendenza: Esporta, cancella o trasferisci i dataset senza dipendere da politiche aziendali di terze parti.

  • GDPR Compliance: Facilita la conformità: evita trasferimenti automatici verso paesi terzi, abilita anonimizzazione IP e gestione retention.

  • Cookieless: Opzioni per cookieless tracking che riducono la necessità di opt‑in per analytics tecnici.

  • Privacy: Non integra dati per finalità pubblicitarie cross‑site; riduce la profilazione commerciale.

  • Trasparenza: Codice open‑source ispezionabile; plugin e comportamenti verificabili.

  • Flessibilità: Tracking client‑side e server‑side, API estese e personalizzazione dei dati.

  • Scalabilità: Con tuning di DB e cache, Matomo scala per siti medio‑grandi.


Come installarlo (su Debian 12)

Prerequisiti:

  • VPS con Debian 12 e accesso SSH (root o sudo).

  • Dominio puntato al VPS (es. analytics.tuosito.it).

  • Stack LAMP/LEMP (PHP 8.1+, MySQL/MariaDB, Nginx/Apache).

Passo 1: Prerequisiti del sistema

sudo apt update && sudo apt upgrade -y
sudo apt install -y nginx mariadb-server php8.2 php8.2-fpm php8.2-mysql php8.2-gd php8.2-xml php8.2-mbstring php8.2-curl php8.2-zip unzip
 

Passo 2: Configura il Database

sudo mysql -u root

CREATE DATABASE matomo_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'matomo_user'@'localhost' IDENTIFIED BY 'tua_password_sicura';
GRANT ALL PRIVILEGES ON matomo_db.* TO 'matomo_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Passo 3: Scarica e Configura Matomo

wget https://builds.matomo.org/matomo-latest.zip
unzip matomo-latest.zip -d /var/www/matomo
sudo chown -R www-data:www-data /var/www/matomo
sudo chmod -R 755 /var/www/matomo

Passo 4: Configura Nginx

Crea il file /etc/nginx/sites-available/matomo:

server {
    listen 80;
    server_name analytics.tuosito.it;
    root /var/www/matomo;
    index index.php;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.2-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /(config|tmp|core|vendor) {
        deny all;
        return 403;
    }
}

Attiva il sito:

sudo ln -s /etc/nginx/sites-available/matomo /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

Passo 5: Installazione Web

  1. Vai su [http://analytics.tuosito.it](http://analytics.tuosito.it).

  2. Segui la procedura: lingua, verifica requisiti e inserimento dati DB.

  3. Crea l'account admin e configura il primo sito.

Passo 6: Codice di Tracciamento

Inserisci prima del tag </head>:

<!-- Matomo -->
<script type="text/javascript">
  var _paq = window._paq = window._paq || [];
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    var u="//analytics.tuosito.it/";
    _paq.push(['setTrackerUrl', u+'matomo.php']);
    _paq.push(['setSiteId', '1']);
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.type='text/javascript'; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
  })();
</script>

Passo 7: HTTPS con Let’s Encrypt

sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d analytics.tuosito.it

Ottimizzazioni e Manutenzione

Cache con Redis

sudo apt install -y redis-server php8.2-redis
sudo systemctl restart php8.2-fpm

In config/config.ini.php aggiungi:

[Cache]
backend = redis
redis_host = 127.0.0.1
redis_port = 6379

Backup Automatici (Crontab)

0 3 * * * mysqldump -u matomo_user -p'tua_password' matomo_db > /backup/matomo_db_$(date +\%Y-\%m-\%d).sql
0 4 * * * tar -czvf /backup/matomo_files_$(date +\%Y-\%m-\%d).tar.gz /var/www/matomo

Pulizia Dati

sudo -u www-data php /var/www/matomo/console core:archive --url=https://analytics.tuosito.it
sudo -u www-data php /var/www/matomo/console core:delete-old-data --days=365

Funzionalità Avanzate

  • Dashboard: Visite in tempo reale, grafici e mappe geografiche.

  • Obiettivi: Tracciamento conversioni (es. iscrizioni newsletter).

  • E-commerce: Monitoraggio ordini e carrelli (richiede JS specifico).

  • Eventi: _paq.push(['trackEvent', 'Categoria', 'Azione']);

  • Privacy: Opt-out integrabile tramite iframe e anonimizzazione IP nativa.

Tabella Integrazioni

StrumentoTipo IntegrazioneUtilità
DrupalModulo dedicatoTracciamento completo
WordPressPlugin WP-MatomoTracciamento automatico
JoomlaPlugin MatomoIntegrazione nativa
PrestaShopModulo AnalyticsTracciamento e-commerce
Search ConsoleImport via APIDati SEO in dashboard
Slack/TelegramWebhookAlert picchi traffico

Conclusione: Quando scegliere Matomo

✅ Per chi dà priorità alla privacy e alla sovranità dei dati.

✅ Per chi deve rispettare rigorosamente il GDPR in UE.

✅ Per chi preferisce software Open Source ispezionabile.

✅ Per chi ha competenze tecniche per gestire un proprio server.