
I like products that speak up. Lately I keep meeting interfaces that whisper. Everything is lowercase, soft around the edges, forever asking if now is a good time. It’s kind, it’s careful, it’s lovely. And it makes the product feel unsure of itself.
I don’t think users want swagger. I think they want eye contact. Tell me what happened. Tell me what you’ll do. Tell me what I should do next. That’s the whole contract.
Friendliness is easy to fake. Clarity is not. When a UI hedges, users hear uncertainty. A soft voice that never lands on a fact isn’t comfort - it’s fog.
You’ve heard the fog:
Heads up, something might not have gone quite right...
Looks like nothing’s here yet, but that’s okay :)
Let’s maybe try saving this now?
What’s missing is simple: what happened, what happens next, whether the product is in control.
Here’s how I wish those sounded:
We couldn’t save your changes. Try again or reload the page.
This screen is empty. Add your first item to continue.
Save now to keep these edits.
No drama. Just facts and a next step.
I believe products can be both warm and direct. Warm acknowledges the human. Direct respects their time. Together they read like this:
Say what happened.
Say what will happen if I act.
Offer one confident next step.
Apologise only when it’s your fault, and pair it with a remedy.
That’s it. Four lines that take a UI from murmuring to helpful.
Read the sentence aloud as if you were explaining it to a friend at your kitchen table. Would you use the same words if the news were bad? If the answer is no, you have branding, not voice.
Examples that pass the test:
Your subscription renews on 12 June. Cancel any time.
You are about to delete this workspace. This cannot be undone.
Payment failed. We’ll retry in 12 hours or you can pay now.
Each one tells the truth, then gives a door to walk through.
Teams are scared to sound wrong, or bossy, or clever. Legal sandpapers the edges. Marketing adds a smile. Support removes the promise. What’s left is pleasant and vague.
The risk isn’t tone. The risk is indecision. Users don’t stall because you were polite. They stall because you didn’t tell them what happens next.
Ban maybe, just, a bit, kind of. Use will and won’t.
Buttons are outcomes, not chores - Save report becomes See your cost breakdown.
Headlines are facts - not hints, not vibes.
Errors have three parts - cause, remedy, reassurance.
Loading states tell the truth - what’s happening and what to expect. Skeletons beat jokes.
Empty states teach one step - what this is, why it matters, how to start.
If a tooltip explains a basic control, redesign the control and delete the tooltip.
None of this is complicated. It’s just intent on paper.
Before: Oops! Something might’ve gone wrong.
After: We couldn’t process your request. Try again. If it fails twice, reload the page.
Before: Just a sec...
After: Uploading files. You can navigate away - we’ll keep working.
Before: Are you sure you want to cancel? You’ll lose some data.
After: Cancelling now deletes unsaved edits on this page. Keep editing or cancel anyway.
Before: Click here to continue when you’re ready.
After: Continue to billing.
Small swaps, big confidence.
Imagine a product that meets you where you are and looks you in the eye. It doesn’t flatter you. It doesn’t perform friendliness. It simply tells you the state of the world and what you can do about it - in twelve honest words. It is calm when things fail, brief when things succeed, and specific always. You feel looked after not because it smiles, but because it knows what it’s doing.
That’s the tone I want more of. Less performative warmth, more competent kindness.
Find three places where the UI hedges. Replace hedging with facts and a next step.
Change two CTAs from tasks to outcomes.
Rework one empty state to teach a single action.
Retire one joke in a loading state. Say what’s happening instead.
Ship it. Watch activation and task completion for a week. Confidence usually reads as speed.
Soft is fine. Vague is not. Your product doesn’t need to shout. It needs to decide. When in doubt, say the thing. Be warm. Be clear. Be the adult in the room - gently.
5
17
1