Sentry Self-Hosted

IntermediateWeb App

Self-hosted Sentry error tracking on your own infrastructure, with PostgreSQL, Redis, ClickHouse, and Kafka under the hood.

Published 27 September 2026

Core Tools
PostgreSQL
PostgreSQL
Redis
Redis
ClickHouse
ClickHouse
Docker
Docker
Apache Kafka
Apache Kafka
Sentry
Sentry
Hosting
Hetzner
DigitalOcean
Hostinger
Amazon Web Services
Google Cloud Platform
Reverse Proxy
Traefik
Caddy
NGINX
Self-Hosted PaaS
Coolify
Dokploy

About Sentry Self-Hosted

Sentry's self-hosted distribution runs the same error-tracking platform as sentry.io from a Docker Compose bundle you control. PostgreSQL stores projects, users, and issue metadata, ClickHouse holds the high-volume events, Redis backs caching and background queues, and Kafka moves events between services. Your applications point the same Sentry SDKs at your instance; nothing changes in instrumented code beyond the DSN.

This is the heaviest stack in the family. The default profile starts around 70 containers, and the official floor is 4 cores, 16 GB of memory plus 16 GB of swap, and 20 GB of disk on a server Sentry has to itself. An errors-only profile trims the service count when error monitoring is all you need.

Sentry releases monthly, and upgrades can't skip the hard-stop versions that carry large database changes, so a regular upgrade habit is part of running it. The platform is under the Functional Source License: free to run for your own use, with each release becoming Apache 2.0 after two years.

The bundle's own NGINX listens on port 9000, and Sentry recommends a dedicated proxy or load balancer terminating TLS on its own domain in front of it. A reverse proxy you configure or a self-hosted PaaS's bundled proxy fills that role.

Key Features

  • ✓Official Sentry Docker Compose bundle, the same platform sentry.io runs
  • ✓ClickHouse event storage that keeps queries fast at high error volumes
  • ✓Kafka pipeline for durable, high-throughput event ingestion
  • ✓Works with every existing Sentry SDK; instrumented apps only change their DSN
  • ✓Error tracking, performance monitoring, and release tracking with all data on your own server
  • ✓An errors-only profile for teams that need error monitoring alone

When to Use Sentry Self-Hosted

  • →Organizations with compliance or data-residency requirements for crash and performance data
  • →High-event-volume products where per-event pricing grows faster than a fixed server
  • →Companies standardizing on self-hosted observability tooling
  • →Teams that already know Sentry and want the same workflows on their own infrastructure
  • →Products that must keep error data inside a private network

Pros

  • Fixed server cost regardless of how many events you ingest
  • All crash and performance data stays on infrastructure you own
  • Same SDKs, UI, and workflows as sentry.io, so the team relearns nothing
  • Source-available codebase that can be audited and customized

Cons

  • The heaviest stack in this family: 4 cores and 16 GB of memory plus swap across dozens of services
  • Monthly releases with hard-stop versions make skipped upgrades painful
  • Operations include ClickHouse and Kafka, not just a web app and a database
  • sentry.io's free Developer plan covers a solo project, so self-hosting buys control and volume, not savings at small scale

Hosting Options for Sentry Self-Hosted

Hetzner

Deploy Sentry Self-Hosted on Hetzner

A flat-rate root VPS where 16 GB instances, Sentry's official floor, cost around €20/mo, the cheapest way to meet it on a mainstream provider. Configure the 16 GB of swap Sentry also asks for, and keep the server dedicated, since the bundle leaves little room for other workloads.

DigitalOcean

Deploy Sentry Self-Hosted on DigitalOcean

A root Droplet with snapshots and a cloud firewall in the panel. Meeting Sentry's 16 GB floor means a larger Droplet, about $96/mo, several times the VPS price elsewhere in this list; it fits teams already on DigitalOcean who want Sentry next to the services it monitors.

Hostinger

Deploy Sentry Self-Hosted on Hostinger

