Testing & Iteration. Find out what is true, then change the product.

You built it, so you cannot see it the way a stranger does. This guide teaches you how to borrow other people's eyes cheaply (usability tests, quick prototype tests, interviews), how to sharpen your own (heuristic reviews, walkthroughs, self-critique), how to read what the numbers say without fooling yourself, and how to turn all of it into a steady loop of small, confident changes. Everything here is sized for one person with a day job's worth of hours.

Reading timeAbout 4 hours, in 6 sittings
Practice time2 weeks, then a monthly habit
Before thisProblems Worth Solving, Structure & Interaction
TeachersKrug, Nielsen, Molich, Sharon, Rodden, Ries, Hall, Torres, Kohavi

By the end you will be able to

  • Explain why your own judgment of your product is biased, and rank evidence by how much to trust it (understand)
  • Plan, recruit, run and synthesize a three-person usability test in one morning, alone (apply)
  • Write tasks and moderator prompts that do not lead the participant (apply)
  • Choose the right quick method for a question: first-click, five-second, tree test, card sort, preference test (analyse)
  • Run a heuristic evaluation and a cognitive walkthrough on your own product and rate severity (evaluate)
  • Critique your own screens with fresh-eyes techniques and a written objective (evaluate)
  • Define activation, retention and a North Star for a small app, and instrument it without spying on people (create)
  • Judge whether an A/B test is even possible at your traffic, and what to do instead (evaluate)
  • Keep an iteration log and decide to persevere, change or delete a feature on evidence (create)

Warm-up: what do you already believe?

Before reading, answer three questions from instinct. Do not look anything up. The point is to surface the beliefs you carry into testing, because the most common reason solo creators never test is a quiet assumption that it needs a lab, a budget or a team. Your answers will be revisited at the end of Part two.

Diagnostic 1

You ask a friend to try your note app. She says "Looks great, I'd totally use this." What have you learned?

Diagnostic 2

Your app gets 300 sign-ups a month. You want to know whether a new onboarding screen raises activation from 30% to 33%. What is the honest answer?

Diagnostic 3

A participant in your test hesitates for ten seconds on the settings screen, then finds the toggle. Afterwards she says the app was "really easy." Which do you write down as the finding?

How to study this guide

Read one Part per sitting. Do each chapter's exercise on your own product before moving on; the guide is designed so that by the end of Part two you have actually run a test. The checklists save in this browser, so you can return to them every month.

Part one

Why test at all

One chapter on the root problem: you are the worst-placed person on earth to judge whether your product is clear. Not because you lack taste, but because you know too much. Everything else in this guide is a way around that.

1

You are not your user

Taught by Jakob Nielsen, with Elizabeth Newton, Chip & Dan Heath, Erika Hall

The person who built a product cannot un-know how it works, so their sense of "obvious" is broken; the only cure is to watch people who do not share that knowledge, and to trust what they do over what anyone says.

In 1990 a Stanford graduate student, Elizabeth Newton, ran a simple experiment. One person tapped the rhythm of a well-known song like "Happy Birthday" on a table; another person listened and tried to name the song. Before the listeners guessed, the tappers predicted how often they would succeed: about half the time. The real figure was 3 songs out of 120, about 2.5%. The tappers could hear the melody in their heads while tapping. The listeners heard knocking. Chip and Dan Heath popularized the study in Made to Stick (2007) as the clearest picture of the curse of knowledge: once you know something, you cannot imagine not knowing it.

You are the tapper. You hear the melody of your product every time you look at it. You know that the small grey icon top-right opens sync settings because you drew it. You know that "Collections" means tagged groups because you named the database table. You know that swiping left archives because you wrote the gesture handler. A first-time user hears knocking.

What you see What a newcomer sees sync settings ↑ Collections (tag groups) ← swipe to archive Export (Markdown) ? Collections? ? Export? to what
Same pixels, different screens. The green notes exist only in your head. Every "?" on the right is a moment a newcomer has to guess, and each guess costs attention or ends the session.

Why your intuition fails in a specific way

The curse of knowledge does not make you wrong about everything. It makes you wrong in a predictable direction: you underestimate how hard discovery is, how ambiguous your labels are, and how much people skim. You tend to be right about what is technically possible and wrong about what is noticeable. That is useful, because it tells you where to point your tests: at discovery (can they find it?), comprehension (do they know what it means?), and expectation (does it do what they thought it would?).

There are three other biases stacked on top. Familiarity: you have seen each screen hundreds of times, so problems feel normal. Effort justification: you spent a week on a feature, so you want it to be good. Confirmation: you notice the one user who loves the feature and forget the six who never opened it. None of these go away with experience. Senior designers test because they know they have them too.

The evidence ladder: do > say

Not all evidence is equal. Jakob Nielsen's blunt 2001 article "First Rule of Usability? Don't Listen to Users" made the point: what people say they do, and what they say they want, is a poor predictor of what they actually do. People are not lying. They are reconstructing, guessing and being polite. The ladder below ranks evidence for a solo creator by how much it should move your decisions.

STRONGER EVIDENCE ↑ 6 · Real behavior at scale: usage data, retention, payments 5 · Observed behavior in a task (usability test) 4 · Stories about specific past behavior (interviews) 3 · Stated preferences and ratings (surveys) 2 · Friends' and peers' opinions 1 · Your own opinion of your own product
Climb as high as you cheaply can. Level 5 (watching someone do a task) is the sweet spot for a solo creator: it costs an hour and outranks every opinion. Level 6 is strongest but needs volume and time, and tells you what without why.

Two refinements make the ladder practical. First, combine levels: numbers (level 6) tell you where people drop off; a usability test (level 5) tells you why. Second, past beats future. "Tell me about the last time you exported a document" (level 4) is far more trustworthy than "Would you use an export feature?" (level 3), because one is a memory and the other is a prediction. Rob Fitzpatrick's The Mom Test (2013) is built entirely on this rule.

Don't
"Do you like it?" "Yeah, it's nice!" Records: an opinion, socially pressured
Opinion on demand. You show, explain and then ask. They have no task, already know how it works because you told them, and want to be kind.
Do
1 0:42 looked attop bar, thentapped "?" icon.Expected help,got sync. Records: behavior on a real task
Behavior on a task. You give a goal, stay quiet, and write down what happens with timestamps. The surprise ("expected help, got sync") is a finding you could never get by asking.
Myth

"I'm my own target user, so I don't need to test." Being in the audience helps you pick the right problem (see Problems Worth Solving). It does not help you see your interface fresh. You are a user with perfect knowledge of the internals, which no one else will ever be.

Key idea

Your eyes are calibrated to the melody. Testing is how you hear the knocking.

Do

  • Treat every belief about clarity ("people will get this") as a hypothesis until someone outside your head has used it.
  • Ask about the past ("last time you…") instead of the future ("would you…").
  • Combine a number that shows where with an observation that shows why.
  • Write down your prediction before each test, so you can measure how wrong you were.

Don't

  • Demo the product and then ask for a reaction.
  • Count compliments as evidence.
  • Dismiss a confused user as "not the target audience" without checking.
  • Assume more experience will cure the bias. It only makes you faster at hiding it from yourself.

In the wild

  • Superhumanemail client, 2018 onward
    Rahul Vohra described using Sean Ellis's question, "How would you feel if you could no longer use this product?", and treating the share of "very disappointed" answers (with 40% as the benchmark) as a product–market-fit signal, then interviewing the segments behind the numbers. Even a survey can be anchored to a concrete loss rather than a vague "do you like it".
  • Steve Krug's "Don't Make Me Think"book, 2000; 3rd ed. 2014
    Krug built a whole philosophy on watching ordinary people use websites and noticing that they scan, satisfice and muddle through rather than read and choose. The only way to see muddling is to watch; nobody reports it.
  • Any app store review sectioniOS and Android
    Read your one-star reviews next to your own feature list. The features you are proudest of rarely appear; the problems that hurt are usually ones you stopped noticing months ago. Strangers report the knocking you cannot hear.
For the solo creator

You have no colleague to say "I don't get it." That makes you more exposed to the curse than a team is, not less. The fix is not a research department; it is a small, regular habit: one hour a month watching someone use your product, plus a written prediction you check against what happened. Parts two to four show exactly how.

Common mistakes

Testing with your partner or best friend only

They are available and kind. But they have heard you talk about the product for months, so they carry part of your knowledge, and they want you to succeed.

Use friends-of-friends who have never seen it. If you must use close people, give them a task and stay silent, and weight their findings lower.

Explaining before observing

You want them to "get it," so you give a tour first. The tour destroys the test: you have just transferred your knowledge.

Give a goal, not a tour. Explanation is allowed only after the session, and anything you needed to explain is itself a finding.

Arguing with the result

A participant misses something obvious and you think, "they just weren't paying attention."

Real users don't pay attention either. If one person in three misses it, assume a third of your users miss it.

Check yourself

You're deciding whether to build tags or folders for a reading app. Which piece of evidence should weigh most?

Exercise 1.1 30 minutes · on your own product

Map your curse of knowledge

  1. Take a screenshot of the first three screens a new user sees in your product.
  2. On each, circle every element whose meaning you know only because you built it: icons without labels, internal words, hidden gestures, order that depends on a mental model.
  3. For each circle, write the question a stranger would ask ("What does this do?", "What's a Collection?").
  4. Write three predictions: "In a test, X of 3 people will fail to find Y." Keep them; you will check them in Chapter 6.
You're done when: you have three annotated screenshots with at least 8 circled "knocking" points and three written, falsifiable predictions.
BeginnerCompetentStrong
Circles only obvious unlabeled icons.Also circles vocabulary and hidden gestures; predictions are specific.Also circles ordering and assumptions about prior steps; predictions include numbers and a reason.
Part two

Usability testing, alone

Five chapters that take you from "I should test" to a finished, synthesized round, all within one morning a month. The method is Steve Krug's, from Rocket Surgery Made Easy (2010), adapted for a person who is also the recruiter, moderator, note-taker and the one who fixes the bugs afterwards.

2

Small, often: the five-user idea and its limits

Taught by Jakob Nielsen & Thomas Landauer, with Steve Krug, Laura Faulkner, Jared Spool

A handful of people doing realistic tasks reveals most of the big, common problems in a design, so many tiny rounds with fixes in between beat one large study; but "five is enough" is a rule about common problems in one flow, not a law.

In 1993 Jakob Nielsen and Thomas Landauer modeled how usability problems are discovered. If each problem has a chance L of being hit by any one participant, then after n participants you have found a share of 1 − (1 − L)n. Across the projects they studied, the average L was about 31%. Plug that in and five users find roughly 84% of the problems. The curve rises steeply and then flattens: user six mostly repeats what users one to five already showed you.

Nielsen's 2000 article "Why You Only Need to Test with 5 Users" turned this into a recommendation: rather than spend your budget on 15 users at once, run three rounds of five, fixing the problems between rounds. The second round tests your fixes and finds the problems the first set was hiding (you cannot discover that step three is confusing while everyone is stuck on step one).

