← Blog··Updated 7 Jun 2026·2 min read

Why Caddy is called Caddy

Matt Holt started Caddy in 2014 as a computer-science student and released it in 2015. The name carries the golf-caddy idea — a helper that handles the tedious parts of serving the web — and the server went on to be the first to do HTTPS automatically by default.

AI-assisted postDrafted with help from Claude, edited and fact-checked by Mart. See transparency policy →
Golf caddies at Tramore, Ireland, around 1900

Caddies at Tramore, Ireland, around 1900 — carrying the load so the player can play. National Library of Ireland, no known copyright restrictions.

Most web servers are named for what they are or who made them. Caddy is named for what it does for you — and the metaphor is a golf caddy: the helper who carries your bag, hands you the right club, and takes the tedious load off so you can get on with the game.

A student project that became a default

Caddy was written by Matthew Holt, who began it in 2014 while studying computer science at Brigham Young University, with a first public release in April 2015 (Wikipedia). It is written in Go, and it arrived with an idea that sounded almost too ambitious at the time: a web server that obtains and renews its own TLS certificates, so that HTTPS is on by default with no manual certificate work. Caddy became the first web server to do this, and it has since served trillions of HTTPS requests.

That "do the tedious work for you" philosophy is the thread that runs from the name to the software.

The name

The project's own framing is that the name "Caddy" refers both to a helper for tedious tasks, and a way to organize multiple parts into a simplified system (Wikipedia). Both senses of the everyday word are doing work here:

  • The golf caddy — a caddy carries the clubs and hands you the right one at the right moment. It does the unglamorous, repetitive labour so the player can focus. That is exactly Caddy's pitch for web serving: certificate issuance and renewal, HTTP-to-HTTPS redirects, reverse proxying — the chores you would otherwise wire up by hand, handled for you.
  • The storage caddy — the other everyday "caddy" is a small organiser that holds several things neatly in one place (a tea caddy, a desk caddy, a CD caddy). That maps onto Caddy being a single binary and a single config that pulls many concerns — TLS, routing, static files, reverse proxy — into one tidy system instead of a pile of separate tools.

Both readings point the same way: a caddy is a helper that carries the load and keeps things organised. The software is a caddy for the web.

Why the metaphor stuck

Naming a tool after the experience of using it is a quiet bet on what the tool is for. Nginx and Apache are named in ways that say nothing about the user's day; Caddy's name is a promise about it — you should not have to think about certificates, you should not have to assemble five tools, the server should carry that for you. When automatic HTTPS landed and "just write the hostname and it works" became real, the name turned out to describe the thing accurately rather than aspirationally.

It is a small example of a good engineering instinct: the name sets the expectation, and the software is built to meet it. If you want to see the caddy doing its job — terminating TLS, fetching certificates on its own, fanning requests out to backends — the hands-on Caddy: reverse proxy and automatic HTTPS walks through it, and What a reverse proxy actually does covers the role it plays.

Sources

Read next