Feature request: native WebSocket support for Next.js applications on Vercel

Hi Vercel Team,

I’m reaching out to inquire about potential WebSocket support and share the technical challenges we’re facing with our current architecture.

Current Architecture

Our application uses a dual-service architecture:

  1. **Next.js 15 (App Router)** - Deployed on Vercel

    • Server-side rendering
    • API routes for REST endpoints
    • User authentication and dashboard
  2. **Go WebSocket Server (ws-server)** - Deployed on external VPS

    • Real-time chat conversations
    • ASR (Automatic Speech Recognition) audio streaming
    • Live screen capture transmission
    • Bidirectional communication for AI-assisted features

Challenges with Dual-Service Architecture

**1. Deployment Complexity**

  • Next.js deploys seamlessly to Vercel, but our Go service requires a separate VPS
  • We maintain two distinct CI/CD pipelines
  • Version coordination between services adds release complexity

**2. Operational Overhead**

  • Managing two independent service instances
  • Separate monitoring, alerting, and logging systems
  • Independent scaling strategies for each service
  • Different health check and recovery procedures

**3. Domain & Network Configuration**

  • Requires separate domains/subdomains (e.g., `app.example.com` + `ws.example.com`)
  • CORS configuration and SSL certificate management for multiple endpoints
  • Users must connect to different origins for HTTP vs WebSocket traffic

**4. Increased Costs**

  • VPS hosting fees in addition to Vercel subscription
  • Bandwidth costs across multiple providers
  • Time investment in maintaining parallel infrastructure

Our Use Case

The WebSocket service handles mission-critical real-time features:

  • Streaming audio for speech recognition
  • Live transcription delivery
  • Real-time AI response streaming
  • Screen capture synchronization between desktop app and web interface

Request

We would greatly appreciate knowing:

  1. Are there any plans to support WebSocket connections on Vercel?
  2. If so, is there a tentative timeline or roadmap we could follow?
  3. Are there any recommended workarounds for real-time features in the meantime?

Native WebSocket support would allow us to consolidate our entire stack on Vercel, significantly simplifying deployment, reducing costs, and improving developer experience.

Thank you for your time and for building such an excellent platform.

Best regards

There’s currently no public roadmap for native websockets on Vercel unfortunately, so I can’t make any guarantees there

Your current CORS concerns can be handled by using Vercel Rewrites to rewrite a subpath to your ws subdomain, so browsers all think they’re connecting to the same origin

Architecturally speaking, for websockets to work you will need at minimum a long lived proxy gateway to load balance ws requests to Vercel functions, so you’ll need to keep something like your Go Websocket server no matter what

It may however be possible to reduce the scope of that service to just handle orchestration so your Go code doesn’t need to update in lock-step with the rest of your app, while the workloads all run on Vercel

There’s a startup called Rivet that operates this way and has a really good engineering breakdown

Sorry I can’t give you better news here but hopefully this helps at least a little bit