We believe new heywavelength users churn early when generic onboarding fails to capture nuanced taste preferences, leading to irrelevant recommendations. Current analytics show 42% of new users abandon the app within 24 hours (source: June 2024 core funnel), primarily citing "recommendations feel impersonal" (source: exit survey n=187). The business case: 27,500 monthly new users × 12.5% churn reduction × $38.50 LTV = $158,812/month recoverable value (source: Amplitude cohort data, credit card decline analysis). Downside (40% adoption): $63,525/month. This calibrates recommendations from session one — it is not a social feature nor replaces core discovery UI.
HYPOTHESIS: Building AI-powered taste calibration during onboarding for first-time users will increase D7 retention by ≥15pp by capturing 8 critical taste signals upfront. Evidence: Lookback sessions show users skipping profile setup complete it when framed as "get better recs" (78% completion, n=41), while cold-start errors drop 60% when ≥5 taste signals exist (Q1 ML model test). Cost: 5 engineering-weeks + 3 design-weeks using Lambda benchmarks → $73k total. Value floor: $63k/month at partial adoption justifies build.
This feature is a mandatory swipe-based taste capture flow generating structured embeddings for our recommender. It is not a social compare tool, a content search function, or a prerequisite for app entry — users can skip with default preferences.
HOW COMPETITORS SOLVE THIS:
Our wedge is multimodal taste binding because we connect sparse signals across domains into a unified preference vector — Spotify and Pinterest specialize.
WHO/JTBD: When a first-time heywavelength user completes onboarding, they need the platform to understand their unique cultural preferences so they immediately encounter relevant recommendations without manual trial-and-error.
INCIDENT: On May 15, 2024, "Sam T." (documented UX study P47) abandoned heywavelength after onboarding asked only for email and name. She swiped left on 12 consecutive "popular picks" — jazz albums despite hating jazz, abstract art despite preferring photorealism — before deleting the app. This mismatch stemmed from zero taste calibration, forcing reliance on weak collaborative filtering. The session lasted 9 minutes versus her stated 2-minute tolerance for "first value."
SYSTEMIC COST:
| Metric | Baseline | Frequency | Cost |
|---|---|---|---|
| D1 abandonment | 42% | Per new user | $1.03M annual lost acquisition spend |
| Avg. sessions to first rec "like" | 4.2 sessions | 67% of new users | 22,275 hours monthly wasted engagement |
| Support tickets re: "bad recs" | 31/day | 63% from first-week users | $142k annual ops cost |
JTBD: "When I sign up, I want to teach the AI my taste in 90 seconds flat so I see things I actually like immediately."
CORE FLOW (90-second swipe calibration):
KEY DECISIONS:
SCOPE BOUNDARY: Phase 1 uses existing content catalog; no custom uploads.
┌───────────────────────────────────────────────┐
│ [Book Category] │
│ │
│ ┌─────────────────────────────────────┐ │
│ │ │ │
│ │ [Cover Art: "Dune" Poster] │ │
│ │ "Foundational sci-fi epic" │ │
│ │ │ │
│ └─────────────────────────────────────┘ │
│ │
│ Swipe ← for not you Swipe → for love it │
└───────────────────────────────────────────────┘
┌───────────────────────────────────────────────┐
│ Taste Profile Complete! │
│ │
│ We found patterns in your 8 choices: │
│ • Strong preference: 80s synth, photorealism │
│ • Avoids: Abstract art, jazz │
│ │
│ TRY THESE FIRST: │
│ ┌───────┐ ┌──────┐ ┌───────┐ │
│ │ [Img] │ │[Img] │ │ [Img] │ │
│ └───────┘ └──────┘ └───────┘ │
└───────────────────────────────────────────────┘
Phase 1 — MVP (4 weeks)
US#1 — Taste onboarding entry
US#2 — Swipe interaction
Out of Scope (Phase 1):
| Feature | Why Not Phase 1 |
|---|---|
| Profile editing UI | Requires complex preference weighting controls |
| Custom content upload | Needs moderation pipeline not in scope |
| Multi-user correlation | Phase 2 social features required |
Phase 1.1 (2 weeks): Edit profile button in settings, 3-tap preference adjustments
Phase 1.2 (3 weeks): "Taste match" social compare (non-default)
| Metric | Baseline | Target | Kill Threshold | Measurement |
|---|---|---|---|---|
| Primary | ||||
| D7 retention | 51% | ≥66% | <55% at D90 | Amplitude cohort |
| Avg. rec accuracy (first session) | 22% like rate | ≥35% | <25% at D45 | Thumbs-up tracking |
| Onboarding completion | N/A | ≥67% | <50% at D30 | Mixpanel workflow |
| Guardrails | Threshold | Action | ||
| Skip rate | N/A | ≤45% | UX review @D7 | First modal tracker |
| App launch latency | 1.4s p95 | ≤1.6s | Revert if breached | Firebase Perf |
| Cold-start rec CTR | 12% | ≥10% | Investigate models | A/B test control |
What We Are NOT Measuring:
RISK: Low signal density from minimal swipes
Probability: Medium | Impact: High
Trigger: Avg. signals/user <5.5 at D14
Mitigation: Alex (Data) monitors signal distribution → inject high-contrast cards if <5 signals (live by Phase 1)
────────────────────────────────────────────────
RISK: Embedding degrades base model recall
Probability: Low | Impact: Critical
Trigger: p95 rec latency >3.2s in canary
Mitigation: Diya (ML) implements circuit breaker → fall back to generic model if inference >2.5s (validated via load test)
────────────────────────────────────────────────
RISK: GDPR consent for implicit signals
Probability: High | Impact: Medium
Trigger: DPA flags dwell-time collection
Mitigation: Lena (Legal) confirms compliance by 6/20 → if blocked, collect explicit-only (reduces model accuracy 15%)
────────────────────────────────────────────────
KILL CRITERIA (within 90 days):
Decision: How many swipe interactions to require
Choice Made: 8 signals (2 per category)
Rationale: 90s max, validated per usability tests. 12+ increased dropouts by 22%.
────────────────────────────────────────────────
Decision: Data retention for skipped users
Choice Made: Store partial profiles and retarget at D3 via notification
Rationale: Partial signals better than cold-start; notifications historically show 38% CTR (source: push campaign data)
────────────────────────────────────────────────
Decision: Personalization depth in Phase 1
Choice Made: Profile populates session but no editable UI yet
Rationale: Edits require complex preference tuning UI — deferred to Phase 1.2 to hit launch target
────────────────────────────────────────────────
Decision: Empty state handling for skip-all users
Choice Made: Use "popular near you" with explicit "based on location" label
Rationale: Avoids false personalization; preserves trust per ethics guidelines
BEFORE/AFTER STORY
Before: Riley signed up and got classical music recs despite hating it. She searched manually for 8 minutes, found one relevant film, then quit. churned at D2.
After: Riley swiped through 8 cards (loved Blade Runner, hated Kandinsky). Session 1 recommendations included synthwave playlists and cyberpunk books. Saved 3 items in 90 seconds.
PRE-MORTEM
"It is 6 months from now and this feature failed because: