If OpenRouter already gives your application reliable model access, do not migrate merely to replace one OpenAI-compatible endpoint with another. Migrate when you can name the missing control: per-team budgets, richer traces, policy enforcement, edge caching, or gateway ownership. If you cannot name it, the migration cost is all downside.
Portkey is the broad governance suite, Helicone puts observability first, Requesty combines managed routing with usage pricing, Cloudflare brings edge controls, Vercel fits its existing platform, and LiteLLM provides a self-hosted control plane. Prices and specifications are from official sources and current as of 2026-07-20.
The short answer
| Gateway | Best fit | Observability | Cache | Fallbacks and routing | Budget controls | Self-host |
|---|---|---|---|---|---|---|
| OpenRouter | Broad model access and consolidated billing | Activity, cost, token, latency, optional input/output logs | Provider prompt cache and gateway response cache | Provider ordering, filtering, performance routing, model/provider fallback | Key limits; workspace budgets on Enterprise | No public self-host option documented |
| Portkey | Central governance across teams and providers | Logs, traces, feedback, metadata, alerts, OpenTelemetry | Exact-match; semantic on selected plans | Fallbacks, retries, load balancing, conditional routing, circuit breakers | Token/cost budgets and rate limits | Open-source gateway; private deployments are enterprise-oriented |
| Helicone | Request-level debugging and LLM analytics | Detailed requests, sessions, costs, latency, errors, properties | Exact-response cache at the edge | Provider and model routing with automatic failover | Rate and spend controls | Yes: Docker Compose, Kubernetes, or cloud deployment |
| Requesty | Managed gateway with simple usage-based pricing | Spend, latency, tool calls, sessions, dashboards on higher tiers | Provider prompt caching; managed caching by arrangement | Fallback chains, load balancing, latency routing | Per-key spend limits; team controls on Enterprise | No public self-host option documented |
| Cloudflare AI Gateway | Edge caching, traffic controls, and Cloudflare-native security | Analytics, logs, costs, custom metadata | Exact-response edge cache | Retries, ordered fallbacks, dynamic routes | Rate limits and spend limits by model/provider/metadata | No; managed Cloudflare service |
| Vercel AI Gateway | Vercel and AI SDK applications | Usage, spend, volume, TTFT, tokens by model/provider/project | Upstream provider prompt caching | Provider ordering, timeouts, automatic failover, model fallbacks | Spend quotas per API key | No; managed Vercel service |
| LiteLLM | Teams that must operate the gateway themselves | Built-in spend tracking plus logging and OpenTelemetry integrations | In-memory, Redis, disk, object-store, and semantic options | Retries, cooldowns, load balancing, provider/model fallbacks | Virtual-key, user, team, and project budgets/rate limits | Yes; this is the primary deployment model |
OpenRouter is a stronger baseline than it used to be
OpenRouter remains reasonable when the main job is sourcing models. Its provider routing documentation supports ordered providers, allow/deny filters, price or performance sorting, data-policy filters, and fallback. Activity reporting tracks spend, tokens, and requests; optional input/output logging adds content inspection.
It supports provider prompt caching and an opt-in gateway response cache. Prompt caching reuses provider-managed prefixes; response caching returns a stored complete response for an identical request.
The gap appears with granular policy and ownership. Enforced workspace budgets are Enterprise-only, and no self-hosted gateway is publicly documented. The official pricing page lists a 5.5% pay-as-you-go platform fee as of 2026-07-20, with separate BYOK terms.
Portkey: pick it for governance across multiple teams
Portkey addresses sprawl across provider keys, allowed models, rate limits, budgets, guardrails, and audits. Its AI Gateway documentation lists fallbacks, retries, load balancing, conditional routing, circuit breakers, canary tests, timeouts, and limits. Observability includes logs, traces, feedback, metadata, filters, costs, and OpenTelemetry.
Portkey provides exact-match response caching on all plans; semantic caching requires a vector database and selected Enterprise plans, according to its cache documentation.
As of 2026-07-20, Portkey pricing lists a free tier with 10,000 monthly recorded logs and three-day retention, explicitly unsuitable for production. Production is $49 per month for 100,000 recorded logs, then $9 per additional 100,000; Enterprise is custom. The gateway runs locally, but private-cloud, VPC, and air-gapped deployments require an enterprise evaluation.
Helicone: pick it when debugging and traces lead the decision
Helicone’s clearest reason to switch is observability. It captures request and response context, cost, latency, errors, sessions, properties, and feedback. Its current gateway adds automatic provider routing, BYOK-first behavior, managed-key fallback, exclusions, and explicit chains.
Its gateway cache stores complete responses on Cloudflare’s edge with configurable duration, buckets, and namespaces. Avoid caching personalized or time-sensitive prompts without a deliberate key and retention policy.
As of 2026-07-20, Helicone pricing lists Hobby at $0 with 10,000 requests, 1 GB storage, seven-day retention, and one seat. Pro is $79 per month plus usage; Team is $799 plus usage; Enterprise is quoted. Self-hosting supports manual, Docker Compose, Kubernetes, and cloud deployments, shifting storage, upgrades, and incidents to your team.
Requesty: pick it for managed routing with a simple cost model
Requesty offers routing policies editable without application redeployment. Its fallback policies support ordered model chains, retries, backoff, regional endpoints, and BYOK selection. Latency policies use recent time-to-first-token or total-response measurements, while analytics identifies the serving model.
Caching is mainly provider prompt caching for supported Anthropic and Gemini models. auto_cache requests or bypasses it; custom TTL, warming, and managed caching require contacting Requesty.
The Requesty pricing page says that, as of 2026-07-20, Free includes 200 daily requests on free models. Pay-as-you-go adds a 5% markup with no subscription, seat fee, or minimum spend; Enterprise pricing covers SSO, RBAC, audit logs, policies, group budgets, and service accounts. No customer-operated gateway is documented.
Cloudflare AI Gateway: pick it for edge controls
Cloudflare fits AI traffic that should share existing edge, security, and logging controls. It provides logs, token and estimated-cost analytics, metadata, rate limits, DLP, and guardrails. Exact-request caching has per-request TTL, bypass, and custom keys. Fallback configuration moves between models or providers after errors or timeouts.
Spend limits can scope by model, provider, user, team, application, or metadata combinations, then block or use a cheaper fallback.
As of 2026-07-20, Cloudflare says core features are free. Log capacity is 100,000 total on Workers Free and 10 million per gateway on Workers Paid. Unified Billing adds 5% when purchasing credits; provider inference passes through without markup. Connected services can cost extra. No self-host option exists.
Vercel AI Gateway: pick it for Vercel and AI SDK integration
Vercel AI Gateway fits applications already using Vercel projects or AI SDK. It supports OpenAI-compatible, Anthropic Messages, and Responses APIs. The gateway overview documents spend monitoring, load balancing, and model fallbacks. Teams can restrict providers, set timeouts, and inspect usage, spend, volume, time to first token, and tokens.
Automatic caching configures upstream provider prompt caching, not a gateway-owned full-response cache.
As of 2026-07-20, Vercel pricing is pay-as-you-go at provider list price with no token markup, including BYOK. Teams start with $5 monthly free credit; purchasing credits ends that credit. API-key budgets enforce recurring or non-resetting quotas. No self-host option is published.
LiteLLM: pick it when self-hosting is non-negotiable
LiteLLM is an open-source proxy and Python SDK your platform team operates. The official quickstart documents authentication hooks, cost tracking, rate limits, retries, and fallbacks across more than 100 providers. Virtual keys can represent users, teams, or projects.
Its caching system supports memory, disk, Redis, S3, GCS, and semantic backends. Routing adds load balancing and cooldowns. Observability can flow to OpenTelemetry and third-party backends, although dashboards and alerts may require assembly.
As of 2026-07-20, the official LiteLLM open-source page lists $0 in software cost; infrastructure, state stores, telemetry, upgrades, on-call work, and security remain costs — and in practice they usually exceed a hosted gateway’s percentage fee at small scale. Use it when ownership is required, not merely to avoid a gateway fee.
How to choose without a risky cutover
Pick Portkey if policy, guardrails, virtual keys, budgets, and traces must be managed together. Pick Helicone if engineers primarily need to reconstruct requests and diagnose cost or latency. Pick Requesty if a hosted router with a clear percentage markup and editable routing policies is enough. Pick Cloudflare if edge caching, DLP, rate limiting, and metadata-scoped budgets fit your existing Cloudflare estate. Pick Vercel if the app already uses Vercel and AI SDK and provider prompt caching is sufficient. Pick LiteLLM if you need the gateway inside your own network and can operate its stateful dependencies.
Canary before moving all traffic. Test streaming, tool calls, structured output, multimodal input, and long context. Verify timeouts, fallback compatibility, cache isolation, redaction, budgets, trace export, and all-provider failure. Migration is complete when controls work under failure, not when one chat completion returns 200.