Ce qui détermine vraiment votre facture de génération d'images

Sommaire
  1. En quoi les modèles d’images diffèrent
  2. Nous l’avons mesuré
  3. La règle de décision
  4. Pourquoi vous pouvez faire confiance à ces chiffres
  5. En résumé
  6. FAQ
  7. Sources

Nous avons ajouté la génération d’images à une passerelle conçue pour les LLM textuels et mesuré ce qui influence le coût selon quatre variables : le modèle, la résolution, le nombre d’images et la qualité. Le levier le plus important est la qualité, un paramètre que la plupart des API d’images exposent et que la plupart des appelants laissent sur la valeur par défaut. La résolution, la mise en cache des prompts et le traitement par lots comptent bien moins que ce que les gens imaginent.


En quoi les modèles d’images diffèrent

Les modèles d’images ne sont pas interchangeables les uns avec les autres. Ils divergent sur plusieurs axes, et un seul d’entre eux (la structure de facturation) concerne le prix. Le catalogue actif en un coup d’œil :

FamilleFacturationRéglage qualityLot n>1Résolution
gpt-image (OpenAI)par jetonlow/med/highjusqu’à ≈2K
gemini-image (Google)par jeton✗ 1/appel1K (gemini-3 : jusqu’à 4K)
qwen-image / wan2.7 (Alibaba)forfait/image512²–2048²
seedream (BytePlus)forfait/image✗ 1/appel≥1920² (4.5/5.0)

Les axes qui posent problème si vous supposez qu’un modèle se comporte comme un autre :

  • Structure de facturation. Par jeton (gpt-image, gemini) ou forfait par image (qwen, wan, seedream). C’est l’axe qui détermine votre facture, et c’est le sujet de la prochaine section.
  • Le réglage quality. Seul gpt-image en dispose (low/medium/high). Gemini modifie la fidélité par niveau de modèle (flash vers pro) ou via image_size ; les modèles à forfait n’ont pas un tel réglage. Ce seul paramètre fait varier la facture d’environ 36×, c’est donc le principal levier de coût, traité ci-dessous.
  • Le lot (n>1) n’est pas universel. gpt-image, qwen et wan retournent plusieurs images par appel. Chaque modèle d’image Gemini et Seedream est limité à une image par appel : n=2 retourne une erreur 400, vous devez donc émettre N requêtes et orchestrer le lot vous-même.
  • Les limites de résolution jouent dans les deux sens. gemini-2.5-flash-image est plafonné à 1K (1 MP), tandis que gemini-3 atteint 2K/4K (et sa facture double approximativement de 1K à 4K). Seedream 4.5/5.0 impose un plancher d’environ 1920² et rejette tout ce qui est inférieur. qwen-image se situe dans une plage de 512²–2048². Une résolution plus élevée n’est pas toujours disponible, et réduire la résolution pour économiser n’est pas toujours autorisé.
  • Les paramètres de contrôle et l’image-vers-image diffèrent. Seuls certains modèles acceptent seed, negative_prompt ou guidance_scale, et la limite d’images de référence pour l’édition va de 3 (gemini-2.5) à 16 (gpt-image).

Le réglage quality possède une propriété non évidente. Pour gpt-image, un jeton de sortie est une unité de facturation, pas une mesure du fichier obtenu. OpenAI attribue le nombre à partir d’une table de tarifs publiée par combinaison (quality × size) (272 / 1 056 / 4 160 jetons pour low / medium / high à 1024² sur gpt-image-1), donc le nombre est fixé par quality, et non dérivé des octets retournés. Nous avons vérifié : le même prompt à 1024² sur les trois niveaux a produit des PNG 1024×1024 identiques d’environ la même taille de fichier (environ 0,9 Mo), mais facturés 196, 1 756 et 7 024 jetons. Même résolution, même taille en octets, 36× le coût. Vous payez pour l’effort de rendu, pas pour les pixels, c’est pourquoi vous lisez usage plutôt que d’examiner visuellement la sortie.

Une capacité qu’aucun de ces modèles ne possède est la mise en cache des prompts, généralement la première idée d’économie à laquelle les gens pensent. La génération d’images est sans état : il n’y a pas de conversation ni d’état KV à réutiliser, l’objet usage ne contient aucun champ de cache, et (comme nous le mesurons ci-dessous) le traitement par lots ne partage pas non plus le prompt. La mise en cache est une fonctionnalité du chat, pas de l’image, ce qui écarte une hypothèse courante sur la réduction des coûts d’image.


Nous l’avons mesuré

Même prompt de type e-commerce, générations réelles via la passerelle, avec le coût calculé à partir de l’usage retourné en fonction des tarifs publiés de chaque modèle. Cinq observations, chacune issue d’un balayage distinct.

