Compare
How do FreeModel alternatives compare?
最后更新:
Twelve tasks with exactly one right answer each. Pick the models you want, run them, and get a score, a timing and a list of what each one got wrong. The judging happens in your browser. Nothing about your run is sent anywhere unless you save it.
Sign in to run a test
Running a set costs API calls, so it needs an account. Free to create, and the results are yours to keep.
Sign in or create an account How billing works
Already signed in somewhere else? This page reads the same session as the console. Open the console once, then come back.
The task set
Twelve tasks, one point each. No partial credit: a task is right or wrong, and the checker says which. They are chosen so that a weak model cannot pass by guessing, and so that each one isolates a different failure mode.
| Group | What it isolates | Tasks |
|---|---|---|
| Numeric reasoning | Carrying, percentages, ratios, enumeration: the four places models cut corners | 4 |
| Code repair | Off-by-one, wrong return type, pending promise, bad seed value | 4 |
| Structured output | Emitting exactly the requested shape, with no prose around it | 2 |
| Constrained writing | Satisfying a content rule and a length rule at the same time | 2 |
Every task is scored by a strict comparison, not a model judging another model. The checker code ships with the task set, so you can read exactly what counts as correct.
Why the score is worth trusting
A model judging a model is an opinion. This is not that. Each task declares a checker: a number to match, a regular expression the corrected code must satisfy, a JSON shape to equal, a word count to stay under. Nothing is graded on style.
The trade is that the set is small. Twelve tasks will not tell you which model is better at a 40-file refactor. They will tell you which model follows instructions and which one quietly drops a constraint, which is usually the thing that ruins an afternoon.
What gets saved
Nothing, until you press save. A run happens entirely in your browser: your key calls the API directly, the checker runs locally, and the result is rendered on the page.
Saving a run records the date, the models you tested, the task set version and the score, so a result can be pointed at later. Past runs appear under Records.
Comparisons
How FreeModel compares to the other gateways — including where they are the better choice, and what a migration actually involves.
Running a set, step by step
The workbench appears once you are signed in. Five controls, in this order, and the whole run stays in the browser.
- Step 1: paste your key. The
Your API keyfield takes ansk-key from the console. It is used by the page to call the API directly and is never posted anywhere. - Step 2: pick the models. Tick them in
Models to test, or type ids into the box below it, comma separated. Any id from the public list works, including a tier alias such asfm-v1-lite; testing an alias is how you find out which model answers on the day. - Step 3: choose the task groups. Four groups, twelve tasks in total. Run all of them for a comparable score, or narrow to one group when a specific failure is what you are chasing.
- Step 4: run it.
Run the testsends one request per task per model and shows progress as it goes. Every answer is checked locally, so nothing about the run leaves the page. - Step 5: save the result.
Save this runkeeps the date, the model ids, the task set version, the score, the failures and the total time together, and it appears under Records.
Compare FAQ
Do I need an account to run a test?
Is my API key stored anywhere?
Save this run, and even then what is recorded is the result:
date, model ids, scores, failures and timings, not the key and not the answers.Which models can I put in the test?
How is the score calculated?
Why only twelve tasks?
How to read this comparison
Each comparison uses the same dimensions and shows where the alternative wins. A comparison that only lists advantages is marketing, not a comparison. Read the "where it wins" line first; if the alternative wins on the thing you care about most, pick it. The right answer depends on your task mix, not on a total score.
What this page is not
It is not a leaderboard. A leaderboard implies a universal winner, and there is none: a self-hosted proxy wins on data control, a managed gateway wins on setup time, and a direct provider account wins on access to provider-only features. The page is a set of decision lines, not a ranking.
How we picked the dimensions
Four dimensions survived because they change the decision: setup time, key ownership, failover behavior, and billing clarity. Features that every product claims (model count, OpenAI compatibility) were left out; they do not separate the options. If a dimension does not change what you would pick, it does not belong in a comparison.
Next
Sources
Every third-party figure quoted on this site was read from the vendor documentation linked below, on the date stated. None of these links are affiliate links and none of these vendors paid to be listed. If a number here disagrees with the page it came from, the page is right — tell us and it gets corrected.
- OpenRouter — credit-purchase fees and free-model rate limits
- OpenRouter — rate-limit reference
- OpenRouter — public model list
- LiteLLM — licence, deployment options and supported models
- Cloudflare AI Gateway — features and pricing
- Vercel AI Gateway — features
- Portkey — plans
- Helicone — plans
- Model Context Protocol — specification
- OpenAI Python SDK — base_url and OPENAI_BASE_URL
- Anthropic Messages API — request format
Where the percentages come from
Every share quoted on this site is counted from the live model list, not estimated. Divide the two counts in the last column, round to the nearest whole percent, and you get the number in the first.
| Share | Of what | Count |
|---|---|---|
| 77% | are chat models | 153 of 199 listed entries |
| 9% | generate images | 18 of 199 listed entries |
| 23% | are not chat models | 46 of 199 listed entries |
| 3% | are modality routes | 6 of 199 listed entries |
| 17% | carry a context length | 34 of 199 listed entries |
[1] Counted on 29 September 2026 from GET https://freemodel.online/v1/models, which needs no key and no account. Every row uses all 199 listed entries as the denominator, because the only thing the endpoint states for every entry is its modality. It no longer publishes per-model capability flags such as tool calling or reasoning, so this site quotes no shares for them. Fetch the list and recount whenever you want to check the arithmetic.