Choose a chatbot API for useful completed conversations. Evaluate answer quality, response timing and predictable failure behavior alongside the model’s documented cost and capacity.

What matters for chatbots

Define the conversation’s job. A support assistant should answer from approved material or escalate. A product helper should identify the next useful action. A structured intake flow should preserve required fields. The model’s ability to produce fluent conversation is only one part of each contract.

Keep a fixture with an ordinary question, missing information, a conflicting instruction and a follow-up that depends on earlier state. Apply the same history policy to each candidate. This reveals whether a model can preserve relevant context without inventing facts or losing the application’s boundaries.

The reference fit ordering uses output price, documented request capacity and context as separate factors. It is a selection heuristic, not a measured reliability or latency benchmark. Unknown capacity should remain unknown rather than being treated as either zero performance or unlimited service.

OpenAI and Gemini document account-scoped rate conditions that need to be considered alongside the selected model. Official documentation.

Measure the time to an accepted answer, including queueing and validation. A quick first token does not establish a useful final result. Keep cancellation behavior and task deadlines in the test so a delayed response does not continue consuming work after the user leaves.

Ranked candidates

Only active candidates with documented values for this ranking are included. Prices retain the tier and deployment condition shown below.

Relative fit score: output price 50%, documented RPM 30%, context 20%. Each factor is scaled across the eligible candidates; lower cost and higher capacity or context score better. RPM uses the smallest published limit for the selected model and shows its tier; your account may differ. This is not a latency or reliability benchmark. 469 candidates with missing RPM or context are not scored.

Models ranked by chatbot fit
ModelProviderFit score / 100Output USD / 1MDocumented RPMRPM tierContext tokensPrice condition
grok-4.5xAI76.5$69,000Tier 0500,000short context
grok-4.6xAI76.5$69,000Tier 0500,000short context
grok-4.20-0309-non-reasoningxAI71.9$2.52,220Tier 01,000,000short context
grok-4.20-0309-reasoningxAI71.9$2.52,220Tier 01,000,000short context
grok-4.3xAI71.9$2.52,220Tier 01,000,000short context
grok-4.20-multi-agent-0309xAI66.3$2.5540Tier 01,000,000short context
grok-build-0.1xAI56.7$22,220Tier 0256,000short context
Claude Sonnet 5Anthropic52.6$101,000published default1,000,000Standard
GPT OSS 20BGroq50.2$0.330free131,072Standard
Safety GPT OSS 20BGroq50.2$0.330free131,072Standard
GPT OSS 120BGroq49.5$0.630free131,072Standard
SonarPerplexity48.7$150Tier 0128,000Standard
kimi-k2.6Moonshot45.4$43Tier0262,144Standard
kimi-k2.7-codeMoonshot45.4$43Tier0262,144Standard
Claude Haiku 4.5Anthropic45.4$51,000published default200,000Standard

Last verified · Source ↗

Read the weighting and evidence in the live ranking before treating it as a shortlist. A price-and-capacity score cannot establish how well a candidate handles your support policy or conversation history. Preserve the required fixture evaluation after filtering.

Our three picks

Interactive tool

Find your starting point

Your text and estimates stay in this browser. No API requests are sent to model providers.

Loading verified model records…

The cheapest role is useful for concise tasks it reliably passes. Balanced can be a starting point when price and context both matter. Strongest should be based on comparable evidence or presented as a candidate needing evaluation. Keep the label’s basis visible to the person choosing.

If the chatbot uses tools, evaluate the proposal and execution boundary separately. The application decides whether an action is permitted and validates its result. A conversationally persuasive answer should not bypass that boundary.

When each pick is wrong

A low-output-price candidate is wrong if it regularly needs a second model call to repair unsupported answers. A large-context candidate is wrong if the application sends irrelevant history instead of selecting the material needed for the current turn. A high-capacity candidate is wrong if the account cannot obtain the documented scope it assumes.

A fallback is wrong if it changes the answer contract or data requirements. Evaluate every allowed replacement on the same fixtures and retain the resolved model identity when recovery occurs.

Inspect OpenAI capacity, Gemini project limits and Claude response costs for provider-specific planning.

Estimate cost

Interactive tool

Estimate your API costs

Your text and estimates stay in this browser. No API requests are sent to model providers.

Loading verified model records…

Use the chatbot cost calculator with real conversation input, accepted output and repeated-turn assumptions.

Record returned usage for ordinary and difficult conversations. Include repair, escalation and tool-related model stages in the workload plan, and keep the application’s stop and retry policy aligned with its budget.

Last verified · Source ↗

Frequently asked questions

Does a fit score measure chatbot quality?
No. It combines documented attributes; the conversation fixture establishes output behavior.
Why include follow-up questions in evaluation?
They reveal how the model and application preserve relevant conversation state.
Is first-token speed enough?
Measure time to an accepted final answer, including queueing and validation.
What should happen when evidence is missing?
The application should expose the defined uncertainty or escalation state rather than invent an answer.
Can a fallback use a different answer contract?
Only if that change is explicitly allowed; otherwise it must pass the same requirements.
What should the cost estimate include?
Conversation context, outputs, repeated turns and additional repair or tool-related stages.

Sources

Last verified · Source ↗