Skip to main content
AI Development

Gemini Decisions API vs OpenAI: caching changes the cost

Gemini Decisions API matches OpenAI's $0.10 input rate but has no caching. Where each endpoint costs less, which inputs each takes, and what to check first.

Sean McLellan profile photo

Sean McLellan

Lead Architect & Founder

6 min read
Flat illustration on a cream background of a brass funnel dropping copper spheres into a brass splitter with three copper chutes that feed three shallow cream trays, the middle tray fuller than the others, beside a round brass gauge with a blank face and a copper needle
Constructed diagramIllustration: one input split into three scored outcomes, with a gauge for confidence. Not product UI.

Google launched the Gemini Decisions API on November 11, 2026. It's a new endpoint, run by the gemini-decision-1 model, that returns probabilities for yes/no, multiple-choice and rubric questions instead of generated text. It costs $0.10 per million input tokens with no output charge, the same uncached rate as the OpenAI Decisions API. For teams already sending routing or policy checks to a model, the choice between the two depends on what the input is and how much of it repeats.

The catch is caching. Google's docs say the Gemini endpoint "doesn't support context caching" and add: "Repeated input across requests counts in full." OpenAI charges $0.01 per million tokens for cached input. If every call carries the same long policy document or reference image, OpenAI can cost much less. If the input is a call recording, a video clip or a PDF, OpenAI's docs list no way to send it directly.

What is the Gemini Decisions API?

It's a scoring endpoint, not a chat endpoint. You send one shared input and a map of questions, and you get one typed answer per question, each with a confidence value from 0 to 1. The Decisions API docs define three question types:

  • noul (yes/no) returns the probability that a statement holds, always between 0.01 and 0.99.
  • choice picks one of 2 to 255 options you supply and returns a probability for each.
  • score rates the input on ordered rubric levels and returns a probability-weighted level, which can fall between levels.

A request can carry up to 1,000 questions over a 262,144-token context window. Google says the model scores options "in a single forward pass" with 150 to 250 ms end-to-end latency, and that, for contexts up to 16K tokens, latency stays "nearly flat from 1 to 100 questions per request." Those are Google's figures, not independent measurements.

The API runs on the Gemini Developer API, v1beta, with SDK 3.2 or later (google-genai for Python, @google/genai for JavaScript). Google says support for Gemini in Google Cloud is "coming soon."

How does it compare with the OpenAI Decisions API?

The two endpoints share a shape: three question types, input-only billing and a probability or confidence on every answer. They differ on inputs, question count, caching and data terms. The table below comes from each vendor's current docs and launch posts.

Scroll sideways to see all 3 columns.

Comparison dimensionGemini Decisions APIOpenAI Decisions API
Modelgemini-decision-1gpt-6-luna
Statusv1beta, launched Nov. 11, 2026Generally available since Oct. 22, 2026
Questions per requestUp to 1,000Up to 400
InputsText, images, audio, video, PDFText, images, JSON, conversation with tool calls
Uncached input$0.10 per 1M tokens$0.10 per 1M tokens
Cached inputNot available$0.01 per 1M tokens
Output tokensNot billedNot billed
Comparison diagram titled Gemini vs OpenAI Decisions API. Gemini: model gemini-decision-1, v1beta launched Nov. 11, 2026, up to 1,000 questions per request, text, image, audio, video and PDF inputs, $0.10 per 1M uncached input tokens, no caching, output not billed. OpenAI: model gpt-6-luna, generally available Oct. 22, 2026, up to 400 questions, text, image, JSON and conversation inputs, $0.10 per 1M uncached input tokens, $0.01 per 1M cached, output not billed.
Constructed diagramConstructed diagram based on Google AI Studio docs and pricing (November 2026) and OpenAI's Decisions API launch post and guide (October 2026). Not product UI.

The input row is the hard boundary. OpenAI's Decisions guide says "files, audio, and item references aren't supported." Gemini accepts audio, video and PDF blocks directly, up to 100 MB of inline data per request (50 MB for PDFs). Google's own example pairs a call recording with account metadata in one request.

The reverse is also true. Gemini's docs say conversation history and tool-call blocks "aren't supported as input blocks," so an agent transcript has to be flattened to text first. OpenAI takes messages, function calls and their outputs as structured input.

When does caching change the bill?

Caching matters when a large, identical block of input repeats across many requests. OpenAI caches the shared input by default once the reusable prefix reaches 1,024 tokens. Gemini bills every input token on every call.

