Nano Banana Pro
nano-banana-proComplex scenes, text in images, and product shots, in 1K, 2K, and 4K.



- Price from
- $0.04
- Resolutions
- 1K, 2K, 4K
- Average time
- 39 s
- Success rate over 7 days
- 99 %
- Images over 7 days
- 297 thousand
- Updated
Couldn’t load the 7-day stats.
01Playground
Try Nano Banana Pro
Prompt, reference images, aspect ratio, and resolution, all without code. The code of the same request is one button away.
02Pricing
Nano Banana Pro pricing
The official Google price and ours. No subscription: you pay from your balance only for successful images.
| Resolution | Official Google price | Rendergrid | Savings | For $10 |
|---|---|---|---|---|
| 1K | $0.134 | $0.04 | 70% | 250 images |
| 2K | $0.134 | $0.04 | 70% | 250 images |
| 4K | $0.24 | $0.07 | 70% | 142 images |
At Google’s official price: $1,340, savings of $940
From $1,000 per month—send a request and we’ll work out custom terms.
03Examples
Made with Nano Banana Pro
Six images from this model, with their prompts. “Open in the playground” fills the prompt and parameters into the form.

Portrait of an elderly fisherman in a yellow waterproof coat on a deck, light drizzle, gray sea, cinematic lighting, film grain, 85 mm lens, deep wrinkles, gaze turned to the side

Scandinavian living room at sunset: linen sofa, oak floor, handmade ceramics, large windows, warm low-angle light, architectural photography, 24 mm lens

Perfume advertising shoot: a rectangular bottle of thick clear glass with amber liquid and a thin inscription "ÉCLAT DU BASALTE" stands on wet black basalt, water droplets all around, soft backlighting, deep shadows, minimalism, premium studio photography

Flat-style infographic on a light background: the headline “How a solar panel works” and four steps from left to right, each with an icon and a short caption: “1. Light hits the panel”, “2. The cells generate current”, “3. The inverter converts the current”, “4. Power goes to the house”. An even grid, a single palette, large readable text.

Ramen in a black ceramic bowl, steam, egg, green onions, sesame seeds, dark wooden table, angled top-down view, restaurant food photography

