Nano Banana 2 API

Generate images quickly with accurate text and coherent compositions. Suited to rapid iteration, product visuals and campaign assets.

Nano Banana 2 modes

Google · nano-banana-2

Text to image

Generate images quickly with accurate text and coherent compositions. Suited to rapid iteration, product visuals and campaign assets.

Put a prompt and "model": "nano-banana-2" on an image clip, and the render generates it and edits it into the video. To generate it on its own, send the same asset to the generate endpoint.

Built forProduct visuals · Campaign assets · Fast iteration

Nano Banana 2 output: A speckled stoneware mug of black coffee on a blush-pink backdrop
Nano Banana 2 “A speckled stoneware mug of black coffee on a blush-pink backdrop”
Technical specifications
InputText prompt
OutputImage
Resolution0.5K, 1K, 2K, 4K
Aspect ratiosauto, 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8
SeedSet a seed for repeatable results
{
  "asset": {
    "type": "image",
    "prompt": "A speckled stoneware mug of black coffee on a blush-pink backdrop",
    "model": "nano-banana-2",
    "options": {
      "aspectRatio": "4:3",
      "resolution": "1K"
    }
  },
  "length": 5
}
Example request to the generate endpoint.

Options

OptionValuesDefault
aspectRatioauto, 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8auto
resolution0.5K, 1K, 2K, 4K1K
seedinteger
systemPromptstring

Google · nano-banana-2-edit

Image to image

Edit images with natural-language instructions and up to 14 references. Suited to product retouching, style changes and combining images.

Put a prompt and "model": "nano-banana-2-edit" on an image clip, and the render generates it and edits it into the video. To generate it on its own, send the same asset to the generate endpoint.

Built forProduct retouching · Style changes · Combining images

The image the example starts from
Reference image
Nano Banana 2 Edit output: Change the backdrop to mustard yellow and keep the mug the same
Nano Banana 2 “Change the backdrop to mustard yellow and keep the mug the same”
Technical specifications
InputText prompt and up to 14 reference images
OutputImage
Resolution0.5K, 1K, 2K, 4K
Aspect ratiosauto, 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8
SeedSet a seed for repeatable results
{
  "asset": {
    "type": "image",
    "prompt": "Change the backdrop to mustard yellow and keep the mug the same",
    "model": "nano-banana-2-edit",
    "options": {
      "imageUrls": [
        "https://cdn.shotstack.io/au/v1/generations/35tqpmb0ya/f058f2dc-a092-53ec-be9b-7e918e373889.png"
      ],
      "aspectRatio": "4:3",
      "resolution": "1K"
    }
  },
  "length": 5
}
Example request to the generate endpoint.

Options

OptionValuesDefault
imageUrls (required)list of URLs, up to 14
aspectRatioauto, 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8auto
resolution0.5K, 1K, 2K, 4K1K
seedinteger
systemPromptstring

Pricing

Generation is paid in credits from the same balance as rendering, at what the model's provider charges plus a small margin. See AI generation pricing.

ModeCharged perPrice changes withLength a quote assumes without one
Text to imageImageResolution: 0.5K, 1K (default), 2K, 4K—
Image to imageImageResolution: 0.5K, 1K (default), 2K, 4K—

Get a quote

POST /generate/quote takes the same body as the generate endpoint and returns what that generation would cost. Nothing is generated, reserved or charged.

curl -X POST \
     -H "Content-Type: application/json" \
     -H "x-api-key: $SHOTSTACK_API_KEY" \
     -d '{
       "asset": {
         "type": "image",
         "prompt": "A speckled stoneware mug of black coffee on a blush-pink backdrop",
         "model": "nano-banana-2",
         "options": {
           "aspectRatio": "4:3",
           "resolution": "1K"
         }
       },
       "length": 5
     }' \
     https://api.shotstack.io/edit/stage/generate/quote

The response gives credits, the price of that request, and ceiling, which is true when the request has no length for a model charged by length, so the price is an estimate. Prices follow the providers, so ask again rather than storing one.

How it compares

Nano Banana 2 beside the other models in Shotstack that make the same thing.

ModelBest forModesMax resolutionAspect ratiosReference imagesSeedCharged per
Nano Banana 2Fast iteration, accurate text, product and campaign visualsText to image, Image to image4K14Up to 14YesImage
Nano Banana ProComplex compositions and precise typography, over speedText to image4K10—YesImage
GPT Image 2.5 SunburstHighly detailed images that follow complex prompts; slowerText to image, Image to image4K10Up to 16—Image
FLUX SchnellQuick, low-cost drafts and illustrationsText to image————Image, fixed price

Questions

Do I need an account with the model provider?
No. Generation runs on your Shotstack API key and is paid in credits from the same balance as rendering, so there is no separate account to open and nothing extra to integrate.
Do I pay again for the same asset?
No. Every generated file is stored against your account. An asset with the same type, model, prompt, options and length as one generated before reuses the stored file at no charge.
What happens if a generation fails?
A failed generation isn't charged. If a render fails after some of its assets were generated, those assets are kept, and rendering again reuses them at no charge.
Can I generate an asset without rendering a video?
Yes. POST the asset to the generate endpoint and you get back a URL to the file, to check it before you render, to reuse it across many edits, or to use it outside Shotstack.

Start free

  • 10 free credits to start
  • No credit card required