Skip to content

Configuration

Tidemark reads settings from the .env file in the project root. The installer writes the essentials. Edit the file with FTP or your file manager; changes apply on the next request.

Variable Default Notes
TIDEMARK_MODE self-hosted cloud opens registration and enables plan limits
TIDEMARK_REGISTRATION false (true in cloud) Allow sign-ups
TIDEMARK_INGEST sync queue buffers writes; drained by schedule:run or a worker
TIDEMARK_INGEST_QUEUE ingest Queue name used for buffered events
TIDEMARK_ANALYTICS_DB (app database) Separate connection for visits, events and event_props
TIDEMARK_IGNORE_IP none Comma-separated IPs, wildcards or CIDR ranges to ignore for every site
TIDEMARK_HOSTNAMES none Comma-separated hostname allow-list for every site
TIDEMARK_RETENTION_DAYS 0 Delete raw data older than N days. 0 keeps everything
TIDEMARK_GEOIP_DATABASE storage/app/geo/GeoLite2-City.mmdb Needs composer require geoip2/geoip2
TIDEMARK_DISABLE_BOT_FILTER false Count known bots too
TIDEMARK_SALT empty Secret mixed into visitor ids, together with the date. If empty, APP_KEY is used
TIDEMARK_UPDATE_CHECK true Look for new releases about once a day and show an update dot. Only the latest version number is requested. false turns it off
TIDEMARK_UPDATE_REPO tidemark-analytics/tidemark GitHub repository checked for new releases from Account settings → Updates. Set it to follow a fork
TIDEMARK_MAX_SITES 0 Sites per user (cloud). 0 is unlimited
TIDEMARK_MAX_EVENTS 0 Events per month (cloud). 0 is unlimited

Tidemark is a Laravel application, so APP_URL, DB_*, MAIL_*, SESSION_* and LOG_* work as documented by Laravel. Keep APP_ENV=production and APP_DEBUG=false on a live site.

Behind Cloudflare, Vercel or CloudFront, country comes from the CDN’s headers with no setup. For other hosts, install geoip2/geoip2 and place a MaxMind GeoLite2 City database at the configured path. The release zip does not bundle MaxMind data, and its license requires you to download it yourself.

The real client IP and country are read from the CDN’s headers automatically. See Troubleshooting.

© 2026 Tidemark · MIT licenseThese docs set no cookies and run no trackers.