GPT Image 2.5
gpt-image-2.5Illustrations, maps, and posters with captions, thirteen aspect ratios, at 1K.



- Price from
- $0.025
- Resolutions
- 1K
- Average time
- 35 s
- Success rate over 7 days
- 99 %
- Updated
Couldn’t load the 7-day stats.
01Playground
Try GPT Image 2.5
Prompt, reference images, aspect ratio, and resolution, all without code. The code of the same request is one button away.
02Pricing
GPT Image 2.5 pricing
The official OpenAI price and ours. No subscription: you pay from your balance only for successful images.
| Resolution | Official OpenAI price | Rendergrid | Savings | For $10 |
|---|---|---|---|---|
| 1K | $0.052681 | $0.025 | 52% | 400 images |
- 1OpenAI: high quality; square: 1K 1024x1024
At OpenAI’s official price: $526.80, savings of $276.80
From $1,000 per month—send a request and we’ll work out custom terms.
03Examples
Made with GPT Image 2.5
Six images from this model, with their prompts. “Open in the playground” fills the prompt and parameters into the form.

A map of a fictional kingdom in the style of an old parchment: mountains, rivers, forests, castles, a compass rose and eight large, clearly legible place-name labels in English

A retro poster of a space mission to Saturn in the style of 1960s screen printing, with the inscription "MISSION SATURN", a limited palette of three colors

Retro poster for a jazz night at the club “Blue Note”: a saxophonist’s silhouette, a large headline “Blue Note”, the date November 21, two colors, and paper texture

Cover of an adventure novel “Salt and Stars”: a sailboat on a dark sea under a starry sky, a large title at the top, the author’s name Anna Beregovaya at the bottom, expressive typography

Advertising poster for a lemonade of a fictional brand called “Sunny Yard”: a frosted glass bottle with lemon slices and mint on a wooden table by the window, warm summer light. Large lettering at the top: “SUNNY YARD”, below it: “Lemonade made with real lemons”, at the bottom in small print: “0.5 L”. Clean typography, no other text, and no logos of real brands.

