If Nano Banana is not working in Gemini, do not start with twelve random fixes. Start by identifying the route that failed: Gemini App, Search AI Mode, AI Studio/API, Flow, a wrapper, your account policy, active quota, API key, response parts, or a temporary service condition.
Use this stop rule: run one clean same-path verification, then stop repeating generic retries. A stuck Gemini App session may need a new chat or account check; an expected Nano Banana 2 route may not be broken; a missing Pro redo path may be plan, quota, region, age, or Workspace policy; an API failure may be model ID, key, limit, finish reason, or response parsing; a wrapper failure belongs to the vendor route after official checks.
The 12 checks below move in that order: surface, retry, route, Pro, account, prompt, device, status, model ID, response parts, limits, and support packet. Current API model names and key policy are date-sensitive, so verify them against your active project before treating old snippets as reliable.
Quick Answer: Check the Failed Route First
Nano Banana can fail in several places that look similar on screen. A hanging Gemini App request, an AI Mode daily-cap message, a Pro redo button that disappears, an API response with no image part, a Flow project issue, and a third-party wrapper queue all produce the same user feeling: Gemini image generation is not working. They do not share the same fix.

Use the first successful branch as the owner, not as proof that every other route is healthy. If Gemini web works while the mobile app hangs, the app branch is still broken. If the Gemini App works while your API call returns no image, the API branch still needs model, key, response, and limit checks. If a wrapper charges credits but the official route works, the wrapper owner is the first support path.
| Check | What to verify | First useful action | Stop rule |
|---|---|---|---|
| 1. Surface | Gemini App, AI Mode, AI Studio/API, Flow, or wrapper | Name the exact entry point that failed | Do not apply App fixes to API or wrapper failures |
| 2. Retry | Same account, same route, small prompt | Run one clean same-path verification | Stop after one clean repeated failure |
| 3. Route | Expected Nano Banana 2 route vs broken Pro path | Check whether the current route is actually expected | Do not call expected routing an outage |
| 4. Pro | Pro redo, eligible plan, active UI path | Try one small Pro redo only if the UI exposes it | Do not assume paid plan overrides every surface |
| 5. Account | Account, age, region, Workspace, plan state | Compare the same account on another official surface | Do not switch accounts before the same-account test |
| 6. Prompt | Prompt complexity and safety boundary | Reduce to one simple image request | Do not rewrite prompts endlessly |
| 7. Device | Browser, app version, network, cache | Change device or browser only after owner is known | Do not start with reinstall loops |
| 8. Status | Service condition, route condition, vendor condition | Check official status and route-specific reports | Do not treat one forum post as outage proof |
| 9. Model ID | Current API model name | Use gemini-3.1-flash-image or gemini-3-pro-image as intended | Do not use old model snippets blindly |
| 10. Response parts | Image part, MIME type, finish reason | Inspect all response parts, not only text | Do not call text output proof of removal |
| 11. Limits | RPM, TPM, RPD, IPM, project quota, key policy | Check active project limits and key restrictions | Do not rotate keys for capacity problems |
| 12. Support packet | Screenshot, timestamp, route, model, status, prompt class | Escalate with reproducible evidence | Do not send secrets or private account data |
When Gemini App or AI Mode Owns the Failure
Gemini App failures usually begin with session state, account state, or route state. On mobile, a stuck "Loading Nano Banana" screen deserves one small reset: close the app, update Gemini or the Google app if an update is pending, restart once, and start a fresh chat with a short image request. If web with the same account works, keep the branch on the mobile app. If web fails too, stop treating it as a mobile cache problem.
Nano Banana 2 output can be expected. Google's current Gemini image help describes Nano Banana 2 image generation and a paid-subscriber redo path for Nano Banana Pro on eligible routes. That means "I got Nano Banana 2" and "Nano Banana Pro is broken" are not automatically the same claim. The Pro branch begins when the surface promises or exposes a Pro redo route and that route is missing, hangs, falls back, or fails after one clean test.

