Lambda Web Functions kept billing memory for 5–7 minutes after the last request, so we built our own compute. On the same Next.js app, it answered warm requests 1.5–3× faster and cold-started about 3.5× faster.

At Easel, we'd spent months building infrastructure to run web applications efficiently on traditional Lambda. Native HTTP servers, concurrent requests, and active CPU billing sounded like exactly what we'd been looking for.

If Web Functions worked the way we hoped, we could potentially replace a substantial amount of our custom infrastructure.

A few weeks later, we'd decided to run our own compute instead. And as it turns out, our own infrastructure was faster, too.