Lab: the problem-discovery curve
0% 50% 100% Number of test users (1 to 20)
84%of problems found
5users to reach 85%
+5%what the next user adds
Try L = 31% (Nielsen and Landauer's average), then drop it to 10%, which is closer to a complex product with many rare paths. Notice how the "five is enough" promise collapses when problems are rare, and how little the 12th user adds when they are common.

The limits of five

The formula assumes every problem has the same L, and that your five people are similar and doing the same tasks. Reality breaks all three. Laura Faulkner (2003) ran a study with 60 participants and drew random sets of five from them: some sets found most of the known problems, while unlucky sets found barely over half. Jared Spool and Will Schroeder (2001) tested large e-commerce sites and found that five users came nowhere near most problems, because each person took different paths through a huge site. The honest reading:

  • Five finds the common problems in the flow you tested. Those are the ones that matter most, so it is a great deal.
  • Rare problems need more people or different methods (analytics, support tickets, long-term use).
  • Different audiences need their own five. Writers and editors, new and returning, phone and desktop: each group is a separate pool.
  • Five is for finding problems, not measuring them. "3 of 5 failed" means "this is a real problem", not "60% of users fail." For percentages you need far larger samples.
One big round fix once · users 6–15 mostly repeat Three small rounds fix fix fix Same 15 sessions. The rounds version tests its own fixes and uncovers problems hidden behind earlier ones.
Spend users across time, not all at once. Each fix exposes the next layer of the onion. Krug's version is even smaller: three users, one morning a month.

Krug's monthly morning

Steve Krug's Rocket Surgery Made Easy turns this into a routine anyone can run: test with three people, one morning a month, debrief the same day, and fix the few most serious problems before the next round. He argues three is enough because you are looking for the problems that most people will hit, and because a fixed monthly date means testing actually happens. For a solo creator, the calendar is the method. A date on the calendar beats a plan to "test properly once the redesign is done."

  1. Week before. Pick the flow to test (usually whatever you just changed or whatever support complains about). Write 3 to 5 tasks. Recruit 3 people.
  2. Morning, 9:00 to 12:00. Three sessions of about 45 minutes, with 15-minute gaps to write notes while they're fresh.
  3. Lunch, 12:30. Debrief yourself: list everything you saw, pick the top three problems.
  4. Afternoon. Decide the smallest change that fixes each. Krug's advice is to tweak rather than redesign: the least you can do that solves it.
  5. Next month. Test again, including the fixed flow.

Do

  • Book a recurring date (first Saturday of the month, say) before you have anything "ready."
  • Run small rounds and fix between them.
  • Test each distinct audience or platform separately.
  • Use "3 of 5 struggled" as a signal of a real problem.

Don't

  • Wait for a large, perfect study.
  • Report "60% task failure" from five people as if it were a measurement.
  • Expect five users to find rare, deep or edge-case problems.
  • Keep testing the same broken flow without fixing it in between.

In the wild

  • GOV.UKGovernment Digital Service, 2012 onward
    GDS teams publicly documented frequent, small-sample usability testing as a routine part of building services, including with people who have low digital skills or access needs. Cadence and coverage of different audiences beat one big study.
  • Krug's demo test"Rocket Surgery Made Easy", 2010
    Krug shows a complete recorded session to illustrate how much one 20-minute test reveals to people who have never watched one. The first session you watch changes how you design; the point is to start.
For the solo creator

Three people, two hours, one fix list, once a month: that is twelve rounds and thirty-six sessions a year, more than many funded startups manage. If even that is too much, do one session every two weeks. Consistency matters more than sample size.

Common mistakes

Treating five as a magic number

The rule is quoted without its assumptions.

Use five (or three) per audience per round, for finding common problems. Use other methods for rare issues and measurement.

Testing everything at once

You want to get your money's worth, so you write twelve tasks covering the whole app.

Focus each round on one or two flows. Depth on one flow reveals more than skimming ten.

Never retesting fixes

You fix the problem and assume it's solved.

Next round, include the fixed flow. Fixes often create new problems, or only half-work.

Check yourself

Your app has two very different audiences: students taking lecture notes and lawyers drafting documents. You have budget for six sessions this month. Best plan?

Exercise 2.1 20 minutes · planning

Put testing on the calendar

  1. Choose a recurring morning each month for the next six months. Put all six in your calendar now.
  2. For the first date, write which flow you will test and why (recent change, support complaints, or activation drop).
  3. List the audiences your product has. Decide which one the first round is for.
You're done when: six calendar entries exist and the first one has a named flow and audience.
BeginnerCompetentStrong
One date, vague flow ("the app").Six dates; first round has a specific flow and audience.Also a rotation plan for which flows and audiences each month covers.
3

Recruiting cheaply

Taught by Steve Krug, with Erika Hall, Teresa Torres

You need people who can plausibly do the task and who do not know your product's internals; you rarely need perfect matches, so recruit loosely, screen for the few traits that change behavior, and build a standing list so next month is easy.

Krug's advice is to "recruit loosely and grade on a curve": unless your product requires specific domain knowledge, almost anyone who uses similar software will reveal the big problems, and you mentally adjust for people who are less experienced than your real users. What matters most is that participants are not you: not designers or developers who will critique instead of use, and not people who already know how the product works.

The traits worth screening for are the ones that change behavior: Do they do the job your product is for (take notes, track money, read long articles)? Which platform do they use daily? Have they used your product before (and do you want that)? Everything else, such as age or job title, matters far less than founders tend to think.

Cost and effort per participant → Match to real users → Your existing usersbest match, free-ish Communities you belong toforums, Discords, subreddits Friends of friendsquick, loose match Paid panelsscreened, fast, costs Hallway / café5 min tests only Designers & devs
Start top-left. Existing users and communities give the best match for the least money. Paid panels buy speed and screening. Fellow designers and developers are a poor fit at any price for usability testing: they critique instead of using.

Channels, ranked for a solo creator

ChannelHowGood forWatch for
Existing usersAn opt-in line in your welcome email or settings ("Happy to try new features? Join the test list"). Recent sign-ups for onboarding tests.Real tasks, real data, retention questions.Fans over-represented; they already know the product, so they cannot test first-run.
CommunitiesA short, honest post in a forum or Discord you actually take part in. Offer a thank-you.Matching the job (writers, students, developers).Rules on self-promotion. Do not spam.
Friends of friendsAsk five friends to each forward one message.First-run and general usability.Politeness. Keep the session task-based.
Paid panelsServices such as User Interviews, Respondent (often professional and B2B audiences) or Prolific (fast, large pool, mostly for unmoderated tasks and surveys).Specific audiences, quick turnaround."Professional testers" who are too practiced. Use a screener.
Hallway testsAsk someone in a coworking space or café for five minutes, buy them a coffee.Five-second and first-click questions, label checks.Not for long tasks or private data.

A screener in five questions

A screener is a short form that filters participants. Write it so the "right" answer is not obvious, or people will tell you what you want to hear.

Don't

Do you take notes on your phone a lot?

○ Yes

○ No

Leading and binary. Everyone who wants the gift card answers "Yes." "A lot" means nothing.
Do

In the last 7 days, which of these did you do? (choose all)

☐ Wrote a shopping list

☐ Saved a link to read later

☐ Took notes in a meeting or class

☐ None of these

Past behavior, hidden target. Your real criterion (notes in meetings) sits among distractors, with a concrete time window.

Incentives and courtesy

Pay people, or give them something of real value. A gift card, a year of your product, or a donation in their name all work. Amounts vary by country and audience: a small voucher works for a 20-minute consumer session, while professionals (doctors, lawyers, engineers) expect considerably more. Paying is not only fair; it changes the relationship from a favor to a job, which makes people less polite and more honest. Send the thank-you within 24 hours.

For the solo creator

Build a test list once and you will never "recruit" again. Add one opt-in checkbox to sign-up or a line in your welcome email. Keep a simple sheet: name, contact, audience, platform, last tested date. Rest each person for at least three months so they do not become experts. Twenty names is enough for a year of monthly rounds.

Do

  • Screen on behavior in a recent time window.
  • Hide the target answer among distractors.
  • Pay or reward people promptly.
  • Keep a standing test list with "last tested" dates.

Don't

  • Use designers or developers for usability tests.
  • Over-specify demographics that do not change behavior.
  • Reuse the same three people every month.
  • Recruit only fans from your newsletter for first-run tests.

In the wild

  • Continuous interviewingTeresa Torres, "Continuous Discovery Habits", 2021
    Torres recommends automating recruitment, for example with an in-product prompt that invites users to book a short call, so that talking to customers every week does not depend on a fresh recruiting effort each time. Automate the pipeline and the habit survives busy weeks.
  • Beta programsTestFlight on iOS
    Many indie iOS apps keep a TestFlight beta group of engaged users who opted in. A beta group doubles as a recruiting list for tests of new features, though not for first-run tests.

Common mistakes

Recruiting from your own social feed

It's quick, but your followers are disproportionately designers, developers and fans.

Ask for forwards to people outside your circle, or use communities organized around the job, not the craft.

No-shows wreck the morning

Unpaid volunteers forget.

Send a reminder the day before and an hour before; recruit one extra person as a standby; pay or reward.

Screening too tightly

You want "the perfect user" and wait weeks.

Screen for the one or two behaviors that matter. Grade on a curve for the rest.

Check yourself

You're testing the first-run experience of a budgeting app. Who should you recruit?

Exercise 3.1 45 minutes · on your own product

Build your test list

  1. Write a five-question screener using past behavior and hidden targets.
  2. Add an opt-in to your product or welcome email, or write a community post you would be comfortable publishing.
  3. Create the tracking sheet (name, contact, audience, platform, last tested).
  4. Message enough people to fill your first three slots plus one standby.
You're done when: three sessions and one standby are booked for your first test date.
BeginnerCompetentStrong
Booked friends without a screener.Screener with hidden targets; three outside participants booked.Also an automated opt-in that keeps adding people, and a reward plan.
4

Writing tasks that don't give the answer away

Taught by Steve Krug, with Jakob Nielsen, Erika Hall

A good task gives a realistic goal and the motivation behind it, in the user's words, and never names the button, label or path you want them to find; a bad task is an instruction in disguise.

The task is the most powerful lever in a usability test, and the easiest to ruin. If your task says "Use the Collections feature to group your notes," you have told the participant the feature exists, what it is called and roughly what it does. They will scan for the word "Collections," find it, and succeed. You will learn that people can match words. You will not learn whether anyone would ever think to group notes, or where they would look.

A good task is a scenario: a short story with a goal and a reason, like real life. "You're preparing for three exams next week and your notes for each subject are mixed together. Get them organized so you can revise one subject at a time." Now the participant has to translate a real need into your interface, which is exactly what real users do.

Anatomy of a scenario task You're flying to Pune on Friday and want to read the three articles you saved this week on the plane, where there's no Wi-Fi. Get them ready. context goal constraint / why end state Never says: "download", "offline", "sync", "Reading List", or which tab. You know they're done when the three articles open in airplane mode.
Four parts, no interface words. Context makes it real, the goal gives direction, the constraint creates the actual design question (offline), and the end state lets you judge success objectively.

Bad and good pairs

Instruction (bad)Scenario (good)What changed
Click "Add Expense" and enter ₹450 for lunch.You just paid ₹450 for lunch with a colleague. Make sure it shows up in this month's spending.Removed the button name and the path.
Go to Settings and turn on Dark Mode.You read in bed at night and the screen feels too bright. Make it more comfortable.Removed the location and the solution; the participant may also try brightness or a reading theme, which is useful to know.
Find the export feature.Your editor wants your draft as a Word document by tonight. Send it to her.Added a real end state with a format; reveals whether people find export at all, and the format choice.
Do you understand what Collections are?(Show home screen.) What do you think you can do here? What would you try first?A yes/no comprehension question becomes an open, observable one.
Try out the new search filters.Last week you saved an article about sleep, but you can't remember the title. Find it."Try out" has no end state; the scenario has a specific target you plant in the test data.
Lab: does this task lead?

Judge each task wording. Score: 0 of 6.

Mark each wording as leads (gives the answer away or is not a real task) or fair (a scenario that lets you observe). Read the feedback even when you are right.

More rules for tasks

  • Plant the data. If the task is "find the article about sleep," make sure a test account contains it, among realistic decoys.
  • Order tasks like real life: sign up before you organize. But put a task you most care about early, in case time runs out.
  • Allow multiple right paths. Write down what counts as success before the session, not during.
  • Hand tasks over on paper or in chat so the wording is identical for each person and they can re-read it.
  • Let participants invent one task: "What would you normally do with an app like this? Show me." Their own task is often the most revealing.
  • Pilot the tasks on anyone (even a friend) before the real session, to catch ambiguous wording.

Do

  • Write a reason and an end state for every task.
  • Use the user's vocabulary, not your interface's.
  • Decide success criteria in advance.
  • Pilot once.

Don't

  • Name buttons, tabs, menus or features.
  • Ask "can you find…" or "try out…" with no goal.
  • Ask yes/no comprehension questions.
  • Write more tasks than fit in 30 minutes.

In the wild

  • Krug's sample test script"Rocket Surgery Made Easy", 2010
    Krug provides a word-for-word script, including how to hand over tasks on separate slips so each participant hears exactly the same thing. Consistency across sessions is what lets you compare them.
  • Nielsen Norman Grouparticles on task writing
    NN/g repeatedly warns against tasks that contain words from the UI, because participants "word-match" instead of thinking. Leaking a label turns a test of understanding into a test of reading.

Common mistakes

The label leak

You think in your interface's vocabulary, so it slips into tasks.

After writing, highlight every word that also appears in your UI. Replace each with the user's word for the goal.

Tasks with no end

"Explore the dashboard" feels open and friendly.

Every task needs a moment when the participant (and you) knows it is done.

Fantasy scenarios

"Imagine you're a CEO with 400 employees…" makes people role-play, badly.

Pick scenarios that fit the participant's real life; screen for it, or let them adapt details.

Check yourself

You want to know if people notice your new "Focus" mode that hides everything but the current paragraph. Best task?

Exercise 4.1 40 minutes · on your own product

Write and de-leak five tasks

  1. Write five tasks for the flow chosen in Exercise 2.1.
  2. Highlight every word that appears in your interface. Rewrite each task to remove them.
  3. Add context, goal, constraint and end state to each.
  4. Write the success criteria for each task in a separate column, including alternative valid paths.
  5. Pilot with one person and fix any wording that confused them.
You're done when: five scenario tasks with zero UI words, each with written success criteria, piloted once.
BeginnerCompetentStrong
Tasks still contain UI words or lack end states.Clean scenarios with end states and success criteria.Also planted test data, a participant-invented task slot, and an order that protects the most important task.
5

Moderating without leading

Taught by Steve Krug, with Clayton Lewis, Jakob Nielsen, Erika Hall

Your job in the session is to make the participant comfortable thinking out loud, then get out of the way: neutral prompts, no hints, no defending, and every question answered with a question.

Thinking aloud is the core technique: you ask participants to say what they are looking at, what they are trying to do and what they expect, as they go. It was brought into usability work at IBM by Clayton Lewis in the early 1980s, and Nielsen has called it the single most valuable usability engineering method. It works because it externalizes the participant's mental model at the moment of action: "I'd expect this to be under the menu… no… maybe this gear?" is pure gold, and you would never get it from a later interview.

Thinking aloud is unnatural, so you have to teach it gently at the start and prompt it during the session without steering. The hardest discipline for a solo creator is silence. You built this. When they struggle, every instinct says help. Don't. The struggle is the finding.

The session shape

Welcome Warm-up Qs Tasks, thinking aloud Debrief ✓ 4 min 5 min about 25 min 8 min "We're testing the app, not you. You can't do anything wrong here." Consent and recording are confirmed in Welcome, before anything else.
Most of the time goes to tasks. The warm-up questions ("How do you take notes today?") relax people and give context. The debrief is where you may finally ask why, and explain things.

Phrases to use and to avoid

SituationAvoid (leads or helps)Use (neutral)
Participant goes quiet"Are you looking for the export button?""What are you thinking right now?" or "What are you looking for?"
Participant asks "Should I click this?""Yes, go ahead.""What would you do if I weren't here?"
Participant asks what something does"That syncs your notes.""What do you think it does?"
Participant completes the task"Great job! Perfect!""Thanks. Let's move to the next one." (Praise only success and they'll fear failing.)
Participant fails or gives up"Oh, it's actually right here.""That's really useful, thank you. Where did you expect it to be?"
Participant blames themselves"Don't worry, most people get it.""You're helping us find where the app is unclear; that's exactly what we need."
Asking for opinion"Isn't that easier than other apps?""How did that compare with what you expected?"
The same moment, two moderators

Hmm. I want to send this to my editor… I'm not sure where.

Did you see the share icon at the top?

Oh! Yes, there. OK, Word document. Done.

Great! That was pretty easy, right?

Yeah, really easy.

Leading: one hint and one loaded question produce a "really easy" success. You learn nothing, and your notes now say export is easy.

Remote, in person and unmoderated

How: a video call with screen share (any tool you and they already use). For phone apps, ask them to share their phone screen, or join from the phone while a laptop camera points at it.

Strengths: anyone, anywhere; they use their own device and setup, which is more realistic; easy to record. Weaknesses: you miss body language and off-screen behavior; connection problems eat time. For a solo creator this is the default.

Recording and consent

Ask before you record, in writing and again on the call. Tell people exactly what you record (screen, voice, face), who will see it (you), how long you keep it, and that they can stop at any time and still get the thank-you. Never test with their real private data unless they offer; prepare a demo account instead. If you want to quote someone publicly, ask separately. Under laws like the EU's GDPR and India's Digital Personal Data Protection Act (2023), recordings of people are personal data, so keep them only as long as you need them and delete them on schedule. When in doubt, take notes instead of recording.

Don't
REC 00:00 Recording before anyone has agreed
Surprise recording. It breaks trust and, in many places, the law. People who feel watched also behave less naturally.
Do
Before we start • I'll record screen and voice only • Only I watch it; deleted in 60 days • Stop any time; you're still thanked OK to record Notes only
Plain, specific, reversible. Three facts, a real alternative, and recording starts only after a yes.
For the solo creator

You are moderator and note-taker at once, which is hard. Three tricks: record (with consent) so you can re-watch the moments you missed; keep notes to timestamps plus a few words ("12:40 tapped gear, expected help"); and leave 15 minutes between sessions to expand your notes while memory is fresh. Resist the urge to fix bugs between sessions in the same morning: keep the conditions identical.

Do

  • Say "we're testing the app, not you" at the start.
  • Answer questions with questions.
  • Count to ten silently before rescuing anyone.
  • Save your own explanations for the debrief.

Don't

  • Praise success or sigh at failure.
  • Defend or explain the design during tasks.
  • Ask "would you use this?"
  • Record without explicit consent.

In the wild

  • Krug's test script"Rocket Surgery Made Easy", 2010
    The script opens by reassuring the participant that they can't do anything wrong and asking them to think out loud, and it is freely shared so anyone can reuse it. Borrow a proven script rather than improvising your welcome.
  • Nielsen Norman Group"Thinking Aloud: The #1 Usability Tool", 2012
    The article argues thinking aloud is cheap, robust and flexible enough for any stage, and that even inexperienced facilitators get useful results. You do not need training to start; you need restraint.

Common mistakes

Rescuing too soon

Silence feels rude and you hate watching people struggle with your work.

Decide a rule in advance: rescue only after two minutes of being stuck, or if they're distressed. Then mark the task as failed, help, and move on.

Turning it into an interview

You're curious, so you ask "why?" after every click.

Keep "why" questions for the debrief; during tasks, only prompt them to keep talking.

Defending the design

Criticism of your product feels personal.

Respond to every criticism with "thank you, tell me more." Write it down. Decide later, calmly.

Check yourself

Mid-task, the participant says: "Is the tag thing the same as a folder?" What do you say?

Exercise 5.1 60 minutes · practice

A practice session on someone else's product

  1. Pick an app you don't make (a banking or travel app works well). Write two scenario tasks.
  2. Run a 15-minute think-aloud session with a friend, recording audio with consent.
  3. Listen back and tally every time you spoke during a task. Mark each as neutral or leading.
  4. Rewrite each leading line as a neutral one using the table above.
You're done when: you have a tally of your interventions and a rewritten list of every leading line.
BeginnerCompetentStrong
More than five interventions, several leading.Few interventions, mostly neutral prompts.Near silence during tasks; every question reflected back; a rich debrief.
6

Notes, severity and synthesis

Taught by Jakob Nielsen, with Tomer Sharon, Steve Krug

A test is only worth what you write down and act on: capture behavior with timestamps, rate each problem by frequency, impact and persistence, lay the findings out so patterns jump out, and fix the few most serious ones with the smallest change that works.

Sessions produce a fog of impressions. By lunchtime you will remember the funniest moment and the participant who agreed with you, and forget the quiet hesitations that matter most. The cure is structure: one note format for every session, one rating scale for every problem, one sheet where all findings meet.

A note-taking template

Note what you saw and heard, separately from what you think it means. Mixing them is how bias creeps in.

TimeTaskObserved (did)Said (quote)My interpretation
04:10T1 offlineScrolled article, opened ⋯ menu, closed it"I thought there'd be a download"Download is not in the ⋯ menu where she expects it
05:30T1 offlineOpened Settings, found "Sync", toggled it"Maybe this?""Sync" read as "save to phone"; wrong model
07:02T1 offlineGave up"I'd just screenshot it"Task failed; workaround exists (screenshot)

Rating severity

Nielsen's severity scale, published in the mid-1990s alongside his heuristic evaluation work, combines three factors: frequency (how many users hit it), impact (how hard it is to overcome) and persistence (whether it bites once or every time). He also mentioned market impact, which for you means: does it touch your core promise?

RatingMeaningExample
0Not a usability problem at allOne person disliked the font color
1Cosmetic: fix if there's timeInconsistent capitalization in menus
2Minor: low priorityUsers hesitate on an icon but figure it out
3Major: important, high priorityMost users can't find offline download without help
4Catastrophe: fix before releaseUsers lose their writing when the app is backgrounded
Lab: severity calculator

A teaching heuristic, not an official formula: Nielsen's scale is a judgment call. The calculator shows how the factors trade off, so your judgment becomes consistent. Data or trust loss jumps straight to the top regardless of frequency.

Synthesis: the rainbow spreadsheet

Tomer Sharon, then a researcher at Google, described the rainbow spreadsheet in a 2013 Smashing Magazine article: one row per observation, one column per participant, a colored cell where that participant showed that behavior. It was designed for teams watching together, but it is just as useful alone, because it turns a pile of notes into a picture of patterns. Rows with many filled cells are your common problems; single cells are anecdotes worth watching.

Observation P1P2P3P4P5Sev Looked for download in the ⋯ menu 3 Read "Sync" as "save to this phone" 3 Liked the reading font (said so) – Missed the swipe-to-archive gesture 2 Expected highlights to sync to email idea Tapped share icon expecting export 2 failure friction positive idea / request
Patterns become visible as color density. The top two rows are your fixes for next month. "Liked the font" is nice but changes nothing. A single "idea" cell goes in a parking lot, not on the roadmap.

Fixing the right things

Not every problem deserves a fix, and not every fix deserves a redesign. Krug's guidance: focus ruthlessly on the most serious problems, and prefer the smallest change that solves them (a label, a default, moving one control) over a rebuild, because tweaks are cheap to test again next month and rebuilds introduce new problems. Plot what you found on severity versus effort.

Do nowRename "Sync" → "Back up"Add "Download" to ⋯ menu Plan itReal offline mode with storagemanagement (needs design) Batch with next passHint for swipe on first use Park itEmail sync for highlights high severity low low effort high effort
Top-left first, always. High severity and low effort is the best return on a solo week. High-severity, high-effort work goes into planning, but often a small change can relieve it in the meantime (rename "Sync" while you design real offline).
For the solo creator

Do the synthesis the same day, before you open your code editor. The temptation is to start fixing the first bug you saw at 9:15. Instead, fill the sheet, rate severity, pick the top three, write them as issues with the evidence attached ("3 of 3 looked in ⋯ menu, see 04:10"). Then fix. The evidence line will matter in three months when you wonder why you moved that button.

Checklist: test plan for one morning

A week before
Materials
On the day
After

Do

  • Separate observation from interpretation in your notes.
  • Rate severity on the same scale every round.
  • Synthesize the same day.
  • Fix the top few with the smallest change that works.

Don't

  • Rely on memory of "how it went."
  • Fix the most interesting problem instead of the most severe.
  • Turn every feature request into a backlog item.
  • Redesign a whole screen to solve one label problem.

In the wild

  • Rainbow spreadsheetTomer Sharon, Smashing Magazine, 2013
    Built so observers could fill it together during sessions and leave with shared conclusions, avoiding a slow report. Synthesis can be visual and fast; a report nobody reads is not the goal.
  • Krug's debrief"Rocket Surgery Made Easy", 2010
    Krug recommends a short debrief over lunch where each observer names the most serious problems they saw, followed by agreement on what to fix before next month. Limit the fix list. Small lists get done.

Common mistakes

Counting quotes instead of behaviors

Quotes are memorable and easy to write down.

Make "Observed" the first column. A quote without matching behavior is weak evidence.

Severity inflation

Everything feels urgent right after watching people struggle.

Rate the next morning, with the scale in front of you. Only data or trust loss is automatically a 4.

The 40-item fix list

You want to fix everything you saw.

Pick three. The rest stay in the sheet; many will vanish once the top issues are fixed.

Check yourself

Two problems: (A) 1 of 5 participants lost an unsaved draft when switching apps; (B) 4 of 5 hesitated briefly at an ambiguous icon, then figured it out. Which do you fix first?

Connect the ideas · Part two recap

Look back at Diagnostic 3 in the warm-up. A participant hesitated ten seconds, then called the app "really easy." Using Part two, what is the complete right response?

Exercise 6.1 One morning plus 90 minutes · on your own product

Run your first full round

  1. Run three sessions using your tasks from Exercise 4.1 and the checklist above.
  2. Within the same day, build a rainbow sheet: rows for observations, columns for participants.
  3. Rate every row 0 to 4. Compare with your predictions from Exercise 1.1.
  4. Plot the severity-3-and-up problems on severity versus effort. Pick three fixes.
  5. Write each fix as an issue with the evidence line attached.
You're done when: three sessions are done, a rainbow sheet exists, three issues with evidence are in your tracker, and you've written one sentence on how your predictions compared.
BeginnerCompetentStrong
Sessions run; findings remembered, not recorded.Rainbow sheet, severity ratings, three evidence-backed issues.Also a prediction-accuracy note and a smallest-change fix for each issue, scheduled for retest.
Part three

Testing before it's built

The cheapest time to find a problem is before you write the code. Two chapters on testing sketches, prototypes and structure, and on the quick, narrow methods that answer one question each in an afternoon.

7

Prototype testing at every fidelity

Taught by Carolyn Snyder, with Bill Buxton, Jake Knapp

Match the fidelity of the prototype to the question you're asking: paper for structure and concept, clickable mockups for flow and labels, coded prototypes for feel, speed and real data; higher fidelity costs more and makes people critique polish instead of ideas.

Fidelity is not a ladder you must climb in order. It is a set of tools, each good at answering certain questions. Carolyn Snyder's Paper Prototyping (2003) showed that a hand-drawn interface, with a person playing "computer" by swapping paper screens, finds many of the same problems as a working product, at a fraction of the cost. Bill Buxton's Sketching User Experiences (2007) argued that sketches invite critique because they look unfinished: people feel free to say "this is wrong" to a drawing in a way they never will to a polished screen.

Save Save Save ✓ saved 0.2s Paper Clickable Coded concept, structurewhat goes whereminutes to change flow, labels, ordernavigation pathshours to change feel, speed, gesturesreal data, edge casesdays to change ← people critique ideas · people critique polish →
Fidelity is a choice of question. Paper answers "does this make sense?" Clickable answers "can they get through it?" Code answers "does it feel right with real content?"

What each level can and cannot tell you

LevelTests wellCannot testSolo tip
Paper / sketchConcept, what's on each screen, rough order, vocabularyScrolling, timing, gestures, visual hierarchy detailsDraw on index cards; you play the computer. Works in a café in 15 minutes.
Clickable mockup (Figma, Keynote, HTML)Flow, labels, navigation, first-click choicesReal data, performance, text input, errorsWire only the "happy paths" for your tasks; dead links are fine if you say so.
Coded prototypeFeel, animation, speed, real content length, edge casesNothing is off-limits, but it is expensive to throw awayPrototype in a branch with fake data. Many solo creators design in code; that's fine if you test before polishing.
Live product (beta flag)Real behavior over days, retention, habitsWhy things happen (pair with interviews)Ship behind a flag to your test list first.
Don't
Lorem ipsum dolorsit amet consectetur Button
Polish with fake content. Participants comment on the yellow, not the flow, and lorem ipsum hides the real comprehension problems your words will cause.
Do
Saved (3) Why we sleep less…The case for slow…A guide to Kyoto… Read offline
Rough form, real words. Grey boxes invite honest critique; real titles and real labels test what matters: comprehension and flow.
For the solo creator

If you think in code, a "coded sketch" is fine: a throwaway HTML page with real words, no styling, wired with plain links, built in an hour. The rule is not "never code before testing," it is "never polish before testing." Keep prototypes in a separate folder so you're not tempted to ship them. For deeper prototyping practice see The Solo Practice.

Do

  • Pick the lowest fidelity that can answer your question.
  • Use real words and realistic content at every level.
  • Tell participants the prototype is rough and that's on purpose.
  • Throw prototypes away without guilt.

Don't

  • Polish visuals before the flow is tested.
  • Test gestures or performance on paper.
  • Use lorem ipsum in a usability test.
  • Ship a prototype's code because it's "almost done."

In the wild

  • Google Ventures design sprintJake Knapp, "Sprint", 2016
    The sprint builds a realistic-looking "facade" prototype in one day (often in Keynote) and tests it with five customers on the last day. A prototype only needs to be real enough for the questions you're asking.
  • The Palm Pilot wooden blockJeff Hawkins, 1990s
    Hawkins famously carried a block of wood the size of the planned device in his pocket, "using" it in meetings to test whether the form and core tasks fit daily life. The lowest fidelity can test the biggest question: does this fit into a life?

Common mistakes

Too high, too early

Polished tools make polish the default.

Start every new feature in grayscale with system fonts. Add visual design only after one round of testing.

Testing a prototype that can't fail

Only the correct path is wired, so every click "works."

Wire plausible wrong paths to a "not built yet, where did you expect to go?" screen and log them.

Check yourself

You're unsure whether a new swipe-between-chapters gesture in your reader feels natural. Which prototype?

Exercise 7.1 60 minutes · on your own product

Paper-test your next feature

  1. Choose the next feature on your list. Write the one question you're least sure about.
  2. Sketch the 3 to 5 screens on index cards with real words.
  3. Run two 10-minute sessions playing "computer," with one scenario task.
  4. Change the sketches between sessions if something clearly fails (allowed at this fidelity).
You're done when: you have tested sketches twice and written what changed and why, before writing code.
BeginnerCompetentStrong
Sketches shown and discussed, not tested with a task.Two task-based sessions; sketches revised.Also the open question answered with evidence and a decision on the next fidelity.
8

Quick methods: first-click, five-second, preference, tree tests, card sorts

Taught by Bob Bailey & Cari Wolfson, with Donna Spencer, Jared Spool

Each quick method answers one narrow question with less effort than a full usability test; pick by question: where do they click first, what do they remember, which do they understand, where would they look, how do they group things.

Full sessions are rich but slow. Quick methods trade richness for speed and numbers: many of them run unmoderated, with 20 to 50 participants, in a day. They are best used to settle a specific design question before or between usability rounds.

First-clickWhere first? 5 s Five-secondWhat sticks? AB PreferenceWhich, and why? HomeLibraryOffline ✓Settings Tree testWhere would you look? Card sortHow do they group? Typical sample: 20 to 50 people, unmoderated, results in a day. Tools: Lyssna (formerly UsabilityHub), Maze, Optimal Workshop (Treejack, OptimalSort). Free version: a shared image plus a form, or 5 minutes in a café with a printout. They tell you what happens. A usability session still tells you why.
Five methods, five questions. Choose by the question you have, not by the tool you happen to subscribe to.

First-click testing

Show a screen and a task ("Where would you click to read this article offline?"), record only the first click. Research by Bob Bailey and Cari Wolfson found that when people's first click was correct, they went on to complete the task about 87% of the time, against about 46% when the first click was wrong. The first click predicts the rest. That makes first-click tests a cheap check on labels and layout, especially navigation and home screens.

Five-second tests

Show a screen for five seconds, hide it, ask: "What was this page for? What do you remember?" It tests whether the purpose and the main hierarchy come through at a glance, which is exactly what a landing page or an empty home screen must do. If people remember your decorative illustration and not what the product does, your hierarchy is upside down (see Visual Design). It cannot test usability; nobody uses anything in five seconds.

Preference tests (with caveats)

Show two or more designs and ask which people prefer and why. Useful for tone and aesthetic direction (two icon styles, two onboarding illustrations). Dangerous for anything about usability: people prefer what looks familiar and attractive, and their preference does not predict which one they can use. Always ask a comprehension question first ("What do you think this button does?"), then the preference, and treat the "why" answers as more valuable than the vote.

Don't
"Which design is better?" AB 62%38% Ship A? You know nothing about use.
A vote on looks. "Better" is undefined. The winner may be the prettier one that nobody understands.
Do
1. What happens if you tap ⤓? A: 18/25 "downloads it"B: 9/25 "downloads it" 2. Which feels calmer? Why? B 15/25: "less clutter","softer colors" Decision: A's icon, B's palette.
Comprehension, then taste, then reasons. You can combine the clear icon from one with the calm look of the other.

Tree testing

Strip your navigation down to a text hierarchy (no visual design at all) and ask people where they would go to do a task. It isolates your information architecture from your layout. If people can't find "Offline reading" in a bare tree, no amount of icon polish will save it. Tools like Optimal Workshop's Treejack automate it; you can also do it with a nested list on paper. Watch two numbers: success (did they end in the right place?) and directness (did they get there without backtracking?).

Card sorting

Give people cards with your content or features on them and ask them to group the cards and name the groups. In an open sort they invent the groups, which reveals their mental model and vocabulary. In a closed sort you supply the group names and see whether your categories make sense. Donna Spencer's Card Sorting (2009) is the standard guide. Use open sorts early, when you're designing navigation; use tree tests afterwards to check the structure you built. For more on structure itself see Structure & Interaction.

Your questionMethodSample
Will people find X from this screen?First-click test20 to 40
Does the page say what it's for?Five-second test20 to 30
Which visual direction feels right?Preference test with reasons25 to 50
Is my menu structure findable?Tree test30 to 50
How do people group my features?Open card sort15 to 30
Why do they fail?Moderated usability test3 to 5
For the solo creator

You can run a scrappy version of all five for free: post a screenshot in a community you belong to with "Where would you tap to…? Reply before reading others," or hand a printout to five people at a café. The answers will be noisier than a panel's but still decisive when the result is lopsided, which it usually is when something is truly unclear.

Do

  • Match the method to one specific question.
  • Ask comprehension before preference.
  • Use tree tests to check navigation without visual design.
  • Follow up surprising results with a moderated session.

Don't

  • Use preference votes to decide usability questions.
  • Use a five-second test to judge a workflow.
  • Treat quick-test percentages as precise with 20 people.
  • Run a card sort with your internal feature names.

In the wild

  • Lyssnaformerly UsabilityHub, renamed 2023
    Offers five-second, first-click, preference and design-survey tests with an optional participant panel. These methods are commodities now; the skill is asking the right question.
  • Optimal WorkshopTreejack, OptimalSort
    Popularized online tree testing and card sorting with success and directness metrics and similarity matrices. Test structure separately from screens.

Common mistakes

Asking "which do you like?" about usability

It's the easiest question to write.

Ask what something does, or where they'd click, before any preference.

Card-sorting with jargon

Cards use your feature names, so people sort words they don't understand.

Write cards as plain descriptions of content or tasks.

Treating quick tests as final

A clean number feels conclusive.

Use quick tests to narrow options; confirm the winner in a task-based session.

Check yourself

You're redesigning the settings of your app, which has grown to 40 options. You want a structure people can navigate. Best sequence?

Exercise 8.1 45 minutes · on your own product

A first-click test for your home screen

  1. Write five scenario tasks that start from your home screen.
  2. Run a first-click test with at least 10 people (a tool, or a printout and a pen).
  3. Plot the clicks on a copy of the screen. Mark the correct target for each task.
  4. For any task under 70% correct first clicks, write a hypothesis for why.
You're done when: you have a click map for five tasks and a hypothesis for each weak one.
BeginnerCompetentStrong
Fewer than 10 people; tasks leak labels.10+ people, clean tasks, click map, hypotheses.Also a revised screen re-tested with new people, showing improvement.
Part four

Expert eyes: reviewing your own work

Between test rounds you are alone with your product. These three chapters give you structured ways to see it critically without participants: Nielsen's ten heuristics, the cognitive walkthrough, and a set of self-critique habits that make your own eyes fresher. They complement user testing; they never replace it.

9

Nielsen's ten heuristics, in depth

Taught by Jakob Nielsen & Rolf Molich, with Don Norman

Ten broad rules of thumb, distilled from hundreds of real usability problems, let you inspect any interface and catch many common problems without users; each one is a lens that makes a category of failure visible.

Jakob Nielsen and Rolf Molich introduced heuristic evaluation in 1990. In 1994 Nielsen refined the list by analyzing 249 usability problems and finding the set of principles that explained them best. The ten have barely changed since (NN/g refreshed the wording in 2020), because they describe how people work, not how technology looks. They also echo Norman's principles from The Design of Everyday Things: feedback, mapping, constraints, conceptual models (see Foundations and The Human Mind).

Nielsen also found that a single evaluator catches only a fraction of the problems (around a third, in his studies), and that several evaluators working independently find far more, because different people notice different things. You are one evaluator. That's a reason to use the heuristics as a structured lens, do several passes, and still test with users.

1 · Visibility of system status

The system should always tell people what is going on, through timely feedback. Every action needs an answer: "I heard you," "I'm working," "Done," or "That failed." Silence makes people tap again, wait anxiously, or leave. Rough timing guide: under 0.1 s feels instant; up to about 1 s keeps flow without a spinner; beyond a few seconds needs progress (see Motion & Feel).

Don't
8 photos selected Upload …nothing
Did it work? No change after the tap. People tap again and upload twice, or leave mid-upload.
Do
Uploading 3 of 8 About 20 s left · safe to leave this screen
Count, progress, reassurance. The person knows it's working, how long, and whether they can move on.

2 · Match between the system and the real world

Speak the user's language: words, concepts and order that are familiar to them, not to your database. Internal names (entity, sync conflict, workspace object) leak in because you see them every day in code. Order should follow the real-world task: a recipe app lists ingredients before steps.

Don't
E409: sync_conflict Entity note#4821 rev mismatch (local 17 / remote 18) Resolve
Your database's language. True, precise, and meaningless to a person who just wants their note.
Do
Edited on two devices "Trip plan" changed on your laptop and this phone. Keep both? Compare Keep both
Their world. Names the note, the devices and the choice in words they already use.

3 · User control and freedom

People act by mistake all the time. They need a clearly marked "emergency exit": undo, cancel, back, close, without a long process. Undo is better than confirmation dialogs, because people click through confirmations automatically but can always recover with undo (see Structure & Interaction).

Don't
12 notes permanently deleted. This cannot be undone. OK
No way back. A mis-selected bulk action destroys work, and the only button acknowledges the loss.
Do
12 notes moved to TrashUndo
Instant exit. The action happens without friction, and a one-tap undo covers mistakes; Trash covers late regrets.

4 · Consistency and standards

People should not wonder whether different words, positions or actions mean the same thing. Two kinds: internal consistency (your app agrees with itself) and external (it follows platform conventions, which Nielsen elsewhere calls Jakob's Law: users spend most of their time in other products). Follow the platform unless you have a strong reason not to (see Systems & Platforms).

Don't
Save OK Done
Three answers to one question. Different words, places and styles for the same action force people to re-learn each screen.
Do
Save Save Save
One word, one place, one style. After the first screen, people stop looking and just act.

5 · Error prevention

Better than a good error message is a design that prevents the error. Norman distinguishes slips (right goal, wrong action, like tapping Delete instead of Save) from mistakes (wrong goal from a wrong mental model). Prevent slips with spacing, constraints and good defaults; prevent mistakes with clear previews and explanations.

Don't
Delete Save
A slip waiting to happen. Destructive and primary actions are twins, four pixels apart.
Do
Delete note Save
Distance and difference. Delete is far away, quieter, and colored for danger; the primary action is unmistakable.

6 · Recognition rather than recall

Minimize what people must remember. Show options, recent items and examples instead of expecting them to remember commands, codes or what was on the previous screen. Working memory is small (see The Human Mind); every "remember this" is a tax.

Don't
Date format Enter format string See docs for codes (%d, %b, %Y…)
Recall required. Users must remember format codes from somewhere else.
Do
Date format 1 Nov 2026 01/11/2026 2026-11-01
Recognition. Each option shows today's date in that format. Choosing is seeing.

7 · Flexibility and efficiency of use

Shortcuts, hidden from novices, speed up experts. The best designs let the same person grow: menus show keyboard shortcuts next to commands, so people learn them by using the menu. Command palettes (⌘K) serve both: novices search in words, experts type three letters.

Don't
File Export Format PDF
One path for everyone. The fiftieth export takes as long as the first.
Do
exp| Export as PDF⇧⌘E Export as Markdown
Both speeds. Search in words now; the shortcut beside it teaches the faster path for next time.

8 · Aesthetic and minimalist design

Every extra unit of information competes with the relevant ones and reduces their visibility. This is not "make it pretty" or "make it empty": it is "make what matters win." Rams's "less, but better" and Tufte's data-ink ratio are the same idea (see Visual Design).

Don't
NEW! Try Pro free · Rate us ★★★★★
Everything shouts. Badges, banners and tiles bury the one thing the person came to do.
Do
Continue reading The case for slow mornings Why we sleep less8 min A guide to Kyoto12 min
One clear next step. The main job (keep reading) wins; everything else steps back.

9 · Help users recognize, diagnose and recover from errors

Error messages should be in plain language, say precisely what went wrong, and suggest a fix, right where the problem is. Keep what the person typed. For the words themselves, see Words.

Don't
Invalid input. Please try again. Phone Email
Blame without a clue. Which field? What's wrong? And everything typed is gone.
Do
Phone98765 4321 Needs 10 digits; this has 9. Email
Where, what, how to fix. The message sits by the field, explains the rule and keeps the input so the fix is one keystroke.

10 · Help and documentation

Ideally nothing needs explaining. When it does, help should be easy to search, focused on the person's task, short, and available in context, at the moment of need.

Don't
Sync rulesHelp → Manual User Manualv3.2 · 80 pages
Help as homework. The answer exists, on page 47, in a separate document.
Do
Sync rules? Choose which folders copy to thisdevice. Others stay online only.More about sync →
In context, in two sentences. The answer appears where the question arises, with a path to more.

Practice: spot the violations

Lab: heuristic spotting game

Click anything that violates a heuristic. 0 of 6 found.

    Six violations are hidden in this export screen, plus a few elements that are fine. Before clicking, try naming the heuristic in your head. Real screens rarely have one problem at a time.
    #HeuristicAsk yourself
    1Visibility of system statusAfter every action, does the screen answer within a second?
    2Match with the real worldWould a user say these words out loud?
    3User control and freedomCan I undo, cancel or go back from here?
    4Consistency and standardsDoes this work like the rest of my app and the platform?
    5Error preventionWhat's the easiest wrong thing to do here, and can I make it harder?
    6Recognition rather than recallDo I need to remember anything from elsewhere?
    7Flexibility and efficiencyIs there a faster path for the 100th time?
    8Aesthetic and minimalist designWhat on this screen does not help the main task?
    9Recover from errorsDoes every error say what, why and how to fix, in place?
    10Help and documentationIf someone is stuck here, where is the answer?
    Watch out

    Heuristics find violations of rules, not failures of purpose. A screen can pass all ten and still solve the wrong problem, or be confusing in a way no heuristic names. Heuristic evaluation also produces false positives: "violations" that don't bother real users. Use it to clean up before testing, not to replace testing.

    Do

    • Review one heuristic at a time across the whole flow.
    • Record each issue with the heuristic, location and severity.
    • Use heuristics to tidy up before a test round.
    • Learn the "ask yourself" questions by heart.

    Don't

    • Treat a clean heuristic review as proof of usability.
    • Argue about which heuristic an issue "belongs to"; the issue matters, not the label.
    • Fix every cosmetic violation before the severe ones.
    • Break platform conventions in the name of minimalism.

    In the wild

    • Gmail Undo SendGoogle, a Labs experiment from 2009, a standard setting since 2015
      A short delay before sending lets people pull back an email, turning an irreversible action into a reversible one. Heuristic 3 can be solved with time instead of dialogs.
    • Command palettesSublime Text, VS Code, Linear, Raycast, Figma
      A single search box that runs any command, often listing its shortcut. Heuristics 6 and 7 at once: recognition for novices, speed for experts.
    • Stripe's form validationStripe Checkout and Elements
      Card fields format numbers as you type, detect the card brand, and flag problems inline next to the field. Heuristics 1, 5 and 9 designed together reduce errors and make the rest easy to fix.

    Common mistakes

    Reviewing screens, not flows

    Screenshots are easy to review one by one.

    Walk through real tasks; many violations (status, undo, consistency) appear only between screens.

    Heuristic theater

    A long list of violations feels productive.

    Rate severity and fix the top few. A report with 60 cosmetic items helps no one.

    Minimalism that hides function

    Heuristic 8 gets read as "remove things."

    Remove what doesn't serve the task; keep labels and status that do. Hiding Undo is not minimalism.

    Check yourself

    Your writing app autosaves silently. In tests, people keep pressing ⌘S and asking "is this saved?" Which heuristic, and what's the smallest fix?

    Exercise 9.1 30 minutes · on a product you use daily

    One violation per heuristic

    1. Pick an app you use every day that you did not make.
    2. Find one clear example of each heuristic being violated, and one example of each being done well.
    3. Screenshot or sketch each. Write one sentence on the fix for each violation.
    You're done when: you have 20 annotated examples (10 violations, 10 good) and a one-line fix for each violation.
    BeginnerCompetentStrong
    Examples for half the heuristics; vague fixes.All ten, with specific fixes.Also notes where a fix for one heuristic would break another, and how you'd balance them.
    10

    Expert review and the cognitive walkthrough

    Taught by Cathleen Wharton, John Rieman, Clayton Lewis & Peter Polson, with Rick Spencer

    A heuristic review asks "what rules does this break?"; a cognitive walkthrough asks, step by step, "would a first-time user know what to do here, and would they know it worked?"; together they let you inspect your own product with structure instead of vibes.

    The cognitive walkthrough was developed in the early 1990s by Clayton Lewis, Peter Polson, Cathleen Wharton and John Rieman, and published as a practitioner's guide in 1994. It is built on a theory of exploratory learning: new users don't read manuals; they try things that look like they lead toward their goal. So for each step of a task, you ask four questions on behalf of a new user:

    1 Will they try to do this? Does the user's goal lead themto want this step at all? 2 Will they see the control? Is the right action visible andnoticeable, not hidden? 3 Will they connect it? Will they recognize that thiscontrol does what they want? 4 Will they see progress? After acting, does feedback showthey're closer to the goal?
    Four questions, every step. A "no" to any one is a likely failure point. Rick Spencer's 2000 "streamlined" version cuts it to two questions (will they know what to do? will they know they did the right thing?) so it fits real schedules.

    A worked example

    Task: "Save this article to read offline on the plane." User: a new user, comfortable with phones, never used this app. Correct path: tap ⋯ → "Keep on device".

    StepQ1 Try?Q2 See?Q3 Connect?Q4 Progress?Story
    Tap ⋯ on the articleYesYesMaybeYesA ⋯ menu is a common place to look for "more actions," but nothing hints offline lives there.
    Tap "Keep on device"YesYesNo–"Keep on device" doesn't match "offline" or "download," the words people think in. Failure likely.
    See the result–––NoNo visible change; a small icon appears in the list only after returning. User won't be sure it worked.

    Two concrete fixes fall straight out: rename to "Download for offline" (Q3), and show "Downloaded · available offline" with an icon on the article itself (Q4). Notice that the heuristics would have flagged these too (2 and 1), but the walkthrough tied them to a specific step and a specific user, which makes fixing them obvious.

    Running an expert review on your own product

    1. Define the user and tasks. Write who (new, returning, power user) and the 3 to 5 most important tasks. Without a defined user, every judgment becomes your own taste.
    2. Walk each task as that user. Use a fresh install, a clean account, the smallest supported device. Ask the four questions at each step; write a "failure story" for every no.
    3. Sweep the heuristics. One pass per heuristic across all screens in the tasks. Use the checklist below.
    4. Rate severity. Same 0 to 4 scale as for tests.
    5. Wait a day, then review your findings. Cut anything you can't defend with a specific user moment.
    6. Turn the top issues into test tasks for your next usability round, to confirm they're real.

    Checklist: heuristic review of one flow

    Status and feedback
    Language and model
    Control and errors
    Consistency and memory
    Efficiency, focus and help
    For the solo creator

    You can't un-know your product, but you can change your conditions. Do reviews on a fresh install, logged out, on your oldest phone, at the end of the day when you're tired. Tired-you is a surprisingly good stand-in for a distracted new user. And swap reviews with another indie maker: you review theirs, they review yours. A second evaluator roughly doubles what you find.

    Do

    • Name the user and tasks before reviewing.
    • Write a short failure story for every "no."
    • Review on a clean account and a small device.
    • Trade reviews with a peer.

    Don't

    • Review as yourself, the expert user.
    • Skip the "will they see progress?" question; it's the one makers forget most.
    • Treat review findings as confirmed until users show them.
    • Review the whole app in one sitting.

    In the wild

    • "The Cognitive Walkthrough Method: A Practitioner's Guide"Wharton, Rieman, Lewis & Polson, 1994
      The original guide treats the walkthrough as a way to evaluate ease of learning by exploration, especially for walk-up-and-use systems. It shines for first-run flows and anything people use rarely.
    • "The Streamlined Cognitive Walkthrough"Rick Spencer, Microsoft, CHI 2000
      Spencer reported that the full method was too slow and defensive for a product team, and cut it down to two questions with ground rules (no designing during the walkthrough, no defending). A lighter method you actually run beats a perfect one you don't.

    Common mistakes

    Redesigning during the walkthrough

    You see a problem and start solving it immediately, losing the rest of the flow.

    Spencer's rule: no design discussion during the walkthrough. Note it; solve it later.

    Answering "yes" as yourself

    Of course you'd see the control; you placed it.

    Write the user profile at the top of the page and argue from it. When in doubt, mark "maybe" and test it.

    Check yourself

    In a walkthrough of your budgeting app, a user taps "Add" and an expense is saved, but the screen returns to the same empty-looking dashboard because the new item is below the fold. Which question fails?

    Exercise 10.1 90 minutes · on your own product

    Walk through your first-run flow

    1. Write a one-paragraph profile of a new user and the first task they need to complete to get value.
    2. On a fresh install, list every step of that task.
    3. Answer the four questions at each step, with a failure story for each "no" or "maybe."
    4. Then run the heuristic checklist above on the same flow.
    5. Rate everything 0 to 4 and pick three fixes.
    You're done when: a step table with four answers per step, a completed checklist and three rated, prioritized fixes.
    BeginnerCompetentStrong
    Steps listed; mostly "yes" answers.Honest "no/maybe" answers with stories; checklist done; fixes rated.Also swapped with a peer reviewer and compared what each of you found.
    11

    Self-critique and fresh eyes

    Taught by Adam Connor & Aaron Irizarry, with Dieter Rams, Oliver Reichenstein

    Useful critique starts from an objective ("this screen exists so that…") and asks whether each element serves it; to see your own work freshly, change the conditions you see it under, and to get useful critique from others, ask narrow questions.

    Adam Connor and Aaron Irizarry's Discussing Design (2015) separates critique from feedback in general. Critique is analysis against objectives: "Given that the goal is X, this element does or does not help, because Y." Reaction ("I don't like the blue") is not critique; neither is a direct fix ("make the button bigger"), because it skips the why. As a solo creator you must critique yourself, which means writing the objective first, otherwise you will judge by mood.

    The objective-first critique

    Objective: a returning reader resumes their article in one tap "Continue"card Streakbadge Articlelist Promobanner keep question keep cut serves it directly serves another goal fallback path competes with it
    Every element must earn its place against the objective. "Question" means it serves a different goal: either that goal belongs on another screen, or the objective is incomplete. Writing it down forces the decision.

    Write it as a sentence with a person, a situation and an outcome. Then, for each element on the screen, ask the three critique questions: What is this for? Does it serve the objective? Is it the best way to serve it? The answers are keep, change, move, or cut. Pair this with the visual hierarchy test: is the most important element for the objective also the most visually prominent?

    Fresh-eyes tricks

    Your brain stops seeing what it sees every day. Each trick below breaks familiarity in a different way, so you notice what a stranger would. Artists have used some of these for centuries: painters check a canvas in a mirror because flipping it reveals lopsided composition the eye had adapted to.

    Lab: see your screen like a stranger
    Today⚙︎
    Thursday · 3 tasks
    Call the bank about the card9:30
    Send draft to Priyanoon
    Pay electricity billoverdue
    Upgrade to Pro ✦Add task

    Turn on one lens at a time. What survives?

    Squint: does "Add task" still read as the main action, or does the overdue label win? Grayscale: does "overdue" still stand out without red? (It doesn't, which matters for color-blind users.) Flip: does the layout still feel balanced? Tiny: what can you still identify at a glance?
    TrickHowWhat it reveals
    Time awayDon't look at the design for 2 days (a week for big flows).Everything familiarity hid. The single most effective trick.
    Squint / blurSquint, or blur a screenshot.Visual hierarchy: what pops first, whether grouping holds.
    FlipMirror the screenshot horizontally.Balance and alignment problems the eye had adapted to.
    GrayscaleTurn on the phone's grayscale filter.Whether meaning depends only on color (see Accessible & Inclusive).
    Different deviceOldest phone, smallest window, a TV, a friend's laptop.Density, tap targets, truncation, performance.
    Read aloudRead every word on the screen out loud, in order.Jargon, redundancy, tone, missing words (see Words).
    Print itPrint screens on paper and pin them to a wall in sequence.Flow and consistency across screens.
    Real contentReplace sample data with the messiest real data you can find.Truncation, long names, empty and huge states.

    Red-team your own design

    For one hour, become the design's enemy. Write down every way it could fail: the user who skims, the user on a train with one hand, the user who pastes 40,000 words, the user who misunderstands the label, the user who never comes back after day one, the user who wants to leave and take their data. A good habit is a pre-mortem (Gary Klein's technique): imagine it's six months later and the feature failed; write the story of why. Then fix or test the most plausible story.

    Getting useful critique online

    Posting a screenshot with "Thoughts?" gets you taste reactions from people who don't know your user or goal. Asking a narrow question with context gets you critique.

    Don't

    @you: New design for my app! Thoughts?

    ↳ love the colors

    ↳ make the logo bigger

    ↳ have you tried Inter?

    Vague in, vague out. No objective, no user, no question, so you get preferences and fonts.
    Do

    @you: Reading app, for people who save long articles. Goal of this screen: resume reading in one tap. Without reading my text, where would you tap first to continue yesterday's article?

    ↳ "the big title, but I wasn't sure it wasn't a new recommendation"

    Context, objective, one question. You get a first-click test and a real insight (resume vs recommendation looks the same).

    Good critique questions are answerable and observable: "What do you think this screen is for?", "Where would you tap to…?", "What's the first thing you notice?", "What would you expect to happen if you tapped X?", "Which of these two labels is clearer for this task, and why?" When you receive critique, thank, ask follow-ups, and decide later. Do not defend in the thread.

    Checklist: self design review before shipping a screen

    For the solo creator

    Build "time away" into your process instead of hoping for it: design a screen on Monday, build something else on Tuesday, review on Wednesday. Keep a "critique buddy" relationship with one or two other indie makers, and use the same structured question format both ways.

    Do

    • Write the objective before judging.
    • Change the viewing conditions to break familiarity.
    • Ask others narrow, observable questions.
    • Run a pre-mortem on anything risky.

    Don't

    • Critique by mood ("it feels off").
    • Post "thoughts?" and act on the loudest reply.
    • Defend your design in a critique thread.
    • Confuse critique with testing: critique finds candidates, testing confirms them.

    In the wild

    • iA WriterInformation Architects
      Oliver Reichenstein's essays on the app's design repeatedly frame decisions against one objective (help people focus on writing) and explain what was removed for it. Writing your reasoning publicly is a form of self-critique: weak arguments look weak in prose.
    • Pixar's BraintrustEd Catmull, "Creativity, Inc.", 2014
      Catmull describes a group that gives candid notes on films in progress, with the rule that the director decides what to do with them. Separate receiving critique from deciding; it keeps critique honest and you in charge.

    Common mistakes

    Reviewing straight after building

    You want to ship today.

    Even one night away helps. Use the gap to build something else.

    Collecting opinions instead of critique

    "Thoughts?" is easy to post.

    Give context, the objective and one specific question every time.

    Treating your critique as user evidence

    A thorough self-review feels conclusive.

    Label findings "suspected" until you see them in a test or in usage data.

    Check yourself

    You've stared at your new pricing page for three days and can't tell if the hierarchy works. Fastest useful step?

    Connect the ideas · Part four recap

    Your heuristic review, walkthrough and self-critique produced 23 findings. What do you do with them, using Parts two and four together?

    Exercise 11.1 60 minutes, over two days · on your own product

    Objective-first critique of your home screen

    1. Day 1: write your home screen's objective as one sentence. Label every element keep, change, move or cut.
    2. Take a screenshot. Blur it, flip it, grayscale it. Note what each reveals.
    3. Write a one-paragraph pre-mortem: "Six months from now, new users ignore the home screen because…"
    4. Day 2: review your notes after a night away. Post one narrow question in a community or to a peer.
    5. Make one change and add the others to your next test plan.
    You're done when: an objective, a labeled element list, three fresh-eyes notes, a pre-mortem, one outside answer and one shipped change.
    BeginnerCompetentStrong
    Objective vague; labels by taste.Clear objective; each label justified; fresh-eyes notes specific.Also a pre-mortem that surfaced something new, tested with a narrow outside question.
    Part five

    Reading the numbers

    Observation tells you why; numbers tell you how much and how many. Three chapters on the few metrics a small product needs, on measuring them without spying on people, and on experiments: when they work, and why most solo products should mostly do something else.

    12

    Product metrics a designer should read

    Taught by Alistair Croll & Benjamin Yoskovitz, with Eric Ries, Andrew Chen

    Three questions cover most of what a small product needs to know: do new people reach the moment of value (activation), do they come back (retention), and how much do they use it (engagement); everything else is either a detail of these or a vanity number.

    A design change is a hypothesis about behavior. Metrics are how you see behavior at a scale no usability test can reach. But a dashboard with 40 charts is as useless as none, because you will stare at whatever moved and invent a story. Pick a small set, define them precisely, and look at them on a schedule.

    Activation
    The share of new users who reach the first moment of real value, defined as a specific action: "created a note and opened it again later," "imported a book and read 5 pages." Not sign-up. See Problems Worth Solving for designing that moment.
    Retention
    The share of a group of users (a cohort, usually by sign-up week) still active N days or weeks later. The single best sign that the product is valuable.
    Engagement
    How much retained users use the product: sessions per week, notes created, minutes read. Useful only alongside retention, and only when "more" is actually better for the user.
    Conversion
    The share of people who take a specific step: visitor to sign-up, trial to paid.
    Churn
    The share of users or subscribers who leave in a period; the mirror image of retention.

    Funnels: where people leave

    A funnel lines up the steps toward an outcome and shows how many people make it through each. Its job is to point you at the step with the worst drop, so that your next usability test focuses there.

    1,000 600 200 120 Visited Signed up First note Back on day 7 60% 33% 60% worst step: test this next
    Find the cliff. Two in three people who sign up never write a note. That's where design attention goes, not the sign-up page (60% is fine) or day 7 (60% of activated users return).

    Cohort retention curves: the truest chart

    Group users by when they started, and plot what share is still active over time. Every product's curve falls; the question is whether it flattens. A curve that flattens means a core of people found lasting value: you have something. A curve that keeps sliding toward zero means people try it and leave, and no amount of acquisition will fix that. When newer cohorts' curves sit above older ones, your changes are working.

    100%0% week 0week 12 sliding to zero: no core March cohort: flattens ~15% June cohort: flattens ~25% Share of each sign-up cohort still active, by week
    Look for the flat part, then for lift. The flattening line is product–market fit made visible; a newer cohort sitting higher is the evidence that your design changes are helping. Illustrative curves, not real data.

    Vanity metrics

    Eric Ries, in The Lean Startup (2011), called numbers that make you feel good but don't inform decisions "vanity metrics," contrasting them with "actionable" ones. Total sign-ups, total downloads and page views only go up; they can't tell you whether anything you did worked. The test: if this number changed, would I do something differently? If not, stop looking at it.

    Don't
    Total downloads 10,482 ↑
    Always up and to the right. Cumulative totals rise even while the product is failing. They can't evaluate a change.
    Do
    Activation rate, by week new empty state
    A rate, over time, with your change marked. It can go down, so it can tell you something.
    For the solo creator

    Track three numbers, weekly, in a plain note: activation rate for last week's sign-ups, week-4 retention for the cohort from a month ago, and your North Star (next chapter). Write one sentence each week on what changed and what you shipped. Small numbers are noisy: at 50 sign-ups a week, activation can swing by 10 points by chance alone. Look at trends over a month, not a single week.

    Do

    • Define activation as a specific action that signals value.
    • Read retention by cohort and look for flattening.
    • Use funnels to choose what to usability-test next.
    • Annotate charts with what you shipped and when.

    Don't

    • Celebrate cumulative totals.
    • Equate sign-up with activation.
    • React to one week's wobble in small numbers.
    • Push engagement up with tricks when "more" isn't better for users (see Honest & Calm).

    In the wild

    • Facebook's early activation ruleoften-cited growth story
      Facebook's growth team is widely reported to have focused on getting new users to a certain number of friends within their first days, because users who did tended to stay. An activation metric names the behavior that predicts retention. Find yours by comparing who stayed with who left.
    • "Lean Analytics"Croll & Yoskovitz, 2013
      Introduces the "One Metric That Matters" for each stage of a business. Focus beats breadth: one number at a time is something you can actually move.

    Common mistakes

    Activation defined as sign-up

    It's the easiest event to track.

    Find the first action that predicts people coming back, and use that.

    Averaging retention across everyone

    A single "active users" chart is easy.

    Cohorts by sign-up week; otherwise growth hides churn.

    Story-telling from noise

    Every wiggle seems to mean something.

    Decide in advance which change you expect and how big; look at monthly trends.

    Check yourself

    Monthly active users rose 30% after your launch on a big forum. Week-4 retention for that cohort is 4%, versus 18% for earlier cohorts. What do you conclude?

    Exercise 12.1 60 minutes · on your own product

    Define your three numbers

    1. Write your activation event: a specific action that signals value. If you have data, check whether people who did it retained better.
    2. Draw your main funnel (4 to 5 steps) with real or estimated numbers. Mark the worst step.
    3. If you have three months of data, plot retention for three cohorts. Does it flatten?
    4. List the metrics you currently look at. Cross out every one that fails the "would I act differently?" test.
    You're done when: a written activation definition, a funnel sketch with its worst step marked, and a pruned metrics list.
    BeginnerCompetentStrong
    Activation equals sign-up; funnel guessed.Behavioral activation event; real funnel; vanity metrics cut.Also checked activation against retention and chose next month's test from the funnel.
    13

    HEART, a North Star and honest instrumentation

    Taught by Kerry Rodden, Hilary Hutchinson & Xin Fu, with Sean Ellis, Teresa Torres

    Start from the user-experience goal, choose a signal that shows it, and only then a metric (Google's HEART goals–signals–metrics method); summarize the value you create in one North Star number; and measure with the minimum data, named clearly, collected respectfully.

    In a 2010 CHI paper, "Measuring the User Experience on a Large Scale," Kerry Rodden, Hilary Hutchinson and Xin Fu at Google described the HEART framework: five categories of user-centered metrics, Happiness, Engagement, Adoption, Retention and Task success, plus a process, Goals → Signals → Metrics, for choosing them. The process matters more than the acronym: it stops you from measuring what's easy instead of what matters.

    HEARTGoalSignalMetric Happiness Reading feels calmSurvey answerAvg rating / quarter Engagement People finish articlesArticle read to endFinished / week / user Adoption Highlights get usedFirst highlight made% new users in 7 d Retention It becomes a habitReads in week 4Week-4 cohort % Task success Saving is effortlessSave without retrySave success %
    Goals → Signals → Metrics. The original paper says you don't need all five categories for every project. A solo app might use only two or three rows. Task success often comes from usability tests, not analytics.

    A North Star for a small app

    A North Star metric is a single number that captures the core value users get, and that tends to lead to revenue and retention. It should count value delivered, not activity or revenue. For a reading app, "articles read to the end per week"; for a habit tracker, "users who checked in on 4+ days this week"; for a writing app, "documents edited on 3+ days in a week." A good one rises only when users are actually better off.

    Don't
    Time in app

    Rewards slowness and distraction. A confusing app scores higher.

    Activity, not value.
    Don't
    Monthly revenue

    An outcome of value, but lags, and can be raised by dark patterns.

    Business, not user.
    Do
    Weekly readers who finish 2+ articles

    Rises only when people get the value the app promises.

    Value, counted.

    Naming events

    Your events are a vocabulary you'll live with for years. A common convention is object + past-tense action: note_created, article_finished, export_completed. Keep a short tracking plan: event name, when it fires, properties, why you need it. If you can't write the "why," don't track it.

    AvoidPreferWhy
    click_button_3export_startedDescribes the user's intent, survives redesigns.
    NoteCreate, created-note, note_newnote_created everywhereOne pattern, so queries don't miss half the data.
    article_read fired on openarticle_opened and article_finishedName says exactly when it fires.
    Properties with note text or emailProperties like word_count_bucket, platformNever send content or identity you don't need.

    Privacy-respecting analytics

    You can learn what you need without tracking individuals across the web. Measure aggregates, avoid personal data, keep it on infrastructure you trust, and tell people plainly what you collect. Some tools built with this in mind:

    • Plausibleweb analytics, open source, EU-based
      Lightweight, cookieless page and goal analytics with a simple dashboard. Enough for landing pages and funnels without a consent banner circus (check your own legal situation).
    • TelemetryDeckapp analytics, privacy-focused
      Built for app developers (popular among indie Apple-platform developers), with anonymized user identifiers and signal-based events. Product usage counts for native apps without collecting personal data.
    • PostHogopen-source product analytics
      Funnels, retention, feature flags and session replay, available as a cloud service or self-hosted. Self-hosting keeps data on your infrastructure; you're responsible for configuring it to collect only what you need (mask inputs in replays).

    Related principles live in Honest & Calm. The short version: collect the minimum, aggregate early, never record what people type, and write a privacy note you'd be happy for users to read.

    Quantitative and qualitative together

    Numberswhere and how many Observationwhy Changesmallest fix numbers confirm (or not) over the next weeks "Two-thirds never write a first note" → "They think the blank page is a template picker"
    Neither half works alone. Numbers without observation produce guesses about why; observation without numbers can't tell you how big or whether the fix worked.
    For the solo creator

    Instrument at most 10 to 15 events at first: sign-up, activation event, the core value action, a few steps of your main funnel, and errors. Write the tracking plan in your repo next to the code. Every time you look at a chart, write down the question you asked; if you can't name one, close the dashboard.

    Do

    • Go Goals → Signals → Metrics.
    • Pick a North Star that counts user value.
    • Use object_action event names and a written tracking plan.
    • Collect the minimum, without personal content.

    Don't

    • Track everything "just in case."
    • Choose time-in-app as a goal for a calm product.
    • Record keystrokes or unmasked session replays.
    • Look at numbers without a question.

    Common mistakes

    Metric first, goal later

    Tools offer default dashboards.

    Write the goal in words first, then find the signal, then the metric.

    Event soup

    Events are added ad hoc with inconsistent names.

    A tracking plan file reviewed whenever you add an event.

    A North Star that can be gamed

    "Notes created" rises if you split one note into five.

    Ask: could I raise this without users being better off? If yes, pick another.

    Check yourself

    Which is the best North Star for a calm meditation timer app?

    Exercise 13.1 60 minutes · on your own product

    A HEART sheet and a tracking plan

    1. Fill a HEART grid for your product using two or three categories only: goal, signal, metric.
    2. Write your North Star and test it against "could I raise this without users being better off?"
    3. Write a tracking plan with at most 12 events: name, when it fires, properties, why.
    4. Audit current tracking for personal data you don't need, and remove it.
    You're done when: a 2–3 row HEART grid, a North Star sentence and a tracking plan file in your repo.
    BeginnerCompetentStrong
    Metrics listed without goals.Goals → signals → metrics; North Star counts value; clean plan.Also a privacy audit and a short public note on what you collect.
    14

    Experiments, and what to do without traffic

    Taught by Ron Kohavi, with Evan Miller, Eric Ries

    An A/B test randomly splits people between versions so the only systematic difference is your change; it's the gold standard for causation, but detecting realistic improvements takes thousands of users per variant, so small products should mostly ship bold changes, roll out in stages and compare carefully.

    Ron Kohavi, who led experimentation at Microsoft and wrote Trustworthy Online Controlled Experiments (2020, with Diane Tang and Ya Xu), has reported that most ideas tested at large companies fail to improve the metrics they targeted. That is humbling and useful: intuition about which change will help is unreliable even for experts. A/B tests protect against that. The catch is statistical power. Randomness means two identical groups will show different conversion rates by chance; to tell a real 10% improvement from noise, you need enough people that the noise is small.

    Sample size intuition

    A handy approximation (Lehr's rule, for 80% power at the usual 5% significance) is: users per variant ≈ 16 × p(1 − p) ÷ d², where p is the baseline rate and d the absolute difference you want to detect. Small baselines and small effects explode the number. Play with it.

    Lab: how many users does an A/B test need?
    –users per variant
    –users in total
    –at your traffic

    Start with 30% activation, a 10% relative lift (30% → 33%) and 75 new users a week: that's about 300 a month. Then try detecting a 50% lift. Big, bold changes are measurable at small scale; tweaks are not. This is an approximation for intuition, not a calculator for a real test.
    Users per variant at 30% baseline (approx.) +5% lift≈ 15,000 +10% lift≈ 3,700 +25% lift≈ 600 +50% lift≈ 150 Halving the effect you want to detect roughly quadruples the users you need.
    The square law. Because d is squared, small effects are brutally expensive. At a few hundred users a month, only large differences are detectable.

    Rules if you do run one

    • Decide the sample size and the metric before you start, and don't stop early when it "looks significant." Evan Miller's essay "How Not To Run an A/B Test" (2010) shows how repeatedly peeking and stopping at the first significant result produces false winners far more often than the nominal 5%.
    • Run full weeks, because weekday and weekend users behave differently.
    • Check that the split is actually even; a lopsided split means a bug.
    • Watch a guardrail metric (retention, complaints, refunds) so a "win" on clicks doesn't hide harm.

    Alternatives for small products

    MethodHowStrengthWeakness
    Bold change + qualitative checkMake a big, confident change; watch 3 to 5 people use it; watch the trend.Big effects are visible even in small numbers.Can't detect small effects.
    Staged rolloutFeature flag to 10% → 50% → 100%, watching errors, support and retention.Limits damage; catches breakage.Not a clean comparison unless randomized.
    Before/after (careful)Compare cohorts before and after a change; note seasonality, launches, outages.Free; works at any scale.Confounded by everything else that changed. Only trust large, sustained shifts.
    Fake door (painted door)Show an entry point to a feature that doesn't exist yet; measure taps; explain honestly.Measures real demand before building.Ethically risky if it wastes people's time or deceives them.
    Usability test of both versionsSame tasks, alternating which version people see first.Shows why one works better.Says nothing about conversion at scale.

    Fake doors, honestly

    Don't
    Buy Pro: ₹499/year Something went wrong.Try again later.
    Deceptive. Someone tried to pay you and got a fake error. They'll try again, distrust you, and you've measured frustration as much as demand.
    Do
    Sync with Kindle Not built yet. We're checkingif people want it. Thanks for tapping. Tell me when
    Honest and cheap for the user. One tap, a clear explanation, an optional way to hear more. Never fake a payment.
    For the solo creator

    Your edge isn't statistics; it's closeness. You can talk to a tenth of your users personally, ship a change on Tuesday and email ten people about it on Wednesday. Make bold changes, roll them out behind a flag, watch five people use them, and read the cohort trend over a month. Save true A/B tests for high-traffic surfaces like your landing page, and only for big differences.

    Do

    • Estimate sample size before planning any A/B test.
    • Test bold differences when traffic is low.
    • Use feature flags and staged rollouts.
    • Keep fake doors honest and rare.

    Don't

    • Peek and stop when the result looks good.
    • A/B test button colors at 300 users a month.
    • Trust before/after comparisons across a launch or holiday.
    • Fake payments or errors to measure demand.

    In the wild

    • Booking.com and Microsoft Binglarge-scale experimentation cultures
      Both are known for running very large numbers of controlled experiments, with infrastructure to do so safely. That culture depends on enormous traffic. Copy the humility, not the method.
    • Evan Miller's sample size calculatorevanmiller.org
      A free, widely used calculator alongside clear essays on the pitfalls of testing. Check the numbers before you design the test, not after.

    Common mistakes

    Underpowered tests read as "no difference"

    The test ends with no significant result and you conclude the change didn't matter.

    With too few users, "no significant difference" means "we couldn't tell." Say that.

    Testing tiny things

    Small changes feel safe.

    At low traffic, test meaningfully different approaches, or don't A/B test at all.

    Novelty mistaken for improvement

    Anything new gets clicks for a few days.

    Run for full weeks and check whether the effect holds for returning users.

    Check yourself

    Your landing page gets 2,000 visitors a week and converts 4% to sign-up. You have two headline ideas. What's realistic?

    Connect the ideas · Part five recap

    Your funnel (Chapter 12) shows a cliff between sign-up and first note. You have 300 sign-ups a month. Best plan?

    Exercise 14.1 30 minutes · on your own product

    Is an A/B test even possible?

    1. Pick the change you most want to evaluate. Write its baseline rate and the smallest improvement you'd care about.
    2. Use the lab to estimate users needed and time at your traffic.
    3. If it takes more than four weeks, design an alternative: bold version, staged rollout, qualitative check, cohort comparison.
    4. Write your guardrail metric.
    You're done when: a one-paragraph evaluation plan with a sample-size estimate, method choice and guardrail.
    BeginnerCompetentStrong
    Plans an A/B test without checking numbers.Sample size checked; an appropriate method chosen.Also pre-registers expectations in the iteration log (Chapter 17).
    Part six

    Listening and looping

    The final three chapters close the loop: the channels where users tell you things without being asked, your own daily use as a research instrument, and the iteration habit that turns all of this evidence into a product that steadily gets better, sometimes by getting smaller.

    15

    Feedback channels: what users tell you unprompted

    Taught by Teresa Torres, with Bob Moesta, Rob Fitzpatrick, Fred Reichheld

    Support emails, reviews, in-app feedback and churn are a free, continuous research stream; treat them as data to tag and count, not as a to-do list, and dig beneath each request for the problem behind it.

    Every message a user sends cost them effort, so it signals something real. But feature requests are proposed solutions from people who don't know your constraints or your other users. "Add folders" might mean "I can't find things," which search could fix better. The job is to collect, tag, count and then ask about the underlying problem.

    Support email In-app feedback App reviews Cancel reasons Community posts One logtag · problem · date Themes this quarter Can't find old notes · 23 Sync confusion · 14 Export · 8 Dark icon · 3 "Add folders" (9) and "better search" (6) and "tags" (8) all filed under one problem: can't find old notes.
    Tag the problem, not the request. Three different feature requests turn out to be one problem with 23 mentions, which is now clearly your top theme.

    The channels

    In-app feedback. A quiet "Send feedback" item in the menu or settings that opens a plain text box (with an optional screenshot and app version attached automatically). Don't interrupt people with pop-ups; let them come to you. Reply to every message personally; a reply from the maker turns a complainer into a collaborator.

    Interviewing existing users

    Talk to users regularly, not only when something breaks. Teresa Torres recommends weekly touchpoints with customers. The core rule is from Chapter 1: ask about specific past behavior. "Tell me about the last time you saved an article. Where were you? What happened next?" Story-based questions reveal context, workarounds and the real job. For interview technique in depth, see Problems Worth Solving.

    Don't
    Enjoying the app? ★★★★★ Not now · Never · Rate
    Ambush. Mid-sentence, the app wants a rating. It interrupts the very value it's asking about.
    Do
    Settings AppearanceSync & backup Send feedback to Rohit What happened? (app version attached)
    Always there, never pushy. A named human, a plain box, technical details attached automatically.
    For the solo creator

    You are the support team, which is a superpower: every ticket lands on the designer's desk. Keep one "voice of user" log (a spreadsheet is fine): date, channel, quote, problem tag, screen. Spend 30 minutes on the first Monday of each month counting tags. Let the top theme pick next month's usability test.

    Do

    • Log every piece of feedback with a problem tag.
    • Reply personally, quickly.
    • Ask about the problem behind each request.
    • Make cancellation easy and ask one optional question.

    Don't

    • Build the most-requested feature literally.
    • Interrupt work with rating pop-ups.
    • Treat NPS as a goal in itself.
    • Guilt-trip people who leave.

    In the wild

    • Indie apps with a named makercommon pattern among small developers
      Many one-person apps sign their support replies and feedback screens with the developer's own name. Users write differently to a person than to a "team": more context, more patience.
    • Superhuman's segmentationRahul Vohra, 2018
      After the "very disappointed" survey, the team focused on what the users who'd be most disappointed loved, and on what held back people who were close to that. Not all feedback is equal; weigh it by who it comes from.

    Common mistakes

    The loudest-user roadmap

    One persistent user emails every week.

    Count across users. One person's ten emails count once.

    Reading reviews only after launches

    They feel painful.

    A weekly 10-minute review habit, logged with tags. Small doses.

    Survey fatigue

    Surveys are easy to send.

    At most one short survey per quarter; prefer one well-placed question after a real moment.

    Check yourself

    Twelve users this month asked for "a dark mode." What should you do first?

    Exercise 15.1 60 minutes · on your own product

    Start your voice-of-user log

    1. Create the log: date, channel, quote, problem tag, screen.
    2. Back-fill it with the last 30 support emails, reviews and messages you can find.
    3. Tag each by problem, not by request. Merge requests that share a problem.
    4. Count. Write the top three problems and one question to ask users about the first.
    5. Add a quiet "Send feedback" entry point if you don't have one.
    You're done when: a log with 30 tagged entries, a ranked list of three problems, and a working feedback entry point.
    BeginnerCompetentStrong
    Requests listed as-is.Tagged by problem; themes counted.Also contacted two users about the top theme and wrote what the real need was.
    16

    Dogfooding, a diary of your own use, and a bug bash for one

    Taught by 37signals, with Linear and the indie-maker tradition

    Using your own product daily for real work finds problems no test will (the ones that only appear on day 40, with messy data, when you're tired); but you are a biased power user, so log your use deliberately, and complement it with tests of people who aren't you.

    "Eating your own dog food" became a common phrase in software after it circulated inside Microsoft in the late 1980s. Many of the best-loved tools are made by people who use them all day: Basecamp's team runs its company on Basecamp; Linear has said it builds Linear in Linear. Daily use reveals slowness, paper cuts, and what happens after months of accumulated data, which no 45-minute session can.

    But dogfooding has a blind spot shaped exactly like the curse of knowledge. You never experience first-run again; you know every shortcut; you forgive what you planned to fix. So turn it into a method: a diary, scheduled "beginner days," and a structured bug bash.

    Your own daily use Testing other people day-40 problemsspeed, paper cutsbig messy datapower-user needs obviousbugs first-run confusionvocabularydiscoverabilityother mental models
    Complementary, not competing. Dogfooding is strong where tests are weak (time, depth, volume) and blind where tests are strong (fresh eyes). You need both.

    A diary of your own use

    Keep a running note while you use your product for real work. Every time something annoys, slows or surprises you, write one line immediately: date, what you were trying to do, what happened, how it felt. Don't fix it on the spot (that breaks your work and biases you toward easy fixes). Review the diary weekly and move recurring items into your issue tracker.

    DateTrying toWhat happenedFelt
    MonFind last week's meeting noteSearch matched 40 notes, no dates shownannoyed (3rd time)
    TuePaste a long articleEditor froze ~2 s on 12,000 wordsworried
    ThuOpen app on trainSpinner, no offline contentgave up, used Notes

    Beginner days

    Once a month, use your product as a beginner would: delete the app and reinstall it, sign up with a new email, go through onboarding without skipping, on your oldest device, with no shortcuts allowed. Do the core task from scratch. It won't fully cure the curse, but it re-exposes you to first-run, which you otherwise never see after launch.

    A bug bash for one

    1. Timebox it. 90 minutes before each release, phone on silent.
    2. Change roles every 15 minutes. The beginner, the power user, the impatient one (tapping fast, double-tapping), the offline one (airplane mode), the accessibility user (screen reader, largest text size; see Accessible & Inclusive), the destroyer (paste huge text, emoji, right-to-left text, rotate, background the app mid-save).
    3. Log, don't fix. One line per issue with steps to reproduce.
    4. Triage with severity (0 to 4) at the end. Ship-blockers are 4s and data-loss risks.
    Don't
    Note 1Note 2Note 3 ✓ Fast laptop, Wi-Fi, 3 tidy notes, happy path.
    Ideal conditions. Everything works because nothing is real.
    Do
    ✈ offline Quarterlyplanning… नोट्स 2026 2,481 notes Old phone, offline, big text, real mess.
    Real conditions. Constraints and messy data expose truncation, slowness and missing states.
    For the solo creator

    If you aren't a daily user of your own product, find a way to become one, even partially, or find two people who are and talk to them weekly. If you are, the diary is the cheapest research you'll ever do: 30 seconds per entry. Keep it in the app itself if you can; capturing friction inside the friction is poetic and practical.

    Do

    • Use your product for real work every day if you can.
    • Log friction immediately, fix later.
    • Schedule beginner days and bug bashes.
    • Test on old devices, offline, with big text and messy data.

    Don't

    • Treat your own use as user research.
    • Fix things mid-task and lose the thread.
    • Test only on your development machine.
    • Build only for your power-user self.

    In the wild

    • Basecamp37signals
      The company runs its own projects in Basecamp and has written about how this shapes the product. Deep daily use is a quality engine for the things you do yourself.
    • Linearissue tracker, 2019 onward
      The team has described building Linear in Linear, which helps explain its focus on speed and keyboard flow. Dogfooding pushes products toward what their makers value; make sure that's what your users value too.

    Common mistakes

    Power-user drift

    Daily use makes you want shortcuts and density; new users want clarity.

    Balance diary items against first-run test findings each month.

    The unlogged annoyance

    You notice friction, sigh, and forget.

    One-line diary entries, every time. Count them weekly.

    Check yourself

    You've used your own app daily for a year and can't find anything confusing anymore. What's the best interpretation?

    Exercise 16.1 One week, plus 90 minutes · on your own product

    A week of diary, then a bug bash

    1. For seven days, use your product for real work and log every friction in one line.
    2. On day seven, run a 90-minute bug bash rotating through the six roles above.
    3. Merge diary and bash findings, rate severity, and fix the top three.
    You're done when: a diary with at least 10 entries, a bug bash log, and three fixes shipped.
    BeginnerCompetentStrong
    A few entries; bug bash skipped roles.Daily entries; all six roles; severity-rated.Also a beginner day, with findings compared to your last usability test.
    17

    Iteration: the loop, the log, and the courage to delete

    Taught by Eric Ries, with Ryan Singer, Teresa Torres, Dieter Rams

    Iteration is a disciplined loop: state what you expect, ship the smallest change that tests it, look at the evidence, and decide (keep going, change direction, or remove); writing each turn of the loop down is what turns activity into learning.

    Eric Ries's Build–Measure–Learn loop, from The Lean Startup (2011), describes startups as machines for validated learning: build the minimum needed to test an assumption, measure what happens, learn whether to persevere or pivot. Ries points out that you plan the loop backwards: decide what you need to learn, then what you'd measure, then what to build.

    Build Measure Learn product data ideas Iteration logexpect · saw · decided Plan it backwards: what must I learn? → what would show it? → what's the least to build?
    The log is the hub. Without a written expectation, any result can be read as success. The loop's speed matters more than any single turn.

    The iteration log

    One row per change. Write the first three columns before you ship. This is the solo version of pre-registering an experiment: it protects you from your own hindsight.

    DateChangeBecause (evidence)I expectI sawDecision
    3 MarEmpty state shows 3 example notes3 of 3 testers stared at blank page; funnel cliff at first note (33%)First-note rate rises above 45% within 4 weeks52%, held for 6 weeks; 2 of 3 new testers started by editing an exampleKeep
    14 AprRenamed "Sync" to "Back up"Rainbow sheet: 3 of 5 read Sync as save-to-phoneFewer support questions about syncSync tickets 14 → 5 per monthKeep
    2 MayStreak counter on homeGuess: would build habitWeek-4 retention +5 pointsNo change; two emails said it felt like pressureRemove

    Persevere, change, or kill

    Did it move what I expected? yesno Persevere polish, extend, next loop Do tests show a fixable why? yesno Change (one more loop) Remove set a limit: max 2 more loops or pivot the idea Decide the limit before you start, like Shape Up's "circuit breaker": work that misses its time box doesn't get extended by default.
    Every feature gets a verdict. The dangerous state isn't failure; it's the feature that half-works forever because nobody decided.

    Ryan Singer's Shape Up (Basecamp, 2019) adds a useful discipline: set an appetite (how much time this problem is worth) before you start, and use a circuit breaker: if a project doesn't ship within its cycle, it doesn't get extended automatically; it has to be re-pitched. For a solo creator, that means "two weekends for this; if it isn't working, I stop and rethink."

    Deleting features

    Every feature has a cost after it ships: code to maintain, settings to explain, screens that dilute the core, tests to run, support questions. In most products, usage follows a long tail: a few features carry most of the value. Rams's "less, but better" applies to features as much as to form.

    Share of weekly users who used each feature (illustrative) writesearchexport candidates to removethemes · graph · emoji tags · AI titles
    The long tail. Low usage alone isn't a death sentence (a rarely used export can be essential), so check who uses each tail feature and how much it costs to keep before you cut.
    1. Measure use and ask who. Low use by your most loyal users is different from low use by nobody.
    2. Count the cost. Bugs, support questions, settings, code complexity, design constraints.
    3. Announce early and honestly. Say what's going, why, when, and how to keep their data (export).
    4. Remove completely. Code, settings, docs, onboarding mentions. Half-removed features haunt you.
    5. Log it and watch. Note support volume and retention for a month after.
    Accessibility testing

    Every loop should include an accessibility check, because what isn't tested regresses. Screen reader passes, keyboard-only navigation, largest text sizes, contrast and reduced motion each have specific test procedures, covered in depth in Accessible & Inclusive. At minimum, add one role to your bug bash and one item to your design review.

    For the solo creator

    Your iteration speed is your advantage over big companies: no meetings, no approvals. Your risk is the opposite: nobody asks "did that work?" The log asks for you. Review it monthly; once a quarter, read the whole thing and write one paragraph on what you learned about your users. That paragraph is the most valuable document you own.

    Do

    • Write the expectation before you ship.
    • Set an appetite and a limit for each bet.
    • Give every feature a verdict.
    • Delete features that cost more than they give, honestly and completely.

    Don't

    • Ship and move on without looking back.
    • Rationalize any result as success.
    • Keep half-working features "for now" indefinitely.
    • Remove features silently or without an export path.

    In the wild

    • Instagramfrom Burbn, 2010
      Kevin Systrom and Mike Krieger's first app, Burbn, was a check-in app with many features; they noticed photo sharing was what people actually used, and stripped the product down to it. Usage evidence can tell you which small part of your product is the real product.
    • Slackfrom the game Glitch, 2013
      Slack began as the internal chat tool of a team building an online game; when the game was shut down, the tool became the company. A pivot keeps what you learned and changes what you bet on.
    • Shape UpRyan Singer, Basecamp, 2019
      Six-week cycles with fixed time and variable scope, appetites set before work starts, and a circuit breaker on overruns. Fixed time with flexible scope forces the trade-offs iteration needs.

    Common mistakes

    Moving the goalposts

    The result disappoints, so you find another metric that went up.

    The "I expect" column is written before shipping and doesn't change.

    Iterating on polish, not on value

    Visual tweaks are satisfying and safe.

    Ask of each loop: what did I learn about users? If nothing, it was decoration.

    Never deleting

    Removing feels like admitting failure, and someone might complain.

    Schedule a quarterly "remove one thing" review. Every removal is a gift of focus to the rest.

    Check yourself

    You added a "graph view" two months ago. 3% of weekly users open it, mostly once. It generates frequent bug reports. What's the best next step?

    Exercise 17.1 45 minutes, then ongoing · on your own product

    Start the log and find one thing to remove

    1. Create your iteration log with the six columns above. Add the last three changes you shipped, honestly filling "because" and "I expect" (even if retroactive, mark them so).
    2. Add the fixes from this guide's exercises as new rows, with expectations written now.
    3. List every feature with rough usage and cost to keep. Pick one candidate for removal and write the case for and against.
    You're done when: a log with at least five rows (expectations before results) and a written removal case for one feature.
    BeginnerCompetentStrong
    Changes listed without expectations.Evidence and expectation for each row; a removal candidate argued.Also an appetite set for each open bet and a removal announced or shipped.

    Wrap-up

    Testing isn't a phase; it's how you stay honest with yourself. The whole guide reduces to a monthly rhythm: watch three people, read your three numbers, count your feedback tags, review your diary, update your log, and make the few changes the evidence supports. An hour a week, sustained, will make your product better than most built by teams.

    A month in the solo testing rhythm Week 13 usabilitysessionsrainbow sheettop 3 fixes Week 2fix and shipbehind a flaglog expectations Week 3heuristic orwalkthrough passbug bash Week 43 numbersfeedback tagslog verdictsplan next test Daily: diary lines while using your own product. Weekly: read reviews and support for 10 minutes.
    Small, repeating, written down. Each week feeds the next; the log and the voice-of-user sheet hold it together.

    Ten things to remember

    1. You can't un-know your product. Testing is how you borrow eyes that don't.
    2. Behavior beats opinion; past behavior beats predicted behavior.
    3. Three to five people per round find the common problems; many small rounds beat one big one.
    4. Tasks are scenarios with goals, never instructions with labels.
    5. In the session, be quiet: answer questions with questions, and save explanations for the debrief.
    6. Rate severity by frequency, impact and persistence; fix the top few with the smallest change that works.
    7. Heuristics, walkthroughs and self-critique find candidates; users confirm them.
    8. Activation, cohort retention and one North Star that counts real value are enough numbers for a small product.
    9. At small scale, A/B tests can only see big differences; make bold changes, roll out carefully, and watch trends.
    10. Write what you expect before you ship, give every feature a verdict, and delete without guilt.

    Self-assessment: I can…

    Practice assignment for the next two weeks

    1. Days 1–2. Exercises 1.1 and 2.1: map your curse of knowledge, write predictions, put six test dates in your calendar. Start the dogfooding diary (16.1) today and keep it going throughout.
    2. Days 3–4. Exercises 3.1 and 4.1: screener, test list, three booked sessions, five de-leaked tasks, piloted.
    3. Day 5. Exercise 10.1: walkthrough and heuristic checklist on your first-run flow. Fix any obvious severity-4 issues before testing.
    4. Day 6 (test morning). Exercise 6.1: three sessions, rainbow sheet, severity, three evidence-backed issues. Compare with your predictions.
    5. Days 7–9. Exercises 12.1 and 13.1: activation definition, funnel, HEART rows, North Star, tracking plan. Exercise 15.1: voice-of-user log with 30 entries.
    6. Days 10–12. Ship the top fixes. Exercise 17.1: start the iteration log with expectations written before shipping. Exercise 14.1 for any change you hoped to A/B test.
    7. Days 13–14. Exercise 11.1 on your home screen, then a bug bash (16.1). Write a one-page "What I learned about my users" note, and book next month's three participants.

    Reading list

    • Rocket Surgery Made Easy
      Steve Krug, 2010 · The do-it-yourself usability testing method this guide adapts, with scripts and a demo session. Short and practical. Read it first.
    • Don't Make Me Think, Revisited
      Steve Krug, 3rd ed. 2014 · How people really use screens (scanning, satisficing, muddling through) and why testing reveals it.
    • Just Enough Research
      Erika Hall, 2013; 2nd ed. 2019 · Research for people without research departments: what to do, how much, and how to avoid fooling yourself.
    • The Mom Test
      Rob Fitzpatrick, 2013 · How to talk to users so they can't lie to you: past behavior, specifics, no pitching.
    • Continuous Discovery Habits
      Teresa Torres, 2021 · Turning customer contact into a weekly habit, with opportunity trees to connect findings to decisions.
    • "10 Usability Heuristics for User Interface Design" and "Why You Only Need to Test with 5 Users"
      Jakob Nielsen, Nielsen Norman Group (nngroup.com) · The primary sources for Chapters 2 and 9. Free, short, and worth reading in the original.
    • Usability Engineering
      Jakob Nielsen, 1993 · The classic textbook on discount usability; dated in examples, timeless in method.
    • Paper Prototyping
      Carolyn Snyder, 2003 · Everything about testing before code, including how to play the computer.
    • Discussing Design
      Adam Connor & Aaron Irizarry, 2015 · How to give, get and use critique, framed around objectives.
    • "Measuring the User Experience on a Large Scale"
      Rodden, Hutchinson & Fu, CHI 2010 · The HEART paper. Short; read the goals–signals–metrics section twice.
    • Lean Analytics
      Alistair Croll & Benjamin Yoskovitz, 2013 · Which numbers matter at which stage, and the One Metric That Matters.
    • Trustworthy Online Controlled Experiments
      Ron Kohavi, Diane Tang & Ya Xu, 2020 · The definitive A/B testing book. Read the pitfalls chapters even if you never run a test.
    • "How Not To Run an A/B Test"
      Evan Miller, 2010 · A short essay on peeking and stopping early. Ten minutes that will save you from false wins.
    • The Lean Startup
      Eric Ries, 2011 · Build–Measure–Learn, vanity versus actionable metrics, persevere or pivot.
    • Shape Up
      Ryan Singer, Basecamp, 2019 (free online) · Appetites, fixed time and variable scope, circuit breakers: a calm way for a small team (or one person) to iterate.