cognitive-load
Design experiences that optimize mental resources using Cognitive Load Theory. Use when designing interfaces, creating onboarding flows, planning information architecture, or improving task completion rates.
Best use case
cognitive-load is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Design experiences that optimize mental resources using Cognitive Load Theory. Use when designing interfaces, creating onboarding flows, planning information architecture, or improving task completion rates.
Teams using cognitive-load should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/cognitive-load/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How cognitive-load Compares
| Feature / Agent | cognitive-load | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Design experiences that optimize mental resources using Cognitive Load Theory. Use when designing interfaces, creating onboarding flows, planning information architecture, or improving task completion rates.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Cognitive Load - Designing for Human Memory Cognitive Load Theory (CLT), developed by John Sweller, provides a framework for designing experiences that work with human working memory limitations. Understanding the three types of cognitive load helps create interfaces that feel effortless and intuitive. ## When to Use This Skill - Designing complex forms or workflows - Creating onboarding experiences - Simplifying feature-rich interfaces - Improving task completion rates - Planning information architecture - Reviewing designs for usability ## Working Memory Limitations ``` Human Processing Capacity: ┌─────────────────────────────────────────────────────┐ │ WORKING MEMORY │ │ │ │ Capacity: 7 ± 2 items simultaneously │ │ Duration: ~20 seconds without rehearsal │ │ Processing: Serial, not parallel │ │ │ │ When exceeded → Errors, frustration, abandonment │ └─────────────────────────────────────────────────────┘ Design goal: Stay WITHIN capacity limits. ``` ## Three Types of Cognitive Load ``` Total Cognitive Load = Intrinsic + Extraneous + Germane ┌─────────────────────────────────────────────────────────────────┐ │ WORKING MEMORY CAPACITY │ ├─────────────────┬─────────────────┬─────────────────────────────┤ │ INTRINSIC │ EXTRANEOUS │ GERMANE │ │ │ │ │ │ Task │ Bad design │ Learning & │ │ complexity │ noise │ schema building │ │ │ │ │ │ Can't reduce │ ELIMINATE │ MAXIMIZE │ │ without │ THIS │ THIS │ │ changing task │ │ │ └─────────────────┴─────────────────┴─────────────────────────────┘ ``` ### 1. Intrinsic Load **What it is:** The inherent difficulty of the task itself. | Characteristic | Example | | ----------------------------- | -------------------------------------- | | Determined by task complexity | Filing taxes vs. sending email | | Varies by user expertise | Expert finds it easy, novice struggles | | Cannot be eliminated | Only managed through design | **Design strategies:** - Break complex tasks into smaller steps - Provide progressive disclosure - Build on existing mental models - Offer different paths for different expertise levels ### 2. Extraneous Load **What it is:** Unnecessary mental effort from poor design. ``` Common Sources of Extraneous Load: Visual: ├── Cluttered layouts ├── Poor typography ├── Inconsistent patterns └── Distracting animations Interaction: ├── Unclear navigation ├── Unexpected behaviors ├── Too many options └── Hidden functionality Content: ├── Jargon and complexity ├── Redundant information ├── Missing context └── Poor information hierarchy ``` **Design strategies:** - Eliminate decorative elements without purpose - Use consistent design patterns - Apply strong visual hierarchy - Remove redundant information ### 3. Germane Load **What it is:** Productive mental effort that builds understanding. | Benefit | Example | | ------------------------------ | ----------------------------- | | Builds mental models | User learns system behavior | | Enables efficiency | Experienced user works faster | | Creates transferable knowledge | Skills apply to similar tasks | **Design strategies:** - Provide clear feedback on actions - Create learnable, consistent patterns - Design onboarding that builds foundations - Use progressive enhancement for power features ## Load Analysis Framework ### Step 1: Map the Task ``` Task Decomposition: [Main Task] ├── Step 1: [Action] → Load type: [I/E/G] │ └── Decisions required: [count] ├── Step 2: [Action] → Load type: [I/E/G] │ └── Decisions required: [count] ├── Step 3: [Action] → Load type: [I/E/G] │ └── Decisions required: [count] └── Completion ``` ### Step 2: Identify Load Sources For each step, categorize the cognitive demands: | Step | Intrinsic Load | Extraneous Load | Germane Load | | ---- | ----------------- | --------------- | ---------------- | | 1 | [Task complexity] | [Design issues] | [Learning value] | | 2 | [Task complexity] | [Design issues] | [Learning value] | | 3 | [Task complexity] | [Design issues] | [Learning value] | ### Step 3: Design Interventions ``` Intervention Strategy: High Intrinsic Load? ├── YES → Break into smaller steps ├── YES → Add progressive disclosure ├── YES → Provide scaffolding/help └── YES → Offer simplified path High Extraneous Load? ├── YES → Remove unnecessary elements ├── YES → Improve visual hierarchy ├── YES → Simplify navigation └── YES → Fix inconsistent patterns Low Germane Load? ├── YES → Add meaningful feedback ├── YES → Create learnable patterns ├── YES → Design for skill building └── YES → Connect to existing knowledge ``` ## Output Template After completing analysis, document as: ```markdown ## Cognitive Load Analysis **Feature/Flow:** [Name] **Date:** [Date] ### Task Map | Step | Description | Intrinsic | Extraneous | Germane | | ---- | ----------- | ------------ | ------------ | ------------ | | 1 | [Step] | High/Med/Low | High/Med/Low | High/Med/Low | | 2 | [Step] | High/Med/Low | High/Med/Low | High/Med/Low | ### Load Issues Identified #### Intrinsic Load Problems - [Issue]: [Location] - [Issue]: [Location] #### Extraneous Load Problems - [Issue]: [Location] - [Issue]: [Location] ### Recommendations | Priority | Change | Expected Impact | | -------- | ----------------- | --------------------- | | High | [Specific change] | [Reduces X load by Y] | | Medium | [Specific change] | [Reduces X load by Y] | ### Success Metrics | Metric | Current | Target | | -------------------- | ------- | ------ | | Task completion rate | X% | Y% | | Time to complete | X min | Y min | | Error rate | X% | Y% | | User satisfaction | X | Y | ``` ## Real-World Examples ### Google Search ``` Load Optimization: Intrinsic: Minimal - just type what you want Extraneous: Near zero - white space + search box Germane: Focus on learning query refinement Result: 2-3x faster searches than competitors ``` ### Slack Progressive Disclosure ``` New User Experience: ├── Basic: Messaging interface only ├── Intermediate: Threading, channels ├── Advanced: Integrations, workflows └── Enterprise: Admin controls Each level builds on previous knowledge (germane load) without overwhelming new users (extraneous load). ``` ### Apple iOS Consistency ``` System-wide Patterns: Gestures: ├── Swipe from left = back (everywhere) ├── Pull down = refresh (everywhere) ├── Long press = more options (everywhere) └── Pinch = zoom (everywhere) Consistency eliminates extraneous load. Users learn once, apply everywhere. ``` ## Design Strategies by Load Type ### Reducing Intrinsic Load | Strategy | Implementation | | ---------------------- | ------------------------- | | Task chunking | Max 3-5 items per screen | | Mental model alignment | Use familiar metaphors | | Smart defaults | Pre-select common choices | | Contextual help | Show info when needed | ### Eliminating Extraneous Load | Strategy | Implementation | | ---------------------- | ------------------------------------- | | Visual hierarchy | Size, color, position guide attention | | Consistent patterns | Same action = same interaction | | Content prioritization | Most important info first | | Distraction removal | No unnecessary animations/elements | ### Optimizing Germane Load | Strategy | Implementation | | ----------------------- | ---------------------------------- | | Clear feedback | Show results of every action | | Pattern consistency | Create learnable behaviors | | Progressive enhancement | Reveal features as expertise grows | | Knowledge transfer | Design transferable skills | ## Measurement Approaches ### Quantitative - Task completion time - Error rate and recovery time - Number of help requests - Tab/window switches during task - Abandonment points ### Qualitative - Think-aloud testing (confusion points) - Cognitive walkthroughs (step-by-step effort) - Post-task interviews (perceived difficulty) - Eye tracking (scanning patterns) ## Integration with Other Methods | Method | Combined Use | | -------------------------- | -------------------------------------------- | | **Cognitive Fluency** | Fluency is one way to reduce extraneous load | | **Hick's Law** | Fewer choices = lower load | | **Progressive Disclosure** | Manage intrinsic load over time | | **Graph Thinking** | Map load relationships across system | | **Five Whys** | Why are users struggling/abandoning? | ## Quick Reference ``` COGNITIVE LOAD CHECKLIST Intrinsic Load Management: □ Tasks broken into 3-5 step chunks □ Progressive disclosure for complexity □ Different paths for different expertise □ Builds on familiar concepts Extraneous Load Elimination: □ Clear visual hierarchy □ Consistent interaction patterns □ No unnecessary decorative elements □ Logical information architecture Germane Load Optimization: □ Clear feedback on all actions □ Patterns that transfer across features □ Onboarding builds mental models □ Advanced features reward learning Testing: □ Task completion measured □ Error rates tracked □ User confusion points identified □ Learning curve improving over time ``` ## Resources - [Cognitive Load Theory - John Sweller](https://www.instructionaldesign.org/theories/cognitive-load/) - [Don't Make Me Think - Steve Krug](https://sensible.com/dont-make-me-think/) - [Laws of UX](https://lawsofux.com/) - [Nielsen Norman Group - Cognitive Load](https://www.nngroup.com/articles/minimize-cognitive-load/)
Related Skills
cognitive-fluency-psychology
Apply cognitive fluency principles to improve clarity, trust, and conversion. Use when designing landing pages, writing copy, creating interfaces, or optimizing any content for better user comprehension and engagement.
cognitive-biases
Apply cognitive bias knowledge to product design and decision-making. Use when designing user experiences, analyzing user behavior, improving conversions, or ensuring ethical design practices.
what-not-to-do-as-product-manager
Anti-patterns and mistakes to avoid as a product manager. Use when evaluating leadership behaviors, improving team dynamics, reflecting on management practices, or onboarding new product managers.
visual-cues-cta-psychology
Design effective CTAs using visual attention and gaze psychology principles. Use when designing landing pages, button hierarchies, conversion elements, or optimizing user attention flow through interfaces.
vercel-sandbox
Run agent-browser + Chrome inside Vercel Sandbox microVMs for browser automation from any Vercel-deployed app. Use when the user needs browser automation in a Vercel app (Next.js, SvelteKit, Nuxt, Remix, Astro, etc.), wants to run headless Chrome without binary size limits, needs persistent browser sessions across commands, or wants ephemeral isolated browser environments. Triggers include "Vercel Sandbox browser", "microVM Chrome", "agent-browser in sandbox", "browser automation on Vercel", or any task requiring Chrome in a Vercel Sandbox.
value-realization
Analyze if end users discover clear value. Use when evaluating product concepts, analyzing adoption, or uncertain about direction.
user-story-fundamentals
Capture requirements from user perspective with structured user stories. Use when writing backlog items, defining acceptance criteria, prioritizing features, or communicating requirements between product and development.
typescript-satisfies-operator
Guides proper usage of TypeScript's satisfies operator vs type annotations. Use this skill when deciding between type annotations (colon) and satisfies, validating object shapes while preserving literal types, or troubleshooting type inference issues.
typescript-interface-vs-type
Guides when to use interface vs type in TypeScript. Use this skill when defining object types, extending types, or choosing between interface and type aliases.
typescript-best-practices
Guides TypeScript best practices for type safety, code organization, and maintainability. Use this skill when configuring TypeScript projects, deciding on typing strategies, writing async code, or reviewing TypeScript code quality.
typescript-advanced-types
Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications. Use when implementing complex type logic, creating reusable type utilities, or ensuring compile-time type safety in TypeScript projects.
trust-psychology
Build trust signals that reduce perceived risk and enable user action. Use when designing landing pages, checkout flows, onboarding experiences, or any conversion point where user hesitation is a barrier.