Headline: Vercel Functions can now hold WebSocket connections open directly on Fluid Compute, the same runtime that already serves my regular API routes — I stopped standing up a dedicated Socket.IO server and a Redis pub/sub layer just to push live updates to a browser tab.
Key takeaways
Vercel Functions support WebSockets natively through experimental_upgradeWebSocket() from @vercel/functions, running on Fluid Compute — no standalone WebSocket server or third-party realtime service required.
Fluid Compute reuses a warm function instance across concurrent requests instead of spinning up one instance per request; that's what makes holding a long-lived socket open practical on a platform historically built around short request/response cycles.
Standard Node.js libraries like ws work inside a Vercel Function unchanged — I didn't rewrite client or server socket logic to move this off a dedicated server.






