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
- GLM 5.3 and GLM 5.3 Flash reject
thinking: disabled,reasoning_effort: noneandmediumwith error 1210; onlylow,highandmax(the default) work. - At
max, GLM 5.3 scored 33 of 33 at $0.00468 per correct answer; GLM 5.2 atmaxcost $0.01173. - At
low, GLM 5.3 scored 28 of 33 and GLM 5.3 Flash 24 of 33. - Both GLM 5.3 builds ignore a strict
json_schema;json_objectreturned correct values 8 of 8 times.
What is GLM 5.3, and what does it cost?
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.
Can you still turn thinking off?
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.
Which effort setting gets the answers right?
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.
Does it make things up when a question has no answer?
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.
Does GLM 5.3 follow a JSON schema?
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.
What does an image cost on GLM 5.3 Flash?
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.
What else changed from GLM 5.2?
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.
How Synthorai handles it
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.
FAQ
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.
Top comments (0)