Empty states are the screens users see before they have created anything, when a search returns nothing, or when there is no data to chart. They are easy to skip during design but they shape first impressions and activation. This generator produces a heading, a body sentence, and a button label for the four most common empty states in three tones.
How it works
The tool selects a copy template based on two choices: the state type (no
items, no results, no data, first time) and the tone (friendly,
professional, technical). It then injects the noun you provide — for example
projects or invoices — and naturally singularizes it for the button label by
trimming a trailing s. Each template follows the same three-part structure UX
writers recommend:
heading — names the situation in a few words
body — explains why it is empty and reassures
cta — one clear next action
The no-results variant always points toward broadening the search rather than adding new records, because the data already exists. The first-time variant is the most encouraging, since first-run activation is the highest-leverage moment in onboarding.
Tips and examples
For a project-management app with no projects yet, the friendly template yields: “Nothing here yet — You haven’t added any projects yet. Create your first one and it’ll show up right here.” with an “Add project” button.
Keep the body to one or two short sentences. Use sentence case for headings, and make the button a verb phrase the user can act on immediately. When in doubt, prefer the friendly tone for consumer products and the professional tone for B2B dashboards.
Why empty states shape activation more than most screens
Empty states are the most underwritten screens in any app. During design, teams work with data-filled mocks — the empty case gets skipped. But for new users, the first thing they see is often nothing. A good empty state feels like an invitation; a blank screen or a blunt “No data” message feels like an error. Clear, action-oriented empty states improve first-run activation because they turn an awkward gap into the starting point.
The four types and what each needs
No items (first run). The user has not created anything yet. The copy should feel welcoming, explain what will appear here once they act, and make the CTA the obvious next step. Avoid phrases that feel like a rebuke. “Your projects live here — create your first one to get started” works better than “You haven’t created any projects.”
No search results. Data exists but a filter excluded it. Reassure the user nothing is broken and give a concrete escape — “Try a broader search term” or “Clear all filters.” A no-results state with no suggested action is a dead end.
No chart data. A metric or analytics panel has nothing to show. Explain why — the date range might be too narrow, or the feature needs a first data point before it populates. “No activity in this period — extend your date range or check back after your first event fires” is more useful than an empty graph.
Permission or plan limits. Sometimes empty means restricted rather than absent. Be honest: “You need at least one published project to view analytics here — check your plan or ask an admin for access” is specific and actionable.
Tone comparison: the same screen, three voices
For a “no invoices” state on a billing screen:
- Friendly: “Nothing to bill yet — Add your first invoice and it’ll show up right here.” / CTA: “Create invoice”
- Professional: “No invoices have been issued — Create an invoice to begin tracking payments.” / CTA: “New invoice”
- Technical: “Invoice list empty — No records in this workspace. Create one to populate this view.” / CTA: “Add invoice”
The friendly version suits a freelancer tool; the technical version fits a developer-facing dashboard. Use the tone selector to match the voice your product already has rather than inventing a new one for the empty state alone.