Skip to content

The bank line benchmark for real company books

136 AI setups from 19 models and the Cybooks Brain, tested on real bank lines from ten businesses in Cyprus.

Version 1.0Lines frozen 2 Nov 2026Updated 11 Nov 2026

  • 19 models
  • 136 setups
  • 2,000 bank lines
  • 10 businesses
  • 1,000 fresh lines re-checked

Accuracy moves by points, cost by multiples: 19 models on 500 lines

We ran 19 models in 136 setups, each as a single call and as an agent that can read the business’s earlier bookings and search the web, and asked each one question: which account does this bank line belong to?

Accuracy against costEach model’s top setup as an agent on the 500 screening lines. Up and to the left is better.
  • Frontier
  • Other models
  • Open-weight
Compare to
Licence

19 models shown

Accuracy against cost: 19 models shown
ModelReasoning levelProviderLicenceLines rightCost per 1,000 linesOn the frontier
gpt-oss-120bmediumOpenAIOpen-weight54.4%$0.58Yes
GPT-6 LunaxhighOpenAIClosed64.4%$0.59Yes
DeepSeek V4 Flash 0731lowDeepSeekOpen-weight64.6%$0.94Yes
GLM-5.3 FlashmaxZ.aiOpen-weight64.2%$1.52No
Nemotron 3.5 Super VL 120BlowNVIDIAOpen-weight62.6%$1.95No
Claude Haiku 5.5maxAnthropicClosed66.8%$2.15Yes
DeepSeek V4.1 FlashlowDeepSeekOpen-weight63.8%$3.18No
Beam 1.0defaultReflectionOpen-weight53.8%$5.02No
Nemotron 3 Ultra 550BonNVIDIAOpen-weight44.2%$5.50No
GPT-5.4 minimediumOpenAIClosed62.6%$5.87No
GPT-6.1 TerrahighOpenAIClosed70.2%$5.99Yes
GLM-5.2onZ.aiOpen-weight64.0%$8.82No
GPT-6.1 SolxhighOpenAIClosed70.8%$10.33Yes
DeepSeek V4 Pro 0813noneDeepSeekOpen-weight64.2%$12.09No
Claude Sonnet 5.5xhighAnthropicClosed66.4%$13.62No
GLM-5.3maxZ.aiOpen-weight62.8%$14.17No
Muse Spark (open)defaultMetaOpen-weight53.4%$17.95No
Kimi K3maxMoonshot AIOpen-weight62.2%$24.27No
Claude Opus 5.5maxAnthropicClosed68.6%$54.31No

The violet line is the frontier: the models nothing shown beats on both. Shaded zones split them at the medians; the axis starts at 40%.

Data: Cybooks bank line benchmark, 500 screening lines, November 2026

Leaderboard

Dashed line in each bar: the mean of all 68 agent setups, 61.0%.

Share of the 500 screening lines each setup got right, with its Wilson 95% interval, cost, time and tokens per line.
#ModelProviderLicence
1GPT-6.1 Solxhigh · On the frontier, against cost70.8%, 95% interval 66.7 to 74.6OpenAIClosed$10.338.4 s5,651
2GPT-6.1 Terrahigh · On the frontier, against cost70.2%, 95% interval 66.0 to 74.0OpenAIClosed$5.996.2 s5,920
3Claude Opus 5.5max68.6%, 95% interval 64.4 to 72.5AnthropicClosed$54.31Not measured (batch run)17,453
4Claude Haiku 5.5max · On the frontier, against cost66.8%, 95% interval 62.6 to 70.8AnthropicClosed$2.15Not measured (batch run)21,572
5Claude Sonnet 5.5xhigh66.4%, 95% interval 62.1 to 70.4AnthropicClosed$13.62Not measured (batch run)10,804
6DeepSeek V4 Flash 0731low · On the frontier, against cost64.6%, 95% interval 60.3 to 68.7DeepSeekOpen-weight$0.948.9 s6,736
7GPT-6 Lunaxhigh · On the frontier, against cost64.4%, 95% interval 60.1 to 68.5OpenAIClosed$0.598.4 s5,251
8GLM-5.3 Flashmax64.2%, 95% interval 59.9 to 68.3Z.aiOpen-weight$1.5231.7 s7,827
8DeepSeek V4 Pro 0813none64.2%, 95% interval 59.9 to 68.3DeepSeekOpen-weight$12.0911.4 s8,548
10GLM-5.2on64.0%, 95% interval 59.7 to 68.1Z.aiOpen-weight$8.8263.9 s5,391
11DeepSeek V4.1 Flashlow63.8%, 95% interval 59.5 to 67.9DeepSeekOpen-weight$3.1810.2 s7,884
12GLM-5.3max62.8%, 95% interval 58.5 to 66.9Z.aiOpen-weight$14.1719.8 s7,463
13Nemotron 3.5 Super VL 120Blow62.6%, 95% interval 58.3 to 66.7NVIDIAOpen-weight$1.9510.1 s7,822
13GPT-5.4 minimedium62.6%, 95% interval 58.3 to 66.7OpenAIClosed$5.875.4 s5,196
15Kimi K3max62.2%, 95% interval 57.9 to 66.3Moonshot AIOpen-weight$24.2714.3 s5,989
16gpt-oss-120bmedium · On the frontier, against cost54.4%, 95% interval 50.0 to 58.7OpenAIOpen-weight$0.5810.1 s4,202
17Beam 1.0default53.8%, 95% interval 49.4 to 58.1ReflectionOpen-weight$5.0211.3 s10,110
18Muse Spark (open)default53.4%, 95% interval 49.0 to 57.7MetaOpen-weight$17.9511.8 s11,371
19Nemotron 3 Ultra 550Bon44.2%, 95% interval 39.9 to 48.6NVIDIAOpen-weight$5.5012.0 s7,777

