← All articles

OpenRouter Alternatives (2026): Fees, Routing & Options

Compare OpenRouter alternatives in 2026: credit fees, native API protocols, dated 7-model price snapshots, and when to stay, go direct, or self-host.

UniRoute ·

Common reasons developers evaluate OpenRouter alternatives include credit-purchase fees on top-ups, a needed model or upstream provider route being unavailable or priced differently than expected, a coding client or SDK that expects a native protocol (/v1/messages, /v1/responses, /v1/chat/completions, or /v1beta) without format conversion, team rules around data retention or per-key budgets, and balance expiration or refund terms. At the same time, staying on OpenRouter and tuning its built-in controls can be the better choice when your workflow depends on the 470 model entries across 67 ID prefixes in its public models API (a count of API entries that includes 94 ":" variant IDs—78 :batch and 16 :free—rather than 470 distinct base models), request-level provider.order and models fallback arrays, data_collection or zdr privacy filters, Bring Your Own Key (BYOK), or EU/US in-region routing on Business and Enterprise plans.

Disclosure & Verification Scope (Captured 2026-10-17; OpenRouter Pricing Re-verified 2026-10-18)

This guide is published by UniRoute, and UniRoute is our own product. Catalog counts, Terms of Service, and the 7-model price feeds below were captured on 2026-10-17, while OpenRouter's pricing and FAQ pages were re-verified on 2026-10-18; each section notes the exact capture date. This guide makes no latency, uptime, success-rate, or savings claim.


1. Do You Actually Need an OpenRouter Alternative?

Before creating a new account or changing base URLs across your tools, check whether your current pain point can be solved with a request parameter or account setting on OpenRouter—or whether it points to a direct provider account, a self-hosted gateway, or a second hosted gateway.

TriggerWhy it happensWhat to check before switching
Credit-purchase feeOpenRouter charges a fee when buying credits rather than marking up standard token rates.Compare your monthly top-up fees against your per-token spend, and check whether your existing provider keys qualify for OpenRouter's BYOK allowance. See the fee and BYOK rows in the fact table below.
Model route or price differenceA model ID may appear in a catalog while a specific upstream provider is rate-limited, deprecated, or priced differently.On OpenRouter, check the model's provider list and test provider.order or allow_fallbacks. For per-model rate differences across OpenRouter and UniRoute standard or discounted channels, see the 7-model snapshot in Section 3.
Native API protocol requirementClients such as Claude Code (/v1/messages), Codex CLI (/v1/responses), Gemini CLI (/v1beta), and OpenAI SDKs (/v1/chat/completions) expect native schemas and streaming events.Verify whether your client works with OpenRouter's stateless /api/v1/responses and Anthropic Messages-compatible /api/v1/messages endpoints or needs UniRoute's native endpoints without format conversion. See the protocol endpoints row in the fact table below.
Data retention & logging rulesDefault routing may send prompts to providers that log or train on data, or your policy may require zero data retention (ZDR).Review OpenRouter's data_collection and zdr filters alongside UniRoute's Terms of Service and Privacy Policy, and verify upstream provider terms independently. See the data retention row in the fact table below.
Key limits & spending budgetsTeams running multiple coding agents or staging environments need separate keys, spending caps, or model and channel restrictions.Compare OpenRouter's programmatic per-key limits and workspace Guardrails against UniRoute's per-key spending, channel, and model restrictions (Create API Key). See the key limits row in the fact table below.
Payment, refund & balance expiryPrepaid credit expiration, refund windows, and top-up bonus validity rules affect how much balance you want to hold in a wallet.Check each gateway's refund window, principal expiration rule, and bonus validity in its Terms of Service before topping up. See the credit limits, refunds, and expiry row in the fact table below.
Fallback & channel stabilityRouting to the lowest-cost provider or a subdivided resource package can change latency, rate limits, or upstream risk-control behavior.On OpenRouter, pin provider.order or set allow_fallbacks to false; on UniRoute, disable discounted channels per provider in Channel Management or restrict a key to non-discounted channels. See the routing row in the fact table below.

2. Dated Fact Table: OpenRouter vs. UniRoute vs. What to Verify (2026-10-17 & 2026-10-18)

