AI image API: the three models, what they cost, and how to call one
Three image models behind one endpoint and one billing unit, so the comparison below is exact rather than approximate.
| Model | Credits per image | Batch | Resolution |
|---|---|---|---|
| Flux | 5 | up to 4 | 480p, 720p, 1080p |
| Nano Banana | 4 | up to 4 | 480p, 720p, 1080p |
| Ideogram | 6 | up to 4 | 480p, 720p, 1080p |
The request
curl -X POST https://genace.ai/api/v1/images/generations \
-H "Authorization: Bearer $GENACE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"nano-banana","prompt":"a red ceramic mug on a white table"}'
Omit model and you get nano-banana — the cheapest option, on the
principle that an unspecified model should not be the expensive one.
Switching models is one string. Same endpoint, same auth, same job semantics.
It returns a job, not an image
202 Accepted with a job_id. Image renders are quick, but the shape is the
same as video: submit, then collect. A wait parameter on the job endpoint
covers the simple case —
webhook vs polling covers the rest.
Batching does not save money
n up to 4 multiplies cost linearly. What it buys is
concurrency slots, which matters on the free tier where the ceiling is one
in-flight job. See
image generation API batch requests.
What each one is for
Price alone will not pick for you. The three differ most in what they are positioned for — full breakdown in AI image generation API pricing compared.
Models covered on this page
Where these facts come from
- codebase: src/ai/providers/*.ts — every pricing() and paramsSchema
- codebase: src/ai/api/quota.ts — per-tier ceilings