Vercel Functions WebSocket support reaches general availability
Native WebSockets move out of beta after handling 300 million connections since June, so chat, multiplayer and realtime AI streaming no longer need a bolted-on third-party service.
Vercel announced on 20 October that native WebSocket support in Vercel Functions is now generally available, after launching in public beta in June. Since that beta, Vercel’s CDN has carried 300 million WebSocket connections in total and now serves 15 million a day.
The pitch is that you no longer need a separate realtime service bolted onto a Vercel deployment: AI chat, streaming responses and multiplayer features, including AI Gateway’s realtime models, can run as a WebSocket connection inside an ordinary Function. Billing follows the same model as any other Function invocation, and with Active CPU pricing you’re only charged for the CPU time spent actually processing messages, not for time a connection sits idle waiting on the next one.
Why it matters: this closes a real gap. Vercel has long been the easy choice for shipping a Next.js app, but anything needing a persistent connection meant reaching for Ably, Pusher or a separate server. A production-ready, GA WebSocket path removes that fork in the stack for a lot of small-to-medium realtime features.
The caveat: a connection is still pinned to the Function instance that opened it for the life of that invocation, so broadcasting to every open connection or sharing presence across instances isn’t something this adds on its own, you still need a backing store or pub/sub layer for that.