skills/product-appeal-analyzer/SKILL.md
Evaluate product desirability, market positioning, and emotional resonance—the complement to friction analysis. Assess whether users will WANT a product (not just use it), identity fit, trust signals, and value proposition clarity. Activate on "will they like it", "market positioning", "appeal analysis", "product desirability", "value proposition", "why would someone choose this", "landing page review", "conversion optimization", "messaging strategy". NOT for UX friction analysis (use ux-friction-analyzer), visual design implementation (use web-design-expert), or A/B test setup (use frontend-developer).
npx skillsauth add curiositech/windags-skills product-appeal-analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Evaluate whether users will want a product—not just use it. The complement to friction analysis.
Core insight: Users don't choose the best product—they choose the product that feels most like it was made for them.
✅ Use for:
❌ NOT for:
All three must be present. Missing any one kills conversion:
IDENTITY FIT
"This is for people like me"
/\
/ \
/ \
/ ★ \
/ DESIRE \
/ \
/______________\
PROBLEM TRUST
URGENCY SIGNALS
"I need this now" "This will actually work"
| Missing Element | User Reaction | |-----------------|---------------| | Identity Fit | "Seems useful, but not for me" | | Problem Urgency | "Cool, maybe someday" | | Trust Signals | "Looks sketchy / too good to be true" |
Decision tree: When analyzing, score each vertex 1-10. If any is <5, that's your priority fix.
Within 5 seconds of landing, a visitor should know:
How to run it:
Scoring:
| Result | Score | Action | |--------|-------|--------| | All 4 clear in <3 sec | 9-10 | Ship it | | All 4 clear in 3-5 sec | 7-8 | Minor polish | | 3 of 4 clear | 5-6 | Fix the gap | | 2 or fewer clear | 2-4 | Significant rework | | Confusing/unclear | 0-1 | Start over |
For each persona, document:
For each persona:
PERSONA: [Name]
IDENTITY FIT [/10]
Visual identity match [/10] "Does this look like my kind of tool?"
Language resonance [/10] "Do they speak my language?"
Implied user match [/10] "Are people like me shown?"
PROBLEM URGENCY [/10]
Pain point acknowledged [/10] "They understand my problem"
Emotional resonance [/10] "They get how frustrating it is"
Solution clarity [/10] "I see how this fixes it"
TRUST SIGNALS [/10]
Professional execution [/10] "This looks legitimate"
Social proof [/10] "Others like me use it"
Risk reduction [/10] "What if it doesn't work?"
OVERALL APPEAL SCORE: [/90]
| Objection | Type | How Addressed? | |-----------|------|----------------| | "Is this legit?" | Trust | [Answer] | | "I've tried things before" | Skepticism | [Answer] | | "Too expensive" | Value | [Answer] | | "Too complicated" | Effort | [Answer] | | "Not for people like me" | Identity | [Answer] | | "What if it doesn't work?" | Risk | [Answer] | | "I'll do it later" | Urgency | [Answer] |
Use priority formula: Impact = (Users Affected × Severity) / Fix Difficulty
Categorize into:
Novice thinking: "List all capabilities to show value"
Reality: Visitors scan for 2-3 seconds. Feature lists feel generic.
What to use instead: | Bad | Good | |-----|------| | "AI-Powered Recovery Planning Tool with Analytics" | "Know exactly what to do next in your recovery" | | "Comprehensive Legal Document Platform" | "Find out in 2 minutes if your record can be expunged" |
Detection: Headline contains 3+ nouns or buzzwords like "AI-powered", "comprehensive", "platform"
Novice thinking: "Show the product interface so people know what they're getting"
Reality: Strangers don't understand your UI. They care about outcomes.
What to use instead:
Detection: Hero image is a product screenshot with no context
Novice thinking: "Get their email immediately, then convert them"
Reality: Trust builds in stages. Asking for too much too early kills conversion.
The Trust Ladder (each rung requires more trust):
Detection: Asking for account creation before demonstrating value
Novice thinking: "Broad appeal = more users"
Reality: When everyone is the target, no one feels targeted.
What to use instead: | Signal Type | How It Works | |-------------|--------------| | Visual identity | Dark mode = "power user"; Soft pastels = "wellness" | | Language/tone | "Crush your goals" vs "Find your balance" | | Social proof | Company logos vs individual testimonials | | Complexity | Minimal = simplicity-seeker; Feature-rich = power user |
Detection: Homepage tries to appeal to 3+ different personas
Run: python scripts/appeal_scorer.py <url>
Produces structured JSON output with scores and recommendations.
| File | When to Use |
|------|-------------|
| references/scoring-templates.md | Full scoring matrices and templates |
| references/trust-ladder.md | Deep dive on trust building stages |
| references/identity-signals.md | Visual/verbal identity signal catalog |
| references/objection-catalog.md | Common objections by product type |
When running this skill, produce:
Appeal + Friction = Complete picture
| This Skill Answers | ux-friction-analyzer Answers | |--------------------|------------------------------| | "Do they want it?" | "Can they use it?" | | Will they choose this over alternatives? | Can they complete the task? | | Does it feel made for them? | Does the flow make sense? | | Is the promise compelling? | Is the experience smooth? |
Run both: High appeal + high friction = frustrated users. Low friction + low appeal = abandoned product.
Philosophy: A product with low friction but low appeal gets abandoned. A product with high appeal but high friction gets frustrated users. You need both.
data-ai
license: Apache-2.0 NOT for unrelated tasks outside this domain.
development
Use when designing caching strategies (cache-aside, write-through, write-behind), implementing distributed locks, building rate limiters, leaderboards, real-time streams (XADD/consumer groups), pub/sub, or tuning eviction policies. Triggers: thundering-herd on cache miss, dogpile on key expiry, Redlock vs SET-NX-PX choice, sliding-window rate limiter, hot-key on a single cluster slot, big-key blowup, MULTI/EXEC across slots, KEYS in production. NOT for Redis Cluster operations/admin (different domain), embedded KV (SQLite, leveldb), in-process LRU caches, or Memcached.
tools
Drawing the `'use client'` boundary correctly in React Server Components apps (Next.js App Router, RSC frameworks) — leaf-pushing, slot composition, serialization rules, and environment poisoning prevention. Grounded in react.dev and Next.js 16 docs.
development
Use when designing rate limiting for an API, choosing between token bucket / sliding window / leaky bucket / fixed window, implementing it in Redis, deciding edge (Cloudflare/Upstash) vs origin enforcement, sizing per-user vs per-IP vs per-endpoint quotas, returning the right 429 response with Retry-After, or fixing the boundary-burst bug in fixed-window limiters. Triggers: 429 too many requests, INCR + EXPIRE, ZADD + ZREMRANGEBYSCORE + ZCARD, X-RateLimit-Remaining header, Cloudflare WAF rate limiting rules, Upstash @upstash/ratelimit, leaky bucket shaping vs policing, distributed rate limiter consistency. NOT for DDoS mitigation specifically (different scale), CAPTCHA / bot management, full WAF design, or per-user quota billing.