Heuristic Evaluation

Prasad Kantamneni
9 min readSep 21, 2022

Rapidly evaluate a product for easy use and identify the potential problems before they happen.

Free Video Tutorial on “How to Identify Heuristic Evaluations in any Product”

Heuristics are a set of best practices that make a product easy to use. When used by an expert to evaluate a product, they can help to quickly identify a majority of problems that may stop the user from using the product effectively.

This method is most useful when done by an expert and when there is a time constraint.

Before learning how to do a heuristic evaluation, take a step back and understand exactly what heuristics are: “Heuristics are design principles that contain empirical rules of thumb, best practices, standards rules, and conventions that have been tested or observed over long periods. By sticking to these predefined heuristic standards, you can produce UX designs that simply work better.”

Free & Discounted Udemy Courses — Explore Now

There are 10 heuristic principles defined below:

1. Visibility of system status.

At any given time, the user should be updated with what’s happening in the system. Examples — providing a progress bar for a form; showing the battery percentage on mobile; showing the percentage of file downloading; showing an error message that occurred, etc.

Source: Dribble

The image above provides proper visibility of how many art-boards are uploaded and how much percentage is left to complete the upload process.

2. Match between the System and the Real-world.

This heuristic principle states that “the system should speak the user’s language with words, phrases, and concepts familiar to the user, rather than system-oriented terms.” Always follow real-world conventions to represent information in a natural and logical order. Example — using real-world metaphors like trash, notifications, etc.

Source: Google

The image above is a good example of a match between system and real world. As we generally tend to highlight the important points in a notebook, Medium replicated the same behavior by providing the flexibility to highlight points digitally in an article.

3. User control and freedom.

There is a good chance that users will choose some functions or do activities that are not intended that will require an easy way to get out of. Examples — having an undo, redo, close, or exit buttons, etc.

Source: Prototypr

Google is the best example of User control and freedom. The option to ‘Undo’ an action taken is provided by giving control and freedom to change the action.

4. Consistency and standards.

Users should not have to take too much time to understand a thing or get confused about whether different elements or actions mean and reflect the same thing. Using standard conventions and patterns will increase the usability of the product by avoiding this.

Consistency should be maintained within and outside the system to create a similar behavior across the product.

Source: Slideshare

The example above shows a standard and consistent way of placing Sign-in/Sign-out options across different applications. If it is placed in different positions in different applications, the user will be confused about where to look for certain common options.

5. Error prevention.

What’s even better than good error messages is preventing the errors in the first place. Either identify the error-prone conditions and design a way that prevents getting into that condition, or present users with a confirmation option before they commit to the action to mitigate the errors.

Source: Google

Google helps the user to correct spelling mistakes and search with the right keywords instead of showing an empty search results page because of incorrect spelling.

6. Recognition rather than recall.

Minimize the user’s need to remember the data by making relevant elements, information, and actions visible. If there is a dependency, users should easily recognize what actions were taken and inputs given in the previous activity when they are onto the next one.

Source: Interaction Design Foundation

On the Mac OS, the user does not need to remember the image name and number, but can simply recognize it visually and select it, decreasing the memory load.

7. Flexibility and efficiency of use.

The interface should be efficient for both new/novice users and advanced users. The system should be flexible for the user to customize or use as they want in the given context.

Source: SlideShare

Google provides the flexibility to choose the images with desired colors, size, type, etc.

8. Aesthetic and minimalist design.

The design should not contain irrelevant or unneeded information. Every extra unit of information in a design competes with the relevant units of information and reduces their relative visibility. Always stick to the main goal of the application and the screen, and provide the needed information.

Source: BlaBlaCar

The above-shown image is from a website called BlaBlaCar which allows the user to book a ride. Without adding too much information, it just asks the user to enter the departure and destination information.

9. Help users recognize, diagnose, and recover from errors.

When an error occurs, the most important thing for the user is to be informed about it, understand why it happened, and recover from it quickly. Be more crisp and directional in recovery suggestions to quickly solve the problem.

Source: Prototypr

The example from Mailchimp is the best example of showing an error and showing the user how to resolve it.

10. Help and documentation.

Though avoiding the dependence on help and documentation is preferable, help and documentation may act as a backup guide for the product. Be more specific and contextual while providing help to the user.

Source: Prototypr

GoDaddy applications have a separate screen for Help and Documentation with relevant information for the user.

Let’s learn how to carry out a heuristic evaluation for any application.

In general, heuristic evaluation is carried out by usability experts for better results, but it can be done by any designer by following the steps given below.

