Skip to main content
GPT Image 2.5, OpenAI’s current image model, has two variants: Flare for fast, high-quality generation and Sunburst for precise editing. LaoZhang API serves them on three routes; pick one below before you copy a request.

Choose a route

  • Official forwarding uses a token in Sora2Official or GPTImage2 Sora2 Enterprise with the Usage first or Usage-based billing mode, at the same token rates as official-forward gpt-image-2; see Official-forward billing.
  • The VIP and web routes use a token with the Usage first or Per-call billing mode; the console shows the name of the other image group.
  • The token’s group and billing mode decide how a request is routed and billed, and the model field alone can’t change that. All three routes use /v1/images/generations and /v1/images/edits. For existing GPT Image 2 integrations, see the GPT Image 2 guide.

Price and capabilities at a glance

Public pricing as of September 24, 2026, verified on October 14, 2026; see the model and pricing catalog. On the VIP and web routes, size and all five quality tiers cost the same, and editing costs the same as generation. The model comes from OpenAI’s official channel: official forwarding bills at OpenAI’s token rates, and the per-call routes charge one fixed price, which is lower than token billing at high resolutions and quality tiers.

Cost per image by quality

Both routes serve the same model, so a request uses the same number of tokens on either; only the billing differs. The token counts below come from the generation request on this page at 1024×1024, measured on LaoZhang API on September 9 and October 14, 2026:
  • Official-forward cost = image output tokens × $30 per 1M in Sora2Official; text and reference-image input tokens are extra, and GPTImage2 Sora2 Enterprise adds 20%.
  • The VIP price is the same at every size and quality, with or without reference images, for generation and edits.
  • From high upward, the VIP route costs less per image.
A white ceramic mug on a gray desk in soft natural light, generated by GPT Image 2.5 Flare VIP

VIP generate example: Flare VIP, 2048×2048, medium

The same mug edited by GPT Image 2.5 Sunburst VIP, now dark blue with the composition and lighting unchanged

VIP edit example: Sunburst VIP changes only the mug body to dark blue

Official-forward models and groups

Use the undated alias for most integrations, or the dated ID to pin a snapshot. The alias may point to a newer snapshot in the future.
  1. In token management, create a token with the Usage first (按量优先, recommended) or Usage-based (按量计费) billing mode and confirm that it allows your target model.
  2. Put the token in an official-forward group. The group is part of the token, never part of the request.
    • Sora2Official is billed at OpenAI’s official price and uses a mix of Azure OpenAI and OpenAI keys.
    • GPTImage2 Sora2 Enterprise uses OpenAI keys only, costs the official price plus 20%, and suits production traffic where route stability is the priority.
  3. Keep your existing official-forward Images API code, including authentication and result handling. Change only model to an alias or snapshot from the table.

Generate and edit with official forwarding

Generation uses POST /v1/images/generations and editing uses POST /v1/images/edits; in the OpenAI SDK, these are images.generate and images.edit. Set your official-forward group key and the base URL first:

Generate with Flare

Edit with Sunburst

Put a local source.png in the current directory, then run:
Both variants accept text and image input: Flare can also edit, and Sunburst can also generate. Official-forward requests use OpenAI’s parameters, described in the OpenAI image generation guide. Keep them separate from the per-call options later on this page.

Save and check the image

Save this script as save_images.py. It writes every image in a response to disk, whether the response contains b64_json or url:
save_images.py
Open the saved file and check that it has the requested dimensions. For an edit, check both the requested change and the details that should stay the same. Then review the model, group, usage, and charge in call logs. For an authentication or model-access error, check the key, its group, and the model ID first. Correct invalid parameters based on the error message. If the response has no image, keep the sanitized error and the request time, check the Images API reference, and contact support without sharing your full key.

Official-forward billing

gpt-image-2.5-flare and gpt-image-2.5-sunburst are usage-billed for actual text input, image input, and image output, at the same token rates as official-forward gpt-image-2. In the Sora2Official group they cost: These rates match OpenAI’s published token prices. The GPTImage2 Sora2 Enterprise group adds 20% (a 1.2 group multiplier), so image output there costs $36 per 1M tokens. Current prices are in the model and pricing catalog and the console; contact support for enterprise quotes. The same token rates don’t mean the same cost per image: size, quality, and reference images change usage, so estimate costs from representative requests.

