Umami logo

Deploy Umami

Privacy friendly web analytics on your own Umami

DataUtilitiesUmami + PostgreSQL

Deploy Umami with managed Postgres and a public HTTPS URL. Add a website, paste one script tag, and watch visitors, pageviews and events arrive in real time. The admin password is generated at deploy, so the default login never goes live.

Umami running on StackBlaze

What you get with Umami

  • Traffic at a glanceVisitors, visits, views, bounce rate and visit duration for any date range, with pages, sources, devices and locations underneath.
  • Realtime viewSee who is on your site right now: live pageviews, custom events and the pages they land on, updated as they happen.
  • Events and goalsTrack clicks and signups with a data attribute or the JavaScript API, then build funnels, goals, journeys and retention reports on them.
  • No cookiesThe tracker sets no cookies and stores no IP addresses. Visitors are counted with a salted hash that rotates every month.
  • One script tagEach website gets a snippet that loads script.js from your own hostname. Rename the script if ad blockers get in the way.
  • Teams and usersAdd users, group websites into teams, share a read only dashboard link, and turn on two-factor login per user.

After you deploy Umami

  1. 1Sign in as adminOpen the public URL and sign in as admin with ADMIN_PASSWORD from the app’s Variables. The first start runs the database migrations in about a minute.
  2. 2Add your websiteGo to Settings, then Websites, and add your site’s name and domain. Umami gives it a website ID.
  3. 3Paste the tracking codeCopy the script tag from the website’s Tracking code and put it in your site’s head. Visits show up in Realtime within seconds.

How Umami is wired

Umami and Postgres ship together. The public hostname serves the dashboard, the tracking script and the collection endpoint your visitors’ browsers send to.

Postgres holds everything
Websites, users, sessions and every event live in the attached database. Migrations run on each start, so updates apply themselves.
No default password
Umami ships with admin and a well known password. This template replaces it with a generated one before the app serves its first request.
Visitor locations
Countries and cities come from a GeoIP database inside the image, looked up from the visitor’s real address. Visitors cannot fake them with headers.
Keep the app secret
APP_SECRET signs logins and goes into every visitor hash. It is generated once at deploy. Changing it signs everyone out and splits visitor counts.

Why run Umami on StackBlaze

  • Scale your appChange CPU, RAM, and replicas without a rebuild, or let autoscaling add replicas when CPU climbs.
  • Git-based CI/CDPush to GitHub and it builds and ships. Pull requests get their own preview URL on Pro and Business.
  • One-click rollbackA deploy went wrong? Go back to any previous successful deploy.
  • Environments built inProduction, staging, and dev as separate environments in one project, each with its own URL.
  • Built-in observabilityCPU, memory, and response time per app, live logs with search, and alerts to Slack, Discord, or a webhook.
  • Developer-first toolsA CLI and Stack MCP: deploy, read logs, and wire services from your terminal or your AI assistant.
  • Built for teamsInvite teammates with roles. An audit log records who changed what.
  • Managed Postgres with HAPostgres is run for you. Turn on high availability for a three-node cluster when the app needs it.

Common questions about Umami

How do I sign in after deploy?

Open the public URL and sign in as admin. The password is generated at deploy and shown as ADMIN_PASSWORD in the app’s Variables. It replaces the default only once, so change it later in your Umami profile.

How do I add tracking to my site?

Add a website in Settings, open it, and copy the script tag under Tracking code into your site’s head. It loads script.js from your Umami hostname.

Ad blockers block script.js. Can I rename it?

Yes. Set TRACKER_SCRIPT_NAME (for example stats.js) and COLLECT_API_ENDPOINT (for example /api/collect) in Variables, then update the snippet on your site.

Does it use cookies?

No. The tracker sets no cookies and Umami does not store IP addresses. Unique visitors are counted with a salted hash that rotates every month.

Can I use my own domain?

Yes. Attach a custom domain from the dashboard, then use it in your tracking snippet. A first party domain also helps with ad blockers. Custom domains

Can I turn on two-factor login?

Yes. Each user can enable it under their profile. The encryption key for two-factor secrets is generated at deploy.

What does it cost?

You pay for the compute, storage and bandwidth Umami and Postgres use, not per pageview, per website or per seat. Pricing

More Data templates