UI Tenets and Traps

Name the problem, then trace it to the quality it hurts.

A heuristic evaluation framework of nine tenets and the traps that break them. Each trap is a specific, detectable design problem that maps to exactly one tenet, so a team can say precisely what is wrong and agree on why it matters.

Origin

Michael Medlock and Steve Herbst developed the framework at Microsoft in 2009, from a first version they date to 2007. Nine tenets describe the qualities of a good interface, each written in the user’s own voice, and 26 traps name the common, detectable problems that wear those qualities down.

It won Microsoft’s 2013 Planning and Design Excellence Award, and Microsoft kept teaching it after both authors left; Meta and Amazon teach it too. Since 2017 the authors have sold it as a color-coded card deck, and more than 10,000 decks have gone to researchers around the world. The deck holds 26 traps; this page covers the 23 whose definitions are publicly documented.

The Framework

A tenet is a quality the user should experience, stated the way they would say it: I know what I can do, I don’t wait, I can undo my actions. A trap is a specific pattern that damages one of those qualities. Naming the trap makes a finding precise; tracing it to its tenet explains why it matters.

Coined by
Source
UI Tenets and Traps card deck
In practice
Name the trap, then find its tenet
When to Use
How to Use

Understandable

“I know what I can do.”
Perceptible 01 / 25

Invisible Element

No cue shows how to reach a goal, and the user has no prior learning to get past its absence. The feature exists, but for this person it may as well not.

Symptom
Users say it can’t be done
Fix
Add a visible cue
Example
An unmarked swipe gesture
Noticeable 02 / 25

Effectively Invisible Element

A cue exists but is missed or found slowly, because it sits outside foveal vision or somewhere the user doesn’t expect to look.

Symptom
Users scan straight past it
Fix
Move it into the path of attention
Example
A button far from the task
Noticeable 03 / 25

Distraction

Something appears suddenly or changes rapidly and pulls the user away from their goal. Motion wins attention whether or not it deserves it.

Symptom
Users lose their place
Fix
Save motion for what matters
Example
An autoplaying carousel
Comprehensible 04 / 25

Uncomprehended Element

A critical cue is noticed but misunderstood, so the user ignores it. It looks wrong but is right.

Symptom
Users skip the right control
Fix
Clarify the label or icon
Example
An icon nobody recognizes
Comprehensible 05 / 25

Inviting Dead End

A cue is wrongly taken as the way to a goal. It looks right but is wrong, and the user commits to it before finding out.

Symptom
Users start down the wrong path
Fix
Make the real path look right
Example
A banner mistaken for a button
Comprehensible 06 / 25

Memory Challenge

The user has to remember information that is easy to forget, carrying it from one screen to the next instead of seeing it where it’s needed.

Symptom
Users write things down
Fix
Show it where it is used
Example
A code shown one screen earlier
Comprehensible 07 / 25

Poor Grouping

An important relationship between two or more cues isn’t obvious, so the user can’t tell which controls belong together.

Symptom
Users pair the wrong controls
Fix
Group by proximity and enclosure
Example
A label nearer the wrong field
Confirmatory 08 / 25

Feedback Failure

The user doesn’t see, notice, or understand feedback they need, so they can’t tell whether an action worked.

Symptom
Users repeat the action
Fix
Confirm at the point of action
Example
A save with no visible result

Comfortable

“I can do things quickly and comfortably.”
Comfortable 09 / 25

Physical Challenge

The user knows what to do, but doing it is physically effortful, difficult, or impossible.

Symptom
Users miss or strain
Fix
Enlarge and move the target
Example
A tiny close button on a phone
Comfortable 10 / 25

Accidental Activation

The user’s physical actions produce an outcome they didn’t intend, usually because a control sits too close to another or fires too easily.

Symptom
Users trigger the wrong thing
Fix
Space out and guard risky controls
Example
Delete right beside Save

Responsive

“I don’t wait.”
Responsive 11 / 25

Slow or No Response

Real or perceived poor performance, or a design that blocks moving forward or backing out, keeps the user from reaching a goal in a timely way.

