Skip to content

Google Gemini

Gemini models are called through /v1/chat/completions; the same models are also available on /v1/responses. All of them accept text, image, video, audio, and PDF input, and produce text.

ModelContextMax outputThinking levels
google/gemini-3.7-flash1,048,57665,536low, medium, high
google/gemini-3.6-flash1,048,57665,536minimal, low, medium, high
google/gemini-3.5-flash1,048,57665,536minimal, low, medium, high
google/gemini-3.5-flash-lite1,048,57665,536minimal, low, medium, high
Terminal window
curl "$LLMTR_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer llmtr-your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "google/gemini-3.7-flash",
"messages": [
{ "role": "user", "content": "Find the bug in this function." }
],
"max_tokens": 2048
}'

The level can be set two ways; if both are present, the body field wins.

  1. Model slug suffix: google/gemini-3.7-flash:low
  2. Body field: { "reasoning": { "effort": "low" } }
Terminal window
curl "$LLMTR_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer llmtr-your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "google/gemini-3.7-flash",
"reasoning": { "effort": "high" },
"messages": [
{ "role": "user", "content": "Analyse the complexity of this algorithm." }
]
}'

This is its only structural difference from the rest of the family. Gemini 3.7 Flash accepts low, medium, and high only, and defaults to medium. Sending minimal is rejected by the gateway before the request reaches the upstream:

{
"error": {
"type": "invalid_request",
"message": "Model gemini-3.7-flash does not support reasoning effort \"minimal\". Supported: low, medium, high"
}
}

xhigh and max exist on no Gemini model; Gemini uses the thinkingLevel field, which does not recognise those two values.

For the general suffix rules see Reasoning Effort.

The figures below are Google's own list prices, in USD per 1M tokens. No LLMTR margin is added to model prices; the platform margin applies to credit top-ups only.

Google published a time-limited introductory rate for this model. It ends at the close of 31 December 2026 and switches to standard pricing on 1 January 2027:

ItemThrough 2026-12-31From 2027-01-01
Input (text, image, video, audio)$0.75$1.50
Output (including thinking tokens)$3.75$7.50
Context cache read$0.075$0.15
Cache storage (1M token-hours)$0.50$1.00

The switchover is automatic. The catalog holds both rates on record and applies whichever is in force, so the price page and billing change themselves on 1 January 2027.

ModelInputOutputCache read
google/gemini-3.6-flash$1.50$7.50$0.15
google/gemini-3.5-flash$1.50$9.00$0.15
google/gemini-3.5-flash-lite$0.30$2.50not published

Google Search and Google Maps grounding bill at $14 per 1,000 queries on every model.

Google has not published a confirmed context cache price for Flash-Lite. Since a guessed discount would misbill, that row carries no cache rule: tokens read from cache are billed at the standard input price.

When the upstream serves part of a request from cache it reports that as cachedContentTokenCount. Those tokens are included in the total input count, not added on top. The gateway deducts them from the input line and bills them separately at the cache read rate; the same split is visible in the usage payload:

{
"usage": {
"prompt_tokens": 12809,
"prompt_tokens_details": { "cached_tokens": 12801 },
"completion_tokens": 16,
"total_tokens": 12825
}
}

cached_tokens is populated only when Google actually reports a cache hit. When it does not, the whole input is billed at the standard input price.

All four models support parallel function calling and JSON schema structured outputs. Usage matches the OpenAI format; see Tool Calling for details.

Image, video, audio, and PDF input are sent as standard OpenAI content parts. For examples see Images, Audio, and Files.