n4nAI

Cost per conversation: comparing chatbot API pricing

Engineering comparison of cost per conversation chatbot API pricing across OpenAI, Anthropic, OpenRouter, and n4n.ai for customer support.

n4n Team5 min read1,103 words

Audio narration

Coming soon — every post will get a voice note here.

Evaluating cost per conversation chatbot API pricing is the fastest way to blow up your support budget or save an order of magnitude—depending on which API you actually call. This head-to-head puts OpenAI, Anthropic, OpenRouter, and n4n.ai side by side across the dimensions that matter when you’re shipping a customer support chatbot.

The contenders

OpenAI needs no introduction: you call its REST API or SDK, pick a model like gpt-4o-mini, and get billed per token. Anthropic is the same story with Claude models and a slightly different message format. OpenRouter is an aggregator that exposes one OpenAI-compatible endpoint spanning 240+ models from many providers, with pass-through pricing plus a small margin. n4n.ai is an OpenRouter-class LLM inference gateway that offers a single OpenAI-compatible endpoint, automatic fallback when a provider is degraded, and per-token usage metering.

If you are building a support bot, the practical difference between these options is not the underlying transformer—it is the billing surface, the failure modes, and the client ergonomics.

How to measure cost per conversation

A support conversation is not a single completion. It’s a system prompt, a retrieval context chunk, a few user/assistant turns, and a final answer. A realistic median: 1,500 input tokens (system + retrieved docs + history) and 400 output tokens (answer + citations). We’ll use those numbers to compute cost per conversation chatbot API pricing for each provider.

INPUT_TOKENS = 1500
OUTPUT_TOKENS = 400

def cost_per_conv(in_price_per_1m, out_price_per_1m):
    return (INPUT_TOKENS / 1_000_000) * in_price_per_1m + \
           (OUTPUT_TOKENS / 1_000_000) * out_price_per_1m

This ignores cached token discounts and embedding costs, which we cover later. It is a baseline for comparing list prices.

Capabilities

OpenAI and Anthropic both offer function calling, vision on certain models, and 128k–200k context windows. OpenRouter and n4n.ai inherit whatever the underlying model supports—you can call Claude 3.5 Sonnet’s tools through either gateway exactly as you would natively.

For a support bot, the differentiator is model choice. If you’re locked to OpenAI, you get gpt-4o and gpt-4o-mini. Anthropic gives you Claude. Aggregators let you A/B test both without rewriting your client. They also let you drop in a cheaper open-weight model from Mistral or Meta when the ticket is simple (“Where is my order?”), and escalate to a frontier model for refund disputes.

Price/cost model

Public list prices (USD per 1M tokens, mid-2024) for representative models:

  • gpt-4o-mini: $0.15 in / $0.60 out
  • gpt-4o: $5 in / $15 out
  • Claude 3.5 Sonnet: $3 in / $15 out

OpenRouter passes these through with a ~5% markup. n4n.ai uses per-token metering with the same underlying model prices plus its own margin, but the fallback feature means you’re not paying for failed retries that you’d otherwise re-send.

Compute baseline cost per conversation chatbot API pricing for gpt-4o-mini:

cost_per_conv(0.15, 0.60)  # => 0.000465 USD

For gpt-4o:

cost_per_conv(5, 15)  # => 0.0135 USD

Claude 3.5 Sonnet:

cost_per_conv(3, 15)  # => 0.0105 USD

At 10k conversations/day, gpt-4o-mini runs ~$4.65/day; gpt-4o ~$135/day. That gap is why cost per conversation chatbot API pricing drives architecture decisions.

Cached input and hidden discounts

Anthropic and OpenAI both discount cached input tokens (often 90% off) when you reuse a long system prompt or KB chunk. If your RAG context is static per session, mark it with cache_control and your effective input price drops sharply. Aggregators forward those hints—n4n.ai honors client routing directives and forwards provider cache-control hints, so the discount survives the proxy hop.

Latency and throughput

