OverpayingForAIPricing desk

SQL · 6 checks · max 500 tokens · benched 2026-09-16

Grok 4.6 vs Grok 4.5 vs Grok 4.20 vs Grok 4.3 on top five customers by 2025 spend

xAI models side by side on "Top five customers by 2025 spend": Grok 4.3 scores 10/10; Grok 4.5 is the cheapest answer scoring 8+ at $1.87 per 1,000 runs. Outputs, checks, judge reasons, latency and cost.

The prompt every model received

System

You are a database engineer. Reply with a single SQL statement and nothing else.

User

Tables: customers(id, name) and orders(id, customer_id, amount, ordered_at). Write one standard SQL query that returns each customer's name and their total order amount for calendar year 2025, highest total first, limited to the top 5. Use a JOIN, GROUP BY and ORDER BY.

Rubric for the judge: Correct join and aggregate, filters ordered_at to 2025, sorts descending, limits to 5, portable SQL.

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.

Grok 4.6

x-ai/grok-4.6

10/10
Latency
5.3s
Cost
$0.00275
Per 1,000
$2.75

291 in · 393 out (319 reasoning) · 35 words · checks 6/6

  • regex
  • regex
  • regex
  • regex
  • regex
  • contains
SELECT c.name, SUM(o.amount) AS total FROM customers c JOIN orders o ON c.id = o.customer_id WHERE o.ordered_at >= DATE '2025-01-01' AND o.ordered_at < DATE '2026-01-01' GROUP BY c.id, c.name ORDER BY total DESC LIMIT 5;

Judge: Query correctly joins customers and orders, filters 2025 using standard DATE literals, groups by customer with proper aggregation, orders descending by total, limits to 5, and uses portable SQL syntax.

Grok 4.5

x-ai/grok-4.5

9/10
cheapest scoring 8+
Latency
6.2s
Cost
$0.00187
Per 1,000
$1.87

291 in · 251 out (182 reasoning) · 32 words · checks 6/6

  • regex
  • regex
  • regex
  • regex
  • regex
  • contains
SELECT c.name, SUM(o.amount) AS total FROM customers c JOIN orders o ON c.id = o.customer_id WHERE o.ordered_at >= '2025-01-01' AND o.ordered_at < '2026-01-01' GROUP BY c.name ORDER BY total DESC LIMIT 5;

Judge: Query correctly uses JOIN, GROUP BY, ORDER BY, and LIMIT 5 with proper 2025 date filtering; minor deduction because GROUP BY should ideally include c.id to be fully standard-compliant, though c.name alone works in most databases.

Grok 4.20

x-ai/grok-4.20

9/10
Latency
6.2s
Cost
$0.00317
Per 1,000
$3.17

267 in · 1189 out (1126 reasoning) · 32 words · checks 6/6

  • regex
  • regex
  • regex
  • regex
  • regex
  • contains
SELECT c.name, SUM(o.amount) AS total FROM customers c JOIN orders o ON c.id = o.customer_id WHERE o.ordered_at >= '2025-01-01' AND o.ordered_at < '2026-01-01' GROUP BY c.name ORDER BY total DESC LIMIT 5;

Judge: Query correctly uses JOIN, GROUP BY, ORDER BY, and LIMIT 5 with proper 2025 date filtering; minor deduction because GROUP BY should ideally include c.id to be fully standard-compliant, though c.name alone works in most databases.

Grok 4.3

x-ai/grok-4.3

10/10
top judge score
Latency
6.2s
Cost
$0.00190
Per 1,000
$1.90

273 in · 705 out (652 reasoning) · 31 words · checks 6/6

  • regex
  • regex
  • regex
  • regex
  • regex
  • contains
SELECT c.name, SUM(o.amount) AS total FROM customers c JOIN orders o ON c.id = o.customer_id WHERE EXTRACT(YEAR FROM o.ordered_at) = 2025 GROUP BY c.id, c.name ORDER BY total DESC LIMIT 5;

Judge: Query correctly joins customers and orders, filters 2025 using EXTRACT(YEAR FROM...), groups by customer with proper aggregation, orders by total descending, limits to 5, and uses portable standard SQL syntax.

Frequently asked

What does this prompt test?

SQL: Correct join and aggregate, filters ordered_at to 2025, sorts descending, limits to 5, portable SQL. The deterministic checks are regex, regex, regex, regex, regex, contains.

Which model should I pick for this task?

If the judge's bar of 8/10 is good enough for you, Grok 4.5 at $1.87 per 1,000 runs. If you need the top score, Grok 4.3 at $1.90 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.