The booked account is on the 120-account list for 481 of 500 lines, so 96.2% is the ceiling for every setup.

Top per model: each model’s most accurate setup, the cheaper one on a tie. Seconds per line are n/a for Anthropic’s batch runs, which record no time.

These are the findings, on the 500 screening lines unless they say otherwise.

Key takeaways

History decides. When the business had booked the label account before, the top agent was right on 87.0% of lines; when it had not, on 39.1%. On the held-out lines the Cybooks Brain’s agent step: 90.0% against 41.7%.

An agent beats a single call. Agents average 61.0% over all 68 agent setups, single calls 50.7%. The top agent is 12.8 points above the top single call, and the tools lift 15 of 19 models significantly.

The top two cannot be told apart. GPT‑6.1 Sol (xhigh) at 70.8% and GPT‑6.1 Terra (high) at 70.2%: p = 0.63. On the held-out lines, 73.5% and 73.2%: p = 0.64.

Accuracy differs by points, cost by multiples. GPT‑6.1 Terra (high) costs $5.99 per 1,000 lines and Claude Opus 5.5 (max) $54.31: about 9 times more for 1.6 points less.

Web search adds about one point. The Terra agent was right on 70.4% with web search and 69.2% without, over two runs each: within the noise.

Money in is harder. The top agent is right on 72.3% of money-out lines and 58.5% of money-in lines. A money-in line can be a customer receipt, owner funding, a loan or a refund, and the descriptor often does not say which.

On 1,500 unseen lines the Cybooks Brain was right on 72.6%, with no significant difference from the strongest agent

Without imported past books, the Cybooks Brain shows no significant difference from the strongest agent, and costs less. It did not meet the bar we set before the run.

Share of held-out lines right1,500 lines no setting was chosen on, 150 from each of ten businesses. Every system ran once.
CybooksLLM agentLLM single call
  1. Brain, agent onlyGPT-6.1 Terra (high), no web search73.5%, cost $6.28 per 1,000 lines, 95% interval 71.2 to 75.7, 19 lines with no answer
  2. Sol agentwith web search73.5%, cost $11.19 per 1,000 lines, 95% interval 71.2 to 75.7, 19 lines with no answer
  3. Brain, people rule offwithout the people rule73.2%, cost $4.45 per 1,000 lines, 95% interval 70.9 to 75.4, 18 lines with no answer
  4. Terra agentwith web search73.2%, cost $7.98 per 1,000 lines, 95% interval 70.9 to 75.4, 12 lines with no answer
  5. Cybooks Brainas configured in Cybooks, people rule on72.6%, cost $4.28 per 1,000 lines, 95% interval 70.3 to 74.8, 41 lines with no answer
  6. Luna agentwith web search68.9%, cost $1.67 per 1,000 lines, 95% interval 66.5 to 71.2, 44 lines with no answer
  7. Opus single callno tools, Batch API price58.1%, cost $17.50 per 1,000 lines, 95% interval 55.6 to 60.5, 6 lines with no answer
  8. Brain, memory onlyno AI call37.5%, cost $0.00 per 1,000 lines, 95% interval 35.1 to 40.0, 846 lines with no answer

