GLM-4.6V review: accurate receipt OCR in 647 image tokens
GLM-4.6V (glm-4.6v) is a strong pick for pulling structured data out of document images cheaply. It read every field of a Japanese receipt correctly and used 647 input tokens for the image, the fewest of any model we tried. The downside is speed: it reasons before it answers, and each response took between 20 seconds and 2 minutes.
What it is
GLM-4.6V is a vision-language model Z.ai (formerly Zhipu AI) released in December 2025.
- Context window: about 131K tokens
- Input: text, images and video
- Output: text
- Tool calling, and a reasoning pass before every answer
Reading a receipt into JSON
We gave it a photo of a restaurant receipt and asked for the store name, date and time, line items, which items qualify for Japan's reduced 8% tax rate, and the store's invoice registration number, all as JSON.
- Every field came back correct. The timestamp was ISO 8601 with the
+09:00offset. - Items marked with ※ were correctly flagged as reduced-rate items, which is what that mark means on a Japanese receipt.
- The registration number (a
Tfollowed by 13 digits) was exact. - The image cost 647 input tokens.
The same image cost 1,220 tokens on GPT-4.1 nano and 25,568 on GPT-4o mini. Each model counts image tokens its own way, and the spread is wide enough that on a large document pipeline it becomes most of the bill.
Five text tasks
We also ran the same five Japanese-language tasks across several models. Japanese is a demanding test of formal register, and two of the tasks were built to catch a model making things up.
| Task | Result | Response time | Output tokens (reasoning) |
|---|---|---|---|
| Apology email for a delayed delivery | Polite and practical; it even offered to source a substitute part | about 39 s | 3,103 (2,658) |
| Three-point summary of an article | Accurate | about 47 s | 1,610 (1,444) |
| Fix two politeness errors in a sentence | Both correct, with the right explanation | about 20 s | 1,950 (1,652) |
| Math word problem | Spotted that there is no whole-number answer and offered the nearest fixes: 7 items at 1,200 yen, or 8 at 1,275 yen | about 112 s | 3,642 (3,160) |
| Haiku with a seasonal word | Reasonable seasonal word (aki no yonaga, "long autumn night"), but not in 5-7-5 | about 59 s | 2,255 (2,126) |
The answers were accurate. The word problem deliberately has no whole-number solution, and GLM-4.6V said so instead of inventing one.
Two things to plan for. Almost every answer opened with はい、承知いたしました ("Yes, understood"), so if you put it behind an app, tell it in the system prompt to skip the preamble. And 80 to 90 percent of the output was reasoning tokens.
Cost and speed
- Reasoning tokens bill as output. Even short answers came to 1,500 to 3,600 output tokens.
- Image input, on the other hand, is cheap, which is what makes it a good deal for high-volume document reading.
- It is billed per million input and output tokens. Current prices are on the model page.
- It is too slow for interactive UI; run it in the background.
Good fit, poor fit
Good fit
- Extracting data from receipts, invoices and forms
- Analyzing material that mixes images and text
- Batch jobs where waiting a minute is fine
Poor fit
- Chat that has to answer within a few seconds
- Text-only work, where faster models exist
FAQ
Q. Can GLM-4.6V read Japanese text in images accurately?
On our receipt it got the store name, timestamp, items, amounts and invoice registration number all right.
Q. Why is GLM-4.6V slow?
It reasons before answering. In our runs most of the output was reasoning tokens.
Q. Does GLM-4.6V accept video?
The model supports video input, but we only tested images. Try it on your own footage before you rely on it.
Try it on FastMetal
curl https://api.fastmetal.ai/v1/chat/completions \
-H "Authorization: Bearer $FASTMETAL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "glm-4.6v",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "Return the store name, date and total from this receipt as JSON."},
{"type": "image_url", "image_url": {"url": "https://example.com/receipt.jpg"}}
]
}]
}'
The same API key and balance work for every other model; change model to compare. The full list is in the model catalog.