
Should I self-host Matomo Cloud?
It is literally the same software. Matomo Cloud charges $26/mo to run the GPL code they publish; the apache image plus MariaDB is a one-evening setup and the data lands in your database instead of theirs.
The math (nothing hidden, including your time)
| Matomo Cloud (Business · 50,000 hits/month) | $26.00/mo |
| VPS share + storage | −$1.00/mo |
| Your maintenance: 30 min/mo at $20/h | −$10.00/mo |
| Net saving | $15.00/mo |
| Setup: 31 min measured (one-time) | $10.33 |
| Break-even | 0.7 months |
| Markup Index (price ÷ real self-host cost) | 2.4× |
Price: source, checked 2026-08-06. Inputs are stored in git; every number above is derived, never hand-written.
What you lose
- Managed upgrades and their support SLA
- Cloud-side raw data retention policies become your storage problem
What you're paying Matomo Cloud for
- web analytics
- goals & funnels
- visitor logs
- GDPR-friendly tracking

Ranked alternatives
The full Google-Analytics-shaped suite on your own hostname, with visitor profiles, funnels and no monthly hit meter.
The same privacy-first analytics dashboard the vendor sells, on your own domain, with no pageview meter counting against you.
Hardware
Runs comfortably on a real VPS (2 GB+).
The tested compose file (our evidence, CI-booted)
# Matomo — the analytics standard; apache image + mariadb
services:
matomo:
image: matomo:apache
container_name: matomo
restart: unless-stopped
depends_on:
matomo-db:
condition: service_healthy
environment:
MATOMO_DATABASE_HOST: matomo-db
MATOMO_DATABASE_DBNAME: matomo
MATOMO_DATABASE_USERNAME: matomo
MATOMO_DATABASE_PASSWORD: matomo
ports:
- "8100:80"
volumes:
- matomo-data:/var/www/html
healthcheck:
test: ["CMD-SHELL", "php -r 'exit(@file_get_contents(\"http://localhost:80/\")!==false?0:1);'"]
interval: 10s
timeout: 10s
retries: 30
start_period: 30s
matomo-db:
image: mariadb:11
restart: unless-stopped
environment:
MARIADB_DATABASE: matomo
MARIADB_USER: matomo
MARIADB_PASSWORD: matomo
MARIADB_ROOT_PASSWORD: matomo-root
volumes:
- matomo-db:/var/lib/mysql
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 5s
timeout: 5s
retries: 12
volumes:
matomo-data:
matomo-db:
Want a guided install instead? caniselfhostit.com/matomo-cloud has AI-agent prompts that assume a bare machine — that's their half of the stool, and it's good.
Verification
Protocol v1 · verified by zernonia on 2026-08-10 · setup measured at 31 min · AI assistant: claude-code (allowed & stated)
What broke
- Boot to healthy measured at 39s on the 2GB reference env
Full timed log
# Matomo Cloud — verdict log - **Date:** 2026-08-10 - **Verdict:** YES — worth it - **Protocol:** v1 (2GB reference env, Docker preinstalled, AI assistant: claude-code) ## Setup evidence - Compose: `compose/matomo-cloud-matomo.yml` - Boot to healthy: **39s** measured this session - Setup time recorded: 31 min (boot + configuration to first working workflow) ## What broke / notes - Boot to healthy measured at 39s on the 2GB reference env ## The call It is literally the same software. Matomo Cloud charges $26/mo to run the GPL code they publish; the apache image plus MariaDB is a one-evening setup and the data lands in your database instead of theirs.
Verdict history
- 2026-08-10: unscored → YES — Initial verdict: It is literally the same software.
