Notes· · 1 min read
Empty states are the product
Dashboards look impressive with seed data. Real users often arrive to nothing: no projects, no messages, no history.
That empty screen is not a blank. It is onboarding, copy, and a next action. If the only thing you show is a sad illustration, you have designed a dead end.
I now treat empty, error, loading, and populated as four layouts of the same feature. Shipping only the populated one is shipping a demo.