How accurate are AI models on freight reference questions — alone, and with FreightUtils tools

Question set v0.2, 300 questions, run 21 October 2026. Every number below is rendered from the committed results.

On 300 freight reference questions, asked alone, the four models were confidently wrong on 1–5% of the questions outside ADR 2027 (Claude Fable 5.1 (claude-fable-5-1) 2%, GPT-6 Astra (gpt-6-astra) 5%, Gemini 4 Argon (gemini-4-argon) 1%, Grok 4.7 (grok-4.7) 1%). With the FreightUtils tools, the three models that completed the tools condition answered 809 of 810 outside ADR 2027 and were confidently wrong on 0–0.4%.

FreightUtils ran this eval of its own tools. The question set, the harness, the raw per-question results and the scoring are public in the freightutils-eval repository, and anyone can re-run it.

The results

ModelConditionnAccuracyUnknownConfident wrongMean tool callsMean latencyCost (USD)
Claude Fable 5.1A, alone300 / 27086% / 90%9% / 8%5% / 2%0.02.7 s2.12
Claude Fable 5.1B, with the tools300 / 27090% / 100%10% / 0%0% / 0%1.03.8 s11.51
GPT-6 AstraA, alone300 / 27085% / 94%11% / 1%4% / 5%0.04.7 s1.76
GPT-6 AstraB, with the tools300 / 27090% / 100%10% / 0%0% / 0%1.07.4 s14.05
Gemini 4 ArgonA, alone300 / 27084% / 93%15% / 5%1% / 1%0.09.6 s0.24
Gemini 4 ArgonB, with the tools300 / 27090% / 99.6%10% / 0%0.3% / 0.4%1.030.4 s14.57
Grok 4.7A, alone299 / 26985% / 95%13% / 4%1% / 1%0.030.0 s4.40
Grok 4.7B, with the toolsnot run — xAI credit; needs about USD 30

Each cell gives the figure over all questions, then after the slash excluding the 30 ADR 2027 questions, which no FreightUtils tool serves yet. “Unknown” = the model said it did not know. “Confident wrong” = a definite wrong value. Tool calls, latency and cost are over all questions; cost covers every answer scored. Grok 4.7 condition B was not run: run only if all 300 B answers fit the xAI credit left after A; they did not (estimate USD 29.93, against USD 10 of credit). One answer of Grok 4.7 condition A failed twice with a network error and is not scored, so its n is 299 / 269.

Accuracy by family

ModelConditionADR 2025 → 2027 changes1.1.3.6 exemption totalsADR Table A fieldsFreight arithmeticHS structureIdentifiers
Claude Fable 5.1A, alone53%93%81%100%100%80%
Claude Fable 5.1B, with the tools3%100%100%100%100%100%
GPT-6 AstraA, alone0%87%91%100%100%90%
GPT-6 AstraB, with the tools0%100%100%100%100%100%
Gemini 4 ArgonA, alone0%97%93%98%100%82%
Gemini 4 ArgonB, with the tools0%100%99%100%100%100%
Grok 4.7A, alone0%100%
of 29
93%100%100%85%

What the models got wrong

Every disputed value was checked against the primary source, and the served data was right on every one of the 37 confident-wrong answers below. Two questions in the earlier version of the set were the eval’s own faults and were fixed in v0.2:

QuestionModel / conditionExpectedAnswerChecked against the primary sourceVerdict
adr_exemption-011
1160 L UN 2934, PG III
GPT-6 Astra / A11603480Model error. Transport category 3 (Table A col 15), multiplier 1 (1.1.3.6.4): 1160 points. Checked 2026-10-20.model error
adr_exemption-012
755 L UN 2053 + 170 L
GPT-6 Astra / A9251265Model error. Both are in transport category 3 (×1): 755 + 170 = 925. Checked 2026-10-20.model error
adr_exemption-024
240 L UN 1090 PG II + 180 L UN 2904
GPT-6 Astra / ANOYESModel error. 240 × 3 + 180 × 1 = 900 points, which does not exceed 1000. Categories are from Table A and the multipliers from 1.1.3.6.4. Checked 2026-10-20.model error
adr_exemption-027
145 L UN 1173 + 265 L UN 2219
GPT-6 Astra / A7001230Model error. 145 × 3 (category 2) + 265 × 1 (category 3) = 700. Checked 2026-10-20.model error
adr_table_a-011
UN 3320 PG III, col 3b
GPT-6 Astra / AC5CW1Model error. Table A gives C5. Checked 2026-10-20.model error
adr_table_a-026
UN 2742, col 4
GPT-6 Astra / AIIIModel error. Table A gives II. Checked 2026-10-20.model error
adr_table_a-035
UN 3330, col 15
Grok 4.7 / A(E)CModel error. Re-read 2026-10-21: the workbook row gives "0 (E)".model error
adr_table_a-037
UN 2336, col 15
GPT-6 Astra / A(C/E)C/DModel error. Re-read 2026-10-21: the workbook row gives "1 (C/E)".model error
adr_table_a-037
UN 2336, col 15
Grok 4.7 / A(C/E)D/EModel error. Re-read 2026-10-21: the workbook row gives "1 (C/E)".model error
adr_table_a-039
UN 1418 PG I, col 15
GPT-6 Astra / A(E)B/EModel error. Table A gives (E). Checked 2026-10-20.model error
adr_table_a-040
UN 3374, col 15
GPT-6 Astra / A(D)B/DModel error. Re-read 2026-10-21: the workbook row gives "2 (D)".model error
adr_table_a-040
UN 3374, col 15
Grok 4.7 / A(D)B/DModel error. Re-read 2026-10-21: the workbook row gives "2 (D)".model error
adr_table_a-044
UN 1418 PG II, col 7a
GPT-6 Astra / A0500 gModel error. Table A gives 0 (LQ not permitted). Checked 2026-10-20.model error
identifiers-011
AWB prefix 350
GPT-6 Astra / AYPYNModel error. The site's record is Air Premia (YP/350), sourced from Air Premia Cargo, whose site answered 403 on the day. ShipsGo also lists Air Premia as YP/350 (shipsgo.com), but it is an aggregator and counts only as support. YN is Air Creebec, which has no AWB prefix in the dataset.model error
identifiers-031
USDVA
GPT-6 Astra / ADelevanDavantModel error. USDVA is Delevan, NY in UN/LOCODE 2025-1 (site's parse).model error
identifiers-032
JPIHO
GPT-6 Astra / AIhotaIhoModel error. JPIHO is Ihota in UN/LOCODE 2025-1 (site's parse). Checked 2026-10-20.model error
identifiers-037
JPYSS
Grok 4.7 / AYoshiaseYatsushiroModel error. JPYSS is Yoshiase, subdivision 34. Yatsushiro is a different code, JPYAT (subdivision 43). Both from UN/LOCODE 2025-1 (site's parse).model error
adr_2027_delta-005
Under the ADR 2027 amendments, does Table A column (6) (special provisions) change for UN 3536 (LITHIUM BATTERIES INSTALLED IN CARGO TRANSPORT UNIT lithium ion
Claude Fable 5.1 / A389 410NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 3536 column (6); WP.15/274 p.16
model error
adr_2027_delta-009
Under the ADR 2027 amendments, does Table A column (20) (hazard identification number) change for UN 1041 (ETHYLENE OXIDE AND CARBON DIOXIDE MIXTURE with more t
Claude Fable 5.1 / A238NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 1041 column (20); WP.15/274 p.15
model error
adr_2027_delta-011
Under the ADR 2027 amendments, does Table A column (5) (danger labels) change for UN 1041 (ETHYLENE OXIDE AND CARBON DIOXIDE MIXTURE with more than 9 % but not
Claude Fable 5.1 / A2.1 +8NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 1041 column (5); WP.15/274 p.15
model error
adr_2027_delta-012
Under the ADR 2027 amendments, does Table A column (3b) (classification code) change for UN 1041 (ETHYLENE OXIDE AND CARBON DIOXIDE MIXTURE with more than 9 % b
Claude Fable 5.1 / A2FCNO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 1041 column (3b); WP.15/274 p.15
model error
adr_2027_delta-017
Under the ADR 2027 amendments, does Table A column (3b) (classification code) change for UN 3300 (ETHYLENE OXIDE AND CARBON DIOXIDE MIXTURE with more than 87 %
Claude Fable 5.1 / A2TFCNO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 3300 column (3b); WP.15/274 p.16
model error
adr_2027_delta-021
Under the ADR 2027 amendments, does Table A column (5) (danger labels) change for UN 3300 (ETHYLENE OXIDE AND CARBON DIOXIDE MIXTURE with more than 87 % ethylen
Claude Fable 5.1 / A2.3 +2.1 +8NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 3300 column (5); WP.15/274 p.16
model error
adr_2027_delta-025
Under the ADR 2027 amendments, does Table A column (20) (hazard identification number) change for UN 1727 (AMMONIUM HYDROGENDIFLUORIDE, SOLID)? Its ADR 2025 val
Claude Fable 5.1 / A86NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 1727 column (20); WP.15/274 p.15
model error
adr_2027_delta-028
Under the ADR 2027 amendments, does Table A column (20) (hazard identification number) change for UN 2372 (1,2-DI-(DIMETHYLAMINO) ETHANE)? Its ADR 2025 value is
Claude Fable 5.1 / A368NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 2372 column (20); WP.15/274 p.15
model error
adr_2027_delta-030
Under the ADR 2027 amendments, does Table A column (7a) (limited quantity) change for UN 2956 (5-tert-BUTYL-2,4,6-TRINITRO-m-XYLENE (MUSK XYLENE))? Its ADR 2025
Claude Fable 5.1 / A0NO CHANGEModel error: the site matches ECE/TRANS/WP.15/274 pp. 15–16 (the Table A instruction for this UN)
Source: UNECE; ECE/TRANS/WP.15/274, /Add.1, /Corr.1 (accepted, C.N.395.2026; applies from 1 January 2027); record UN 2956 column (7a); WP.15/274 p.16
model error
adr_table_a-037
what is the tunnel restriction code (Table A column 15) for UN 2336 (ALLYL FORMATE)?
Claude Fable 5.1 / A(C/E)D/EModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 2336_0; field tunnel_restriction_code
model error
adr_table_a-039
what is the tunnel restriction code (Table A column 15) for UN 1418, packing group I (MAGNESIUM POWDER or MAGNESIUM ALLOYS POWDER)?
Claude Fable 5.1 / A(E)B/EModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 1418_0; field tunnel_restriction_code
model error
adr_table_a-039
what is the tunnel restriction code (Table A column 15) for UN 1418, packing group I (MAGNESIUM POWDER or MAGNESIUM ALLOYS POWDER)?
Gemini 4 Argon / A(E)B/EModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 1418_0; field tunnel_restriction_code
model error
adr_table_a-040
what is the tunnel restriction code (Table A column 15) for UN 3374 (ACETYLENE, SOLVENT FREE)?
Claude Fable 5.1 / A(D)B/DModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 3374_0; field tunnel_restriction_code
model error
adr_table_a-040
what is the tunnel restriction code (Table A column 15) for UN 3374 (ACETYLENE, SOLVENT FREE)?
Gemini 4 Argon / A(D)B/DModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 3374_0; field tunnel_restriction_code
model error
adr_table_a-044
what is the limited quantity (Table A column 7a); answer 0 if limited quantity is not permitted for UN 1418, packing group II (MAGNESIUM POWDER or MAGNESIUM ALL
Claude Fable 5.1 / A0500 gModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 1418_1; field limited_quantity
model error
adr_table_a-053
what is the danger label(s) (Table A column 5), primary first, joined with + for UN 3536 (LITHIUM BATTERIES INSTALLED IN CARGO TRANSPORT UNIT lithium ion batter
Gemini 4 Argon / B99AModel error: the site matches ADR2025_tabA_E.xlsx (UNECE Digital ADR 2025, Table A)
Source: UNECE; ADR 2025 (ECE/TRANS/352); record 3536_0; field labels
model error
identifiers-005
Which airline uses the air waybill (AWB) prefix 607?
Claude Fable 5.1 / AEYDNModel error: 607 is Etihad (the record is sourced from Etihad Cargo)
Source: Etihad Cargo; status_checked_at 2026-08-11; record etihad-airways; field awb_prefix
model error
identifiers-031
Which place does the UN/LOCODE USDVA designate?
Claude Fable 5.1 / ADelevanDanvilleModel error: the site's UNECE 2025-1 record is Delevan, NY (42.48 N, 78.48 W)
Source: UNECE; UN/LOCODE 2025-1; record USDVA; field name
model error
identifiers-035
Which place does the UN/LOCODE EEMRS designate?
Gemini 4 Argon / AMeeruseMerekülaModel error: Meeruse (59.45 N, 24.67 E) in the site's UNECE 2025-1 record; Mereküla is a different place
Source: UNECE; UN/LOCODE 2025-1; record EEMRS; field name
model error
identifiers-040
Which place does the UN/LOCODE JPKHR designate?
Gemini 4 Argon / AKiharaKohariModel error: the site's UNECE 2025-1 record is Kihara
Source: UNECE; UN/LOCODE 2025-1; record JPKHR; field name
model error

Rows answered in the earlier run and carried into this one were checked then, against the same sources; the table names the source for each. Questions are shortened; the full wording is in the repository.

ADR 2027: the gap in our own tools

30 questions ask what the ADR 2027 amendments change in Table A. Claude Fable 5.1 alone answered 16 of 30 correctly. With the FreightUtils tools it answered 1 of 30 and said UNKNOWN to 29: the tools serve ADR 2025. GPT-6 Astra, Gemini 4 Argon, Grok 4.7 said UNKNOWN to all 30, in every condition they ran.

That is a gap in FreightUtils: no FreightUtils tool serves ADR 2027 yet. The amended values are on the ADR 2027 changes pages, not in the API. An ADR 2027 field on adr_lookup is the next tool change.

ADR 2027 was accepted: depositary notification C.N.395.2026 (9 October 2026) records no objection to the amendments proposed by C.N.252.2026. It applies from 1 January 2027, and ADR 2025 may still be applied until 30 June 2027 (1.6.1.1). ADR 2025 remains the edition FreightUtils serves and the one that applies until ADR 2027 takes effect on 1 January 2027; after that, ADR 2025 may still be applied until 30 June 2027 (1.6.1.1).

ModelConditionRightUnknownConfident wrong
Claude Fable 5.1A, alone16 of 305 of 309 of 30
Claude Fable 5.1B, with the tools1 of 3029 of 300 of 30
GPT-6 AstraA, alone0 of 3030 of 300 of 30
GPT-6 AstraB, with the tools0 of 3030 of 300 of 30
Gemini 4 ArgonA, alone0 of 3030 of 300 of 30
Gemini 4 ArgonB, with the tools0 of 3030 of 300 of 30
Grok 4.7A, alone0 of 3030 of 300 of 30

Method

Limits

Run it yourself
Results commit 0fef2a8 (results/2026-10-21-full-pass) · question set v0.2 sha256 43570a01fbf479f9aedcd391384276d773ab731de90cb208a73b7b7422bd0c5c · read on 27 October 2026. The numbers on this page are rendered from the committed results; nothing is typed by hand. How FreightUtils sources its data is on the Methodology page.