Nano Banana 2.1 vs GPT Image 2.5: which should you try for posters?
Compare Nano Banana 2.1 with GPT Image 2.5 Flare and Sunburst for poster creation and edits: nine real outputs, timings, cost estimates and API differences.
For the short English poster we tested, Nano Banana 2.1, GPT Image 2.5 Flare and Sunburst all generated the requested wording and completed two successive edits. The useful differences were style, unintended changes, request structure and estimated cost. Nano produced a flatter illustration but added an unrequested paper edge and shadow. Both GPT versions produced more detailed, painterly apples; neither made every unrequested detail immutable through editing.
If you need a simple illustrated poster, Nano’s result is a useful starting point, provided you inspect the frame. If you prefer the more detailed fruit and ceramic texture shown below, try Flare first for this brief: its chain finished sooner than Sunburst’s in this single run, with the same reported GPT token counts. We did not find a decisive Sunburst advantage on this task. That is a recommendation for this brief and these settings, not a ranking across image work.
Tested October 13, 2026. Ofox publishes this comparison and supplied the API gateway used for the tests. This article was AI-assisted and independently reviewed by AI, not by a human review panel. The nine images below are actual API outputs. There was one three-step chain per model, no repeated trials, no seed control and no selection of a best result from several attempts. Nano’s chain is reused from our earlier same-day test; the six GPT requests were run afterward. These were API tests, not authenticated Agent or Playground generation tests.
Which models and settings are being compared?
“Image 2.5” here means OpenAI GPT Image 2.5, including both Flare and Sunburst. It does not mean Microsoft’s MAI Image 2.5. The family name is not the exact ID used in a request.
| Model | Exact Ofox model ID | Route and settings actually tested |
|---|---|---|
| Nano Banana 2.1 | google/gemini-nano-banana-2.1 | Native Gemini generateContent; imageSize="1K", aspectRatio="1:1"; no explicit thinking setting |
| GPT Image 2.5 Flare | openai/gpt-image-2.5-flare | Images generation, then two edits; size="1024x1024", quality="medium", n=1 |
| GPT Image 2.5 Sunburst | openai/gpt-image-2.5-sunburst | The same GPT settings and operation sequence as Flare |
All nine returned files are 1024 × 1024 PNGs. Equal dimensions and identical instructions do not establish equal quality settings or equal computation. GPT’s medium image quality is not a counterpart to Google’s thinking setting.
The edit context also differs. Nano received the complete growing Gemini conversation, including earlier model responses. Each GPT edit received the previous PNG and the current instruction, without the entire earlier conversation. Consequently, the input-token counts reflect different histories, protocols and tokenizers. They are useful for estimating these requests, not for declaring one model intrinsically more efficient.
The current Ofox catalog lists all three models. See the public Nano Banana 2.1, Flare and Sunburst pages for the model IDs and access entry points.

This is a screenshot of the public model page, not a signed-in generation result or a billing record. Its pricing must be interpreted by category; an overall discount badge does not establish a discount on every component.
One brief, three steps, nine original results
Our acceptance criteria were concrete: exact headline and schedule, three red apples, the requested bowl color, no extra wording or logo, and preservation of the existing composition during edits. A strict pixel-preservation requirement would need an additional check; visually similar is not pixel-identical.
These are the exact instructions, in order. The English words are intentionally unchanged in every language edition of this article: multilingual image text was not tested.
1. Create a square minimalist event poster on warm cream paper. Large exact headline: ORCHARD MARKET. Smaller exact line: SATURDAY 10 AM. Draw three red apples in a blue ceramic bowl below the text. No other text, no logos, no border.
2. Change only the headline from ORCHARD MARKET to ORCHARD FAIR. Keep SATURDAY 10 AM exactly unchanged. Preserve the three red apples, blue bowl, cream background, composition and all other pixels as closely as possible.
3. Now change only the bowl from blue to dark green. Preserve ORCHARD FAIR, SATURDAY 10 AM, the three red apples and the layout.
Step 1: generate the poster

Nano Banana 2.1: the wording and object count are correct, with relatively simple shapes and a single-line headline. However, it presents the poster as a sheet of paper with an outer margin and shadow. That does not fully honor the no-border intent. A social graphic needing a full-bleed background would need adjustment rather than being accepted automatically.

Flare: correct wording and three apples, with a red two-line headline. The cream background fills the canvas rather than becoming a photographed paper sheet. Fruit highlights and ceramic markings are more detailed than Nano’s in this sample; whether that is preferable depends on the intended visual style.

Sunburst: correct wording and count, a dark blue two-line headline and another detailed painted treatment. The apple arrangement differs from Flare’s. The prompt did not specify the exact arrangement or headline color, so those differences are creative choices, not errors.
Step 2: replace MARKET with FAIR



