Keycloak vs Authentik.
Last verified 2026-05-07
When Keycloak wins
- Keycloak has user mgmt: progressive profiling; Authentik does partially
When Authentik wins
- Authentik has auth: magic links; Keycloak does partially
- Authentik has auth: push mfa; Keycloak does not
- Authentik has auth: passwordless only flows; Keycloak does partially
- Authentik has B2B Organizations / multi-tenant model; Keycloak does partially
- Authentik has breached-password detection; Keycloak does partially
Both win
- Both support WebAuthn passkeys natively
- Both support social login at scale
Pricing comparison
| MAU band | Keycloak | Authentik |
|---|---|---|
| 10,000 MAU | $250/mo | $200/mo |
| 100,000 MAU | $800/mo | $600/mo |
| 500,000 MAU | $2,500/mo | $1,800/mo |
| 1,000,000 MAU | $5,000/mo | $3,500/mo |
Side-by-side capability matrix
| Capability | Keycloak | Authentik |
|---|---|---|
| Password authentication | ✓ Yes | ✓ Yes |
| Social login | ✓ Yes | ✓ Yes |
| Magic links | ~ Partial | ✓ Yes |
| SMS OTP | ~ Partial | ✕ No |
| Email OTP | ✓ Yes | ✓ Yes |
| TOTP (authenticator app) | ✓ Yes | ✓ Yes |
| Push MFA | ✕ No | ✓ Yes |
| WebAuthn / passkeys | ✓ Yes | ✓ Yes |
| Biometric | ✓ Yes | ✓ Yes |
| Hardware security keys | ✓ Yes | ✓ Yes |
| SAML SSO | ✓ Yes | ✓ Yes |
| OIDC SSO | ✓ Yes | ✓ Yes |
| OAuth 2.0 SSO | ✓ Yes | ✓ Yes |
| Enterprise federation | ✓ Yes | ✓ Yes |
| Passwordless-only flows | ~ Partial | ✓ Yes |
| Adaptive MFA | ~ Partial | ~ Partial |
| Step-up auth | ✓ Yes | ✓ Yes |
| Capability | Keycloak | Authentik |
|---|---|---|
| RBAC | ✓ Yes | ✓ Yes |
| ABAC | ✓ Yes | ✓ Yes |
| ReBAC | ✕ No | ✕ No |
| FGA engine | ✕ No | ✕ No |
| API authorization | ✓ Yes | ✓ Yes |
| Fine-grained permissions | ✓ Yes | ✓ Yes |
| Capability | Keycloak | Authentik |
|---|---|---|
| Self-service registration | ✓ Yes | ✓ Yes |
| Progressive profiling | ✓ Yes | ~ Partial |
| Self-service account | ✓ Yes | ✓ Yes |
| Bulk user import | ✓ Yes | ✓ Yes |
| Admin user search | ✓ Yes | ✓ Yes |
| Custom user metadata | ✓ Yes | ✓ Yes |
| Organizations / tenants | ~ Partial | ✓ Yes |
| Multi-tenancy | ✓ Yes | ✓ Yes |
| Capability | Keycloak | Authentik |
|---|---|---|
| REST API | ✓ Yes | ✓ Yes |
| GraphQL API | ✕ No | ✕ No |
| SDKs | 6 listed | 4 listed |
| CLI | ✓ Yes | ✓ Yes |
| Terraform provider | ✓ Yes | ✓ Yes |
| Local emulator | ✓ Yes | ✓ Yes |
| Extension model | SPI extensions (Java) + custom themes | Flow stages (configurable) + Python policy expressions |
| Capability | Keycloak | Authentik |
|---|---|---|
| Bot detection | ✕ No | ✕ No |
| Breached password detection | ~ Partial | ✓ Yes |
| Brute-force protection | ✓ Yes | ✓ Yes |
| Anomaly detection | ✕ No | ~ Partial |
| Log streams | ✓ Yes | ✓ Yes |
| Audit logs | ✓ Yes | ✓ Yes |
| GDPR data export | ✓ Yes | ✓ Yes |
| PII minimization | ~ Partial | ~ Partial |
| Post-quantum roadmap | ✕ No | ✕ No |
| Capability | Keycloak | Authentik |
|---|---|---|
| MCP support | ✕ No | ✕ No |
| OAuth 2.1 | ✓ Yes | ✓ Yes |
| Dynamic client registration | ✓ Yes | ✓ Yes |
| Agent vs human token separation | ✕ No | ✕ No |
| Web Bot Auth | ✕ No | ✕ No |
| Capability | Keycloak | Authentik |
|---|---|---|
| SOC 2 Type II | ✕ No | ✕ No |
| ISO 27001 | ✕ No | ✕ No |
| ISO 27018 | ✕ No | ✕ No |
| HIPAA | ✕ No | ✕ No |
| PCI DSS | ✕ No | ✕ No |
| GDPR | ✓ Yes | ✓ Yes |
| CCPA | ✓ Yes | ✓ Yes |
| FedRAMP | ✕ No | ✕ No |
| EU data residency | ✓ Yes | ✓ Yes |
| Capability | Keycloak | Authentik |
|---|---|---|
| Consent management | ~ Partial | ~ Partial |
| Preference center | ~ Partial | ~ Partial |
| Purpose-specific consent | ~ Partial | ✕ No |
| Integrates with CMPs | n/a | n/a |
FAQ
- How does Keycloak compare to Authentik on pricing?
- Keycloak prices on tiered-mau; Authentik prices on tiered-mau. See the pricing comparison table on this page for our editorial estimates at 10k / 100k / 500k / 1M MAU using the standard methodology assumptions.
- Should I switch from Keycloak to Authentik?
- Switching is a 60–90 day exercise in either direction once SDK rewrites and hooks/Actions migration are accounted for. If your team is hitting cost or feature ceilings on Keycloak, evaluate Authentik on the specific axes flagged in the "When Authentik wins" list. If you're operating well within Keycloak, the switching cost rarely pays back.
- Do Keycloak and Authentik both support passkeys?
- Both Keycloak and Authentik support WebAuthn passkeys natively per public documentation. Adoption rates depend on orchestration quality (device-aware prompting, conditional UI), not raw protocol support, see the passwordless guide for the orchestration question.
This comparison is auto-generated from the underlying capability matrix and pricing data on each vendor's profile. Editorial verdict lists below are seeded heuristically from the matrix diff; a maintainer review refines them before the page goes public.