Nano Banana 2.1 API
Google's latest efficient image generation and editing model, with stronger text, prompt adherence, and character consistency.
Nano Banana 2.1 is an image generation model from Google, available on OttoPort's OpenAI-compatible API as the model ID nano-banana-2.1 at $0.088 / image as of 2026-10-14.
Provider
Price
$0.088 / image
Model ID
nano-banana-2.1
Type
image generation model
Create with Nano Banana 2.1
image
Nano Banana 2.1 API pricing
What OttoPort bills for Nano Banana 2.1, and what that works out to per unit. Rates are read from the same catalog the gateway meters against, and were current on 2026-10-14.
| Per image | $0.088 | at the model's base resolution |
|---|---|---|
| Images per $1 | 11 | |
| 100 images | $8.80 | |
| Up to 1024px longest side | $0.088 | 1× the base rate |
| Up to 2048px longest side | $0.132 | 1.5× the base rate |
| Up to 4096px longest side | $0.176 | 2× the base rate |
No subscription and no minimum — OttoPort bills prepaid credits against usage. See the full rate card.
Call Nano Banana 2.1 in three lines
Send "model": "nano-banana-2.1" to POST https://ottoport.ai/api/v1/images/generations with an OttoPort key. No Google account, no waitlist, no separate SDK.
curl https://ottoport.ai/api/v1/images/generations \
-H "Authorization: Bearer $OTTOPORT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2.1",
"prompt": "a chrome torus on a black background, studio light",
"size": "1024x1024",
"n": 1
}'from openai import OpenAI
client = OpenAI(api_key="op-...", base_url="https://ottoport.ai/api/v1")
resp = client.images.generate(
model="nano-banana-2.1",
prompt="a chrome torus on a black background, studio light",
size="1024x1024",
n=1,
)
print(resp.data[0].url)import OpenAI from "openai";
const client = new OpenAI({ apiKey: "op-...", baseURL: "https://ottoport.ai/api/v1" });
const resp = await client.images.generate({
model: "nano-banana-2.1",
prompt: "a chrome torus on a black background, studio light",
size: "1024x1024",
n: 1,
});
console.log(resp.data[0].url);Before you start
- 1. Create a key at /api-keys.
- 2. Top up credits — the smallest pack is $25.
- 3. Paste the request. It returns on the same request.
Full reference at /docs, or drive it from an agent with the MCP server and CLI.
Request parameters
The body POST https://ottoport.ai/api/v1/images/generations accepts for Nano Banana 2.1.
| Field | Type | Required | Notes |
|---|---|---|---|
| model | string | Yes | Always nano-banana-2.1 for Nano Banana 2.1. |
| prompt | string | Yes | What to generate. |
| size | string | No | e.g. 1024x1024. Resolutions above the base tier bill at a multiplier. |
| resolution | string | No | One of: 1k, 2k, 4k. Tiers above this model's base rate bill at a multiplier. |
| aspect_ratio | string | No | e.g. 16:9. Read only when size is absent. |
| n | integer | No | How many images to return. Each one bills separately. |
| image_url | string | No | A source image, for editing and reference-led generation. |
| image_urls | array | No | Several reference images at once, up to the model's limit — see its capabilities in /v1/models. Up to 14. |
Nano Banana 2.1 direct vs through OttoPort
Nano Banana 2.1 is the same model either way — what changes is how many accounts, keys, and integrations you carry to reach it.
| Google direct | Via OttoPort | |
|---|---|---|
| Accounts and keys | A Google account, plus one more for every other model you add | One OttoPort account and one key for the whole catalog |
| Request shape | Google's own SDK and response format | OpenAI-compatible — point baseURL at OttoPort and change the model string |
| Switching models | A new integration per provider | Replace nano-banana-2.1 with any other model ID in the catalog |
| Billing | A separate invoice and contract per provider | Prepaid credits, no subscription, one usage ledger |
| Provider outages | Your call fails | Configured backup routes are tried in order on provider failure |
Put the hero subject first.
Describe composition and lighting.
Specify format and visual style.
Nano Banana 2.1 API questions
Cost, keys, and model IDs for Nano Banana 2.1 on OttoPort.
How much does the Nano Banana 2.1 API cost?
On OttoPort, Nano Banana 2.1 costs $0.088 / image as of 2026-10-14. For scale, images per $1: 11. Billing is prepaid usage with no subscription and no minimum, and the current rate is always published at ottoport.ai/pricing.
How do I get a Nano Banana 2.1 API key?
You do not need a Google key. Create an OttoPort account, generate a key at ottoport.ai/api-keys, and send it as "Authorization: Bearer <key>" to POST https://ottoport.ai/api/v1/images/generations with "model": "nano-banana-2.1". The same key reaches every other model in the catalog.
What is the model ID for Nano Banana 2.1?
The OttoPort model ID for Nano Banana 2.1 is nano-banana-2.1. Pass it as the model field on POST https://ottoport.ai/api/v1/images/generations, or list it programmatically from GET https://ottoport.ai/api/v1/models.
Can I call Nano Banana 2.1 with the OpenAI SDK?
Yes. Set the OpenAI SDK's base URL to https://ottoport.ai/api/v1, use an OttoPort API key, and pass nano-banana-2.1 as the model. Image generation follows the OpenAI images shape, so existing code works after changing two lines.
Do I need a Google account to use Nano Banana 2.1?
No. OttoPort connects to Google on your behalf, so one OttoPort account covers Nano Banana 2.1 and every other model in the catalog — no per-provider contracts, keys, or invoices.
Other image generation models on the same API
Same endpoint, same key — swapping model is a one-string change from nano-banana-2.1.
GPT Image 2.5 Flare API
OpenAI
$0.026 / image
GPT Image 2.5 API
OpenAI
$0.026 / image
GPT Image 2 API
OpenAI
$0.07 / image
Nano Banana 2 API
$0.088 / image
Nano Banana 2 Lite API
$0.044 / image
GPT Image 1.5 API
OpenAI
$0.044 / image
Browse the full catalog — every model with its provider and per-unit price.