The budget path to Sentry's floor: Hostinger's KVM plan with 4 vCPUs and 16 GB costs about $13/mo on a two-year term, with higher renewal rates. Add the 16 GB of swap yourself, and snapshot before each monthly upgrade, since hard-stop migrations are the risky moment.

Amazon Web Services

Deploy Sentry Self-Hosted on Amazon Web Services

An EC2 instance with 4 vCPUs and 16 GB runs well over $100/mo on demand, plus EBS volumes for PostgreSQL and ClickHouse. It fits when crash data must stay inside an existing AWS account; an Application Load Balancer with AWS Certificate Manager is the dedicated TLS terminator Sentry recommends.

Google Cloud Platform

Deploy Sentry Self-Hosted on Google Cloud Platform

A Compute Engine instance with 4 vCPUs and 16 GB costs around $100/mo, plus persistent disks for PostgreSQL and ClickHouse. It fits when crash data must stay inside an existing Google Cloud project, with Cloud Load Balancing and Google-managed certificates terminating TLS in front of Sentry.

These are highlighted picks. To see all the tools, check the Hosting & Cloud category.

Reverse Proxy Options for Sentry Self-Hosted

Traefik

Sentry Self-Hosted with Traefik

Terminates TLS for Sentry's domain and forwards to the bundle's NGINX on port 9000. Set system.url-prefix to the public HTTPS address and enable Sentry's secure-proxy SSL settings in sentry.conf.py, or logins fail CSRF checks behind the proxy.

Caddy

Sentry Self-Hosted with Caddy

Automatic HTTPS in a few lines: one site block for Sentry's domain proxying to port 9000. Caddy sends X-Forwarded-Proto by default, which Sentry's secure-proxy setting reads; set system.url-prefix to match so links in alert emails point at the public address.

NGINX

Sentry Self-Hosted with NGINX

A host-level NGINX in front of the bundle's own, terminating TLS with Certbot and forwarding to port 9000. Raise client_max_body_size, since source maps and debug files uploaded by release builds easily exceed NGINX's 1 MB default.

Self-Hosted PaaS Options for Sentry Self-Hosted

Coolify

Sentry Self-Hosted with Coolify

Free and self-hosted, used here as the TLS layer rather than the deployer: Sentry installs through its own install.sh script, which runs migrations and creates the first user. Route Sentry's domain to port 9000 through Coolify's proxy configuration and keep upgrades on Sentry's script.

Dokploy

Sentry Self-Hosted with Dokploy

Free and self-hosted, with its bundled Traefik serving as the TLS terminator in front of Sentry's port 9000. As with Coolify, leave Sentry's installation and monthly upgrades to its own install.sh rather than redeploying the roughly 70-service Compose file from the dashboard.

Sentry Self-Hosted Add-ons

Each addition below extends this stack with a capability the base stack works fine without. None are required: include the ones your product actually needs when building this stack, and skip the rest.

Tunnel Add-ons

Add a tunnel when you're self-hosting without a static IP or can't open inbound ports — a home server, a VPS behind restrictive network policies, or anywhere a reverse proxy alone can't reach the internet.

Cloudflare Tunnel

Sentry Self-Hosted with Cloudflare Tunnel

Makes Sentry reachable over HTTPS through an outbound-only connection, with no inbound ports or static IP, for an instance inside a private network. Your apps' SDKs must reach the ingestion endpoint from wherever they run, so publish that path through the tunnel and set system.url-prefix to the tunnel hostname.

ngrok

Sentry Self-Hosted with ngrok

The quicker-start tunnel for sending test events from a local or staging app to a Sentry instance on your own machine. Its free-tier limits suit that testing rather than a production ingestion endpoint.

Frequently Asked Questions about Sentry Self-Hosted

Why self-host Sentry instead of using sentry.io?

Event volume and data location. sentry.io's free Developer plan covers one user and 5,000 errors a month; Team is $26/mo and Business $80/mo billed annually, each with 50,000 errors of pre-paid volume, and more volume costs more. A self-hosted instance has no event quotas and keeps every error, trace, and replay on your server. The price is a dedicated 16 GB server and the work of running it, so self-hosting pays off at high event volume or under data-residency rules, not for a small team.

