cd /news/large-language-models/glm-5-3-api-cost-always-thinking-2-5… · home topics large-language-models article
[ARTICLE · art-130395] src=dev.to ↗ pub= topic=large-language-models verified=true sentiment=· neutral

GLM 5.3 API Cost: Always Thinking, 2.5x Cheaper per Answer Than 5.2

A developer benchmarked Z.ai's GLM 5.3 and GLM 5.3 Flash against GLM 5.2 and DeepSeek V4.1 Flash, finding that GLM 5.3 no longer allows thinking to be disabled — requests with thinking disabled or reasoning_effort set to none, minimal, medium or xhigh return HTTP 400 error 1210, leaving only low, high and max (the default). On 11 verifiable tasks run three times each, max was the only setting to get all 33 correct, at $0.00468 per correct answer, 2.5x cheaper than GLM 5.2 at max because GLM 5.3 reasons about half as much, while low cost 63% less per correct answer but missed 5 of 33 and GLM 5.3 Flash reached 31 of 33 at a tenth of the price.

by read9 min views9 publishedSep 15, 2026

GLM 5.3 costs the same $1.40 per million input tokens and $4.40 per million output as GLM 5.2, and it no longer lets you turn thinking off: every way of disabling it returns a 400 error, and the default effort is max. On 11 tasks with a checkable answer, run three times each, max was the only setting that got all 33 right, at $0.00468 per correct answer, 2.5x less than GLM 5.2 at max because GLM 5.3 reasons about half as much. low costs 63% less per correct answer and misses 5 of 33. GLM 5.3 Flash reached 31 of 33 at a tenth of the price. reasoning_effort, the parameter that sets how long a model thinks before answering, now decides accuracy as well as cost; we measured both builds against GLM 5.2 and DeepSeek V4.1 Flash in one batch.

TL;DR

thinking: disabled, reasoning_effort: none and medium with error 1210; only low, high and max (the default) work.json_schema; json_object returned correct values 8 of 8 times. A retrained GLM 5.2 at the same price, plus a smaller model at a tenth of it. GLM 5.3 "uses the same base model as GLM-5.2, with all improvements driven by post-training", per Z.ai's guide, and takes text only. GLM 5.3 Flash has "320B total parameters with 18B activated" (only 18B do work on each token, which is what makes it cheap) and accepts images, video and files. Both have a 1M-token context and 128K output. Prices from Z.ai's pricing page, per million tokens:

Model Input Cached input Output
GLM 5.3 $1.40 $0.26 $4.40
GLM 5.3 Flash $0.15 $0.03 $0.50
GLM 5.2 $1.40 $0.26 $4.40
DeepSeek V4.1 Flash $0.30 peak $0.006 peak $1.20 peak

Z.ai's model card and Flash guide put the gain on agent and coding work:

Benchmark What it tests GLM 5.2 GLM 5.3 GLM 5.3 Flash
Terminal Bench 3.0 agent tasks in a terminal 4.6 28.3 not listed
DeepSWE v1.1 fixing real repositories 46.2 66.9 63.4
AutomationBench workflow automation 26.2 48.2 48.8
CyberGym security vulnerability tasks 77.2 84.5 not listed
HLE with tools hard questions, tools allowed 54.7 62.5 not listed

What follows is what we could check ourselves: tasks with one verifiable answer, not agent benchmarks.

No. GLM 5.2 accepted thinking: {"type": "disabled"}. GLM 5.3 and GLM 5.3 Flash return HTTP 400 with error code 1210 ("this model always thinks, turning thinking off is not supported; use low, high or max") for thinking: disabled, enable_thinking: false, and reasoning_effort set to none, minimal, medium or xhigh. Leave reasoning_effort out and you get max. thinking_budget, a token cap on thinking that some providers honour, is accepted and ignored on GLM 5.3: every value from 0 to 1,024 produced about 101 reasoning tokens on the same question.

resp = client.chat.completions.create(
    model="glm-5.3",
    messages=[{"role": "user", "content": prompt}],
    reasoning_effort="high",   # "low" | "high" | "max"; omitted means "max"
    max_tokens=8192,           # GLM 5.3 Flash rejects anything above 131,072
)
reasoning_tokens = resp.usage.completion_tokens_details.reasoning_tokens  # billed as output
thinking_text = resp.choices[0].message.reasoning_content                # the thinking itself, as text

The old cheap path was not a good one anyway: with thinking off, GLM 5.2 answered 10 of our 33 tasks correctly, and DeepSeek V4.1 Flash 22.

On GLM 5.3, only max; on GLM 5.3 Flash, none of them. We ran 11 tasks whose answer is a single number we can check (sums of primes, digit counts, grid paths, coin combinations, a rule applied 40 times, the remainder of 7 to the power 222 divided by 1000, a base conversion, a knapsack, and counting four-digit numbers under three constraints) three times each. Reasoning tokens are the hidden thinking written before the answer, billed as output; cost per correct answer is total spend divided by correct answers, at list price:

Model Effort Correct Reasoning tokens, median (max) Cost per correct answer
GLM 5.3 low 28/33 143 (1,826) $0.00173
GLM 5.3 high 29/33 226 (1,950) $0.00197
GLM 5.3 max (default) 33/33 538 (7,733) $0.00468
GLM 5.3 Flash low 24/33 120 (467) $0.00012
GLM 5.3 Flash high 29/33 196 (1,582) $0.00021
GLM 5.3 Flash max (default) 31/33 419 (5,024) $0.00040
GLM 5.2 max 33/33 1,129 (21,917) $0.01173
DeepSeek V4.1 Flash low 33/33 337 (6,797) $0.00102
DeepSeek V4.1 Flash max 33/33 386 (10,769) $0.00138

The 2.5x against GLM 5.2 comes from reasoning volume: a median of 538 reasoning tokens against 1,129, and a longest run of 7,733 against 21,917. The lower settings save money by skipping checks. At low, GLM 5.3 answered the grid-path count as 216 twice (one blocked cell makes it 132) and missed the coin combinations, the knapsack and the base conversion once each. GLM 5.3 Flash at low failed the 40-step rule and the constrained count every time. DeepSeek V4.1 Flash, by contrast, scored 33 of 33 at every setting.

On GLM 5.3, keep the default for anything with arithmetic or several steps, and use low only where a wrong answer is cheap to catch. At max, GLM 5.3 costs 3.4x DeepSeek V4.1 Flash per correct answer; GLM 5.3 Flash costs under a third of it while missing 2 of 33.

No, even with thinking forced on. We asked five questions about entities we made up, so the only right answer is "I do not know" (a share price for Verantis Dynamics, the melting point of Oridium-7, the winner of the 1987 Pan-Continental Robotics Prize), at the default effort with a 16,384-token cap:

Model Declined Invented an answer Hit the cap, empty answer Reasoning tokens Cost per question
GLM 5.3 5/5 0/5 0/5 230 to 542 $0.0022
GLM 5.3 Flash 5/5 0/5 0/5 238 to 625 $0.0003
GLM 5.2 5/5 0/5 0/5 134 to 1,559 $0.0035
DeepSeek V4.1 Flash 1/5 3/5 1/5 7,021 to 16,384 $0.0139