Whiskers: Wilson 95% intervals. Cybooks Brain and its agent step make no web search; the LLM agents’ cost includes theirs. People rule: lines paid to people are never sent to the AI, as configured in Cybooks.

Data: Cybooks bank line benchmark, 1,500 held-out lines, November 2026

No significant difference. As configured in Cybooks, the Cybooks Brain is right on 72.6%, the strongest agent alone on 73.5%: -0.93 points, with a bootstrap 95% interval of -2.20 to +0.33 (McNemar p = 0.18).

Cheaper. $4.28 per 1,000 lines, against $11.19 for the Sol agent, $7.98 for the Terra agent and $6.28 for its own agent step alone. Its memory step fills in 26.8% of lines with no AI call: 268 agent calls saved per 1,000 lines.

The price of one rule. As configured in Cybooks, lines paid to people are never sent to the AI. That puts the Brain -0.93 points against its own agent step alone (McNemar p = 5.2e-04), and saves $2.00 per 1,000 lines: the agent is called on 1,069 of the 1,500 lines.

Not shown non-inferior. The bar set before the run: paired difference: bootstrap lower bound at least -1 point. It was written for the version without that rule, which is right on 73.2%: -0.33 points, with an interval that reaches -1.60, so the Brain did not meet it. As configured, the interval reaches -2.20: it misses the same bar.

Re-checked on 1,000 fresh lines, every system landed inside its interval

The 1,500 held-out lines shaped the paper, so every system ran once more on 1,000 new lines from the same ten businesses: lines no system had seen, picked by a rule fixed before any run.

Share of fresh lines right, against the held-out interval1,000 new lines from the same ten businesses, equal weight per business. Every system ran once, with the setup it had on the 1,500.
Fresh linesInterval on the 1,500
  1. Cybooks Brain71.1%, on the held-out lines 72.6%, 95% interval 70.3 to 74.8; over all fresh lines as drawn 72.2%
  2. Brain, people rule off72.3%, on the held-out lines 73.2%, 95% interval 70.9 to 75.4; over all fresh lines as drawn 73.6%
  3. Brain, agent only71.8%, on the held-out lines 73.5%, 95% interval 71.2 to 75.7; over all fresh lines as drawn 73.3%
  4. Terra agentwith web search71.1%, on the held-out lines 73.2%, 95% interval 70.9 to 75.4; over all fresh lines as drawn 73.0%
  5. Sol agentwith web search71.9%, on the held-out lines 73.5%, 95% interval 71.2 to 75.7; over all fresh lines as drawn 72.9%
  6. Luna agentwith web search67.5%, on the held-out lines 68.9%, 95% interval 66.5 to 71.2; over all fresh lines as drawn 69.8%
  7. Opus single callno tools, Batch API price59.2%, on the held-out lines 58.1%, 95% interval 55.6 to 60.5; over all fresh lines as drawn 59.4%
  8. Brain, memory only39.0%, on the held-out lines 37.5%, 95% interval 35.1 to 40.0; over all fresh lines as drawn 42.1%

Whiskers: each system’s Wilson 95% interval on the 1,500 held-out lines. A bar that ends inside its whisker landed inside that interval. People rule: lines paid to people are never sent to the AI, as configured in Cybooks.

Data: Cybooks bank line benchmark, 1,000 fresh lines, November 2026

Equal weight per business. The fresh draw holds 29 to 126 lines per business, the held-out set 150 each, so the chart weighs every business the same. Over all fresh lines as drawn, the Cybooks Brain is right on 72.2% and its agent step alone on 73.3%.

The same rule, about one point. On the fresh lines the Cybooks Brain is -1.1 points against its own agent step alone as drawn (p = 0.03) and -0.7 at equal weight, which is not significant.

The memory step. It filled in 30.9% of the fresh lines with no AI call, and 96.1% of those were right. On the held-out lines: 94.5%. Read together, about 95%.

What did not hold. Of 15 claims written down before the fresh run, 9 held on both readings, 4 on one reading and 2 did not hold. One research variant, the same design with the Terra agent and web search, landed just outside its interval: 70.1% against 70.4 to 74.9.

History took the same agent from 27.0% to 94.8%

On one company’s past books, the same AI agent was right on 27.0% without the company’s history and 94.8% with it. The Cybooks Brain’s memory step would have been right on 96.9%, with no AI call.

A test on the company’s past books: one company, line texts from its books, account only. The memory step is not yet switched on for customers, so nothing was filled in for the company. A sample of 3,004 of its 6,487 test lines, fixed before the run; the AI setups without history picked from the company’s own 29 accounts. The agent with history is the benchmark’s agent with web search, reading every January to March line of the books; the agent configured in Cybooks does not read imported rows, so its figure here would likely be lower.

With and without the company’s historyShare right of the 1,886 sample lines a bank payment can be booked to.
CybooksLLM agentLLM single call

Share right of the 1,886 sample lines a bank payment can be booked to.

  1. AI agent without historyGPT-6.1 Terra27.0%
  2. AI single call without historyGPT-6 Luna31.3%
  3. The same AI agent with historyGPT-6.1 Terra94.8%
  4. Cybooks Brain with three months of historymemory step, no AI call96.9%

On profit-and-loss lines alone, the agent without history is right on 36.5% and Cybooks Brain with history on 98.4%.

Data: Cybooks bank line benchmark, one company’s 1,886 sample lines, November 2026

The more it knows the company, the better it gets

Across ten young businesses the Cybooks Brain, as configured in Cybooks, is right on 72.6% of the held-out lines, and on 82.0% of the lines of mature ones (businesses with at least three months of bookings by a person and at least 200 earlier bookings). On one company with three months of history, its memory step alone would have been right on 96.9% of the lines a bank payment can be booked to.

Share right at each step

Dataset 1: ten businesses, agent included

  1. Step 1Ten businesses, all held-out lines1,500 lines · Cybooks Brain72.6%
  2. Step 2Ten businesses, the mature slice of those lines523 lines · Cybooks Brain82.0%

Dataset 2: one company, no agent, a test on past books

  1. Step 3One company, lines a bank payment can be booked to4,093 lines · Memory step only96.9%
  2. Step 3One company, all lines6,487 lines · Memory step only61.2%

The lighter bar counts all 6,487 lines, 2,394 of them on receivables, payables or VAT, which no bank payment is booked to.

Data: Cybooks bank line benchmark, 1,500 held-out lines and one company’s 6,487 test lines, November 2026

The steps are not one controlled experiment. The e-commerce brand is a different dataset: another company, labels from its previous system’s ledger and its own mix of accounts. Steps 1 and 2 include the agent and step 3 does not, and step 3 is a test on past books. They point the same way, but cannot say how much of the rise comes from knowing the business.

One month of history already gets most of the way

On the same company’s April to June 2026 lines, scored on every ledger line: right on 92.2% after one month of history, 94.5% after two and 95.1% after three.

Right after one, two and three months of history
  1. After 1 monthJanuary92.2%right overallFilled in 87.3%, 99.8% of those right. History: 3,274 lines.
  2. After 2 monthsJanuary and February94.5%right overallFilled in 91.0%, 99.7% of those right. History: 5,849 lines.
  3. After 3 monthsJanuary to March95.1%right overallFilled in 92.2%, 99.6% of those right. History: 8,463 lines.

Reference reading: every ledger line learned and every account allowed, which is not what Cybooks does.

Data: Cybooks bank line benchmark, one company’s 6,487 test lines, November 2026

Checked on real bank text

The figures above use the line texts in the company’s books. A bank feed delivers other text, so the same test ran again on the 2,114 lines that matched a row in the company’s own bank exports.

Right with the books’ text and with bank-feed textShare right of the 2,114 lines that matched a row in the company’s own bank exports. No answer counts as wrong.
Books’ textBank-feed text, right after the importBank-feed text, with feed history
  1. Payment-provider wallets395 lines · filled in with bank-feed text: 295 of 295 right85.8%Books’ text86.1%Bank-feed text, right after the import86.6%Bank-feed text, with feed history
  2. Company card93 lines · filled in with bank-feed text: 93 of 93 right97.8%Books’ text100.0%Bank-feed text, right after the import100.0%Bank-feed text, with feed history
  3. Online payment wallets, several currencies1,335 lines · filled in with bank-feed text: 697 of 703 right98.2%Books’ text80.6%Bank-feed text, right after the import94.7%Bank-feed text, with feed history
  4. Main current account291 lines · filled in with bank-feed text: 246 of 249 right89.7%Books’ text87.6%Bank-feed text, right after the import91.4%Bank-feed text, with feed history
  5. All four2,114 lines · filled in with bank-feed text: 1,331 of 1,340 right94.7%Books’ text83.4%Bank-feed text, right after the import93.0%Bank-feed text, with feed history

The memory step alone, no AI call. The feed text was built offline from the exports, the way Cybooks would read it from a bank feed or a statement import, not taken from a live bank connection. Filled in assumes the feed names the counterparty or merchant.

Data: Cybooks bank line benchmark, one company’s 2,114 matched lines, November 2026

Lower right after the import. 94.7% of these lines are right with the books’ text, 83.4% with bank-feed text right after the past books were imported, and 93.0% once the history is in the feed’s own text too.

When it fills a line in, it stays right. With bank-feed text the memory step would have filled in 1,340 of these lines, and 1,331 of them were right (99.3%). That assumes the feed carries the counterparty or merchant name: without it, the online payment wallets’ fill-ins are right 59.2% of the time.

Where the drop is. Most of it sits in the online payment wallets’ currency conversions: the feed gives them no counterparty and no text, so 60.0% of those 490 lines are right, against 100.0% with the books’ text.

Businesses differ more than models: 45% on one, 94% on another

Each business books its own way. A model that cannot see the history cannot learn it.

Share right by businessThe 1,500 held-out lines: 150 a business, and the 172 money-in lines among them.
0%100%

The 1,500 held-out lines: 150 a business, and the 172 money-in lines among them.

Businesses are shown only as letters.

Data: Cybooks bank line benchmark, 1,500 held-out lines, November 2026

Businesses differ far more than systems do. On the held-out lines the Terra agent is right on 45% of Business I and 94% of Business J. Business E shows convention: the Opus single call gets 5% there, the agents 87% to 92%. A single call sees no history, so it cannot learn a business’s own convention. Money in stays harder than money out for every system.

More effort buys a little: GPT‑6.1 Sol from 66.0% to 70.8%

More effort mostly means more tool use. The agents gain from it, but the steps are small and the top levels cost far more.

Share right by reasoning levelEvery reasoning level a model offers, on the 500 screening lines. The axis starts at 40%, where the data starts, not at zero.
None or offLowMediumHigh, xhigh, maxOn or default

10 of 19 models, ranked by their most accurate agent setup.

Arrow keys move between models; Escape closes the detail.

Share right at each reasoning level, agent
ModelProviderShare right by level
GPT-6.1 SolOpenAIlow 66.0%, medium 69.6%, high 69.8%, xhigh 70.8%
GPT-6.1 TerraOpenAInone 67.8%, low 67.2%, medium 68.8%, high 70.2%, xhigh 69.8%
Claude Opus 5.5Anthropiclow 65.6%, medium 66.0%, high 66.6%, xhigh 66.6%, max 68.6%
Claude Haiku 5.5Anthropiclow 57.8%, medium 62.6%, high 63.0%, xhigh 65.2%, max 66.8%
Claude Sonnet 5.5Anthropiclow 59.4%, medium 57.0%, high 64.0%, xhigh 66.4%, max 65.2%
DeepSeek V4 Flash 0731DeepSeeknone 63.4%, low 64.6%, high 62.4%, max 63.0%
GPT-6 LunaOpenAInone 46.4%, low 55.6%, medium 61.4%, high 63.6%, xhigh 64.4%
GLM-5.3 FlashZ.ailow 60.2%, high 64.0%, max 64.2%
DeepSeek V4 Pro 0813DeepSeeknone 64.2%, low 63.8%, high 63.8%, max 62.6%
GLM-5.2Z.aioff 62.8%, on 64.0%

No whiskers: most steps are smaller than their intervals. “On” and “off” switch thinking by chat template; “default” means no reasoning control.

Data: Cybooks bank line benchmark, 500 screening lines, November 2026

GPT-6.1 Sol as an agent rises from 66.0% at low to 70.8% at xhigh, Claude Opus 5.5 from 65.6% to 68.6% at max, Claude Haiku 5.5 from 57.8% to 66.8%. The top levels cost far more: Opus 5.5 at max uses 2.5 times its tokens at low.

Where the errors come from: 87 of 146 pick the right kind of account

The six setups largely miss the same lines. For every one of them, the largest kind of error is the right account type in another account group.

Where six setups go wrongWrong lines of the 500 screening lines, stacked by kind.
Label not in the 120-account listNo answerWrong account typeRight type, other account groupNear miss: same account group

Wrong lines of the 500 screening lines, stacked by kind.

  1. Agent: GPT-6.1 Sol (xhigh)146 errors
  2. Agent: GPT-6.1 Terra (high)149 errors
  3. Agent: Claude Opus 5.5 (max)157 errors
  4. Single call: Claude Opus 5.5 (max)210 errors
  5. Single call: GPT-6.1 Terra (xhigh)225 errors
  6. Single call: DeepSeek V4 Pro 0813 (low)230 errors
The wrong answers of six setups by kind, and their share right by group
SetupLabel not in the 120-account listNo answerWrong account typeRight type, other account groupNear miss: same account groupErrorsBooked beforeNo earlier bookingMoney outMoney in
Agent: GPT-6.1 Sol (xhigh)1952787814687.0%39.1%72.3%58.5%
Agent: GPT-6.1 Terra (high)1943389414987.0%37.3%71.4%60.4%
Agent: Claude Opus 5.5 (max)171627871015784.9%36.7%69.1%64.2%
Single call: Claude Opus 5.5 (max)19268113821065.6%43.2%59.7%43.4%
Single call: GPT-6.1 Terra (xhigh)19056143722559.8%45.6%57.0%37.7%
Single call: DeepSeek V4 Pro 0813 (low)19062140923059.2%43.8%55.9%37.7%

Hatched: the booked account was not on the 120-account list, so no setup could get those lines right.

Data: Cybooks bank line benchmark, 500 screening lines, November 2026

Right type, other group. For the top agent that is 87 of its 146 errors: the chart offers several defensible accounts for the same payment, and the business uses one of them. That is our reading, not verified line by line.

History again. When the business had booked the label account before, the top agent was right on 87.0%; when it had not, on 39.1%.

Money in is harder. 58.5% against 72.3% for money out.

2,000 bank lines, one account each, checked against the books

Real lines from real books, labelled with the account a person booked. Every answer is one account name, compared with the account the business booked.

What the benchmark tests

The task
Given a bank line and the bank account it came through, choose the account for the other side from the business's chart of accounts.
The businesses
Ten businesses in Cyprus, shown only as letters (A, B, E, F, G, H, I, J, M, N). Of the businesses with at least 200 labelled lines, twelve qualified; two were left out because almost all their lines go to one or two accounts.
The lines
A seeded draw of 2,000 bank lines, 200 per business: 500 for screening and tuning, 1,500 held out. The screening set has 447 money-out and 53 money-in lines.
The accounts
Each business’s chart holds about 213 postable accounts. The screening run offered a list of 120 per line, and the booked account was on it for 481 of 500 lines, so 96.2% is the ceiling for every setup.
The leak rule
A system sees only what the person could have seen: bookings of lines dated at least a day earlier and made at least 60 seconds before the person booked the line.
The labels
The account a signed-in person booked on the line in Cybooks. Bookings by rules, bill matching or the AI are not labels. The labels were not reviewed by an accountant, so they carry each business’s own habits.
The case study
A different dataset: one European e-commerce brand that brought its past books from its previous accounting system. The memory step learned from January to March 2026 (8,463 lines) and was tested on April to June 2026 (6,487 lines), in a separate copy of Cybooks. Line texts come from its books; 2,114 lines were checked again on real bank text.
The re-check
Every system ran once more on 1,000 fresh lines from the same ten businesses, picked by a rule fixed before any run: the same label rule, lines no system had ever answered, and a seeded draw spread as evenly over the businesses as the lines allowed.
An example task, synthetic
Bank line
ZORVEXA*CLOUD 4471 (merchant: Zorvexa Cloud Services Ltd)
Amount
EUR 59.00, money out
Known side
Kalvoria Bank current account (synthetic)
Accounts
<synthetic account 1>, <synthetic account 2>, ... up to 120
Task
pick the one account from the list for the other side
Reply
JSON with one field, e.g. {"category": "<synthetic account 2>"}

Zorvexa and Kalvoria are invented names. A paraphrase of what a model receives and returns, not the prompt text; no date is sent.

How answers are scored