Isometric 3D illustration of a small town on an island: a lighthouse, a harbor with boats, colorful houses, trees, soft pastel colors, clay texture
04API
One request, one image
POST /images/ responds with 202 and an ID. Get the result by polling GET /creations/ or with a webhook.
| Parameter | Type | What to pass |
|---|---|---|
modelrequired | string | nano-banana-pro |
promptrequired | string | What to draw: subject, style, lighting, text in the image. Up to 20,000 characters. |
resolution | string | 1K, 2K, or 4K. If omitted: 2K. |
aspect_ratio | string | 1:1 16:9 9:16 4:3 3:4 2:3 3:2 5:4 4:5 21:9, or auto |
image_file_ids | string[] | Up to 14 file IDs from POST /uploads, as reference images: PNG, JPEG, or WebP. For a text-only request, leave the field out. |
image_urls | string[] | Instead of files: from 1 to 14 public links to images. Don’t mix them with image_file_ids. |
webhook_url | string | An address for the event about completion or an error, instead of polling. |
X-Idempotency-Keyheader | string | Repeating a request with the same key won’t create a second request or a second charge. |
Pass an address in the webhook_url field and we’ll send a creation.completed or creation.failed event. Verify the signature with the secret from the portal, in the “Webhooks” section; the delivery log and a test send are there too.
curl https://api.rendergrid.io/ api/ public/ v1/ images/ generate \ -H "Authorization: Bearer $RENDERGRID_API_KEY" \ -H "Content-Type: application/json" \ -H "X-Idempotency-Key: 7b3e0c2a-0001" \ -d '{ "model": "nano-banana-pro", "prompt": "Jazz festival poster. A large headline \"NORTHERN WIND\", below it a line \"Jazz by the Sea · August 14–16 · Kaliningrad\". Swiss typography, blue and orange, abstract waves, paper texture", "resolution": "1K", "aspect_ratio": "3:4" }' # then the status and links to the result curl https:// api.rendergrid.io/ api/ public/ v1/ creations/ 8f2c41a9-1710-4917-ae39-f3374ea1952c \ -H "Authorization: Bearer $RENDERGRID_API_KEY"
import os, time, requests API = "https://api.rendergrid.io/ api/ public/ v1" headers = {"Authorization": f"Bearer {os.environ['RENDERGRID_API_KEY']}"} job = requests.post(f"{API}/images/generate", headers=headers, json={ "model": "nano-banana-pro", "prompt": "Jazz festival poster. A large headline \"NORTHERN WIND\", below it a line \"Jazz by the Sea · August 14–16 · Kaliningrad\". Swiss typography, blue and orange, abstract waves, paper texture", "resolution": "1K", "aspect_ratio": "3:4", }).json() # 202: {"id": "…", "status": "queued", "task_id": "…", "cost": 0.04} while True: c = requests.get(f"{API}/creations/{job['id']}", headers=headers).json() if c["status"] in ("completed", "failed"): break time.sleep(5) print(c.get("result_urls"))
const API = "https://api.rendergrid.io/ api/ public/ v1"; const headers = { Authorization: `Bearer ${process.env.RENDERGRID_API_KEY}`, "Content-Type": "application/json", }; const job = await fetch(`${API}/images/generate`, { method: "POST", headers, body: JSON.stringify({ model: "nano-banana-pro", prompt: "Jazz festival poster. A large headline \"NORTHERN WIND\", below it a line \"Jazz by the Sea · August 14–16 · Kaliningrad\". Swiss typography, blue and orange, abstract waves, paper texture", resolution: "1K", aspect_ratio: "3:4", }), }).then((r) => r.json()); // 202: {"id": "…", "status": "queued", "task_id": "…", "cost": 0.04} let c; do { await new Promise((r) => setTimeout(r, 5000)); c = await fetch(`${API}/creations/${job.id}`, { headers }).then((r) => r.json()); } while (c.status === "queued" || c.status === "processing"); console.log(c.result_urls);
{
"id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"status": "queued",
"task_id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"cost": 0.04
}{
"id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"status": "completed",
"result_urls": [
"https:// …"
]
}{
"id": "8f2c41a9-1710-4917-ae39-f3374ea1952c",
"status": "failed",
"error": "The image or prompt was rejected by the safety filter. Try a different image or rephrase the prompt.",
"failure": {
"type": "declined",
"code": "content_policy",
"retryable": false
}
}{
"error": {
"code": "ERR_INSUFFICIENT_BALANCE",
"message": "insufficient api wallet balance",
"details": { "required": 0.04, "available": 0.0 }
}
}05Description
What Nano Banana Pro can do
A Google model for generating and editing images. It handles complex scenes, writes readable text, and works carefully with light and materials.

Readable lettering in Russian and English
Headlines, dates, and captions on posters, packaging, and in infographics. Put the text you need in quotes so the model carries it onto the image more accurately.
nano-banana-pro · 1K · 3:4 · $0.04

The product, captions, and icons in one frame
A finished marketplace card: a clean background, short benefits with icons, a neat layout with no manual assembly.
nano-banana-pro · 1K · 1:1 · $0.04