Flat-style infographic on a light background: the headline “How a solar panel works” and four steps from left to right, each with an icon and a short caption: “1. Light hits the panel”, “2. The cells generate current”, “3. The inverter converts the current”, “4. Power goes to the house”. An even grid, a single palette, large readable text.
04API
One request, one image
POST /images/ responds with 202 and an ID. Get the result by polling GET /creations/ or with a webhook.
| Parameter | Type | What to pass |
|---|---|---|
modelrequired | string | gpt-image-2.5 |
promptrequired | string | What to draw: subject, style, lighting, text in the image. Up to 20,000 characters. |
resolution | string | 1K is the only resolution; 2K and 4K get a 400 response before any charge. |
aspect_ratio | string | 1:1 16:9 9:16 4:3 3:4 2:3 3:2 5:4 4:5 21:9 9:21 7:5 5:7 |
image_file_ids | string[] | Up to 14 file IDs from POST /uploads, as reference images: PNG, JPEG, or WebP. For a text-only request, leave the field out. |
image_urls | string[] | Instead of files: from 1 to 14 public links to images. Don’t mix them with image_file_ids. |
webhook_url | string | An address for the event about completion or an error, instead of polling. |
X-Idempotency-Keyheader | string | Repeating a request with the same key won’t create a second request or a second charge. |
Pass an address in the webhook_url field and we’ll send a creation.completed or creation.failed event. Verify the signature with the secret from the portal, in the “Webhooks” section; the delivery log and a test send are there too.
curl https://api.rendergrid.io/ api/ public/ v1/ images/ generate \ -H "Authorization: Bearer $RENDERGRID_API_KEY" \ -H "Content-Type: application/json" \ -H "X-Idempotency-Key: 7b3e0c2a-0001" \ -d '{ "model": "gpt-image-2.5", "prompt": "A map of a fictional kingdom in the style of an old parchment: mountains, rivers, forests, castles, a compass rose and eight large, clearly legible place-name labels in English", "resolution": "1K", "aspect_ratio": "3:2" }' # then the status and links to the result curl https:// api.rendergrid.io/ api/ public/ v1/ creations/ 8f2c41a9-1710-4917-ae39-f3374ea1952c \ -H "Authorization: Bearer $RENDERGRID_API_KEY"
import os, time, requests API = "https://api.rendergrid.io/ api/ public/ v1" headers = {"Authorization": f"Bearer {os.environ['RENDERGRID_API_KEY']}"} job = requests.post(f"{API}/images/generate", headers=headers, json={ "model": "gpt-image-2.5", "prompt": "A map of a fictional kingdom in the style of an old parchment: mountains, rivers, forests, castles, a compass rose and eight large, clearly legible place-name labels in English", "resolution": "1K", "aspect_ratio": "3:2", }).json() # 202: {"id": "…", "status": "queued", "task_id": "…", "cost": 0.025} while True: c = requests.get(f"{API}/creations/{job['id']}", headers=headers).json() if c["status"] in ("completed", "failed"): break time.sleep(5) print(c.get("result_urls"))
const API = "https://api.rendergrid.io/ api/ public/ v1"; const headers = { Authorization: `Bearer ${process.env.RENDERGRID_API_KEY}`, "Content-Type": "application/json", }; const job = await fetch(`${API}/images/generate`, { method: "POST", headers, body: JSON.stringify({ model: "gpt-image-2.5", prompt: "A map of a fictional kingdom in the style of an old parchment: mountains, rivers, forests, castles, a compass rose and eight large, clearly legible place-name labels in English", resolution: "1K", aspect_ratio: "3:2", }), }).then((r) => r.json()); // 202: {"id": "…", "status": "queued", "task_id": "…", "cost": 0.025} let c; do { await new Promise((r) => setTimeout(r, 5000)); c = await fetch(`${API}/creations/${job.id}`, { headers }).then((r) => r.json()); } while (c.status === "queued" || c.status === "processing"); console.log(c.result_urls);
{
"id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"status": "queued",
"task_id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"cost": 0.025
}{
"id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"status": "completed",
"result_urls": [
"https:// …"
]
}{
"id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"status": "failed",
"error": "The image or prompt was rejected by the safety filter. Try a different image or rephrase the prompt.",
"failure": {
"type": "declined",
"code": "content_policy",
"retryable": false
}
}{
"error": {
"code": "ERR_INSUFFICIENT_BALANCE",
"message": "insufficient api wallet balance",
"details": { "required": 0.025, "available": 0.0 }
}
}05Description
What GPT Image 2.5 can do
An OpenAI model for generating and editing images at 1K: thirteen aspect ratios, including 9:21, 7:5, and 5:7. It suits illustrations, maps, posters, and event announcements with labels.

A kingdom map with large labels
Mountains, rivers, castles, a compass rose, and place names. Ask for “large, clear labels” to make them easier to read. The same trick works for plans and diagrams.
gpt-image-2.5 · 1K · 3:2 · $0.025

A retro poster with lettering and a limited palette
Name the printing technique and the number of colors (“1960s screen printing, three colors”) and put the lettering in quotes: “MISSION SATURN”.
gpt-image-2.5 · 1K · 2:3 · $0.025