Every answer takes the same path, from the model’s reply to a line that counts as right or wrong.

  1. A bank line and the account list

    Its description, merchant and amount, and the bank account it came through.

  2. A single call, or an agent

    An agent may also read earlier bookings and search the web, in at most 4 turns.

  3. One account name, as JSON

    The name must come from the list it was given.

  4. An exact match

    Compared with the account the business booked.

  5. Right or wrong

    No answer counts as wrong.

    RightWrong

An exact match decides every line, so the same answer always gets the same score. No AI grades the answers.
Accuracy
Right lines over all lines. A run with no parseable answer counts as wrong.
Intervals
Wilson score intervals at 95%.
Two systems
An exact two-sided McNemar test on the lines where they differ.
Cybooks Brain against an agent
A paired bootstrap 95% interval of the difference: 10,000 resamples of the 1,500 lines, with a seed fixed before scoring.
Cost
Costs are in US$ per 1,000 lines at provider list prices, from recorded tokens, not invoices: Anthropic at Batch API prices, 50% of list, the others at synchronous list prices. The Cybooks Brain is not on the screening chart: its cost was not measured on those lines.
Time
Mean wall-clock seconds per line, provider queueing included. Batch runs record none.

The bar, written down before the results: five passed, three failed

Before the held-out run we wrote down what each system had to reach, and judged each criterion once, on the 1,500 held-out lines. Five passed and three failed.

  1. CriterionAccuracy of the Cybooks Brain’s agent step

    Rule, set before the runPaired difference to the research build (the Terra agent with web search): bootstrap lower bound at least -3 points

    Result73.5% against 73.2%: +0.33 points (-0.73 to +1.47)

    Pass

  2. CriterionAgent alone: the account it picks was booked before on the same side

    Rule, set before the runAt least 78% right, Wilson lower bound at least 75%, on at least 60% of lines

    Result82.0% (79.6 to 84.2) on 72.3% of linesResearch build: 82.4% (80.0 to 84.6) on 71.7% of lines, pass

    Pass

  3. CriterionClean answers

    Rule, set before the runNo account outside the list; at most 2% no answer

    Result8 outside the list, refused by Cybooks’ code and counted as no answer; 1.3% no answerResearch build: 0 outside the list, 0.8% no answer, pass

    Pass

  4. CriterionSpeed and cost of the agent

    Rule, set before the run90% of lines within 20 s; at most $8 per 1,000 lines with search

    Result10.61 s; $6.28 per 1,000 lines, no web searchOn recorded tokens; 5 time-outs unmetered. Research build: 10.8 s; $7.98, $8.36 with every search uncached, fail

    Pass

  5. CriterionCybooks Brain, memory step: confident answers

    Rule, set before the runAt least 95% right, Wilson lower bound at least 92%, on at least 25% of lines (40% for mature businesses)

    Result94.5% (91.9 to 96.4) on 26.8% of lines; 40.5% for mature businessesFresh run: 96.1% (93.3 to 97.8) on 30.9% of lines; 46.7% for mature businesses, pass

    Fail

  6. CriterionCybooks Brain against the best agent alone

    Rule, set before the runPaired difference: bootstrap lower bound at least -1 point

    Result-0.33 points (-1.60 to +0.93)Same design with the research build of the agent: -0.27 points (-1.40 to +0.87), fail

    Fail

  7. CriterionBooking without a person

    Rule, set before the runAt least 363 lines; account, contact and VAT all right at least 97% of the time, Wilson lower bound at least 95%

    Result136 lines; 87.5% (80.9 to 92.0)Same design with the research build of the agent: 135 lines; 87.4% (80.8 to 92.0), fail

    Fail

  8. CriterionCost of Cybooks Brain

    Rule, set before the runAt least 250 agent calls saved per 1,000 lines; cost at most 75% of the agent alone

    Result268 saved (246 to 291); cost 70.8% on model tokens, no web searchSame design with the research build of the agent: 69.6% on model tokens, 75.03% with every search uncached

    Pass

  9. CriterionAgent alone: the right account among three shown

    Rule, set before the runSet after a top-3 experiment

    ResultNot measurable: the research build gives one answer and the agent step one answer and one alternative

    Not measured

So Cybooks does not book lines on its own yet. As designed, the system fills lines in and a person confirms them. Cybooks Brain in this table is the version without the rule that lines paid to people are never sent to the AI, for which the criteria were written. Agent step: the Cybooks Brain’s agent, the agent configured in Cybooks. Research build: the GPT-6.1 Terra agent with web search, judged on the same design.

