Error Tracking 5 services 3.8 GiB RAM 5 GB disk

GlitchTip

Sentry-API-compatible error tracking at a fraction of self-hosted Sentry’s footprint - managed Postgres + Valkey, one secret.

One-click deploy, from $25/mo on a Miget plan.

Self-hosted Sentry is famously a 20+ container leviathan (Kafka, ClickHouse, Zookeeper, an army of consumers). GlitchTip implements the Sentry API - your existing Sentry SDKs just point at a new DSN - in four lean services: web, a Celery worker, Postgres, and a Redis-compatible cache. Same SDKs, same DSN flow, a tenth of the iron.

On Miget, db and queue become managed Postgres and Valkey with connection env auto-wired onto all GlitchTip services. SECRET_KEY is the only required variable. Error events, performance traces, and uptime checks land in a UI that any Sentry user will navigate without a manual.

The economics are stark: error tracking SaaS meters by event volume, and one bad deploy can blow a month’s quota in an hour. Self-hosted GlitchTip ingests whatever your stack can hold - a noisy week costs disk space, not an invoice.

#what you get

  • Sentry SDK compatible - point any Sentry client at the GlitchTip DSN
  • Error tracking, performance monitoring, and uptime checks
  • Email + webhook alerting (Slack, Discord, …)
  • Managed Postgres + Valkey auto-provisioned and auto-wired
  • Unlimited events - your quota is your disk
  • One required variable: SECRET_KEY

#topology

ServiceRolePublic
webUI + API + event ingestion (:5000)yes
workerCelery worker + beatno
migrateidempotent Django migrations, then idlesno
db / queuePostgres / Valkey - managed services on Migetno

#miget sizing

// this stack needs

3.8 GiB RAM · 5 GB disk · 5 services

Sized for steady ingestion: 1 GiB each for web and worker. High-volume bursts queue in Valkey and drain through the worker - scale the worker first if backlogs grow.

Hobby - recommended fit

$25/mo

2 vCPU · 4 GiB · 80 GiB disk

Headroom for your own apps: 8 GiB at $49/mo

Professional - production

$43/mo

2 vCPU · 4 GiB · 25 GiB disk

Dedicated resources, production SLOs - plan details

One Miget plan is a fixed pool of compute - the whole stack (managed databases included) deploys inside it, and anything left over runs your other apps. No per-service or per-seat math.

#vs. the managed service

What the hosted equivalents charge, against the flat Miget plan this stack fits on. Prices as of June 2026, sources linked.

ServicePlanMonthlyWhat you get
GlitchTip on Miget 4 GiB plan$25this whole stack, flat - no usage meters, and room left for your own apps
SentryTeam~$2650k errors/mo included, pay-as-you-go overage beyond quota

Same SDKs on both sides - the variable is whether a noisy deploy is a disk-space event or a billing event.

#vs. other PaaS

Estimated monthly cost of running this exact stack (3.8 GiB RAM, 5 GB disk, 5 containers) elsewhere, from published June 2026 rates.

PlatformEst. monthlyNotes
Miget $25 flat compose stacks first-class: one deploy, dedicated vCPU, managed Postgres/Valkey, volumes and TLS all included in the plan
Heroku ~$188 no volumes; nothing between 1 GB ($50) and 2.5 GB ($250) dynos - 2 GB containers cost far more than shown
DO App Platform ~$50 no persistent volumes - stateful containers need managed DBs/Spaces (base $5 Spaces included here)
Render ~$48 per-service instances (0.5 GB $7, 2 GB $25) - every container is its own paid service
Railway ~$38 usage-based ($10/GB RAM-mo); vCPU billed separately at $20/vCPU-mo on top
Fly.io ~$23 cheapest sticker price - but burstable shared CPUs (1/16 core; dedicated vCPUs cost ~2-3×), no compose deploys (one app per container, manual wiring), managed DBs billed extra

Estimates assume RAM fully allocated at published on-demand rates - and sticker price isn't the whole comparison: the cheaper rows buy burstable shared CPUs, per-service wiring instead of a compose deploy, and managed databases billed separately. Heroku and DO App Platform have no persistent volumes at all - stateful stacks like this one need workarounds there.

#deploy it

On Miget

  1. Create a Compose Stack in app.miget.com pointing at the templates repository
  2. Set the stack path to glitchtip
  3. Set the required variables:
    • SECRET_KEY, Django secret (openssl rand -hex 32)
    • GLITCHTIP_DOMAIN, set to the web app’s https domain after first deploy
  4. Deploy. Miget layers compose.miget.yaml (RAM, privacy, volumes, managed services) automatically

Locally first?

Every template is portable, vanilla Docker Compose - the Miget overrides are ignored locally:

git clone https://github.com/deployable-sh/stacks
cd miget-compose-templates/glitchtip
docker compose up -d

Same files, same behavior. The template README covers connection strings and scaling notes.

#faq

Do my existing Sentry SDKs work with GlitchTip?

Yes - GlitchTip implements the Sentry ingestion API. Swap the DSN in sentry-sdk / @sentry/node / sentry-ruby etc. and events flow. No code changes beyond the DSN.

GlitchTip vs self-hosted Sentry - why not real Sentry?

Modern self-hosted Sentry needs Kafka, ClickHouse, Redis, Postgres, and dozens of containers - roughly an order of magnitude more RAM than GlitchTip’s four services. If you need Sentry’s deep tracing products, pay for sentry.io; if you need solid error tracking with the same SDKs, GlitchTip is the rational self-host.

What does GlitchTip cost to run vs Sentry SaaS?

Sentry’s Team plan is ~$26/month for 50k errors, with overage pricing past quota. GlitchTip here runs $25/month flat (4 GiB hobby plan) with no event metering - a single noisy deploy stops being a billing event.

What is the migrate service doing in the stack?

It runs Django migrations idempotently on every deploy and then idles. Compose platforms have no one-shot job primitive, so a tiny always-there service is the portable way to keep the schema current.

Ship GlitchTip today

One compose stack, 3.8 GiB of RAM, from $25/month flat, and it runs on your laptop with the same files.