1. L’image est le coût, pas le prompt. En text-to-image (un prompt en entrée, une image en sortie), la facture représente 97–100 % de tokens de sortie : une génération gpt-image-2 en 1024² correspond à 21 tokens d’entrée et 196 tokens de sortie (environ $0,0001 plus $0,0059), et gemini-2.5-flash-image prend 10 tokens en entrée. Le prompt que vous rédigez est une erreur d’arrondi, mais uniquement parce qu’il est textuel. Fournissez une image à la place (image-to-image, par exemple « rends cette tasse bleue ») et l’entrée se tokenise en grand :

ModèleEntrée t2iEntrée i2i (1 réf.)Sortie
gpt-image-2 (low)21 tok1 043 tok196 tok
gemini-2.5-flash-image10 tok1 297 tok1 290 tok

L’entrée bondit de 50 à 130×, et elle évolue linéairement : chaque référence supplémentaire ajoute environ 1 025 tokens sur gpt-image-2 (1, 2 et 3 références mesurées à 1 043, 2 068 et 3 093). En qualité basse, ces tokens d’entrée dépassent cinq fois les tokens de sortie générés. Le principe s’applique dans les deux cas : une image est le coût, que vous la génériez ou que vous la fournissiez, et le prompt ne l’est jamais. Le reste de cet article reste en text-to-image ; l’économie plus complète de l’image-to-image fera l’objet d’un suivi séparé.

2. Le choix du modèle est un levier de 6×. Requête identique en 1024², qualité par défaut :

ModèleFacturationCoût / image
gpt-image-2token · curseur quality$0,0060
gpt-image-1-minitoken · curseur quality$0,0085
seedream-4-0forfait par requête$0,030
qwen-image-2.0forfait par requête$0,035
gemini-2.5-flash-imagetoken · sans curseur quality$0,0387

Un écart de 6,4× entre le chemin le moins cher et le plus coûteux, entièrement déterminé par le nombre de tokens de sortie émis par chaque modèle.

3. La résolution ne change presque rien. En faisant varier gpt-image-2 de 1024² à 2048², le coût par image est resté globalement stable ($0,0060 à $0,0121) ; les tokens de sortie ne sont pas proportionnels aux pixels. gemini-2.5-flash-image a retourné les mêmes 1 290 tokens quelle que soit la taille demandée, car il est limité à 1K et size ne modifie que le rapport d’aspect. (Les paliers d’image gemini-3 respectent bien image_size, doublant environ le coût de 1K à 4K, mais 2.5-flash-image, le modèle que nous évaluons ici, ne le fait pas.) Les modèles à forfait par image sont indépendants de la résolution par définition. Jusqu’ici, le modèle par token semble difficile à battre.

4. La qualité est le point de croisement. Balayage de gpt-image-2 sur les paliers de qualité :

quality1024²2048²
low$0,0060 (196 tok)$0,0121 (397 tok)
medium$0,053 (1 756 tok)$0,107 (3 568 tok)
high$0,211 (7 024 tok)$0,428 (14 272 tok)

Les tokens de sortie sont multipliés par environ 9 de low à medium et par environ 36 de low à high. En qualité basse, le modèle par token est l’option la moins chère ; en qualité moyenne ou haute, il dépasse le prix forfaitaire par image ($0,03–0,035). Le point de croisement se situe là où l’arithmétique le place, autour de 1 000 tokens de sortie ($0,03 ÷ $30/M) : low est en dessous, medium est au-dessus. Cela corrige également une conclusion antérieure de notre part. « Le par-token est toujours le moins cher » était un artefact de tests effectués à la qualité basse par défaut.

Le même prompt rendu par gpt-image-2 en qualité low, medium et high : trois photos produit 1024² également nettes, étiquetées 196 / 1 756 / 7 024 tokens de sortie et $0,006 / $0,053 / $0,215.

Même prompt, gpt-image-2, 1024². low / medium / high facturent 196 / 1 756 / 7 024 tokens de sortie, soit $0,006 / $0,053 / $0,215 : un écart de 36× à résolution identique. Pour une photo produit nette comme celle-ci, les trois sont difficiles à distinguer, donc le palier le moins cher suffit souvent. Réglez quality en fonction de la tâche plutôt que de laisser high par défaut.

5. Vous ne pouvez pas partager un prompt entre plusieurs images. Générer n images en un seul appel n’amortit pas le prompt. gpt-image-2 le facture N fois : les tokens d’entrée sont passés de 28 à 112 à n=4, et un long prompt de marque est passé de 499 à 1 996. Le coût par image était identique à n=1 et n=4. Sans mise en cache non plus, il n’existe aucun mécanisme de partage du coût du prompt pour la génération d’images. Vous payez par image de sortie, et le prompt est refacturé à chaque fois.


La règle de décision

