OverpayingForAIPricing desk

Extract JSON · 6 checks · max 400 tokens · benched 2026-09-16

Mistral Large 3 2512 vs Mistral Medium 3.5 vs Mistral Small 4 vs Ministral 3 8B 2512 on people mentioned to a json array

Mistral AI models side by side on "People mentioned to a JSON array": Ministral 3 8B 2512 scores 9/10; Ministral 3 8B 2512 is the cheapest answer scoring 8+ at $0.04 per 1,000 runs. Outputs, checks, judge reasons, latency and cost.

The prompt every model received

System

You are a data extraction engine. Reply with JSON only, no prose, no code fences.

User

From the text, return a JSON array of every person mentioned. Each element is an object with keys name, role, email (use null when an email is not given). Preserve the order in which people first appear.

Text: The migration is led by Dana Okafor (Head of Platform, [email protected]). She is supported by Luis Ferreira, a staff engineer, whose address is [email protected]. Questions about billing go to Mei Tanaka, our finance lead; she prefers phone calls and has not shared an email.

Rubric for the judge: A three-element JSON array in order (Dana, Luis, Mei) with correct roles, emails and a JSON null for Mei.

Side by side

Every cell is one OpenRouter call at temperature 0 with the prompt's token cap and reasoning effort "low" where the model supports it. Cost is usage × the catalogue rate in models.json. Quality is one judge call to anthropic/claude-haiku-4.5 against the prompt's rubric, cached per prompt version.

Mistral Large 3 2512

mistralai/mistral-large-2512

9/10
Latency
561ms
Cost
$0.00022
Per 1,000
$0.22

136 in · 103 out · 35 words · checks 6/6

  • json_valid
  • regex
  • contains
  • contains
  • contains
  • regex
```json
[
    {
        "name": "Dana Okafor",
        "role": "Head of Platform",
        "email": "[email protected]"
    },
    {
        "name": "Luis Ferreira",
        "role": "staff engineer",
        "email": "[email protected]"
    },
    {
        "name": "Mei Tanaka",
        "role": "finance lead",
        "email": null
    }
]
```

Judge: Correct structure, order, and content with all three people and proper null handling; minor inconsistency in capitalization of 'staff engineer' vs 'Head of Platform' but this reflects source text variation.

Mistral Medium 3.5

mistralai/mistral-medium-3-5

9/10
Latency
448ms
Cost
$0.00270
Per 1,000
$2.70

148 in · 331 out (237 reasoning) · 25 words · checks 6/6

  • json_valid
  • regex
  • contains
  • contains
  • contains
  • regex
[{"name": "Dana Okafor", "role": "Head of Platform", "email": "[email protected]"}, {"name": "Luis Ferreira", "role": "staff engineer", "email": "[email protected]"}, {"name": "Mei Tanaka", "role": "finance lead", "email": null}]

Judge: Correct structure, order, and content, but 'staff engineer' and 'finance lead' should be capitalized as 'Staff Engineer' and 'Finance Lead' for consistency with 'Head of Platform'.

Mistral Small 4

mistralai/mistral-small-2603

9/10
Latency
853ms
Cost
$0.00018
Per 1,000
$0.18

148 in · 260 out (162 reasoning) · 29 words · checks 6/6

  • json_valid
  • regex
  • contains
  • contains
  • contains
  • regex
```json
[
  {"name": "Dana Okafor", "role": "Head of Platform", "email": "[email protected]"},
  {"name": "Luis Ferreira", "role": "staff engineer", "email": "[email protected]"},
  {"name": "Mei Tanaka", "role": "finance lead", "email": null}
]
```

Judge: Correct structure, order, and content, but 'staff engineer' and 'finance lead' should be capitalized as 'Staff Engineer' and 'Finance Lead' for consistency with 'Head of Platform'.

Ministral 3 8B 2512

mistralai/ministral-8b-2512

9/10
top judge scorecheapest scoring 8+
Latency
382ms
Cost
$3.6e-5
Per 1,000
$0.04

136 in · 103 out · 35 words · checks 6/6

  • json_valid
  • regex
  • contains
  • contains
  • contains
  • regex
```json
[
    {
        "name": "Dana Okafor",
        "role": "Head of Platform",
        "email": "[email protected]"
    },
    {
        "name": "Luis Ferreira",
        "role": "staff engineer",
        "email": "[email protected]"
    },
    {
        "name": "Mei Tanaka",
        "role": "finance lead",
        "email": null
    }
]
```

Judge: Correct structure, order, and content with all three people and proper null handling; minor inconsistency in capitalization of 'staff engineer' vs 'Head of Platform' but this reflects source text variation.

Frequently asked

What does this prompt test?

Extract JSON: A three-element JSON array in order (Dana, Luis, Mei) with correct roles, emails and a JSON null for Mei. The deterministic checks are json_valid, regex, contains, contains, contains, regex.

Which model should I pick for this task?

If the judge's bar of 8/10 is good enough for you, Ministral 3 8B 2512 at $0.04 per 1,000 runs. If you need the top score, Ministral 3 8B 2512 at $0.04 per 1,000 runs.

If our calculators helped you cut down on hidden AI wallet leaks, thanks for using them. A tiny fraction of your savings is what keeps our pricing indexes updated daily.

Not sure which AI is cheapest for your use case? Find out in 30 seconds — no signup required.

AI cost intelligence

Stop overpaying for AI tools

Join the OverpayingForAI list for pricing updates, cheaper alternatives, and practical buying guidance.

Now tracking 50+ AI tools, models, platforms, subscriptions, coding tools, and automation products.

We use your email only for OverpayingForAI updates. Unsubscribe anytime.