The table below uses public documentation and JSON feeds captured on 2026-10-17, with OpenRouter's pricing and FAQ fee terms re-verified on 2026-10-18. Where a platform leaves an item undocumented publicly, the table preserves that exact state so you know what to check before funding an account.

DimensionOpenRouter (Public Docs & Feeds, 2026-10-17 / 2026-10-18)UniRoute (Public Docs & Feeds, 2026-10-17)What to Verify Yourself
Public catalog sizePricing page states "500+ models" and "80+ providers." Public /api/v1/models feed (2026-10-17T13:19:45Z) returned 470 model entries across 67 ID prefixes (including 94 ":" variant IDs: 78 :batch, 16 :free).Public text price feed (2026-10-17T13:18:42Z) returned 42 distinct text model IDs across 78 channel rows (36 discounted, 42 standard). Public /models lists text, image, video, and audio models ("108 related models" at capture); some multimodal rows on /pricing show "Current gateway quote unavailable."Check whether the exact model ID and upstream provider or channel you need are active for your API key.
Credit purchase / top-up feeFAQ (captured 2026-10-17) states "5.5% ($0.80 minimum)" on Stripe and 5% on crypto (those client-rendered fee numbers were not re-captured in the 2026-10-18 static snapshot). Pricing page (2026-10-17, re-verified 2026-10-18) lists Standard 5.5%, Business 8%, and Enterprise "Fee discounts available" (prices exclude VAT/GST).Top-up fees and payment methods are not stated on the public pages reviewed: /pricing shows "Loading top-up options…" and Top-ups and billing states that amounts and terms are shown at checkout (/console/recharge).Check the exact checkout total, fee, currency, and payment methods inside your signed-in account before topping up.
Credit limits, refunds & expiryTerms (2026-08-31, captured 2026-10-17): $5 min / $25,000 max per transaction; purchased credits may expire after 365 days if unused (§4.2). FAQ (re-checked 2026-10-18): refunds within 24 hours on unused credits minus non-refundable platform fees (§4.1); crypto never refundable; unused credits may expire after one year.Terms of Service (2026-10-10, §3): "Newly purchased USD principal never expires and is non-refundable except where required by law." "Current top-up bonuses are valid for 30 days." Failed generations before output are not charged.Decide how much prepaid balance your team wants to hold under each service's refund and expiration rules.
BYOK (Bring Your Own Key)Pricing page & FAQ (2026-10-18); BYOK docs (2026-10-17): first $25,000/month of list-price BYOK inference is fee-free on Standard and Business; 5% of normal OpenRouter model cost above that.Not described on the public pages reviewed.If you already hold direct provider contracts, compare OpenRouter BYOK with self-hosted LiteLLM.
Protocol endpointsBase https://openrouter.ai/api/v1 for /chat/completions, /models, and stateless /responses (Responses overview: store: true or non-null previous_response_id returns HTTP 400). OpenRouter provides an Anthropic Messages-compatible endpoint (/api/v1/messages); for Claude Code, OpenRouter states that compatibility is guaranteed only with the Anthropic first-party provider (Claude Code guide).Base https://api.uniroute.app with native /v1/messages (Anthropic), /v1/responses (OpenAI Responses), /v1/chat/completions (OpenAI Chat), /v1beta (Gemini), and /v1/models without format conversion (Route Selection, Why No Format Conversion).Test your actual client (claude, codex, gemini, opencode, or SDK) with streaming, tool calls, and prompt caching.
Routing, channels & fallbacksRequest-level provider.order, allow_fallbacks, sort (price, throughput, latency), data_collection, and zdr (Provider Selection); models fallback array (Model Fallbacks); and :nitro, :floor, :exacto routing variants (FAQ).The public price feed labels rows standard and discounted. Channel Management describes provider subscriptions, AWS, and discounted channels with price-first routing and automatic fallback, and refers to the non-discounted ones as official or AWS channels when advising how to avoid discounted-channel fluctuations.Decide whether you need per-request JSON routing fields (OpenRouter) or account/key-level standard vs. discounted channel controls (UniRoute).
Key limits & guardrailsPer-key limit and daily/weekly/monthly limit_reset (Keys API), workspaces, and Guardrails: daily/weekly/monthly budget limit, model and provider allowlists, ZDR enforcement per model group, data regions (Business/Enterprise), prompt-injection and sensitive-info detection, and custom content filters.Default limit of 5 active keys per account (support can adjust); per-key spending limit, channel restrictions, and model restrictions (Create API Key).Check whether 5 default active keys (adjustable via support) is enough or if you need programmatic keys and guardrails.
Data retention & privacy docsAccount privacy toggles and request-level data_collection and zdr filters (Data Collection, ZDR, Privacy Policy). EU (eu.openrouter.ai) and US (us.openrouter.ai) in-region routing on Business and Enterprise.Terms of Service §5 state "apply zero data retention to routed requests (see the Privacy Policy)." The Privacy Policy (2026-05-21) covers account, usage, device, cookie, and payment data, not routed request payloads or upstream provider handling.Upstream model providers have their own retention policies; verify both gateway settings and upstream provider terms for sensitive workloads.
Availability & enterprise controlsOn openrouter.ai/pricing, SSO/SAML, contractual SLAs, and invoicing are listed under Enterprise; EU and US in-region routing are listed under Business and Enterprise (not Standard).Terms of Service §6 state "We target 99.9% monthly uptime" while providing the service "as is" without warranties. SSO/SCIM, team workspaces, and contractual SLAs are not described on the public pages reviewed.Treat "target 99.9% monthly uptime" as a stated target in the Terms, not a measured historical result or contractual SLA.

