10 variants of one prompt (n=10): cost on 7 Sume models and the limit

Ten variants of one prompt cost $0.25 on Grok Image, $0.4375 on Seedream 5 Lite, $1.50 on Nano Banana 2.1 at 2K. The schema allows n=10; models may cap lower.

5 min readSume
All posts

Ten variants of one prompt cost $0.25 on Grok Image, $0.4375 on Seedream 5 Lite, $0.75 on Ideogram 4.5 medium and $1.50 on Nano Banana 2.1 at 2K, because Sume bills cost_usd x n. The request schema accepts n from 1 to 10, but each model publishes its own allowed range, so some will accept fewer.

Cost of n=10

Sume's image docs say the endpoint pricing lines already include the Sume margin, and you pay cost_usd x n. These are the catalog rows as of 2026-10-09.

Cost of ten images from one request, Sume rows as of 2026-10-09
Model and tierPer imageArithmeticn=10
Grok Image$0.02510 x $0.025$0.25
Seedream 5 Lite$0.043710 x $0.0437$0.4375
Recraft V4$0.0510 x $0.05$0.50
Ideogram 4.5 medium$0.07510 x $0.075$0.75
Nano Banana 2.1 1K$0.1010 x $0.10$1.00
Nano Banana 2.1 2K$0.1510 x $0.15$1.50
Nano Banana Pro 2K$0.187510 x $0.1875$1.875

The limit differs by model

n is a range descriptor on each model, for example 1 to 4 on the Seedream 4.5 sample in the docs. A request that sets n above the listed maximum gets 400 unsupported_parameter and is not trimmed. If you need ten variants from a model that allows four, send three requests (4, 4, 2) and the per-image cost is the same.

A completed generation is billed in full and a failed one is not billed, so the cost of a batch of ten is the count of images that completed times the row.

Pick the max n in code

This reads one model's descriptor and caps n at its maximum before sending, so the call never fails on the limit.

import os, requests

B = "https://api.sume.com/v1/images"
H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}
MODEL = "bytedance-seed/seedream-4.5"
WANT = 10

meta = requests.get(f"{B}/models/{MODEL}/endpoints", headers=H, timeout=30)
meta.raise_for_status()
ep = meta.json()["endpoints"][0]
n_desc = ep["supported_parameters"].get("n", {})
n = min(WANT, n_desc.get("max", 1))
print("sending n =", n)
r = requests.post(
    B, headers=H, timeout=60,
    json={"model": MODEL, "prompt": "a lighthouse at dusk", "n": n},
)
print(r.status_code)

Budget rules of thumb

A ten-variant run is a good way to test a prompt, but it also multiplies a mistake by ten. Run n=1 first, look at the result, then raise n. On Nano Banana 2.1 at 2K the pilot costs $0.15 and the full ten $1.50, so the pilot is 10% of the spend.

If you keep the best of ten, the effective price of the keeper is the whole batch: $1.50 for one image at 2K on Nano Banana 2.1, against $0.25 on Grok Image. Which one is better value depends on how many variants it takes you on each model to reach an image you accept, a number only your prompts can tell you.

Variants are billed only when they complete, and the response usage.cost shows what the request billed, so log it per request to keep a running total.

Sources

Related posts

More in Pricing

All Pricing posts

Written by Sume