Two Calls Instead of One: What a Quarter Window Costs

Lynn Martelli
Lynn Martelli

Through OrcaRouter both cards are one key away, which is what makes the Qwen3.8 Flash Next cost per call comparison concrete: take a 500,000-token repository that does not fit, and count what it costs to do the audit anyway — once on the base model with its million-token window, and once on the tuned card split into two. The difference is larger than the per-token multiple suggests.

The single-call version

Five hundred thousand input tokens, a twenty-thousand-token report, base model at $0.15 and $0.47:

0.5 × $0.15 + 0.02 × $0.47 = $0.0844 [OURS].

That is the whole job in one request: no boundary, no synthesis step, no place for the two halves to disagree.

The two-call version

Split the repository into two 250,000-token passes, each producing a ten-thousand-token findings set, then a synthesis call that reads both sets and writes the report.

  • Pass one: 0.25 × $0.80 + 0.01 × $1.60 = $0.216
  • Pass two: the same = $0.216
  • Synthesis: 0.02 × $0.80 + 0.02 × $1.60 = $0.048

Total: $0.480 [OURS].

That is 5.7× the single-call base price, against a headline input multiple of 5.33×. The extra comes from the synthesis call and from the fact that splitting does not reduce the total tokens — it only rearranges them.

What the extra money does not buy

Three losses, none of which appears on an invoice.

Cross-boundary findings disappear. A vulnerability that lives in the mismatch between a function in half one and its caller in half two is invisible to both passes. On a 500,000-token repository, that is exactly the class of bug a whole-codebase review is supposed to catch.

The syntheses can disagree. Two independent passes may classify the same pattern differently, and the synthesis step has to adjudicate with less information than either pass had.

Every pass is a new place to fail. Two calls at a combined failure rate is worse than one call at the same per-call rate, and this card has no production reliability data yet [OURS].

None of those is fatal. All of them are the reason the window matters beyond arithmetic.

When splitting is the right answer anyway

Three cases where the two-call pattern beats a single pass even at 5.7× the price.

When the base model refuses. The comparison only holds if the base model will do the work. If it declines the request, the base price is not $0.0844 — it is $0.0844 plus a retry plus whatever the fallback costs, or it is nothing at all.

When the halves are genuinely independent. Two services that talk over a documented API can be reviewed separately without loss. The boundary exists in the architecture, not just in the tokenizer.

When you want parallel speed. Two passes can run at once. One call cannot be split across workers, and a 500,000-token prefill is not fast — the base model’s own median first-token time is 4,945 ms [OURS].

Cheaper alternatives to splitting

Before accepting the two-call cost, try shrinking the input. In order of how much they usually save:

  • Drop vendored dependencies and generated code. Often a third of a repository and almost never where the bug is.
  • Send the failing module and its direct callers, not the whole tree.
  • Summarise the history: commit messages and the last three diffs instead of the full log.
  • Cache the stable prefix so repeated passes over the same files cost the cache rate rather than the input rate.

A well-chosen 200,000 tokens usually beats a badly split 500,000 on both quality and price.

The number to remember

Twice the calls is not twice the cost — it is about 5.7 times the single-call base price, because the per-token rate is already 5.33× higher before you split anything.

That is the honest way to present the window: not “262,144 is enough for most things” but “for anything bigger, you are choosing between a much more expensive two-pass audit and a card with a wider window”.

When the split pays for itself

There is one case where splitting is not a tax but a saving: when the alternative is a card that costs more per token.

Compare two passes on this card at $0.48 against one pass on a $5.00 input card over the same 500,000 tokens: 0.5 × $5.00 + 0.02 × $10.00 = $2.70 [OURS]. The expensive card’s single pass costs five and a half times what the split costs here.

So the two-call pattern is not inherently a penalty. It is a penalty relative to a cheap large-window sibling — and a bargain relative to a premium one.

The boundary you choose is a design decision

Where you split matters more than that you split. Three options, in order of how well they usually work.

Split at a service boundary. The two halves are genuinely independent, and a cross-boundary finding was going to be missed by any single-file review anyway.

Split by concern. One pass reads for injection and input handling, another for authentication and session logic. Both read the whole codebase, so the token count doubles — but the attention per concern is higher, and findings do not compete for the model’s budget.

Split arbitrarily at a token count. The worst option, and the most common. It cuts a function in half and asks the model to reason about both pieces.

If you must split at a count, split on a line that is already a seam — a package boundary, a module, a file. The tokenizer will not tell you where the code divides; the code will.

And label the halves in the prompt. “Part 1 of 2: services/auth” costs eight tokens and lets the synthesis step attribute a finding to the right half later.

The takeaway

Five hundred thousand tokens costs eight and a half cents on the base model in one call, and forty-eight cents on the tuned card in three. The workaround is real and it is affordable — but it is also lossier, and on a large codebase the loss lands exactly where whole-repository review earns its keep.

Split when the architecture splits. When it does not, the wider window is worth more than the lower rate.

The general principle outlives this card: whenever a context limit forces a split, the design question is where the seam goes, and that is decided by the architecture of the material rather than by the tokenizer. A split at a natural boundary costs a second call; a split at an arbitrary one costs the finding.

Sourcing note: all prices and token counts are OrcaRouter catalogue data and arithmetic on the rates stated, checked 2026-10-27 [OURS]. Token counts for the example repository are illustrative; replace them with your own. The base model’s first-token figure is OrcaRouter production telemetry for the seven days ending 2026-10-26. No latency or reliability figure is quoted for the new card, because its production sample is 1,345 tokens [OURS].

Share This Article