Construction de Revenus (Prévision Pilotée par les Drivers)
Quand l'utiliser
À utiliser lorsque les revenus doivent être construits de manière ascendante à partir de drivers opérationnels réels plutôt qu'un simple pourcentage de croissance : clients issus de dépenses marketing ou d'un entonnoir, taux d'attrition, ARPU, ou volume fois prix par ligne de produit. Idéal pour les plans opérationnels, les prévisions d'ARR et les modèles de levée de fonds nécessitant un lien défendable des drivers vers le chiffre d'affaires. Cette compétence construit un fichier .xlsx téléchargeable dans l'application Claude avec openpyxl ; elle n'utilise aucune extension Excel ni connexion Microsoft 365.
Ce qu'elle construit
Un classeur avec six onglets :
- Couverture : titre, légende des couleurs, sélecteur de scénario, chiffre d'affaires et croissance en titre.
- Drivers : toutes les entrées bleues (clients de départ, dépenses marketing, CAC ou taux d'entonnoir, ARPU, taux d'attrition, prix, multiplicateurs de scénario).
- Construction des Revenus : le calendrier périodique des clients ou unités et le chiffre d'affaires.
- Résumé : chiffre d'affaires annuel, croissance, clients en fin de période, et scénario en vigueur.
- Sensibilité : tableau de données sur les nouveaux clients par taux d'attrition menant à l'ARR ou au chiffre d'affaires final.
- Contrôles : identité de roll-forward et indicateurs de cohérence.
Flux de construction
- Créer le classeur et les six onglets dans l'ordre ci-dessus.
- Sur Drivers, disposer chaque entrée en bleu avec unités ; ajouter une cellule de scénario (1=Base, 2=Bull, 3=Bear) nommée
scn. - Mettre en place la ligne d'en-tête de période (mois ou trimestres) une fois et la référencer partout.
- Construire le roll-forward clients ou unités sur Construction des Revenus : début, ajouts, attrition, fin.
- Calculer le chiffre d'affaires de chaque période à partir du calendrier (clients fois ARPU, ou volume fois prix).
- Construire le Résumé en agrégeant les périodes en années.
- Construire l'onglet Sensibilité comme un tableau de données natif à deux variables.
- Construire l'onglet Contrôles avec l'identité de roll-forward et les tests de cohérence de croissance.
- Recalculer le classeur en mode headless (LibreOffice) pour que toutes les formules soient calculées.
- Vérifier zéro erreur de formule (#REF!, #DIV/0!, #VALUE!, #NAME?) ; corriger et recalculer en boucle, puis livrer.
Spécification onglet par onglet
Couverture
- Cellule de titre, ligne de description du modèle, et date de construction.
- Bloc de légende des couleurs : un échantillon bleu étiqueté "Entrée", noir étiqueté "Formule", vert étiqueté "Lien inter-onglet".
- Écho du scénario :
=CHOOSE(scn,"Base","Bull","Bear")lisant le scénario actif depuis Drivers. - Sorties principales sous forme de liens inter-onglets verts : chiffre d'affaires de la dernière année
=Résumé!<cellule de chiffre d'affaires de la dernière année>, clients en fin de période, et croissance YoY de la dernière année. - Une ligne de note indiquant que le classeur se recalcule en direct dans Excel et a été vérifié sans erreur à la construction.
Drivers
- B2 Sélecteur de scénario (bleu, 1/2/3), nommé
scn. - Clients de départ B5 ; ARPU par période B6 ; taux d'attrition mensuel % B7.
- Acquisition : dépenses marketing par période B8 ; CAC B9 ; nouveaux ajouts issus des dépenses
=B8/B9(calculé sur Construction, pas ici). - Entonnoir optionnel : leads B10, taux lead-client % B11.
- Multiplicateurs de scénario dans un bloc de 3 colonnes (Base/Bull/Bear) : ligne de multiplicateur d'ajouts C14:E14, ligne de multiplicateur d'attrition C15:E15. Valeurs actives : B14
=CHOOSE(scn,C14,D14,E14), B15=CHOOSE(scn,C15,D15,E15). - Bloc optionnel de lignes de produits : prix par ligne et volume par ligne pour une construction volume fois prix.
Construction des Revenus
- Ligne 3 en-têtes de période 1..N (série unique, référencée par toutes les lignes ci-dessous).
- Clients en début de période : période 1
=Drivers!B5; périodes suivantes=<cellule de fin de période précédente>. - Nouveaux ajouts :
=Drivers!$B$8/Drivers!$B$9*Drivers!$B$14(dépenses sur CAC fois multiplicateur d'ajouts actif), ou entonnoir=Drivers!$B$10*Drivers!$B$11*Drivers!$B$14. Utiliser une formule cohérente sur toute la ligne. - Attrition :
=Début*Drivers!$B$7*Drivers!$B$15(multiplicateur d'attrition actif). - Clients en fin de période :
=Début+Ajouts-Attrition. - Chiffre d'affaires :
=Fin*Drivers!$B$6(clients fois ARPU), ou pour les lignes de produits=SUMPRODUCT(plage_prix,plage_volume). - ARR (si abonnement) :
=Revenu*12lorsque les périodes sont des mois, ou annualiser comme approprié.
Résumé
- Chiffre d'affaires annuel :
=SUM(<les 12 cellules de revenu mensuel de cette année>). - Croissance YoY :
=CetteAnnée/AnnéePrécédente-1. - Clients en fin d'année : dernière période de fin de l'année via un lien inter-onglet.
- Étiquette de scénario actif :
=CHOOSE(scn,"Base","Bull","Bear").
Sensibilité
- Coin supérieur gauche référence l'ARR final ou le chiffre d'affaires de la dernière période
='Construction des Revenus'!<cellule ARR final>. - Entrée colonne : valeurs de nouveaux ajouts par période. Entrée ligne : valeurs de taux d'attrition.
- Tableau de données natif à deux variables avec cellule d'entrée ligne = taux d'attrition Drivers et cellule d'entrée colonne = un driver d'ajouts Drivers.
Contrôles
- Roll-forward chaque période :
=IF(Fin=Début+Ajouts-Attrition,"OK","ÉCHEC")sur toutes les périodes, puis=AND(...). - Continuité :
=IF(Début_période_t=Fin_période_t-1,"OK","ÉCHEC"). - Cohérence de la croissance : signaler si une croissance YoY dépasse une limite bleue d'entrée ou est inférieure à un seuil.
- Clients et chiffre d'affaires non négatifs chaque période.
Conventions de formules et de formatage
- Police bleue pour les entrées (Drivers uniquement). Noire pour les formules internes à l'onglet. Verte pour les liens inter-onglets.
- Aucun nombre codé en dur dans les formules ; les constantes sont sur Drivers en cellules bleues. Utiliser des références absolues (
$B$7) vers les cellules drivers pour qu'une ligne se remplisse proprement sur les périodes. - Une formule cohérente par ligne pour qu'elle se copie horizontalement sans modifications.
- Clients en nombres entiers avec séparateurs de milliers ; ARPU et chiffre d'affaires en devise ; attrition et croissance en pourcentage.
- Nommer
scnet la cellule d'ARR final pour que les Contrôles et la Sensibilité lisent clairement.
Contrôles
- Fin = début + ajouts - attrition chaque période (OK/ÉCHEC).
- Début de chaque période égal à la fin de la période précédente.
- Croissance YoY dans une bande de cohérence définie.
- Clients et chiffre d'affaires jamais négatifs ; attrition entre 0 et 1.
Recalculer et vérifier
Après l'écriture, recalculer en mode headless avec LibreOffice pour que le texte des formules openpyxl devienne des valeurs calculées. Parcourir chaque onglet à la recherche de #REF!, #DIV/0!, #VALUE!, #NAME?. Corriger toute formule problématique ou plage nommée manquante et recalculer à nouveau en boucle. Livrer seulement lorsque l'onglet Contrôles affiche tous les OK et qu'aucune chaîne d'erreur ne subsiste.
Entrées à collecter
- Clients ou unités de départ et ARPU ou prix par ligne.
- Mécanisme d'acquisition : dépenses marketing et CAC, ou un entonnoir (leads et conversion).
- Taux d'attrition par période et la durée de la période (mois ou trimestre).
- Multiplicateurs de scénario pour les ajouts et l'attrition (Base/Bull/Bear).
- Horizon de prévision (nombre de périodes).
Exemple
Hypothétique : commencer avec 1 000 clients, ARPU de 50 par mois, attrition de 3 % mensuelle. Dépenses marketing de 100 000 par mois, CAC de 500, soit 200 nouveaux ajouts par mois. Attrition du mois 1 environ 30 clients, fin environ 1 170. Sur 36 mois en scénario Base, les clients montent en puissance et le chiffre d'affaires mensuel croît ; Bull applique un multiplicateur d'ajouts de 1,2x et d'attrition de 0,8x. La sensibilité fait varier les ajouts de 150 à 300 contre une attrition de 2 % à 5 % pour montrer l'ARR final.