Step 1: Understand the product and business requirements.
Before starting the heuristic evaluation, you must know two (2) things about the product;

  1. What is the product about? — What is the main intent of the product? Is it an e-commerce application? Is it customer-based? Will it be used more for business purposes? etc.
  2. What is the business goal? — What does the business want to achieve from the application? To generate more money, to provide cost-effective offers to users, etc.

Step 2: Identify the user persona & their needs.
A product may have one or more user personas. Every persona will have its user journey in the product application. Hence, decide what persona you want to play while doing the heuristic evaluation. What are the major user tasks and what are the multiple paths the user would take to complete the task? (There might be multiple paths to complete a single task). Note the user journey and tasks.

Example: On Amazon, a persona can be a customer and the task can be “the customer wants to search for the desired product”.

Step 3: Go through the user’s journey and accomplish the tasks.
Assume you are the user and complete the task. Do it multiple times to identify flow level issues. Try using all the elements and functionalities across the flow that you think the user will use the most.

Example: The user might use the search and filters more while searching for a product on Amazon.

Step 4: Document the list of heuristic issues identified in the journey.
Throughout the journey of completing a task, note the issues that you identified. Write them on paper, and refer to heuristic principles to identify which principles the issues violate. Sometimes, you have to look at the screens in detail because there might be some minor issues that may not be too critical but still affect the user experience.

Step 5: Prioritize the list of issues by adding severity rating.
Once you identify the list of heuristic issues violated, you need not solve all the issues immediately as it may delay the next process in the design. Hence, prioritize the severity rating of each issue. The high priority issues should be resolved before the low priority ones.

The severity rating is as follows:

1 = If it cannot be considered as a usability issue at any cost.
2 = Cosmetic issue: Not very urgent or impactful, so can be resolved after the launch.
3 = Minor usability problem: Resolve if there is enough time before launch, not considered as the priority.
4 = Major usability problem: There is a definite need to resolve them so that users will not be displeased.
5 = Usability catastrophe: Do not launch without resolving these issues at any cost.

Once the heuristic evaluation is done, you can also provide design recommendations for each heuristic. This will make it easy for you or any other designer to resolve the issues quickly in the next phase of ideation.


Source: UXCollective

The above-shown image is the search page of Behance. This screen opens when you click on “Search”.

Issue: Users can apply only one filter at a time and they cannot filter with multiple categories e.g. Interaction, UI/UX.

Heuristic Identified: Flexibility and efficiency of use (as there is no flexibility for the user to search with more than two tags and search results won’t be more efficient).

Severity Rating: 2 (Minor usability problem).

Recommendation: Allow the user to apply more than one filter at a time and show filter tags to avoid confusion.

How to Apply Heuristics in Design Ideation

(Hands on Design Exercise on how to apply Heuristics in your work environment to be an effective UX Designer!)

Tips / Best Practices

  1. As an expert, put yourself in the user’s shoes during the evaluation.
  2. Identify all the user personas for the product and select a user persona to evaluate.
  3. Select the major flows/tasks in the entire user journey and define proper goals.
  4. Try to comprehensively evaluate the user’s task by keeping in mind different use cases.
  5. Evaluate different elements such as layouts, functionality, flows in any product.
  6. A design may violate multiple heuristics at the same time. The most appropriate heuristic is one that identifies the root cause of the problem. It is possible to violate two equally important heuristics at the same time.
  7. Assign a severity rating for every issue so that you can prioritize and fix the key issues.
  8. Provide a design recommendation for every heuristic violation.


  1. Understand the heuristic principles.
  2. Understand your users.
  3. Identify the major user tasks and journeys.
  4. Define a goal for every user journey/task.
  5. Identify all possible use cases for a journey.
  6. Map the correct heuristics to the issues identified.
  7. Assign severity rating for every issue identified.
  8. Prioritize the issues based on severity rating (High to Low).
  9. Add design recommendations for every issue identified.

Quick Question

The image below is from a social media application where the user is uploading images. Review the image and select one/all heuristic principles that are applied in it.

Source: Pinterest
  1. Error Prevention.
  2. Help users recognize, diagnose, and recover from errors.
  3. User control and Freedom.
  4. Visibility of system status.

Leave your answer in the comments section below!

Free & Discounted Udemy Courses — Explore Now



Prasad Kantamneni

I am a Designer, Problem Solver, Co-Founder of an Inc 5000 Studio, and an Educator by Passion. My goal is to Demystify Design & teach Pragmatic strategies.