Nano Banana 2 or ChatGPT Image 2.5 for edits: refs, ratios, price

On Sume, ChatGPT Image 2.5 costs $0.065875 and takes 16 references plus mask_url and background; Nano Banana 2 costs $0.10 and takes 14 ratios and 4K.

4 min readSume
All posts

Pick ChatGPT Image 2.5 when the edit needs a mask, a transparent background or up to 16 references, and Nano Banana 2 when it needs an unusual ratio or a 512 to 4K resolution choice. On Sume they cost $0.065875 and $0.10 per image at their default tiers.

Both take aspect_ratio: "auto" for edits and up to 4 images per call. The other differences are in the table, taken from the live catalog (read 2026-10-03).

Side by side

The table below lists the figures this post uses, as read on 2026-10-03.

Nano Banana 2 vs ChatGPT Image 2.5 in the Sume catalog (read 2026-10-03)
FieldNano Banana 2ChatGPT Image 2.5
Model idgoogle/nano-banana-2openai/gpt-image-2.5
Price per image (default tier)$0.10 at 1K$0.065875 at high, 1024
Max references1016
Max n44
Aspect ratiosauto plus 14 ratios, 4:1 to 1:8auto plus 8 ratios, 9:8 to 16:9
Resolution tiers512, 1K, 2K, 4Knone listed
Quality valuesnone listedauto, low, medium, high, xhigh, max
mask_url and backgroundnot listedboth listed
Output formatspng, jpeg, webppng, jpeg, webp

Decision rules

If the job is a local change (swap one object, repaint one area, cut out a prop on transparent), only ChatGPT Image 2.5 gives you the parameters. If the job is a banner strip, a tall pin or a 4K master, only Nano Banana 2 lists the ratios and tiers.

On price, ChatGPT Image 2.5 at its default tier is $0.034125 cheaper per image, but it moves with quality and size while Nano Banana 2 moves with resolution. Compare at the tier you will actually ship.

  • Mask, transparency or more than 10 references: ChatGPT Image 2.5.
  • 4:1, 1:4, 8:1, 1:8, 21:9 or 4K: Nano Banana 2.
  • Both: Test 10 prompts on each ($1.65875).

A rule that routes by need

A small router keeps the choice in code instead of in each prompt.

def pick_model(needs_mask: bool, ratio: str, refs: int) -> str:
    if needs_mask or refs > 10:
        return "openai/gpt-image-2.5"
    if ratio in {"4:1", "1:4", "8:1", "1:8", "21:9"}:
        return "google/nano-banana-2"
    return "google/nano-banana-2"


if __name__ == "__main__":
    print(pick_model(False, "4:1", 3))

Sources

Related posts

More in Comparisons

All Comparisons posts

Written by Sume