Durable Objects reach general availability
Cloudflare has announced that Durable Objects, its state-coordination layer for Workers, is now generally available. The feature, which entered open beta last year, is designed to let developers build applications that require shared, coordinated state without managing databases, networking, or scaling policies.
Durable Objects work by letting developers define a JavaScript class and create uniquely named instances of that class across Cloudflare's network. Other Workers and Durable Objects can send messages to an instance via its ID. Each object processes messages in order on a single thread, which provides natural coordination between requests. A strongly consistent key-value storage API is included for persisting state durably.
The model is intended to simplify patterns that are awkward with traditional databases, particularly at global scale. For example, an online document editor can keep each document's state in memory inside a Durable Object. Users connecting to that object see the latest copy immediately, and edits are synchronized across all connected clients without a separate coordination service. When users disconnect, the object leaves memory and stops incurring charges while its state remains persisted.
Individual objects are single-threaded by design, but collections of objects can scale horizontally. Cloudflare says objects can handle hundreds of thousands of requests per second across a collection and hundreds of requests per second on a single object. The platform manages the object lifecycle, so there are no cleanup jobs or manual scale-down operations required.
Production hardening and new capabilities
Since the early-access period began, Cloudflare has made several reliability and performance improvements. The company says Durable Objects now power internal products including R2 storage and Cloudflare Waiting Room. Waiting Room, which tracks the number of users attempting to access a site globally, uses Durable Objects to maintain a strongly consistent view of that frequently changing state—a workload the company says would be difficult to run on a traditional database at global scale.
External customers have built production systems on Durable Objects as well. A major gaming company reportedly uses them to coordinate individual game state and multiplayer lobbies, with the ability to scale dynamically without server or database management being the deciding factor. Other use cases include status page monitors and collaborative whiteboards. Cloudflare has published a reference architecture, dog, on GitHub for building responsive WebSocket-based applications with Durable Objects.
Several notable features shipped during the beta period:
- Jurisdictional Restrictions, which let developers tag a Durable Object with a region to ensure data is processed and stored there for compliance purposes.
- A storage cache in front of Durable Object storage requests, speeding up reads and writes and simplifying concurrent code.
- Simplified uploads of new Durable Object classes, along with dashboard UI support and
wrangler devandwrangler tailintegration for live debugging.
On the roadmap
Cloudflare is working on several enhancements to Durable Objects. The most significant is replication, which would allow workloads to scale across multiple threads by providing read-only access to an object's state and synchronizing only when state is mutated. Today, individual objects are limited to a single execution thread.
The company is also building an API for guaranteed callbacks, which would let a Durable Object be woken at a specified time in the future to run a function. That capability would simplify lifecycle management and make it easier to build primitives like reliable queues. Cloudflare also continues to explore better geo-distribution of objects, including the automatic migration of objects mentioned in the original announcement.
Developers can enable Durable Objects from the Cloudflare Dashboard and opt in to pricing. Cloudflare points to a sample chat application and the dog reference architecture as starting points for building on the platform.



