Bun runtime for Vercel Functions now accepts Bun.serve as an entrypoint
Bun.serve() now deploys directly to Vercel Functions—no framework wrapping. WebSocket support means real-time apps just work.

Why it matters
Vercel Functions gains native Bun runtime support with Bun.serve as a first-class entrypoint, reducing friction for developers building real-time applications. WebSocket handling and per-message pricing (not idle time) change the economics of connection-heavy workloads.
The key facts
12 to knowBun.serve() now accepted as Vercel Functions entrypoint
WebSocket handler support included
Active CPU pricing model—charge only for message processing time, not idle connections
Single instance can handle multiple concurrent WebSocket connections
Set bunVersion: '1.x' in vercel.json to enable
Servers run locally with Bun deploy as-is without framework wrapping
Bun.serve() now supported as Vercel Functions entrypoint
Native WebSocket handler support via server.upgrade(request)
Active CPU pricing model—pay only for message processing time, not idle connections
Single function instance can handle multiple concurrent WebSocket connections
Requires bunVersion: '1.x' in vercel.json and routes/server.ts at project root
Server runs locally with Bun and deploys as-is without framework wrapping
Go to the source
Vercel Blogvercel.com
Publisher excerpt: The for Vercel Functions now supports as a function entrypoint, including WebSocket handlers. The server you run locally with Bun deploys as-is, without being wrapped in a framework.Bun runtimeBun.serve() Enable the runtime by setting in ."bunVersion": "1.x"vercel.json Create a server with a map in…