Complex scenes with callouts and captions
Cutaways, technical drawings, and labeled diagrams: the model holds a composition of many details and doesn’t lose small text.
nano-banana-pro · 1K · 4:3 · $0.04
Specifications and what to keep in mind
- Maker
- ID
nano-banana-pro- Resolutions
- 1K, 2K, and 4K
- If omitted
- 2K · aspect ratio 1:1
- Reference images
- up to 14 · PNG, JPEG, WebP · up to 25 MiB
- Average time
- 39 s
- If no resolution is given, it is 2K.
automode: with a reference image the model usually follows the aspect ratio of the first one; without one the aspect ratio is not guaranteed, so if your layout depends on it, passaspect_ratioexplicitly.- One request, one image. For a series, send several requests.
- A prompt is required, including with reference images, and can be at most 20,000 characters long.
- Reference images larger than 7 MiB or 4,096 pixels on the longer side may be downscaled or re-encoded; keep your originals.
- Masks are not supported: to change an image, pass it as a reference image and describe the edit in the prompt.
- Resolutions are size tiers, not pixels: the
widthandheightparameters are not accepted. - The result is stored for one day, so download the file to your own storage. A file ID is valid 24 hours after its upload. The stored file is deleted 48 hours after its last upload.
- The model may decline a prompt or a reference image: the request ends as
failed, and the money is returned.
Who it’s for
Product cards with captions, infographics, product photos on any background.
Key visuals, banners, and product shots without a studio.
Packaging mockups, posters, and illustrations for presentations and websites.
Covers, article illustrations, and images for social media.
How to write prompts
Five rules that most often improve the result.
- Subject first, then details. Who or what is in the frame, where, the lighting, and the angle; style and technique go last.
- Put text in quotes. Write the lettering verbatim: “NORTHERN WIND”. Short lettering comes out more accurately than long.
- Name the format. “Product card”, “poster”, “top-down view”, “infographic”: the model knows these genres.
- Use reference images for edits. Upload the product, face, or style you need to keep, up to 14 files, and describe in the prompt what to keep and what to change.
- Pick the resolution for the task. 1K and 2K cost the same, $0.04; 4K at $0.07 is for print and large banners.
Comparison with neighboring models
| Model | Strength | Resolutions | Price from | Average time |
|---|---|---|---|---|
| Nano Banana Prothis model | Text in images, complex scenes, product shots | 1K, 2K, 4K | from $0.04 | average 39 s |
| Nano Banana 2 | Photos and scenes that follow the prompt closely; elongated and panoramic aspect ratios | 1K, 2K, 4K | from $0.025 | average 34 s |
06FAQ
Questions about Nano Banana Pro
How much does one image from Nano Banana Pro cost?
How much cheaper is this than Google’s official price?
What happens if a generation fails?
Which resolutions and aspect ratios are supported?
auto, where the model picks the aspect ratio itself.How long does an image take?
GET /creations/ {id} or pass webhook_url. Poll no more than once every 5 seconds.Can I upload my own images?
POST /uploads and pass them in image_file_ids (up to 14), or send links in image_urls. PNG, JPEG, and WebP work, up to 25 MiB each. A file ID is valid 24 hours after its upload. The stored file is deleted 48 hours after its last upload.How do 1K, 2K, and 4K differ?
width and height parameters are not accepted. If your layout needs an exact size, check the dimensions of the file you receive.What does auto do in aspect_ratio?
auto.How do I get the result?
202 response contains an ID. With it, GET /creations/ {id} returns the status and result_urls; instead of polling, pass webhook_url and we’ll send an event when the image is ready. Result files are stored for one day.How do I pay?
Do you offer terms for high volumes?
07Similar
Similar models

Nano Banana 2
nano-banana-2Photos and scenes that follow the prompt closely — up to 4K
Currently unavailable: generation is disabled; the price stays the same.

Nano Banana 2.1
nano-banana-2.1Photorealism, lettering and reference-based edits — up to 4K
Currently unavailable: generation is disabled; the price stays the same.
08Articles
Articles about Nano Banana Pro

Nano Banana Pro vs GPT Image 2.5: a test on identical prompts
A poster, an infographic, and a product card on Nano Banana Pro and GPT Image 2.5: one prompt, one attempt each; prices, average waits where measured, and code.

The best image generation APIs: 10 models in one table
Ten Nano Banana and GPT Image models in one table: resolutions, price per image, the task each model suits, and its average wait where measured.

Nano Banana Pro product card prompts: 40 examples
Prompts for Nano Banana Pro product cards on stone, fabric, labeled infographics, and seasonal backgrounds, each with its image, model, and resolution, to copy.

High volumes
High volumes? Leave your contact and we’ll work out custom terms
A per-image price for your volume, limits for your traffic and a direct line on Telegram.
High-volume terms