An empty state should offer one unambiguous next step
Aliases: empty-state CTA · one primary action · unique next step
What it is
An empty work area already says there is nothing here. First-use still owes one unambiguous next step: a single action that can end this emptiness, named specifically enough to do. Having an action and having a unique action are different. Three peer buttons (start from a template, import, blank) turn the empty view into a chooser, and a novice must bet before knowing which path leads to value. This entry is about count and clarity of options, not whether the empty component has a button at all, and not what the filled state will look like.
Why it happens
Blankness cuts scanning cues; people hunt for one control that will make the place not empty. Equally loud entries expand that hunt into path selection, which needs product knowledge the empty-state reader does not have. Working memory is holding one goal; peer primary buttons split it, so people often click nothing, or click whichever looks like an ad. Unique does not forbid secondary paths; it demotes them to text links, later, or a “more” menu. The primary label still has to finish the action (“create the first board,” not “start”), or the unique door stays vague. A create control in the toolbar plus another in the empty view looks like a next step but is two competing foci; novices read them as two different jobs.
Where it stops holding
A read-only role facing a legitimate empty (nothing due this week) may have “adjust filters” or “back” as the only honest next step; forcing create is the wrong job. When a precondition is unmet (no data source, unverified email), the unique action should point at that condition, not a create that will fail. Experts who cleared a list already have a habitual entry; a huge primary in the empty view blocks them, and a short line can be enough. When import and create are truly unmergeable first steps (local file vs blank document), they may sit together if each names when it applies—not as two equally large solid buttons.
Applying it
- Name one action that ends first-use zero-data emptiness and put it beside the copy; demote other paths to text or a secondary menu.
- Write the primary as an observable result (create, import, connect); ban “start” and “try it now” that point at no object.
- If the toolbar already creates, the empty-state button is the same action, not a second primary with a different meaning.
- Verify by hiding the toolbar, leaving only the empty view, and asking a novice what they would click and what would happen. Split pointing or no named result means collapse to one primary.
Related
- Within the group: H2.02.1 The empty view is the natural surface for first-use teaching · H2.02.3 Empty states must show what filling them yields
- Adjacent: E6.06 Empty states · H2.09 Onboarding checklists and completion · E1.01 Button hierarchy
- Search terms:
empty-state CTA·single next step·choice overload