Your welcome email worked. They signed up. They clicked the link. They opened your app for the first time. And then they saw a blank dashboard with a "Get started" button, had no idea what to do next, and closed the tab.
In-app onboarding copy is the least glamorous thing you'll ever write and one of the highest-ROI things you can improve. Here's how to do it.
The One Job Onboarding Copy Has
Get the user to their aha moment as fast as possible. Not explain every feature. Not showcase the product's range. Not make them feel welcome. Get them to the one specific thing that makes them think "this actually works for me."
Every word of in-app copy should be evaluated against this single question: does this help the user reach the aha moment faster? If not, cut it.
1. The First Screen After Login
This is the highest-stakes copy in your entire product. The user has just signed up and has high intent — and no patience.
Most first screens fail because they present options. A dropdown menu, a choice of templates, a "what type of user are you?" survey — all of these create friction at the exact moment you want zero friction.
The right first screen has one prominent call to action that leads directly to the aha moment, with one sentence of context explaining why.
Bad: "Welcome to StartKitz! Choose how you'd like to get started: Browse templates / Import project / Watch tutorial"
Good: "Paste your app URL below. We'll generate your full marketing kit in under 60 seconds."
One action. One sentence of context. No choices.
StartKitz
See how a fast aha moment is built
StartKitz is built around a 60-second aha moment: paste your URL, see real output before creating an account. The same principle applies to your product's first screen.
Try it now →
2. Empty States
An empty state is what users see when a section of your product has no content yet. Most empty states say something like "No posts yet" or "Your reports will appear here." These are wasted opportunities. Every empty state should tell the user exactly what to do to fill it, and why they'd want to.
Bad: "No content generated yet."
Good: "Your generated copy will appear here. Paste your URL above to create your first kit — takes about 60 seconds."
The good version removes ambiguity and re-surfaces the action. The user doesn't have to remember what to do next.
Tooltips are not the place for feature explanations. They're the place for one-line outcome summaries.
Bad tooltip: "Growth Score — A composite metric calculated from your product's positioning, copy quality, and competitive landscape analysis."
Good tooltip: "Growth Score — Know at a glance where your marketing is weak before you spend money on distribution."
The user doesn't need to understand how the score is calculated. They need to know what it means for them.
4. Progress Indicators
If your onboarding has multiple steps, each step label should be an outcome, not a task.
Bad progress bar: Step 1: Add URL → Step 2: Configure settings → Step 3: Generate
Good progress bar: Step 1: Analyze your product → Step 2: Customize your outputs → Step 3: Download your kit
The first version describes what the user does. The second describes what they get. The second version makes each step feel like progress toward something, rather than a hoop to jump through.
5. Error Messages and Dead Ends
Nothing kills onboarding momentum faster than a confusing error message. The worst error messages are generic ("Something went wrong. Please try again.") or technical ("Error 422: Unprocessable Entity"). Both tell the user nothing actionable.
Good error messages have three parts:
- What happened (plain language)
- Why it happened (if diagnosable)
- What to do next (one specific action)
Bad: "URL could not be processed."
Good: "We couldn't read that URL — it might be behind a login or have no public content. Try a publicly accessible landing page URL and we'll reanalyze."
The Voice Rules for Onboarding Copy
- Use "you" not "we." Every sentence that starts with "We" is about the product. Every sentence that starts with "You" is about the user. (For help finding the right words, see what to actually say when marketing your SaaS.) Onboarding copy should be almost entirely in the second person.
- Use present tense. "Paste your URL and get your kit" not "Once you paste your URL, you will receive your kit." Present tense feels immediate. Future tense feels delayed.
- Use active verbs. "Generate your copy" not "Your copy can be generated." Active voice is shorter, clearer, and more energetic.
- Cut the adjectives. "Easily generate your copy" — delete "easily." If it's easy, the experience proves it. The word just makes the claim; the experience should deliver it.
One Test to Evaluate Your Onboarding Copy
Read your onboarding flow aloud as if you're explaining it to someone on the phone. Any sentence that sounds awkward, over-formal, or that you'd never say in conversation — rewrite it until it sounds natural.
The bar for in-app copy: would a real human say this to another real human? If not, it doesn't belong in your product.