Checklist

The Ultimate SaaS UX Checklist

Onboarding, empty states, forms, billing, accessibility, and performance — everything worth checking before you ship.

Most SaaS UX problems are not visible in a demo — they show up in the 40% of the product nobody designs first: empty states, error messages, cancellation flows. This checklist covers what actually gets missed, grouped by the part of the product it affects.

Onboarding

  • First action is obvious within 5 seconds of landing on the dashboard
  • Empty state on day one shows what success looks like, not just an empty table
  • Progress is saved if a user abandons onboarding mid-flow
  • No more than one required field before showing value
  • The activation moment happens before asking for payment info

Navigation & Information Architecture

  • Primary nav has 7 or fewer top-level items
  • Current location is always visible (active state, breadcrumb, or page title)
  • Search is available if the product has more than roughly 20 discoverable items
  • Settings are organised by who uses them (account vs. team vs. billing), not alphabetically

Empty, Loading & Error States

  • Every list, table, and chart has a designed empty state — not a blank rectangle
  • Loading states use skeletons that match the final content shape, not generic spinners
  • Error messages say what happened and what to do next — never just "Something went wrong"
  • Zero-result search states suggest a next action

Forms

  • Inline validation happens on blur, not just on submit
  • Error messages appear next to the field they describe
  • Required fields are marked; optional fields are labeled "optional," not the reverse
  • Destructive actions (delete, cancel) require confirmation with the consequence spelled out

Billing & Plans

  • Current plan and usage are visible without opening a support ticket
  • Upgrade path is one click from any place a limit is hit
  • Cancellation flow exists and is not deliberately hidden or obstructed
  • Pricing page and in-app plan comparison show the same numbers

Accessibility

  • Colour is never the only signal — always paired with an icon or text
  • All interactive elements are reachable and operable by keyboard
  • Contrast ratio meets WCAG AA for body text (4.5:1)
  • Form inputs have associated labels, not just placeholder text

Performance

  • Largest Contentful Paint is under 2.5 seconds on the dashboard
  • No layout shift after initial render (CLS near 0)
  • Pagination or virtualisation is used on any list over roughly 100 rows

Want this as a file?

Same content, plain text — save it, print it, or drop it into your own docs.

More free resources

All resources

Want us to just handle this?

Spend 3 minutes on the intake form. I'll send back a fixed-price scope within 24 hours.