Pour la génération texte-vers-image, tout se résume à la qualité, et non aux critères que l’on suppose habituellement :

  • Qualité basse / brouillon / miniature : un modèle à la qualité-par-token (gpt-image, environ $0,006–0,012). Le moins cher quelle que soit la résolution jusqu’à environ 2K.
  • Qualité moyenne / haute : tarif fixe par requête (seedream / qwen, $0,03–0,035). La facture au token s’emballe ($0,05–0,43 dans notre analyse), et le tarif fixe est à la fois moins cher et indépendant de la qualité.
  • gemini (environ $0,039 au défaut 1K) est rarement le choix optimal en termes de coût. Il est battu par gpt-image en basse qualité et par le tarif fixe par requête en qualité moyenne et haute. Il n’a pas de réglage quality ; vous choisiriez son niveau Pro ou une image_size plus élevée pour la qualité de sortie, pas pour le prix.
  • Les changements de résolution font varier le coût d’environ 2× au sein d’un même niveau de qualité, ce qui n’est pas suffisant pour inverser le choix. C’est la qualité qui l’inverse.
  • n>1, la mise en cache et le traitement par lots ne réduisent jamais le coût par image. Il n’y a rien à partager.
  • Image-vers-image : optez par défaut pour le tarif fixe par image. Une image de référence est une entrée, et seuls les modèles à la facturation par token la surtaxent (environ 1 025 tokens chacune) ; les modèles à tarif fixe l’incluent gratuitement. Pour l’édition, seedream / qwen gagnent généralement. gpt-image reste moins cher uniquement pour les éditions de basse qualité avec peu de références (environ 5 croisements avec le prix fixe), et perd dès que la qualité ou le nombre de références augmente.

Le commerce en ligne est l’exemple le plus parlant. Supposons que vous génériez des photos de produits en envoyant le même long prompt de marque pour chaque article du catalogue, et que vous supposiez que la mise en cache de ce prompt répété permettra d’économiser de l’argent. Cela échoue pour deux raisons : le prompt n’a jamais été le coût (c’est l’image qui l’est), et il n’y a de toute façon pas de mise en cache pour la génération. Puisque les vraies images de produits sont de qualité moyenne ou supérieure, le bon choix est un modèle à tarif fixe par image, qui est à la fois moins cher et plus prévisible, quelle que soit la répétitivité de vos prompts.

Les contraintes de capacité mentionnées en introduction peuvent toujours primer sur le choix : les modèles limités à une image par appel, les planchers et plafonds de résolution, les contraintes de résidence des données, et les paramètres (seed, negative_prompt, guidance_scale) qu’un modèle expose. Choisissez d’abord selon le coût, puis vérifiez que les capacités correspondent.


Pourquoi vous pouvez faire confiance à ces chiffres

Ces chiffres proviennent de vraies données usage confrontées aux tarifs officiels de chaque fournisseur, et non d’estimations. La facturation des images sur notre passerelle est sans état de session : elle ne se règle que sur un 2xx (une génération échouée n’est jamais facturée), vérifie en amont le coût maximal avant toute dépense, et facture une réponse sans usage au plafond plutôt que silencieusement à $0. Le principe est le même que celui que nous appliquons partout : faites confiance au coût, pas à un chiffre que le fournisseur vous communique. C’est la méthode que nous avons utilisée pour auditer si une passerelle ment sur le cache.


En résumé

La génération d’images ressemble à un simple endpoint supplémentaire, mais l’unité de facturation a changé. Pour la génération texte-vers-image, le levier n’est ni le prompt (pas de mise en cache, pas de partage par lots) ni la résolution. C’est la qualité : gpt-image est le moins cher en basse qualité, le tarif fixe par image (seedream / qwen) gagne en qualité moyenne et haute, avec le point de croisement autour de 1 000 tokens de sortie. Définissez la qualité délibérément, associez-y le modèle correspondant, et vérifiez le coût. Lorsque vous passez de la génération à l’édition en fournissant une image de référence, refaites le calcul, car l’image d’entrée devient le coût.


FAQ

La mise en cache des prompts réduit-elle le coût de la génération d’images ? Non. La génération est sans état : l’objet usage ne contient aucun champ de cache, et le traitement par lots refacture le prompt pour chaque image. Le coût est celui de l’image en sortie, pas du texte.

Facturation par token ou par image, laquelle est la moins chère ? Cela dépend de la qualité. Pour une qualité basse ou brouillon, un modèle avec réglage de quality comme gpt-image (environ $0,006–0,012). Pour une qualité moyenne ou élevée, un tarif fixe par image comme seedream/qwen ($0,03–0,035), car la facturation par token s’emballe. Pour l’image-vers-image, la réponse penche encore davantage vers le tarif fixe : ces modèles incluent les images de référence gratuitement, tandis que la facturation par token ajoute environ 1 025 tokens par image de référence.


Sources

Toutes les sources vérifiées le 2026-06-19. Ceci ne constitue pas un conseil financier ; vérifiez les tarifs en vigueur avant de vous y fier.

← Retour au blog