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.
| Model | Provider | Fit score / 100 | Output USD / 1M | Documented RPM | RPM tier | Context tokens | Price condition |
|---|---|---|---|---|---|---|---|
| grok-4.5 | xAI | 76.5 | $6 | 9,000 | Tier 0 | 500,000 | short context |
| grok-4.6 | xAI | 76.5 | $6 | 9,000 | Tier 0 | 500,000 | short context |
| grok-4.20-0309-non-reasoning | xAI | 71.9 | $2.5 | 2,220 | Tier 0 | 1,000,000 | short context |
| grok-4.20-0309-reasoning | xAI | 71.9 | $2.5 | 2,220 | Tier 0 | 1,000,000 | short context |
| grok-4.3 | xAI | 71.9 | $2.5 | 2,220 | Tier 0 | 1,000,000 | short context |
| grok-4.20-multi-agent-0309 | xAI | 66.3 | $2.5 | 540 | Tier 0 | 1,000,000 | short context |
| grok-build-0.1 | xAI | 56.7 | $2 | 2,220 | Tier 0 | 256,000 | short context |
| Claude Sonnet 5 | Anthropic | 52.6 | $10 | 1,000 | published default | 1,000,000 | Standard |
| GPT OSS 20B | Groq | 50.2 | $0.3 | 30 | free | 131,072 | Standard |
| Safety GPT OSS 20B | Groq | 50.2 | $0.3 | 30 | free | 131,072 | Standard |
| GPT OSS 120B | Groq | 49.5 | $0.6 | 30 | free | 131,072 | Standard |
| Sonar | Perplexity | 48.7 | $1 | 50 | Tier 0 | 128,000 | Standard |
| kimi-k2.6 | Moonshot | 45.4 | $4 | 3 | Tier0 | 262,144 | Standard |
| kimi-k2.7-code | Moonshot | 45.4 | $4 | 3 | Tier0 | 262,144 | Standard |
| Claude Haiku 4.5 | Anthropic | 45.4 | $5 | 1,000 | published default | 200,000 | Standard |
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
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
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?
Why include follow-up questions in evaluation?
Is first-token speed enough?
What should happen when evidence is missing?
Can a fallback use a different answer contract?
What should the cost estimate include?
Sources
Last verified · Source ↗