Skip to main content

Vercel AI Gateway: One Killer Feature, One Pricing Catch

My Vercel AI Gateway review after shipping against it in Cumbersome. The killer feature is zero data retention across OpenAI, Anthropic, and Google. The catch is a marketing page that says no platform fees and fine print that tells a different story.

Published Last updated

When I first published this post in February, the headline was Zero Data Retention (ZDR). That was the whole story, and Vercel was missing the most important piece: OpenAI coverage. That gave OpenRouter a real edge.

Then a Vercel product manager emailed me.

A Vercel PM emailed to let me know OpenAI is now covered under ZDR. The feature was an obvious gap and an obvious fix. I replied twice, including about ZDR pricing, and never heard back, so the outreach may not go very deep. Still, reaching out to a small developer at all is more than most companies do.

That gap is closed. So this is no longer a feature update. It's a review.

If you want the short version, here it is:

  • The killer feature: ZDR now covers OpenAI, Anthropic, Google, and more through one gateway.
  • The pricing catch: Team-wide ZDR costs $0.10 per 1,000 requests, and credit purchases add what looks like undiscounted Stripe rates. Neither will break the bank, but a marketing page that says "no platform fees" should match the fine print.

I build Cumbersome, an iPhone and Mac app for people who want direct API access instead of AI subscriptions. That means I spend a lot of time with raw provider APIs, multi-provider gateways, model catalogs, and billing systems. This is a review from that perspective.

The live model catalog is the clearest explanation of what AI Gateway is. One endpoint in front of many providers, with pricing, capabilities, and data-handling constraints exposed in one place.

What Vercel AI Gateway Actually Is

Vercel AI Gateway is a middle layer between your app and the model providers. You send requests to one endpoint. Vercel routes those requests to OpenAI, Anthropic, Google, Groq, Together, Mistral, and a long tail of others. You still choose the model. You just stop managing a separate integration surface for every provider.

one keyAI GatewayAI GatewayZDRenabledauto-retry & fallbackAnthropicOpenAIGoogleMistralGroq

The model landscape changes weekly. If you manage your own API keys, direct provider integrations give you the best control, but they also give you multiple dashboards, multiple balances, multiple policy surfaces, and multiple integration quirks. A gateway collapses that sprawl.

In Vercel's case, the practical benefits are:

  • Coverage. One key gets you access to hundreds of models.
  • Centralized reporting. Spend, token usage, latency, and requests show up in one place.
  • BYOK support. You can route your own provider credentials through the gateway with no Vercel markup.
  • Reliability. The gateway can retry across providers, and BYOK requests can fall back to Vercel system credentials if your own provider credentials fail.

I don't think gateways replace direct APIs in every case. If you only use one provider and you want the smallest possible trust surface, direct access is still cleaner. But for anyone living across multiple model families, gateways are increasingly the sane default.

Why I Generally Recommend Gateways Over Direct Provider APIs

The strongest case for gateways is access.

They let an individual developer or small team get capabilities that are usually reserved for larger customers. The big one is ZDR. If you are not a giant company, you are usually not negotiating custom data-handling terms with every AI provider yourself. A gateway can do that once and expose it through a simple switch.

They also fix the operational mess that comes from model churn. When the best model changes, I do not want to rethink billing, observability, and failover from scratch. I want to switch models and keep moving.

People underrate this. One dashboard for usage, latency, request counts, and cost across every provider. Not glamorous, but a lot better than piecing together three or four separate consoles.

Zero Data Retention Is Still the Real Story

The reason I care about Vercel AI Gateway is still ZDR. You enable it, and the gateway only routes through providers that have agreed to delete your data immediately after processing. No training on your prompts. No storing your outputs.

You don't need ZDR on every throwaway prompt. But when you are working with business documents, client data, financials, legal drafts, or proprietary code, stored prompts become discoverable prompts. Once data is retained, it can be leaked, subpoenaed, or simply handled in ways you didn't intend. Reuters reported in late 2025 that a federal judge ordered OpenAI to hand over millions of stored ChatGPT conversations in copyright litigation. That's the kind of story that makes "processed and deleted" feel a lot less abstract.

The April 6, 2026 changelog (opens in new tab) says AI Gateway ZDR now covers Anthropic, OpenAI, Google, and more. The main provider table in the docs has not caught up yet, so check the changelog and the live model list if you are evaluating the product today.

Team-wide ZDR enforcement. Flip it on and AI Gateway routes only through providers where Vercel has ZDR agreements in place.

One thing I like: the product fails closed. If you request ZDR for a model and there's no ZDR-compliant route available, the request errors instead of silently dropping to a weaker path. That's exactly what you want for sensitive work.

The Pricing Catch: ZDR Is Not as Clean as "No Platform Fees"

Vercel offers ZDR two ways: per-request and team-wide. Per-request ZDR is free. Team-wide ZDR costs $0.10 per 1,000 successful requests on Pro and Enterprise plans.

