Want good UX vibes in your inbox?Sign up
BetterUXvibes.com
UX Copywriting

Your product talks to users. Does it speak clearly?

Our working library of UX-writing best practices is optimized for the seven surfaces that decide whether your app feels human. We provide a paste-ready prompt tailored to your product, voice, and platform.

Best practices

Seven patterns we use to elevate your UX copywriting:

Error messages

State what went wrong, why, and the one next step .

Error 401 — Authentication failed. Invalid credentials provided.
Wrong password. Try again or reset it.
Something went wrong. Please try again.
Couldn't save your changes. Check your connection and try again.
  • Never show raw error codes or technical strings to end users.
  • Inline validation copy goes next to the field, not at the top of the form.
  • Clear the error as soon as the user fixes it.
  • Never use "invalid," "illegal," "incorrect," or "you forgot."

CTAs & buttons

Start with a verb. Name the outcome.

Submit / Click here / Learn more
Create account / See pricing / Start free trial
Book a room (too committal too early)
Check availability (matches intent stage)
  • Verb + object: "Send message," "Download report," "Cancel plan."
  • Match the CTA to the user's intent stage — don't oversell the commitment.
  • Reassurance line is smaller, below the button, one short sentence.
  • Never use "Submit," "OK," or "Continue" as the only CTA label.

Onboarding

Show the user's goal, not the product's features. Set honest expectations.

No projects yet.
Your workspace is ready. Create your first project to get started.
Welcome to [Product]! Please complete the following steps to configure your account settings.
Let's set things up. Takes about 2 minutes.
  • Empty states are invitations to act, not apologies for nothing being there.
  • Set honest time expectations — only if they're actually true.
  • Tooltips cover one idea only, under 20 words.
  • Avoid "Please complete the following steps to configure…"

Navigation labels

Use words users would use. Clarity over cleverness.

Resources / Hub / Solutions / The Vault
User guides / Templates / Pricing / Reports
Settings for your profile
Profile settings
  • Labels should match your users' vocabulary, not your org chart.
  • Front-load the meaningful word. Keep to 1–3 words.
  • Highlight the active item; use breadcrumbs for deep structures.
  • Never merge concepts to save space — a vague merged label is worse than two honest ones.

Confirmation dialogs

State the action. Name what's lost.

Title: "Are you sure?" — Buttons: Yes / No
Title: "Delete 'Q4 Report'?" — "This can't be undone." — Delete / Cancel
Confirm / Cancel (for cancelling a subscription)
Cancel subscription / Keep my plan
  • For reversible actions, prefer an Undo toast over a dialog.
  • The destructive button should be spatially separated from the safe option.
  • Default keyboard focus lands on the safe option, never the destructive one.
  • Don't overuse confirmation dialogs — it trains users to auto-dismiss them.

Notifications & alerts

Lead with what happened, then what to do.

Your file was saved successfully! 🎉
Changes saved.
Check out our redesigned homepage!
Faster search is here — find anything in under a second.
  • Success messages use past tense, no exclamation marks: "Sent," "Saved," "Published."
  • Notifications should give value within the notification itself, not tease a click.
  • Never use "successfully," "please," or "!" on system copy.
  • Error alerts say what failed and how to fix it — not "An error occurred."

Loading states

Match the wait. Spinner for actions; skeleton for content shapes.

Loading… (generic, for a 10-second fetch)
Crunching your analytics — almost there.
Spinner for a content feed with a known layout
Skeleton screen mimicking the feed card layout
  • Under 300ms, show nothing. 300ms–2s, skeleton or simple spinner.
  • Over 2s, add a short progress message so users know it's working.
  • Payments always get explicit "don't navigate away" copy.
  • Don't show a loader that flashes for under 300ms — more jarring than nothing.

Build your UX copywriting prompt

Free for now

Answer a few questions. We'll assemble one prompt tailored to your product, voice, platform, and the surfaces you need to write for.

01

About your product

Used everywhere in the prompt so the model speaks specifically to your app.

02

Voice & tone

Pick a default, then refine with your own words.

03

Platform & conventions

04

What do you want to write?

Pick all that are relevant. Your selections each add a tailored section to the final prompt.

Stay in the loop

Want good UX vibes sent to your inbox?

Sign up to hear when we ship new resources for non-technical builders: themes, audits, prompts, and news about what we're learning as we build.

No spam. Unsubscribe anytime.