Account restrictions are common enough to check early. A personal account, Workspace account, school-managed account, family-managed account, under-age account, regional availability state, and plan status may expose different controls. If the Pro path is missing in one route, compare the same account on another official route before changing accounts. If every official route fails with the same account, the owner is more likely account, eligibility, policy, limit, or service condition than device cache.
Search AI Mode is its own route. Google Search help describes AI Mode image generation as plan-based and subject to usage limits that can vary with demand, capacity, account, and region. If AI Mode says a Pro image path is unavailable or limited, debug AI Mode usage and capacity. Clearing Gemini App cache will not reset Search AI Mode capacity.
Prompt and input complexity should be reduced once, not rewritten all day. A long multimodal prompt, several reference images, sensitive content, or an infographic request near a policy boundary can make a route look unavailable. Test one simple safe image request. If the simple request works, rebuild the original request in smaller pieces. If the simple request fails on the same route, move to account, capacity, or route ownership.
When AI Studio or the Gemini API Owns the Failure
For developer routes, model identity is the first boundary. As of June 21, 2026, Google's image generation docs list Nano Banana 2 as gemini-3.1-flash-image, Nano Banana Pro as gemini-3-pro-image, and legacy Nano Banana as gemini-2.5-flash-image. Old snippets that include different image-model names should be treated as stale until they are checked against the active docs and your active project.
| API route | Use it when | Failure that belongs here |
|---|---|---|
gemini-3.1-flash-image | Nano Banana 2 image generation is enough | Wrong model, no image part, quota, safety, response parsing |
gemini-3-pro-image | The task needs the Pro image route | Wrong model, Pro unavailable in project, quota/capacity, response parsing |
gemini-2.5-flash-image | You are maintaining older Nano Banana behavior | Legacy compatibility, old output assumptions, migration checks |
The response matters as much as the request. Gemini image calls use generateContent, and generated images are returned in response parts. A client that prints only the first text part can make a successful image response look like a failure. Inspect every part, check for inlineData, verify mimeType such as image/png, and save the image data before deciding the model failed.
Finish reasons tell a different story from status codes. Image-related finish reasons can indicate safety, prohibited content, other image-generation failure, no image, or recitation-style stops. These are not the same as rate limits or capacity. When a response is valid but lacks an image part, capture the finish reason, prompt class, model ID, and full non-secret response shape.
Rate limits are project-specific. Google's Gemini rate-limit documentation frames limits as RPM, TPM, RPD, and IPM concepts that depend on project, tier, model, and account state. A public number copied from a blog post is less useful than the active limits shown for your project. For 429, reduce concurrency, lower request size, and check project quota before changing the prompt. For 503 or 504, use backoff, shorten the request, and verify the issue with one small image call before resuming a batch.
API key policy is also date-sensitive. Google's API key guidance says Google Cloud API keys should be restricted for Gemini API use, and standard unrestricted keys have new rejection behavior starting June 19, 2026 with a stricter path later in 2026. If an older script suddenly fails, do not only rotate the key. Check whether the key is a Google Cloud key, whether it is properly restricted, whether the project is correct, and whether the calling environment is using the expected credential.