Per-request ZDR is free. Team-wide ZDR is $0.10 per 1,000 requests. That's a platform fee on a feature, whatever the marketing page calls it.

Look at that table again. Vercel's own marketing says "no markup, just list price" and "no platform fees." But $0.10 per 1,000 ZDR requests is a fee for a feature. It's not a token markup and it's not a credit-purchase surcharge, but it's still a charge that does not exist on the direct provider API. Call it what you want. It's a platform fee.

"No platform fees." Except for the one on ZDR.

The pricing FAQ on the AI Gateway marketing page. "No markup" and "you are responsible for any payment processing fees." No mention of the $0.10/1,000 ZDR charge.

For comparison, OpenRouter does not charge extra for ZDR. You pay the credit purchase fee (5.5% on card) and ZDR is included. That's a cleaner model even if the headline number is higher.

Cumbersome sends ZDR per-request (zeroDataRetention: true in the request body) when you enable the toggle while adding your Vercel key. That means the free tier applies.

This toggle sends zeroDataRetention: true on every request. Per-request ZDR is free, so you get the protection without the $0.10/1,000 team-wide surcharge.

But what happens if you also flip on team-wide ZDR in your Vercel dashboard? Vercel's docs say the two options work as an OR: if either is enabled, ZDR is enforced. Whether you get charged the $0.10/1,000 surcharge when both are on is not clear from the docs. I haven't tested it.

A clean failure is better than a quiet privacy downgrade. If no ZDR-compliant route exists, the request should stop right there.

The Trust Gap in the Pricing Picture

Beyond the ZDR fee, Vercel's model is straightforward on paper: $5/month in free credits to start, no token markup on provider rates, no extra fee for BYOK requests, and payment processing fees when you buy credits.

The card processing fee is at least visible upfront. In my checkout flow, buying $100 of credits added a $3.20 fee (3.2%). That maps almost exactly to Stripe's published standard rate of 2.9% + $0.30.

3.2% on a $100 credit purchase. That's Stripe's standard domestic card rate, almost to the penny.

Neither the ZDR fee nor the card fee will ruin anyone's budget. On typical usage they add up to pennies. But together they create a trust gap, because the marketing page says "no platform fees" and the checkout looks like Stripe's off-the-rack rate. A company processing Vercel's volume almost certainly negotiates below Stripe's published pricing. Passing along the public-standard rate is not dishonest, but it's not "no fees" either.

This is not unique to Vercel. The WSJ recently reported on the surcharge economy (opens in new tab): small fees that individually seem harmless but collectively train consumers to stop trusting the advertised price. One person quoted in the piece said "I feel like I need to be my own detective." That's how I felt reading Vercel's marketing page next to the docs.

Maybe it's just the marketing team getting ahead of the product team. Maybe there are Stripe add-on costs that close the gap. I don't know. What I do know is that when a vendor leads with "no platform fees" and I find a per-request ZDR surcharge in the docs and what looks like undiscounted Stripe rates in the checkout, that's a trust gap. I want relationships with vendors where the marketing page and the fine print tell the same story.

BYOK, Observability, And Reliability

Bring your own key (BYOK) is one of the more useful details here.

If you already have provider credits, private cloud access, or internal agreements you want to keep, you can route those credentials through AI Gateway with no Vercel markup. You keep the single endpoint, the catalog, and the reporting layer without buying all inference through Vercel.

The catch is important: ZDR enforcement does not apply to BYOK requests. Once you use your own provider key, you are back on your own agreement with that provider. That's sensible, but it means you should not confuse "routed through the gateway" with "covered by Vercel's ZDR agreements."

Reliability is also stronger than direct-provider setups in a couple of ways:

  • If one provider path fails, AI Gateway can retry against another provider for the same model.
  • If your BYOK credentials fail, Vercel can retry with system credentials, assuming you have AI Gateway credits available.

The gateway doubles as an uptime layer.

Where It Still Feels Weak

Four weak spots remain for me.

1. Web Search Only Really Works If You Speak TypeScript

Vercel AI Gateway ships web search as a headline feature. The web search docs (opens in new tab) promise "real-time web search across any model," and the landing page puts it alongside the other big capabilities. Then you try to use it from anything other than Vercel's own TypeScript SDK, and it falls apart.

Here is what the docs show you:

import { gateway, streamText } from 'ai';

streamText({
  model: 'openai/gpt-5.4',
  tools: { perplexity_search: gateway.tools.perplexitySearch() },
});

One line. Works with any model. Gateway runs the search. Beautiful.

Here is what the docs do not mention: every web search example, across every model, across every tool variant, uses the AI SDK. No curl. No Python. No raw HTTP. Both the Perplexity (opens in new tab) and provider-specific (opens in new tab) sections on that page are streamText and generateText calls from the ai package, top to bottom.

