Stubbi
Rankings
Stubbi testRun and reviewed by Stubbi

Which AI model tags SEC filings best?

Ten AI models tagged 100 real SEC filings with 41 investor tags, such as raised guidance, a going-concern warning or a pending acquisition. Every answer was checked against reviewed labels.

We ran this benchmark to choose the model that tags filings for Panabee.

Updated November 7, 2026100 filings41 tags10 modelsDownload the data 2.3 MB zip
Best on priority tags91.3

DeepSeek V4.1 Flash

Current tagger80.6

Gemini 3.5 Flash-Lite

Six-month retag cost$106

DeepSeek V4.1 Flash, against $494 for Gemini 3.5 Flash-Lite

Priority tags

Higher is better

The 14 tags investors screen for most: strategic review, pending acquisition, strategic pivot, financial distress, going-concern warning, material litigation, backlog inflection, profitability milestone, revenue record, beat guidance, missed guidance, guidance raised, guidance lowered and margin inflection.

SEC filing tagging: priority tags, ranked by F1
RankModelF190% rangePrecisionRecallPer earnings filingPer event 8-KSix-month retag
1DeepSeek V4.1 FlashDeepInfra91.387.6 to 95.089.293.5$0.0047$0.0013$106
2Qwen 3.8 FlashAlibaba90.685.7 to 95.287.993.5$0.0088$0.0027$203
3GPT-6 LunaOpenAI89.184.7 to 93.386.491.9$0.0059$0.0014$127
4Gemini 3.8 FlashGoogleLabeler87.381.4 to 92.5100.077.4$0.0473$0.0160$1,131
5Claude Haiku 5.5Claude Platform on AWS83.777.4 to 89.780.687.1$0.0081$0.0025$188
6Gemini 3.5 Flash-LiteGoogleCurrent tagger80.673.7 to 87.077.683.9$0.0198$0.0076$494
7GPT-6.1 TerraOpenAILabeler78.970.9 to 86.291.569.4$0.0552$0.0122$1,172
8ClefCloudflareDecision model75.969.9 to 81.562.596.8$0.0125$0.0036$284
9Jev 1.14TypeSafeDecision model75.769.7 to 81.367.985.5$0.0021$0.0005$46
10Gemini 3.1 Flash-LiteGoogle74.768.9 to 80.063.690.3$0.0134$0.0041$312

14 tags with 62 true cases across 100 filings.

F1 combines precision, the share of yes answers that were right, and recall, the share of true tags a model found. 100 is perfect. The 90% range comes from resampling the filings 2,000 times. Costs are measured on these runs and include reasoning tokens. The six-month retag projects the cost of retagging 24,631 Panabee articles from each model's measured cost, scaled to the $494 the current tagger costs.

Other special situations

Higher is better

Spinoffs, divestitures, activist campaigns, tender offers, deleveraging, contract wins and the other event tags.

SEC filing tagging: other tags, ranked by F1
RankModelF190% rangePrecisionRecall
1DeepSeek V4.1 FlashDeepInfra93.088.3 to 97.295.290.9
2Qwen 3.8 FlashAlibaba90.983.7 to 96.690.990.9
3Gemini 3.8 FlashGoogleLabeler90.084.0 to 95.2100.081.8
4GPT-6 LunaOpenAI86.780.0 to 92.384.888.6
5Claude Haiku 5.5Claude Platform on AWS84.878.2 to 90.981.388.6
6Gemini 3.5 Flash-LiteGoogleCurrent tagger83.775.9 to 90.785.781.8
7ClefCloudflareDecision model82.875.9 to 88.983.781.8
8GPT-6.1 TerraOpenAILabeler81.372.7 to 88.778.784.1
9Jev 1.14TypeSafeDecision model79.171.2 to 86.076.681.8
10Gemini 3.1 Flash-LiteGoogle76.267.3 to 84.265.690.9

15 tags with 44 true cases across 100 filings.

Industry tags

Higher is better

AI, crypto, biotech, energy, solar, finance, real estate and semiconductors.

SEC filing tagging: industry tags, ranked by F1
RankModelF190% rangePrecisionRecall
1Gemini 3.8 FlashGoogleLabeler100.0100.0 to 100.0100.0100.0
2Claude Haiku 5.5Claude Platform on AWS98.796.1 to 100.0100.097.4
3GPT-6.1 TerraOpenAILabeler97.594.1 to 100.095.1100.0
4Gemini 3.5 Flash-LiteGoogleCurrent tagger96.292.1 to 99.095.097.4
5GPT-6 LunaOpenAI96.191.8 to 98.997.494.9
6DeepSeek V4.1 FlashDeepInfra96.091.8 to 98.9100.092.3
7ClefCloudflareDecision model94.790.0 to 98.697.392.3
8Qwen 3.8 FlashAlibaba92.386.8 to 97.192.392.3
9Jev 1.14TypeSafeDecision model91.685.7 to 96.386.497.4
10Gemini 3.1 Flash-LiteGoogle82.675.0 to 88.971.797.4

8 tags with 39 true cases across 100 filings.

Run-to-run spread

Priority tags

Three models ran twice on the same filings. A gap between two models smaller than a model's own spread is not a real difference.

Priority-tag F1 on two identical runs
ModelFirst runSecond runSame answer
DeepSeek V4.1 Flash91.391.387.2%
Gemini 3.5 Flash-Lite80.678.777.6%
GPT-6 Luna89.190.585.2%

Same answer is the share of priority-tag cells where either run said yes and both runs agreed.

Long filings

Special-situation tags

10 more earnings filings of 55,000 to 113,000 tokens, above the main test's range. Treat this small sample as a sanity check.

