fshy

Home / Developer services

GoatCounter

www.goatcounter.com/Privacy friendly web analytics (hosted)dev-services/goatcounterJSONcomparereport an errorprovider JSON

Free allowance
Free for reasonable public usage: a personal website or a small-to-medium business is fine, while sending millions of pageviews a day is not; no numeric cap is stated
Verdict
caveatusable, with a named limit or an unprobed read path
Cost
free tier
Identity
emailno card, no phone
Binding limit
volume-quotafree for reasonable public usage, with no number stated; millions of pageviews a day are outside it
Evidence
documented14 sources; a first-party page was read and the sentence quoted
Freshness
stale on 2026-12-02checked 2026-11-01 (live); stale on 2026-12-02
Free tierFree for reasonable public usage: a personal website or a small-to-medium business is fine, while sending millions of pageviews a day is not; no numeric cap is stated
unit unlimited; metered on none; Financed by donations through GitHub Sponsors. Several sites can share one account (Settings, sites). The hosted service and the open-source app share the same code; the hosted service is the offer recorded here.
Pricenone stated
Limits
  • request-rate API: 4 requests per second, reported in the X-Rate-Limit response headers source
  • volume-quota (binding) free for reasonable public usage, with no number stated; millions of pageviews a day are outside it source
The backend count endpoint has higher rate limits than the browser endpoint and accepts several pageviews in one request.
Bindingvolume-quota The only quota is the unstated reasonable-use ceiling; the 4-requests-a-second API limit binds only on programmatic reads.
Identityemail The sign-up form asks for an account name, an optional site domain, an email address and a password of at least 8 characters, plus a human check that asks the visitor to type a shown number; no payment field appears on it.
Egressall data can be exported as CSV at any time, through the dashboard or the export endpoints of the API; the API allows 4 requests per second
Per-object capunverified: no per-pageview or per-request size is stated on the pages read
Retentionunverified: no retention period of the hosted service is stated on the pages read; all data can be exported at any time
Interfacerest REST API under /api/v0 on the account's own host (CODE.goatcounter.com), authenticated by an API key created in the account as a Bearer token (HTTP Basic also works); POST /api/v0/count sends pageviews from a backend in batches, POST /api/v0/export starts a CSV export, and GET endpoints list sites, paths and statistics. The browser side is one script tag, a no-JavaScript tracking pixel, backend middleware or log file import.
Toolinga single script tag, the tracking pixel, middleware or log file import for the data in, and any HTTP client with an API key for the data out. As a last resort the open-source app can be self-hosted: the user installs and runs it on a rented or free machine.
Composes withPageview counting for a static site on any free host with one script tag and no cookies, with the numbers readable and exportable through the API.
Reliabilityno throttle, ban or data loss is stated on the pages read; the service is financed by donations
NotesThird-party lists give a monthly pageview cap and a retention period that the first-party pages read do not state, so neither is recorded as a limit.
Evidence notedocumented The free offer, the sign-up fields and the API limits are quoted from first-party pages. No account was opened and no numeric allowance or retention period is published, so both are unverified.
Parsed numbers
  • has-free-tier 1
  • request-rate 4 requests
Evidence 14
datesourcewhat it proved
2026-11-01www.goatcounter.com/the hosted service is free for reasonable public usage and millions of pageviews a day are outside that
2026-11-01www.goatcounter.com/the hosted service is financed by donations
2026-11-01www.goatcounter.com/the app can be self-hosted from its GitHub repository
2026-11-01www.goatcounter.com/data can be exported and the account cancelled at any time
2026-11-01www.goatcounter.com/the browser side is a single script tag, with a no-JavaScript image tracker, middleware and log file alternatives
2026-11-01www.goatcounter.com/help/apithe API is limited to 4 requests per second
2026-11-01www.goatcounter.com/help/apithe API authenticates with a Bearer API key created in the account
2026-11-01www.goatcounter.com/help/apiHTTP Basic authentication with the API key as the password is also supported
2026-11-01www.goatcounter.com/help/apithe count endpoint sends pageviews from a backend with higher rate limits and batching
2026-11-01www.goatcounter.com/help/apia CSV export is started through the API
2026-11-01www.goatcounter.com/signupthe sign-up form asks for an email address and a password of at least 8 characters
2026-11-01www.goatcounter.com/signupthe password needs at least 8 characters
2026-11-01www.goatcounter.com/signupthe sign-up form has a human check that asks the visitor to type a shown number
2026-11-01www.goatcounter.com/termsan email address is required to register an account