Les huit services d'un SaaS, comment les brancher et ce qu'ils coûtent, API Claude comprise (tarifs d'octobre 2026).
Vue d'ensemble
Un SaaS typique utilise 7 à 8 services.
- Supabase : base de données + authentification + stockage
- Vercel : hébergement et déploiement
- Nom de domaine : l'adresse de ton app (Namecheap, OVH, etc.)
- Stripe : paiements et abonnements
- Resend : emails transactionnels
- Upstash : rate limiting (anti-abus)
- API Claude : IA générative (si ton app utilise l'IA)
- Sentry : monitoring des erreurs en production
Tous ont un plan gratuit suffisant pour développer. Tu ne paies qu'au moment de passer en production avec de vrais utilisateurs.
Prérequis : Docker et Node.js
Avant de configurer les services, deux outils sur ta machine.
Docker (pour la base de données locale)
Docker fait tourner une base Supabase sur ton ordinateur pendant le développement. Tu ne touches jamais aux données de production.
Sur macOS :
- Télécharge Docker Desktop sur docker.com/products/docker-desktop, gratuit pour un usage individuel
- Installe-le comme n'importe quelle application
- Lance Docker Desktop, il tourne en tâche de fond (icône de baleine dans la barre de menu)
Sur Windows :
- Télécharge Docker Desktop sur docker.com/products/docker-desktop
- L'installeur active WSL 2 (Windows Subsystem for Linux) si besoin, accepte
- Redémarre si demandé, puis lance Docker Desktop
Vérifie que Docker tourne :
docker --version
Docker Desktop utilise de la RAM (2-4 Go). Si ton ordinateur a moins de 8 Go de RAM, ça peut ralentir. Tu peux fermer Docker quand tu ne développes pas.
Node.js (pour les outils de développement)
Node.js fait tourner les outils du projet (serveur Next.js, migrations Supabase, etc.). Pas nécessaire pour Claude Code lui-même, mais indispensable dès que tu travailles sur un vrai projet.
Sur macOS, ouvre le Terminal et colle :
curl -fsSL https://fnm.vercel.app/install | bash && fnm install 24
Ferme et rouvre le Terminal, puis vérifie :
node --version
Tu dois voir v24.x.x. Node 24 est la version LTS et celle que Vercel utilise par défaut : autant développer sur la même.
Sur Windows :
- Va sur nodejs.org
- Télécharge l'installeur LTS
- Lance l'installeur, coche "Add to PATH" quand on te le demande
- Ouvre PowerShell et tape
node --version
Erreur fréquente sur Windows : si node --version ne fonctionne pas après
l'installation, redémarre ton ordinateur. Le PATH a besoin d'un redémarrage
pour être pris en compte.
1. Supabase, base de données, Auth, Storage
Supabase regroupe ta base PostgreSQL, l'auth (login, register, OAuth) et le stockage de fichiers, avec une interface d'administration web.
Étapes d'installation
- Crée un compte sur supabase.com
- Crée un projet (choisis la région
eu-westpour la France) - Note l'URL et les clés API (Dashboard → Settings → API)
- En local, installe le CLI :
npx supabase initpuisnpx supabase start(Docker doit tourner)
Variables d'environnement
NEXT_PUBLIC_SUPABASE_URL=https://xxxxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJhbGci...
SUPABASE_SERVICE_ROLE_KEY=eyJhbGci...
Pricing
| Plan | Prix | Limites | Pour qui |
|---|---|---|---|
| Free | 0$/mois | 500 Mo stockage, 50K utilisateurs, 2 projets | Développement |
| Pro | 25$/mois | 8 Go stockage, 100K utilisateurs, backups quotidiens | Production |
Mise en pause : le plan Free met ton projet en pause après 7 jours sans activité. Tes utilisateurs ne pourront plus se connecter. Passe en Pro dès que tu as des vrais utilisateurs.
2. Vercel, hébergement et déploiement
Vercel héberge ton app Next.js. Chaque git push déclenche un déploiement automatique, sans serveur à configurer.
Étapes d'installation
- Crée un compte sur vercel.com (connexion via GitHub)
- Clique "New Project" et importe ton repository GitHub
- Vercel détecte automatiquement que c'est du Next.js
- Ajoute tes variables d'environnement dans Settings → Environment Variables
- Premier déploiement automatique en 2 minutes
Fonctionnalités clés
- Deploy Preview : chaque Pull Request a sa propre URL de prévisualisation
- Cron Jobs : tâches planifiées (envoi d'emails, synchro, rappels) définies dans
vercel.json - Analytics : métriques de performance Web Vitals
Pricing
| Plan | Prix | Limites | Pour qui |
|---|---|---|---|
| Hobby | 0$/mois | Usage perso non commercial, fonctions jusqu'à 60s, 1 cron/jour max | Tester |
| Pro | 20$/mois | Projets illimités, fonctions jusqu'à 300s (800s avec Fluid Compute), crons illimités | Production |
3. Nom de domaine
L'adresse de ton app (ex: monapp.com), à acheter chez n'importe quel registrar.
Étapes
- Choisis un registrar : Namecheap, OVH, Gandi...
- Cherche et achète ton nom de domaine
- Dans Vercel : Settings → Domains → ajoute ton domaine
- Copie les DNS fournis par Vercel chez ton registrar
- Attends 24-48h pour la propagation DNS
Pricing
- .com : environ 10€/an (première année souvent en promo à 7€)
- .fr : environ 10-12€/an
- .app : environ 15€/an
- WhoisGuard (protection vie privée) : gratuit chez Namecheap
4. Stripe, paiements
Stripe encaisse les paiements et gère les abonnements de tes clients. Tu ne paies rien chaque mois : Stripe prend une commission quand quelqu'un paie.
Étapes d'installation
- Crée un compte sur stripe.com
- Active le mode Test d'abord (Dashboard → bascule "Test mode")
- Crée tes produits et prix (Products → Add product)
- Récupère tes clés API (Developers → API keys)
- Configure le webhook : Developers → Webhooks → ajoute ton URL +
/api/webhooks/stripe - En local :
stripe listen --forward-to localhost:3000/api/webhooks/stripe
Variables d'environnement
STRIPE_SECRET_KEY=sk_test_xxx
STRIPE_WEBHOOK_SECRET=whsec_xxx
STRIPE_PRICE_PRO_MONTHLY=price_xxx
Pricing
| Type | Coût |
|---|---|
| Abonnement Stripe | 0$, gratuit tant que personne ne paie |
| Commission par paiement (Europe) | 1,5% + 0,25€ par transaction |
| Stripe Billing (abonnements) | +0,7% du volume facturé |
Coût réel : si tu as 10 clients Pro à 29€/mois, Stripe te prend environ 5€/mois au total. C'est négligeable.
5. Resend, emails transactionnels
Resend envoie tes emails automatiques (bienvenue, rappels, récaps hebdomadaires). Il marche avec React Email pour écrire les templates en composants.
Étapes d'installation
- Crée un compte sur resend.com
- Ajoute ton domaine : Settings → Domains → Add domain
- Configure 3 enregistrements DNS chez ton registrar
- Vérifie le domaine (quelques minutes)
- Récupère ta clé API : API Keys → Create
Variable d'environnement
RESEND_API_KEY=re_xxx
Pricing
| Plan | Prix | Limites |
|---|---|---|
| Free | 0$/mois | 3 000 emails/mois, 1 jour de rétention des logs |
| Pro | 20$/mois | 50 000 emails/mois, analytics complètes |
3 000 emails/mois gratuits = largement suffisant pour démarrer. Même avec 100 utilisateurs actifs, tu restes dans le quota gratuit.
6. Upstash, rate limiting (anti-abus)
Un Redis serverless qui sert à limiter les appels par utilisateur. Sans lui, un utilisateur pourrait spammer ton API d'IA et te coûter des centaines de dollars en tokens.
Étapes d'installation
- Crée un compte sur upstash.com
- Crée une base Redis (région :
eu-west-1) - Récupère l'URL et le token (Database → Details)
Variables d'environnement
UPSTASH_REDIS_REST_URL=https://xxx.upstash.io
UPSTASH_REDIS_REST_TOKEN=xxx
Pricing
- Free : 500 000 commandes/mois. Tu ne dépasseras probablement jamais ce quota, même avec 1 000 utilisateurs.
- Pay-as-you-go : 0,2$/100 000 commandes au-delà.
7. API Claude (si ton app utilise l'IA)
C'est elle qui fait tourner la génération IA dans ton app, et tu la paies au token.
L'unité que l'API compte et facture. Un mot courant fait souvent un token, un mot long ou rare en fait plusieurs. Chaque appel facture les tokens envoyés (input : prompt système, historique, demande) et les tokens produits (output : la réponse, et la réflexion du modèle). Sur tous les modèles actuels, un token d'output coûte cinq fois un token d'input.
Ne pas confondre : ton abonnement Claude (Pro à 20 $/mois, Max à 100 $ ou 200 $/mois) te donne Claude Code pour développer. L'API est un service séparé, facturé à l'usage, pour intégrer l'IA dans ton app. Depuis le 7 octobre 2026, Max et Team incluent des crédits API mensuels : 100 $ sur Max 5x, 200 $ sur Max 20x, 20 $ par siège Team standard et 100 $ par siège premium (mutualisés, plafond 500 $). Ils couvrent l'API et l'Agent SDK, pas Claude Code, et ne se reportent pas d'un mois sur l'autre. Free, Pro et Enterprise n'y ont pas droit.
Étapes
- Crée un compte sur platform.claude.com (l'ancienne console.anthropic.com)
- Ajoute un moyen de paiement (obligatoire même pour tester). Sur Max ou Team, vérifie d'abord si tes crédits API inclus suffisent à tes tests
- Crée une clé API
- Configure une limite de dépense mensuelle dans les réglages de facturation, pour éviter les surprises
Variables d'environnement
ANTHROPIC_API_KEY=sk-ant-xxx
# ID exact du modèle, à copier depuis la page Models de la doc
ANTHROPIC_MODEL=
Ne code jamais l'ID du modèle en dur. Chaque modèle a une date de retrait,
et après cette date les appels avec son ID échouent. Sonnet 4 et Opus 4 ont
été retirés le 15 juin 2026, Opus 4.1 le 5 août 2026, et Sonnet 4.5 est retiré
le 30 novembre 2026. Si ton app appelle claude-sonnet-4-5 dans dix fichiers,
elle casse ce jour-là. Mets l'ID dans ANTHROPIC_MODEL, lis-le à un seul
endroit du code, et changer de modèle devient une modif de variable sur
Vercel.
Pricing (octobre 2026, en dollars par million de tokens)
| Modèle | Input | Output | Lecture en cache | Pour quoi |
|---|---|---|---|---|
| Haiku 5.5 (prompt ≤ 100K) | 0,10 $ | 0,50 $ | 0,01 $ | Classer, extraire, résumer en volume |
| Haiku 5.5 (prompt > 100K) | 0,50 $ | 2,50 $ | 0,05 $ | Même modèle, palier long contexte |
| Sonnet 5.5 | 2 $ | 10 $ | 0,10 $ | Génération de contenu, la plupart des features |
| Opus 5.5 | 4 $ | 20 $ | 0,20 $ | Raisonnement en plusieurs étapes |
| Fable 5.1 | 10 $ | 50 $ | 0,25 $ | Le plus capable, à réserver aux cas où le reste échoue |
Trois leviers à connaître dès le départ :
- Le cache de prompt. Si tu renvoies le même début de prompt à chaque appel (prompt système, consignes, exemples), l'API peut le garder en cache. L'écriture coûte 1,25x le prix d'input (cache de 5 minutes, rafraîchi à chaque lecture) ou 2x (cache d'une heure). Ensuite chaque relecture coûte le prix de la colonne "Lecture en cache". Minimum 512 tokens sur les modèles 5.5, en dessous rien n'est mis en cache.
- Le batch. Pour ce qui n'est pas en temps réel (rapports de nuit, traitement de masse), l'API Batch coûte 50 % moins cher, cumulable avec le cache. La plupart des lots finissent en moins d'une heure.
- L'effort. Sur les modèles 5.5 et Fable 5.1, le raisonnement interne (thinking) est toujours actif et facturé comme de l'output. Pour une tâche simple, baisse le niveau d'effort (
lowoumedium) plutôt que de payer une réflexion inutile.
Combien coûte une génération
Prends une génération de contenu à 3 variantes : environ 2 000 tokens d'entrée (prompt système + demande) et 3 000 tokens de sortie.
| Modèle | Calcul | Coût par génération |
|---|---|---|
| Haiku 5.5 | 2 000 × 0,10 $/M + 3 000 × 0,50 $/M | ~0,002 $ |
| Sonnet 5.5 | 2 000 × 2 $/M + 3 000 × 10 $/M | ~0,034 $ |
| Opus 5.5 | 2 000 × 4 $/M + 3 000 × 20 $/M | ~0,068 $ |
Ces chiffres ne comptent pas le thinking. Prévois une marge, surtout sur Opus 5.5.
Avec le cache, tu ne paies presque plus le prompt système. Un prompt système de 5 000 tokens sur Sonnet 5.5 coûte 0,01 $ par appel sans cache, et 0,0005 $ en lecture de cache.
Estimation mensuelle (Sonnet 5.5, 20 générations par utilisateur et par mois)
- 10 utilisateurs actifs : 200 générations, environ 7 $/mois
- 100 utilisateurs actifs : 2 000 générations, environ 70 $/mois
- Les mêmes 100 utilisateurs sur Haiku 5.5 : environ 3,50 $/mois
Configure une limite de dépense dans la console dans tous les cas.
Recompte si tu as calibré ton budget sur un vieux modèle. Depuis Opus 4.7, le tokenizer découpe le même texte en environ 30 % de tokens en plus. Le comptage de tokens de l'API est gratuit : passe tes prompts réels dedans avant de figer ton estimation.
8. Sentry, monitoring des erreurs
Sentry remonte les erreurs de production dès qu'elles arrivent. Sans lui, tu apprends que ton app plante quand un utilisateur t'écrit.
Étapes
- Crée un compte sur sentry.io
- Crée un projet Next.js
- Suis le wizard d'installation (ajoute automatiquement les fichiers de config)
Variables d'environnement
NEXT_PUBLIC_SENTRY_DSN=https://xxx@sentry.io/xxx
SENTRY_ORG=ton-org
SENTRY_PROJECT=ton-projet
SENTRY_AUTH_TOKEN=sntrys_xxx
Pricing
- Developer (0$/mois) : 5 000 erreurs/mois, 1 utilisateur. Suffisant pour démarrer.
- Team (26$/mois) : 50 000 erreurs/mois, utilisateurs illimités.
Récap des coûts
Phase développement (0 utilisateur)
| Service | Coût |
|---|---|
| Supabase Free | 0$ |
| Vercel Hobby | 0$ |
| Domaine .com | ~0,80$/mois (10$/an) |
| Stripe | 0$ (pas de transaction) |
| Resend Free | 0$ |
| Upstash Free | 0$ |
| API Claude (tes tests) | ~2-5$/mois, 0$ si tes crédits API Max ou Team suffisent |
| Sentry Developer | 0$ |
| Abonnement Claude (Claude Code) | 20$ (Pro) à 200$ (Max 20x) |
| Total phase dev | ~25$/mois avec Pro, ~205$/mois avec Max 20x |
L'infrastructure coûte quasi rien en développement. Le seul coût significatif, c'est ton abonnement Claude. Pro à 20 $/mois inclut Claude Code. Max (100 $ ou 200 $) sert quand tu touches les limites d'usage, et apporte des crédits API pour tester ton app. Ce que Claude Code consomme en tokens, et comment le réduire : chapitre 19.
Phase production (10-50 utilisateurs)
| Service | Coût |
|---|---|
| Supabase Pro | 25$/mois |
| Vercel Pro | 20$/mois |
| Domaine | ~1$/mois |
| Stripe (commissions) | ~5$/mois |
| Resend Free | 0$ |
| Upstash Free | 0$ |
| API Claude (Sonnet 5.5) | ~7-35$/mois |
| Sentry Developer | 0$ |
| Total production | ~60-90$/mois |
L'API est calculée sur la base de la section 7 : 20 générations par utilisateur et par mois, à environ 0,034 $ l'une.
Seuil de rentabilité : si ton abonnement est à 29€/mois, 3 clients payants couvrent l'infrastructure. Dès le 4e client, tu es rentable.
L'ordre d'installation recommandé
Phase 1, développement (jour 1)
- Supabase → ta base de données et auth fonctionnent
- Vercel → ton app est déployée automatiquement
- Sentry → tu vois les erreurs dès le début
Phase 2, features (jours 2-3)
- Resend → tes emails automatiques fonctionnent
- Upstash → ton API est protégée contre les abus
- API Claude → ton IA est intégrée (si applicable)
Phase 3, lancement (jour 4+)
- Stripe → tes utilisateurs peuvent payer
- Domaine → ton app a sa propre adresse
Recette express pour un premier SaaS
Si tu démarres ton tout premier projet, ne cherche pas à tout brancher d'un coup. Tu vas te noyer.
Le stack minimal qui scale jusqu'à 1 000 users :
- Supabase (base + auth) : 25$/mois
- Vercel (hébergement) : 20$/mois si tu passes en Pro, gratuit sinon
- Resend (emails) : gratuit jusqu'à 3 000 emails/mois
- Stripe (paiements) : 0$ fixe, commission uniquement
Budget total : environ 25 $/mois au démarrage, qui monte à 45 $/mois quand tu passes Vercel Pro. Le reste (Upstash, Sentry, API Claude, domaine custom) vient quand tu en as besoin, pas avant.
Question
Tu as Max 5x, avec 100 $ de crédits API par mois depuis le 7 octobre 2026. Qu'est-ce que ces crédits paient ?
Choisis une réponse pour voir l'explication.
À retenir
- En développement, ton seul vrai coût est l'abonnement Claude. En production, 3 clients à 29 € couvrent l'infra.
- Sonnet 5.5 pour la plupart des features, Haiku 5.5 pour le volume, cache et batch dès que possible. L'ID du modèle va dans une variable d'environnement.
- Les crédits API de Max et Team paient ton app, pas Claude Code.
Quiz de fin de partie
Partie 5 : Passer en production
6 questions. La partie est validée à partir de 5 bonnes réponses.