Copywriting and CTAs for SaaS flows·

"Something Went Wrong" Is a Dead End: 6 Signup Error Rewrites That Keep People in the Form

"Something Went Wrong" Is a Dead End: 6 Signup Error Rewrites That Keep People in the Form

Nobody writes your error copy on purpose. It gets written last, at 11pm, by whoever needed a string to unblock the build. Then it ships and lives for three years.

That's a problem, because the error state is the single highest-doubt moment in your signup flow. The user has already decided to give you their email. Then something breaks. Your copy decides whether they retry or close the tab.

Most signup errors fail two heuristics at once: clarity (they don't say what's wrong) and guidance (they don't say what to do). Here's the teardown, with rewrites you can paste.

Why error microcopy outranks your signup headline

Your headline gets read once, by everyone, in a good mood. Your errors get read by the minority who hit a wall — and they're the ones who already wanted in.

  • A dead-end error converts a warm signup into a bounce with no recovery path.
  • Errors are also the cheapest thing on your roadmap to fix. It's string editing, not a redesign.
  • Nielsen-style feedback heuristics say the system should always tell users what's happening — in plain language, at the moment it happens. Most signup forms tell you that something failed and nothing else.

The six anti-patterns, with rewrites

1. "Something went wrong"

Before: "Something went wrong. Please try again."

After: "We couldn't create your account — that's on our end. Hit retry, or email support@yourco.com and we'll set it up for you today."

Name the cause, own the blame, offer a second door. A user who retries twice into the same generic error assumes it's permanent.

2. Rules revealed only after you break them

Before: a password field with no hints; on submit, "Password must be 8+ characters, 1 number, 1 symbol, 1 uppercase letter."

After: the same rules sit under the field before typing, as a live checklist that ticks green as each one is met. On failure: "Add one number and you're done — everything else is set."

Guidance before, feedback after. This one rewrite usually removes more failed submits than any button redesign.

3. "Invalid email address"

Before: "Invalid email address."

After: "There's a space in that email — mind removing it?" or "That looks like it's missing an @."

Quote what they typed and point at the character. "Invalid" asks the user to go find the mistake themselves.

4. "Email already registered" with nowhere to go

Before: "An account with this email already exists."

After: "You already have an account with this email. [Sign in instead] — or [reset your password]."

Every dead end needs a door. This error is common on re-trial signups and it silently costs you the second visit.

5. Errors that punish the whole form

Before: a banner at the top reading "Please correct the errors below," with every field cleared.

After: inline messages under each offending field, every keystroke preserved, focus moved to the first problem on submit only.

Never make someone re-type something they got right.

6. Blame language

Before: "You entered an invalid phone number." / "Illegal characters detected."

After: "We can't text that number — it needs 10 digits."

Use "we" for the system and "you" only for the fix. "Illegal" is a word for courts, not forms.

If you want this list applied to your actual form instead of a generic example, run a free audit on your signup flow — it scores error states, dead-end CTAs and vague labels, then ranks them by impact.

The disabled submit button is the quietest leak

A greyed-out "Create account" button with no explanation is an error message that never got written. Users click, nothing happens, they leave.

Pick one:

  • Keep it enabled. Validate on submit, show inline errors, let people learn by trying.
  • Keep it disabled. Put a single updating line directly beneath it: "Add a password to continue." The line changes as they satisfy each requirement.

Never both silent. A disabled control with no stated reason violates the most basic guidance heuristic.

Placement and hierarchy, briefly

  • Error text belongs under the field it's about, not in a page-level banner.
  • Use a red border, red text and an icon — color alone fails for colorblind users.
  • Wire aria-live so screen readers get the feedback at the moment it appears.
  • Add positive feedback too: a green check on blur for a valid field is the cheapest confidence boost in the flow.

A P0/P1/P2 microcopy playbook for your signup form

P0 — this week (hours of work):

  • Replace every "Something went wrong" and "Invalid input" string with cause + fix.
  • Add a sign-in link to the "email already exists" error.
  • Stop clearing fields on validation failure.

P1 — next sprint:

  • Move password rules above the field as a live checklist.
  • Add a one-line reason under any disabled submit button.
  • Rewrite blame-y strings into system voice.

P2 — when you have data:

  • Instrument per-field error rates. The field with the highest rate is a copy problem, not a user problem.
  • A/B test new copy on that one field only, so you can attribute the result.

Audit your own form in 20 minutes

  1. Open your signup page in an incognito window.
  2. Trigger every error on purpose: empty submit, bad email, short password, duplicate email, a pasted value with a trailing space.
  3. Screenshot each one and count how many tell you what to do next versus what you did wrong.
  4. Anything that only names the problem is a P0.

We tear down other flows the same way on the blog, and the same P0/P1/P2 logic applies to pricing pages as much as to forms.

Error copy is the cheapest conversion work you'll do this quarter. You don't need a redesign, a new tool, or a research study — you need six strings that stop describing the problem and start describing the fix.

Start a free FlowAudit at /signup and you'll get a prioritized P0/P1/P2 fix list for your own signup flow in minutes — error states, CTA labels and all.