Google GenAI SDK: token-budget guardrails in one line
A hard monthly spend cap per workspace: past it, requests that would reach a provider get 402 budget_exceeded while cache hits still serve. Here is the change for Google GenAI SDK, the switch that turns it on, and the arithmetic on gemini-3.8-flash.
Google GenAI SDK reaches TokenZero with one base-URL argument and keeps your gemini key. 100,000 reference calls on gemini-3.8-flash cost $263 a month at list price; with monthly_budget_usd set to 500 the gateway returns 402 budget_exceeded once routed spend reaches $500.00 and resets on the first of the month, so a runaway loop cannot overspend.
· Source: pricing table 2026-10-26; overhead from the published benchmark on /benchmarks
At a glance
- Framework
- Google GenAI SDK (Python)
- Capability
- token-budget guardrails
- Change
- client.py: base URL argument
- Request shape
- Gemini native generateContent
- Turn it on
- X-TokenZero-Budget-Usd / -Spent-Usd / -Remaining-Usd / -Resets-At on every response
- Workspace setting
- monthly_budget_usd: 500
- Reference model
- gemini-3.8-flash ($0.75 in / $3.75 out per 1M, table 2026-10-26)
- Reference workload against a $500 budget
- $263/month on gemini-3.8-flash (computed)
- Gateway overhead (measured)
- 1.52 ms p50, 3.42 ms p95
- Parity floor
- 99.8%
- Free tier
- $500/month routed spend
Reference workload on gemini-3.8-flash: 2,000 input (1,500 static) / 300 output tokens, 100,000 calls per month, table 2026-10-26
| Scenario | Per call | Per month | Delta |
|---|---|---|---|
| List price, no gateway | $0.00262 | $263 | — |
| Static prefix cached (prompt compression) | $0.00161 | $161 | $101 (39%) |
| 20% exact-cache repeats | $0.00210 | $210 | $53 (20%) |
| All calls cascaded to gemini-3.5-flash-lite | $0.00135 | $135 | $128 (49%) |
| Budget guardrail at $500/month | — | capped at $500.00 | 402 after 190,476 calls |
The change
1. Point Google GenAI SDK at the gateway (client.py):
-client = genai.Client()
+client = genai.Client(http_options={"base_url": "https://tokenzero.sh"})
r = client.models.generate_content(model="gemini-3.8-flash", contents=prompt)The native /v1beta generateContent and streamGenerateContent paths are proxied; x-goog-api-key passes through.
2. Turn on token-budget guardrails. Per request: X-TokenZero-Budget-Usd / -Spent-Usd / -Remaining-Usd / -Resets-At on every response. Per workspace (applies to every call without touching code): PATCH /v1/workspaces/settings {monthly_budget_usd: 500} or the dashboard toggle.
3. Prove it. npx -y @tokenzero/cli doctor checks the gateway, the signer, the pricing table and your key; then watch spend against budget on the dashboard.
Questions people ask
How do I point Google GenAI SDK at TokenZero?
Pass base_url / baseURL = https://tokenzero.sh where Google GenAI SDK builds its client (client.py) and keep your gemini key; nothing else changes.
What does token-budget guardrails save on gemini-3.8-flash?
100,000 reference calls on gemini-3.8-flash cost $263 a month at list price; with monthly_budget_usd set to 500 the gateway returns 402 budget_exceeded once routed spend reaches $500.00 and resets on the first of the month, so a runaway loop cannot overspend.
Does token-budget guardrails change the model's output?
No. The guardrail only decides whether a request may reach the provider; past the cap it returns 402 with the reset time.
What does TokenZero cost?
Free up to $500 per month of routed spend; then 15% of verified savings with a 3x-ROI-or-$0 rule, capped plans available. Gateway overhead measured at 1.52 ms p50.