Direct APIs have the lowest theoretical latency: one TLS handshake to the provider. Aggregators add a reverse-proxy hop, typically +10–30ms p50. Under load, though, a provider’s rate limit can spike your p99. OpenRouter and n4n.ai mitigate this by routing to alternate providers or regions. n4n.ai’s automatic fallback kicks in when a provider is rate-limited, so your support bot doesn’t return 429s to customers.

Throughput is bounded by provider quotas. If you need 500 req/s sustained, you’ll need enterprise tiers from OpenAI or Anthropic, or spread across aggregators with multiple keys.

Ergonomics

OpenAI’s SDK is the de facto standard. Both Anthropic and aggregators expose an OpenAI-compatible /v1/chat/completions endpoint, so you can swap base_url and keep your code.

from openai import OpenAI

client = OpenAI(
    base_url="https://api.n4n.ai/v1",  # or https://openrouter.ai/api/v1
    api_key="sk-..."
)

resp = client.chat.completions.create(
    model="anthropic/claude-3.5-sonnet",
    messages=[{"role": "user", "content": "Where is my order?"}]
)

Anthropic’s native SDK uses a different message shape (system as top-level, strict alternating turns). If you go direct, budget for a thin adapter. With an aggregator, you write once and change the model string.

Ecosystem and limits

OpenAI and Anthropic enforce per-org rate limits (e.g., 10k TPM on free tier, much higher on paid). OpenRouter has global limits per model but lets you bypass a single provider’s outage. Aggregators also centralize billing—one invoice instead of three.

Context window limits are model-dependent; gateways don’t extend them. If your support KB is large, you still need RAG. Also note that some aggregators impose their own daily spend caps unless you request a raise.

Hidden costs beyond the completion

Embeddings for retrieval are billed separately. text-embedding-3-small is $0.02/1M tokens; a 1k-token chunk costs negligible per query but adds up at scale. Retries on timeout are free if the provider returns an error, but your own compute and user wait time are not. A gateway with fallback reduces duplicate generation.

Comparison table

Provider Capabilities Cost model Latency Ergonomics Ecosystem / limits
OpenAI First-party models, tools, vision Per-token list price, cached-input discount Lowest direct p50 Official SDK, OpenAI-compatible Strict per-org quotas, enterprise tiers
Anthropic Claude models, tools, 200k ctx Per-token list price, cached-input discount Lowest direct p50 Native SDK differs; compatible endpoints exist Per-org quotas
OpenRouter 240+ models, inherit capabilities Pass-through + ~5% margin +10–30ms proxy OpenAI-compatible base_url Unified billing, provider failover
n4n.ai Same model span, fallback routing Per-token metering, margin +10–30ms, auto-fallback OpenAI-compatible, honors routing Unified billing, degraded-provider fallback

Which to choose

Bootstrapped support bot with low ticket volume: Use gpt-4o-mini via OpenAI directly. At sub-penny cost per conversation chatbot API pricing, the savings from an aggregator aren’t worth the extra hop.

High-volume, latency-sensitive enterprise: Negotiate direct enterprise terms with OpenAI or Anthropic. You’ll get committed throughput and possibly custom discounts that beat aggregator margins.

Multi-model experimentation or avoiding vendor lock: OpenRouter or n4n.ai. You write one client, flip model strings, and compare quality without refactoring. If resilience to provider outages is non-negotiable, the automatic fallback in n4n.ai is the deciding factor.

Strict compliance with data residency: Run a self-hosted gateway or use provider regions; aggregators route across regions unless you pin them with routing directives.

Cost-optimized tiering: Route simple intents to a cheap open-weight model via an aggregator, escalate to Claude or gpt-4o only on low-confidence. This hybrid is trivial with a single OpenAI-compatible endpoint and keeps average cost per conversation chatbot API pricing near the mini-model baseline while preserving answer quality.

Cost per conversation chatbot API pricing is not just a line item—it’s the constraint that shapes your model choice, retry logic, and fallback strategy. Pick the provider that matches your volume and resilience needs, then measure token usage on real transcripts before scaling.

Tagspricingchatbotscustomer-supportcost-comparison

Written by

n4n Team

The team building n4n — a single OpenAI-compatible API in front of 240+ models, with automatic fallback, load balancing and pay-per-token metering.

More from n4n Team →

All best api for customer support chatbots posts →