◉GEMINI LABJP
●ARGON — gemini-4-argon is generally available as of 10/13, aimed at complex coding, agents, math and science●DEEP RES — deep-research-pro-preview-12-2025 shuts down 10/23, 5 days left. Move to deep-research-preview-04-2026●NANO — gemini-nano-banana-2.1 is GA (10/06). gemini-3.1-flash-image is deprecated with no shutdown date yet●MCP — One write-up cut an 85,000-token tool result to 310 tokens by wrapping it in an ADK FunctionTool●FLASH — gemini-3.7-flash and 3.5-flash now route automatically to newer Flash models (10/08)●NEW — Stop Re-Reading Every Crash Report: Gre…●ARGON — gemini-4-argon is generally available as of 10/13, aimed at complex coding, agents, math and science●DEEP RES — deep-research-pro-preview-12-2025 shuts down 10/23, 5 days left. Move to deep-research-preview-04-2026●NANO — gemini-nano-banana-2.1 is GA (10/06). gemini-3.1-flash-image is deprecated with no shutdown date yet●MCP — One write-up cut an 85,000-token tool result to 310 tokens by wrapping it in an ADK FunctionTool●FLASH — gemini-3.7-flash and 3.5-flash now route automatically to newer Flash models (10/08)●NEW — Stop Re-Reading Every Crash Report: Gre…
Articles/Gemini Basics
◉ Gemini Basics/2026-10-18Beginner

Bought Credits but the Balance Still Says 0 — Which Page to Check First for the Gemini API

You bought Gemini API prepaid credits, yet the balance shows 0 and requests still fail with 402. Here is the order I use to tell a short delay from a real billing problem.

Gemini API250billing6prepaid402troubleshooting89

I've sat with the AI Studio Billing tab open, hitting reload, right after buying credits. The confirmation email had arrived. The balance still read 0, and my script kept failing. It's an uncomfortable few minutes.

What I'd like to say up front: the first page to check is AI Studio, not Cloud Billing. Below is why, and the order I follow after that.

Two different symptoms

"I paid but it doesn't work" can mean two things:

  • The balance on screen is stuck at 0 (a display problem)
  • Requests keep failing with HTTP 402 (the API is actually blocked)

According to Google's billing page, requests fail with 402 when the balance hits $0, and adding credits restores service, though there can be a short delay before the new balance is reflected. So for a few minutes after a purchase, both the screen and the API can still reflect the old state.

Step 1: Only AI Studio manages the balance

Prepaid balances are managed in the Billing tab of Google AI Studio. Cloud Billing shows Gemini API costs, but you can't manage the credit balance there.

Cost data in Cloud Billing also lags behind AI Studio usage, usually within a day and sometimes longer. A missing amount in Cloud Billing doesn't prove the payment failed.

Step 2: Check the payment method and the wait

Card payments are usually instant. Bank transfers and similar methods can take several days, and service resumes only after the purchase is confirmed.

SituationLikely readingNext move
Card, under 10 minutes agoStill propagatingWait, then reload AI Studio
Card, over 30 minutes agoPayment may not be confirmedCheck the receipt and purchase history in Billing
Bank transfer or similarCan take daysWait for confirmation
Balance is positive but calls failNot a balance issueGo to Step 3

The 10-minute figure follows the billing pipeline latency Google documents; I haven't timed it myself in a strict way.

Step 3: Positive balance, still blocked

If the balance is positive but requests fail, look beyond the balance. The billing page lists causes such as:

  • You've reached your tier's spend cap
  • A postpay problem on the same billing account (an unpaid bill for another Cloud service can suspend Gemini regardless of your prepaid balance)
  • The message "The billing account type is inactive or unsupported," meaning the account type or status isn't eligible for the paid tier
  • A canceled prepay setup that left the billing account in a state where it can't be charged

Only now do I open the Cloud Console to look at the billing account's status. Balance lives in AI Studio; account health lives in Cloud Console. Keeping that split avoids a lot of wandering.

For cap-related stops, I've written about separating retryable 429s from spend-cap exhaustion and spend caps per tier and project isolation.

Step 4: Let your own code tell you how it's stopping

Logging the result beats staring at a dashboard. This minimal script prints the status code and body, and separates "out of balance (402)" from everything else, so you don't have to eyeball it.

import os
import sys
import requests
 
# Read the key from the environment (YOUR_API_KEY never goes in source)
API_KEY = os.environ["GEMINI_API_KEY"]
MODEL = "gemini-3.8-flash"  # replace with the model you actually use
URL = f"https://generativelanguage.googleapis.com/v1beta/models/{MODEL}:generateContent"
 
resp = requests.post(
    URL,
    headers={"x-goog-api-key": API_KEY, "Content-Type": "application/json"},
    json={"contents": [{"parts": [{"text": "ping"}]}]},
    timeout=30,
)
 
print(resp.status_code, resp.text[:300])
 
if resp.status_code == 402:
    print("Likely out of balance: check the Billing tab in AI Studio")
    sys.exit(2)
if resp.status_code == 429:
    print("Likely a cap or quota: check tier limits and usage")
    sys.exit(3)
if not resp.ok:
    print("Not a balance issue: check billing account status, key, model name")
    sys.exit(1)

I split it this way because 402 and 429 point to different places. 402 means balance, 429 means a limit, and anything else points to the account or the key. The exit code alone tells me which step to go back to.

Three easy traps

  • Buying more credits while the first purchase is still propagating (the minimum is $5, unused credits expire after 12 months, and refunds are generally not offered)
  • Several projects sharing one billing account, so one empty balance stops every key at once
  • Reading an empty Cloud Billing page as "the payment never arrived"

The second one is easy to hit as an indie developer who keeps keys for several apps under one billing account. When the balance runs out, they all stop together.

Where I draw the line

During the first few minutes after a purchase, I stop touching the screen. Reloading doesn't speed anything up. I run the check script once, wait ten minutes if it still returns 402, and only then move on to the receipt, the purchase history, and the billing account status.

Balance in AI Studio, account health in Cloud Console. I keep that split even on a tired night.

Next time you buy credits, I'd suggest having the check script ready before you click Buy. That's where I started.

Share

Thank You for Reading

Gemini Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • ✦Copy-paste ready implementation code
  • ✦New advanced guides published daily
  • ✦$5/mo or $10 for lifetime access
View Membership →

If you found this article helpful, a small tip ($1.50) would mean a lot to us. Your support helps keep this site ad-free and covers server and hosting costs.

Related Articles

◉ Gemini Basics2026-10-08
Free Tier Shows Up, but You Get a 429 With `limit: 0` — What to Check in the First Hour of a New Gemini API Project
A new Gemini API project says Free tier, yet the very first call returns 429 with limit: 0. Here is the order I check things in, how to read the error body, and a 40-line script that tests models one by one.
◉ Gemini Basics2026-09-13
I edited the Drive doc, asked Gemini again, and it quoted the old sentence back
When Gemini answers from an outdated version of a Drive file, the file usually isn't the problem — the conversation is. Here's how sources stay attached for the whole conversation, why you can't remove one mid-thread, and what to do about partial reads.
◉ Gemini Basics2026-08-28
What decides whether your Gemini API data trains Google's models, and the one exception on the paid tier
Whether your Gemini API prompts feed model training is not settled by the paid tier alone. Here is how AI Studio and the API define paid differently, how dataset sharing reverses the protection, and what changes by region.