Best Models for Structured Data & Fact Extraction
A quality score shows how good a model’s answers are, not how often you get one you can use. In the benchmark, Claude Opus 5.5 scores 8.64 out of 10 on claim continuity classification when it answers, but it answers on only 19% of attempts [^1]. If a parser depends on the output, the score is the first filter; answer rate and usable output are the second.
The score counts only the calls that answer
On structured output extraction, quality scores are measured on the calls that returned an answer. Calls that return nothing show up instead in the answer rate, the share of attempts on which a model answers at all.
Gemini 3.5 Flash scores 9.78 out of 10 on this task but answers on 77% of attempts [^2][^3]. Qwen 3.8 Max scores 9.34 out of 10 when it answers, but answers on only 59% of attempts [^3].
At the top of the task, quality alone cannot settle the choice. Claude Opus 5.5 scores 9.93 out of 10 and Claude Sonnet 5.5 scores 9.88, but their uncertainty ranges overlap, so the two are tied [^3].
No answer rate is given here on this task for either model, or for Xiaomi MiMo V2.6 Flash and Qwen 3.7 Plus close behind. None of the four can yet be judged on how often it answers.
An answer can come back and still be unusable
Answers that come back still have to parse. On structured output extraction, $8.52 of $35.36 was spent on output that could not be parsed, or 24.1% [^2][^3]. The models behind that loss are not named.
MiniMax M3 failed on 0.3% of 23,451 attempts, yet 25.1% of its attempts needed repair before use, leaving 74.6% usable as returned [^4][^5][^6][^7]. A near-zero failure rate, on its own, does not show that output is ready for a parser.
Some failures are easier to catch than others
On known-URL extraction, the share of attempts judged a failure runs from 10.6% for gemini-3-flash-preview to 54.3% for Gemini 3.1 Flash Lite [^8][^9]. Most of gemini-3-flash-preview’s failures are refusals, which are visible and can be retried, while most of Gemini 3.1 Flash Lite’s fall in an “other” category, which can be a wrong answer that goes unnoticed [^8][^9].
Classification shows the same split. On claim continuity classification, the most common failure for Qwen 3.7 Plus is terse output, which is visible, while for Meta Muse Spark 1.3 it is assigning the wrong class, which can pass unnoticed [^1].
What to do with this
- Read the answer rate next to the score, and treat a missing one as unknown, not as a pass.
- Add explicit handling for unanswered calls, such as a fallback model, even for top scorers.
- Parse and check every response before it goes downstream, and track how much spend goes on output you cannot use as returned.
- Weigh how a model fails as well as how often, and add content checks where failures can pass unnoticed.
Check the live benchmark at https://fronset.ai/benchmark/ to set the quality bar and answer-rate floor your workload needs.