How OpenRouter pricing works

Based on OpenRouter's public pricing page and FAQ (captured 2026-10-17 and re-verified 2026-10-18), OpenRouter separates per-token inference charges from platform credit-purchase fees:

  • Pass-through per-token rates: OpenRouter's FAQ states, "We pass through the pricing of the underlying model providers without any markup," and the pricing page adds that "Inference is billed at the provider's list price on every plan."
  • Credit purchase fees by plan and payment method: The 2026-10-18 re-check of openrouter.ai/pricing confirmed the plan table—5.5% on Standard (pay-as-you-go), 8% on Business, and "Fee discounts available" on Enterprise (with cards, AliPay, and crypto/USDC accepted, and prices exclusive of VAT/GST). In the 2026-10-17 capture of the FAQ, OpenRouter stated a "5.5% ($0.80 minimum)" fee on Stripe card purchases and 5% on crypto (the FAQ's client-rendered fee string was not re-captured in the 2026-10-18 static snapshot).
  • Bring Your Own Key (BYOK) allowance (re-verified 2026-10-18): On both Standard and Business plans, OpenRouter includes "$25,000 of list price inference / month with no fees, 5% fee after" (Enterprise is custom), where the 5% fee is calculated on what the same model and provider would normally cost on OpenRouter and deducted from your OpenRouter credits.
  • Free model (:free) rate limits (re-verified 2026-10-18): The Free tier lists 50 requests/day across 25+ free models (and 20 requests/minute on :free variants); once an account has purchased at least $10 in credits, the :free daily limit increases to 1,000 requests/day. Failed attempts still count toward the quota, and a negative credit balance blocks :free models too.
  • Refunds, credit expiration, and taxes (re-verified 2026-10-18): Unused credits are refundable within 24 hours of purchase minus non-refundable platform fees, and crypto purchases are never refundable. Purchased credits may expire after 1 year (365 days) if unused, and all listed prices exclude applicable taxes (VAT/GST).

3. Same-Workload Price Arithmetic & 7-Model Snapshot (2026-10-17)

When comparing per-token rates across gateways, separate credit-purchase fees from per-token model rates and evaluate both on the same token workload.

Top-Up Fee vs. Per-Token Rate Arithmetic

  • Top-up fee arithmetic: On OpenRouter, a 5.5% credit-purchase fee on a $100.00 purchase is $5.50 ($0.80 minimum on Stripe and 5% on crypto per the 2026-10-17 FAQ capture; 5.5% on Standard and 8% on the Business plan per the pricing page, re-verified 2026-10-18). On UniRoute, top-up fees and payment methods are not stated on the public pages reviewed (the public /pricing page shows "Loading top-up options…" and Top-ups and billing states that amounts and terms are shown at checkout).
  • Fixed token workload formula: For a hypothetical single-model workload of 1,000,000 uncached input tokens and 200,000 output tokens (with no prompt-cache reads/writes, no tool charges, no credit-purchase fees, and no taxes):
workload cost (USD) = (input rate per 1M × 1) + (output rate per 1M × 0.2)

Important: UniRoute standard vs. discounted Channels & Stability Warning

Per Channel Management (/docs/channel-management), discounted channels divide large provider resource packages into smaller allocations and can be unstable when high utilization triggers upstream risk controls; the doc calls the other channels official or AWS channels, and you can disable discounted channels per provider or restrict an API key to non-discounted channels. Separately, comparing UniRoute's public /pricing page with the 2026-10-17 public price feed shows that the headline "Our price" column matches the discounted row where one exists, while standard rows match or sit near the "Official API price" column for the models compared (Kimi K3's standard row at $2.9481 / $14.7403 is slightly below its listed $3 / $15 official price).

