nginx served 83,941 requests per second over HTTP and Caddy 37,664 in our Apple M2 loopback test, a 2.2x gap.
nginx used 10.3 MB of memory idle against 38.0 MB for Caddy, which matters only on very small hosts.
Pick Caddy for small deployments that want automatic HTTPS, and nginx for high-volume or already-tuned setups.