The Nano Banana API choice is a three-model routing decision: use Nano Banana 2 (gemini-3.1-flash-image-preview) as the default for most new image generation, keep original Nano Banana (gemini-2.5-flash-image) for simple low-risk 1K work, and escalate to Nano Banana Pro (gemini-3-pro-image-preview) when text, diagrams, layout, or final polish would be expensive to repair.
Start with the routing board:
| API route | Model ID | Price and size boundary | Use it when | Avoid it when |
|---|---|---|---|---|
| Original Nano Banana | gemini-2.5-flash-image | About $0.039 per 1024px image | You need cheap, simple, low-risk 1K output or you are keeping a legacy-tuned path stable. | The image needs reliable text, diagrams, 2K/4K output, or final polish. |
| Nano Banana 2 | gemini-3.1-flash-image-preview | $0.045 at 0.5K, $0.067 at 1K, $0.101 at 2K, $0.151 at 4K | You need the default API lane for most new product, content, and workflow images. | A bad render would cost more than the Pro price gap to review or fix. |
| Nano Banana Pro | gemini-3-pro-image-preview | $0.134 at 1K/2K, $0.24 at 4K | The prompt includes text, diagrams, dense layout, brand-critical assets, or final deliverables. | You are generating disposable drafts, thumbnails, or bulk simple visuals. |
"Standard" is not enough to choose an API model. Use "Standard pricing" only for Google's pricing mode; for implementation, resolve the request to one of the three model IDs above.
These price and preview-sensitive rows follow Google AI documentation checked on April 20, 2026. The practical rule is to encode Nano Banana 2 as the default route, then downgrade only when the output is simple and cheap to redo, or escalate to Pro when one failed image would waste review time, design time, or production confidence.
The three API routes are not three names for the same thing
Nano Banana is now a family label in common API conversations, but production code cannot route on a family label. A reliable integration needs a model string, an expected image size, a price lane, and a reason to switch. That is why a broad "which Nano Banana is best" answer is weaker than a routing rule.
Original Nano Banana, gemini-2.5-flash-image, is the low-cost baseline. It still matters when the output is simple, square, disposable, or already tuned around the older model. It is not the right default for a new image product that needs 2K or 4K output, strong text handling, or complex layouts.
Nano Banana 2, gemini-3.1-flash-image-preview, is the default lane for most new API work. Google positions it as the high-efficiency image model with the best all-around balance of intelligence, cost, and latency in the Gemini image lineup. It also carries the broadest size ladder, from 0.5K through 4K, which makes it easier to route thumbnails, normal web assets, and larger images without changing model families.
Nano Banana Pro, gemini-3-pro-image-preview, is the premium lane. It is the model to try when the prompt has visible text, diagrams, layout constraints, dense instruction following, or brand-critical final output. Pro is not the default because the marginal quality gain is not always worth the price. It is the escalation model because a failed Pro-suitable image can cost more in review and manual repair than the model price difference.

Prices change the routing decision in two ways
The first pricing rule is simple: do not compare models only at 1K. Original Nano Banana has the lowest 1024px-class cost, Nano Banana 2 adds a 0.5K-to-4K ladder, and Pro costs more because it is aimed at higher-stakes output. Size support is part of the routing decision, not a footnote.
Current Google API pricing rows checked on April 20, 2026:
| Model route | Standard image price | Batch/Flex price where available | Practical cost meaning |
|---|---|---|---|
Original Nano Banana (gemini-2.5-flash-image) | About $0.039 per 1024px image | About $0.0195 with Batch | Cheapest path for simple 1K output. |
Nano Banana 2 (gemini-3.1-flash-image-preview) | $0.045 at 0.5K, $0.067 at 1K, $0.101 at 2K, $0.151 at 4K | About half of Standard through async lanes where available | Best default when you need size choice and modern quality without Pro cost. |
Nano Banana Pro (gemini-3-pro-image-preview) | $0.134 at 1K/2K, $0.24 at 4K | $0.067 at 1K/2K, $0.12 at 4K | Best when one bad image creates review, design, compliance, or brand cost. |