7-Model Public Price Snapshot (2026-10-17)

  • OpenRouter source: https://openrouter.ai/api/v1/models captured 2026-10-17T13:19:45Z (USD per 1M uncached input / output tokens).
  • UniRoute source: https://api.uniroute.app/api/v1/models/public-prices?category=text&scope=all_text generated 2026-10-17T13:18:42Z.
Model (UniRoute ID / OpenRouter ID)OpenRouter In / Out (Workload)UniRoute standard In / Out (Workload)UniRoute discounted In / Out (Workload; see warning above)
Claude Sonnet 5.5 (claude-sonnet-5-5 / anthropic/claude-sonnet-5.5)$2 / $10 ($4.00)$2 / $10 ($4.00)$0.84 / $4.2 ($1.68)
Claude Opus 5.5 (claude-opus-5-5 / anthropic/claude-opus-5.5)$4 / $20 ($8.00)$4 / $20 ($8.00)$1.68 / $8.4 ($3.36)
Claude Haiku 4.5 (claude-haiku-4-5-20251001 / anthropic/claude-haiku-4.5)$1 / $5 ($2.00)$1 / $5 ($2.00)$0.42 / $2.1 ($0.84)
GPT-5.5 (gpt-5.5 / openai/gpt-5.5)$5 / $30 ($11.00)$5 / $30 ($11.00)$1.4 / $8.4 ($3.08)
Gemini 3.8 Flash (gemini-3.8-flash / google/gemini-3.8-flash)$0.825 / $4.125 ($1.65)$0.75 / $3.75 ($1.50)$0.3 / $1.5 ($0.60)
Kimi K3 (kimi-k3 / moonshotai/kimi-k3)$0.304 / $11.936 ($2.6912)$2.9481 / $14.7403 ($5.8961)none listed (—)
GLM 5.3 (glm-5.3 / z-ai/glm-5.3)$0.079 / $4.8 ($1.039)$1.4 / $4.4 ($2.28)none listed (—)

Note: UniRoute's Kimi K3 standard rates in the table are rounded to four decimals ($2.9481 / $14.7403 from the feed's longer values).

