Do it yourself·10 min read

The founder's UX audit checklist: 24 checks, 3 flows, one afternoon

Whole-product audits are noise before product-market fit. Audit the 3 flows every user actually hits: signup, first session, core loop. 24 falsifiable checks, each with a named rule, scored live as you tick.

A founder UX audit is a self-run check of your product’s 3 money flows (signup, first session, core loop) against named usability rules. You get 24 yes/no checks below, each tagged with the Nielsen heuristic, WCAG criterion, or Law of UX it enforces. No designer, no $10k engagement, no 40-slide deck. One afternoon.

Why you only audit 3 flows

Because before product-market fit, every single user passes through signup, the first session, and the core loop, and almost nobody goes anywhere else. A bug on your settings page hurts the handful of users who find it. A bug in signup hurts 100% of everyone you will ever acquire. Same fix effort, wildly different payoff.

The activation numbers say this is where products actually die. Lenny Rachitsky and Yuriy Timen’s survey of 500+ products put median activation barely above 1 in 4 signups. The other 3 never reach value, and that loss happens inside exactly the flows this checklist covers. The full numbers, caveats included, are in why users abandon your signup flow.

7%
A day-7 return rate of just 7% of new users puts a product in the top 25% of Amplitude’s 2,600-company benchmark. The bar is on the floor. Most products trip over it anyway.

Fixing this early compounds: in the same Amplitude data, 69% of products in the top quartile at day 7 were still top performers at 3 months. A whole-product audit, meanwhile, hands you a 60-item list where item 41 is a footer link color. At your stage that is noise wearing a high-visibility vest. Scope ruthlessly: 3 flows, 24 checks. (Signup deserves its own teardown, and it has one: why users abandon signup.)

How to run the audit

Fresh browser, real phone, screen recorder on, one flow at a time: the setup takes 10 minutes and the walk takes an afternoon. The order matters less than the discipline.

  1. Get the cleanest eyes you can. New browser profile or incognito, logged out, autofill off. Your cookies have been hiding your own signup from you for months.
  2. Repeat on a real phone. Devtools emulation lies about thumbs. Your actual phone will find the 18px close button that your mouse never noticed.
  3. Record both passes. Loom, QuickTime, whatever. Timestamps beat memory, and clips become ticket evidence later.
  4. Walk in with a job, not a wander. “I run a 3-person agency and I need to send one invoice before lunch.” Type realistic data. Make deliberate mistakes: wrong password twice, back button mid-flow, double-click on submit.
  5. Log findings as one-liners while you walk. Where, what happened, gut severity. Do not stop to fix anything; the audit dies the first time you open your editor.

Then sit down with the checklist below and answer all 24 honestly. House rule: if you have to think about a check for more than 2 minutes, the answer is no.

The 24-point founder UX audit checklist

24 checks across signup, first session, and core flow: each one is falsifiable, answerable in about 2 minutes, and tagged with the rule it enforces. The tags come from Nielsen’s 10 usability heuristics, WCAG 2.2 (which added 9 criteria in October 2023, several tailor-made for exactly these flows), and Laws of UX. If you want to see the full heuristic method run end to end first, we did it on a fictional app that violates all 10.

Score yourself0 / 24 pass
Flow 1 · Signup
Flow 2 · First session
Flow 3 · Core flow + safety nets
Verdict
Stop adding features
More than half the basics are missing, and no roadmap item pays off like fixing that. Freeze the feature branch for a week, work down this list from the top, and re-score. The product you already built deserves to be usable.
Score updates as you check. Nothing is saved or sent anywhere.

The receipts behind the checks

These are not vibes; the checks with measurable stakes have published numbers behind them:

  • Field count. Baymard’s checkout benchmark puts the average flow at 11.3 form fields when most sites need only 8. Your signup deserves the same scrutiny: every field is a place to lose someone.
  • Forced account creation. In Baymard’s abandonment survey (updated September 2025), 19% of US shoppers who abandoned a checkout cited “the site wanted me to create an account” as a reason.
  • Inline validation. Luke Wroblewski’s study with Etre measured a 22% higher success rate, 22% fewer errors, and 42% faster completion with inline validation versus validate-on-submit. Small eye-tracking study, so treat the exact numbers gently, and note its own caveat: validate when the user leaves a field, not on every keystroke.
  • Contrast. WebAIM’s 2026 scan of 1 million home pages keeps finding low-contrast text as the web’s single most common accessibility failure. Assume you have it until a checker says otherwise.
The roast

Your password reset is a safety net you have never once jumped into. You are trusting your churn rate to a transactional email you last thought about at setup.

The receipt

In Baymard’s testing, hitting a password reset mid-checkout cost nearly 1 in 5 orders, with reset emails delayed or in spam even at Amazon and ASOS (the exact numbers are in the signup teardown). That is why check 18 exists. Running it takes 4 minutes: incognito window, “Forgot password”, start a timer, open the email on your phone, click the link. If any step makes you wince, that wince is a ticket.

Nielsen #9 · Recover from errors

Take it with you

Prefer to score in your own tool? Here is the terse version for Notion, Linear, or a plain text file.

founder-ux-audit.md
# Founder UX audit checklist · 24 checks, 3 flows

