01 / Nielsen Heuristics

Visibility of System Status

Let people know what the system is doing, especially when an action takes time.

Visual proof

People should never have to wonder whether the system heard them.

Story

You click Save. Nothing changes. Did it work? Should you click again? That brief silence creates doubt. A good interface answers quickly: saved, loading, sent, or failed. The signal can be small. The reassurance is not.

Origin

Nielsen and Rolf Molich developed the heuristics in 1990. Nielsen refined them in 1994 after reviewing 249 usability problems. His response-time guidance uses 0.1, 1, and 10 seconds as useful checkpoints.

Field Rules

  • 01

    Aim to acknowledge input within about 0.1 second. A pressed state, checkmark, or short message can confirm that the system received the action.

  • 02

    If an operation takes more than a second, show that the system is working. Use a progress bar when you can estimate completion. Use an indeterminate indicator when you cannot.

  • 03

    After about 10 seconds, show meaningful progress and let people stop the operation. Nielsen recommends a percent-done indicator for waits this long.

  • 04

    Use a skeleton when the page structure is known. It previews what is coming and reserves space for the content. If loading stalls, show a clear message or retry action.

Examples

Digital systems

Skeleton screens

A skeleton shows where content will appear before it loads. When it matches the final layout, the page stays visually stable. If loading stalls, replace it with a clear message or retry action.

Physical signals

Elevator floor displays

A floor display shows the current floor, an arrow shows the direction of travel, and a chime marks arrival. Together, these signals tell passengers what the lift is doing without making them guess.

Application

When the system goes quiet

When feedback is missing, people fill the gap themselves: maybe the click failed, the page froze, or their work was lost. That uncertainty can lead to repeated actions and makes the next step harder to judge.

Resolves with
Make every state visible

Show what changed, what is happening now, and what comes next. Use the smallest useful signal, such as a button state, toast, progress bar, status label, or error message. Show it when people need it.

Sources