Skip to content
Latchkey

How to Use a Warm Pool to Cut Runner Cold Starts

A warm pool keeps a few runners idle-ready so the first job of a burst starts without waiting for a boot.

Scale-to-zero saves money but adds cold-start latency. A warm pool keeps a small number of runners already registered and idle so bursts start instantly. In ARC this is minRunners; in VM fleets it is a minimum pool size. Tune the pool size against your latency budget and idle cost.

Steps

  • Estimate your typical burst size and the cold-start time you want to hide.
  • Set a small warm floor (ARC minRunners, or a VM minimum pool).
  • Let the autoscaler burst above the floor and drain back to it when idle.

ARC warm floor

values.yaml
minRunners: 3     # keep 3 idle runners ready for instant starts
maxRunners: 60    # burst ceiling

Gotchas

  • A warm pool costs money while idle; size it to the smallest floor that hides your worst cold start.
  • Warm runners should still be ephemeral, replaced after each job, to keep isolation.

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →