Kimi K3 is 10x more expensive than I thought. And it's not the pricing's fault.
I added Kimi K3 to my API gateway two weeks ago. 1M context, always-on
reasoning. The flagship. I watched the usage numbers climb and thought
"great, people love it."
Then I looked closer. A single user had burned 243,745 tokens in one
request. One request. 31 seconds. Most of it silent.
The silent 13 seconds
Look at this request timeline:
first_token_ms: 13,609 ← 13.6 seconds of silence
latency_ms: 31,910 ← 31.9 seconds total
tokens: 243,745 ← a quarter million tokens
For 13.6 seconds, nothing came out. That's not a slow connection.
That's K3 thinking. And every token of that thinking is billed.
K3 doesn't have a "think mode" toggle. It always reasons. Every
request runs through a reasoning pass before it answers. The
reasoning tokens land in completion_tokens — the same bucket as
the actual answer.
So a question that takes deepseek-chat 200 tokens to answer takes
K3 200,000 tokens. Same question. Same answer quality. 1000x the cost.
The bug that made it worse
While investigating, I found the token counter was double-counting.
In the streaming handler:
total_tokens += usage.get("total_tokens", 0)
total_tokens += usage.get("completion_tokens", 0) # ← redundant
total_tokens already includes completion_tokens. Adding it again
double-counted every completion token. For reasoning models, where
completion is dominated by thinking, the inflation was enormous.
The logs said a user consumed 1.5M tokens. The actual deducted amount
was 500K. A 3x discrepancy, all from double-counting.
One line deleted. Fixed.
What this actually means
Kimi K3's real cost profile is:
The 15/Moutputisthecatch.Reasoningtokenscountasoutput.Asingledeepcodereviewcanbe3-4. Ten of those a day is $40. For a
free tier, that's a fast bleed.
The rule I should have set from day one:
Use K3 for what it's good at: long-context code review, deep debugging.
Use deepseek-chat for everything else: classification, summarization,
simple generation.
Not because K3 is bad. Because reasoning models are expensive, and
"always thinking" means you're always paying for the thinking.
The fix that matters
The double-counting bug was mine. The cost profile is reality. Both
taught the same lesson: reasoning models aren't a free upgrade. They're
a different tool with a different price, and if you route every request
to them, your bill will tell you about it before your users do.
We're AIBridge — 15 Chinese models behind one OpenAI-compatible
endpoint. Including K3, which is still worth it for the right tasks.
→ aibridge-api.com/playground.html
→ aibridge-api.com/prompts.html (each prompt recommends the right model)





Top comments (0)