Skip to content
Dashboard

Gemini 3.1 Flash Image Preview (Nano Banana 2)

Gemini 3.1 Flash Image Preview (Nano Banana 2) Preview (Nano Banana 2) improves visual output quality at flash-tier speed, adding Google Image Search grounding, configurable thinking levels, and new resolution and aspect ratio options including 512p and ultra-wide formats.

View API reference
Input and output price
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-preview',
prompt: 'Render a picture of a red balloon.',
});
Read docs

Copy link to headingPlayground

Try out Gemini 3.1 Flash Image Preview (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.

google logo
Prompt
Describe what you want the model to generate.
Reference images(optional)
Add up to 4 images
Images to generate
Aspect ratio
Resolution
google logo

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
Input
Output
Cache
Web Search
Capabilities
ZDR
No Training
Free Tier
Release Date
$0.50/M+1 more
$3/M+1 more
$0.05/img+4 more
Read$0.05/M
$14/K
+2
02/26/2026

Copy link to headingUptime

Direct request success rate on AI Gateway and per-provider. Visit the docs for more info.

Copy link to headingThroughput

P50 throughput on live AI Gateway traffic, in tokens per second (TPS). Visit the docs for more info.

Copy link to headingLatency

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 Preview (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.

index.ts
import { generateText } from 'ai';
import 'dotenv/config';
async function main() {
const result = await generateText({
model: 'google/gemini-3.1-flash-image-preview',
prompt: 'Why is the sky blue?',
});
console.log(result.text);
}
main().catch(console.error);

Top-level parameters

The same Gemini 3.1 Flash Image Preview (Nano Banana 2) request in each API format AI Gateway supports.

top-level-params.ts
import { generateText } from 'ai';
import 'dotenv/config';
async function main() {
const result = await generateText({
model: 'google/gemini-3.1-flash-image-preview',
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.

ParameterTypeRequiredDescription
modelstringYesModel ID in the form creator/model, e.g. google/gemini-3.1-flash-image-preview. AI Gateway routes the request to an available provider.
maxOutputTokensnumberNoHard cap on generated tokens. Gemini 3.1 Flash Image Preview (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'NoProvider-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.
providerOptionsRecord<string, JSONValue>NoAI Gateway routing options under gateway, plus any provider-native options under the provider’s own namespace — see the table below.

Input limits

InputFormatsSourcesMax countMax sizeLimits
TextPrompt and response share the 131K-token context window
ImageURL, base64, Uint8ArraySent 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.

provider-options.ts
import { generateText } from 'ai';
import 'dotenv/config';
async function main() {
const result = await generateText({
model: 'google/gemini-3.1-flash-image-preview',
prompt: 'Why is the sky blue?',
providerOptions: {
gateway: {
only: ['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.

ParameterTypeRequiredDescription
providerOptions.gateway.onlystring[]NoRestrict routing to these provider slugs. Requests fail over only within the listed providers.
providerOptions.gateway.orderstring[]NoPreferred provider order. Listed providers are tried first; unlisted providers remain available as fallbacks.
providerOptions.gateway.sort'cost' | 'ttft' | 'tps'NoRank candidate providers by price, time to first token, or tokens per second instead of the default routing order.
providerOptions.gateway.zeroDataRetentionbooleanNoRoute 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.

reasoning.ts
import { generateText } from 'ai';
import 'dotenv/config';
async function main() {
const result = await generateText({
model: 'google/gemini-3.1-flash-image-preview',
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.

image-input.ts
import { generateText } from 'ai';
import 'dotenv/config';
async function main() {
const result = await generateText({
model: 'google/gemini-3.1-flash-image-preview',
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 headingMore models by Google

Model
Context
Latency
Throughput
Input
Output
Cache
Web Search
Capabilities
Providers
ZDR
No Training
Free Tier
Release Date
1M1.9 s412 tps
$0.75/M
$3.75/M
Read$0.08/M
$14/K+1 more
+3
google logo
vertex logo
09/02/2026
1M0.8 s280 tps
$0.75/M
$3.75/M
Read$0.08/M
$14/K+1 more
+3
google logo
vertex logo
08/13/2026
1M0.5 s302 tps
$0.30/M
$2.50/M
Read$0.03/M
$14/K+1 more
+3
google logo
vertex logo
07/21/2026
1M0.6 s257 tps
$0.25/M
$1.50/M
Read$0.03/M
$14/K+1 more
+3
google logo
vertex logo
05/07/2026
1M0.6 s197 tps
$0.50/M+1 more
$3/M+1 more
Read$0.05/M
$14/K+1 more
+3
google logo
vertex logo
12/17/2025
1M0.2 s392 tps
$0.10/M
$0.40/M
Read$0.01/M
$35/K+1 more
+3
google logo
vertex logo
06/17/2025

Copy link to headingAbout Gemini 3.1 Flash Image Preview (Nano Banana 2)

Gemini 3.1 Flash Image Preview (Nano Banana 2) Preview, codenamed Nano Banana 2, advances over the prior flash-tier image model with improved visual quality while preserving the generation speed and cost profile that makes flash-tier models viable for production workloads. Three feature additions meaningfully expand what flash-tier image generation can do.

The first is Google Image Search grounding. The model can retrieve live visual reference data from Google's index at generation time, which allows it to render lesser-known landmarks, brand-specific objects, and recent real-world subjects accurately. The second addition is configurable thinking levels. Gemini 3.1 Flash Image Preview (Nano Banana 2) Preview introduces Minimal and High thinking modes, enabling the model to reason through complex prompts before rendering. The third addition is expanded output options: 512p resolution and 1:4 and 1:8 aspect ratios join the existing format options, opening the model to narrow-format creative assets like banners and vertical media strips.

Copy link to headingWhat To Consider When Choosing a Provider

  • Configuration: This is a multimodal model: use streamText or generateText and specify responseModalities: ['TEXT', 'IMAGE'] in providerOptions.google to receive image output. You can also set thinkingConfig.thinkingLevel to 'minimal' or 'high' to control reasoning depth per request.
  • Zero Data Retention: Zero Data Retention 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 Preview (Nano Banana 2)

Best for

  • Real-world grounded imagery: Image generation tasks that require grounding in current subjects, landmarks, or recent events
  • Technical diagram generation: Configurable thinking depth improves spatial accuracy and label placement
  • Unusual aspect ratios: Creative asset production requiring 1:4, 1:8 ratios or 512p resolution
  • Multimodal text and image output: Single-response workloads at flash-tier cost
  • Rapid complex visual iteration: Using the Minimal thinking level to balance speed and reasoning

Consider alternatives when

  • Highest image quality required: Your workflow supports pro-tier latency and cost (consider google/gemini-3-pro-image)
  • Pure image generation API: You do not need multimodal text output (consider google/imagen-4.0-generate-001)
  • Simple prompts: Thinking levels and search grounding add unnecessary overhead
  • Video output required: Still images are not sufficient (consider the Veo model family)

Gemini 3.1 Flash Image Preview (Nano Banana 2) Preview closes the gap between flash-tier generation speed and pro-level visual intelligence by adding search grounding, reasoning control, and broader format support. For teams that need current-event-aware imagery or complex diagrams at flash cost, it provides capabilities that earlier flash-tier models did not offer.

Copy link to headingFrequently Asked Questions

  • How does Google Image Search grounding work in this model?

    At generation time, the model can query Google's image index to retrieve live visual data for the subject you describe. This improves rendering accuracy for subjects that may not be well-represented in static training data, such as specific real-world locations or recent events.

  • What are the available thinking levels and when should I use each?

    minimal and high. Use minimal when speed is the priority and the prompt is relatively straightforward. Use high when the prompt requires precise spatial reasoning, complex diagram layout, or multi-element compositions where reasoning before rendering reduces errors.

  • What new aspect ratios are available in Gemini 3.1 Flash Image Preview (Nano Banana 2) Preview?

    1:4 and 1:8 aspect ratios alongside 512p resolution. These expand the model's usefulness for narrow-format creative assets such as web banners, vertical strips, and other non-standard formats.

  • Does this model support streaming?

    Yes. Use streamText from the AI SDK with responseModalities: ['TEXT', 'IMAGE'] in providerOptions.google.

  • Do I need to set responseModalities explicitly?

    Yes. Because this is a multimodal model, you must include responseModalities: ['TEXT', 'IMAGE'] in the provider options to receive image output. The model will not emit images without this configuration.

  • How does this model compare to Gemini 3 Pro Image?

    Gemini 3 Pro Image targets professional and creative workflows with higher resolution, higher multi-image input limits, and more advanced compositing support. Gemini 3.1 Flash Image Preview (Nano Banana 2) Preview prioritizes generation speed and cost efficiency while adding grounding and thinking capabilities that were absent from the original flash-tier image model.

  • Can I use this model for real-time applications?

    Yes, its flash-tier cost and speed profile are designed for production workloads. Using thinkingLevel: 'minimal' minimizes additional latency from the reasoning step.

  • What does includeThoughts: true return?

    It streams the model's reasoning tokens before the generated image, giving visibility into how the model interpreted the prompt and planned the composition. This is useful for debugging prompts that produce unexpected output.

Your use is subject to Google's Terms & Privacy Policies.