--- title: Open Web Analytics created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, web-analytics, privacy, self-hosted, analytics, php, mysql, gdpr, fork] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=web-analytics] --- # 📉 Open Web Analytics > OWA — Suite d'**analyse web PHP** open source dérivée de la base de code originale de Matomo/Piwik, avec une approche centrée sur le multi-sites et la confidentialité. > Source : [selfh.st](https://selfh.st/apps/?tag=web-analytics) ## 📋 Métadonnées | Métadonnée | Valeur | | :--- | :--- | | **Site web** | [openwebanalytics.com](https://www.openwebanalytics.com/) | | **GitHub** | [github.com/Opendatasoft/Open-Web-Analytics](https://github.com/Opendatasoft/Open-Web-Analytics) | | **License** | GPL-2.0 | | **Langage** | PHP 7+ / MySQL | | **Étoiles** | 485 | | **Dernière MAJ** | 2024-09 | | **Catégorie** | [[cat-web-analytics]] | ## 📝 Description **Open Web Analytics** (OWA) est une suite d'**analyse web open source** écrite en PHP, historiquement dérivée de Piwik (l'ancêtre de [[app-matomo]]). Le projet est né en 2007 et a depuis été **repreneur en 2023 par Opendatasoft**, qui maintient désormais activement la base de code. OWA se positionne comme une alternative légère à Google Analytics, plus simple que Matomo à mettre en place. Fonctionnalités principales : **suivi multi-sites** natif, **tableaux de bord personnalisables**, **suivi des clics** et des **événements DOM**, **rapports e-commerce**, **rapports de clics sur les liens sortants**, **tracking des téléchargements**, **intégration WordPress native** (plugin officiel), **API REST** pour l'intégration avec d'autres outils, **dashboard embedded** (possibilité d'inclure les rapports dans des applications tierces). OWA supporte également le **geocoding** des adresses IP via GeoIP, la **détection de bots**, le **filtrage IP** interne/externe, et offre une **architecture extensible** par modules. L'API JavaScript permet d'enregistrer des actions personnalisées et des **objectifs de conversion** (goals) sans cookie. L'écosystème de plugins est cependant **beaucoup plus réduit** que Matomo, et la fréquence de mise à jour reste modeste. Le projet est en quelque sorte une **« valeur refuge »** pour qui cherche un outil PHP traditionnel, simple et sans fioritures, avec un niveau de maturité intéressant. Idéal pour un usage **intranet ou self-hosted sans dépendance externe**. ## 🚀 Installation ### Option 1 : Docker Compose (recommandé) ```yaml # docker-compose.yml version: '3.8' services: owa: image: owa/owa:latest container_name: owa restart: unless-stopped ports: - "8080:80" environment: OWA_DB_HOST: db OWA_DB_USER: owa OWA_DB_PASSWORD: owa_secure OWA_DB_NAME: owa OWA_DOMAIN: https://owa.example.com volumes: - ./owa-data:/var/www/html depends_on: db: condition: service_healthy networks: - owa-net db: image: mysql:8 container_name: owa-db restart: unless-stopped environment: MYSQL_DATABASE: owa MYSQL_USER: owa MYSQL_PASSWORD: owa_secure MYSQL_RANDOM_ROOT_PASSWORD: "yes" volumes: - ./db-data:/var/lib/mysql command: --default-authentication-plugin=mysql_native_password networks: - owa-net healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root"] interval: 10s timeout: 5s retries: 10 networks: owa-net: driver: bridge ``` > ⚠️ Vérifier l'image `owa/owa` sur Docker Hub — si indisponible, utiliser l'installation manuelle LAMP ci-dessous. Lancement : ```bash docker compose up -d # Accéder à http://localhost:8080 et suivre l'assistant ``` ### Option 2 : Installation manuelle (LAMP) ```bash git clone https://github.com/Opendatasoft/Open-Web-Analytics.git /var/www/owa cd /var/www/owa # Configurer Apache/Nginx + PHP 7.4+ avec extensions : pdo_mysql, gd, mbstring, curl # Créer la base MySQL : CREATE DATABASE owa CHARACTER SET utf8mb4; # Accéder à http://votredomaine/owa et suivre l'installateur ``` OWA requiert **PHP 7.4+** (idéalement 8.0+), **MySQL 5.7+** ou **MariaDB 10.3+**, et un serveur web **Apache** (recommandé, `.htaccess` natif) ou **Nginx** (avec rewrite rules). ## ⚙️ Configuration - **Permissions fichiers** : `chown -R www-data:www-data /var/www/owa`. - **Cron** : indispensable pour le traitement des logs bruts et l'archivage : ```cron */15 * * * * www-data php /var/www/owa/modules/base/queue/queue_process.php > /dev/null 2>&1 ``` - **Tracking API** : snippet JS à injecter dans le `` de chaque site : ```html ``` - **WordPress** : plugin officiel OWA disponible sur le repo WP. - **GeoIP** : télécharger la base MaxMind GeoLite2 et configurer le path. - **Filtrage** : exclure les bots, IP internes, en configuration admin. ## 🔄 Alternatives **Open source** : - [[app-matomo]] — descendant direct d'OWA, plus mature - [[app-umami]] — moderne, Node.js - [[app-plausible]] — privacy-first, Elixir - [[app-ackee]] — minimaliste, Node.js - [[app-goatcounter]] — ultra-léger, Go - [[app-rybbit]] — TypeScript moderne - [[app-litlyx]] — TypeScript simple - [[app-swetrix]] — TypeScript Plausible-like - [[app-vince]] — Go minimaliste **Propriétaire (SaaS)** : - **Google Analytics 4** — leader du marché - **Matomo Cloud** — version managée officielle - **Plausible Cloud** — payant, RGPD-by-default - **Fathom Analytics** — SaaS, simple - **Adobe Analytics** — enterprise - **Woopra** — customer journey analytics - **Mixpanel** — product analytics ## 🔒 Sécurité - **Changer immédiatement** le mot de passe admin par défaut (`admin`). - Activer **2FA** si disponible (TOTP) sur le compte admin. - Mettre l'application derrière un **reverse proxy HTTPS**. - Le **cron PHP** doit tourner sous un utilisateur restreint (`www-data`), pas en root. - **Sauvegardes MySQL** : `mysqldump` quotidien + snapshots `owa-data`. - Restreindre l'accès à l'admin via **IP allowlist** ou VPN. - Mettre à jour OWA — la cadence est modérée (1 release majeure par an). - **Désactiver l'exécution PHP** dans les dossiers uploadés (`uploads/`). - **fail2ban** recommandé sur le reverse proxy et SSH. - Surveiller les **logs d'accès** : OWA logge les hits du tracker, utile pour détecter des abus. ## 📚 Ressources - [Site officiel](https://www.openwebanalytics.com/) - [GitHub Opendatasoft/Open-Web-Analytics](https://github.com/Opendatasoft/Open-Web-Analytics) - [Documentation](https://github.com/Opendatasoft/Open-Web-Analytics/wiki) - [Plugin WordPress](https://wordpress.org/plugins/owa/) - [API JS](https://github.com/Opendatasoft/Open-Web-Analytics/wiki/JavaScript-API) ## 🔗 Pages Liées - [[cat-web-analytics]] - [[recettes-docker-compose]] - [[app-matomo]] - [[app-umami]] - [[app-plausible]]