Gemini 3.1 Flash Image (Nano Banana 2)
Gemini 3.1 Flash Image (Nano Banana 2) is the generally available flash-tier image generation and editing model in the Gemini 3.1 family, combining Google Image Search grounding, configurable thinking levels, and new video-to-image input with production-ready 1K and 2K output.
View API reference- Input and output price
- Prices from: Input $0.50, Output $3, Per 1M tokens
- 24h uptime
- Loading AI Gateway uptime
import { generateText } from 'ai'
const result = await generateText({ model: 'google/gemini-3.1-flash-image', prompt: 'Render a picture of a red balloon.',});Copy link to headingPlayground
Try out Gemini 3.1 Flash Image (Nano Banana 2) by Google. Usage is billed to your team at API rates. Free users (those who haven't made a payment) get $5 of credits every 30 days.
Your generated image will appear here
Copy link to headingProviders
Route requests across multiple providers. Copy a provider slug to set your preference. Visit the docs for more info. Using a provider means you agree to their terms, listed under Legal.
| Provider |
|---|
Copy link to headingUptime24 hours
Direct request success rate on AI Gateway and per-provider. Visit the docs for more info.
Copy link to headingThroughput24 hours
P50 throughput on live AI Gateway traffic, in tokens per second (TPS). Visit the docs for more info.
Copy link to headingLatency24 hours
P50 time to first token (TTFT) on live AI Gateway traffic, in milliseconds. View the docs for more info.
Getting started
Call Gemini 3.1 Flash Image (Nano Banana 2) through AI Gateway with the AI SDK generateText and streamText functions, or through the OpenAI Chat Completions, OpenAI Responses, and Anthropic Messages APIs by changing the base URL. AI Gateway authenticates the request and routes it to an available provider.
Install the AI SDK (pnpm add ai dotenv), create an API key from the API Keys page, and set it as AI_GATEWAY_API_KEY in your environment. Full setup is covered in the text generation quickstart.
import { generateText } from 'ai';import 'dotenv/config';
async function main() { const result = await generateText({ model: 'google/gemini-3.1-flash-image', prompt: 'Why is the sky blue?', });
console.log(result.text);}
main().catch(console.error);Top-level parameters
The same Gemini 3.1 Flash Image (Nano Banana 2) request in each API format AI Gateway supports.
import { generateText } from 'ai';import 'dotenv/config';
async function main() { const result = await generateText({ model: 'google/gemini-3.1-flash-image', system: 'You are a concise technical assistant.', prompt: 'Summarize the tradeoffs between static generation and SSR.', maxOutputTokens: 1024, });
console.log(result.text);}
main().catch(console.error);Standard parameters like prompt, messages, temperature, and tools work as documented in the AI SDK docs. These are the parameters with model-specific behavior.
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | Model ID in the form creator/model, e.g. google/gemini-3.1-flash-image. AI Gateway routes the request to an available provider. |
maxOutputTokens | number | No | Hard cap on generated tokens. Gemini 3.1 Flash Image (Nano Banana 2) supports up to 32,768 output tokens. Reasoning tokens count toward this limit. |
reasoning | 'provider-default' | 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh' | No | Provider-agnostic reasoning effort, available in AI SDK 7 or later. Maps to the provider’s native reasoning configuration; reasoning settings under providerOptions take precedence when both are set. See the Reasoning section below. |
providerOptions | Record<string, JSONValue> | No | AI Gateway routing options under gateway, plus any provider-native options under the provider’s own namespace — see the table below. |
Input limits
| Input | Formats | Sources | Max count | Max size | Limits |
|---|---|---|---|---|---|
| Text | — | — | — | — | Prompt and response share the 131K-token context window |
| Image | — | URL, base64, Uint8Array | — | — | Sent as image parts in messages; counts as input tokens |
Provider options
Set AI Gateway routing options under providerOptions.gateway. For provider-specific options, pass them under the provider’s namespace as documented by the AI SDK.
Learn more in the AI SDK google provider docs.
import { generateText } from 'ai';import 'dotenv/config';
async function main() { const result = await generateText({ model: 'google/gemini-3.1-flash-image', prompt: 'Why is the sky blue?', providerOptions: { gateway: { only: ['vertex', 'google'], }, }, });
console.log(result.text);}
main().catch(console.error);These AI Gateway routing options apply to every model. Provider-specific options pass through under the provider’s own namespace (for example providerOptions.anthropic) exactly as documented by the AI SDK.
| Parameter | Type | Required | Description |
|---|---|---|---|
providerOptions.gateway.only | string[] | No | Restrict routing to these provider slugs. Requests fail over only within the listed providers. |
providerOptions.gateway.order | string[] | No | Preferred provider order. Listed providers are tried first; unlisted providers remain available as fallbacks. |
providerOptions.gateway.sort | 'cost' | 'ttft' | 'tps' | No | Rank candidate providers by price, time to first token, or tokens per second instead of the default routing order. |
providerOptions.gateway.zeroDataRetention | boolean | No | Route only to providers with a zero-data-retention policy for this model. |
Routing across providers
AI Gateway serves the same model through multiple providers and fails over automatically. order expresses a preference while keeping every provider eligible; only is a hard allowlist — if none of the listed providers are available the request fails instead of falling back.
Options under a provider's own namespace (for example providerOptions.anthropic) are forwarded to that provider with the request. Providers ignore option namespaces that don't apply to them, so it is safe to set provider options alongside gateway routing options.
Reasoning
AI Gateway bridges reasoning across every API format. The AI SDK exposes a provider-agnostic top-level reasoning level (none, minimal, low, medium, high, or xhigh); the Chat Completions and Responses formats take the same effort under reasoning.effort; and the Anthropic Messages format uses a native thinking token budget. Whichever you send, the gateway maps it to the target model’s native configuration, converting between effort levels and token budgets as needed. Reasoning-related settings under providerOptions take full precedence over the top-level reasoning value and are never merged. Reasoning tokens typically count toward your output-token usage, though how they’re reported and billed varies by provider.
Learn more in the AI Gateway reasoning guide.
import { generateText } from 'ai';import 'dotenv/config';
async function main() { const result = await generateText({ model: 'google/gemini-3.1-flash-image', prompt: 'Explain the Monty Hall problem step by step.', reasoning: 'high', });
console.log(result.text);}
main().catch(console.error);Image input
Send images alongside text as message parts. Images count as input tokens.
import { generateText } from 'ai';import 'dotenv/config';
async function main() { const result = await generateText({ model: 'google/gemini-3.1-flash-image', messages: [ { role: 'user', content: [ { type: 'text', text: 'Describe this image.' }, { type: 'image', image: 'https://example.com/photo.jpg' }, ], }, ], });
console.log(result.text);}
main().catch(console.error);Copy link to headingAbout Gemini 3.1 Flash Image (Nano Banana 2)
Gemini 3.1 Flash Image (Nano Banana 2) is the general-availability release of the flash-tier image model in the Gemini 3.1 generation, released May 28, 2026. Gemini 3.1 Flash Image (Nano Banana 2) replaces google/gemini-3.1-flash-image-preview, which Google deprecated after the GA launch, and serves as the generalist of the Nano Banana family: the balance point between the pro tier's fidelity and the lite tier's speed.
The capabilities introduced in the preview carry into the GA model. Google Image Search grounding lets Gemini 3.1 Flash Image (Nano Banana 2) retrieve live visual reference data at generation time, improving accuracy on lesser-known landmarks, branded objects, and recent subjects. Configurable thinking levels (minimal and high) control how much Gemini 3.1 Flash Image (Nano Banana 2) reasons before rendering, and output options span 512p resolution plus narrow 1:4 and 1:8 aspect ratios alongside standard formats.
GA adds video-to-image input, a capability exclusive to Gemini 3.1 Flash Image (Nano Banana 2) among Google's image models. Pass a video file via direct upload or as a public YouTube URL, and Gemini 3.1 Flash Image (Nano Banana 2) analyzes the visual context, subjects, and actions in the footage to generate context-aware images such as thumbnails, posters, and infographics. The feature is in preview on Google's side, as is 4K output; 1K and 2K output are generally available.
Every generated image carries an invisible SynthID watermark for downstream identification of AI-generated content. Gemini 3.1 Flash Image (Nano Banana 2) accepts prompts within a context window of 131.1K tokens and returns text and images in the same multimodal response, with per-image billing by output resolution.
Copy link to headingWhat To Consider When Choosing a Provider
- Configuration: This is a multimodal model: call Gemini 3.1 Flash Image (Nano Banana 2) with
generateTextorstreamTextand setresponseModalities: ['TEXT', 'IMAGE']inproviderOptions.googleto receive image output. Image generation is priced per image by output resolution, and text follows per-token rates; see the pricing panel on this page for current numbers. Note that 4K output and video input are preview capabilities on Google's side, while 1K and 2K output are generally available. - Zero Data Retention: Zero Data Retention is available for this model. It is offered on a per-provider and model basis. See the documentation for details.
- Authentication: AI Gateway authenticates requests using an API key or OIDC token. You do not need to manage provider credentials directly.
Copy link to headingWhen to Use Gemini 3.1 Flash Image (Nano Banana 2)
Best for
- Production Image Workloads: Teams that need the flash-tier balance of quality, speed, and cost behind a stable GA identifier
- Video-Derived Imagery: Thumbnails, posters, and infographics generated from uploaded video files or public YouTube URLs
- Search-Grounded Generation: Real-world landmarks, products, and recent subjects rendered with live Google Image Search data
- Technical Diagrams and Infographics: Compositions where the
highthinking level improves spatial reasoning and label placement - Mixed Text and Image Output: Single multimodal responses that return prose and generated images together
Consider alternatives when
- Highest Visual Fidelity: Professional compositing and fine-detail work favor
google/gemini-3-pro-image - Maximum Speed and Volume: High-throughput pipelines run at lower cost on
google/gemini-3.1-flash-lite-image - Pure Image Generation API: A dedicated text-to-image model like
google/imagen-4.0-generate-001skips multimodal call patterns - Video Output Required: Generated clips need the Veo model family rather than still images
Copy link to headingConclusion
Gemini 3.1 Flash Image (Nano Banana 2) is the production target for flash-tier image generation on AI Gateway. Teams that built on the preview get the same search grounding, thinking control, and format flexibility behind a stable identifier, plus video-to-image input that no other Gemini image model offers. For image workloads that need current-subject accuracy and production reliability at flash cost, Gemini 3.1 Flash Image (Nano Banana 2) is the natural starting point in the family.
Copy link to headingFrequently Asked Questions
How is Gemini 3.1 Flash Image (Nano Banana 2) different from
google/gemini-3.1-flash-image-preview?Gemini 3.1 Flash Image (Nano Banana 2) is the general-availability release of the same flash-tier image model. Google deprecated the preview identifier after the GA launch, so new and existing production work should target Gemini 3.1 Flash Image (Nano Banana 2). Video-to-image input is also available only on the GA model.
How does video-to-image input work?
Pass a video file, either via direct upload or as a public YouTube URL, alongside a text prompt. Gemini 3.1 Flash Image (Nano Banana 2) analyzes the visual context, subjects, and actions in the footage to generate context-aware images such as thumbnails, posters, and infographics. The capability is in preview on Google's side.
Do I need to set
responseModalitiesto get images?Yes. Include
responseModalities: ['TEXT', 'IMAGE']inproviderOptions.googlewhen callinggenerateTextorstreamText. Without this setting, Gemini 3.1 Flash Image (Nano Banana 2) returns text only.What resolutions does Gemini 3.1 Flash Image (Nano Banana 2) support?
Output spans 512p through 4K, priced per image by resolution. 1K and 2K output are generally available from Google, while 4K remains in preview. See the pricing panel on this page for per-resolution rates.
What thinking levels does Gemini 3.1 Flash Image (Nano Banana 2) support?
minimalandhigh, set throughthinkingConfig.thinkingLevelinproviderOptions.google. Useminimalfor speed on straightforward prompts andhighfor complex compositions, diagrams, and prompts that benefit from reasoning before rendering.How does Gemini 3.1 Flash Image (Nano Banana 2) compare to Gemini 3 Pro Image?
Gemini 3 Pro Image targets complex, professional work where accuracy outweighs speed. Gemini 3.1 Flash Image (Nano Banana 2) is the generalist in the family, balancing quality, latency, and cost for production workloads, and is the only Gemini image model that accepts video input.
How do I call Gemini 3.1 Flash Image (Nano Banana 2) on AI Gateway?
Set the model to
google/gemini-3.1-flash-imagein the AI SDK and include the image response modality in provider options. AI Gateway handles provider routing, retries, and failover automatically.How does Zero Data Retention work with Gemini 3.1 Flash Image (Nano Banana 2) through AI Gateway?
Yes, Zero Data Retention is available for this model. Zero Data Retention is offered on a per-provider basis. See https://vercel.com/docs/ai-gateway/capabilities/zdr for details.