· via Vercel blog
Node.js 26 LTS goes GA on Vercel with HTTP/2-by-default fetch
Vercel has made Node.js 26 LTS generally available for builds and Functions, with built-in fetch now defaulting to HTTP/2 via Undici 8. The release also brings the Temporal API and V8 14.6.

Vercel has moved Node.js 26 LTS to general availability for builds and Vercel Functions, and the runtime is now the default for every new project created on the platform. According to the company's changelog, published October 29, the change with the widest reach for serverless workloads is that the built-in fetch API now negotiates HTTP/2 by default, powered by Undici 8.
What's in the release
Vercel highlights three changes arriving with Node 26:
- HTTP/2 by default for built-in
fetch: Undici 8 lets multiple requests share a single connection with any server that supports the protocol. Vercel says this can reduce latency when functions call APIs or databases over HTTP, a common pattern in serverless code. - Temporal API: an alternative to
Dateoffering immutable values plus built-in time zone and calendar support. - V8 14.6: the updated JavaScript engine adds features such as
Map.prototype.getOrInsert(), which returns an existing value for a key or inserts a default when the key is missing.
Why HTTP/2 fetch matters in serverless
Under HTTP/1.1, concurrent requests to the same origin each need their own connection or queue behind one another, so a function that fans out to an API or an HTTP-speaking database repeatedly pays connection overhead. HTTP/2 multiplexes many requests over a single connection, which is where the latency reduction Vercel describes comes from. Because this is the platform's built-in fetch, functions get the new behaviour without any code changes.
For workloads that need to stay on the older protocol, Vercel provides an escape hatch: setting the VERCEL_FETCH_DISABLE_H2 environment variable to 1 and redeploying keeps fetch on HTTP/1.1.
How the rollout reaches existing projects
Per the changelog, the rollout works as follows:
- Node.js 26 is the default for all new projects.
- Existing projects upgrade automatically on the next deployment if the
engines.nodefield inpackage.jsonalready permits 26; a range like>=20qualifies. - Teams that want an explicit move can set
engines.nodeto26.xand redeploy. - Prebuilt deployments require Vercel CLI version 65.8.0 or later.
- Minor and patch updates within Node 26 roll out automatically for builds and Functions.
The practical consequence of the second point: projects with broad version ranges will jump a major Node version, and switch fetch to HTTP/2, on their next deploy without anyone editing configuration.
Why it matters
Serverless functions spend much of their life making outbound HTTP calls, whether to first-party APIs, third-party services or databases that speak HTTP. Making the runtime's own fetch multiplex those calls over shared connections is a latency win that requires zero application changes, which is rare.
The flip side is that this lands as a default rather than an opt-in. A protocol switch at the fetch layer can change how requests behave against origins and intermediaries with imperfect HTTP/2 support, and the way Vercel's rollout is designed, wide engines.node ranges trigger automatic upgrades. Many teams will therefore receive Node 26 and HTTP/2 fetch on their next deployment whether or not they planned for it. The VERCEL_FETCH_DISABLE_H2 variable covers the fallback, but the sensible move is to treat the next deploy as a runtime upgrade and test accordingly.
Beyond fetch, the release also gives Vercel users a working preview of where the Node mainstream is heading, with Temporal poised to replace many uses of Date and V8 14.6 bringing smaller but welcome ergonomics to the standard library.
- #node-js
- #vercel
- #serverless
- #http2
- #undici
- #javascript