Here's an illustration at list prices. Suppose you check 1 million support tickets against the same 5,000-token policy document, and each ticket adds 200 tokens.

Scroll sideways to see all 3 columns.

1 million requestsGemini Decisions APIOpenAI Decisions API, cache hit on the document
Policy document (5,000 tokens)$500$50
Ticket text (200 tokens)$20$20
Total$520$70

That's BaristaLabs arithmetic, not a vendor figure. It assumes every OpenAI request hits the cache and leaves out OpenAI's cache-write charges, which its pricing guide lists separately. It also ignores accuracy, which neither vendor's numbers settle for your data.

On Gemini, shared input is billed once per request "no matter how many questions you evaluate." If you ask 300 questions about one document in a single request, you pay for the document once. The expensive pattern on Gemini is the opposite: the same long context sent again for every new item.

Short, unique inputs cost the same on both. A 400-token chat message routed to one of five queues has nothing to cache.

Gemini fits media inputs and long rule lists

BaristaLabs' interpretation: Gemini fits when the input is media or when one item needs a very long checklist.

  • Audio and video checks. Call-center QA, voicemail triage or clip moderation, where OpenAI's endpoint would need a transcription step first. Google says there are no "separate audio transcription and OCR costs."
  • Scanned documents. Claim forms or invoices as PDFs, scored directly.
  • Large rule sets. Checking one input against more than 400 rules in one call.

OpenAI's endpoint fits better when a long reference block repeats across calls, when the input is an agent conversation with tool calls, or when you need zero data retention or HIPAA support. OpenAI says both are available to eligible customers. The Google pages cited here don't mention equivalent terms for this endpoint.

What to check before sending real data

Three details in Google's docs can trip up a first integration.

The free tier uses your content to improve Google's products. The Gemini API pricing page marks free-tier content as "used to improve our products" and paid-tier content as not used. Prototype with synthetic or public examples until the project is on a paid tier. This is the same project-level care we covered when Gemini API began storing requests by default.

Option keys are sorted alphabetically. The API sorts choice keys in UTF-8 byte order, and ties go to the alphabetically first key. Google warns against keys like none_of_the_above, because alphabetical sorting places them ahead of keys like shipping and technical instead of last. Use a plain catch-all such as other with its own description.

Yes/no answers stop at 0.99. A threshold above 0.99 never matches. Set thresholds from labeled examples, as Google recommends, and check what a confidence of 0.9 actually means on your traffic. Our guide to calibrating AI scores before an approval threshold walks through that.

If you call models through Vercel AI Gateway, check the route. Vercel says its TypeSafe-compatible and Decisions APIs support text and image inputs for this model, and PDF, audio and video inputs are supported through AI SDK 7.

BaristaLabs recommends picking one decision your app already makes at volume and running it on both endpoints before moving traffic.

  1. Pull 200 to 500 past items that a person already labeled, such as ticket queues or a pass/fail policy check.
  2. Write the same questions for both APIs. Keep option descriptions short and distinct, and include an other option.
  3. Record accuracy per confidence band, plus input tokens per request from each response's usage field.
  4. Price a month at your real volume, counting how much of each request is repeated context.
  5. Keep real customer data out of any free-tier Gemini project.

If your current setup is a chat model with a parsing step, the same labeled set can also show whether a local decision model such as Ollama's d3 would do the job without a hosted call. For help setting up the comparison, see BaristaLabs AI consulting.

Sources and scope

BaristaLabs did not call either API for this post. Latency, cost and accuracy figures are vendor-reported, and the cost table is illustrative arithmetic at list prices.

Decision API selection

Test one routing decision on both endpoints

Bring one decision your app makes at volume and a few hundred labeled examples. BaristaLabs can help run it on the Gemini and OpenAI Decisions APIs, compare accuracy by confidence band, and price a month at your real traffic.

One decision and its labeled history are enough to start.

Turn this idea into a pilot

Which workflow should go first?

Use the readiness check to compare impact, effort, risk, owner, and next step before requesting a review.

  • 3-5 minutes
  • Deterministic score
  • No sensitive data
Check workflow readiness

Practical AI Workflow Notes

Want more practical AI operations ideas?

Get short notes on applying AI inside real small-business workflows — from document handling and customer follow-up to internal reporting, compliance, and automation guardrails.

A useful next step if you’re still exploring and not ready to request a 20-minute workflow assessment.

Occasional emails. Practical workflow guidance only. Unsubscribe anytime.