✓ Free API check

When a Free API Answers as a Different Model

By Jones Dwell · 2026-10-27 · 6 min read

Free API routers promise the best of every free tier behind one key. A hands-on test published on October 26, 2026, found the catch in its simplest form: the tester asked for one model by name, got a polite answer in five seconds, and then checked the response header — which named a different model entirely. The answer was real. The label was not the whole story. If you use free routers, that distinction is worth understanding before you trust a model name in your logs.

What the tester actually did

The test, by Najam Us Saqib on Towards AI, used FreeLLMAPI, the open-source router we covered in our FreeLLMAPI guide: a self-hosted router that stacks providers' free tiers behind one OpenAI-compatible endpoint. The tester installed it, supplied three free provider keys, and connected it to the OpenCode coding agent. The project, the article notes, has more than 41,000 GitHub stars and promises 635 free model endpoints behind one address. The request at the centre of the story was a single word of a model name: claude-opus-4-5.

That setup matters because it is exactly how most people will meet a router: not by reading its catalog, but by typing a familiar model name into a tool and assuming the name is a guarantee. The tester's next step is the habit this article is really about — checking what came back, not just what was asked for.

What the header revealed

After the answer arrived, the tester checked the response header. It read X-Routed-Via: google/gemini-3-flash-preview. In plain terms: the request went in asking for one model family and was served, according to that header, by Google's fast model instead. The tester describes this as how FreeLLMAPI works rather than a bug — a router substituting an available model for the requested one.

Read that claim carefully. One request and one header prove that this substitution happened on that request. They do not prove that every request is substituted, that every model name is relabelled, or that the substituted model is worse for every task. A fast model may answer a simple request perfectly well. The problem is not quality in this one case; it is attribution. If you log, benchmark, or bill work by model name, a silent substitution makes your records wrong.

Why a router would do this

Routers exist to keep requests flowing when a free tier runs out, errors, or throttles. Failing over to another provider is a feature — our earlier guide describes FreeLLMAPI's fallback chain, which retries the next model on rate limits or errors. The open question, which the test does not settle, is whether this particular answer was a documented fallback, a catalog mapping, or something else: the article reports the header, not the router's internal routing decision for that request, so the mechanism behind this one substitution is unverified. What is verified is the outcome the user can observe: the name requested and the name in the header did not match.

That is the right level of scepticism for free tiers in general. Free catalogs change constantly — models are added, renamed, capped, or withdrawn — and a router's catalog is a snapshot, not a contract. A model name in a router menu is a request, and the response is the evidence. Treat the two as separate facts until you have checked both.

How to check what model actually answered you

1. Inspect the response, not just the reply text. When a tool exposes response headers or metadata, look for a routing or model field before you quote a model name anywhere. If your client hides headers, ask for the raw response or run one test request through a client that shows them.

2. Test with a question only the requested model should answer distinctively — and still verify. Style and knowledge hints are weak evidence on their own; a header or provider-side usage record is stronger. Where a provider dashboard shows which key and model were billed or counted, compare it with the name you requested.

3. Repeat before you conclude. One substituted request is a warning, not a verdict on the whole router. Run the same request again, and try a second model name, before deciding whether a tool is mislabelling systematically or whether you hit one fallback.

4. Decide what you actually need. If you need a specific model for compliance, benchmarking, or reproducibility, a free router with silent substitution is the wrong tool for that job — use the provider directly. If you need any capable answer for free, a substitution may be acceptable, as long as you know it happened. Our free APIs channel tracks this category, and the practical rule is the same everywhere: free means flexible, not guaranteed.

What this changes, and what it does not

This test does not overturn our earlier FreeLLMAPI guide. The router is still open source, still self-hosted, and still a useful way to pool free tiers for prototyping and personal use — the use the project itself recommends. What the test adds is a verification habit that belongs in that guide's catch list: never trust a model label in a router without checking the response. It also sets a fair standard for the next viral free-API claim: a star count and an endpoint count describe a catalog, not a guarantee that the name you type is the model that answers.

For readers who only want a chatbot in a browser tab, none of this applies — the no-sign-up chatbots in our verified directory are the shorter path, and they carry no router layer to second-guess. For developers building on free tiers, the lesson is cheaper than any outage: check one header today, and your model names will mean something tomorrow.

FAQ

Does this mean FreeLLMAPI is lying about its models?

No — not on the evidence of this one test. It shows one request served under a different model name in the response header. The mechanism behind that substitution is unverified, and one request cannot prove a systematic pattern. Treat it as a reason to verify, not as a verdict.

Does a substituted model give worse answers?

Not necessarily. In this test the answer arrived in five seconds and was described as polite and correct. The risk is misattribution — logging, benchmarking, or comparing results under the wrong model name — not automatically lower quality.

Should I stop using free API routers?

No, if your use fits them: prototyping, learning, and personal projects where any capable free model will do. If you need a specific model for reproducibility or compliance, call that provider directly instead of going through a router.

How can I tell which model answered?

Check response headers or metadata where your client exposes them, and compare with the provider dashboard for the key you supplied. If neither is available, do not quote a model name as fact — describe the request you made and note that the serving model was unverified.

By Jones Dwell · Filed under Blog · TapToAgent documents free AI tools so you don't have to trade your inbox for them.