SETTLE

Streaming ASR tells you what it heard. Nothing tells you when it stopped changing.

Speechmatics track · AI Infra Summit Hackathon 2026

01 · The flip

This is an unedited recording, replayed from a committed run at the pace it actually streamed. Words in orange are still being revised by the engine; words in white have appeared in a finalised message. Watch trying become trapped.

 
0.0s / 0.0s
Source: . This clip was recorded with background noise as part of the corpus design (see docs/METHOD.md, threats to validity) — the surrounding words are noisier than the rest of the corpus. The trying → trapped revision itself is real and unedited.

02 · The curve

Every clip, swept across four values of Speechmatics' own max_delay control, then measured with the same instrument.

settling time p50 and p95 plotted against max_delay
max_delaywordssettling p50settling p99words revisedrevised after final

Across 1,227 observed words, 0.0% changed after their AddTranscript — but settling p99 scales 3.5× from the shortest max_delay to the longest. Finals don't retract. They just take longer to arrive than they look like they will.

03 · What settling time is

Vendors publish word error rate (was the final text right?) and latency (how fast did text arrive?). Neither describes the interval in between, where the text is visible, plausible, and still moving.

word spoken emission lag first text settling time — still changing last change risk window — visible, revisable finalised
emission lag
how long after a word was spoken before any text for it appeared.
settling time
how long the text at that interval kept changing after it first appeared.
risk window
how long a word was visible to a consumer while still revisable — from first text to finalised.

Full definitions and the alignment method are in docs/METHOD.md. Everything on this page traces to a run file committed at github.com/adindamochamad/settle.