Inference APIs
Compare/Chat

MiniMax M3 vs Gemini 2.5 Flash

MiniMax M3 is an open-weight chat model you can call on this endpoint; Gemini 2.5 Flash is a closed model from Google. Below: what each costs for three realistic workloads, the limits that apply, and when to choose which.

Google figures are public list prices and documented limits, checked 2026-09-16 against the provider page. Inference APIs prices are read live from the price list.

Short answer
  • Cost: It depends on the shape of the workload: MiniMax M3 is cheaper for chat assistant and generation-heavy, Gemini 2.5 Flash for long prompts or rag.
  • Limits: Google: Free tier has per-model daily request quotas and returns 429 RESOURCE_EXHAUSTED when they are used; paid tier is self-serve. Here: no per-minute or per-day caps.

Side by side

MiniMax M3Gemini 2.5 Flash
Served byInference APIsGoogle
Model authorMiniMaxGoogle
Model idMiniMaxAI/MiniMax-M3gemini-2.5-flash
Input price$0.39 / 1M tokens$0.30 / 1M tokens
Output price$1.56 / 1M tokens$2.50 / 1M tokens
Context window512K tokens1M tokens
CapabilitiesChat, Reasoning, Tool calling, JSON modeChat, Reasoning, Vision, Tool calling, JSON mode
WeightsOpenClosed
StatusAvailableAvailable
LimitsNo per-minute or per-day request or token caps; usage draws on a prepaid balanceFree tier has per-model daily request quotas and returns 429 RESOURCE_EXHAUSTED when they are used; paid tier is self-serve.
Time to first token1.3 snot measured by us
Output speed72 tokens / snot measured by us

What three workloads cost

List prices applied to the same work. The cheaper side of each row is in bold.

WorkloadMiniMax M3Gemini 2.5 FlashDifference
Chat assistant — 10,000 turns of 800 tokens in, 300 out$7.80$9.9021%
Long prompts or RAG — 10,000 requests of 8,000 in, 500 out$39.00$36.506%
Generation-heavy — 10,000 requests of 500 in, 2,000 out$33.15$51.5036%

It depends on the shape of the workload: MiniMax M3 is cheaper for chat assistant and generation-heavy, Gemini 2.5 Flash for long prompts or rag. Reasoning models bill their thinking as output tokens, so real output counts run higher than the visible answer; treat the generation-heavy row as a floor for them.

When to choose which

Choose MiniMax M3 if
  • You want open weights: the same model can be moved to another host or self-hosted later
  • You want a large-context agent model priced near the Flash tier
  • Your workload is output-heavy; output tokens are the expensive side of its price
Choose Gemini 2.5 Flash if
  • You need more than 512K tokens of context (it takes 1M)
  • You need to send images; MiniMax M3 is text-only
  • You need multimodal input (images, audio, video)
  • A free tier for development matters to you

Price, context and speed are measurable; answer quality on your task is not something a table can settle. Both take the same request, so the honest test is to run your own prompts through each.

Measured speed

Medians of three streamed runs on 2026-09-17, public endpoint, a prompt that asks for about 120 words. Time to first token is the first token of any kind, reasoning included; output speed counts every generated token from that point. Reasoning models then think before the visible answer starts: MiniMax M3 began answering after 2.74 s at default settings, which you can shorten with the reasoning controls on each model page. Expect ±30% with time of day. We did not measure Google and do not quote other people's numbers; read "not measured" as unknown, not slow. Method and raw numbers: speed measurements.

Switching from Google

Both speak the OpenAI wire format. The edit is the base URL, the key and the model id; then re-run your own prompts, because it is a different model.

Python · openai SDK
import os
from openai import OpenAI

# before: Google
# client = OpenAI(base_url="https://generativelanguage.googleapis.com/v1beta/openai/", api_key=os.environ["GOOGLE_API_KEY"])
# MODEL = "gemini-2.5-flash"

# after: Inference APIs
client = OpenAI(base_url="https://api.inferenceapis.com/v1", api_key=os.environ["INFERENCE_API_KEY"])
MODEL = "MiniMaxAI/MiniMax-M3"

resp = client.chat.completions.create(model=MODEL, messages=[{"role": "user", "content": "Hello"}], max_tokens=500)

More detail, including Node, LangChain and LiteLLM: switching OpenAI-compatible providers.

FAQ

Which is cheaper, MiniMax M3 or Gemini 2.5 Flash?

It depends on the shape of the workload: MiniMax M3 is cheaper for chat assistant and generation-heavy, Gemini 2.5 Flash for long prompts or rag. The table above uses list prices: MiniMax M3 $0.39 / 1M tokens input, $1.56 / 1M tokens output; Gemini 2.5 Flash $0.30 / 1M tokens input, $2.50 / 1M tokens output.

Can I switch from Gemini 2.5 Flash to MiniMax M3 without rewriting code?

Yes, if you call it through an OpenAI-compatible client. Change the base URL to https://api.inferenceapis.com/v1, swap the API key, and set the model to MiniMaxAI/MiniMax-M3. Because it is a different model, re-run your prompts and evaluations before moving production traffic.

What limits apply to Gemini 2.5 Flash?

Free tier has per-model daily request quotas and returns 429 RESOURCE_EXHAUSTED when they are used; paid tier is self-serve. On Inference APIs there are no per-minute or per-day request or token caps; usage draws on a prepaid balance.

Why does MiniMax M3 use more output tokens than the visible answer?

It is a reasoning model: it thinks before it answers and the thinking is billed as output tokens. Budget for that in output-heavy workloads, and set max_tokens to a few hundred or more so the answer is not cut off.

Spotted a price or limit that has changed? Tell us and we will re-check the provider page.