curiosity-gap
Create engagement through strategic information gaps that drive user action. Use when designing notifications, writing headlines, planning onboarding flows, or creating content that needs to capture and hold attention.
Best use case
curiosity-gap is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Create engagement through strategic information gaps that drive user action. Use when designing notifications, writing headlines, planning onboarding flows, or creating content that needs to capture and hold attention.
Teams using curiosity-gap 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/curiosity-gap/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How curiosity-gap Compares
| Feature / Agent | curiosity-gap | 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?
Create engagement through strategic information gaps that drive user action. Use when designing notifications, writing headlines, planning onboarding flows, or creating content that needs to capture and hold attention.
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
# Curiosity Gap - Psychology of Information Seeking
The curiosity gap is a psychological phenomenon where people experience an
unpleasant feeling of uncertainty when aware of missing information, creating
intense motivation to fill that knowledge gap. Based on George Loewenstein's
Information Gap Theory, curiosity functions like a drive state—similar to
hunger—compelling people to seek resolution.
## When to Use This Skill
- Writing headlines and subject lines
- Designing notification strategies
- Creating onboarding and feature discovery flows
- Planning content marketing
- Building engagement loops
- Designing product reveals and launches
## Psychological Foundation
```
Information Gap Theory (Loewenstein, 1994):
Knowledge Gap Detected
↓
Cognitive Tension (uncomfortable uncertainty)
↓
Drive-State Activation (like hunger)
↓
Attention Focus (on missing information)
↓
Action to Resolve (click, read, explore)
↓
Reward (caudate nucleus activation)
```
### Neuroscience
fMRI studies show curiosity activates:
- **Caudate nucleus**: Reward anticipation
- **Inferior frontal gyrus**: Information seeking
- Same regions activated by monetary rewards
Curiosity is literally rewarding to resolve.
## Curiosity Gap Anatomy
```
Effective Curiosity Gap Structure:
┌─────────────────────────────────────────────────────┐
│ │
│ REVEAL enough to: CONCEAL enough to: │
│ ├── Establish relevance ├── Create uncertainty │
│ ├── Build interest ├── Trigger motivation │
│ └── Signal value └── Drive action │
│ │
│ Balance Point: User knows WHAT but not HOW/WHY │
│ │
└─────────────────────────────────────────────────────┘
```
### Gap Types
| Type | Trigger | Example |
| ------------------ | ----------------------- | --------------------------------- |
| **Knowledge gap** | "I don't know this" | "The strategy Netflix uses to..." |
| **Outcome gap** | "What happened?" | "She tried it, and then..." |
| **Opinion gap** | "What do others think?" | "Experts are divided on..." |
| **Resolution gap** | "How does this end?" | "The surprising conclusion..." |
## Application Framework
### Step 1: Define the Payoff
Before creating a gap, know what you're promising:
```
Payoff Clarity:
What will the user gain?
├── Information (learn something new)
├── Solution (solve a problem)
├── Entertainment (experience something)
└── Status (know what others don't)
The gap must lead to real value, not disappointment.
```
### Step 2: Calibrate the Gap
```
Gap Size Spectrum:
Too Small Too Large
"Click to see" ←───────────→ "Mind-blowing secret"
↓ ↓
No motivation Skepticism/distrust
Sweet Spot:
├── Specific enough to be believable
├── Intriguing enough to motivate
└── Relevant to user's interests
```
### Step 3: Choose the Reveal Strategy
| Strategy | When to Use | Example |
| --------------- | --------------------- | ----------------------- |
| **Immediate** | High-value content | Click → full article |
| **Progressive** | Onboarding/education | Unlock next lesson |
| **Social** | Community features | See what friends shared |
| **Timed** | Anticipation building | Reveal tomorrow at noon |
## Output Template
After designing curiosity gaps, document as:
```markdown
## Curiosity Gap Design
**Context:** [Where this will be used]
**Date:** [Date]
### Gap Analysis
| Element | Current | Improved | Gap Type |
| -------------- | ---------- | ------------- | ------------------------ |
| [Headline/CTA] | [Original] | [New version] | [Knowledge/Outcome/etc.] |
### Payoff Validation
| Gap | Promised Value | Delivered Value | Match? |
| ------- | ------------------- | --------------- | ------ |
| [Gap 1] | [What user expects] | [What they get] | ✅/❌ |
### Ethical Checklist
- [ ] Gap leads to genuine value
- [ ] Promise matches delivery
- [ ] Not exploiting vulnerable states
- [ ] User can easily access information
- [ ] Not creating unnecessary anxiety
### Success Metrics
| Metric | Target | Measurement |
| ------------------------ | ------ | -------------- |
| Click-through rate | X% | [How measured] |
| Time to resolution | X sec | [How measured] |
| Satisfaction post-reveal | X/10 | [How measured] |
| Return engagement | X% | [How measured] |
```
## Real-World Examples
### Netflix: Series Previews
```
Strategy:
Teaser trailers (30 sec):
├── Show: Dramatic moments, character intrigue
├── Hide: Plot resolution, key reveals
└── Gap: "What happens next?"
Episode thumbnails:
├── Show: Emotional peak moment
├── Hide: Context and resolution
└── Gap: "How did they get there?"
Result: 15% increase in viewing engagement
```
### Duolingo: Streak Psychology
```
Strategy:
Streak display:
├── Show: "47-day streak! 🔥"
├── Gap: "What happens if I break it?"
└── Drive: Loss aversion + curiosity
Achievement previews:
├── Show: Locked badge silhouette
├── Hide: Requirements and rewards
└── Gap: "What do I need to unlock this?"
Result: 65% DAU complete lessons even when unmotivated
```
### Spotify: Discover Weekly
```
Strategy:
Weekly playlist:
├── Show: "Your Discover Weekly is ready"
├── Hide: Actual song selections
├── Gap: "What did the algorithm find?"
└── Timing: Every Monday (anticipation)
Wrapped campaigns:
├── Show: "Your 2024 Wrapped is ready"
├── Hide: Personal statistics
├── Gap: "What are my listening habits?"
└── Social: "What did others get?"
Result: 40M hours/week listening time
```
## Ethical Guidelines
### ✅ Do: Create Value-Driven Gaps
```
Ethical Applications:
Progressive disclosure:
├── Reveal information in digestible layers
├── User controls the pace
└── Each reveal provides value
Feature discovery:
├── Highlight unused capabilities
├── Show benefit before asking exploration
└── Easy to dismiss if not interested
Content previews:
├── Accurate representation of full content
├── Clear path to resolution
└── Value matches or exceeds expectation
```
### ❌ Don't: Manipulate or Mislead
```
Dark Patterns to Avoid:
Clickbait:
├── "You won't believe..." → Mundane content
├── "This one trick..." → Obvious information
└── Promise ≠ Delivery
False urgency:
├── "Last chance!" → Perpetual availability
├── "Only 2 left!" → Unlimited inventory
└── Manufactured scarcity
Emotional manipulation:
├── Fear-based gaps exploiting anxiety
├── FOMO that creates unhealthy behavior
└── Guilt-inducing incompleteness
```
### The Ethics Test
```
Before deploying a curiosity gap, ask:
1. Does the payoff match the promise?
YES → Continue
NO → Revise or abandon
2. Would I feel satisfied as the user?
YES → Continue
NO → Revise payoff
3. Is this building trust or eroding it?
BUILDING → Continue
ERODING → Stop
4. Can users easily get resolution?
YES → Continue
NO → Remove barriers
```
## Headline Patterns
### Knowledge Gap Headlines
```
Templates:
"How [Group] [Achieve Result]"
→ "How top performers stay focused for 8+ hours"
"The [Adjective] way to [Outcome]"
→ "The counterintuitive way to learn faster"
"What [Authority] knows about [Topic]"
→ "What neuroscientists know about decision fatigue"
"Why [Common Belief] is wrong"
→ "Why multitasking doesn't save time"
```
### Outcome Gap Headlines
```
Templates:
"[Person/Company] tried [Action]. Here's what happened."
→ "We removed all meetings for a month. Here's what happened."
"[X] [Action], and then [Incomplete]..."
→ "She asked for a raise, and then..."
"The unexpected result of [Action]"
→ "The unexpected result of saying no to everything"
```
## Measurement
### Key Metrics
| Metric | What It Shows | Target |
| ------------------ | ------------------- | --------------- |
| Click-through rate | Gap effectiveness | Baseline +X% |
| Time to click | Gap urgency | Lower is better |
| Completion rate | Payoff satisfaction | >80% |
| Return rate | Trust maintained | Increasing |
| Satisfaction score | Promise delivery | >4/5 |
### Warning Signs
```
Gap is too weak if:
├── CTR below baseline
├── High bounce immediately after click
└── No engagement increase
Gap is too strong (clickbait) if:
├── High CTR but low satisfaction
├── Complaints about misleading content
├── Decreasing return engagement
└── Trust metrics declining
```
## Integration with Other Methods
| Method | Combined Use |
| -------------------------- | --------------------------------------- |
| **Cognitive Biases** | Curiosity gap leverages multiple biases |
| **Loss Aversion** | "Don't miss" framing strengthens gaps |
| **Social Proof** | "See what others discovered" |
| **Progressive Disclosure** | Structured gap resolution |
| **Hooked Model** | Curiosity as trigger/reward |
## Quick Reference
```
CURIOSITY GAP CHECKLIST
Creating the Gap:
□ Payoff clearly defined
□ Gap size calibrated (not too small/large)
□ Relevant to target audience
□ Specific and believable
Ensuring Ethics:
□ Promise matches delivery
□ User feels satisfied after resolution
□ No exploitation of vulnerable states
□ Easy path to resolution
Measuring Success:
□ CTR tracking in place
□ Satisfaction measured post-reveal
□ Return engagement monitored
□ Trust metrics watched
```
## Resources
- [Information Gap Theory - Loewenstein (1994)](https://www.cmu.edu/dietrich/sds/docs/loewenstein/PsychofCuriosity.pdf)
- [Made to Stick - Chip & Dan Heath](https://heathbrothers.com/books/made-to-stick/)
- [Hooked - Nir Eyal](https://www.nirandfar.com/hooked/)
- [Growth.Design Case Studies](https://growth.design/)Related Skills
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.
theme-epic-story
Structure product work hierarchically using themes, epics, and stories. Use when organizing backlogs, planning releases, communicating with stakeholders, or breaking down large initiatives into manageable work.
tailwind-v4-configuration
Configure Tailwind CSS v4 with CSS-first approach. Use when installing, migrating from v3, setting up build tools (Vite/PostCSS/CLI), customizing themes with @theme, or configuring plugins.