Umami is an open source, self-hosted alternative to Google Analytics built for teams that want website analytics without tracking individuals across the web. It's a single Node.js application backed by a PostgreSQL database, and it renders traffic, referrer, and event data in a simple dashboard instead of the sprawling interface associated with GA. A hosted Umami Cloud option exists alongside self-hosting, so teams can start on either without switching platforms later.
Umami fits teams and individual site owners who want basic traffic analytics without the cookie banners, data retention questions, and complexity that come with Google Analytics or Mixpanel. It's a good fit for marketing sites, blogs, and small SaaS products that need pageviews, referrers, and event tracking but not full product analytics. Because a single install can track multiple websites, it also suits agencies or freelancers managing analytics for several client sites from one dashboard and one login, and shareable public reports make it easy to hand a client a link instead of exporting screenshots or granting login access to the dashboard.
Umami requires Node.js 18.18+ and PostgreSQL 12.14+. The fastest path is docker compose up -d using the provided Docker Compose file, which runs Umami alongside a Postgres database; the first build creates a default admin/umami login that should be changed immediately. Installing from source instead means cloning the repo, running pnpm install, setting a DATABASE_URL in .env, then pnpm run build followed by pnpm run start.
Umami is built with Next.js on top of Node.js, and requires a PostgreSQL database for storage. Updating a source install is a git pull, pnpm install, and pnpm build cycle, while a Docker install updates with docker compose pull followed by docker compose up --force-recreate -d; both paths apply any pending schema migrations automatically. Umami's team maintains support channels on GitHub, X, LinkedIn, and Discord, and every tagged release is published with notes on GitHub Releases.