The second pricing rule is about failure cost. A cheap model is not cheap if it creates three unusable images and a human review loop. A premium model is not expensive if it avoids a failed banner, broken diagram, or unusable localized image. Route low-risk drafts to cheaper lanes; route high-cost failures to Pro.
For batch workloads, the route can change again. If the user does not need an image immediately, async processing can make Pro or higher-resolution Nano Banana 2 affordable enough for nightly catalog, content, or design-system jobs. Real-time product UX should usually start with Nano Banana 2 and reserve Pro for the subset of requests that prove hard to satisfy.
Use Nano Banana 2 as the default, then add two exceptions
The most stable implementation rule is not "always use the newest model." It is "default to Nano Banana 2 unless the request clearly belongs to the cheap lane or the premium lane." That gives the application one simple center of gravity while still preserving cost control.
Use Nano Banana 2 when the request looks like normal product image generation: blog visuals, product concepts, app illustrations, lightweight social assets, background art, localized support images, and web graphics that may need more than 1024px. It gives enough quality and size flexibility for most workloads, and it avoids making Pro the default cost baseline.
Use original Nano Banana when four conditions line up: the output is simple, 1K is enough, visible text is not important, and a failed image is cheap to regenerate or ignore. That makes it a good lane for legacy jobs, internal placeholders, bulk low-risk variants, and simple thumbnails. It is not a good lane for images that must survive editorial review, brand review, or user-facing scrutiny.
Use Nano Banana Pro when the prompt includes text that must be readable, a diagram that must preserve structure, a dense layout, multiple constrained objects, or a final asset where manual repair would be painful. Pro is also the safer first try when the output is headed to paid ads, client deliverables, documentation diagrams, or product pages.
The exception logic should be visible in code and operations. If product managers, support, or finance cannot tell why a request used Pro, the router is too vague. Give Pro a small set of named triggers, log those triggers, and review the sample output before making the trigger permanent.
Production routing should classify the request before changing model IDs
Model switching is easy at the API layer, but blind switching creates unstable cost and inconsistent output. A production router should classify the request first, then choose the model, then validate the result against the reason that model was chosen.