## Signup
- [ ] 5 fields or fewer, each one defensible out loud (Nielsen #8)
- [ ] Password rules visible before the first failure (Nielsen #5)
- [ ] Show-password toggle exists, paste is allowed (WCAG 3.3.8)
- [ ] Fields validate on leaving them, not only on submit (Nielsen #1)
- [ ] Errors name the field and the fix, never "invalid input" (Nielsen #9)
- [ ] Nothing asked twice, including "confirm password" (WCAG 3.3.7)
- [ ] Product value visible before the account wall (Nielsen #3)
- [ ] Visible labels that stay put, not placeholder-only (WCAG 3.3.2)

## First session
- [ ] One obvious next step on the first screen (Hick's Law)
- [ ] Empty states say what goes here + hold the create button (Nielsen #6)
- [ ] Multi-step setup shows step X of Y (Nielsen #1)
- [ ] Onboarding skippable and findable again later (Nielsen #3)
- [ ] Customer words, not schema words (Nielsen #2)
- [ ] First task starts from a template or sample data (Nielsen #7)
- [ ] Anything over 1 second shows progress (Nielsen #1)
- [ ] Help in the same place on every screen (WCAG 3.2.6)

## Core flow + safety nets
- [ ] Destructive actions have undo, or confirm + recovery (Nielsen #3)
- [ ] Password reset tested this month, email under 1 min (Nielsen #9)
- [ ] Failed saves never discard the user's input (Nielsen #9)
- [ ] Text and primary buttons pass 4.5:1 contrast (WCAG 1.4.3)
- [ ] Mobile tap targets at least 24x24 px (WCAG 2.5.8)
- [ ] Tab through the flow with focus always visible (WCAG 2.4.7)
- [ ] Same action, same name, everywhere (Nielsen #4)
- [ ] Core action is the biggest, nearest target (Fitts's Law)

How to score what you found

Every failed check becomes a finding with one of 3 severities: Blocker (users fail or lose work), Major (users struggle, some give up), or Minor (friction and irritation). This maps onto NN/g’s 0 to 4 severity scale, which weighs 3 factors: how often the problem occurs, how hard it is to overcome, and whether it bites once or every time. Fix Blockers this week, Majors this sprint, and Minors when you are already touching that screen.

Write each finding so it can go straight into the backlog. Like this:

AUD-18Major
Password reset email takes 4 minutes and lands in spam
EvidenceRan check 18 in a fresh incognito session: reset requested at 00:00, email arrived at 03:41, in the spam folder. Recording attached.
RuleNielsen #9 · Recover from errors
FixSend resets from the primary domain with SPF/DKIM aligned; after 30 seconds, show a check-your-spam note and a resend button.
Effort⚡ Quick win · ~1 hr

The full format, including steps to reproduce and why devs reject tickets without them, is in how to turn UX findings into tickets devs actually fix.

What this checklist cannot catch

It cannot catch the problems you have gone blind to: a checklist verifies rules, and you will pass yourself on anything ambiguous. You built this product. You know which icon opens the exporter and what “workspace” means here, so you physically cannot experience the confusion of someone who does not. Blindness from familiarity, not incompetence, and no amount of honest box-ticking cures it.

A checklist also only sees violations, never comprehension. Your signup can pass all 8 checks while the headline above it convinces people they are in the wrong place. Catching that takes eyes that have never seen the product: 5 real users on a call, or an agent that walks in cold. We compared the options in AI agents vs synthetic users vs real users. If you want the agent version, ClapBack runs exactly this kind of pass from a URL: it signs up, breaks your flows, and returns findings as tickets with a severity and a cited rule, in minutes instead of an afternoon.

Either way, run the afternoon audit first. It is free, it clears the embarrassing stuff, and it makes whatever fresh eyes you bring in later spend their time on problems only fresh eyes can find.

Receipts for this article
Lenny's Newsletter · What is a good activation rate? (500+ product survey, 2022) · Amplitude · The 7% rule (Product Benchmark Report) · Baymard · Checkout flows average 11.3 form fields · Baymard · Cart abandonment rate and reasons · Baymard · Password requirements and password reset · A List Apart · Inline validation in web forms (Wroblewski/Etre) · WebAIM · The WebAIM Million, 2026 edition · W3C WAI · What's new in WCAG 2.2 · NN/g · 10 usability heuristics for user interface design · NN/g · How to rate the severity of usability problems · Laws of UX · Hick's Law and Fitts's Law

Questions people actually ask

How do I do a UX audit without a designer?
Scope to the 3 flows every user hits: signup, first session, and your core loop. Walk each one in an incognito browser and on a real phone while screen-recording, then answer a set of falsifiable checks tied to named rules (Nielsen's heuristics, WCAG 2.2, Laws of UX). Write every failure as a ticket with a severity.
How long does a DIY UX audit take?
An afternoon: roughly 1 hour per flow for 3 flows, plus an hour turning failures into tickets. Whole-product audits take days and, at pre-PMF stage, mostly surface low-priority noise.
How often should I audit my product's UX?
Re-run the 3-flow audit whenever signup or onboarding changes materially, and quarterly otherwise. Re-test safety nets like password reset and undo monthly; they break silently and users rarely report them.
What should a UX audit checklist include?
Falsifiable yes/no checks tied to named rules: signup field count, inline validation, visible password rules, a tested reset flow, visible labels, 4.5:1 contrast, 24px tap targets, visible focus, undo for destructive actions, progress indicators, empty states, and consistently placed help.
Can I audit my own product's UX, or am I too biased?
You can reliably catch rule violations: contrast, missing undo, hidden password rules. You cannot catch comprehension problems, because familiarity has made you blind to them. For those, add fresh eyes: 5 real users or an agent that walks in cold.

Reading about UX debt is the slow way.

Paste your URL and an AI agent will use your product like a real user, find what breaks, and hand you the tickets. From $49, no install, no retainer.

Get my free roast →
Your site or a competitor’s. We won’t tell.
Keep reading
Teardown
A complete heuristic evaluation, run on the worst app we could imagine
Teardown
Your signup is a bouncer, and the line outside is leaving
Workflow
The anatomy of a UX ticket an engineer accepts without a meeting