How far this comparison goes:

  • The same model name is not the same route: On OpenRouter the price depends on which provider endpoint serves the request and on routing settings; on UniRoute it depends on the channel, and context windows and limits can differ.
  • Concrete context-window difference in this snapshot: gpt-5.5 shows a 1,050,000-token context on OpenRouter (context_length in its public models API) and 272,000 on UniRoute (max_context_tokens in the public price feed); the other rows match in context where both sides list one (Claude Sonnet 5.5 and Opus 5.5 at 1,000,000; Claude Haiku 4.5 at 200,000; Gemini 3.8 Flash and Kimi K3 at 1,048,576), while the UniRoute feed lists no context value for glm-5.3 (OpenRouter lists 1,048,576).
  • What token prices do not measure: Prices say nothing about output quality, latency, uptime, or success rate, and credit-purchase fees (OpenRouter's, and any UniRoute top-up fee shown at checkout) are not included in the workload costs.
  • Point-in-time snapshot: This is a 2026-10-17 snapshot and prices can change within hours, so re-check the live sources (OpenRouter's model pages and models API; UniRoute's /pricing and public price feed) before deciding.

How to read this snapshot in both directions:

  1. Where UniRoute standard and OpenRouter match: On claude-sonnet-5-5 ($4.00), claude-opus-5-5 ($8.00), claude-haiku-4-5-20251001 ($2.00), and gpt-5.5 ($11.00), UniRoute's standard row and OpenRouter's listing are equal before any credit-purchase fee. On gemini-3.8-flash, UniRoute standard is $1.50 vs. OpenRouter's $1.65.
  2. Where UniRoute discounted is lower (with the channel-stability warning): On the five models above that list a discounted row, the workload cost is $1.68 vs. $4.00 (claude-sonnet-5-5), $3.36 vs. $8.00 (claude-opus-5-5), $0.84 vs. $2.00 (claude-haiku-4-5-20251001), $3.08 vs. $11.00 (gpt-5.5), and $0.60 vs. $1.65 (gemini-3.8-flash). Those lower prices carry the instability warning documented in Channel Management.
  3. Where OpenRouter is lower: On kimi-k3 ($2.6912 on OpenRouter vs. $5.8961 on UniRoute standard) and glm-5.3 ($1.039 on OpenRouter vs. $2.28 on UniRoute standard), UniRoute lists no discounted row in the 2026-10-17 feed and OpenRouter's listing is lower.

For model-specific billing rules (such as prompt-cache read/write tiers, long-context brackets, or DeepSeek peak/off-peak schedules), see our guides on Claude Code API pricing, OpenAI API pricing, and DeepSeek API pricing.


4. Four Paths and When Each Fits

Path 1: Stay on OpenRouter and Tune It

Staying on OpenRouter can be the better choice when you need the 470 model entries across 67 ID prefixes in its public models API (a count of API entries that includes 94 ":" variant IDs—78 :batch and 16 :free—rather than 470 distinct base models) or its per-request routing controls:

  • Pin or order providers per request: Pass provider.order and set allow_fallbacks to false when you need deterministic upstream routing (Provider Selection).
  • Filter by data policy: Use account privacy settings or per-request data_collection and zdr fields to route only to compliant endpoints (Data Collection, ZDR docs).
  • Use BYOK for existing provider keys: Connect your own upstream API keys under the monthly fee-free allowance documented in Section 2 (BYOK docs).
  • Apply per-key caps and workspace guardrails: Configure per-key limit / limit_reset (Keys API) and workspace Guardrails as summarized in Section 2.

Path 2: Go Direct to a Model Provider

Going direct to a single model creator fits when:

  • Your usage is concentrated on one provider's models and you do not need cross-provider fallback or a shared multi-model wallet.
  • You want a single direct account and bill with that provider (see Top-ups and billing if you are comparing subscriptions and pay-as-you-go API usage).
  • Trade-off: Calling models from multiple providers requires a separate account, separate bill, and separate SDK configuration for each provider.

Path 3: Self-Host an Open-Source Gateway — LiteLLM

If you already hold provider API keys and want to run your own gateway rather than using a hosted wallet, LiteLLM is one self-hosted option (other hosted and self-hosted gateways also exist).

  • What LiteLLM documents in its official README (captured 2026-10-17): LiteLLM describes itself as an "Open Source AI Gateway for 100+ LLMs. Self-hosted. Enterprise-ready. Call any LLM in OpenAI format." Its AI Gateway (Proxy Server) provides virtual keys, spend tracking, guardrails, load balancing, and an admin dashboard, while its Python Router provides retry/fallback logic across deployments.
  • When it fits: You want to self-host the gateway in your own infrastructure using your own upstream provider accounts.
  • Trade-off: Your team operates and maintains the self-hosted gateway and settles separate bills with each upstream provider.

Path 4: Try a Second Hosted Gateway — UniRoute

Adding or switching to UniRoute fits when your workflow matches what UniRoute documents publicly:

  • Native API formats without conversion: Connect Claude Code to /v1/messages, OpenAI Responses and Codex CLI to /v1/responses (or compare endpoints in Responses API vs. Chat Completions), Chat Completions clients to /v1/chat/completions, and Gemini tools to /v1beta under https://api.uniroute.app (Route Selection, Why No Format Conversion).
  • Selectable standard and discounted channels: Use standard rows when you want rates that match or sit near the "Official API price" column shown on /pricing for the models compared, or allow discounted channels when lower token cost outweighs the documented instability risk (Channel Management).
  • Non-expiring purchased USD principal: Under UniRoute's Terms of Service (2026-10-10, §3), "Newly purchased USD principal never expires and is non-refundable except where required by law," while failed generations before output are not charged.
  • When to keep OpenRouter instead (or alongside UniRoute): Keep OpenRouter when you need models where OpenRouter's listing is lower (kimi-k3, glm-5.3), broader long-tail model coverage, BYOK, or EU/US in-region routing.

5. Safe Trial & Way Back Checklist

You can test UniRoute alongside OpenRouter without overwriting your shell profile or deleting your working setup:

  1. Keep credentials, catalogs, and balances separate: Check the live UniRoute model catalog (/models), create a dedicated UniRoute API key (with an optional spending limit, channel restriction, and model restriction), and check your UniRoute wallet balance.
  2. Run a session-only override: For Claude Code, use the session-only child-shell launcher and same-task worksheet in our Claude Code with OpenRouter guide. For other clients, see the setup docs for Claude Code CLI, Codex CLI, Gemini CLI, or OpenCode.
  3. Confirm the destination before sending work: Run /status in Claude Code or check your client's active base URL and exact model ID (claude-sonnet-5-5 on UniRoute vs. anthropic/claude-sonnet-5.5 on OpenRouter).
  4. Send one small non-sensitive request and reconcile the charge: Compare the recorded tokens and cost in OpenRouter Activity against UniRoute Console.
  5. Return cleanly: Exit the child shell (or restore your backed-up config) and confirm /status points back to your original setup.

Frequently Asked Questions (FAQ)

Why do OpenRouter's FAQ and pricing page show different credit-purchase fee details?

OpenRouter's FAQ (captured 2026-10-17) states a "5.5% ($0.80 minimum)" fee on Stripe card purchases and 5% on crypto, while the plan table on openrouter.ai/pricing (re-verified 2026-10-18) lists Standard 5.5%, Business 8%, and Enterprise "Fee discounts available" (the FAQ's client-rendered fee string was not re-captured in the 2026-10-18 static snapshot). Check the fee displayed at checkout for your active plan and payment method.

