Node.js version 23, the latest odd-numbered release, introduces the Temporal API as a stable feature enabled by default, following the project’s shift to a six-month major release cycle. This update incorporates V8 engine version 12.8, enhancing performance and ECMAScript support, while simultaneously marking several legacy APIs for deprecation to streamline the runtime’s long-term maintenance.
What is the Temporal API and why does it matter?
The Temporal API provides a modern, standardized way to handle dates and times in JavaScript, effectively replacing the historically problematic Date object. According to the official Node.js documentation, the API is now enabled by default, allowing developers to perform complex date arithmetic, time zone conversions, and calendar calculations without relying on third-party libraries like Moment.js or date-fns.

Temporal avoids the common pitfalls of the legacy Date object, such as its lack of immutability and confusing parsing behavior. By providing dedicated types for different use cases—such as PlainDate, PlainTime, and ZonedDateTime—the API reduces the likelihood of bugs in time-sensitive applications.
How does the V8 12.8 update impact performance?
Node.js 23 includes the V8 engine version 12.8, which delivers significant improvements in execution speed and memory management. The V8 team notes that this version improves support for new ECMAScript features and optimizes the performance of high-frequency operations.
Developers can expect better performance in applications that rely heavily on object property access and array operations. Because Node.js releases typically align with V8’s development schedule, this update ensures that Node users have access to the latest language features, such as improved Set methods and better support for decorators, shortly after they are finalized in the ECMAScript specification.
What is changing with current deprecations?
The Node.js project continues its effort to reduce technical debt by deprecating older, less secure, or redundant APIs. In version 23, the team has moved forward with removing or flagging several legacy features.
- Buffer API changes: Certain patterns for creating Buffers that were previously discouraged are now triggering explicit deprecation warnings.
- Legacy URL parsing: The runtime is tightening its enforcement of standards-compliant URL parsing, moving away from older, non-standard behaviors.
- Module system updates: Minor adjustments to how CommonJS and ES Modules interoperate are included to ensure better consistency across the ecosystem.
According to the Node.js release schedule, version 23 is a "Current" release, meaning it will receive support for a shorter duration than Long Term Support (LTS) versions. Developers are encouraged to test their applications against this version to prepare for the upcoming Node.js 24 LTS release.
Comparison: Node.js 23 vs. Node.js 22
| Feature | Node.js 22 (LTS) | Node.js 23 (Current) |
|---|---|---|
| Temporal API | Experimental (flag required) | Enabled by default |
| V8 Engine | Version 12.4 | Version 12.8 |
| Support Status | Long Term Support | Current (6 months) |
| Primary Goal | Stability and reliability | Feature innovation |
Frequently Asked Questions
Is Node.js 23 safe for production?
While Node.js 23 is a stable release, it is a "Current" release. Most enterprise environments prefer using the LTS version (currently Node.js 22) for production workloads to ensure longer support cycles.

Do I need to update my code to use Temporal?
No. The legacy Date object remains fully supported. Temporal is an additive feature, meaning you can adopt it incrementally in new modules or when refactoring existing code.
Where can I find the full list of deprecations?
The Node.js changelog provides a comprehensive list of every API change, including specific warnings for deprecated methods.