GoatCounter vs Matomo

Two privacy-first web analytics tools, compared side-by-side on the same axes. Data is descriptive — no rankings, no editorial winners.

Updated May 1, 2026 19 of 34 verified checks differ Source: vendor docs & pricing pages

GoatCounter

Solo-developer cookieless analytics — single binary on SQLite, EUPL-1.2 license

  • HQ🇮🇪 Ireland
  • Founded2019
  • LicenseEUPL-1.2 (server) · ISC (count.js)
  • ReferenceRead full review

Matomo

Open-source self-hosted analytics, formerly Piwik

  • HQ🇳🇿 New Zealand
  • Founded2007
  • LicenseGPL-3.0-or-later
  • ReferenceRead full review

At-a-glance

Five facts that most often qualify or disqualify a tool early.

GoatCounterMatomo
Price floorFree$29/mo
Free tierYesYes
Hosting modelSaaS + self-hostSaaS + self-host
Data residencyEUEU
CookielessYesNo

Privacy posture

Frameworks claimed and sub-processors disclosed under DPA.

Frameworks claimed

FrameworkGoatCounterMatomo
GDPR Held Held
CCPA Not held Held
UK PECR Not held Held
SOC 2 Type II Not held Not held
ISO 27001 Not held Held
HIPAA Not held Not held

Sub-processors

GoatCounter (3)

  • Martin Tournoij (sole trader) Legal entity (sole-trader data processor) 🇮🇪 Ireland
  • Hetzner Online GmbH Cloud hosting — Finland AND Germany data centers 🇫🇮 Finland
  • Stripe Payment processing (paid subscriptions) 🇮🇪 Ireland

Matomo (5)

  • InnoCraft Ltd Legal entity (data processor for Cloud customers) 🇳🇿 New Zealand
  • AC3 Cloud Services AWS reseller / contract holder for Matomo Cloud (data stays in EU) 🇳🇿 New Zealand
  • Amazon Web Services Cloud hosting (servers, MySQL database — EU region) 🇮🇪 Ireland
  • Stripe Payment processing (Cloud subscriptions) 🇮🇪 Ireland
  • Help Scout Customer support inbox 🇺🇸 United States

Pricing at common traffic levels

Cheapest published plan from each vendor that covers the listed pageview volume. Retrieved May 1, 2026.

Pricing comparison at four traffic tiers.
TrafficGoatCounterMatomo
10k pv/mo $0/moEntry $29/moEntry
100k pv/mo $15/mo100k $39/mo100k
500k pv/mo Custom — contact sales Custom — contact sales
1M pv/mo Custom — contact sales Custom — contact sales

Volumes between tiers follow each vendor's published pricing model. "Custom" indicates the vendor does not publish a price for that volume on their pricing page.

Feature matrix

All 38 verified checks across 4 categories.

Tracking & Reporting (15)

FeatureGoatCounterMatomo
Pageviews & visitors Yes
Pageviews + visitors
Yes
Pageviews + visits + visitors
Live visitor count No
Not in dashboard
Yes
Visitors in real-time widget
Top pages report Yes
By hits, simple list
Yes
Pages report (drillable)
Top referrers Yes
Referrer list
Yes
Channels report (drillable)
UTM campaign tracking Yes
Campaign tracking via UTM parameters
Yes
Full attribution model
Country & city breakdown Partial
Country-level only; no city tracking
Yes
Country, region, city
Device, browser, OS Yes
Browser + OS
Yes
Full device/OS/browser breakdown
Bounce / engagement No
Not measured
Yes
Bounce rate
Time on site No
Not measured
Yes
Full session timeline
Custom events Partial
count({event:true}) or data-goatcounter-click attribute; no custom dimensions
Yes
Multi-dimensional events
Goals / conversions No
Not supported — basic events only, no conversion modeling
Yes
Multi-step + revenue tracking
Funnels No
Not supported — intentionally minimal scope
Partial
Cloud Business+ included; Self-host: $229/yr premium plugin
Outbound link tracking No
Manual via custom hits
Yes
Auto + manual
File download tracking No
Manual via custom hits
Yes
Auto + file-type categorization
404 / error tracking No
Pageview to /404 path
Yes
Plugin

Privacy & Compliance (9)