Symptom
Users click again, or give up
Fix
Respond at once, then load
Example
A frozen screen with no progress

Efficient

“I take fewer steps and process less information.”
Step Reduced 12 / 25

Unnecessary Step

Even when the interface is used exactly as intended, reaching a goal takes more navigation than it should, or feels like it does.

Symptom
Users sigh at another screen
Fix
Remove or merge the step
Example
A confirmation nobody needs
Information Reduced 13 / 25

Information Overload

The information is understandable, but there is too much of it, and what matters gets lost among what doesn’t.

Symptom
Users skim and miss the point
Fix
Cut, then disclose the rest
Example
A settings page of 80 options
Retentive 14 / 25

System Amnesia

The system asks again for information it already has, or fails to reuse work the user has already done.

Symptom
Users retype what they gave
Fix
Remember and prefill
Example
An address asked for twice
Predictive 15 / 25

Bad Prediction

The system guesses at the user’s intent and guesses wrong, so the user has to correct it or work around it.

Symptom
Users undo the system’s change
Fix
Make every guess easy to reject
Example
An autocorrect that won’t let go

Forgiving

“I can undo my actions.”
Forgiving 16 / 25

Irreversible Action

The user can’t undo a wrong step. Every other safeguard matters less once this one is missing.

Symptom
Users hesitate before acting
Fix
Add undo, not just a warning
Example
A send with no way back

Discreet

“I don’t overshare.”
Discreet 17 / 25

Unwanted Disclosure

The user’s behavior or data becomes public in a way they didn’t intend, causing possible harm, irritation, or embarrassment.

Symptom
Users are surprised by who saw it
Fix
Default to private, show the audience
Example
Activity shared without asking

Protective

“I don’t lose my data.”
Protective 18 / 25

Data Loss

The user can lose their work through something they did, or something they failed to do.

Symptom
Users redo lost work
Fix
Save automatically and often
Example
A form wiped by the back button

Habituating

“I quickly achieve mastery.”
Non-Redundant 19 / 25

Gratuitous Redundancy

Several cues for the same action appear at one level of the interface, or at a directly nested level, and the user has to work out whether they differ.

Symptom
Users compare identical options
Fix
Keep one path per level
Example
Two Save buttons on one screen
Consistent with Expectations 20 / 25

Inconsistent Element

A cue looks different, or sits in a different place, than it does elsewhere in the interface, so what the user learned stops working.

Symptom
Users hunt for a familiar control
Fix
Use one pattern everywhere
Example
A menu that moves between pages
Consistent with Expectations 21 / 25

Variable Outcome

The same control does different things depending on the state of the system, so the user can’t predict what it will do.

Symptom
Users are surprised by the result
Fix
Show the state, or split the control
Example
One button that saves or sends
Sense of Home 22 / 25

Ambiguous Home

There is no single place to return to for starting a task or getting reoriented, and several competing homes leave the user unsure where they are.

Symptom
Users feel lost
Fix
Establish one clear home
Example
A dashboard and a hub that compete

Beautiful

“I find it attractive.”
Beautiful 23 / 25

Unattractive Appearance

The system is visually unpleasant, or doesn’t follow its own design language, and users judge its quality by what they see.

Symptom
Users call it dated or cheap
Fix
Apply the design system fully
Example
Styles left from three redesigns
✦

The Traps in the Age of AI

The traps were written for interfaces with fixed controls. AI moves where several of them turn up, and makes a few much easier to fall into.

✦ AI Era 24 / 25

Bad Prediction Is the Default

An assistant predicts intent on every turn, so a trap that used to live in autocorrect now sits in every response. What matters most is how cheaply the user can reject a guess.

Shift
Occasional → constant
Use when
Designing an assistant
Watch for
Guesses that are hard to undo
✦ AI Era 25 / 25

The Blank Prompt Hides Everything

A prompt box shows no controls at all, so everything it can do is an invisible element until the user thinks to ask for it.

Shift
Visible controls → blank prompt
Use when
Onboarding to a chat interface
Watch for
Features nobody discovers
Further Reading