A book cover with a title and the author’s name
A large title, the author’s name, and the scene in one frame. The 2:3 aspect ratio suits a book cover.
gpt-image-2.5 · 1K · 2:3 · $0.025
Specifications and what to keep in mind
- Maker
- OpenAI
- ID
gpt-image-2.5- Resolutions
- 1K
- If omitted
- 1K · aspect ratio 1:1
- Reference images
- up to 14 · PNG, JPEG, WebP · up to 25 MiB
- Average time
- 35 s
- 1K only. A 2K or 4K request gets a 400 response before any charge; no money is taken for it. For these resolutions there are GPT Image 2 HD, GPT Image 2.5 Sunburst, or GPT Image 2.5 Flare.
- Thirteen aspect ratios: ten standard ones and
9:21,7:5, and5:7; there is noautomode. - One request, one image. For a series, send several requests.
- A prompt is required, including with reference images, and can be at most 20,000 characters long.
- Reference images larger than 7 MiB or 4,096 pixels on the longer side may be downscaled or re-encoded; keep your originals.
- Masks are not supported: to change an image, pass it as a reference image and describe the edit in the prompt.
- Resolutions are size tiers, not pixels: the
widthandheightparameters are not accepted. - The result is stored for one day, so download the file to your own storage. A file ID is valid 24 hours after its upload. The stored file is deleted 48 hours after its last upload.
- The model may decline a prompt or a reference image: the request ends as
failed, and the money is returned.
Who it’s for
Covers, maps, and illustrations for books and games.
Posters, event announcements, and ad layouts with lettering.
Infographics, product cards, and flat illustrations.
World maps, posters, and promo graphics.
How to write prompts
Five rules that most often improve the result.
- Story first, then details. What is in the frame, where, the style, and the lighting; the technique goes last.
- Labels: large and short. Ask for “large, clear labels” and put the names in quotes.
- Not only the standard aspect ratios. The
9:21,7:5, and5:7aspect ratios exist only in GPT Image 2.5. - Use reference images for edits. Upload up to 14 files and say what to keep and what to change; masks are not supported.
- There is one resolution. GPT Image 2.5 draws at 1K for $0.025. For 2K and 4K, choose GPT Image 2 HD, GPT Image 2.5 Sunburst, or GPT Image 2.5 Flare.
Comparison with neighboring models
| Model | Strength | Resolutions | Price from | Average time |
|---|---|---|---|---|
| GPT Image 2.5this model | Illustrations, maps, and posters with captions; thirteen aspect ratios | 1K | from $0.025 | average 35 s |
| GPT Image 2 | Illustrations, comics, and stickers | 1K | from $0.02 | average 43 s |
06FAQ
Questions about GPT Image 2.5
How much does one image from GPT Image 2.5 cost?
How much cheaper is this than OpenAI’s official price?
What happens if a generation fails?
Which resolutions and aspect ratios are supported?
auto mode: if you don’t specify an aspect ratio, it is 1:1.How long does an image take?
GET /creations/ {id} or pass webhook_url. Poll no more than once every 5 seconds.Can I upload my own images?
POST /uploads and pass them in image_file_ids (up to 14), or send links in image_urls. PNG, JPEG, and WebP work, up to 25 MiB each. A file ID is valid 24 hours after its upload. The stored file is deleted 48 hours after its last upload.Which aspect ratios does only GPT Image 2.5 have?
9:21, 7:5, and 5:7. No other Rendergrid model has these aspect ratios.Why only 1K?
How do I get the result?
202 response contains an ID. With it, GET /creations/ {id} returns the status and result_urls; instead of polling, pass webhook_url and we’ll send an event when the image is ready. Result files are stored for one day.How do I pay?
Do you offer terms for high volumes?
07Similar
Similar models

GPT Image 2
gpt-image-2Illustrations, comics and stickers at 1K
Currently unavailable: generation is disabled; the price stays the same.

Nano Banana Pro
nano-banana-proComplex scenes, text in images and product shots — up to 4K
Currently unavailable: generation is disabled; the price stays the same.
08Articles
Articles about GPT Image 2.5

Nano Banana Pro vs GPT Image 2.5: a test on identical prompts
A poster, an infographic, and a product card on Nano Banana Pro and GPT Image 2.5: one prompt, one attempt each; prices, average waits where measured, and code.

The best image generation APIs: 10 models in one table
Ten Nano Banana and GPT Image models in one table: resolutions, price per image, the task each model suits, and its average wait where measured.

GPT Image 2.5 API price per image
Rendergrid’s price per image for GPT Image 2.5, GPT Image 2.5 Sunburst, and GPT Image 2.5 Flare, why OpenAI quotes tokens, and how to plan a budget.

High volumes
High volumes? Leave your contact and we’ll work out custom terms
A per-image price for your volume, limits for your traffic and a direct line on Telegram.
High-volume terms