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.

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.

GroupWhat it isolatesTasks
Numeric reasoningCarrying, percentages, ratios, enumeration: the four places models cut corners4
Code repairOff-by-one, wrong return type, pending promise, bad seed value4
Structured outputEmitting exactly the requested shape, with no prose around it2
Constrained writingSatisfying a content rule and a length rule at the same time2

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.

  1. Step 1: paste your key. The Your API key field takes an sk- key from the console. It is used by the page to call the API directly and is never posted anywhere.
  2. 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 as fm-v1-lite; testing an alias is how you find out which model answers on the day.
  3. 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.
  4. Step 4: run it. Run the test sends 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.
  5. Step 5: save the result. Save this run keeps 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?
Yes. A run costs real API calls, so the workbench unlocks with an account. Creating one is free, and a run you save stays yours. The task set, the checkers and the scoring rules are readable without signing in, which is deliberate: you should be able to judge whether the test is fair before you spend anything on it.
Is my API key stored anywhere?
No. The key stays in the page, the browser calls the API directly with it, and the judging happens locally too. Nothing about your run is uploaded unless you press 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?
Any id the public list serves. Of the 199 ids, 153 are chat models; the other 46 generate images, video or speech, or produce embeddings and reranks, and they cannot answer these tasks at all. The realistic candidates are therefore the 153 chat entries, plus the modality routes. Six of the listed ids are routes, 3% of the list, and they are the interesting ones to test because what they resolve to can change.[1]
How is the score calculated?
Twelve tasks, one point each, no partial credit. Each task declares a checker (a number to match, a regular expression the corrected code must satisfy, a JSON shape to equal, or a word count to stay under), and the checker code ships with the set so the rule is readable rather than described. Nothing is graded on style, and no model judges another model.
Why only twelve tasks?
Because a small set with exact checkers is honest about what it measures. Twelve tasks will not tell you which model handles a 40-file refactor better. They will tell you which model follows the instruction and which one quietly drops a constraint, and that is usually the difference that ruins an afternoon. The set is text only, and 23% of the listed models are not chat models at all, so do not read a score here as a verdict on agent work.

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.

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.

ShareOf whatCount
77%are chat models153 of 199 listed entries
9%generate images18 of 199 listed entries
23%are not chat models46 of 199 listed entries
3%are modality routes6 of 199 listed entries
17%carry a context length34 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.