Both GLM 5.3 builds said they had no information after a few hundred reasoning tokens. DeepSeek V4.1 Flash thought for 7,000 to 16,000 tokens and then usually invented something (Andrew Martin, the robot protagonist of Isaac Asimov's The Bicentennial Man, won); in its own study a day earlier, more runs hit the cap instead, but it rarely declined. For lookups that can legitimately come back empty, this is the biggest difference we measured between the two flash-tier models.

Not a strict one; use json_object. With response_format set to a strict json_schema for an invoice extraction, GLM 5.3 and GLM 5.3 Flash returned HTTP 200 and ignored the schema in 16 of 16 runs: the JSON came wrapped in a markdown code fence with keys the schema did not ask for (invoice_date, reference), so none parsed as the requested object. Z.ai's API reference lists only text and json_object; the trap is that the schema is accepted silently.

With {"type": "json_object"} and the fields named in the prompt, both builds returned every value right in 8 of 8 runs, as did GLM 5.2 and DeepSeek V4.1 Flash. Since thinking stays on, extraction costs a median of 240 output tokens on GLM 5.3 and 140 on Flash, against 25 on V4.1 Flash with thinking off. Validate the result against your schema yourself.

It grows with pixel area and does not cap by 2048x2048, so large images cost more than on DeepSeek V4.1 Flash despite the lower rate. We sent generated PNGs to GLM 5.3 Flash (GLM 5.3 is text only) and subtracted the text-only prompt:

Image GLM 5.3 Flash tokens Cost at $0.15/M DeepSeek V4.1 Flash tokens Cost at $0.30/M
512x512 363 $0.000054 184 $0.000055
1024x1024 1,371 $0.000206 652 $0.000196
2048x2048 5,478 $0.000822 994 $0.000298

Above 512 pixels, GLM 5.3 Flash spends about one token per 766 pixels; detail, image content and file format did not change the count. The DeepSeek V4.1 Flash numbers come from its study the day before. Downscale screenshots and document pages before sending: at 2048x2048, GLM 5.3 Flash costs 2.8x more per image.

Speed, and little of the plumbing. Streamed in the same window at low, GLM 5.3 generated 59 to 64 output tokens per second, GLM 5.3 Flash 70 to 82, GLM 5.2 51 to 55, and DeepSeek V4.1 Flash 124 to 161. In a two-turn function-calling loop every model made one call per turn. The three GLM builds count identical tokens on English, Chinese and Python text (737, 484 and 488), so token budgets carry over.

The repeated opening of a prompt is billed at the cached rate, counted in 64-token steps (a 1,153-token prompt read 1,024 from cache). Both builds accept prompts close to the 1M-token limit, although the Flash model card mentions 300,000 tokens: a 990,000-token prompt with one value hidden near its start returned that value (we did not test recall near the end), and one of about 1.07M tokens got a 400, Prompt exceeds max length, instead of being cut short. One upgrade break: GLM 5.3 Flash rejects max_tokens above 131,072.

GLM 5.3, GLM 5.3 Flash and GLM 5.2 are glm-5.3, glm-5.3-flash and glm-5.2 on the gateway, at Z.ai's list prices, on /v1/chat/completions and /v1/responses. The 1210 error passes through unchanged, so a client still sending its GLM 5.2 off switch fails loudly instead of silently thinking at max. Reasoning text comes back in reasoning_content; images go to GLM 5.3 Flash as image_url content parts.

Can you disable thinking on GLM 5.3?

No. GLM 5.3 and GLM 5.3 Flash return a 400 with error 1210 for every off switch; only low, high and max are accepted, and max is the default. On our suite low cost 63% less per correct answer but got 28 of 33 right instead of 33.

Is GLM 5.3 cheaper than GLM 5.2?

Per token, no: both cost $1.40 input and $4.40 output. Per correct answer, yes: at max, GLM 5.3 cost $0.00468 against GLM 5.2's $0.01173, because it reasons about half as much.

Can GLM 5.3 Flash replace GLM 5.3?

Where an occasional wrong number gets caught downstream, yes, at a tenth of the price: GLM 5.3 Flash at max got 31 of 33 right at $0.00040 per correct answer, against 33 of 33 at $0.00468 on GLM 5.3. Avoid Flash at low for multi-step arithmetic, where it got 24 of 33.

Related: GLM 5.2 reasoning effort, GLM 5.2 tool calls, DeepSeek V4.1 Flash cost, LLM thinking controls, LLM structured outputs.

── more in #large-language-models 4 stories · sorted by recency
── more on @z.ai 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/glm-5-3-api-cost-alw…] indexed:0 read:9min 2026-09-15 ·