Use when choosing or designing primary navigation for a website or app — to select the right structural pattern (top nav, side nav, tabs, bottom nav) for the content depth and device context, and avoid the anti-patterns that account for the majority of navigation usability failures.
Scanned 9/8/2026
Install to Claude Code
npx -y skills add jeffreytse/grimoire-core --skill design-navigation-patterns --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Design Navigation Patterns?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jeffreytse-design-navigation-patterns)More formats (shields.io, HTML) on the badges page.
---
name: design-navigation-patterns
description: Use when choosing or designing primary navigation for a website or app — to select the right structural pattern (top nav, side nav, tabs, bottom nav) for the content depth and device context, and avoid the anti-patterns that account for the majority of navigation usability failures.
source: NNG "Navigation Design" guidelines (Budiu, 2020); Apple HIG "Tab Bars" and "Navigation Bars"; Google Material Design "Navigation drawer" and "Navigation bar" (2022); Wroblewski "Mobile Navigation Patterns" (LukeW, 2012)
tags: [navigation, information-architecture, mobile-nav, sidebar, tabs, breadcrumbs, wayfinding, ux-patterns]
---
# Design Navigation Patterns
Select the navigation pattern that matches content depth and device context, label it with nouns, mark the active state clearly, and add wayfinding cues when depth exceeds two levels.
## Why This Is Best Practice
**Adopted by:** Apple HIG specifies tab bars, navigation bars, and sidebars for distinct use cases — not interchangeably; Google Material Design 3 (2022) defines Navigation Bar (mobile), Navigation Drawer (desktop/tablet), and Navigation Rail as distinct patterns with documented triggers; all major design systems (IBM Carbon, Shopify Polaris, Atlassian Design System) encode navigation patterns with platform-specific variants; NNG's Navigation Design guideline is the most-cited UX research authority on navigation structure
**Impact:** NNG (Budiu, 2020) identifies navigation as the #1 usability problem area on websites — more than search, content, or layout; Baymard Institute's mobile navigation research (2021) found that mobile hamburger menus reduce navigation discoverability by 44% compared to persistent tab bars; Nielsen's original Usability Engineering (1993) identifies clear navigation as the strongest predictor of learnability across all digital products
**Why best:** Navigation pattern selection is not an aesthetic choice — it determines how many taps/clicks a user needs to reach any content, whether users can orient themselves within the IA, and whether mobile users can reach navigation with one thumb; the alternative of applying a single pattern universally (e.g., hamburger for all devices) is consistently the highest-impact navigation mistake documented in NNG and Baymard research
Sources: NNG "Navigation Design: Almost Everything You Need to Know" (Budiu, 2020); Apple Human Interface Guidelines "Navigation Bars" + "Tab Bars" (2023); Google Material Design 3 "Navigation" (2022); Baymard Institute "Mobile Navigation UX" (2021)
## Steps
### 1. Map content depth and choose the primary pattern
Count the number of top-level sections and the maximum navigation depth:
| Depth | Top-level items | Recommended pattern |
|-------|----------------|---------------------|
| Shallow (1–2 levels) | 2–5 | **Tabs** (always visible, equal weight) |
| Medium (2–3 levels) | 3–7 | **Top navigation bar** (desktop) / **Bottom navigation bar** (mobile) |
| Deep (3+ levels) | 5–7 | **Side navigation / navigation drawer** with expand/collapse for sub-sections |
| Very deep (4+ levels) | 7+ | **Side nav + breadcrumbs** — side nav for primary; breadcrumbs for path |
**Tabs** (iOS tab bar, web tab group): best when sections are equal in importance and frequently switched. Maximum 5 tabs — beyond that, users cannot perceive tabs as a set.
**Top navigation bar**: standard for desktop web. Works for 4–8 top-level items. Supports dropdowns for sub-navigation. Does not work on mobile — thumb reach fails.
**Bottom navigation bar** (Material Navigation Bar, iOS Tab Bar): mobile standard. Maximum 5 items. Items must be destinations, not actions. Thumb-reachable on all phone sizes.
**Side navigation / Navigation drawer**: works for 7+ sections or when sections have sub-sections that need to be visible simultaneously. On mobile, use a drawer (swipe to open) rather than a persistent sidebar — persistent sidebars consume too much viewport.
### 2. Apply device-specific conventions
Navigation patterns are not device-agnostic:
**Mobile:**
- Primary navigation → bottom nav bar (not hamburger) for ≤ 5 destinations
- Hamburger menu acceptable only for secondary navigation or when > 5 primary destinations exist
- Swipe-to-open drawer for infrequently-accessed secondary navigation
- Never use hover-dependent navigation (desktop dropdowns) on mobile
**Desktop web:**
- Top nav for most sites; left sidebar for applications with many sections (admin dashboards, docs, file explorers)
- Mega-menu acceptable for e-commerce with > 10 categories — keeps navigation visible and avoids depth
- Avoid left sidebar for primarily informational/marketing sites — users scan left-to-right and sidebar competes with content
**Tablet:**
- Landscape: treat as constrained desktop → side nav rail (icons + labels, no full drawer)
- Portrait: treat as large mobile → bottom nav or collapsible drawer
- Material Design Navigation Rail is designed specifically for tablet landscape
### 3. Label navigation items correctly
Navigation labels must be nouns or noun phrases, not verbs:
```
❌ "Explore" → ✅ "Browse" or name the category ("Products")
❌ "Manage" → ✅ "Settings" or "Team"
❌ "View reports" → ✅ "Reports" or "Analytics"
❌ "Create" (standalone — where does it navigate to?) → remove; this is an action, not a nav item
```
**Rules for labels:**
- One to two words maximum
- Consistent grammatical form across all nav items (all nouns, or all noun phrases — not mixed)
- Label must match the page heading it navigates to — mismatch between nav label and page title is a top-3 wayfinding failure (NNG)
- No icons without labels in bottom nav — icon-only navigation requires 3× more time for new users to learn (NNG 2016)
### 4. Mark the active state clearly
Active state communicates "you are here." It must be visually unambiguous:
```
Minimum active state requirements:
- Color change (not just a shade lighter — a distinct accent color)
- Weight change (bold label) OR icon fill change (outline → filled)
- At least 2 of: color, weight, position indicator (underline, dot, highlight)
❌ Active state = slightly darker text → fails for low-vision users; fails blur test
✅ Active state = accent color + filled icon + underline indicator
```
Always provide active state on page load — users should know where they are before they interact.
### 5. Add breadcrumbs for depth > 2 levels
When content lives more than 2 levels deep, add breadcrumbs above the page heading:
```
Home > Products > Laptops > MacBook Pro 14"
```
Breadcrumb rules:
- Current page is the last breadcrumb; it does NOT need to be a link (it's the current page)
- Every ancestor IS a link
- Show full path — never truncate to just parent
- Use `>` or `/` as separator (both are standard; be consistent)
- Breadcrumbs supplement navigation — they do not replace it
Breadcrumbs reduce navigational backtracking by 25% on sites with 3+ level hierarchies (NNG).
### 6. Avoid the six most common navigation anti-patterns
**1. Hamburger menu as primary mobile navigation**
Hidden navigation reduces discoverability by 44%. Use bottom nav bar for ≤ 5 primary destinations.
**2. Icon-only bottom navigation without labels**
Users take 3× longer to learn icon-only navigation vs labeled icons (NNG 2016). Always add text labels.
**3. Nav label ≠ page heading**
"Pricing" in nav → "Plans & Pricing" on page → user questions whether they're in the right place. Exact label match is required.
**4. Active state missing or too subtle**
If users cannot identify where they are in one glance, orientation fails. Active state is not optional.
**5. Navigation changes on scroll (hiding/transforming)**
"Shrinking headers" and navigation that transforms on scroll increases interaction cost. Static navigation is faster for users (Baymard, 2021).
**6. Orphan pages — no navigation back**
Any page reachable via navigation must be navigable back to the previous level. Dead ends require the back button — navigation failure.
## Rules
- Bottom nav on mobile for ≤ 5 primary destinations — hamburger only for secondary or > 5 items
- Navigation labels are nouns, not verbs — they name destinations, not actions
- Nav label must match the page heading exactly — mismatch breaks orientation
- Always show active state on page load — users must know where they are before they interact
- Icon-only navigation requires labels — icons without labels are learned, not intuited
- Breadcrumbs required at depth > 2 — users need a full path, not just a parent link
## Common Mistakes
- **Hamburger by default on mobile**: hiding primary navigation because "it saves space" — it also hides the feature from users; bottom nav bars outperform hamburger menus on task success rate
- **Tab bar with 6+ items**: adding a sixth tab because "it's just one more" — beyond 5, users cannot perceive the full set; restructure the IA or use a secondary navigation pattern for the sixth item
- **Hover-dependent desktop dropdowns copied to mobile**: tap events don't have hover; nav menus that only open on hover are unreachable on touch devices — all navigation must be touch-activatable
- **Sidebar on a marketing site**: left sidebars push content right, competing with the natural left-to-right scan path; use top navigation for sites where content is the primary focus
- **No back navigation in modals or nested views**: presenting content in a modal or side panel without a close/back action — users are trapped
## When NOT to Use
- Single-page tools (calculators, converters, standalone forms) with no sectional navigation — these have no navigational hierarchy; a single-page header without nav links is the correct pattern
- Internal tools used by a single team where navigation is always the same 3–4 items and users have developed muscle memory over months — in those cases, consistency matters more than pattern optimization; avoid redesigning familiar navigation without a usability case
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!