Guidelines for Designing Menus
CS 252, Winter 2000


The guidelines presented here are based on a variety of experimental studies as well as practical experimentation with user interfaces. Each guideline is presented with an explanation and a specific example.


Organizing Menus

From J. R. Brown and S. Cunningham, Programming the User Interface, John Wiley & Sons, 1989.

(1) Keep menus short and clear.

(2) Keep nested menus as simple as possible, and do not nest them deeply.

(3) Be sure your graphic representations are immediately distinguishable from each other.

(4) Use grouping to give a first level of discrimination in menus.

(5) In any graphic or text menu, highlight the currently selected item.


From Joseph S. Dumas, Designing User Interfaces for Software, Prentice-Hall, 1988.

(1) Put a meaningful title on the top of every menu.

(2) Choose an organizing principle for the menu options.

(3) To facilitate scanning, put blank lines between logical groupings of menu options and after about every fifth option in a long list.

(4) Provide a way for the user to leave the menu without choosing an option.

(3) Use words for your menu options that clearly and specifically describe what the user is selecting; use simple, active verbs to describe menu options.

(4) Use icons that unambiguously identify the meaning of the user's options.

(5) Minimize the highlighting used on a menu.

(6) Display the menu options in mixed, upper, and lower case letters.

(7) Organize menu hierarchies according to the tasks users will perform, rather than the structure of the software modules.

(8) Use function keys sparingly to speed up the execution of frequently used operations.


Adapted from W. O. Galitz, The Essential Guide to User Interface Design, John Wiley & Sons, 1996.

A. Organization of menus:

  1. Display all relevant alternatives.
  2. Display only relevant alternatives.
  3. Delete or gray-out inactive choices.
  4. Match the menu structure to the structure of the task. The organization should reflect the most efficient sequence of steps to accomplish a person's most frequent or most likely goals.
  5. If menu items cannot be grouped into logical categories, confine each menu to ten or fewer items. If the items are not complex, the number can be increased to 20.
  6. In multilevel menus, the number of choices should decrease progressively as each lower lever is traversed.
  7. Provide two sets of menus (for novice and expert users), one with a minimal set of actions and cascaded menus; the other with a complete set of actions and menus.
  8. Provide users with an easy way to restructure a menu according to how work is accomplished.

B. Text of menu items:

  1. Items can be names of actions, properties, documents, or windows.
  2. Do not use abbreviations in menu item names.
  3. Item names may be single words, compound words, or multiple words.
  4. Place the key word first (usually a verb).
  5. The first letter of each item name word should be capitalized, except for conjunctions, articles, and prepositions.
  6. Use task-oriented, not data-oriented, wording.
  7. Use related wording construction for the different items.
  8. A menu item must never have the same wording as the menu title.
  9. Item descriptions should be unique within a menu.
  10. Identical items on different menus should be named identically.
  11. Items should not be numbered unless the listing is numeric in nature.

C. Grouping of menu items:

  1. Create hierarchical groupings of items that are logical, distinctive, meaningful, and mutually exclusive.
  2. Categorize groups so as to maximize the similarity of items within a category, and minimize the similarity of items across categories.
  3. Separate groupings through either wider spacing or a thin ruled line.
  4. Provide immediate access to critical or frequently chosen items.

D. Ordering of menu items:

  1. Order lists with a small number of options (seven or less) by one of the following:
    • their natural order
    • sequence of occurrence
    • frequency of occurrence
    • importance
  2. Use alphabetic order for long lists (eight or more options), or for short lists with no obvious pattern or frequency.
  3. Separate potentially destructive actions from frequently chosen items.
  4. Maintain a consistent ordering of options on all related menus. For fixed-length menus, maintain consistent absolute positions; for variable-length menus, maintain consistent relative positions.