That's not a documentation quirk. AI Gateway has two endpoints. The OpenAI-compatible one at /v1/chat/completions is the public one everyone advertises; the AI SDK does not use it. The SDK talks to a private endpoint that intercepts the search tool and runs it server-side. Hit the public endpoint with the same tool and it just forwards the request to the model, which turns around and asks your client to run the search. Your client cannot run the search. Nothing on the gateway will run it for you unless you go through the SDK.

Provider-native search — openai.tools.webSearch() (opens in new tab), anthropic.tools.webSearch_20250305() (opens in new tab), google.tools.googleSearch() (opens in new tab) — is a different beast: those run on the upstream provider, not the gateway, so in principle they should pass through the OpenAI-compatible endpoint. In practice the docs only show them in TypeScript, and whether each one makes it through Chat Completions intact is something you discover by trying.

A few curl examples and one sentence on the web search page clarifying that server-side execution only happens through the AI SDK would close most of the gap. Until then, "web search on AI Gateway" really means "web search in @ai-sdk/gateway," and those are not the same product.

(In Cumbersome, I flag server-side web search as unsupported on Vercel, while the rest of the gateway works normally. The app ships a local, browser-based search tool that runs on-device, so Vercel-routed models can still get real-time information through that path.)

Honest labeling. Vercel gives you broad model access and ZDR controls in Cumbersome, but search is rough enough that I would rather call it unsupported than fake a clean abstraction.

2. No Provider Restrictions

Vercel AI Gateway routes through a long list of providers. You can filter the model catalog by provider to browse what is available, but you can't restrict which providers actually handle your requests.

The provider filter lets you browse models by provider. But you can't tell the gateway "only route my requests through these providers." The distinction matters.

This is a real problem for anyone who cares about where their data goes. ZDR is a contractual commitment, but contracts are only as strong as the company behind them. There's a meaningful difference between your request landing on Azure (Microsoft, SOC 2, US-based, published trust center) and landing on a startup you have never heard of. When a gateway routes through dozens of providers, "zero data retention" is only as trustworthy as the least trustworthy provider in the chain.

OpenRouter lets you lock down your provider list at the account level or per API key. You pick exactly which providers can handle your traffic. I restrict mine to US-based providers with SOC 2 compliance and published trust centers. Vercel does not offer this. You trust the gateway to pick the provider, and you trust every provider in that list to follow through on ZDR. For some people, that trust is fine. For me, it's a gap.

3. Credit Card Only

Vercel only accepted a credit card in my checkout flow. A credit card purchase ties your real name, billing address, and bank to your AI spending. If you care enough about privacy to want ZDR on your prompts, you might also care about whether your payment method creates a paper trail linking your identity to your AI usage. OpenRouter accepts USDC (at a 5% fee), which lets you fund your account without handing over personal financial information to the gateway. Vercel does not offer that option today.

4. Another Middleman Is Still Another Middleman

Even with ZDR, you are still inserting another vendor between your app and the model provider.

That means one more API key, one more dashboard, one more billing relationship, one more policy surface, and one more place where an outage or bug can break your flow. ZDR removes one class of privacy risk. It does not remove the complexity cost of adding a gateway.

For some people, that trade is worth it immediately. For others, especially people who use one model family and care more about architectural simplicity than unified access, direct APIs will still feel better.

How It Looks In Cumbersome

Once you add your key (shown above in the ZDR section), you pick from the gateway's model catalog directly in the app.

The daily convenience argument for gateways in one screen. Stop thinking about provider integrations. Just pick the model you want.

And then it behaves like any other provider in the app. Pick a model, send a prompt, get a reply.

Once configured, the gateway mostly disappears. That's what good infrastructure should do.

Bottom Line

Vercel AI Gateway is a strong option if you want one key for a large model catalog, unified observability, BYOK support, and meaningful zero data retention coverage that now includes OpenAI. The killer feature is real, and it matters more than the pricing complaints.

But the pricing complaints are worth naming. A marketing page that says "no platform fees" while the docs charge $0.10/1,000 for team-wide ZDR and the checkout passes along what looks like undiscounted Stripe rates creates a trust gap. I would rather Vercel just own the fees and drop the "no platform fees" line. The product is good enough to sell on its merits.

The broader point goes past Vercel. Gateways are becoming the practical way for individuals and small teams to get ZDR, centralized spend visibility, and cross-provider failover without negotiating enterprise contracts. Direct provider APIs do not offer those things cleanly, if they offer them at all.

The reasons to hesitate are real too. Web search is a TypeScript SDK feature dressed up as a gateway feature, and it falls apart if you speak anything else. Credit card is the only payment option. And even a well-behaved gateway is still one more company in the middle of your traffic.

If that trade sounds acceptable, Vercel AI Gateway is much easier to recommend today than it was when I first published this in February. For a comparison, my OpenRouter review covers where OpenRouter's dedicated gateway focus gives it an edge on features like presets, auto-routing, and free ZDR. Cumbersome supports both gateways alongside direct keys from OpenAI, Anthropic, and Google AI Studio. Add the keys you want, use the right one for the task.

Bless up! šŸ™āœØ