Eight limits to read these numbers by

  • Ten businesses. The held-out set has 1,500 lines, 150 per business, so per-business numbers carry wide intervals.
  • Labels as booked. Each label is a single booking by a person, not reviewed by an accountant. Some errors are label noise.
  • One company, a test on past books. The case study is one European e-commerce brand, run through a separate copy of Cybooks while the memory step is not yet switched on for customers. It covers the account only, with labels and line texts from the company’s books. On raw bank-feed text right after the import fewer lines are right: 83.4% against 94.7% on the lines that could be checked. It is a different dataset from the held-out lines.
  • Books that repeat. A plain lookup on the opening two words of the line text is right on 97.2% of this company’s lines, and on 33.8% of the screening lines of the ten benchmark businesses. History helps this much here because this company’s books repeat a lot.
  • Run once, not in production. Every system ran once on each line set. The Cybooks Brain’s agent step read each line’s history from an export of the same data.
  • One bar, borderline. The memory step’s confident answers were right on 94.5% of the lines it filled in on the held-out set, just under the bar set before the run, and on 96.1% on the fresh lines, which meets it. Read together: about 95%.
  • Time and money, roughly. Time per line mixes model speed with provider queueing, and is missing for Anthropic. Costs come from list prices, not invoices.
  • Not in this benchmark. Gemini, GPT-6 Astra, Claude Fable 5.1, Muse Glimmer 30B and a human baseline.

Model names are trade marks of their owners. Cybooks is not affiliated with any model provider.

Cybooks Brain: bank-line categorization on real books

The definitions, the line sets and the statistics behind this page, with the limits and every table. Enter your email to open it.

Questions about the benchmark

Is any customer data shown on this page?

No. The ten benchmark businesses appear only as letters, and the case-study company only as a European e-commerce brand. The page shows no bank descriptors, supplier or account names, IBANs or example lines from customer data; the one example line is synthetic. IBANs and card numbers were masked before anything was written to disk.

Why does a strong model score low?

Choosing an account is partly convention: two accountants can book the same payment to different accounts, and what matters to the business is that it is booked the way it was booked before. A model that knows accounting but not the business picks the textbook account. On Business E, every top single-call setup scored 12%, while the agents, which can read the history, scored 82%, 82% and 74%.

Why is the Cybooks Brain not in the leaderboard?

The leaderboard is the screening run that chose the Brain’s fallback agent; the Brain’s cost was not measured on those 500 lines. It ran on the 1,500 held-out lines, next to the strongest agents and the strongest single call.

Is the memory step live?

Not yet. The memory step and the agent are built into Cybooks but not yet switched on for customers, so every figure here comes from tests. For the case study the memory step ran in a separate copy of Cybooks, recorded its answers and changed nothing the company sees. As designed, it fills a line in for a person to confirm; Cybooks does not book lines on its own yet.

Why list prices?

Costs are computed from recorded tokens at each provider’s list price, not from invoices, so every setup is priced the same way. Anthropic models ran through the Batch API at 50% of list price; at synchronous prices their cost would double. Model costs are in US$.

Which models were not tested?

Gemini, GPT-6 Astra, Claude Fable 5.1, Muse Glimmer 30B and a human baseline. Gemini had no API key, and GPT-6 Astra and Claude Fable 5.1 were left out on cost.

Did an AI grade the answers?

No. A line is right when the account name in the answer exactly equals the account the business booked. An answer that cannot be parsed, or names no account, counts as wrong.

How often will it be updated?

Each update gets a version and a date on this page. For version 1.0, every system ran once more on 1,000 fresh bank lines that no system had seen.

Does the AI post anything to real books?

No. As designed, Cybooks fills in the account and a person confirms it; Cybooks does not book lines on its own yet.

Version 1.0, 11 Nov 2026

Models
19 models and 136 setups: each model at every reasoning level it supports, as a single call and as an agent. Every setup ran once.
Line sets
500 screening lines, 1,500 held-out lines and 1,000 fresh lines from ten businesses, and one company’s 6,487 test lines for the case study.
Scoring
Exact match with the booked account, Wilson intervals, exact McNemar tests and a paired bootstrap. The method was frozen on 2 November 2026, 12:00 EET, before the screening run.
Re-check
Every system ran once more on 1,000 fresh lines no system had seen. Of 15 claims written down before that run, 9 held on both readings, 4 on one reading and 2 did not hold.

Send your receipts. Your books are done.

Start free for 14 days, no card. You answer a few questions.