Moving a basic image call from GPT Image 2.5 to 2.6 is a model-ID change. The endpoints are the same, the token rates are the same, and the three recommended sizes are the same. The parts that need attention are Batch, which 2.5 has and 2.6 does not; the Responses image tool, which OpenAI's 2.5 and 2.6 materials describe differently; and the controls — complexity, SVG, GIF, and markup — which are documented for OpenAI's Image API but are not in AIHubMix's published parameter schema yet.
This tutorial walks one representative job through AIHubMix: a 1536x1024 poster with a headline and a product shot. It starts with three cheap Flare drafts, picks one, renders the final with Sunburst, and puts a cost line on every step. The requests below are written from the OpenAI and AIHubMix documentation; no live request was run for this post, so response times and output quality are not measured.
Prerequisites
- An AIHubMix account and an API key in
AIHUBMIX_API_KEY. AIHubMix serves both 2.6 models at the official token rates. - The
POST https://aihubmix.com/ai/v1/images/generationsendpoint. AIHubMix's image generation docs recommend/ai/v1for new integrations; the OpenAI-compatible/v1endpoints may not support the latest models yet. - One of the two model IDs:
gpt-image-2.6-flarefor drafts,gpt-image-2.6-sunburstfor the final. There is no plaingpt-image-2.6alias. - If you call OpenAI directly, the paths are still
v1/images/generationsandv1/images/edits; the model ID is the only change.
The requests
On /ai/v1/images/generations, there is no top-level quality field. It goes inside extra.
Draft: three directions in one call
curl -s https://aihubmix.com/ai/v1/images/generations \
-H "Authorization: Bearer $AIHUBMIX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2.6-flare",
"prompt": "A minimal poster: a single ceramic coffee mug on a pale sand background, soft morning light, large empty space at the top for a headline",
"size": "1024x1024",
"n": 3,
"extra": { "quality": "low" }
}'
n=3 returns three directions from one request. AIHubMix's per-image estimate is $0.006, so this step is $0.018. Output URLs are short-lived — roughly 30 minutes — and need the same Bearer header:
curl -s -H "Authorization: Bearer $AIHUBMIX_API_KEY" "<output-url>" -o draft-1.png
Final: one chosen composition
curl -s https://aihubmix.com/ai/v1/images/generations \
-H "Authorization: Bearer $AIHUBMIX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2.6-sunburst",
"prompt": "A minimal poster: a single ceramic coffee mug on a pale sand background, soft morning light, large empty space at the top for a headline. Refined studio product photography, subtle shadow, no text",
"size": "1536x1024",
"n": 1,
"extra": { "quality": "high" }
}'
AIHubMix's estimate is $0.165 per image, so one final costs about 28 times one draft image, or about nine times the three-draft step.
Migration gotchas
Batch is missing
This is the one feature where 2.5's advantage is unambiguous. GPT Image 2.5's model page lists v1/batch as supported, and Batch prices image output at $15 per million tokens instead of $30. GPT Image 2.6's model page lists Batch as not supported, and the Batch pricing table omits both 2.6 models.
If you run overnight image jobs, do not move them to 2.6. Stay on 2.5, or split the workload: interactive drafts on 2.6, batch renders on 2.5. AIHubMix's image docs list no Batch endpoint, so this decision applies only to direct OpenAI calls.
Responses support needs a smoke test
OpenAI's own materials disagree about 2.5. The September changelog lists the Responses API image generation tool alongside the Image API, but the 2.5 model page marks Responses as not supported. For 2.6 the picture is clearer: the model page marks Responses as not supported, and the November changelog lists only v1/images/generations and v1/images/edits.
If any pipeline reaches 2.5 through Responses, add a smoke test before changing the model ID. A failure there is loud, but only if it is tested; a pipeline that silently falls back to another model is worse than a 400.
Quality and size documents disagree
For 2.5, OpenAI documents five explicit quality levels besides auto: low, medium, high, xhigh, and max. For 2.6, the guide's cost calculator lists the same five for both generations, the API reference attaches xhigh and max to 2.5 snapshots only, and AIHubMix's per-image table — the source of the costs below — prices just low, medium, high, and auto.
The safe set for 2.6 today is low, medium, high, and auto. Custom WIDTHxHEIGHT values are documented for GPT Image 2 and 2.5, while 2.6's guide recommends 1024x1024, 1536x1024, and 1024x1536. Use the three recommended sizes until the 2.6 documentation is consistent.
The new controls are Image API only
The image generation guide puts complexity, markup-guided edits, SVG output, and animated GIF output on the Image API. None of them is available through the Responses image tool, and SVG and GIF are generation-only: neither works on /v1/images/edits.
Each has its own constraint:
- SVG requires
n=1and does not support streaming, partial images,output_compression, orprompt_rewriter. - GIF uses
frame_count(default 9) andframe_duration_ms(default 200), is generation-only, and does not support streaming, partial images, customoutput_compression, orprompt_rewriter. - Markup edits need the original image as the first input image and a separate transparent PNG of the same dimensions. Neither may exceed 16,777,216 pixels, and the markup file is capped at 50 MB. Do not combine
markupwithmaskorprompt_rewriter.
SVG also has a billing rule: you pay the image model's rate for the reference image and the authoring model's rate for the tokens used to produce the SVG. The total depends on both, so the usual per-image estimate does not cover it.
AIHubMix's schema does not expose the new controls
AIHubMix's published schema for 2.6 accepts output_format values of png, jpeg, and webp only. It has no complexity, markup, frame_count, or frame_duration_ms, and no svg or gif output. The schema is available without authentication at the model endpoint schema, and it is the thing to check before relying on any of those features through the gateway.
This is a schema gap, not a measured failure: the features are documented on OpenAI's side, and the gateway may add them later. Until the schema lists them, plan SVG, GIF, and markup work as direct-to-OpenAI calls.
Errors and fixes
| Status | Meaning | What to do |
|---|---|---|
| 400 | Parameter error | Check prompt, size, n |
| 401 | Missing or invalid key | Check Authorization header |
| 402 | Insufficient quota | Add credits |
| 403 | Permission denied | Check account, key, IP rules |
| 429 | Rate limited | Back off and retry |
| 503 | No channel available | Check model ID, retry later |
A 400 often comes from the provider rather than the gateway. AIHubMix's error bodies carry a tid trace id. Keep it for support, and do not retry a 400 unchanged. This is the /ai/v1 contract; the legacy /v1 endpoints report insufficient quota as 403 insufficient_user_quota instead.
The other failure mode is time, not status: output URLs last roughly 30 minutes. Download and store the file yourself, with the Bearer header.
What the run costs
These are per-image output estimates from AIHubMix's table, which exclude input tokens.
| Step | Model | Size | Quality | Images | Estimated output cost |
|---|---|---|---|---|---|
| Drafts | Flare | 1024x1024 | low | 3 | $0.018 |
| Final, high | Sunburst | 1536x1024 | high | 1 | $0.165 |
| Run total, high final | 4 | $0.183 | |||
| Final, medium | Sunburst | 1536x1024 | medium | 1 | $0.041 |
| Run total, medium final | 4 | $0.059 |
The same four images on 2.5 cost the same, because AIHubMix's per-image estimates match. The reason to use 2.6 is the faster draft loop — AIHubMix's model page claims 50% faster for the family, without stating a baseline — and the option to move SVG or GIF work to OpenAI later, not a lower bill. Input text tokens add a fraction of a cent at these prompt lengths; an edit would add image input tokens at $8 per million.
Coming from 1.5
GPT Image 1.5 and 1-mini retire on December 1, 2026, with 2.5 named as the replacement. If you render mostly at 1024x1024 high quality, the move is not cheap: OpenAI's 1.5 table puts high quality at $0.133, and AIHubMix's 2.6 estimate is $0.211, about 59% more. Medium goes from $0.034 to $0.053, and low goes the other way, from $0.009 to $0.006. At 1536x1024, 1.5 high is $0.200, so 2.6's $0.165 is cheaper at that size.
Run the same mix on 2.5 before assuming 2.6: the token rates are identical, so the difference between the two 2.x models is token consumption, not list price.
Migration checklist
- Replace
gpt-image-2.5-sunburstandgpt-image-2.5-flarewith the 2.6 IDs where you want the new model; leave Batch jobs on 2.5. - Confirm whether any pipeline uses the Responses image tool; 2.6 documents the Image API only.
- Keep quality to
low,medium,high, orautoand sizes to the three recommended values until the 2.6 docs settle. - On AIHubMix's
/ai/v1, put quality inextra; for 2.6, use/ai/v1, the path AIHubMix recommends for new integrations. - Download output URLs within 30 minutes, with the Bearer header.
- Do not assume
complexity, markup, SVG, or GIF work through AIHubMix until the schema lists them. - If you are on 1.5, budget for the December 1 retirement and re-check the high-quality cost.
What this post could not verify
- No live request was run, so response times, output quality, and actual error bodies are not measured here.
- The 50% speed claim comes from AIHubMix's model page, with no baseline stated.
- The gateway gap is documented behavior in the published schema, not a failure observed in a request.
- The Responses disagreement is a conflict in OpenAI's materials; a smoke test is the practical check before changing the model ID.
Keep reading: the GPT Image 2.6 series
- The comparison post puts the price tables, the speed claim, and the cases where 2.5 still wins in one place; read it before deciding whether the model change is worth it. GPT Image 2.6 vs 2.5: what changed, and what it costs
Top comments (0)