Analytics
Privacy-first analytics with multiple provider support
Optional analytics integration. Disabled by default.
Three providers available: Umami (recommended), Plausible, and Google Analytics. All can be used simultaneously.
Providers
Umami Analytics (Recommended)
Open source, privacy-first analytics. GDPR compliant by default.
No cookie banner needed
| Plan | Price | Events/mo | Websites | Data Retention |
|---|---|---|---|---|
| Hobby | Free | 100K | 3 | 6 months |
| Pro | $20 | 1M | Unlimited | 5 years |
| Self-hosted | Free | Unlimited | Unlimited | Unlimited |
Why Umami?
- Free tier with 100K events/month
- Self-host with PostgreSQL (no ClickHouse required)
- Open source
UMAMI_WEBSITE_ID=your-website-id
UMAMI_HOST=cloud.umami.is # or your self-hosted domain
Setup: umami.is
Plausible Analytics
Privacy-first analytics. Lightweight. GDPR compliant by default.
No cookie banner needed
PLAUSIBLE_DOMAIN=yourdomain.com
PLAUSIBLE_HOST=plausible.io # or your self-hosted domain
Setup: plausible.io ($9/mo or self-host with ClickHouse)
Google Analytics 4
Standard analytics. Free. Industry standard with comprehensive features.
Requires GDPR-compliant cookie consent (not included)
goilerplate does not include a cookie consent solution. Proper GDPR compliance requires:
- Opt-in before loading: GA script must not load until user consents
- Preference center: Users must be able to change their choice later
- Easy opt-out: Withdrawing consent must be as easy as giving it
This complexity is why we recommend Umami or Plausible for most projects.
GOOGLE_ANALYTICS_ID=G-XXXXXXXXXX
Setup: analytics.google.com
Cookie Consent
Default (No Analytics)
No cookie banner needed. Only essential cookies:
- JWT auth cookie (required for login)
- Theme preference (localStorage, not a cookie)
With Analytics
No cookie banner:
- Umami (privacy-first, no tracking cookies)
- Plausible (privacy-first, no tracking cookies)
Cookie banner required:
- Google Analytics 4
See Legal Pages for cookie consent info.
Multiple Providers
Use multiple providers simultaneously if needed. Enable by setting ENV vars.
Example (recommended setup):
UMAMI_WEBSITE_ID=your-website-id
Example (all providers):
UMAMI_WEBSITE_ID=your-website-id
PLAUSIBLE_DOMAIN=yourdomain.com
GOOGLE_ANALYTICS_ID=G-XXXXXXXXXX
Self-Hosting
Both Umami and Plausible support self-hosting:
Umami uses PostgreSQL - you can use your existing database.
Plausible requires ClickHouse - more resource-intensive setup.
Set the host ENV variable to point to your self-hosted instance:
UMAMI_HOST=analytics.yourdomain.com
PLAUSIBLE_HOST=plausible.yourdomain.com
Development
Leave analytics ENV variables empty in local .env to disable during development.
Set them only in production environment.