How to Write Better UX Copy for Your App
A user opens your app to do a thing.
Then something stops them. A form rejects a date with no reason given. A screen sits empty and says nothing but No items. A button says Submit, and for half a second they hesitate – submit to what, exactly?
Nobody downloads an app hoping to read your error message. And yet the error message is the sentence they'll remember, because they met it at the precise moment they were stuck.
That's UX copy, the words nobody asked for, arriving when it's least convenient to be confused.
So how do you write UX copy well?
Here's what you'll learn in this post:
What UX copy (and microcopy) is, and how it's different from marketing copywriting
Why the context a message appears in matters more than the message
8 steps to writing UX copy that helps
How to make errors, empty states and buttons pull their weight
A 5-minute audit to run on your own app today
Let's get into it.
What is UX copy?
UX copy is the functional text inside a product: buttons, labels, form hints, error messages, empty states, confirmations and notifications. It’s written to help someone complete a task. It's also called UX writing, product copy, or microcopy.
Nielsen Norman Group defines the discipline as "writing carefully considered information that addresses people's contexts, needs, and behaviors"; using words instead of pixels to guide someone through an experience.
What's the difference between UX writing and copywriting?
Marketing copy persuades someone who chose to engage. They clicked your ad, opened your email, landed on your page. They opted in.
UX copy serves someone who's already inside, mid-task, and often slightly stuck. They did not opt in to read it.
That changes everything about how you write. Copywriting sells the click. UX writing helps the person who already clicked and now can't find the export button.
One persuades. The other clarifies. Confuse the two and you get a settings page that reads like a landing page, which is exactly as annoying as it sounds.
A reframe to make your UX copy click
You are writing for someone who didn't want to read anything, hit a snag, and is now mildly anxious.
Think about when people actually read the words in your app. Not the happy path, they blow straight through that. They read when something breaks. When a screen is empty and they don't know what to do. When they're about to delete something and need to know if it's reversible.
The moments UX copy matters most are the moments the user is least relaxed. Which is why the tone that works in your hero headline (clever, punchy, confident) is exactly the wrong tone for a failed payment.
Nobody churns because your empty state was witty. Plenty churn because your error message was useless.
8 UX copy tips for your app
1. Start with the user's job, not your screen
Write to what the person is trying to do, in the words already in their head, not the word your engineering team uses in the database.
The test: would the user recognise this term before they learned your product? If it's an internal name (a "widget," a "node," a "sync object") it fails.
And resist the urge to write for everyone. The more specifically you know who's reading and what they came to do, the sharper the words get.
❌ Configure your data source integration parameters
✅ Connect your first account
Same screen. One describes the code, the other describes the job.
💡 If you've never actually pinned down the language your users use, that's upstream work worth doing first. My brand voice worksheet is twelve exercises for exactly that.
2. Sound like a person
Read it out loud. If it doesn't sound like something a human would say to another human, rewrite it.
And tone isn't fluff you sprinkle on at the end. NN/g's research found that tone of voice has a measurable impact on how people perceive your brand, trust included.
Voice vs tone (they're not the same thing)
Voice is fixed, tone flexes. Your voice is who the product is and stays constant. Your tone moves with the moment; warm on a success screen, calm and plain during an error. Same product, different register, because the user's emotional state is different.
❌ An unexpected error has occurred. Please contact your system administrator.
✅ We couldn't save that. Your work is still here, try again in a moment.
One sounds like a photocopier, the other sounds like a person who's on your side.
3. Lead with the verb
Buttons and links are promises about what happens next. So name the outcome, not the mechanism.
Start sentences with verbs so they feel like easy to follow instructions – "add apps," not "you can add apps".
Submit. OK. Continue. These say nothing. A real verb tells the user exactly what they're about to set in motion, which is the whole point of a button.
❌ Submit
✅ Book my table
❌ OK (on a delete dialog)
✅ Delete files
4. Cut it until it nearly breaks
Weigh every word. Then remove the ones not pulling weight.
Aim for sentences of 15–20 words, one idea per paragraph, and delete four things on sight:
Redundancies – "therapeutic treatment"
Idioms – "ground-breaking"
Pointless modifiers – "at this moment in time"
Meaningless generalities – "today's world is full of challenges"
And plain doesn't mean dumbed-down. Even specialists prefer plain language.
❌ In order to proceed, please ensure that all required fields have been completed.
✅ Fill in the fields marked with a star.
One more thing on "short": as short as possible, but no shorter. A slightly longer error that tells someone how to fix the problem beats a terse one that leaves them stranded. Aim to keep things clear not just brief.
5. Make your errors helpful, not scary
One bit of truly high leverage copy in your product is the copy people hit when something's gone wrong. Yet it tends to be written last, badly, and never looked at again.
Good error copy says:
What happened – in plain language, not a code
Why – if knowing helps
How to fix it – the actual next step
And whatever you do:
Don't blame the user. Avoid words like invalid, illegal, incorrect. The system should adapt gracefully, not point fingers.
Preserve their input. Let people fix the mistake by editing what they had, not starting over.
❌ Error: invalid input
✅ Enter a date after today
❌ Oops! Something went wrong.
✅ Payment failed, your card expired. Update it and try again.
Notice the good versions front-load the meaning. Because people scan, put the load-bearing word first: "Payment failed" before the explanation, not buried after three words of throat-clearing.
And treat empty states as onboarding. A blank screen is a high-intent teaching moment: the user's here, they want to start, and they don't yet know how. Don't waste it on No items. Tell them what goes here and how to begin.
💡 Getting people from "empty" to "active" is its own craft; I've written ten copywriting tips for product activation that go deep on exactly that.
❌ No campaigns
✅ No campaigns yet, create your first one to start tracking opens and clicks.
6. Persuade, don't manipulate
UX copy can absolutely move people toward an action. The line you don't cross is manipulating how they decide.
Google's Material Design guidance states:
👍 Do: "tell users what will happen if they take an action and how they can undo it."
👎 Don't: "try to influence a user's decision."
In practice that means no confirmshaming ("No thanks, I hate saving money"), no fake urgency, no burying the opt-out. Make no as easy as yes.
❌ No thanks, I'd rather stay disorganised
✅ Not now
💡 I've mapped this out in dark patterns in copy. Worth a read before you write your next pricing page.
7. Draft, test, then do it again
Your first phrasing is a draft, never the final word. And words are a design decision, so test them like one.
Three habits for good UX copy editing:
Draft, then cut. The first version is for you. The second is for the user.
Get other eyes on it. You are not the only person who can find the right word, and you're too close to your own product to see where it confuses. Someone will spot the thing you can't.
Watch a real person use it. One usability session tells you more than a week of internal debate. If they hesitate on your button, the button's wrong, not the user.
Then, consistency. Not a per-sentence rule, a system one. One word per concept, everywhere. If it's a "workspace" on the dashboard, it isn't a "project" in settings. Pick the word, write it down in a product lexicon, and hold the line. Drift is what makes a product feel held together with tape.
8. Accessibility is the whole point
Plain, short, front-loaded copy is accessible copy. Everything above already helps screen-reader users, non-native speakers, and anyone reading on a cracked phone in bright sun.
Never lean on colour or an icon alone to carry meaning, because a big share of users won't perceive it
Write labels that make sense read aloud, out of order, with no visual context
Skip idioms that don't translate.
If you want the full checklist version, I've written a WCAG accessibility checklist for your blog that applies just as well to product screens.
Where UX copy fits in your design process
Short answer: earlier than it usually does.
The ideal is content-first: writing the real words alongside the wireframes, not pasting lorem ipsum and hoping a copywriter fixes it before launch.
Real copy in the prototype, a writer in the room when the flow is decided, and a shared lexicon so the whole team uses the same word for the same thing.
If you're building a UX writing practice from scratch, the maturity arc looks like this:
ad-hoc words → a shared voice-and-tone guide and product lexicon → content people embedded in product squads → a proper content design system with governance.
The 5-minute UX copy audit
Open your live app, not the Figma file or the Google doc. Copy behaves differently in the container it wasn't written in.
Then, for each screen, ask:
Buttons – does every one start with a verb that names the outcome? Any Submit / OK / Continue survivors?
Errors – does each one say what happened, and how to fix it? Any that blame the user? Any bare error codes?
Empty states – do they teach the next action, or just announce emptiness?
The load-bearing word – is it first? Or buried behind "There was a problem processing your recent…"?
Consistency – one word per concept? Or is your "workspace" also a "project" and a "board"?
Read it aloud – does any of it sound like a photocopier talking?
Say no – is declining as easy as accepting, in clicks and in tone?
Anything that fails, you've just found your highest-leverage rewrite.
So your app didn't pass the UX copy audit. Now what?
Don't panic, it’s fixable, promise!
I write website and product copy for B2B SaaS – pick the three screens in your app you like least, and send them my way. I'll tell you what the words are doing, and what I'd do differently.
Amélie Pollak is a copywriter and verbal brand strategist working with SaaS startups, scale-ups and growing businesses to make their words work harder. ameliepollak.com
FAQs
What is UX copy?
UX copy is the functional text inside a product – buttons, labels, form hints, error messages, empty states and notifications – written to help someone complete a task. It's also called UX writing or microcopy. Unlike marketing copy, the user didn't choose to read it; they hit it mid-task, which is why clarity matters more than cleverness.
What is microcopy?
Microcopy is the smallest unit of UX copy: the button label, the field hint, the one line under a form. Short text fragments that often appear with no supporting context and still have to make sense on their own.
What's the difference between UX writing and copywriting?
Copywriting persuades someone who chose to engage: a click, an email, a landing page. UX writing helps someone who's already inside the product, mid-task, and often slightly stuck. Copywriting sells the click; UX writing helps the person who already clicked.
How does good UX copy improve the user experience?
It reduces confusion, prevents and recovers errors, and teaches by doing, all at the moments users are most likely to give up. Bad messaging can be the reason people leave a product, even when the underlying design is good.
How do I write a good error message?
Say what happened, why (if it helps), and how to fix it; in plain language, not a code. Don't blame the user, and preserve what they typed so they can edit rather than start over.
How long should UX copy be?
As short as possible, but no shorter. Aim for 15–20 word sentences and one idea per surface, and cut redundancies and filler, but never trade away the instruction that tells the user what to do next.
Where does UX writing fit in the design process?
Ideally content-first: real words written alongside the wireframes, not added at the end. In practice it's still often skipped or rushed, so the fix is moving copy upstream: into the prototype, into the room where the flow gets decided.