A practical router can use this order:
- Start with Nano Banana 2 for new image-generation traffic.
- Escalate to Pro before generation when the prompt has visible text, diagrams, layout constraints, final deliverable language, or brand-critical use.
- Downgrade to original Nano Banana only when the request is simple, 1K, low-risk, and cost-sensitive.
- Use Batch or Flex for non-urgent volume when latency does not matter.
- Validate output against the model reason: text readability for Pro, size and cost for Nano Banana 2, cheap regeneration for original Nano Banana.
The validation step matters because it prevents the router from becoming a hidden preference list. If a request escalated to Pro because it needed text, the pass condition should inspect text readability. If a request downgraded to original Nano Banana because it was low risk, the pass condition should confirm that 1K output is acceptable. If a request stayed on Nano Banana 2, the pass condition should check whether quality is good enough without paying the Pro premium.
For production quotas and retries, keep the model router separate from rate-limit handling. A 429 or project-limit event should not automatically push traffic to Pro or another model. Treat quota and availability as operational branches, then consult the current project limits in Google AI Studio or the console. For deeper quota planning, use the Gemini API rate limits guide after the model route is chosen.
API guardrails: choose by model ID, not by label
The safest implementation pattern is to store route names in your application and map them to official model IDs in one place. Do not let UI copy, pricing labels, or provider aliases become the value passed to the API client.
pythonfrom google import genai from google.genai import types client = genai.Client(api_key="GEMINI_API_KEY") MODEL_BY_ROUTE = { "cheap_1k": "gemini-2.5-flash-image", "default": "gemini-3.1-flash-image-preview", "premium": "gemini-3-pro-image-preview", } def choose_image_route(job): if job.get("final_asset") or job.get("has_text") or job.get("diagram"): return "premium" if job.get("simple") and job.get("max_size") == "1k" and job.get("low_risk"): return "cheap_1k" return "default" job = { "prompt": "Create a clean product release diagram with readable labels", "has_text": True, "diagram": True, "final_asset": False, } route = choose_image_route(job) response = client.models.generate_content( model=MODEL_BY_ROUTE[route], contents=job["prompt"], config=types.GenerateContentConfig(response_modalities=["IMAGE"]), )
Keep model-specific config behind the same route boundary. If a setting is supported for one model or size but not another, apply it only after the route is selected. That prevents a fallback from failing because it inherited an unsupported parameter. The same rule applies to output size: 0.5K only belongs in the Nano Banana 2 lane, while original Nano Banana should stay in its 1024px-class role.
The model map should also be easy to audit. Log the route, official model ID, requested size, price lane, escalation trigger, and validation result. That gives finance a cost explanation, gives support a failure trail, and gives engineering a safe way to tune the router without rewriting prompts every week.
When to migrate an existing pipeline
If an existing pipeline already uses original Nano Banana and the output is accepted, do not migrate just because the family has a newer model. Test the exact workload first. The original model still earns its place when the output is cheap, familiar, and constrained to simple 1K images.
Migrate the default path to Nano Banana 2 when the pipeline needs larger image sizes, better instruction following, or a single model that can handle more varied jobs. The migration should be staged: route a small traffic slice to Nano Banana 2, compare accepted-output rate, compare manual repair time, then update the default only when the quality gain is visible in the workload that matters.
Escalate selected jobs to Pro when Nano Banana 2 repeatedly fails in a predictable way. Do not turn Pro on for every request because a few prompts were hard. Create a named trigger instead: visible text failed, diagram structure failed, brand image failed review, final asset needed less rework, or complex layout required stronger instruction following. That keeps Pro a quality tool rather than a silent cost leak.
For a deeper two-model decision between the default and premium lanes, use the dedicated Nano Banana Pro vs Nano Banana 2 comparison. The three-model router here is the front door; the two-model page is the closer look at when the Pro upgrade is worth it.
FAQ
Is Standard a Nano Banana API model?
No. In implementation, "Standard" is not a model ID. It can mean Google's Standard pricing lane, or it can be loose shorthand for the lower-cost original Nano Banana lane. API code should resolve the request to gemini-2.5-flash-image, gemini-3.1-flash-image-preview, or gemini-3-pro-image-preview.
Which model should be the default for a new API integration?
Use Nano Banana 2, gemini-3.1-flash-image-preview, as the default for most new API image generation. It has the best balance of model capability, supported sizes, and price for a general-purpose route. Add original Nano Banana as a cheap 1K exception and Pro as a premium exception.
When is Nano Banana Pro worth the extra price?
Pro is worth it when the image must carry readable text, a diagram, a structured layout, a client-facing asset, or a final deliverable. If one failed output creates review time or manual repair time, Pro can be cheaper in practice than repeated cheaper generations.
When should original Nano Banana still be used?
Use original Nano Banana for simple, low-risk, 1024px-class output where cost and speed matter more than text fidelity or final polish. It is useful for legacy pipelines, internal placeholders, bulk drafts, and simple thumbnails. It should not be the default for new mixed-size or text-heavy workflows.
Are the prices in the table universal quotas or account guarantees?
No. The prices are official Google API pricing rows checked on April 20, 2026. Project quotas, account eligibility, rate limits, and live availability can vary by project and billing setup, so production planning should confirm limits in the current Google console or AI Studio account.
Can I switch models without rewriting my whole image pipeline?
Usually yes, if the integration already keeps model choice separate from prompt construction and validation. The model ID string changes, and model-specific settings or output sizes must be guarded. A safe router keeps the route, model ID, requested size, price lane, and validation rule together so switching does not create hidden config errors.
