Keycloak Pricing: Managed vs Self-Hosted

The cheapest managed Keycloak starts at about $25/month. Self-hosted, this stack measures 3 GiB across 2 services, which fits a $25/month flat plan with room left over.

#the numbers

Managed prices as of June 2026, each linked to its source. The self-hosted row is not an estimate: the RAM figure is what this stack allocates in its compose file, and the plan is the smallest one that holds it.

OptionPlanMonthlyWhat you get
Self-hosted on Miget 4 GiB, 2 vCPU $25 the whole stack, flat - no per-user or per-request metering, and the plan holds your other apps too
Auth0 Essentials (B2C) ~$70 at 1,000 MAU (from $35 at 500 MAU) - scales with users
Clerk Pro ~$25 base + $0.02 per monthly retained user past 50k; SSO connections $75 each
FusionAuth Starter (cloud) ~$162 cheapest managed FusionAuth, billed annually

Identity SaaS prices per user; Keycloak prices per gigabyte. Past hobby scale the curves diverge fast.

#what it costs on other platforms

Same stack, published rates elsewhere - estimates from each platform's own pricing page, not quotes. Per-service platforms are the expensive case here, because every container in this stack is its own paid service.

PlatformEstimated monthlyWhy
Miget $25 flat plan, 4 GiB - databases included, no meters
Heroku ~$150 no volumes; nothing between 1 GB ($50) and 2.5 GB ($250) dynos - 2 GB containers cost far more than shown
DO App Platform ~$41 no persistent volumes - stateful containers need managed DBs/Spaces (base $5 Spaces included here)
Render ~$39 per-service instances (0.5 GB $7, 2 GB $25) - every container is its own paid service
Railway ~$31 usage-based ($10/GB RAM-mo); vCPU billed separately at $20/vCPU-mo on top
Fly.io ~$18 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

#sizing, if you outgrow the small plan

The $25 plan is the smallest that fits. For production traffic you generally want the next tier up, and dedicated vCPU if the workload is CPU-bound rather than idle-waiting.

Use casePlanMonthly
Fits the stack4 GiB, 2 vCPU shared$25
Comfortable, room for your own apps8 GiB, 4 vCPU shared$49
Dedicated vCPU (production)4 GiB, 2 vCPU dedicated$43

Keycloak is RAM-hungry (JVM + Quarkus): 2 GiB is the realistic floor. The managed Postgres adds 1 GiB. CPU matters at login bursts - password hashing is deliberate work.

Run Keycloak yourself

The compose file is open source and runs locally with docker compose up. One step to deploy it to Miget on the $25/month plan, databases included.