What does the server need to run?

Sentry's official minimum is 4 CPU cores, 16 GB of RAM plus 16 GB of swap, and 20 GB of free disk, and it's a real floor: users running half the memory report the server pinned at full load. The default profile starts around 70 containers, including PostgreSQL, Redis, ClickHouse, and Kafka. Setting COMPOSE_PROFILES to errors-only starts fewer services when you only need error monitoring. Either way, give Sentry a server of its own.

What needs backing up?

PostgreSQL holds organizations, projects, users, and settings, and ClickHouse holds the event data itself; those two volumes carry the state worth keeping, and the self-hosted repository documents backup and restore for them. Redis and Kafka are rebuildable. Many teams back up PostgreSQL daily and accept losing recent events from ClickHouse in a disaster, since errors age out anyway.

How do upgrades and licensing work?

Sentry releases monthly, on the 15th, with calendar versions. Upgrades can't skip the hard-stop versions that carry large database changes, so a server left alone for a year needs several upgrades in sequence. Each one is git checkout of the target version, then ./install.sh to run migrations; back up first. The license is the Functional Source License: running and modifying Sentry for your own use is free, selling it or building a competing service isn't, and each release becomes Apache 2.0 after two years.

Do I need a reverse proxy in front of Sentry?

Yes, for TLS. The bundle includes its own NGINX, listening on port 9000 over plain HTTP, and Sentry recommends a dedicated load balancer or proxy on its own domain to terminate HTTPS in front of it. Set system.url-prefix to the public HTTPS address and enable the secure-proxy SSL settings in sentry.conf.py, or logins fail CSRF checks. Allow large uploads, since release builds send source maps and debug files.

Scores

Popularity4/5

Sentry is one of the most widely known developer tools, full stop; the self-hosted path is long-established and well documented.

Learning Curve4/5

Sentry's product is trivial to use; its self-hosted bundle is a small platform, with dozens of services, monthly upgrades, and ClickHouse and Kafka operations.

Flexibility5/5

Error tracking, performance monitoring, and release tracking with the entire Sentry SDK ecosystem pointed at your own instance.

Performance4/5

The ClickHouse-plus-Kafka pipeline is built for high event volume and holds up well given adequate hardware.

Portability4/5

The same SDKs work against sentry.io, so an application can move its DSN to the SaaS without code changes; data export is supported.

Tools in the Sentry Self-Hosted Stack

DevOps & CI/CD

Data Engineering & ETL

Observability & Monitoring

Hosting (choose one)

Reverse Proxy or PaaS (choose one)

Reverse Proxy

Self-Hosted PaaS

Add-ons (optional — add any, or none)

Tunnel

Sentry Self-Hosted Pricing

From ~$20/mo Free to start

Sentry's self-hosted distribution is free to run under the Functional Source License, but it needs a dedicated server with 16 GB of memory: around $13-25/mo on a budget VPS, or about $100/mo on the big clouds. sentry.io's free Developer plan covers one user and 5,000 errors a month, and Team starts at $26/mo, so this stack pays off at high event volume or under data-residency rules rather than for a side project.

Server (VPS or cloud)$13-110/mo

Official floor: 4 CPU cores and 16 GB of RAM plus 16 GB of swap, on a server dedicated to the bundle.

Sentry platformFree (FSL)

No event quotas; each release becomes Apache 2.0 after two years.

Exposure (reverse proxy or PaaS)Free (open source)

Traefik, Caddy, NGINX, Coolify, and Dokploy all self-host free, with free Let's Encrypt certificates.

Sentry Self-Hosted System Requirements

source
CPU
4 cores
RAM
16 GB + 16 GB swap
Disk
20 GB free (Docker volumes)
OS
Any Linux with Docker Engine

A dedicated-server deployment: the Compose bundle runs PostgreSQL, Redis, ClickHouse, and Kafka alongside Sentry's own dozen-plus services, and it does not share a server with other workloads.