Per-call VIP models

The two VIP models use the same integration and per-call billing as gpt-image-2-vip. Use a default-group token with the Usage first (按量优先, recommended) or Per-call (按次计费) billing mode. Keep the -vip suffix: the unsuffixed IDs are the token-billed official-forward models, which the default group doesn’t serve. The options in this section apply to the two -vip models only. Don’t assume they work with gpt-image-2.5-web. The two -vip models were unavailable from September 16 to September 22, 2026, and are available again; see the recovery notice.

Size and quality

Both VIP models accept size and quality for generation. Omit either field when you don’t need to choose a value. Both models support the standard 1K, 2K, and 4K sizes in square, landscape, and portrait formats. They also accept any custom size, such as 1440x960, 1536x864, or 2048x1152, that meets all of these conditions:
  • Width and height are both multiples of 16.
  • Neither edge exceeds 3840 pixels.
  • The longer edge is at most 3 times the shorter edge, so the aspect ratio is between 1:3 and 3:1.
  • Total pixels (width × height) are between 655,360 and 8,294,400.
The OpenAI image generation guide describes the same size syntax and limits. A workspace dropdown may list only common presets, but direct API requests can use any valid custom size. Common examples:
Start with size="2048x2048" and quality="medium". Quality changes detail and latency; the price stays per call.
Single 1024×1024 requests measured on September 9 and October 14, 2026 took about 20–70 s at medium, 23–49 s at high, 46–77 s at xhigh, and 73–156 s at max, with Sunburst slower than Flare at the same tier. Set the client timeout to at least 300 seconds and don’t retry before checking call logs. Nonstandard sizes may be adjusted: for example, 1023x1024 can return 1024x1024. If exact pixels matter, use a size that meets the conditions above and check the dimensions of the returned image.

Generate with a VIP model

An existing gpt-image-2-vip integration can keep its base URL, authentication, endpoint, and result handling; change only model. This request generates a 2K square image, and the examples in this section save results with the script from Save and check the image:

Edit with a VIP model

Editing uses /v1/images/edits with the same multipart format as gpt-image-2-vip. Upload a local source.png and describe the change:

Transparent PNG output

Both VIP models can generate an image with a transparent background and remove the background from an uploaded image while keeping its subject. Set these two fields, as JSON for generation or as multipart form fields for editing:

Generate an image with a transparent background

Remove the background from an uploaded image

Upload a local source.png and describe the subject to keep:
Either VIP model works in both examples. The saved PNG keeps its alpha channel, so you can place the subject on another background. Don’t convert it to JPEG, which removes transparency. These examples and our checks use 1024×1024; at other sizes, confirm the alpha channel on a few outputs before relying on it.
Transparent backgrounds and region-limited editing with mask are separate features. The two VIP models don’t support mask. To remove a background, use background="transparent" with a prompt that describes the subject to keep, as shown above.

Web route: gpt-image-2.5-web

gpt-image-2.5-web is the web route for GPT Image 2.5:
  • It is billed per call.
  • It supports generation (/v1/images/generations) and editing (/v1/images/edits), and accepts size.
  • It can’t select Flare or Sunburst. To use a specific variant, call its official-forward or -vip model ID instead.
Its supported parameters depend on the console configuration and actual results, so check your token’s permissions and the returned image before relying on it.
gpt-image-2.5-web and gpt-image-2-web are different routes. gpt-image-2-web is a historical web-route ID used by existing integrations; don’t assume the two share routing or parameters.

Frequently asked questions

Can I call GPT Image 2.5 without an OpenAI account?

Yes. You need only a LaoZhang API key, not an OpenAI account. All three routes use the OpenAI-compatible Images endpoints, so existing OpenAI SDK code needs only a new base_url and key.

Do Flare and Sunburst cost the same? Which should I use?

Yes. The two official-forward models share one set of token rates (see Official-forward billing), and the two -vip models have the same per-call price, so pick by results: Flare for fast everyday generation, Sunburst for edits where preserving detail from the source image matters most. Both can generate and edit, and you can offer both to your users. The same prompt at max on October 14, 2026 used 7,024 output tokens on both models; Flare returned in 73 s and Sunburst in 156 s:
White ceramic mug on a gray desk beside a plant and a notebook, generated by GPT Image 2.5 Flare VIP at max quality