FeatureGoatCounterMatomo
Cookieless by default Yes
Cookieless: no localStorage; salt rotates every 8 hours (more aggressive than daily-rotation peers)
Partial
Opt-in mode (one-line JS or admin toggle); cookies on by default
No personal data collected Yes
IPs not stored; in-memory only for geo + 8h salt hash
Partial
Configurable; off by default, CNIL mode masks last 2 octets
GDPR-compliant out of the box Yes
Vendor explicitly claims no banner needed; legitimate-interest basis
Partial
CNIL exemption (FR); DSK (DE) + Garante (IT) require case-by-case DPA review
Data hosted in EU Yes
Hetzner Finland + Germany; EU-only processing
Yes
AWS Frankfurt EU; InnoCraft (NZ) operates under EU adequacy decision
Data hosted in US No
EU-only — no US data residency
Yes
US data center option
Self-hostable Yes
Single static Go binary or Docker; SQLite default, Postgres optional
Yes
Free
Open source Yes
Server: EUPL-1.2 (slightly modified); count.js: ISC
Yes
GPL
Data retention period Configurable
Indefinite by default on Cloud + self-host; manual deletion via dashboard/API
Configurable
Default 180 days raw (CNIL); max 25 mo; aggregated unlimited
Bot & spam filtering No
Founder explicitly does not implement DNT (see arp242.net/dnt.html essay)
Yes
IAB list + custom

Setup & Integrations (10)

FeatureGoatCounterMatomo
Script weight (KB) 3
~3.2 KB gzipped (~9 KB uncompressed); ISC-licensed count.js
23
~23 KB gzipped (~218 KB uncompressed); same comparison basis as peers
Single-snippet install Yes
data-goatcounter endpoint URL
Yes
Also GTM
WordPress plugin Partial
Plugin on GitHub (savjee/goatcounter-wp); not in WP.org repository
Yes
Bundled plugin (full Matomo runs in WP); 100,000+ installs
Proxy / first-party domain Yes
Self-host single binary or Docker; ISC-licensed count.js works anywhere
Yes
Configurable proxy/CDN; no native SaaS proxy
Public API Yes
REST API at /api/v0/* with Bearer token auth
Yes
Reporting + Tracking + Custom Reports APIs (REST/JSON/XML/CSV)
Data export (CSV/JSON) Yes
CSV/JSON
Yes
CSV/JSON/XML/RSS
Google Search Console connector No
No native GSC connector
No
No native GSC connector; pull via API
Email digests Yes
Weekly email reports
Yes
Scheduled email reports
Slack / webhook alerts No
No webhooks, no Slack integration, no plugin system
No
No native; via plugin
Public shareable dashboard Yes
Public stats per site; visitor counter widget
Yes
Anonymous viewer permission

Pricing & Plans (4)

FeatureGoatCounterMatomo
Free tier exists Yes
Free Cloud for "reasonable public use" + permanent free Self-host
No
21-day trial only on Cloud; Self-host is free forever
Entry price ($/mo) No
No paid tiers; donation-supported via GitHub Sponsors
29
Cloud Starter (50k hits/mo, 30 sites)
Price at 100k pageviews No
No tier ladder; "personal use OK, millions of pageviews/day not"
Business tier — custom pricing
Unlimited sites on entry plan Yes
Self-host: unlimited sites; Cloud: unlimited within fair-use
Yes
Cloud: 30 sites on Starter; Self-host: unlimited

Where they differ

Axes where the two tools take materially different approaches. Each paragraph describes both vendors in parallel structure.

Pricing model

GoatCounter starts at $0/mo and reaches $15/mo at 100k pageviews. Matomo starts at $29/mo and reaches $39/mo at the same volume. Both vendors publish per-tier pricing on their public pages.

License & deployment

GoatCounter is licensed under EUPL-1.2 (server) · ISC (count.js) and is available for self-hosting. Matomo is licensed under GPL-3.0-or-later and is available for self-hosting.

Hosting jurisdiction

GoatCounter data residency: EU. Schrems II posture: eu only no transfer. Matomo data residency: EU. Schrems II posture: eu only no transfer.

Cookieless mechanism

GoatCounter uses daily salt hash for visitor uniqueness. Matomo uses none first party. Both mechanisms operate without setting cookies on the visitor's browser.

Continue exploring

More comparisons and reference pages on this site.