Umami
Umami is an open-source, privacy-first website analytics tool that supports real-time traffic statistics, custom event tracking, and multi-site management, making it a lightweight and secure alternative to Google Analytics.
Detailed Introduction
Umami – A Privacy-First Open Source Website Analytics Tool
What is Umami?
Umami is a simple, fast, privacy-focused website analytics tool. It is a lightweight open-source alternative to Google Analytics, allowing website owners full control over their data while avoiding the collection of visitor personal information, complying with privacy regulations such as GDPR/CCPA.
Why Choose Umami?
- Privacy-First: No cookies are used, nor is individual user tracking; you have full control over your data.
- Open Source and Self-Hosted: Free to use, no closed-source black box, continuously optimized by the community, can be self-deployed or use the official cloud service.
- Simple Interface: Provides real-time statistics, page traffic, device/language/region data, intuitive and easy to use.
- Quick Deployment: Supports Docker and manual installation, compatible with common databases such as PostgreSQL/MySQL/MariaDB.
Core Features of Umami
- Real-Time Page Access Statistics: Includes page views, unique visitors, sources, device types, etc.
- Custom Event Tracking: Tracks interactive events such as button clicks, form submissions.
- Visitor Behavior Analysis: Session, retention rate, conversion funnel trend comparison analysis.
- UTM and Channel Statistics: Supports UTM parameter tracking, can group monitor ad campaign performance.
- Multi-User and Multi-Site Management: Can set team permissions, manage multiple sites, supports CSV export.
How to Install and Start Using Umami?
1. Quick Deployment (Recommended Docker)
Ensure Docker and Docker Compose are installed, then create a docker-compose.yml file:
version: '3'
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- '3000:3000'
environment:
DATABASE_URL: postgresql://umami:password@db:5432/umami
DATABASE_TYPE: postgresql
APP_SECRET: random string
db:
image: postgres:15-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: password
volumes:
- umami-db-data:/var/lib/postgresql/data
volumes:
umami-db-data:
Execute:
docker compose up -d
Visit http://localhost:3000, log in with the default admin account.
2. Local Installation (Node.js Method)
Clone the code:
git clone https://github.com/umami-software/umami.git cd umami npm installConfigure environment variables:
SetDATABASE_URL=postgresql://...ormysql://...in the.envfile.Build and run the application:
npm run build npm run start
The login address is usually http://localhost:3000.
Usage Tips
- Deploy to the Cloud: Official cloud and third-party platforms (such as Render, Elestio) support one-click deployment.
- Add Tracking Code: Insert
<script defer src="…/script.js" data-website-id="…">in the<head>to start collecting page data ([dev.to][5]). - Track Event Interactions: Use JS to call
umami.track('button_click')to track specific interactive events. - Multi-Site Management: Multiple sites can be added in the dashboard, suitable for managing multiple projects.
Related Sites
Comments
Leave a Comment
Share your thoughts about this page. All fields marked with * are required.


