From data-gouv-bys
Compute TAM/SAM/SOM on French companies using the data.gouv API Recherche d'entreprises — combines NAF codes, départements, tranches d'effectif and CA filters to produce sourced market sizes with scenarios. Use when the user asks for "market size", "taille de marché", "combien d'entreprises", "TAM/SAM/SOM", or to size a specific ICP.
How this skill is triggered — by the user, by Claude, or both
Slash command
/data-gouv-bys:market-sizeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You compute the **Total Addressable Market**, **Serviceable Addressable Market**, and **Serviceable Obtainable Market** on French companies, sourced from the public API Recherche d'entreprises.
You compute the Total Addressable Market, Serviceable Addressable Market, and Serviceable Obtainable Market on French companies, sourced from the public API Recherche d'entreprises.
| Acronym | Definition | Filters typically applied |
|---|---|---|
| TAM | Toutes les entreprises FR qui pourraient théoriquement avoir le problème | NAF section + tranche d'effectif large + etat_administratif=A |
| SAM | Celles qu'on peut vraiment servir (sweet spot ICP) | TAM + département/région + tranche d'effectif sweet spot + CA range |
| SOM | Celles qu'on va réellement atteindre sur 12 mois | 1-3% du SAM (réalité du cold outbound B2B) |
clients/<client>/cab-p.md existe → on connaît l'ICPSi cab-p.md ou icp.yaml existe : extraire les filtres pré-définis et confirmer avec l'utilisateur.
Sinon, demander une question à la fois :
references/naf-codes.md pour aider à traduire)1-9, 10-49, 50-249, 250-999, 1000+ (sera traduit en codes INSEE)>1M€, 1M-20M€, >50M€Appel à l'API avec les filtres larges (juste section + tranche large + etat_administratif=A) :
curl -s "https://recherche-entreprises.api.gouv.fr/search?section_activite_principale=J&tranche_effectif_salarie=11,12,21,22,31,32,41,42&etat_administratif=A&per_page=1" -H "User-Agent: data-gouv-bys/0.1" | jq '.total_results'
Le champ total_results donne le compte. Pas besoin de paginer pour un comptage.
⚠️ L'API plafonne total_results à 10 000. Si tu reçois exactement 10000 :
Resserrer les filtres avec tous les critères ICP (NAF précis, départements ciblés, CA range, catégorie, signaux qualité) :
curl -s "https://recherche-entreprises.api.gouv.fr/search?activite_principale=62.01Z,62.02A&departement=75,92,93,94,77,78,91,95&tranche_effectif_salarie=21,22&categorie_entreprise=PME,ETI&etat_administratif=A&per_page=1" -H "User-Agent: data-gouv-bys/0.1" | jq '.total_results'
3 scénarios réalistes :
Puis appliquer le taux de conversion outbound :
| Étape | Taux médian |
|---|---|
| Email envoyé → ouvert | 50-70% |
| Ouvert → répondu | 5-9% (avec personnalisation) |
| Répondu → meeting | 30-50% |
| Meeting → opportunité | 40-60% |
| Opportunité → client | 15-30% |
Multiplie le SOM par le funnel pour obtenir : meetings attendus, opportunités, deals fermés.
Génère clients/<client>/market-size.md (ou affiche directement si standalone) :
# Market Size — <Client>
Date: 2026-05-21
Source: data.gouv.fr / API Recherche d'entreprises (snapshot 2026-05-21)
## ICP synthétisé
- Secteurs (NAF): 62.01Z (édition logiciel), 62.02A (conseil SI)
- Effectif: 50-249 salariés (tranches INSEE 21, 22, 31)
- Catégorie: PME, ETI
- Géo: Île-de-France (75, 77, 78, 91, 92, 93, 94, 95)
- État: A (active)
## TAM — Toutes les boîtes FR potentielles
**Critères TAM** : Section J (Information et communication), 10+ salariés, FR entière, actives.
**Résultat** : `X 234 entreprises`
- Hypothèse : toutes les entreprises tech FR de 10+ salariés ont *potentiellement* le problème
## SAM — Vrai cœur de cible
**Critères SAM** : NAF resserré + IDF + 50-249 + PME/ETI
**Résultat** : `Y 567 entreprises`
- Sweet spot validé (niveau 3-4 de la méthode BYS)
- 1-2 contacts ATL/BTL identifiables par boîte = ~ Y × 1.5 personnes
## SOM — Cible 12 mois
| Scénario | % SAM | Boîtes | Personnes |
|---|---|---|---|
| Conservateur | 1% | 5 | 7-8 |
| Réaliste | 2% | 11 | 16-17 |
| Optimiste | 3% | 17 | 25 |
## Funnel attendu (scénario réaliste, 11 boîtes / 17 personnes)
- Emails envoyés (3 séquences) : ~ 51
- Ouverts (60%) : ~ 31
- Réponses (7%) : ~ 4
- Meetings (40%) : ~ 1.5
- Deals (20% des oppos) : ~ 0.3
## Sensibilité
- Si on élargit à AURA + Occitanie : SAM × 2.3
- Si on accepte les 20-49 salariés : SAM × 4.1
- Si on ajoute les microentreprises (1-9 sal.) : SAM × 18 (mais qualité chute)
## Recommandations
- Le SAM est sain (Y > 500 boîtes) → budget de campagne dimensionné correctement
- 2-3 ciblages T1 + 4-5 T2 sont jouables sans saturer
- Risque : <warnings éventuels, ex: trop concentré sur l'IDF, ou dépendant d'un seul NAF>
Si TAM < 200 → demande poliment :
"Le TAM est très petit (X entreprises). C'est un marché de niche — ça marche en outbound mais avec moins de 10 leads/mois. Tu veux :
- Élargir la géographie (toute la France au lieu d'IDF) ?
- Élargir les tranches d'effectif (ajouter 250-999) ?
- Ajouter des NAF voisins ?
- Tester un autre segment d'abord et garder celui-ci en bonus ?"
Si SAM > 10 000 → propose de resserrer :
"Le SAM est très large (X+ boîtes). C'est bien pour la pérennité, mais en outbound on personnalise au moins 30 leads/jour max. Tu veux qu'on resserre avec :
- Un signal récent (levée de fonds < 3 mois, hiring sales, croissance > 20%) ?
- Un CA range plus précis ?
- Un sous-secteur NAF plus pointu ?"
TAM=$(curl -s "https://recherche-entreprises.api.gouv.fr/search?section_activite_principale=J&etat_administratif=A&per_page=1" -H "User-Agent: data-gouv-bys/0.1" | jq -r '.total_results')
SAM=$(curl -s "https://recherche-entreprises.api.gouv.fr/search?activite_principale=62.01Z,62.02A&departement=75,92,93,94,77,78,91,95&tranche_effectif_salarie=21,22&categorie_entreprise=PME,ETI&etat_administratif=A&per_page=1" -H "User-Agent: data-gouv-bys/0.1" | jq -r '.total_results')
echo "TAM: $TAM | SAM: $SAM | SOM (2%): $(echo "$SAM * 0.02" | bc)"
curl -s "https://recherche-entreprises.api.gouv.fr/search?q=552120222" -H "User-Agent: data-gouv-bys/0.1" | jq '.results[0].dirigeants'
User-Agent headermarket-size-<topic>-<date>.md at the repo root or wherever the user is"Le marché est validé. Si tu n'as pas encore les 10 ciblages, lance
/data-gouv-bys:ciblage. Sinon,/data-gouv-bys:handoff-outboundpour pousser vers l'Outbound Engine."
npx claudepluginhub build-your-sales/data_gouv_mcp_bys --plugin data-gouv-bysProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.