Usability Heuristics

April 30, 2022

image by Gus Ruballo [Image by Gus Ruballo on Unsplash]

Human Computer Interaction researcher Jakob Nielsen developed a set of 10 heuristics for UI design back in 1994. Despite all the changes in technology since then, these principles can still be applied today.

What are Usability Heuristics?

Usability - how easy is it to use a system (or website).

Heuristic - an approach to solving problems using mental models or ‘shortcuts’.

So together: Usability Heuristics should be viewed as a general rule-of-thumb, rather than specific guidelines that must be followed, when designing User Interfaces.

1. Visibility of System Status

The system should provide feedback to the user about its current state. This helps build trust that the system is operating correctly.

Example - A loading icon is displayed when the system is processing information.

2. Match Between System and the Real World

The match between the system and the real world could take the form of images, layouts used or even terminology. It is important to understand and implement the language known to the users.

Example - The recycle bin icon is designed to look like a bin.

3. User Control and Freedom

Allow the user to feel in control of the system. This could be allowing the option to cancel interactions or undo any unwanted changes.

Example - Allow the user to cancel form submissions or being able to return to previous screens.

4. Consistency and Standards

This principle can cover internal and external consistencies - keeping a consistent approach within your system, and considering designs used in other popular systems and services.

This isn’t about copying other system designs - it’s about being aware that users are familiar with other well used conventions.

Example - Accessing menus, searchbars or exit icons at the top of the screen.

5. Error Prevention

Rather than focusing on catching different types of errors, think of ways that errors can be avoided in the first place.

Example - Prevent form submissions until all required fields are filled.

6. Recognition rather than Recall

The user shouldn’t have to remember how to interact with your system. There should be easily recognisable icons and options to perform actions and interact with the system.

Example - In multi-page forms, display required information to avoid the user going back to check earlier answers.

7. Flexibility and Efficiency of Use

New users should be able to use the system easily, but consider including shortcuts and customisations to more experienced users to increase their efficiency.

Example - Provide customisation options to the user, like the ability to rearrange menus to quickly access frequently used items.

8. Aesthetic and Minimalist Design

Less is more.

Don’t clutter up a system with unnecessary information and focus on the important aspects.

9. Help Users Recognise, Diagnose and Recover from Errors

If the user does end up encountering an error, at least provide something meaningful as an error message. Try to avoid displaying error codes or technical information - just a clear message indicating the problem and a possible solution.

Example - Email field error messages like “Enter your address in the format: yourname@example.xyz” are much more helpful than “validEmailRegex test failed”.

10. Help and Documentation

It’s probably best to design a system that doesn’t need any specific guidance - but if you have to include complexity, provide help to the user!

Example - Provide information icons next to input fields to provide additional explanation.

What can I do with these heuristics?

You can carry out Heuristic Evaluations of systems using these principles. Pick a website and work your way through the pages, thinking about the type of actions that users will perform.

How many of the Usability Heuristics can you identify? If you discover issues, could any of the principles help improve the website’s usability?

Read more at: Jakob Nielsen’s 10 Usability Heuristics for User Interface Design.


Profile picture

Written by Andrew Yule