Available templates
Error message template
Write clear, actionable error messages
Empty state template
Guide users when content is absent
Onboarding flow template
Design clear onboarding experiences
Error message template
Use this template to write clear, actionable error messages that help users recover.Structure
Inline error (form validation)
Format: Brief, immediate correction guidanceExamples
Examples
- Email must include @
- Password needs 8+ characters
- Card number is incomplete
- Choose a future date
Detour error (recoverable problem)
Format: Problem + SolutionBlocking error (system issue)
Format: Clear explanation + Timeline + ReassuranceError message checklist
Before finalizing an error message, verify:- Avoids blame — No “invalid,” “illegal,” “wrong,” “error”
- Empathetic tone — Acknowledge user frustration
- Specific problem — Not generic “something went wrong”
- Clear recovery — Tell user exactly what to do
- Front-loaded — Most important info first
- Active voice — “We couldn’t save” not “changes could not be saved”
- Human language — Not system codes or technical jargon
Voice variations by context
High-stakes error (payment, security, data loss)
High-stakes error (payment, security, data loss)
Tone: Serious, clear, reassuring
Low-stakes error (optional feature, nice-to-have)
Low-stakes error (optional feature, nice-to-have)
Tone: Light, helpful, not dramatic
First-time user error
First-time user error
Tone: Educational, patient
Common mistakes
Don't
- “An error occurred”
- “Invalid email address”
- “ERR_CONNECTION_TIMEOUT”
- “Upload failed”
- “Your request could not be processed”
Do
- “We couldn’t save your changes”
- “Email must include @”
- “Connection timed out. Check your internet and try again.”
- “Upload failed. Check your file size and try again.”
- “We couldn’t process your request”
Quick fill template
Use this for rapid error message drafting:
Example:
- What failed: Couldn’t send invite
- Why: Email bounced
- What to do: Check spelling
- Draft: “Couldn’t send invite. Check the email address and try again.”
Empty state template
Use this template to guide users when content is absent and help them take action to populate the space.Structure
First-use empty state
Purpose: Guide new users to populate contentTone: Inviting, encouraging, clear on benefit
User-cleared empty state
Purpose: Confirm completion, positive reinforcementTone: Positive, celebratory (appropriately)
Error/no results empty state
Purpose: Suggest alternatives when search/filter returns nothingTone: Helpful, solution-focused
Empty state checklist
Before finalizing an empty state, verify:- Clear context — User knows what’s empty and why
- Actionable — Provides specific next step
- Appropriate tone — Matches emotional context
- Value-focused — Shows benefit of taking action
- Concise — Brief enough to scan quickly
- Avoids negativity — No “nothing here” or “you have no…”
Content patterns by type
- First-use
- User-cleared
- No results
- Permission required
Pattern: “No [content] yet. [Benefit statement]. [Action]”Examples:
- “No contacts yet. Import contacts to start messaging. Import contacts”
- “No favorites saved. Save items to find them quickly later. Browse items”
- “No team members yet. Invite people to collaborate on projects. Invite team”
Voice variations
Professional/B2B product
Professional/B2B product
Consumer/friendly product
Consumer/friendly product
Serious/high-stakes product
Serious/high-stakes product
Common mistakes
Don't
- “You have no contacts”
- “Empty”
- Three different buttons competing
- Long paragraph explaining the feature
- “No records found in database”
Do
- “No contacts yet”
- “No contacts yet. Import to get started.”
- One clear next action
- One sentence benefit, clear button
- “No projects found”
Onboarding flow template
Use this template to design clear, encouraging onboarding experiences that help users succeed quickly.Onboarding principles
Show value early
Help users succeed in their first session
Progressive disclosure
Don’t overwhelm with all features at once
Optional whenever possible
Let users skip and explore
Celebrate small wins
Acknowledge each completed step
Be concise
Users want to start using the product, not read about it
Core flow structure
Each step should answer:
- Where am I? (Progress indicator)
- What do I do here? (Clear instruction)
- Why does this matter? (Benefit to user)
- Can I skip this? (Exit option)
Welcome screen template
Purpose: Orient user and set expectationsAccount setup template
Purpose: Collect essential information only- Only ask for what you absolutely need now
- Explain why each field is required
- Use smart defaults when possible
- Allow skipping optional steps
Feature introduction template
Purpose: Teach one feature at a time through action- Show, don’t tell (use visuals)
- Let users try immediately
- Keep explanations under 20 words
- Always allow skipping
Success/completion template
Purpose: Celebrate user’s first win, encourage next action- Use exclamation points sparingly (once per flow max)
- Make the celebration feel earned
- Suggest logical next step
- Provide exit to main product
Onboarding step checklist
For each step in your onboarding flow, verify:- Single focus — One action or concept per step
- Clear value — User knows why this matters
- Actionable — User knows exactly what to do
- Skipable — Optional steps can be skipped
- Progress visible — User knows how many steps remain
- Concise — Body text under 30 words
- Appropriate tone — Encouraging without being patronizing
Content patterns by step type
- Welcome/Introduction
- Permission request
- Feature tutorial
- Completion
Pattern: “Welcome to [Product]. [Do X to achieve Y].”Examples:
- “Welcome to Notion. Create beautiful docs, wikis, and projects.”
- “Welcome to Figma. Design, prototype, and collaborate in real time.”
Tone variations
Professional/B2B
Professional/B2B
Consumer/casual
Consumer/casual
Technical/developer
Technical/developer
Multi-screen flow example
View complete 4-screen flow
View complete 4-screen flow
Screen 1: WelcomeScreen 2: SetupScreen 3: First actionScreen 4: Success
Common mistakes
Don't
- Too many steps (10+ screens)
- Feature dump (“Here are 47 things!”)
- No skip option
- Passive voice (“Your account has been created”)
- Corporate speak (“Facilitate enhanced productivity”)
Do
- Focused flow (3-5 steps to first value)
- Progressive disclosure (one key feature at a time)
- Respect choice (skip available)
- Active voice (“You created your account!”)
- Plain language (“Get more done”)
Testing your onboarding
Questions to answer:Can users complete onboarding in under 2 minutes?
Can users complete onboarding in under 2 minutes?
Time your onboarding flow from start to finish. If it takes longer than 2 minutes, consider removing steps or making more optional.
Do users achieve something meaningful in their first session?
Do users achieve something meaningful in their first session?
Users should complete at least one core action (create project, send message, upload file) before onboarding ends.
Can users skip optional steps without confusion?
Can users skip optional steps without confusion?
Test that skip buttons work and users aren’t penalized for skipping.
Is the tone encouraging without being condescending?
Is the tone encouraging without being condescending?
Read your copy out loud. Does it sound patronizing or genuinely helpful?
Does each screen have a single, clear purpose?
Does each screen have a single, clear purpose?
Each screen should teach one concept or collect one piece of information.