Results on long filings
ModelFoundFalse alarmsMissedF1
Gemini 3.8 FlashLabeler900100.0
DeepSeek V4.1 Flash81188.9
GPT-6 Luna83180.0
Gemini 3.5 Flash-LiteCurrent tagger72277.8
Claude Haiku 5.586169.6

Coverage

True cases per tag

4 priority tags have no true case in these filings: material litigation, backlog inflection, missed guidance and margin inflection. For them the test only counts false alarms. Among the other tags, management buyout, rights offering, bankruptcy emergence and receivership have fewer than 3 true cases and are also scored for false alarms only. 61 cells where a careful expert could go either way are left out of scoring.

  • strategic review3
  • pending acquisition7
  • strategic pivot3
  • financial distress7
  • going-concern warning8
  • material litigation0False alarms only
  • backlog inflection0False alarms only
  • profitability milestone4
  • revenue record6
  • beat guidance3
  • missed guidance0False alarms only
  • guidance raised14
  • guidance lowered7
  • margin inflection0False alarms only
Other and industry tags
  • spinoff3
  • divestiture3
  • asset sale2
  • activist campaign3
  • unsolicited offer4
  • tender offer2
  • deleveraging5
  • recapitalization5
  • bankruptcy filing4
  • major contract win1
  • major contract loss0False alarms only
  • pricing action2
  • capacity expansion6
  • special dividend2
  • buyback authorization2
  • AI3
  • crypto2
  • biotech18
  • energy7
  • solar0False alarms only
  • finance8
  • real estate0False alarms only
  • semiconductors1
How the test works

Each model got Panabee's production tagging prompt as the system message and one filing as the user message. The filing text is exactly what the production tagger sends: a short context block with the date, ticker and company, then each document converted from HTML to Markdown. The model answered all 41 tags yes or no in one JSON object, with an evidence quote and a reason for each yes. Only yes answers count.

The 100 filings are from May to November 2026. 50 are quarterly earnings: the earnings press release plus the full 10-Q, with a median of about 42,600 tokens. Half of those were drawn at random and half were picked for rare situations and hard negatives, such as reaffirmed guidance. The other 50 are event 8-Ks with their press releases, with a median of about 4,600 tokens, including routine filings that should get no special-situation tags.

Language models ran through OpenRouter at temperature 0 with medium reasoning. Decision models return a probability for each yes-or-no question. They got the same text and one question per tag, and a probability of 0.5 or more counts as yes. Neither decision model returns an evidence quote.

Scores pool every filing and tag in a group, so each true tag counts once. The production converter wraps table cells in background-color markers that carry no content, so they were removed. Rerunning two models with the markers left in changed no score beyond run-to-run noise. Running the whole benchmark cost $14.86 in model calls.

How the labels were made

Two models labeled every filing with the same prompt: Gemini 3.8 Flash and GPT-6.1 Terra. Claude Code then adjudicated 339 calls by reading each filing against the written tag definitions. It ruled on every tag either labeler said yes to, every disagreement, and every yes from a tested model that both labelers said no to. Each ruling quotes the filing, and a script confirms the quote appears in it word for word. A tag nobody flagged counts as no.

The rulings came out 146 yes, 132 no and 61 ambiguous. A separate Claude review of 52 sampled rulings found none to overturn. No person reviewed the labels.

Three judgment calls shape the labels. A company that doubts it can continue as a going concern but has no debt is left out of the financial distress score. Medical device makers are not tagged biotech. Guidance narrowed to a range with a lower midpoint, as in one EDAP earnings release, counts as lowered guidance.

Limits
  • Gemini 3.8 Flash and GPT-6.1 Terra made the labels and Claude adjudicated them, which could favor those model families. A tag both labelers missed was caught only if a tested model flagged it.
  • Coverage is thinner than planned, with 62 true priority tags. Raised guidance, going-concern warnings, financial distress, pending acquisitions, lowered guidance and record revenue carry most of the priority score.
  • Earnings filings stop at 55,000 tokens, which leans toward smaller companies. The long-filing check is the only test above that.
  • These are November 2026 model versions with one prompt. A different prompt could change the order.
Models and providers
Model versions and providers
ModelVersionServed byMedian time per filing
DeepSeek V4.1 Flashdeepseek/deepseek-v4.1-flash-1017October 17 snapshot, fp8 precisionDeepInfra22.2 s
Qwen 3.8 Flashqwen/qwen3.8-flashAlibaba47.0 s
GPT-6 Lunaopenai/gpt-6-lunaOpenAI12.2 s
Gemini 3.8 Flashgoogle/gemini-3.8-flashGoogle17.3 s
Claude Haiku 5.5anthropic/claude-haiku-5.5Claude Platform on AWS12.4 s
Gemini 3.5 Flash-Litegoogle/gemini-3.5-flash-liteGoogle6.9 s
GPT-6.1 Terraopenai/gpt-6.1-terraOpenAI11.8 s
Clefcloudflare/clefCloudflare4.5 s
Jev 1.14typesafe/jev-1.14-20261014TypeSafe0.4 s
Gemini 3.1 Flash-Litegoogle/gemini-3.1-flash-liteGoogle4.8 s

Not run: Muse Spark 1.3 Contributor. Its only provider may train on prompts, and our gateway account blocks providers that do. GLiDE. No gateway we use carries it. It needs a separate account, and it bills each filing once per tag.

The dataset

The download holds 80 filings with their labels and evidence, the prompt, the scoring code and every model's raw answers. Another 20 filings are held out so future models can be tested on filings they have not seen. Their scores count in the tables above, but their text is not published.

Download the data 2.3 MB zip

SHA-256 6fe6d397e2005ed8e6fbf6c6107d97d99508ac5367e84b2cd7bd247653047250