Expert Quiz Funnel
Skill expert pour concevoir, auditer, coder et optimiser un quiz funnel + paywall haute-conversion. Couvre la stratégie, la copy, la personnalisation, l'intégration paywall, les benchmarks 2026, le playbook A/B test et la stack technique.
Le quiz funnel est l'arme n°1 de conversion mobile/SaaS 2024-2026. Cal AI (30M$ ARR), Noom (750M$ ARR), Flo (9M$/mois), Cal AI, Opal, Stoic, BetterMe, Blinkist tournent tous sur ce pattern : quiz → plan personnalisé → paywall. Ce skill encode ce qui marche.
Quand utiliser ce skill
Déclenchement sur :
- "Concevoir un quiz funnel / onboarding quiz / tunnel d'abonnement"
- "Optimiser un paywall (app mobile, SaaS web, freemium, trial)"
- "Auditer un onboarding existant"
- "Personnaliser un paywall selon les réponses utilisateur"
- "Choisir hard paywall vs freemium vs soft paywall"
- "Définir les mécaniques de trial (3j vs 7j vs 14j vs reverse trial)"
- "Faire un teardown style Noom / Cal AI / Blinkist"
- "Coder un quiz funnel Next.js"
- "Page de pricing SaaS (style Linear, Notion, Anthropic)"
- Sous-skill Dashboard Réponse : "back-office quiz", "dashboard admin quiz", "voir les réponses", "voir les leads / sessions", "taux d'abandon par étape", "taux de complétion", "distribution des réponses par question", "export CSV des leads", "page admin pour une session" → router vers 12-admin-dashboard.md.
NE PAS déclencher pour :
- Onboarding produit B2B post-inscription pure (utiliser
onboarding-cro) - Flow d'annulation / churn save (utiliser
churn-prevention) - Landing page publique sans quiz (utiliser
landing-page-expert)
Thèse centrale (à imprimer dans la mémoire de l'agent)
- L'onboarding est une conversion de croyance, pas un tour de produit. Chaque écran doit faire passer l'utilisateur d'un état "incertitude" vers "cette app comprend mon cas, peut me donner un résultat, vaut le prochain engagement".
- Le questionnaire est un actif de conversion uniquement s'il produit une personnalisation visible. Si une réponse ne change ni le plan, ni le paywall, ni le segment, ni l'expérience → la question doit disparaître.
- Les 5 écrans avant le paywall comptent plus que le paywall lui-même (Stormy, 4500+ tests A/B). Onboarding + paywall = un seul funnel.
- Le jour 0 est tout : 90% des démarrages de trial arrivent J0 (Adapty 2026), 84% des annulations arrivent J0-1 sur un trial de 3j (RevenueCat 2026). Si le « aha » n'est pas dans la première session, c'est mort.
- Hard paywall n'a pas de pénalité de rétention vs freemium (RevenueCat 2026, 115k apps : rétention Y1 ~27% vs ~28%). Le mythe "freemium retient mieux" est mort. Le choix = fonction du CAC, pas d'idéologie.
- Un long quiz convertit SI chaque question paie son loyer. Noom = 113 écrans qui marchent. La majorité des quiz longs ne sont que de la friction.
Workflow par défaut quand on invoque ce skill
Étape 1 — Diagnostic
Avant tout livrable, comprendre :
- Modèle économique : abonnement mobile / SaaS B2B / SaaS B2C / hybride web-to-app / achat unique ?
- Plateforme : iOS uniquement / Android uniquement / hybride / web uniquement ?
- CAC & LTV cible : si CAC > 30€ → hard paywall probablement ; si CAC < 5€ et viralité → soft/freemium.
- Catégorie : Santé & Fitness / Éducation / Productivité / IA / Finance / Lifestyle / Rencontres / Outils SaaS dev / SaaS PLG / Commercial piloté par l'entreprise ? Les benchmarks et patterns dominants varient.
- Aha moment : quelle est l'action la plus corrélée à la rétention J7 ? (À faire trouver à l'utilisateur si pas clair.)
- État actuel : rien / quiz existant à auditer / paywall existant à optimiser / refonte complète ?
- Contraintes Apple/Google : hard paywall iOS Jan 2026 = toggle paywall mort (rejet Guideline 3.1.2), bouton de fermeture obligatoire, etc. Voir reference 04.
Si plusieurs infos manquent et bloquent → demander à l'utilisateur en un seul tour groupé (max 3-5 questions). Sinon avancer avec des hypothèses explicitées.
Étape 2 — Choix structurels (avant copy)
Décider dans cet ordre, en s'appuyant sur les références :
| Décision | Référence | Par défaut 2026 |
|---|---|---|
| Hard / soft / freemium / reverse trial | 05 §Hard vs soft | Hard pour abonnement mobile B2C si CAC le justifie ; reverse trial pour SaaS PLG mature ; freemium pour produit réseau/social |
| Longueur du quiz | 02 §Long vs court | 8-12 questions Santé/Éducation ; 4-6 utilitaires ; 30+ style Noom si justifié |
| Placement du paywall | 04 §Placement | Après plan personnalisé (pattern dominant) ; FitnessAI/Rootd ont +2x install-to-trial avec paywall avant onboarding (à tester) |
| Durée du trial | 04 §Trial mechanics | 3j (top config Adapty weekly+3d trial) ou 7j (sweet spot général) ; 14-30j Productivité/Business |
| Plans visibles | 05 §Number of plans | Un seul plan visible + lien "Voir tous les plans" dépasse souvent 3 plans en mobile ; SaaS = 3 self-serve + Enterprise |
| Plan par défaut | — | Annuel présélectionné → 2-3x mix annuel, +70% de revenus annuels (Sunflower/Stormy) |
| Texte du CTA | 08 | "Continuer" bat le text descriptif de +111% (Stormy) ; "Commencer l'essai gratuit" / "Essayer pour 0,00$" / "Obtenir [Nom du plan]" |
| Affichage tarifaire | 05 §Price framing | Cadre par semaine (39,99$/an → "0,76$/semaine") + badge "ÉCONOMISEZ 75%" ; arrondi pour SaaS premium (20$, 30$) |
| Web-to-app vs IAP | 04 §Web-to-app | Hybride IAP+web sur iOS US (web uniquement perd 6,5% net vs IAP) ; web-to-app standard pour Santé/Éducation/IA haute LTV |
Étape 3 — Architecture du flow (livrable principal)
Cartographier le funnel écran par écran avec, pour CHAQUE écran :
- Objectif/croyance convertie (ex. "L'app comprend mon contexte")
- Type d'écran (entrée / question / micro-insight / chargement / résultat / paywall / engagement)
- Question + 4-5 options (si Q) ou titre copy + sous-titre (si insight/résultat/paywall)
- Personnalisation déclenchée : quelle variable cet écran alimente en aval
- Risque d'abandon + atténuation
- Suivi d'événement (voir 11)
Modèle de flow gagnant (à adapter) :
[Promesse d'entrée : axée sur le résultat, 1 écran max]
→ Question objectif (objectif principal)
→ Situation actuelle (état actuel)
→ Friction (blocage principal)
→ MICRO-INSIGHT #1 (utiliser les réponses 1-3 → "On va adapter ton plan pour…")
→ Question niveau/contexte
→ Préférence/fréquence
→ MICRO-INSIGHT #2 (preuve sociale segmentée : "Les [segment] obtiennent +X en Y semaines")
→ Question d'engagement (engagement léger)
→ Écran de chargement (3-7s, "On construit ton plan…")
→ Résultat/aperçu personnalisé (score + plan + timeline)
→ [Optionnel : Première petite action / aperçu]
→ PAYWALL personnalisé (titre = objectif, puces = points douloureux, CTA = verbe d'action)
→ Compte/email (pour sauvegarder/sync, jamais avant)
→ Permission au moment de l'usage
→ Accueil avec action suivante
Étape 4 — Copy concrète
Pour chaque écran, livrer une copy précise (voir 08-copy-library.md pour la bibliothèque) :
- Pas de fonctionnalités → résultats / bénéfices
- Une idée par question, 4-5 options mutuellement exclusives
- Questions sensibles : précéder d'un "On te demande ça pour adapter le plan, pas pour te juger"
- Toujours offrir une échappatoire : "Passer" / "Je ne sais pas encore" / "Autre"
- Texte de chargement honnête : "On calcule ton plan à partir de tes réponses" (pas "Analyse en cours" générique)
- Titre du paywall = objectif personnalisé : "Débloque ton plan 14 jours [objectif]" pas "Choisis un plan"
Étape 5 — Logique de personnalisation
Décrire le mapping réponses → sorties :
- Variables collectées (typées) → ID du segment
- Segment → template de plan / variante de paywall / tarification
- Pattern de code réutilisable (voir 03-personalization-engine.md pour les exemples Next.js+Zustand)
Test de validité : si deux utilisateurs avec des réponses opposées voient le même résultat, ce n'est pas une vraie personnalisation. À supprimer ou refactorer.
Étape 6 — Conception et intégration du paywall
Voir 04-paywall-integration.md. En résumé :
- Mise en page : page unique, sans défilement, 3-5 puces avec icônes (pas de tableau sur mobile), liste de plans horizontale, badge "Le plus populaire" sur la cible.
- Mécanique de trial : iOS = pas de toggle paywall (mort Jan 2026, rejet 3.1.2). Utiliser le pattern timeline de Blinkist (Aujourd'hui → Rappel jour X → Débit jour Y) → +23% de conversion trial prouvé, -55% de plaintes.
- Cadre tarifaire : présélection annuelle, affichage par semaine ("0,76$/semaine"), badge "ÉCONOMISEZ 75%".
- Preuve sociale : nombre d'utilisateurs + 4,2-4,5★ + nombre d'avis + 1-2 témoignages.
- CTA : "Continuer" / "Commencer l'essai gratuit" / "Essayer pour 0,00$" + "Aucun engagement, annulez à tout moment".
- Bouton de fermeture visible (Apple HIG, sinon rejet Review).
- Tiroir de sortie (recadrer → proposer une offre inférieure → OTO 25-33%) capable de capter +15-20% de revenus, mais limiter à 2-3 expositions et audit Apple.
Étape 7 — Backlog A/B test priorisé
Ne pas tester au hasard. Prioriser par taux de victoire Adapty 2026 :
| Type de test | Taux de victoire LTV | Priorité |
|---|---|---|
| Localisation | 62,3% | #1 (le plus sous-estimé) |
| Structure du trial | 59,6% | #2 |
| Durée du plan | 58,7% | #3 |
| Nombre de plans | 57,1% | #4 |
| Changements de prix | 45,5% LTV / 28,3% conv brute | #5 (lift en $, pas en %) |
| Visuel/copie uniquement | 34,6% | #6 (en bas) |
Les apps qui font 14,7+ expériences/an gagnent jusqu'à 40x de revenus vs les non-testeurs. Voir 09-ab-test-playbook.md.
Étape 8 — Instrumentation analytics
Taxonomie d'événements minimum :
onboarding_started
onboarding_step_viewed (step_index, step_label)
onboarding_step_completed
question_answered (question_id, answer_id, segment)
insight_viewed (insight_id)
loading_viewed
result_viewed (segment, score, plan_id)
paywall_viewed (paywall_variant, segment, trial_duration, plan_interval, price)
paywall_plan_selected
paywall_closed (reason: x | back | scroll_off)
trial_started
purchase_completed (price, currency, plan_interval)
exit_offer_viewed
exit_offer_accepted
permission_priming_viewed
permission_granted
signup_completed
first_value_completed
d0_returned, d1_returned, d7_retained
trial_cancelled (Day 0/1/2…)
refund_requested
first_renewal
Ne JAMAIS optimiser sur le démarrage du trial sans regarder le payé + remboursement + première reconduction + rétention J7. Voir 11-metrics-and-tracking.md.
Étape 9 — Backend admin "Dashboard Réponse" (sous-skill)
GA4/Mixpanel ne suffisent pas pour une équipe support/produit/sales : il faut un back-office maison qui montre, par session, les réponses brutes + l'état de conversion + un funnel par étape avec abandon + la distribution des réponses par option. C'est le sous-skill Dashboard Réponse (12-admin-dashboard.md).
Déclenchement spécifique : "back-office", "dashboard admin", "voir les réponses", "taux d'abandon par étape", "taux de complétion", "voir une session", "export CSV des leads".
Le sous-skill livre, en fonctionnant sur n'importe quel quiz funnel (schema-agnostic) :
- Modèle de données Prisma :
QuizSession(identité + answers JSON + UTM + état conversion + resultData) +QuizEvent(log d'événement granulaire pour le vrai funnel et le temps par étape). - Configuration unique du quiz (
lib/quiz/config.ts) — source de vérité partagée front/admin pour les libellés des questions et options. - 35+ métriques calculées : volume (24h/7j/30j), engagement (moyen/médian étape atteinte, rebond, complétion, étape de sortie principale), capture email, conversion (taux, temps jusqu'au paiement, remboursement), funnel par étape avec abandon absolu et %, distribution des réponses par option × lift de conversion vs taux global, principales sources UTM/pays/appareil, tendance journalière 14j, segments convertisseurs.
- 4 pages admin : overview KPI/funnel/tendance, liste de sessions filtrable, détail session (toutes réponses + timeline events + JSON brut), distribution des réponses par question.
- Export CSV sécurisé (
/api/admin/export). - Auth fail-closed via middleware Basic Auth (ou NextAuth/Clerk) — refuser 503 si secret absent.
- Checklist d'intégration en 8 étapes pour brancher le sous-skill sur un projet existant.
À utiliser en complément de l'étape 8 (instrumentation des événements) : les événements alimentent le dashboard, le dashboard alimente la décision growth.
Étape 10 — Format du livrable
Selon la demande, livrer :
- Audit → cadre SCORE (Specific / Commitment / Output / Reduced friction / Experimentation), section par section, avec problème → impact → recommandation → priorité.
- Stratégie → carte du funnel + écran par écran + copy + logique de perso + séquencement paywall + événements + backlog A/B + risques.
- Code → composants React/Next.js avec store Zustand typé + persistance + analytics câblés + suivi des événements. Stack de référence : Next.js 14 App Router + TypeScript + Tailwind + Framer Motion + Zustand persist + Prisma/Postgres + Stripe webhook. Voir 10-tech-stack.md.
- Teardown → carte du flow + copy textuelle + tactiques psycho + chiffres connus + ce qui s'applique au cas utilisateur.
Tableau de référence rapide — chiffres signature 2026 à connaître
| Chiffre | Source | Utilisation |
|---|---|---|
| Hard paywall 5x conversion vs freemium (D35 10,7% vs 2,1%) | RevenueCat 2026 | Argument pour basculer freemium → hard si CAC le permet |
| Rétention Y1 identique hard ~27% vs freemium ~28% | RevenueCat 2026 | Démontrer le mythe "freemium retient mieux" |
| Apps 14,7+ exp/an = jusqu'à 40x revenus | Adapty 2026 | Justifier l'investissement dans les tests |
| 89,4-90% des démarrages de trial le jour 0 | RevenueCat / Adapt |
…
[le texte a été tronqué pour la traduction]