cd /news/machine-learning/i-benchmarked-ai-decision-apis-again… · home › topics › machine-learning › article
[ARTICLE · art-169657] src=dev.to ↗ pub= topic=machine-learning verified=true sentiment=· neutral

I benchmarked AI decision APIs against XGBoost for fraud detection. XGBoost won, by a lot.

A developer built an MIT-licensed open benchmark, fraud-decision-lab, comparing new "decision model" APIs from TypeSafe, OpenAI and Cloudflare against a standard XGBoost fraud model. On real anonymised ULB card data, XGBoost caught 82.7% of fraud in its top 1% of cases versus 46.2% for the best AI approach, while on synthetic data XGBoost surfaced 84 frauds in the first 100 reviews against 16–51 for the decision APIs. The decision APIs were fast and cheap (175–324 ms median latency, $0.016–$0.10 per 1,000 synthetic transactions) but ran zero-shot, a limitation the developer notes few-shot prompting or fine-tuning could change.

by read2 min views3 publishedNov 14, 2026

Between September and October, TypeSafe, OpenAI and Cloudflare all shipped "decision model" APIs: you send a case, ask one fixed question, and get a score back. They're being pitched for fraud triage, so I wanted to know how they compare with the boring XGBoost model most fraud teams already run. I built a small open benchmark to find out. It's MIT-licensed and runs offline in about five seconds.

Same transactions, same fields, ranked by each model's score:

The metric is the review queue. Fraud analysts can only look at the top slice of cases, so the question is how much fraud lands in the first 100 reviews, or the top 1% and 5%. Results come with bootstrap ranges.

Synthetic data, 10,000 transactions, 310 frauds. Fraud found in the first 100 reviews:

Approach Frauds in top 100
XGBoost 84
Rules checklist 74
General LLM 57
Decision APIs 16–51

The rules look good here partly because the synthetic labels share risk factors with them, so I wouldn't read much into that row.

Real anonymised card data (ULB, 52 frauds). XGBoost caught 82.7% of fraud in its top 1%. The best AI approach caught 46.2%.

Speed and cost. The APIs are fast and cheap: 175–324 ms median latency and $0.016–$0.10 per 1,000 synthetic transactions.

XGBoost learned from labelled data. The AI approaches ran zero-shot, with no examples. That's the setup you get when a vendor says "no training needed", and it's only one way to use an LLM in fraud work. Few-shot prompts, richer context or fine-tuning could change the picture, and I'd like to see someone try.

Ties distort rankings. One API returned many identical top scores. Changing the tie-break rule moved its top-100 count from 20 to 22, so the benchmark now uses a seeded tie-break and reports it.

Make live calls opt-in. The demo runs offline on recorded outputs. Hitting real APIs needs --allow-external-requests and a --max-cost-usd estimate, so nobody runs up a bill by accident.

Use one schema for every model. Every model gets the same fields. The unavoidable differences (rounding, each provider's request format) are documented rather than hidden.

Compute cost from recorded usage. Costs come from recorded token usage and a dated price snapshot, because pricing pages change faster than benchmarks get rerun.

bash
git clone https://github.com/SmartMobileHouse/fraud-decision-lab
cd fraud-decision-lab && uv sync --frozen && make demo

It's a v1.0 snapshot on two datasets, and providers keep updating their models, so treat it as a starting point. Full write-up with charts: https://smartmobilehouse.com/research/fraud-decision-lab/

Has anyone here tried these decision APIs with few-shot examples or on real production features? I'd happily add a better configuration and publish the new numbers next to the old ones.
── more in #machine-learning 4 stories · sorted by recency
── more on @xgboost 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/i-benchmarked-ai-dec…] indexed:0 read:2min 2026-11-14 · —