Vercel Now Supports the Bun Runtime

On October 28, 2025, Vercel announced native support for the Bun Runtime as a public beta feature. This integration allows developers to run their applications on Bun directly on Vercel's platform, providing access to Bun's high-performance JavaScript runtime with zero configuration.

Why This Matters

This represents a significant milestone for Bun's adoption in production environments. Previously, Bun was available as a package manager on Vercel (added in 2023 and became the most upvoted feature request), but now the full Bun Runtime is supported natively.

The journey began when bun install support became Vercel's most upvoted feature request ever in 2023. Developers wanted Bun, and Vercel listened. Now that support extends beyond package management to the complete runtime.

Key benefits include:

  • Lower memory and CPU usage — Built in Zig and optimized for efficiency
  • Access to all Bun APIs — Use Bun.SQL, Bun.S3, Bun.file, Bun.password.hash, and more directly
  • Full Web API support — Bun implements standard Web APIs like fetch, WebSocket, and ReadableStream
  • Node.js compatibility — Designed as a drop-in replacement with ongoing compatibility improvements

How to Enable Bun on Vercel

Enable Bun by adding a single configuration line to your vercel.json:

{
  "bunVersion": "1.x"
}

Once configured, Vercel detects the setting, installs Bun if needed, and runs your project natively. This works both locally with vercel dev and in production deployment.

The value should be "1.x" — Vercel manages the minor version automatically.

Using Bun with Next.js

Next.js works out of the box with the Bun Runtime on Vercel. To use Bun in your build and start commands, add the bun run --bun syntax to your package.json scripts:

{
  "scripts": {
    "dev": "bun --bun next dev",
    "build": "bun --bun next build",
    "start": "bun --bun next start"
  }
}

Important note: Next.js still uses its own bundler (Turbopack or Webpack) to bundle and compile. The --bun flag ensures that the runtime underneath — which executes JavaScript, reads files, serves responses, etc. — is Bun rather than Node.js.

This approach allows you to call Bun's APIs natively inside Server Functions or React Server Components without any adapters or additional setup.

Practical Example: Server Components with Bun APIs

With the Bun Runtime enabled, you can use Bun's built-in APIs directly in your React Server Components:

import { s3, $, sql } from 'bun'

export default async function BlogPage({ params: { slug } }) {
  const [post] = await sql`
    SELECT title, image_key, content_html
    FROM posts
    WHERE slug = ${slug}
  `

  const imgUrl = s3.file(post.image_key).presign({ expiresIn: 3600 })
  const wordCount = await $`echo "${post.content_html}" | wc -w`

  return (
    <article>
      <h1>{post.title}</h1>
      <img src={imgUrl} alt={post.title} />
      <div dangerouslySetInnerHTML={{ __html: post.content_html }} />
      <p>Word count: {wordCount}</p>
    </article>
  )
}

This example demonstrates three Bun APIs in action:

  • sql — Bun's unified SQL client for PostgreSQL, MySQL, and SQLite
  • s3 — Built-in S3 client for object storage operations
  • $ — Bun Shell for running shell commands with JavaScript interop

No adapters, no setup, no additional packages — just import from 'bun' and use.

Platform Integration Status

Bun support extends beyond Vercel. The runtime is already available on:

  • Railway — Direct Bun runtime support
  • Render — Native deployment option
  • Docker — Official oven/bun images for containerized deployments

With Vercel joining this list, Bun now covers major deployment platforms, making it easier than ever to use Bun in production.

Current Status: Public Beta

The Bun Runtime on Vercel is currently in public beta. This means:

  • Available to all users today
  • Active development and improvements ongoing
  • Collaboration between Vercel and Bun teams for stability
  • Expanding framework compatibility

The teams are actively working on improving the developer experience and expanding framework compatibility beyond Next.js, Hono, and custom API routes to include frameworks like TanStack Start, Remix, and others.

Getting Started

To deploy your first Bun-powered app on Vercel:

  1. Add "bunVersion": "1.x" to your vercel.json
  2. Update your package.json scripts to use bun --bun
  3. Deploy to Vercel with vercel or push to your connected Git repository

Your app will automatically build and run on Bun in both preview and production deployments.

Summary

Vercel's native Bun Runtime support marks an important step forward for Bun's production readiness. The combination of Vercel's deployment platform with Bun's performance optimizations provides developers with a powerful new option for building and deploying modern JavaScript applications.

For support, visit the Bun documentation or join the Bun Discord community.