Cold starts are a budget, not a number. The number on the dashboard is the worst-case; the budget is what you spend on each step of the cold path and how much of that you can amortize.

We measured a 200ms p99 cold start. Here's where it went.

Where the time actually goes

  • 38ms — module fetch
  • 71ms — validation and compilation
  • 22ms — instance setup
  • 51ms — first allocation and the initial heap walk
  • 18ms — request dispatch into the module

Most teams optimize the wrong step.

← Back to all posts