Preview

What it is.
Nano Banana is Google's name for the Gemini image models. It edits a photo you hand it and takes up to 14 reference images, which lets your logo anchor a whole batch.
This skill runs the batch around the model. Your colors come off your live site into a token file every prompt carries, and a CSV row per variant fills one template.
It generates once per aspect ratio and crops to each placement's exact pixels. A check runs before anything is spent and again on the files, and the batch isn't handed over until both pass.
What you get.
- A brand token file pulled from your live site, carried by every prompt
- GTM image jobs with templates, from a product in a scene to a translated ad
- Placement sizes for LinkedIn, Meta, Google Display, OG images and blog covers, each naming the page that states it
- A dry run that writes every prompt before anything is spent
- A contact sheet, plus a manifest linking every file to the prompt that made it
How to set it up.
Unzip it so the folder sits at ~/.claude/skills/nano-banana-gtm with SKILL.md at its root, then run pip install pillow.
Create a Gemini API key in Google AI Studio and export it as GEMINI_API_KEY. Google bills generation per image on that account.
Hand it your site's URL. extract_brand.py writes tokens.json, and you confirm the accent and save your logo as brand/logo.png.
Name the placements and write one template. Every text field that lands in the image gets a character budget in plan.json.
Run the plan check and a dry run, then read two prompts before spending anything.
Generate one row first and look at every placement. Then run the batch, and the file check in strict mode.
Pricing Plans
Free. MIT licensed.
Downloads as a zip from this page. Google bills image generation per image on your Gemini API account, so check current pricing on Google's site.
Use cases
Ad variants that match
You're testing hooks across LinkedIn and Meta. Put one headline per row in variants.csv, and every file comes back in your brand colors, cut to each placement.
Speaker photos for a webinar
The speakers sent photos in every kind of lighting. A headshot row per person keeps each face and swaps in a backdrop in your brand color, so the cards match.
One product shot, many settings
You have one clean product photo. The background-swap template keeps the product as it is and places it in a new setting per row.
The same ad in another language
The campaign is going to a second market. The localized template translates the lettering in the finished ad and keeps the layout, and a native speaker reads each file.
Best for
Teams running paid social and display
The pixel size and file-size cap are checked on every file before it reaches an ad account.
A brand that has to hold across variants
Colors come from one token file and the logo from one reference image.
Anyone already on the Gemini API
The skill adds no cost of its own, and a dry run shows the calls a batch will make.