OpenRouter Fusion can improve difficult research, but its multiple paid calls increase cost and latency. The practical choice is selective escalation, not Fusion on every request.
OpenRouter Fusion API review: the short decision
OpenRouter Fusion is worth testing if your application already spends human time comparing model answers or correcting research mistakes. It is a poor default for chat, autocomplete, routine extraction, and high-QPS workloads.
| Use case | Decision | Why |
|---|---|---|
| Source-heavy research or due diligence | Use selectively | Multiple independent answers can expose disagreement and omissions |
| Architecture or expert critique | Use selectively | The analyst can compare competing approaches |
| Routine coding or rewriting | Skip | A single suitable model is simpler and faster |
| Interactive chat | Usually skip | OpenRouter says Fusion commonly takes 2–3× longer |
| Evaluation or regression testing | Skip | The official explainer describes intentional run-to-run variation |
OpenRouter’s own explainer estimates about 4–5× the cost of one completion for the default three-model panel and roughly 2–3× the latency. (OpenRouter Fusion explainer)
Start with the bill, not the benchmark
Fusion has no single flat price in the official documentation. A run pays for the underlying panel requests, analyst request, and outer model response. OpenRouter says cost scales with panel size. (Fusion Router documentation)
“Cost with the default 3-model panel runs 4-5x a single completion.” — @stretchcloud, reporting an engineering interpretation of Fusion’s economics (X)
What a Fusion request actually runs
The simplest model-alias request is:
{"model":"openrouter/fusion","messages":[{"role":"user","content":"Compare the strongest arguments for and against carbon taxes, and explain expert disagreements."}]}
For more control, OpenRouter documents a server-tool request like this:
{"model":"~anthropic/claude-opus-latest","messages":[{"role":"user","content":"Compare the strongest arguments for and against carbon taxes."}],"tools":[{"type":"openrouter:fusion","parameters":{"analysis_models":["~google/gemini-flash-latest","deepseek/deepseek-v3.2"],"model":"~anthropic/claude-opus-latest"}}],"tool_choice":"required"}
The outer model normally decides whether to invoke Fusion; the panel answers in parallel, an analyst compares consensus, contradictions, partial coverage, unique insights, and blind spots, and the outer model writes the final response. (Fusion server tool docs)
Why the judge matters more than the panel count
A large panel does not automatically produce a reliable answer. The analyst decides which disagreements remain visible and which claims are safe to carry forward. OpenRouter’s documentation says consensus is not a guarantee of correctness; it also preserves minority insights and shared blind spots rather than treating majority voting as proof. (Fusion server tool docs)
A real user, @teortaxesTex, reported seeing Claude Opus 4.8 as the judge after attempting to use only cheaper open models, writing that there was “no way to disable it.” (X) OpenRouter employee @pingToven later called the console behavior “a frontend bug” and said the API was more flexible. (X) Check actual logs and configuration before assuming the judge is the model you selected.
The API surfaces and controls
| Surface | Best for | Important behavior |
|---|---|---|
model: "openrouter/fusion" | Fastest integration | OpenRouter injects the Fusion tool and selects the outer model |
openrouter:fusion server tool | Production control | You choose the outer model and can combine Fusion with other tools |
openrouter/fusion-flash | Speed-oriented experiments | Uses the general-fast preset; it still has multi-call overhead |
The server tool accepts analysis_models with 1–8 entries, an independent analyst model, max_tool_calls from 1–16, and a default max_completion_tokens value of 16,000 per inner call. Panel temperature can range from 0 to 2; the analyst runs at 0. (Fusion server tool docs)
To require a tool call, use "tool_choice": "required". With several tools present, this requires some tool rather than specifically Fusion, so constrain the request accordingly. To verify that the alias ran Fusion, inspect generation metadata for "router": "openrouter/fusion"; the ordinary model field reports the concrete outer model. (Fusion Router documentation)
What the evidence supports—and what it does not
OpenRouter’s published evidence is strongest for deep-research-style tasks. The cited DRACO evaluation covered 100 tasks across 10 domains, with criteria for accuracy, coverage, presentation, and citations.
| Configuration | DRACO score |
|---|---|
| Frontier Fusion panel | 69.0% |
| Solo Fable 5 | 65.3% |
| Budget Fusion panel | 64.7% |
| Solo GPT-5.5 | 60.0% |
| Solo Opus 4.8 | 58.8% |
| Opus self-fusion | 65.5% |
Treat these as directional evidence for deep research only: content filters blocked 7 of Fable 5’s runs, and OpenRouter says judge choice can materially shift absolute scores. (OpenRouter benchmark announcement)
Failure modes to design around
Fusion can degrade gracefully. If some panel models fail but at least one succeeds, the tool can return status: "ok" with a failed_models list. If the analyst fails after panel responses arrive, raw responses can remain available without structured analysis. A hard failure occurs when no useful panel output is available. (Fusion server tool docs)
The main deployment risks are:
- Latency: panel calls wait for the slowest participant, then the analyst and final response; OpenRouter estimates 2–3× normal latency.
- Non-determinism: OpenRouter describes run-to-run variation as intentional, making Fusion a poor fit for strict regression comparisons.
- Cost visibility: users want traces showing which models ran, what disagreed, and what the run cost. @wsljhint summarized that need in a request for Fusion traces. (X)
- Unexpected spend: @orihorihX reported an orchestration flow invoking Fusion unexpectedly and losing $10 quickly. (X)
- Documentation drift: a user reported a 400 error for
fusion-flashdespite seeing the identifier in documentation. Test the exact model ID in your account. (X)
Before production use, log the selected panel, analyst, token usage, latency, and router metadata. Add a hard budget cap or allow-list so an outer agent cannot silently escalate every prompt.
A workload-based rollout
- Build a holdout set. Collect 20–50 real prompts from research, comparison, or review tasks. Score factual errors, missing sources, editing time, latency, and total cost.
- Route selectively. Send only high-uncertainty or high-cost-of-error prompts to Fusion. Keep routine traffic on the existing single model.
- Set a decision threshold. Keep Fusion only if reduced corrections or human review pays for its extra calls. If the quality gain is real but too slow, try the fast preset or reduce the panel; if the bill is unpredictable, pin the analyst and inspect logs before expanding traffic.
This matches how real users describe Fusion: @iamaurelien reported using it as a “grill-me” channel for challenging ideas while keeping a cheaper model as the daily default. (X)
OpenRouter Fusion API FAQ
Is OpenRouter Fusion cheaper than one model?
Usually not. OpenRouter estimates the default three-model run at about 4–5× the cost of one completion; “half price” refers to a particular frontier comparison.
How do I force Fusion to run?
Use the alias or server tool and set "tool_choice": "required"; if other tools are present, constrain selection so the model calls Fusion.
How can I confirm that Fusion ran?
Inspect generation metadata for "router": "openrouter/fusion", not only the response’s model field.
The practical boundary is simple: use Fusion when extra deliberation can replace a more expensive mistake; keep it out of the default path when speed, predictable billing, or reproducibility matters more.