Authelia vs authentik
A side-by-side comparison of two self-hosted reverse proxy & gateways options — licensing, setup difficulty, resource needs, and what each one replaces.
| Feature | Authelia | authentik |
|---|---|---|
| Deploy effort | Under-an-hour setup | Under-an-hour setup |
| Health score | 98 · Excellent | 97 · Excellent |
| Category | Reverse Proxy & Gateways | Reverse Proxy & Gateways |
| License | Apache-2.0 | MIT |
| Language | Go | Python |
| Setup difficulty | Medium | Medium |
| Min. RAM | 128 MB | 1,024 MB |
| Deployment | docker, kubernetes, binary | docker, kubernetes, helm |
| GitHub stars | ★ 29,069 | ★ 25,706 |
| First released | 2017 | 2020 |
| Replaces | Okta, Cloudflare Access | Okta, Auth0 |
What are Authelia and authentik?
Authelia
Authelia is an open-source authentication and authorization server providing single sign-on and two-factor authentication via a companion to reverse proxies. It protects applications behind the proxy.
- SSO and 2FA portal
- Works with major reverse proxies
- Fine-grained access rules
- LDAP and file backends
authentik
authentik is a flexible, open-source identity provider supporting OAuth, SAML, and LDAP, with an embedded reverse-proxy outpost to protect applications. It centralizes authentication for self-hosted services.
- OAuth, SAML, and LDAP IdP
- Proxy outpost for apps
- Customizable login flows
- MFA support
Authelia vs authentik: key differences
Authelia is written in Go, while authentik is built with Python. Licensing differs — Apache-2.0 for Authelia versus MIT for authentik. Authelia is the lighter option, starting around 128 MB of RAM against 1,024 MB for authentik. Authelia is the more established project (first released 2017), while authentik arrived in 2020.
Last reviewed Aug 24, 2026 · 611 words
The confusion between these two comes from both answering "how do I stop exposing twelve login pages to the internet?" — but they answer it at different altitudes. Authelia is a gate: a companion your reverse proxy consults before letting a request through, adding a login portal and 2FA in front of apps that never learn authentication exists. authentik is an identity provider: a system your applications integrate with, speaking OAuth2/OIDC, SAML, and LDAP, with user lifecycle, custom enrollment flows, and a policy engine. The gate weighs 128 MB; the platform wants a gigabyte plus Postgres and Redis. Neither number is wrong — they're doing different jobs.
Where Authelia shines
If your goal is "one login and a TOTP prompt before Jellyfin, Sonarr, and the dashboard", Authelia is the proportionate tool. It's a single Go binary configured entirely in YAML — which means your whole auth setup lives in git, reviewable and reproducible — wired into Caddy, Traefik, or Nginx as forward-auth. Access control rules are fine-grained (per-domain, per-path, per-group, per-network) and it does the modern factors: TOTP, WebAuthn/passkeys, push via Duo. Its cost is exactly its config file: the YAML is extensive, the reverse-proxy integration must be done precisely, and error messages assume you read documentation. It historically stayed lean by not being an OIDC provider; that's changed — OIDC provider support has matured over recent releases — but authentik remains far ahead on protocol breadth and admin tooling.
Where authentik earns its weight
The moment your requirements include "Nextcloud, Grafana, and Immich should each log in via SSO natively", "invite users with an enrollment flow", "sync from LDAP", or "this app only speaks SAML", you've left forward-auth territory. authentik centralises all of it: a web admin UI instead of YAML, per-app providers, group-based policies, MFA, and — usefully — its own proxy outposts, so it can also gate dumb apps the way Authelia does. That last point matters: authentik is a superset in capability. What you pay is operational: a Python/Django stack with Postgres and Redis, ~1 GB RAM in practice, a learning curve measured in evenings (flows and stages are powerful and initially bewildering), and one more critical service whose upgrades you read notes for. When your identity layer is down, everything is down — weight that accordingly, per threat modeling for normal people.
The homelab reality check
Most homelabs genuinely need the gate, not the platform. A dozen self-hosted apps behind one portal with passkeys is Authelia working at exactly its design point. The platform starts paying when user count grows past the household, when apps' native SSO support would otherwise go unused, or when you're rehearsing skills for work — authentik is the closest self-hosted analogue to Okta-style IdP work. The full walkthrough of both, including the proxy wiring, is in SSO with Authentik and Authelia.
Decision table
| You | Pick |
|---|---|
| Gate a dozen proxied apps, 2FA, done | Authelia |
| Config-as-code in git, minimal footprint | Authelia |
| Apps should SSO natively (OIDC/SAML/LDAP) | authentik |
| Non-YAML admin UI, user self-enrollment | authentik |
| Raspberry Pi-class hardware | Authelia |
| One system doing both gate and IdP | authentik |
What I'd do
Start with Authelia in front of everything private; it's an afternoon, and passkeys-plus-YAML-in-git is a wonderful steady state. Migrate to authentik when you catch yourself wishing apps knew who was logged in — that's the signal you need an identity provider, not a better gate. Running Authelia forever is a fine ending too; plenty of mature homelabs never need more.
Why pick each one
Choose Authelia if…
- Strong 2FA options
- Lightweight Go binary
- Fine-grained access rules
Watch out for
- Extensive YAML configuration
- Needs reverse proxy integration
Choose authentik if…
- Supports many protocols
- Flexible policy engine
- Built-in proxy outpost
Watch out for
- Resource heavy stack
- Complex initial setup
Frequently asked questions
Is Authelia or authentik better?
Neither is universally better. Authelia has the larger community; both share a medium setup difficulty, so the decision comes down to features and licensing.
Are Authelia and authentik free and open-source?
Yes. Authelia is licensed under Apache-2.0 and authentik under MIT. Both can be self-hosted at no software cost.
Can I run Authelia and authentik with Docker?
Authelia: yes. authentik: yes.
Which is lighter on resources, Authelia or authentik?
Authelia has the smaller minimum footprint at 128 MB of RAM, compared to about 1,024 MB for authentik. Real-world usage depends on library size, user count, and enabled features.