Overview
How might we design skeleton screens so people can trust and act on AI output?
When to use
- Ideal for AI apps with longer generation times, where a structure-matched loading state reduces perceived latency and sets expectations.
When to skip
- Sub-200ms responses where skeletons flicker uselessly.
- Unknown output shapes that would make a fake skeleton misleading.
- Voice-only modes where visual skeletons do not apply.
Rules
Spinners with blank layout instead of content-shaped placeholders.
Skeletons that do not match the final layout, causing jumpiness.
Leaving skeletons on screen after content failed.
Animating so aggressively that accessibility suffers.
Evidence
| Product | Implementation |
|---|---|
| Linear | Content-shaped loading placeholders in app views. |
| Notion | Block skeletons while AI or pages load. |
| Vercel / Next.js apps | Route and streaming skeletons for AI UIs. |
| ChatGPT | Streaming placeholders as answers begin. |