Loading playground
Input
Additional Settings
Customize your input with more control.
Result
Idle
Customize your input with more control.
Customize your input with more control.
Customize your input with more control.
Text/thinking tokens (per 1M): $1.764 input, $8.823 output. Image tokens (per 1M): $1.764 input, $35.294 output. Changing the resolution parameter significantly affects cost. See the description at the bottom of this page for more details on how much canonical image sizes cost.
Text/thinking tokens (per 1M): $1.764 input, $8.823 output. Image tokens (per 1M): $1.764 input, $35.294 output. Changing the resolution parameter significantly affects cost. See the description at the bottom of this page for more details on how much canonical image sizes cost.
Google's latest image generation and editing model, now available as a text-to-image API on fal. Generate images at up to 4K from a text prompt, in aspect ratios from 8:1 panoramas to 1:8 vertical strips.
google/nano-banana-2.1 exposes Nano Banana 2.1 as a text-to-image endpoint. Describe the image you want and the model renders it at 1K, 2K, or 4K, with optional web search grounding and configurable thinking.
In Google's words, Nano Banana 2.1 "outperforms our previous models across the board, with notable leaps in visual design, mask-based editing, and subject consistency to help you create more natural-looking images." An update to Nano Banana 2 (Gemini 3.1 Flash Image), it keeps Flash-level speed and cost efficiency while delivering significant improvements in visual quality, prompt adherence, character consistency, and text rendering. Google positions it as the more efficient counterpart to Nano Banana Pro.
This is the same underlying model as google/nano-banana-2.1/edit, set up for generating images from scratch. To edit or combine existing images, use the edit endpoint.
Nano Banana 2.1 is billed on the tokens each request actually uses, as reported by Google. There are no flat per-image fees or surcharges for resolution, web search, or thinking; those settings only change how many tokens a request uses.
| Token type | Price per 1M tokens |
|---|---|
| Input (prompt text and images) | $1.764 |
| Output text and thinking | $8.823 |
| Output image | $35.294 |
The following table shows representative costs for one output image from a short prompt (about 100 tokens), with medium thinking:
| Output resolution | Text-to-image | Edit with two 1K input images |
|---|---|---|
| 1K | $0.040 | $0.044 |
| 2K | $0.059 | $0.063 |
| 4K | $0.134 | $0.138 |
This implies the following:
thinking_level defaults to medium; high uses more thinking tokens and costs more, and minimal costs less.num_images above 1, each image is its own generation, so cost scales linearly.Google reports improved visual quality and realism across 1K, 2K, and 5K output. 1K is the default; 2K (about 4 megapixels) and 4K (about 16 megapixels) suit print, large displays, and detailed crops.
Enhanced text rendering and infographic layout accuracy make Nano Banana 2.1 a strong fit for posters, menus, packaging, diagrams, and data-heavy layouts. Google highlights "generation of clear text for posters and intricate diagrams" and localized text rendering across several languages.
Beyond standard ratios from 21:9 to 9:16, the endpoint supports extreme 4:1, 1:4, 8:1, and 1:8 formats for banners, panoramas, and vertical strips. Google fixed the tiling artifacts that affected these formats at 2K and 4K.
According to Google, Nano Banana 2.1 uses "Gemini's real-world knowledge to deliver precise results and reflect the world around you, from complex infographics to historically accurate scenes." Set enable_web_search to true to ground the image in live Google Search results, such as current weather, recent events, or up-to-date product details.
The model reasons through a prompt before rendering, at medium by default. Set thinking_level to minimal for faster, more cost-effective results, or to high for demanding compositions such as dense infographics. In Google's evaluations, Nano Banana 2.1 with thinking outscored the no-thinking variant on every published benchmark and raised infographic factuality from 0.328 to 0.521.
Use system_prompt to set a persistent style, persona, or set of rules for the request, separate from the prompt that describes the image.
bashnpm install --save @fal-ai/client
bashexport FAL_KEY="YOUR_API_KEY"
javascriptimport { fal } from "@fal-ai/client"; const result = await fal.subscribe("google/nano-banana-2.1", { input: { prompt: "A vintage travel poster for Lisbon with the headline 'LISBOA' in bold Art Deco lettering, a yellow tram climbing a steep street at sunset, flat screen-print colors", }, logs: true, onQueueUpdate: (update) => { if (update.status === "IN_PROGRESS") { update.logs.map((log) => log.message).forEach(console.log); } }, }); console.log(result.data.images[0].url);
javascriptimport { fal } from "@fal-ai/client"; const result = await fal.subscribe("google/nano-banana-2.1", { input: { prompt: "A panoramic watercolor of the Amalfi Coast at golden hour, cliffside villages stepping down to a turquoise sea", aspect_ratio: "4:1", resolution: "4K", }, }); console.log(result.data.images[0].url);
javascriptimport { fal } from "@fal-ai/client"; const result = await fal.subscribe("google/nano-banana-2.1", { input: { prompt: "A clean, modern infographic of the 5-day weather forecast for Tokyo, with weather icons, daily highs and lows, and a short headline", enable_web_search: true, thinking_level: "high", resolution: "2K", }, }); console.log(result.data.images[0].url);
| Parameter | Type | Default | Description |
|---|---|---|---|
prompt | string | required | Text description of the image to generate (3 to 50,000 characters) |
aspect_ratio | enum | auto | Output aspect ratio. auto lets the model choose based on the prompt. See the values below |
resolution | enum | 1K | 1K, 2K, or 4K |
num_images | integer | 1 | Number of images to generate, from 1 to 4 |
output_format | enum | png | jpeg, png, or webp |
thinking_level | enum | medium | minimal, medium, or high. Higher levels use more thinking tokens |
enable_web_search | boolean | false | Grounds the generation in live Google Search results |
system_prompt | string | "" | Optional system instruction that steers style and persona for the whole request |
limit_generations | boolean | true | Experimental. When true, returns one image per generation and ignores prompt instructions about image count. Set to false to let the model return additional images and text |
safety_tolerance | enum | 4 | Moderation strictness, from 1 (most strict) to 6 (least strict) |
sync_mode | boolean | false | Returns images as data URIs directly; output excluded from request history |
| Category | Values |
|---|---|
| Automatic | auto |
| Landscape | 21:9, 16:9, 3:2, 4:3, 5:4 |
| Square | 1:1 |
| Portrait | 4:5, 3:4, 2:3, 9:16 |
| Extreme | 4:1, 1:4, 8:1, 1:8 |
| Resolution | Approximate size |
|---|---|
1K (default) | 1 megapixel |
2K | 4 megapixels |
4K | 16 megapixels |
The 512px (0.5K) option from Nano Banana 2 is not available on Nano Banana 2.1.
json{ "images": [ { "url": "https://v3b.fal.media/files/...", "content_type": "image/png", "file_name": "output.png", "width": 1024, "height": 1024 } ], "description": "" }
description holds any text the model returns alongside the images. It is usually empty unless limit_generations is false.
For production workloads, submit requests asynchronously and retrieve results via webhook or polling.
javascript// Submit const { request_id } = await fal.queue.submit("google/nano-banana-2.1", { input: { prompt: "...", }, webhookUrl: "https://your-server.com/webhook", }); // Check status const status = await fal.queue.status("google/nano-banana-2.1", { requestId: request_id, logs: true, }); // Fetch result const result = await fal.queue.result("google/nano-banana-2.1", { requestId: request_id, });
Infographics and diagrams -- Turn data, processes, and explanations into accurately laid-out visuals. Use thinking_level: "high" for dense layouts.
Posters, packaging, and localized marketing -- Render legible headlines, labels, and menus, including localized text in several languages.
Panoramic banners and vertical formats -- Generate 4:1 and 8:1 website heroes or 1:4 and 1:8 mobile strips at 2K or 4K.
Timely visuals -- Ground images in current weather, recent events, or live product information with web search.
High-volume creative iteration -- Flash-level speed and token-based pricing make it practical to explore many variations quickly.
To learn more, see Google DeepMind's Nano Banana 2.1 model card and Google's Gemini API documentation.
Results from Google's human side-by-side evaluations (Elo, higher is better), as published in the Nano Banana 2.1 model card:
| Text-to-image benchmark | Nano Banana 2.1 (Thinking) | Nano Banana 2.1 (No Thinking) | Nano Banana 2 (Thinking) | Nano Banana Pro |
|---|---|---|---|---|
| Overall preference | 1050 | 1015 | 990 | 935 |
| Infographic design | 1048 | 1001 | 961 | 912 |
| Infographic factuality* | 0.521 | 0.328 | 0.179 | 0.265 |
*Infographic factuality is an autorater score, not an Elo rating. See the model card for confidence intervals and methodology.
thinking_level to high for infographics, diagrams, and scenes with many elements.| Feature | google/nano-banana-2.1 | google/nano-banana-2.1/edit |
|---|---|---|
| Input images | Not used | Up to 14 via image_urls |
| Video and PDF context | No | Yes |
| Default aspect ratio | auto (chosen from the prompt) | auto (usually matches the input) |
| Use case | Generate from scratch | Edit, combine, or restyle existing images |
| Pricing | Same token rates | Same token rates; each input adds input tokens |