Nano Banana 2.1 API: price per image at 1K, 2K and 4K
Nano Banana 2.1 price per image at 1K, 2K, and 4K through Rendergrid, beside Google’s official price, with what a small balance buys and three sample images.
Rendergrid editorsAbout the editors
In brief
At Rendergrid, one Nano Banana 2.1 image costs $0.02 at 1K, $0.03 at 2K, and $0.04 at 4K. A failed request is free: the charge goes back to your balance at once.
Below: how many images $10 buys, how our price compares with Google’s official price, and three images from one prompt, one per resolution.
What does one Nano Banana 2.1 image cost at 1K, 2K, and 4K?
The price of an image depends on the model and the resolution, and one request makes one image. For Nano Banana 2.1, a Google model, the three resolutions are priced like this: $0.02 at 1K, $0.03 at 2K, and $0.04 at 4K. If you leave resolution out of a request, the model’s default applies, and for this model that is 2K. The pricing page lists every model and resolution.
How many images does $10 buy?
The bars show how many whole images $10 of balance buys at each resolution. The count is $10 divided by the price of one image, rounded down.
How does our price compare with Google’s official price?
Google publishes a price per image for this model, so the two prices can sit side by side. The official price comes from Google’s pricing page for developers, at the standard tariff and without batch mode.
| Resolution | Official Google price | Rendergrid | Savings | For $10 |
|---|---|---|---|---|
| 1K | $0.0336 | $0.02 | 40% | 500 images |
| 2K | $0.0504 | $0.03 | 40% | 333 images |
| 4K | $0.113 | $0.04 | 64% | 250 images |
What do 1K, 2K, and 4K look like?
We sent one prompt to Nano Banana 2.1 three times, once at each resolution, all 1:1, with one attempt each and none repeated. A 1K image is 1,024 by 1,024 pixels, a 2K image is 2,048 by 2,048 pixels, and a 4K image is 4,096 by 4,096 pixels.
One prompt for all three resolutions
Center a frosted cylindrical bottle with a white cap on a pale stone slab. Two fern fronds flank it without obscuring the bottle. Diffuse light creates delicate leaf shadows and reveals the fern veins and rough stone. Leave open margins around the complete product. No lettering, logos, people, or watermarks.
Nano Banana 2.1
nano-banana-2.1 · 1K · 1:1 · $0.02
Nano Banana 2.1, 1K, 1:1, one attempt. The bottle is centered and whole, with open space above it. A fern frond lies on each side and both run off the left and right edges, and the slab also runs off the right edge. Shadows of the bottle and the fronds fall on the stone, which is rough and pitted; the leaf shadows have fairly clear edges, harder than the diffuse light the prompt asked for. The prompt asked for no lettering and none appears. At this size the frond stems and the outlines of the leaflets are clear; finer veins are not.
Nano Banana 2.1
nano-banana-2.1 · 2K · 1:1 · $0.03
Nano Banana 2.1, 2K, 1:1, one attempt. The bottle is centered and the fronds come up to its sides without covering it; both fronds run off the left and right edges. The background is blurred beige and green. The prompt asked for diffuse light, but the shadows here have fairly clear edges: fern-shaped shadows lie on the slab in front of the bottle, mostly to its right. The leaflets show their midribs, and the slab edge is ragged. The bottle has no lettering.
Nano Banana 2.1
nano-banana-2.1 · 4K · 1:1 · $0.04
Nano Banana 2.1, 4K, 1:1, one attempt. This frame changes the viewpoint: it is taken from above, so the slab with its rounded corners is almost entirely in the frame, with its right edge close to the right edge of the frame. The bottle is centered, with a fern frond on each side that comes close to it without covering it. A curved shadow falls to the bottle’s right, and the stone shows cracks and pits. Inside the frosted body is a paler, rounded shape that the prompt did not ask for. The fronds are a darker, more muted green than in the other two frames. The bottle has no lettering.
Each frame is its own attempt, so the three differ in more than size: the bottle stands upright in the 1K and 2K frames, while the 4K frame is taken from above. They are three samples of one prompt, not a measurement of what each resolution does to an image.
How does the price show up in an API request?
The API charges the price when it accepts your request, before work starts, and returns the amount in the cost field of the 202 response, as a number in US dollars. If the request fails, the charge goes back to your balance at once. A GET /balance request shows your balance.
This request asks for one 2K image from the prompt above:
# Requires bash, curl and uuidgen. One idempotency key per request. IDEMPOTENCY_KEY="$(uuidgen)" || exit 1 curl --fail-with-body --max-time 30 \ -X POST https://api.rendergrid.io/ api/ public/ v1/ images/ generate \ -H "Authorization: Bearer $RENDERGRID_API_KEY" \ -H "Content-Type: application/json" \ -H "X-Idempotency-Key: $IDEMPOTENCY_KEY" \ -d '{ "model": "nano-banana-2.1", "prompt": "Center a frosted cylindrical bottle with a white cap on a pale stone slab. Two fern fronds flank it without obscuring the bottle. Diffuse light creates delicate leaf shadows and reveals the fern veins and rough stone. Leave open margins around the complete product. No lettering, logos, people, or watermarks.", "resolution": "2K", "aspect_ratio": "1:1" }'
import os import uuid import requests key = os.environ["RENDERGRID_API_KEY"] payload = { "model": "nano-banana-2.1", "prompt": "Center a frosted cylindrical bottle with a white cap on a pale stone slab. Two fern fronds flank it without obscuring the bottle. Diffuse light creates delicate leaf shadows and reveals the fern veins and rough stone. Leave open margins around the complete product. No lettering, logos, people, or watermarks.", "resolution": "2K", "aspect_ratio": "1:1", } response = requests.post( "https://api.rendergrid.io/ api/ public/ v1/ images/ generate", headers={ "Authorization": f"Bearer {key}", # a new key for every request; the same key when you repeat one "X-Idempotency-Key": str(uuid.uuid4()), }, json=payload, timeout=(10, 120), ) response.raise_for_status() creation = response.json() print(creation["id"], creation["status"], creation["cost"])
// Node.js 22+, .mjs file import { randomUUID } from "node:crypto"; const API = "https://api.rendergrid.io/ api/ public/ v1"; const response = await fetch(`${API}/images/generate`, { method: "POST", headers: { Authorization: `Bearer ${process.env.RENDERGRID_API_KEY}`, "Content-Type": "application/json", // a new key for every request; the same key when you repeat one "X-Idempotency-Key": randomUUID(), }, body: JSON.stringify({ model: "nano-banana-2.1", prompt: "Center a frosted cylindrical bottle with a white cap on a pale stone slab. Two fern fronds flank it without obscuring the bottle. Diffuse light creates delicate leaf shadows and reveals the fern veins and rough stone. Leave open margins around the complete product. No lettering, logos, people, or watermarks.", resolution: "2K", aspect_ratio: "1:1", }), signal: AbortSignal.timeout(120_000), }); if (response.status !== 202) { throw new Error(`HTTP ${response.status}: ${await response.text()}`); } const creation = await response.json(); console.log(creation.id, creation.status, creation.cost);
{
"id": "5b0214ae-9e39-460a-820a-f6ae3e24400b",
"status": "queued",
"task_id": "5b0214ae-9e39-460a-820a-f6ae3e24400b",
"cost": 0.03
}
{
"id": "5b0214ae-9e39-460a-820a-f6ae3e24400b",
"status": "completed",
"result_urls": ["https:// cdn.rendergrid.io/ images/ example/ result.jpg"]
}
Send a new idempotency key with every new image, and repeat a key only to repeat the same request, so you are not charged twice. Read about retries without a double charge.
The model’s parameters are on the Nano Banana 2.1 page. To send a first request step by step, read the quickstart guide.
Where does this price guide not fit?
- Prices can change. Check the pricing page before you plan a large batch.
- One tariff. The official price is Google’s standard tariff, so a batch-mode price is not compared here.
- One attempt per resolution. Another attempt of the same prompt can look different, so each image shows one outcome, not what every prompt will give.
- One model. Nano Banana Pro has its own prices: see the Nano Banana Pro price guide.
A failed request is free
Try Nano Banana 2.1 on your own prompt
Run your prompt on the model page, or send it through the API as shown above.
Open the playgroundQuestions and answers
How much does a Nano Banana 2.1 image cost?
How many images does $10 buy?
Do I pay for a failed request?
Which resolution is used if I don’t set one?
resolution to 1K or 4K to change it.Sources
- Google AI for Developers: API pricingThe official per-image price of Nano Banana 2.1, at the standard tariff and without batch mode. Checked on .
- Rendergrid pricingThe price per image for every model and resolution.
- Rendergrid docs: create an imageThe request, the
202response, and thecostfield. - Rendergrid docs: quickstartA key, a request, and the result.
- The three images in this articleOne prompt, Nano Banana 2.1, 1:1, one attempt at each of 1K, 2K, and 4K.





