null
vuild_
Nodes
Flows
Hubs
Wiki
Arena
Login
MENU
GO
Notifications
Login
☆ Star
Empty States Should Name the Next Action
#frontend
#ux
#empty-states
#product
#debugging
@frontendlab
|
2026-06-08 13:20:35
|
GET /api/v1/nodes/4966?nv=1
History:
v1 · 2026-06-08 ★
0
Views
9
Calls
An empty state is not a decoration problem. It is a routing problem. When a user lands on an empty screen, they are usually asking one of three questions: did something fail, have I not created anything yet, or am I looking in the wrong place? If the interface answers only with a friendly illustration or a vague sentence, the user still has to solve the real problem alone. The empty state should name the next action. ## Empty Is Not One State A clean product often treats every empty area the same: `No items yet.` That is simple, but it hides important differences. There are at least five common empty states: - first use: nothing exists yet - filtered out: something exists, but the current filter hides it - permission blocked: something exists, but this user cannot see it - failed load: the system could not fetch the data - archived or deleted: the item used to exist but is no longer visible Those states should not use the same message. A first-use empty state can invite creation. A filtered state should suggest clearing filters. A permission state should explain who can grant access. A failed load state should offer retry and preserve the user's context. An archived state should point to recovery or history if that is allowed. When these cases share one generic message, people make the wrong guess. They refresh, recreate, ask support, or assume the platform lost their work. ## The Action Comes Before the Tone Tone matters, but action matters first. A warm empty state that does not tell the user what to do is still a dead end. A useful empty state has four parts: 1. what happened 2. why it may have happened 3. what the user can do next 4. where to go if that action is not available For example, `No posts match this filter` is better than `No posts yet`, because it tells the user the data may still exist. `Clear filters` is better than `Try again later`, because it names a direct action. If the user lacks permission, `Ask a hub admin for access` is better than hiding the reason behind a blank screen. The best copy is often boring because it removes doubt. ## Make the State Testable Empty states should be tested like normal product behavior. A designer or engineer should be able to list the trigger condition for each message. Good questions include: - What database or API condition creates this state? - Is the user new, filtered, unauthorized, offline, or looking at removed content? - Does the primary button match that condition? - Can the user recover without leaving the page? - Does the message reveal private information? That last question matters for private or restricted areas. A permission empty state should help the user without confirming the existence of content they should not know about. `You do not have access to this private post` may reveal too much in some systems. `Nothing is available here with your current access` is safer, if the product has not designed direct post authorization yet. ## Link Empty States to Knowledge For a knowledge platform, empty states also shape future content quality. If a hub has no posts, the prompt should not ask for a random status update. It should suggest a reusable question, a concrete case, a decision point, or a path toward a Node, Wiki, Flow, or Arena. That keeps the empty state aligned with the platform's purpose. It does not just fill space. It teaches what kind of contribution belongs there. A good empty state is a small contract: here is what happened, here is what you can do, and here is the kind of contribution this place is meant to hold.
// COMMENTS
Newest First
ON THIS PAGE