
Vercel Functions can now run Bun 1.4, giving developers access to the runtime’s major Rust rewrite, wider Node.js compatibility, and latest performance improvements. The update is available now, but Vercel is requiring teams to opt in because the release introduces breaking changes.
According to Vercel’s changelog announcement, Bun 1.4 resolves more than 2,900 issues and passes over 1,500 additional Node.js compatibility tests. That could make the runtime a more credible option for production applications that previously encountered gaps when running packages originally built for Node.js.
The architectural change is substantial. Bun 1.4 rewrites the runtime from Zig to Rust, rather than delivering a routine incremental update. Bun’s official release notes provide the full technical detail, including the changes developers should assess before moving an existing application.
What Bun 1.4 Supports on Vercel
Bun-powered Vercel Functions continue to run on the company’s Fluid compute infrastructure. Usage is subject to Active CPU pricing, which measures CPU time while a function is actively performing work rather than treating its entire lifetime as active processing.
The integration includes support for WebSockets and Bun.serve(). That matters for builders working on real-time interfaces, streaming services, collaborative applications, and persistent connections that do not fit neatly into a traditional request-and-response function model. Vercel provides separate WebSocket documentation for Bun deployments.
Vercel also lists several commonly used frameworks as supported:
- Next.js, for full-stack React applications
- Elysia, a Bun-focused server framework
- Hono, a lightweight web framework designed for multiple JavaScript runtimes
The increased Node.js compatibility is likely to be the most immediately useful improvement for smaller teams. A runtime can be fast in benchmarks but still create operational costs if packages, build scripts, or framework integrations behave differently from their Node.js equivalents. Passing another 1,500 compatibility tests does not guarantee every dependency will work, but it signals that Bun’s coverage of the Node.js ecosystem has expanded.
Upgrading Requires an Explicit Configuration Change
Vercel is not moving existing Bun functions to version 1.4 automatically. To upgrade, developers must set bunVersion to 1.4.x inside the project’s vercel.json file:
{
"bunVersion": "1.4.x"
}
The explicit opt-in gives teams time to test their applications before production traffic reaches the new runtime. Vercel specifically advises developers to review Bun’s documented breaking changes and update affected code before changing the configured version.
A sensible migration path is to change the version in a branch, deploy it to a preview environment, and exercise the application’s key routes, background work, dependency loading, and WebSocket behavior. Teams can then inspect failures before promoting the configuration to production. Vercel’s newly introduced always-on tracing for production and preview traffic may provide additional context when diagnosing runtime-specific problems.
For new projects, Bun 1.4 offers a direct route to using the latest runtime without carrying forward older behavior. Existing production applications face a more measured decision. The rewrite, compatibility work, and resolved issues are meaningful, but the presence of breaking changes makes testing a requirement rather than a precaution.
Frequently asked questions
What is Vercel Bun 1.4?
Vercel Bun 1.4 is support for running version 1.4 of the Bun JavaScript runtime inside Vercel Functions. The release rewrites Bun from Zig to Rust, resolves more than 2,900 issues, and passes over 1,500 additional Node.js compatibility tests.
How does an existing Vercel project upgrade to Bun 1.4?
The project must set bunVersion to 1.4.x in its vercel.json configuration. The upgrade is not automatic because Bun 1.4 includes breaking changes that may require application updates.
Does Bun 1.4 on Vercel support WebSockets?
Yes. Bun on Vercel Functions supports WebSockets and Bun.serve(), alongside frameworks including Next.js, Elysia, and Hono. These functions run on Fluid compute with Active CPU pricing.
Sources
1 checkedHow we cover tool news: Create With's tool desk drafts these reports with AI from the sources listed above and checks them against those sources before publishing.