Is UniRoute always cheaper than OpenRouter?

No. In the 2026-10-17 7-model snapshot in Section 3, UniRoute's standard rows match OpenRouter on four models and sit slightly lower on gemini-3.8-flash, while UniRoute's discounted rows are lower on those five models with the documented channel-stability trade-off. Conversely, on kimi-k3 and glm-5.3, UniRoute lists no discounted row in the snapshot and OpenRouter is lower; see the Section 3 table for exact per-model rates.

What is the difference between UniRoute's standard and discounted channels?

Per Channel Management, discounted channels divide large provider resource packages into smaller allocations and can be unstable when upstream risk controls trigger, while the doc refers to the other channels as official or AWS channels. You can disable discounted channels per provider in Channel Management or restrict an API key to non-discounted channels. Separately, across /pricing and the 2026-10-17 public price feed in Section 3, the standard rows match or sit near the "Official API price" column for the models compared (Kimi K3's standard row is slightly below its listed $3 / $15 official price).

Do unused credits expire on OpenRouter or UniRoute?

Under OpenRouter's Terms of Service (2026-08-31, §4.1–§4.2), unused credits may expire 365 days after purchase, and refund requests for unused credits may be made within 24 hours of purchase (platform fees and crypto purchases are non-refundable). Under UniRoute's Terms of Service (2026-10-10, §3), "Newly purchased USD principal never expires and is non-refundable except where required by law," and "Current top-up bonuses are valid for 30 days"; see the Section 2 fact table for full details.

When should I self-host LiteLLM instead of using a hosted gateway?

Consider LiteLLM when you already manage direct provider accounts and want an open-source, self-hosted AI Gateway to call 100+ LLMs in OpenAI format with virtual keys, spend tracking, guardrails, load balancing, an admin dashboard, and Python Router retry/fallback logic. Because your team operates the proxy and settles bills directly with each upstream provider, compare that operational trade-off against the hosted gateway options in Section 2 and Section 4.