Back to Models

Nano Banana Pro

Premium Nano Banana tier built on gemini-3-pro-image, covering text-to-image and editing with readable in-image text and up to 4K output.

Image Editingfrom$0.075Text to Imagefrom$0.075
Pricingstarting $0.075/request
Latency~30 seconds average
Resolution1K/2K/4K
Best fortext to image, High Quality, Pro

Parameters

Estimated Cost

You save 50% on this model
Base cost per request$0.15
Discount-50%
Your Total$0.075
You save $0.075 per request

Sign in to run models

Output Preview

Ready

No output yet

Run the model to see generated results.

Sample Output

API Example— Current Parameters

generate.py
import requests

result = requests.post(
    'https://api.e2x.ai/v1/jobs/submit',
    headers={
        'Authorization': f'Bearer {API_KEY}',
        'Content-Type': 'application/json'
    },
    json={
  'model': 'google/nano-banana-pro/edit-image',
  'input': {}
}
)

Get Job— Poll for result

get_job.py
import time

job_id = result.json()['jobId']

while True:
    response = requests.get(
        f'https://api.e2x.ai/v1/jobs/{'{job_id}'}',
        headers={'Authorization': f'Bearer {'{API_KEY}'}'}
    )
    data = response.json()['data']

    if data['status'] == 'completed':
        print('Done!', data['outputs'][0]['url'])
        break
    elif data['status'] == 'failed':
        raise Exception(f"Job failed: {'{'}data['error']['message']{'}'}")

    time.sleep(2)
Explore Alternatives

Related Models

Discover more AI models for Image Editing

View all models

Nano Banana Pro Image Editing API on E2X

Nano Banana Pro is Google's gemini-3-pro-image — the top tier of the Nano Banana family, and the one we reach for when an edit has to hold up at full size. We expose its editing capability as google/nano-banana-pro/edit-image, and we charge $0.075 per edited image at 1K and 2K. That is half what the same request costs on fal.ai or Replicate today.

No source image to work from? Then you want Nano Banana Pro text-to-image instead — same model, same price, prompt only.

Here is where our price sat when we last checked it on August 26, 2026:

API providerPrice (1K/2K)Price (4K)vs. E2X
E2X$0.075$0.15
fal.ai$0.15$0.30we're 50% lower
Replicate$0.15$0.30we're 50% lower
Google Gemini API$0.134$0.24we're 44% lower

We date-stamp that table because we re-check it, and because prices move.

Prices and product terms can change. Check each provider's current pricing before making a purchasing decision. Google Batch or Flex pricing is not directly equivalent to a standard on-demand API request because scheduling, availability, and processing conditions differ; it is therefore excluded from this comparison. This is a scoped comparison, not a claim that E2X is the world's cheapest option in every configuration.

Where the Pro tier earns its price

Most image models treat an edit as a fresh generation that happens to resemble the original. This one treats it as composition, and you feel the difference in three places.

It holds fourteen references at once. Google splits that budget by role: up to 5 character images when a person has to stay recognisable, up to 6 object images for high-fidelity product placement, up to 3 style references. A full ad composite — model, product, brand palette — goes in as one request instead of a three-call chain you have to babysit.

It writes legible text. This is the single biggest reason we recommend Pro over the cheaper tiers for anything commercial. It renders styled, readable copy for infographics, menus, diagrams and packaging, and it handles multilingual layouts — hand it an English infographic, ask for the Spanish version, and the rest of the artwork stays put. Most image models still turn body copy into decorative squiggles.

Resolution that goes somewhere. 1K, 2K, or 4K up to 4096×4096. We price 1K and 2K identically at $0.075; 4K doubles.

One behaviour to know before you benchmark us against anyone: the model generates interim "thought images" while it reasons about the composition. Google doesn't return them and we don't bill them. It's also why you should expect roughly 30 seconds per request rather than the two or three a flash-tier model would take.

API request: editing with references

Create a key in your dashboard, keep it server-side, and post the job to our submit endpoint. We require two fields: prompt and image_urls.

curl -X POST https://api.e2x.ai/v1/jobs/submit \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "google/nano-banana-pro/edit-image",
    "input": {
      "prompt": "Place the bottle on wet slate under soft overcast daylight. Keep the label text sharp and unchanged.",
      "image_urls": [
        "https://example.com/product.jpg",
        "https://example.com/mood.jpg"
      ],
      "aspect_ratio": "4:5",
      "resolution": "2k"
    }
  }'

We hand back a job ID. Poll it until the status settles:

const headers = {
  Authorization: `Bearer ${process.env.E2X_API_KEY}`,
  "Content-Type": "application/json",
};

