Vince is a privacy friendly web analytics server focused on painless self hosting.
Vince ships a single executable without any dependencies.
curl -fsSL https://vinceanalytics.com/install.sh | bash
docker pull ghcr.io/vinceanalytics/vince
❯ helm repo add vince http://vinceanalytics.com/charts
❯ helm install vince vince/vince
vince --version
create admin
❯ vince admin --name acme --password 1234
start server
❯ vince serve
2024/10/23 15:32:08 [JOB 1] WAL file vince-data/pebble/000002.log with log number 000002 stopped reading at offset: 124; replayed 1 keys in 1 batches
2024/10/23 15:32:08 INFO starting event processing loop
2024/10/23 15:32:08 INFO starting server addr=:8080
compressed | uncompressed |
---|---|
122MB | 310 MB |
To ensure smooth deployments we embed a couple of things
asset | size | notes |
---|---|---|
mmdb | 108MB | City Geolocation Database from https://db-ip.com under Creative Commons Attribution 4.0 International License. |
geoid database | 384MB | All cities, countries and regions data |
The reason you can breakdown by city/region is because we derive city/region geoid from city/region names from our embedded geoid data, something that would have been impossible because geoid is missing from the free mmdb downloads.
We use a number of techiques to shrink the embedded assets and avoid excessive memory allocations.
14MB
and 0.0%
of cpu.Stay calm and don't worry. The fat binary wont eat your ram or hijack your cpu. Under
heavy local load testing I havent peaked at 70MB
of ram yet, data is well organized
and GC works like a charm.
Please load test with your workload and tell me your findings.
feature | vince | plausible |
---|---|---|
Entrerprise features | :x: | :white_check_mark: |
Hosted offering | :x: | :white_check_mark: |
Multi tenant | :x: | :white_check_mark: |
Funnels | :x: | :white_check_mark: |
Goals Conversion | :white_check_mark: | :white_check_mark: |
Unique visitors | :white_check_mark: | :white_check_mark: |
Total visits | :white_check_mark: | :white_check_mark: |
Page views | :white_check_mark: | :white_check_mark: |
Views per visit | :white_check_mark: | :white_check_mark: |
Visit duration | :white_check_mark: | :white_check_mark: |
Breakdown by Cities, Sources, Pages and Devices | :white_check_mark: | :white_check_mark: |
Self Hosted | :white_check_mark: | :white_check_mark: |
<1KB script | :white_check_mark: | :white_check_mark: |
No Cookies(GDPR, PECR compliant) | :white_check_mark: | :white_check_mark: |
100% data ownershiip | :white_check_mark: | :white_check_mark: |
Unique shared access to stats | :white_check_mark: | :white_check_mark: |
Outbound links tracking | :white_check_mark: | :white_check_mark: |
File download tracking | :white_check_mark: | :white_check_mark: |
404 page tracking | :white_check_mark: | :white_check_mark: |
Time period comparisons | :white_check_mark: | :white_check_mark: |
Unlimited sites | :white_check_mark: | :x: |
Unlimited events | :white_check_mark: | :x: |
Zero dependency | :white_check_mark: | :x: (needs elixir, clickhouse, postgresql ...etc) |
Automatic TLS | :white_check_mark: | :x: |
Plausible Analytics : vince
started as a Go port of plausible with a focus on self hosting.