Gemini 3.8 Flash via API: setup, pricing and bulk workloads
How to connect Gemini 3.8 Flash with a Zukko key, what a million short requests cost, and which models to compare it with for bulk work.
5 min · · models · автоматизация
Gemini 3.8 Flash is one of the cheapest models in the Zukko catalogue, and it is most often used for bulk processing: classification, labelling, extracting fields from short texts. Below is how to connect the Gemini 3.8 Flash API with a Zukko key, what it does and does not support in our catalogue, and what a million short requests cost compared with neighbouring models.
Gemini 3.8 Flash pricing in Zukko
The model ID is gemini-3.8-flash. Prices in dollars per 1M tokens as of 6 October 2026:
| Parameter | Value |
|---|---|
| Input | $0.025 |
| Output | $0.088 |
| Cache read | $0.013 (if the provider reports it in the response) |
| Cache write | not charged separately |
| Context | 1M tokens |
| Image input | no |
| Vendor's official price, input / output | $0.75 / $3.75 |
The intelligence index in the catalogue is 41 (the Intelligence Index from Artificial Analysis, a composite benchmark score). Models and prices change: current data is at GET https://api.zukko.pro/v1/models or on the Models page in the dashboard.
Connecting the Gemini 3.8 Flash API
The model is called through the same OpenAI-compatible address as the others. No separate Google SDK is needed — the openai package works:
from openai import OpenAI
client = OpenAI(base_url="https://api.zukko.pro/v1", api_key="fetch_your_key")
resp = client.chat.completions.create(
model="gemini-3.8-flash",
messages=[
{"role": "system", "content": "Classify the review sentiment. Answer with one word: positive, negative or neutral."},
{"role": "user", "content": "Delivered a day late, but the courier was polite and the item arrived intact."},
],
max_tokens=10,
)
print(resp.choices[0].message.content)The same with curl:
curl https://api.zukko.pro/v1/chat/completions \
-H "Authorization: Bearer fetch_your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.8-flash",
"max_tokens": 10,
"messages": [{"role": "user", "content": "Translate into Russian: delivery takes 5 days"}]
}'If you need the Anthropic format, the model also works through POST /v1/messages — the gateway converts the request.
Image input: not in our catalogue
In the Zukko catalogue gemini-3.8-flash is not marked as accepting images — send it text only. If your task involves scans, screenshots or photos, pick a model with image support, for example:
| Model | Input / output, $ per 1M | Intelligence index |
|---|---|---|
deepseek-v4-pro | 0.088 / 0.25 | 36 |
qwen3.8-max | 0.1 / 0.263 | 45 |
gpt-6-sol | 0.13 / 0.63 | — |
gpt-6.1-sol | 0.27 / 1.32 | 52 |
A workable setup for a mixed stream: text tasks go to Gemini 3.8 Flash, image tasks to one of the models in the table. They share the key and balance; only the model field changes.
The math: a million short requests
Take a typical bulk task: 1,000,000 requests, each with 300 input tokens (instruction plus a short text) and a 100-token answer. That is 300M input tokens and 100M output tokens.
Formula: cost = input (millions) × input price + output (millions) × output price.
For Gemini 3.8 Flash: 300 × 0.025 + 100 × 0.088 = 7.5 + 8.8 = $16.30.
At the vendor's official price: 300 × 0.75 + 100 × 3.75 = 225 + 375 = $600.
The same workload on other low-cost Zukko models:
| Model | Calculation | Total | Intelligence index | Context |
|---|---|---|---|---|
gemini-3.8-flash | 300 × 0.025 + 100 × 0.088 | $16.30 | 41 | 1M |
deepseek-v4.1-flash | 300 × 0.013 + 100 × 0.038 | $7.70 | 39 | 1M |
gemini-3.7-flash | 300 × 0.013 + 100 × 0.05 | $8.90 | — | 1M |
glm-5.3-flash | 300 × 0.04 + 100 × 0.04 | $16.00 | 42 | 128K |
gpt-6-luna | 300 × 0.04 + 100 × 0.21 | $33.00 | 38 | 1M |
What the table shows: on this workload DeepSeek V4.1 Flash and Gemini 3.7 Flash are cheaper than Gemini 3.8 Flash, and GLM 5.3 Flash costs almost the same with an index of 42 but a 128K context. Index values are a composite score on other people's tasks; only a test will show which model handles your labelling better. A detailed comparison of the two cheapest options is in the article DeepSeek or Gemini Flash.
Note the structure of the bill: of Gemini 3.8 Flash's $16.30, $8.80 is output. Limit max_tokens and ask for a short answer format — that is a direct saving. Check completion_tokens in usage on a trial batch: if the model reasons before answering, actual output can be larger than the visible text.
How to run bulk processing
A few practical rules:
- Start with a trial batch. Run 200–500 requests, compute the average
prompt_tokensandcompletion_tokensfromusage, and multiply by the full volume. That beats any estimate. - A separate key for the job. In the dashboard you can give a key a daily and monthly dollar limit and a list of allowed models — for example, only
gemini-3.8-flash. A bug in a loop will not eat your balance. - Handle 429. Zukko has no general rate limit of its own: a 429 means the key's limit is used up (
key_daily_limit_reached/key_monthly_limit_reached) — then retrying won't help — or a limit on the model provider's side. In the second case limit concurrency and retry with a pause; theopenaiSDK makes a few retries itself. - Protect against double billing. If the pipeline restarts, send an
Idempotency-Keyheader with a unique value per row: repeating a successful request with the same key returns the stored response without a second charge. Details — in the section on key limits and caching.
An example with limited concurrency:
import asyncio
from openai import AsyncOpenAI
client = AsyncOpenAI(base_url="https://api.zukko.pro/v1", api_key="fetch_your_key")
sem = asyncio.Semaphore(10)
async def classify(row_id: int, text: str) -> str:
async with sem:
resp = await client.chat.completions.create(
model="gemini-3.8-flash",
messages=[
{"role": "system", "content": "Answer with one word: positive, negative or neutral."},
{"role": "user", "content": text},
],The cost of a single request is in the X-Zukko-Cost-Micros header (on non-streaming responses); daily totals are in the Usage section. General request parameters are in the /v1/chat/completions reference.
To try it, create a key on the API keys page and run a trial batch on your own data.
FAQ
Can I send Gemini 3.8 Flash an image?
Image input is not marked for this model in the Zukko catalogue. For tasks with images use a model that supports them, such as deepseek-v4-pro or gpt-6.1-sol.
What do a thousand short requests cost?
With 300 input and 100 output tokens: 0.3 × 0.025 + 0.1 × 0.088 = 0.0075 + 0.0088 = $0.0163.
Does caching help with short requests?
A cache read for this model costs $0.013 versus $0.025 for input (counted if the provider reports it in the response; writes are not charged separately), but only the repeating beginning of a request is cached. At 300 tokens per request there is almost nothing to repeat, so the calculations above ignore caching — they are an upper bound.
How do I pay from Russia?
The dollar balance can be topped up via SBP, a Russian bank card or cryptocurrency; the minimum is $1.
zukko
Pay 25×
less
for Claude Code & ChatGPT
One fetch_* key and base URL api.zukko.pro — for Cursor, Claude Code, Codex, and any SDK.
Related articles
- Fiction with AI: how to write together, not instead of youHow to work with a model on prose: build a project bible, hold the style, edit in passes and estimate the cost of a long text.
- xAI Grok API: Connecting Grok 4.7, Price and the 256K ContextHow to call grok-4.7 through an OpenAI-compatible API, what to do about the 256K context limit and what typical requests cost. Plus a comparison with Grok 4.6.
- GPT-6 Astra or Claude Fable 5.1: Two Top Models by Price and IndexTwo premium models with the same intelligence index and different Zukko prices. We price a single request and an agent session with cache, and explain how to choose on your own data.
- Qwen or DeepSeek via API: Price, Context and Intelligence IndexFour models, one task and an honest calculation: what a run costs on Qwen 3.8 Max and Flash versus DeepSeek V4 Pro and V4.1 Flash.