Quand un débutant lance sa première VM cloud, il croit payer « la VM ». En réalité, dès la première seconde, le compteur tourne sur huit axes simultanés : temps de calcul, espace disque, trafic sortant, requêtes I/O, licences, snapshots, sauvegardes, support. Cette page décortique chaque axe, explique les granularités de facturation entre fournisseurs, compare les trois modèles d’engagement (on-demand, reserved, spot) et liste les cinq pièges qui font exploser les factures sans que personne ne s’en rende compte avant le 5 du mois suivant.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Les 8 axes de facturation simultanés que vous payez à chaque seconde
- La granularité de facturation par fournisseur et son impact réel
- Les 3 modèles d’engagement (on-demand, reserved, spot) et leurs économies respectives
- Les 5 pièges classiques de facturation à anticiper
- Comment lire une facture cloud sans paniquer
Prérequis : avoir compris la bascule comptable du cloud. Si besoin, démarrez par CAPEX vs OPEX.
1. Les 8 axes de facturation simultanés
Section intitulée « 1. Les 8 axes de facturation simultanés »L’erreur de cadrage la plus fréquente est de raisonner à la VM. Le prix affiché d’une instance (par exemple « c5.xlarge à 0,17 €/h ») ne couvre que le compute. À côté, sept autres compteurs tournent en parallèle, parfois invisibles sur la page produit, mais bien présents sur la facture.
Compute time — le coût visible
Section intitulée « Compute time — le coût visible »Le temps de calcul est l’axe le plus médiatisé. Vous payez la VM tant qu’elle est dans l’état running. Le tarif dépend du type d’instance (CPU, RAM, GPU), de la région (Paris coûte ~10 % plus cher que Ohio), et de l’OS (Windows ajoute la licence Microsoft, ~50 % de surcoût). Une c5.xlarge en eu-west-3 coûte ~0,19 €/h à la demande, soit ~140 €/mois si elle tourne 24/7.
Storage — le coût oublié
Section intitulée « Storage — le coût oublié »Tout disque attaché à une VM se paye tant qu’il existe, même si la VM est arrêtée. Un volume EBS gp3 de 100 Go vous coûte ~8 €/mois, peu importe qu’il soit utilisé ou non, branché ou non. Cette mécanique explique pourquoi un environnement de test « éteint le soir » continue de coûter de l’argent — la facture mensuelle ne tombe à zéro que si on détruit les ressources, pas si on les arrête.
Network egress — le piège cher
Section intitulée « Network egress — le piège cher »Les données qui entrent dans le cloud sont gratuites, celles qui en sortent sont facturées. Les tarifs varient drastiquement entre fournisseurs : ~0,09 €/Go chez AWS hors CDN, ~0,08 €/Go Azure, ~0,12 €/Go GCP, mais seulement ~0,01 €/Go chez Outscale. Une application qui sert 10 To/mois à ses utilisateurs paye 900 € par mois juste en bande passante chez AWS. Ce piège mérite sa propre page : voir Egress et data transfer economics.
I/O operations — le coût invisible
Section intitulée « I/O operations — le coût invisible »Sur les services managés (S3, DynamoDB, RDS), chaque requête est facturée. S3 facture ~0,005 € pour 1 000 requêtes PUT et ~0,0004 € pour 1 000 GET. À petite échelle, c’est négligeable. À l’échelle d’une application qui fait 50 millions de GET par jour, on parle de ~600 € par mois rien qu’en requêtes, sans compter le stockage des objets ni l’egress.
Licences OS et logiciel
Section intitulée « Licences OS et logiciel »Une VM Windows facture la licence en plus du compute. Une instance RDS Oracle Enterprise inclut une licence Oracle qui peut multiplier le coût de base par 3. Les bases SQL Server avec Always On sur Azure incluent des frais de licence considérables. Vérifier systématiquement si la licence est incluse ou facturée séparément avant de signer un design.
Snapshots et backups
Section intitulée « Snapshots et backups »Un snapshot EBS se facture comme un volume mais à un tarif réduit (~0,05 €/Go-mois côté AWS). Sans politique de lifecycle, les snapshots s’accumulent indéfiniment : un snapshot quotidien d’un volume de 200 Go conservé 365 jours, c’est 73 To stockés, ~3 600 € par an juste de snapshots. C’est l’un des coûts les plus dérivants en environnement non gouverné.
Le support standard (Basic) est gratuit chez tous les hyperscalers. Dès qu’on passe à du support Developer (~30 $/mois), Business (3 % de la facture mensuelle, minimum ~100 $) ou Enterprise (10 % de la facture, minimum 15 000 $/mois), l’addition grimpe vite. Sur un compte qui consomme 50 000 € par mois, le Business Support à lui seul coûte 1 500 € — souvent oublié dans les budgets initiaux.
2. La granularité de facturation : seconde, minute, milliseconde
Section intitulée « 2. La granularité de facturation : seconde, minute, milliseconde »Tous les fournisseurs n’ont pas la même précision de facturation. Cette différence est technique en surface, financière en profondeur : sur un workload qui démarre et s’arrête souvent, l’écart de granularité change radicalement la facture.
| Fournisseur / service | Granularité | Année d’introduction |
|---|---|---|
| AWS EC2 Linux | seconde (min 60 s) | octobre 2017 |
| AWS EC2 Windows | heure | jamais migré |
| Azure Compute | minute | depuis 2014 |
| GCP Compute Engine | seconde (min 60 s) | depuis 2017 |
| Outscale OAPI VMs | heure | 2026 |
| AWS Lambda | milliseconde | depuis 2014 |
| Azure Functions Consumption | milliseconde | depuis 2017 |
| GCP Cloud Run | dizaine de millisecondes | depuis 2019 |
La granularité fine (seconde, ms) avantage les workloads CI/CD, batch courts, fonctions événementielles. La granularité grossière (heure) pénalise les usages courts : une instance Outscale lancée pendant 5 minutes coûte la même chose qu’une instance lancée pendant 60 minutes — c’est le minimum facturé.
Conséquence pratique sur une CI : un job qui démarre 50 fois par jour pendant 6 minutes coûte ~50 € par mois en facturation seconde et ~500 € par mois en facturation heure. L’écart est d’un facteur 10, pour exactement le même calcul effectué.
3. Les 3 modèles d’engagement
Section intitulée « 3. Les 3 modèles d’engagement »Le prix on-demand est rarement celui que payent les entreprises matures. Trois modèles se superposent, chacun avec un compromis flexibilité/coût.
On-demand : flexibilité totale, prix maximum
Section intitulée « On-demand : flexibilité totale, prix maximum »Vous lancez, vous payez à l’usage, vous arrêtez quand vous voulez. Aucun engagement, aucune réservation. C’est le défaut quand on lance une instance pour la première fois, c’est aussi le plus cher. Convient parfaitement aux MVP, à la R&D, aux pics imprévisibles, aux workloads qui meurent dans 2 mois.
Reserved Instances et Savings Plans : -30 % à -72 %
Section intitulée « Reserved Instances et Savings Plans : -30 % à -72 % »En vous engageant sur 1 ou 3 ans d’usage, vous obtenez des remises massives. Un Reserved Instance 3 ans All Upfront chez AWS sur une c5.xlarge passe de 0,17 €/h à 0,063 €/h, soit −63 %. Les Savings Plans sont plus flexibles (engagement sur un montant horaire, pas sur un type d’instance), avec des remises légèrement inférieures.
Le piège : un engagement 3 ans est aussi rigide qu’un achat de serveur. Vous ne pouvez pas changer de région, vous payez même si vous arrêtez la VM, vous ne récupérez quasi rien si vous voulez sortir. C’est le CAPEX déguisé en OPEX dont je parle dans CAPEX vs OPEX.
Spot et Preemptible : -60 % à -91 %
Section intitulée « Spot et Preemptible : -60 % à -91 % »Les instances Spot (AWS), Preemptible (GCP), Low-Priority (Azure) sont des VMs vendues sur le marché de la capacité excédentaire. Vous payez 5 à 30 % du prix on-demand, mais le fournisseur peut les couper avec 2 minutes de préavis quand il a besoin de la capacité ailleurs.
Convient parfaitement aux workloads tolérants à l’interruption : entraînement ML, traitement batch, encodage vidéo, CI/CD parallèle, fuzzing. Inadapté aux workloads stateful (bases de données, sessions utilisateur live), sauf à mettre en place une couche de tolérance aux pannes lourde.
| Modèle | Réduction vs on-demand | Engagement | Risque |
|---|---|---|---|
| On-demand | 0 % | aucun | aucun |
| Reserved 1 an | -30 à -45 % | 1 an | engagement long |
| Reserved 3 ans All Upfront | -60 à -72 % | 3 ans + paiement avance | engagement très long |
| Savings Plan 3 ans | -54 à -66 % | 3 ans (montant horaire) | engagement long, plus flexible |
| Spot / Preemptible | -60 à -91 % | aucun | interruption 2 min préavis |
4. Les 5 pièges de facturation les plus courants
Section intitulée « 4. Les 5 pièges de facturation les plus courants »Voici les cinq dérives que je retrouve systématiquement lors d’un audit de coûts cloud chez un client qui découvre la facture, classées par fréquence.
💸 Instance stoppée, EBS facturé
Le piège : on stoppe une instance le vendredi soir pour économiser, mais le disque EBS reste attaché et facturé 24/7. L’économie est partielle, pas totale.
Mesure réelle : sur une c5.xlarge avec 200 Go EBS, stoppée le week-end, l’économie passe de 100 % à seulement 60 %.
Mitigation : pour vraiment libérer les coûts, il faut détruire la VM (snapshot avant), pas juste l’arrêter. Auto Scaling Group avec scale-to-zero ou pipeline IaC qui detruit/recrée.
🌉 NAT Gateway facturée 24/7
Le piège : une NAT Gateway AWS coûte ~32 €/mois, plus ~0,045 € par Go traité. Beaucoup d’architectures en plantent une par AZ par environnement par défaut.
Mesure réelle : 3 environnements × 2 AZ × 1 NAT Gateway = 6 NAT Gateways = 192 €/mois rien que pour le NAT, hors trafic.
Mitigation : 1 seule NAT Gateway sur l’environnement de dev/test (pas par AZ), retirer pour les workloads sans besoin de sortie internet, alternative vpc-endpoint pour l’accès aux services AWS.
📸 Snapshots cumulatifs sans lifecycle
Le piège : politique de backup mise en place sans rétention. Au bout d’un an, un snapshot quotidien × 365 × 200 Go = 73 To stockés, ~3 600 € de coût annuel.
Mesure réelle : sur un parc de 50 VMs avec snapshots quotidiens et zéro rétention, j’ai vu une facture de snapshots de 8 200 € par mois.
Mitigation : politique de rétention obligatoire (7 jours quotidiens, 4 hebdo, 3 mensuels, 1 annuel), automatisée via Data Lifecycle Manager côté AWS.
🔀 Cross-AZ traffic invisible
Le piège : le trafic entre AZ est facturé ~0,01 €/Go dans chaque sens. Une application 3-tier mal conçue peut traverser les AZ à chaque requête, doublant ou triplant la facture réseau.
Mesure réelle : un cluster Kubernetes mal configuré avec scheduling aléatoire des pods peut générer 50 % de trafic cross-AZ inutile.
Mitigation : topology aware routing, zone-aware load balancing, placement strategies pour grouper les pods qui se parlent.
📜 Logs accumulés indéfiniment
Le piège : CloudWatch Logs facturé ~0,50 €/Go ingéré + ~0,03 €/Go-mois stocké. Un log applicatif verbose peut générer 100 Go/jour, soit ~50 € d’ingestion par jour.
Mesure réelle : équipe dev qui logge en DEBUG en production : 1 200 €/mois de CloudWatch Logs sur un service unique.
Mitigation : niveau de log INFO en prod, retention automatique 30 jours sur logs applicatifs, archive S3 Glacier au-delà.
5. Trois bonnes pratiques pour garder le contrôle de la facture
Section intitulée « 5. Trois bonnes pratiques pour garder le contrôle de la facture »Pour ne pas subir la facture cloud, trois pratiques se sont imposées comme des fondamentaux de la gouvernance financière cloud (FinOps). Elles s’implémentent dans l’ordre logique suivant.
Le tagging obligatoire dès le démarrage. Une politique de tagging cohérente (CostCenter, Project, Environment, Owner, ManagedBy) appliquée par policy bloquante au moment du provisioning. Sans tags, on ne peut pas allouer la facture aux équipes ou aux projets — on paye globalement sans visibilité fine. Le coût de mettre en place le tagging tardivement est nettement supérieur à le faire dès le départ, parce qu’il faut alors rétro-tagger des ressources existantes.
L’audit mensuel humain de la facture. Un dashboard auto-rafraîchi que personne ne regarde n’a aucun effet — il faut un rituel mensuel d’une heure où une personne désignée ouvre la console de coûts, identifie le top des postes, justifie l’évolution mensuelle, et liste les actions correctives prioritaires du mois.
Les budgets cloud avec alarmes dès le démarrage. Tous les fournisseurs proposent un service de budget avec alertes (AWS Budgets, Azure Cost Management, Google Cloud Billing, équivalents chez les fournisseurs souverains). Paramétrer des seuils à 50 %, 80 % et 100 % du budget mensuel attendu, avec notification email et messagerie d’équipe, évite les mauvaises surprises liées à une fuite ou un usage anormal.
À retenir
Section intitulée « À retenir »- Une instance cloud se facture sur 8 axes simultanés : compute, stockage, egress, I/O, licence, snapshot, backup, support — pas seulement la VM affichée.
- La granularité de facturation varie par fournisseur (seconde, minute, milliseconde) et impacte directement les workloads courts d’un facteur 10.
- Les 3 modèles d’engagement offrent des arbitrages flexibilité/coût : on-demand pour le variable, Reserved/Savings Plans pour le socle stable, Spot pour le tolérant à l’interruption. Le mix optimal cible 60 à 70 % d’engagement.
- Cinq pièges récurrents font dériver les factures : EBS oubliés, NAT Gateways non rationalisées, snapshots cumulatifs, cross-AZ traffic invisible, logs sans rétention.
- Trois réflexes structurels au J1 : tagging obligatoire par policy, audit mensuel humain, budgets avec alarmes hard.