const submitted = await fetch("https://api.e2x.ai/v1/jobs/submit", {
  method: "POST",
  headers,
  body: JSON.stringify({
    model: "google/nano-banana-pro/edit-image",
    input: {
      prompt: "Replace the background with a sunlit Milanese courtyard. Keep the subject's face and clothing identical.",
      image_urls: ["https://example.com/portrait.jpg"],
      aspect_ratio: "16:9",
      resolution: "1k",
    },
  }),
}).then((r) => r.json());

const jobId = submitted.data.jobId;

while (true) {
  const job = await fetch(`https://api.e2x.ai/v1/jobs/${jobId}`, { headers })
    .then((r) => r.json());

  if (job.data.status === "completed") {
    console.log(job.data.outputs[0].url);
    break;
  }
  if (job.data.status === "failed") {
    throw new Error(job.data.error?.message || "Image edit failed");
  }
  await new Promise((r) => setTimeout(r, 2000));
}

Status runs pendingprocessingcompleted, or stops at failed or cancelled. Don't want to poll? Send a webhookUrl in the submit body and we'll call you when it lands.

Two schema details that bite people: our aspect ratio default is 9:16, not 1:1, so set it explicitly unless you want portrait — and resolution values are lowercase (1k, 2k, 4k). The live machine-readable spec always carries the current schema and price.

Choosing between our image editing models

Pro is our most expensive image editor, and it is genuinely overkill for a lot of work. Here is the honest map of what else we run:

ModelPrice / imagePick it when
Nano Banana Pro$0.075Text inside the image, many references, 4K output
Nano Banana 2$0.04Current-generation quality, no 4K requirement
Nano Banana 2 Lite$0.0238High volume, simple edits, tight budget
Nano Banana (legacy)$0.0312Nothing. Google shuts it down 2 October 2026
GPT Image 2$0.0525 at high qualityMask-based editing, or OpenAI's rendering of text

Read that table again and notice the legacy row. Google retires gemini-2.5-flash-image on 2 October 2026, and Nano Banana 2 Lite is both cheaper and newer than it — $0.0238 against $0.0312. If you're still on the old one, that migration pays for itself twice over. We'd rather tell you that than sell you a tier you don't need.

The rest is a budget question. Pro costs roughly three times Lite. If your edits are background swaps and colour changes at social-media resolution, Lite does that and you keep the difference. If a client is going to read the words baked into the image, come back to Pro. Browse everything in the image-to-image category or the full model catalog.

Prompt the difference, not the picture

The habit carried over from text-to-image is to describe the whole scene. In an edit, that instruction fights the reference and you get a drifting regeneration instead of a change.

Write the delta. Name what moves, then name what must not: "swap the jacket for charcoal wool, keep the pose, face and lighting identical" beats a full scene description almost every time. When several references go into one call, label them — "image 1 is the person, image 2 is the product, image 3 is colour grading only" — because nothing else tells the model your third attachment was a palette and not a subject.

Editing text? Quote the exact string. Paraphrasing invites reinterpretation.

Before you ship

Every output carries a SynthID watermark. It's Google's imperceptible provenance marker, it applies without exception, and neither we nor any other provider can expose a switch to disable it. If your pipeline runs downstream detection, or a client contract prohibits watermarked assets, settle that before you integrate.

Watch resolution defaults if you're porting a config. We default to 1K and so does fal.ai; Replicate defaults to 2K. Same price across those tiers here, but your output dimensions won't match what you assumed.

Frequently asked questions

What is Nano Banana Pro?

Nano Banana Pro is the product name for Google's gemini-3-pro-image, the premium tier of the Nano Banana family. It targets complex visual work — multi-reference composition, character consistency, legible in-image text, output up to 4K — rather than the fastest possible generation.

How much does Nano Banana Pro image editing cost on E2X?

We charge $0.075 per edited image at 1K and 2K resolution, with 4K billed at double. That was our price at the August 26, 2026 check. Pricing moves, so confirm on the live model page before you budget against it.

How many reference images can one request take?

Fourteen in total. Google caps the mix by role: at most 5 character images for consistency, at most 6 object images for high-fidelity inclusion, and at most 3 style references.

Is E2X cheaper than fal.ai and Replicate for this model?

For the comparable on-demand prices we checked on that date, yes — $0.075 with us against $0.15 on both. That's a 50% saving on a like-for-like request. Different plans, batch products or promotional pricing aren't part of that comparison.

Do the generated images carry a watermark?

Yes. Every image from Nano Banana Pro includes a SynthID watermark, Google's imperceptible marker for AI-generated content. No provider offers a parameter to turn it off, ourselves included.

Should I use Pro or one of the cheaper tiers?

Use Pro when the image contains readable text, when you are combining several references, or when you need 4K. For background swaps and simple retouching at social resolution, Nano Banana 2 Lite costs a third as much and the difference rarely shows.

Is the API synchronous?

No. You submit a job, then either poll its status or give us a webhookUrl. A completed job exposes the result at data.outputs[0].url. Expect around 30 seconds of processing.