Caddy Releases
Track Caddy web server releases and version lifecycle. Automatic HTTPS, Caddyfile evolution, module ecosystem, and migration guidance from v1 to v2.
—
Total Versions
—
Supported
—
Latest
Version Timeline
All tracked releases with lifecycle status and EOL dates.
Loading version data…
Lifecycle Timeline
Visual overview of active support and maintenance windows.
Upgrade Paths
Migration guidance between major versions — breaking changes, effort estimates, and tips.
Breaking Changes
- Complete rewrite — all config must be rewritten
- Caddyfile syntax entirely different
- Plugin system replaced by Go module system (xcaddy)
- CLI flags and arguments changed
- No automatic migration tool available
- Middleware concept replaced by handler/matcher model
Migration Notes
This is effectively a new product. Rewrite your Caddyfile from the v2 docs. The good news: v2 Caddyfiles are usually shorter and more intuitive. If you had custom v1 plugins, they must be rewritten as v2 modules. Caddy v1 is EOL since 2020 with no security patches.
Breaking Changes
- Some Caddyfile directives gained new options
- Default TLS policy updates (stricter cipher suites)
- Admin API endpoint changes
- Improved error handling may surface previously silent issues
Migration Notes
Minor version upgrades within v2 are consistently smooth. Download the new binary (or update your container image), test with caddy validate, restart. Caddy maintains strong backward compatibility within the v2 line. The hardest part is usually rebuilding with xcaddy if you use custom modules.
Version Risk Assessment
Evaluate risk factors before choosing a version for production.
| Version | EOL Risk | CVE Risk | Ecosystem | Cloud Support | Overall | Recommended Action |
|---|---|---|---|---|---|---|
| Caddy v1 (any) | Critical | Critical | Dead | None | Critical | EOL since 2020 — rewrite config for v2 now |
| Caddy 2.6 and older | High | High | Unsupported | Varies | High | No patches — upgrade to latest 2.x |
| Caddy 2.7 | High | Medium | Unsupported | Full | High | Superseded — upgrade to 2.8+ |
| Caddy 2.8 | Medium | Low | Supported | Full | Medium | Supported — upgrade when convenient |
| Caddy 2.9 | None | Low | Active | Full | Low | Latest — recommended |
Caddy does not have formal LTS branches. The latest release gets patches. Older versions stop receiving updates. Risk assessed March 2026.
Caddy v2 Feature Comparison
Side-by-side feature differences across major versions.
| Feature | 2.5 | 2.6 | 2.7 | 2.8 | 2.9 |
|---|---|---|---|---|---|
| Automatic HTTPS | Stable | Stable | Stable | Stable | Stable |
| HTTP/3 (QUIC) | Experimental | Stable | Stable | Stable | Enhanced |
| On-Demand TLS | Stable | Stable | Enhanced | Enhanced | Enhanced |
| Caddyfile named routes | No | No | Stable | Stable | Stable |
| Admin API | v2 | v2 | v2.1 | v2.1 | v2.1 |
| Dynamic upstreams | Basic | Improved | Improved | Enhanced | Enhanced |
| ZeroSSL integration | Stable | Stable | Stable | Stable | Stable |
| CEL matcher expressions | No | No | Experimental | Stable | Stable |
| Structured access logs | JSON | JSON | JSON | JSON+ | JSON+ |
| Go module build (xcaddy) | v0.2 | v0.3 | v0.3 | v0.4 | v0.4 |
Embed Badges
Add live Caddy status badges to your README, docs, or dashboard.
Health Status
Overall support health

EOL Countdown
Next end-of-life date

Latest Version
Current stable release

CVE Status
Known vulnerabilities

Frequently Asked Questions
Common questions about Caddy releases and lifecycle.