Trust and latency in AI responses
2026
Users won't trust a number they watched appear from nowhere. I turned the model's chain of thought into a rendering spec — waiting became proof the AI understands your books. It now powers every LLM response in the product.
Mobile Product Designer Lead
Role
6 Frontend Engineer, 3 Backend Engineer, Product Manager, Content Designer, UX Researcher, Data Scientist
Team
Product area
QuickBooks mobile App on iOS & Android
Chain of thought rendering specs now applied to every AI response
The impact
The challenges
In a financial product, trust doesn't come from the answer alone, users need to see how the AI got there. And complex queries take real time. Our starting point was just a spinner: nothing to hold onto, and uncertainty makes every second feel longer.
Our answer became the thesis of this whole section: don't hide the latency, spend it. The seconds the model needs to think became the moments where it shows its work.
The process
Early prototype
So I prototyped a richer waiting state — the one you see here: phase labels showing the tasks the AI was working through, with glimpses of its actual reasoning. Testing gave us one finding I expected, and one I didn't.
✕ Generic label:
“Working on 3 tasks” told users nothing
✓ Reasoning glimpses:
Users leaned in and read them
The problem was never latency itself, it was silence.
Mining the raw reasoning
Once I saw that visible reasoning could make waiting feel meaningful, I partnered with backend engineers to understand what reasoning text we could actually extract from the LLM — then defined the core principle that governed all of it:
Only surface what users don't already know.
The CoT rendering spec
From there, I analyzed each type of reasoning the LLM produced, defined its role, and turned that into the CoT Rendering Spec — the logic frontend developers use to parse and render backend output.
It became the contract between the model and the UI, the reason the AI reads like a business partner thinking out loud instead of a machine dumping logs.
The solutions
The Chain of Thought rendering spec now powers every LLM response.
I designed how the model's chain of thought renders in the product — turning raw backend reasoning into steps users can follow, in language a business owner understands.
Before
A task list, not a thought process
The first version showed progress as system tasks, but written for engineers. Users saw the AI was busy, not what it was doing with their books.
After
Perceived progress
Visible reasoning steps showed the AI actively working — and framed the thinking the way a business partner reasons out loud.
Surfacing data
Users see what data AI accesses and how it analyzes, giving them confidence to trust and continue using the product.
The impact
In user testing, the reasoning steps changed how waiting felt.
Generation time didn't get faster, but users read along instead of staring at a spinner, and consistently reported the wait felt shorter.
They could also trace where each answer came from.
The spec now renders every response that takes over 30 seconds to generate — about 38% of all prompts.
The behavior shift mattered most: instead of testing the AI with short back-and-forth questions, users began writing longer, more complex prompts and trusting the AI to work through them. Fewer round trips, for users and for the model.