All three changed the requested word and kept SATURDAY 10 AM, the three apples and a blue bowl. Nano kept a single-line title; both GPT models kept two lines. The broad layouts remain recognizable. These are regenerated images, however, and we do not claim all pixels outside the text were preserved. For an approved brand asset, inspect the fruit, bowl contour, paper texture and letter placement against the previous file before accepting the edit.
Step 3: change only the bowl to dark green



All three changed the bowl to green and retained the required words and object count. Nano’s simpler illustration remains relatively consistent by visual inspection. In Flare’s result, the apples have more visible mottling; Sunburst also changes the painted texture on the fruit. Those are changes outside the requested bowl. They matter if the prior fruit rendering was already approved, even though the poster still satisfies the basic text-and-color brief.
This gives two different acceptance outcomes. For “correct words, three apples and a green bowl,” all final images meet the visible criteria. For “change absolutely nothing outside the bowl,” this test does not certify any model. No masks were supplied; mask-guided editing would be a separate test. None of these outputs establishes logo fidelity, product packaging accuracy, human identity preservation or performance on longer text.
How long did these requests take?
| Model | Initial generation | Headline edit | Bowl edit | Sum of three client request durations |
|---|---|---|---|---|
| Nano Banana 2.1 | 15.46 s | 17.48 s | 18.44 s | 51.38 s |
| GPT Image 2.5 Flare | 16.15 s | 25.94 s | 24.55 s | 66.64 s |
| GPT Image 2.5 Sunburst | 35.71 s | 47.61 s | 24.68 s | 108.00 s |
These are client-observed request durations, including network and service time, not pure model inference times or a controlled latency benchmark. Nano ran earlier; the GPT models ran sequentially later. There is only one observation per cell. Do not infer a stable speed ratio, throughput or percentile latency from this table. Sunburst’s last edit was close to Flare’s even though its first two requests took longer.
All nine calls returned HTTP 200 and an image, with no retries. That describes this run; it is not a reliability estimate. For production throughput, run repeated trials under your actual concurrency and count timeouts and unsuccessful attempts as well as successful responses.
Compare cost by usage category, not by model name
We checked the current Ofox public catalog on October 13 and traced its field definitions through the catalog implementation in the GitHub repositories. The implementation reads dynamic data; Git does not contain a permanent static price list, and a source commit alone does not prove the deployed version. The reproduction kit includes the dated public snapshot. The following rates are USD per million tokens, not dollars per image.
| Billing component | Nano 2.1 listed rate | Flare / Sunburst listed rate | Flare / Sunburst main-provider quote |
|---|---|---|---|
| Input, including image input under Nano’s input rate | $1.50 | Text: $5; image: $8 | Text: $4; image: $8 |
| Image output | $30 | $30 | $24 |
| Text output | $7.50 | $30; no separate text output reported in these GPT responses | $24; no separate text output reported in these GPT responses |
| Cached text input | Not listed in this snapshot | $1.25 | $1 |
| Cached image input | Not listed in this snapshot | $2 | $2 |
For both GPT models, the snapshot’s provider_price identifies an OpenAI main-provider override. Its text-input and image-output rates are 20% below the list, but image-input rates are unchanged. The quote does not prove which provider fulfilled our unpinned requests, and we have not reconciled these new requests to account charges. Nano’s provider_price is null: that means no quote was supplied there, not a zero price or a confirmed discount.
The two GPT chains reported identical token quantities
| Step, for each GPT model | Text input | Image input reported | Image output | Estimate at list rates | Conditional main-provider estimate |
|---|---|---|---|---|---|
| Generate | 59 | Not separately reported; no image submitted | 439 | $0.013465 | $0.010772 |
| Change title | 62 | 1,024 | 439 | $0.021672 | $0.018976 |
| Change bowl | 47 | 1,024 | 439 | $0.021597 | $0.018916 |
| Three-step chain | 168 | 2,048 across the two edits | 1,317 | $0.056734 | $0.048664 |
The generation response reports an input total of 59, all attributed to text, and the request contains no image. We do not turn a missing image-input field into an independently measured zero. The estimates use the reported categories, assume uncached input, and exclude any other charges. The response did not provide a cache breakdown, so no cache discount is assumed.
For example, the headline edit at list rates is (62 × $5 + 1,024 × $8 + 439 × $30) / 1,000,000 = $0.021672. Using the quoted provider rates changes only the text and output terms: (62 × $4 + 1,024 × $8 + 439 × $24) / 1,000,000 = $0.018976. These are calculations from returned usage, not observed charges or invoices. The lower number is conditional on that quote applying.
Nano’s image-output component was higher in this particular sample
Nano returned 1,120 image-output tokens for each of its three images. At $30 per million, that component is $0.0336 per image, or $0.1008 across three outputs. The corresponding GPT component at list rates is 439 × $30 / 1,000,000 = $0.01317 per output. Equal per-token rates therefore did not produce equal output-component estimates. It does not follow that every GPT image costs less: different quality, dimensions, edits and accepted-result rates can change the result.
Nano’s reported input totals were 54, 1,167 and 2,272; the growing history explains why later requests include more context. The first response additionally reported 80 TEXT tokens and 639 thinking tokens; the second reported 358 thinking tokens, and the third did not report that category. The 80 TEXT tokens did not correspond to a visible text part in the saved response. Missing categories are not proof of zero use.
For the first Nano request, the image component plus input and reported TEXT gives $0.0336 + 54 × $1.50 / 1,000,000 + 80 × $7.50 / 1,000,000 = $0.034281. If the 639 thinking tokens are separately billed at $7.50 per million, the illustrative sum is $0.0390735. That billing assumption has not been reconciled to an invoice. We therefore do not present a definitive Nano three-step total or a whole-bill savings percentage. The Nano pricing guide explains these boundaries; the GPT Image 2.5 pricing guide includes separate historical examples that must not be mistaken for this run’s charges.
Workflow differences that can decide the choice
| Requirement | What is supported by the evidence here | What still needs a separate check |
|---|---|---|
| Short English poster with two edits | All three completed the visible wording and color changes; inspect the different styles and unintended changes above | Longer copy, other languages, real brand assets and repeated acceptance rates |
| Existing Gemini conversation code | Nano’s tested route accepts the growing contents history; preserve complete model responses, including any signatures | Do not strip parts or assume an Images request is interchangeable with Gemini history |
| Existing OpenAI Images integration | Both GPT versions worked with JSON generation and multipart editing of the previous PNG | Advanced controls, alternate providers and other routes were not tested |
| Transparent asset or controlled masked edit | OpenAI documents transparent PNG/WebP output and mask-based editing for the image family | We did not test those settings here; verify the chosen Ofox route and inspect alpha or the protected area |
| Higher resolutions or many references | Google documents 1K/2K/4K and up to 14 references; OpenAI documents custom dimensions for 2.5 | Only 1024-square outputs and the described histories were tested; nominal “4K” does not establish equal dimensions, cost or gateway support |
The capability references are Google’s Nano Banana 2.1 model documentation, OpenAI’s image generation guide and image editing reference. These upstream documents are not a substitute for testing a gateway-specific parameter. OpenAI’s Flare and Sunburst pages describe their different positioning; our small poster test cannot validate every intended strength.
For this brief, choose Nano first if its flatter illustration and your existing Gemini workflow are the fit, while correcting the unwanted paper framing. Choose Flare first if you prefer the detailed painted treatment and want to evaluate the lower output-component estimate observed at medium. Give Sunburst a separate trial when your work demands more precise or complex editing, but treat its positioning as a reason to test harder work, not as proof of an advantage on this poster. If exact preservation is mandatory, none of the unmasked edits here removes the need for inspection or a conventional compositing step.
Reproduce the comparison before switching a workflow
The reproduction kit contains all nine original PNGs, request parameters, raw responses, timing records, the public catalog snapshot and Python scripts. No credentials are included. The Nano records retain their original same-day timestamps; they are not relabeled as new calls.
After extracting the kit, install requests and provide your own Ofox key through OFOX_API_KEY. Running the following scripts makes new billable requests; reading the saved results does not. The GPT script makes six requests if all succeed and stops a model’s chain after an error. The Nano script with --chain makes three.
python -m pip install requests
export OFOX_API_KEY="YOUR_OFOX_API_KEY"
python reproduce_gpt.py
python reproduce_nano.py --chain
The GPT generation route is https://api.ofox.io/v1/images/generations; edits use /v1/images/edits with the previous file as multipart image. Nano uses https://api.ofox.io/gemini/v1beta/models/google/gemini-nano-banana-2.1:generateContent. The Nano API tutorial and GPT Image API tutorial explain credentials and response handling in more detail. A ChatGPT subscription does not authenticate these Ofox API calls.
Before accepting an output, check the original file at full size: every character, the count and color of objects, the crop, and regions that should have stayed unchanged. Keep every attempted request and its outcome. If a response times out, check its status before automatically paying for another attempt; a timeout does not prove generation failed. If HTTP succeeds but there is no image, inspect the actual response rather than fabricating a file or treating absent usage as zero.
For a production decision, compare total reconciled cost across all attempts with the number that meet your written criteria. Include corrections, failed attempts where billed and review time. The useful winner is the workflow that reliably delivers your required asset; these nine outputs provide a reproducible starting point for that decision, not a universal champion.


