vinceanalytics / vince

Cloud-Native web analytics for everyone
https://vinceanalytics.com
GNU Affero General Public License v3.0
93 stars 3 forks source link
cloud-native self-hosted vince web-analytics

vince

Vince is a privacy friendly web analytics server focused on painless self hosting.

Vince Analytics

Features

Installation

Vince ships a single executable without any dependencies.

Installing

MacOS and Linux

curl -fsSL https://vinceanalytics.com/install.sh | bash

Docker

docker pull ghcr.io/vinceanalytics/vince

Helm

❯ helm repo add vince http://vinceanalytics.com/charts
❯ helm install vince vince/vince

Download

see release page

Checking installation

vince --version

Start vince

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

FAQ

Does the binary size affect performance ?

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.

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.

Comparison with Plausible Analytics

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:

Credit

Plausible Analytics : vince started as a Go port of plausible with a focus on self hosting.