Model authenticity check

Is your API really serving the model you pay for?

Enter a relay or third-party endpoint, key and model name. We combine independent evidence — output fingerprint, tokenizer, billing and response details — to tell whether it matches the model it claims to be. Runs in your browser, free.

Advanced

Takes 1–3 minutes and about 7–25 requests (most are tiny), billed to your API account. Your key is used for this check only and never stored.

What we check

Output fingerprint

The model writes a few hundred integers on first instinct. Each model favours certain values, ranges and last digits — like handwriting. The task is disguised as an ordinary request with random wording, language and length, so a relay can’t tell it is a test.

Tokenizer

A dozen crafted short texts reveal how the upstream counts input tokens. Each model family splits text differently; this does not depend on what the model says, so rewriting answers can’t hide it.

Billing check

For the same text, how many output tokens are billed — and how many input tokens an empty request costs, which exposes hidden system prompts or inflated billing.

Response details

The model name, response ID and finish reason the endpoint returns, plus speed.

Automatic second round

If round one disagrees, a fresh set of prompts runs automatically. “Inconsistent” requires both rounds to disagree, so genuine endpoints are not flagged by chance.

Accuracy

99.9%impostors from another model family caught (one round)
98.7%model family identified correctly
91.0%exact model identified correctly
0.0%genuine listed models wrongly marked “Inconsistent” (two rounds)

Held-out evaluation: each prompt environment is left out of the library and used for testing, 699 groups in total. The library currently covers 64 models in 14 families and keeps growing.

Models in the library

Claudeclaude-fable-5 · claude-fable-5.1 · claude-haiku-4.5 · claude-haiku-5.5 · claude-opus-4.6 · claude-opus-4.7 · claude-opus-4.8 · claude-opus-5 · claude-opus-5.5 · claude-sonnet-4.6 · claude-sonnet-5 · claude-sonnet-5.5
DeepSeekdeepseek-v3.2 · deepseek-v4-flash · deepseek-v4-flash-0731 · deepseek-v4-pro · deepseek-v4-pro-0813 · deepseek-v4.1-flash · deepseek-v4.1-flash-1017
Geminigemini-2.5-pro · gemini-3.1-pro-preview · gemini-3.5-flash · gemini-3.5-flash-lite · gemini-3.6-flash · gemini-3.7-flash · gemini-3.8-flash · gemini-4-argon
GLMglm-5.2 · glm-5.3 · glm-5.3-flash · glm-5.3-flashx
GPTgpt-4o · gpt-5.4 · gpt-5.5 · gpt-5.6-luna · gpt-5.6-sol · gpt-5.6-terra · gpt-6-astra · gpt-6-luna · gpt-6-sol · gpt-6.1-terra
Grokgrok-4.5 · grok-4.6 · grok-4.7
Hunyuanhy4-preview
Kimikimi-k2.8-preview · kimi-k3 · kimi-k3.1-pro
MiMomimo-v2.5 · mimo-v2.5-pro · mimo-v2.6-flash · mimo-v2.6-pro
MiniMaxminimax-m3.1-flash
Musemuse-spark-1.2 · muse-spark-1.3 · muse-wonder
Qwenqwen3.8-27b · qwen3.8-flash · qwen3.8-max-0902 · qwen3.8-omni-flash
Seedseed-2.0-lite · seed-2.0-mini · seed-2.1-turbo
Stepstep-5-preview

Models not listed can still be checked: tokenizer, billing and response details work as usual; the fingerprint is a hint only and never decides “Inconsistent” on its own.

FAQ

Is my API key safe?

The check runs in your browser. If the endpoint allows browser requests, your key goes only to that endpoint. Otherwise the request is relayed by ModelBank unchanged — we do not store or log keys or content. You can force direct mode under “Advanced”.

Can I use the result as proof?

It is a statistical consistency check (see the accuracy above), not legal proof. If you get “Suspicious”, run it again later; “Inconsistent” means several independent signals disagree.

Why “Inconclusive”?

Usually the model is not in our library yet, answers were cut off or refused, or the endpoint returns no token usage.

How much does it cost?

About 7–25 requests: 6 of them write a few hundred numbers (roughly 1–2K tokens), the rest are tiny requests of a dozen tokens.

Do you publish lists of bad providers?

No. We provide the tool and the report; sharing is up to you.