Does PNG, JPEG or WebP change the price of an AI image on Sume?

No. On Sume's Image API, output_format picks the file type, not the price: per-image cards and GPT Image 2.5 token math ignore it. Which models list which.

5 min readSume
All posts

Output format does not change what an image costs on Sume's image API. output_format selects png, jpeg or webp for the file you get back; the price comes from the model, the quality tier, the size and the number of images. A WebP and a PNG of the same request bill the same, so choose the format for file size and downstream tooling, not for cost.

That is a statement about how Sume prices these models, not a general rule about image generation. The two price shapes on the catalog are a flat per-image card and, for the GPT Image family, a token estimate. Neither takes the output format as an input.

Where the price actually comes from

Most catalog rows are flat cards per image. Seedream 5.0 Lite lists at $0.035, Seedream 4.5 at $0.04, FLUX.2 Pro at $0.03, Grok Imagine at $0.02, and each is multiplied by 1.25 for the billed amount. Nano Banana 2.1 and Nano Banana Pro vary by resolution tier. Ideogram 4.5 varies by quality. ChatGPT Image 2.5 and ChatGPT Image 2 are priced from quality and size.

Across those rules the one request field that never appears is the file type. The cost you read back in usage.cost is the billed USD amount, and you can check it against the per-model pricing line from GET /v1/images/models/{id}/endpoints before you spend anything.

What moves the price of one Sume image, read 2026-10-07
Model familyFlat card per imageResolution tierQuality tierSize or ratiooutput_format
Seedream 5.0 Lite, 4.5, 4.0YesNoNoNoNo
FLUX.2 Pro and FlexYesNoNoNoNo
Nano Banana 2.1 and ProBy tierYesNoNoNo
Ideogram 4.5By qualityNoYesNoNo
ChatGPT Image 2.5 and 2Token estimateNoYesYesNo

Which formats each model lists

The catalog descriptor output_format is an enum per model. Most rows list png, jpeg and webp. Higgsfield Soul lists none, because the provider chooses the format and returns PNG. Ideogram 4.5 documents the same: the provider selects the output format and the request does not accept the field. A model that does not list a parameter returns 400 unsupported_parameter; Sume does not silently drop it. The public vocabulary also contains svg, but no v1 model advertises it, so it is rejected per model.

Check the descriptor before you hard-code a value: read supported_parameters.output_format.values from GET /v1/images/models, and fall back to omitting the field if it is absent.

When the format still matters to your bill

Indirectly, yes. A lossless PNG of a 2K image is a much larger file than a WebP, which changes your storage, your egress and the time a client needs to load it. Sume returns data[].url pointing at a Sume-hosted copy, so there is no base64 body to inflate either way. Pick webp or jpeg for thumbnails and web pages, and png when you will edit the image again, because each lossy pass loses detail.

Also note what output_compression does: nothing yet. The field is in the schema, but no model advertises it in v1, so sending it returns a 400. If you need a smaller file, re-encode on your side.

curl -s -X POST https://api.sume.com/v1/images \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"openai/gpt-image-2.5","prompt":"A paper crane on a desk",
       "quality":"low","output_format":"webp"}' | jq '.usage.cost, .data[0].media_type'

Check the price yourself before a batch

Every catalog model has an endpoint record with its billable lines. Read it once, multiply by your image count, and compare with usage.cost on the first real response. The call below reads Seedream 5.0 Lite; swap in any id from the catalog.

The pricing array is a list of {billable, unit, cost_usd} objects, and cost_usd is already the amount Sume charges, margin included, so you pay cost_usd times n. If you ever see a difference between that product and usage.cost, stop the batch and look at the quality, resolution or reference inputs of the request, because those are the fields that legitimately move the number. The file type is not one of them.

Keep in mind that every figure here is a billed price from Sume's catalog on the date in the table caption. Prices and limits can change, so before a large run, read the endpoint record for the exact model id and compare it with your plan. A one-minute check costs nothing, and it is the only way to be sure the number in your budget is the number on the invoice.

curl -s https://api.sume.com/v1/images/models/bytedance-seed/seedream-5-lite/endpoints \
  -H "Authorization: Bearer $SUME_API_KEY" | jq '.endpoints[0].pricing'

Sources

Related posts

More in Developers

All Developers posts

Written by Sume