Flow, No-Code Tools, and Wrappers
Flow is an official creative route, but it is not the Gemini App and it is not the same as a raw API request. A Flow project can fail because of project settings, export options, connector state, credits, or a route-specific product condition. If Flow works while the Gemini App hangs, the result means Google image generation is not universally unavailable for the account. It does not prove the Gemini App route is healthy.
Wrappers and no-code tools add another owner. A vendor can have its own queue, credits, policy layer, upload handler, prompt rewriting, model alias, connector, or logging problem. When a wrapper burns credits or returns an empty result, compare one official route if possible, then collect wrapper-specific logs and receipts. Google direct status alone does not resolve a vendor-owned failure.
Avoid treating a wrapper as the default fix for an official route failure. A different route can be useful when a workflow must finish quickly, but it changes support ownership, billing evidence, privacy assumptions, retry controls, and refund path. For this troubleshooting job, official Gemini App, Search AI Mode, Flow, AI Studio, API, and wrapper checks should stay separated.
Build a Useful Support Packet
Escalation works best when the evidence proves the owner. Before contacting Google support, a team admin, or a wrapper vendor, collect the exact surface, timestamp with timezone, account class, plan or Workspace context, prompt class, whether the prompt includes images or files, the exact visible error, and one alternate-route result.
For API cases, add the model ID, request endpoint, status code, request ID if available, response headers that are safe to share, finish reason, whether response parts included inlineData, and the active quota or rate-limit state. Redact API keys, private account tokens, full payment data, private images, and proprietary prompt content.
For wrapper cases, add the wrapper job ID, vendor dashboard status, credit/receipt record, selected model alias, uploaded input state, and whether the same prompt worked on an official route. The most useful sentence is not "Nano Banana is down." It is "Gemini API with gemini-3-pro-image returned 503 on a small image request at 2026-06-21 13:20 UTC, while Gemini App completed the same prompt; here is the redacted response shape."
Where to Go After the Owner Is Clear
If the visible issue is a status code, use the Nano Banana Pro error-code quick reference after the route owner is known. A 400, 403, 429, 500, or 503 branch needs a different response than a Gemini App loading loop.
If the question is quota, paid plan, or whether a Pro route is available, use the Nano Banana Pro pricing and quota guide. Pricing and quota claims change quickly, so keep that decision in a dedicated plan and API boundary.
If the API returns text or no image, use the Nano Banana Pro text instead of image guide. That branch is about response parsing, prompt wording, safety, and image parts, not only availability.
If the error is specifically 429, use the Gemini image generation error 429 fix. 429 belongs to rate, quota, or concurrency before it belongs to broad model availability.
If an account or region message blocks the route, use the Gemini not available in your region guide. Region and account controls should not be hidden inside a cache-clearing checklist.
FAQ
Why is Nano Banana not working in Gemini?
The most common reason is that the failure owner is being misidentified. Gemini App session loops, expected Nano Banana 2 routing, missing Pro redo, account policy, API model or key setup, active limits, Flow state, wrapper incidents, and temporary capacity can all look like "Nano Banana not working." Pick the surface first, run one clean verification, then follow that owner branch.
Is Nano Banana Pro gone from Gemini?
No. Nano Banana 2 may be the expected route in parts of Gemini, while Nano Banana Pro remains a specific Pro image route in eligible UI and API contexts. Treat Nano Banana 2 output as a route check before calling it removal.
Why does Gemini keep loading Nano Banana?
Run one clean same-path retry with a short image request. If it still loads forever, stop repeating the same prompt and branch by owner: Gemini App session, account state, AI Mode capacity, Pro redo path, Flow, API, wrapper, or service condition.
Why does my paid account still fail?
A paid plan can improve access on some surfaces, but it does not erase account policy, age, region, Workspace controls, route-specific quotas, capacity windows, API project limits, or wrapper ownership. Compare the same account on another official route before assuming the plan is the only variable.
Which Gemini API model ID should I use for image generation?
As of June 21, 2026, use gemini-3.1-flash-image for Nano Banana 2 image generation, gemini-3-pro-image for Nano Banana Pro image generation, and gemini-2.5-flash-image only when legacy Nano Banana behavior is intentional. Check Google's active image generation docs before copying older snippets.
Why does the API return text instead of an image?
The model may have returned text because the request was not routed as an image request, the prompt asked for instructions instead of generation, safety or image finish reasons applied, or the client only printed text parts. Inspect all response parts for inlineData and image MIME types before deciding the model failed.
What should I do for 429, 503, or 504?
For 429, check project limits, quota, request volume, and concurrency. For 503 or 504, treat the first move as transient capacity or backend delay: back off, shrink the request, and test one small image call. Do not rotate keys unless the key itself is the verified owner.
Can a wrapper fix Nano Banana when Gemini fails?
A wrapper can be an alternate route, but it changes support ownership. Use it only when that tradeoff is acceptable. If the wrapper fails, collect wrapper logs and receipts; do not debug it as a Gemini App cache problem.
What evidence should I send to support?
Send the route, timestamp, account class, prompt class, exact visible error, model ID if API, status code, request ID if available, response part shape, quota state, and alternate-route result. Remove API keys, private account tokens, private images, payment data, and proprietary prompts.



