Skip to content
47% off: the complete course for $79 (reg. $149)Order now →
AI Builder
Module 8Full course10 min read

Latency UX: Streaming, Progress, and Perceived Speed

Make slow models feel fast: streaming, skeletons, staged results, optimistic UI, and honest progress for tasks that take minutes.

AI features are slow by the standards of ordinary software. A database query comes back in milliseconds; a drafted reply can take several seconds, a thinking model may pause before writing anything, and a bulk job over a thousand tickets can run for many minutes. You can and should make the work itself faster, but there's a floor, and on the way to that floor your users are staring at the screen.

What they experience isn't the duration. It's the wait: whether something is visibly happening, whether they know how long it will take, whether they can do something else meanwhile, and whether they can stop it. This lesson covers the interface side of speed for Deskmate: when streaming helps and when it doesn't, staged results that show something useful in about a second, pre-computation that removes the wait entirely, honest progress for long jobs, and cancellation that keeps partial work.

Where the wait comes from, and how it feels

A single AI request has several phases, and they feel different to a user:

PhaseWhat's happeningWhat the user sees by default
Before the callYour code loads data, retrieves documents, assembles the promptNothing
Time to first tokenThe provider queues, processes the prompt, and (for thinking models) reasonsNothing
GenerationOutput tokens arrive one after anotherNothing, unless you stream
After the callParsing, validation, saving, follow-up callsNothing

"Nothing" is the problem. The classic response-time guidance popularized by Jakob Nielsen still holds up well as a rule of thumb: around a tenth of a second feels instant, around a second keeps the user's flow of thought, and around ten seconds is roughly where attention breaks and people start doing something else. Many AI requests land between one and ten seconds, which is exactly the range where what you show matters most.

Measuring each phase is the job of Cutting Latency: Time to First Token and Beyond, and the effort and model choices that shorten them are covered there and in Reasoning Models: When Thinking Is Worth Paying For. This lesson is about what to put on the screen while the remaining time passes.