Flare VIP, 1024×1024, max: 73 s

White ceramic mug on a gray desk by a window with a laptop and books, generated by GPT Image 2.5 Sunburst VIP at max quality

Sunburst VIP, 1024×1024, max: 156 s

Which is cheaper per image, VIP or official forwarding?

It depends on the quality tier; see Cost per image by quality. At 1024×1024, official forwarding costs less at low and medium, and VIP costs less from high upward, where a token-billed image already exceeds $0.05. VIP also keeps the price at $0.03 for 2K and 4K output and for edits with reference images.

Does editing or a reference image cost extra?

Not on the VIP route: an edit with one or several image[] references is one $0.03 call. On official forwarding, each reference image is billed as image input tokens at $8 per 1M on top of the output tokens, so edits cost more than generation at the same quality.

Can I keep my gpt-image-2 quality settings on 2.5?

The values low, medium, and high still work, but the same setting can use a different number of output tokens on GPT Image 2 and 2.5. According to OpenAI, both models share the same price per image output token, while their token counts for the same quality setting can differ. After switching, rerun your own prompts on the official-forward route and compare cost and latency using usage in the response or your call logs. GPT Image 2.5 also adds xhigh and max; GPT Image 2 stops at high. The VIP models bill per call, so all five tiers cost the same and only change detail and latency.

What does an official-forward image cost, and why does it vary?

There is no fixed price per image: you pay for the tokens actually used, at the rates in Official-forward billing. When identical requests cost different amounts, the usual cause is a missing quality or quality="auto". The model then chooses a tier based on the image it generates, so two identical requests can land on different tiers and produce different output token counts. For a predictable budget, set size and quality explicitly and estimate the cost per image from usage in a few representative requests. Your call logs show what each request was actually charged.

Am I charged when a request fails or times out?

Requests that return a non-200 status are not charged, including invalid parameters, moderation blocks, authentication failures, and rate limits. Once a request generates and returns an image, the official-forward route charges for the actual tokens, and the -vip and web models charge per call. A client timeout or disconnect doesn’t cancel generation on the server, and a finished image is still charged. Higher resolutions and quality tiers take longer, so set a generous client timeout. After a timeout, check the earlier request in your call logs before retrying so you don’t generate and pay twice. Your call logs show the actual charge.

Can I get a URL instead of Base64? Why does response_format fail?

The official-forward route follows OpenAI’s rules: GPT Image models always return Base64 image data and don’t support response_format, a DALL·E-era parameter. Sending it can return an invalid-parameter error, so remove it. If you need a link, decode b64_json and upload the file to your own storage. On the per-call (-vip) models, response_format chooses the output:
  • b64_json: Base64 image data only, in data[0].b64_json.
  • url: an image link. Links expire, so download the image right away and copy it to your own storage.
  • Omitted: usually Base64, occasionally a link. If your code reads only b64_json, send response_format: "b64_json" explicitly.
The save_images.py script on this page saves either field; see Save and check the image.

Can I edit with several reference images or a mask?

Yes, on the official-forward route, which follows OpenAI’s rules:
  • Send up to 16 reference images by repeating the image[] field in the multipart request. They are billed as image input tokens, so more references cost more.
  • A mask applies to the first image only. It must match that image’s format and size and include an alpha channel. Use a PNG mask under 4 MB; the source image must be under 50 MB.
  • The model treats the mask as guidance and may not follow its exact edges, so check the results with a few requests before you rely on it.
The two -vip models accept several reference images in one request through repeated image[] fields, but they don’t support mask: they don’t reliably limit the edit to the masked area. To remove a background, use the settings in Transparent PNG output.

Can I pass an image URL to the edit endpoint?

No. /v1/images/edits accepts image files uploaded as multipart form data. Sending image_url in a JSON body, or putting a URL in a form field, returns an error. If the image lives on a CDN, download it first and upload the file:
  • Keep the whole request under 20 MB. Downscale large photos or convert them to JPEG before you upload them; bigger files take longer to upload and process.
  • Multipart sends the file’s raw bytes, about a quarter smaller than the same image in Base64.

Sources