Skip to main content

Rivet Actors vs
Cloudflare Durable Objects

Cloudflare Durable Objects provide stateful serverless computing with vendor lock-in. Rivet Actors give you the same capabilities as an open-source library that works with your existing infrastructure and technology stack.

Last updated June 11, 2026

Overview

Compare the two approaches and decide which is right for your project.

Rivet Actors

Rivet Actors bring the actor model to your existing infrastructure as an open-source library. Build stateful, distributed applications with your preferred technology stack, deployed on your own infrastructure.

When to choose Rivet Actors

Developer-friendly experience
When you want an intuitive platform with high-quality documentation, mature local development experience, and in-depth observability into your workloads
Works with your existing infrastructure
When you want to use actors with your existing deployment process on Kubernetes, AWS, VPS, or any infrastructure
Technology flexibility
When you want to use your existing frameworks and libraries without platform-specific constraints
Provides monitoring and observability
When you need built-in monitoring for actors that integrates with your existing observability stack
Rich ecosystem of integrations
When you want a comprehensive ecosystem with ready-to-use integrations for popular frameworks and tools

Cloudflare Durable Objects

Cloudflare Durable Objects provide stateful serverless computing that runs on Cloudflare's global edge network. Built on Cloudflare's platform, Durable Objects offer strong consistency and state persistence for applications built on the Workers runtime.

When to choose Cloudflare Durable Objects

Already using Cloudflare ecosystem
When you're already committed to Cloudflare Workers and want stateful capabilities
Building on the Workers runtime
When your team is comfortable working within the Workers runtime, with JavaScript/TypeScript, Python in beta, or Rust via workers-rs, and nodejs_compat covers the npm packages you need
Don't mind platform constraints
When you're comfortable with Cloudflare's deployment process, monitoring limitations, and vendor lock-in
Prefer low-level primitives
When you want raw primitives and don't need a rich ecosystem of framework integrations

Feature Comparison

A detailed breakdown of capabilities across both platforms.

Feature
Rivet Actors
Cloudflare Durable Objects
Why it matters
Open Source
Open-source
Yes, Rivet is open-source with the Apache 2.0 license. View on GitHub.
The workerd runtime is open source under Apache 2.0, but the Durable Objects platform (control plane, storage, distribution) is proprietary
Building your core technology on open-source software is vital to ensure portability and flexibility as your needs change
Infrastructure
Works with existing infrastructure
Deploy actors on Kubernetes, AWS, VPS, or any infrastructure
Locked to Cloudflare's infrastructure
Using your existing infrastructure avoids vendor lock-in and integrates with your current setup
Data sovereignty and VPC isolation
Full control over data residency and network isolation within your VPC
Data processed on Cloudflare's global network with limited control
Data sovereignty ensures compliance with data governance requirements and maintains complete network isolation
Works with existing deploy processes
Import the library and deploy with your existing CI/CD
Requires Cloudflare-specific deployment process
Keeping your existing deployment process reduces complexity and learning curve
Technology flexibility
Works with your existing technology stack and frameworks
Limited to Workers runtime languages (JavaScript/TypeScript, Python in beta, Rust); nodejs_compat covers many npm packages but not native dependencies
Technology flexibility lets you use your existing skills and codebase
Integrates with existing monitoring
Works with your existing observability stack
Limited monitoring options, mostly Cloudflare-specific
Integration with existing monitoring reduces operational overhead
Runtime
Actor support
First-class actor model with Rivet Actors library
Durable Objects for stateful workloads
Actor model enables scalable stateful applications with state persistence and realtime communication
KV Persistence
Built-in KV storage for actors
KV supported for Durable Objects
Key-value storage enables persistent state without external dependencies
SQLite Persistence
Built-in SQLite database per actor with raw SQL and Drizzle support. Learn more.
SQLite supported for Durable Objects
SQLite provides relational database capabilities for complex data models
Memory limits
No platform memory cap; memory is bounded by the compute you run actors on
128MB limit for Durable Objects
Higher memory limits allow more complex stateful applications
Automatic connection handling
Optionally provides abstraction over HTTP, WebSockets, and SSE with intelligent failure and reconnection handling
Requires low-level implementation of connection management
Automatic connection handling reduces development time and improves reliability
Event broadcasting
Built-in event broadcasting to specific connections or all actors
Requires hand-rolling fanout over the WebSocket API or adopting a framework like PartyServer
Native event system enables real-time features with minimal setup
Built-in scheduling
Powerful built-in scheduling system
Requires boilerplate on top of Alarms API
Native scheduling reduces complexity and improves reliability for time-based operations
Testing support
Full Vitest support with mocking and fake timers
Limited Vitest support due to custom runtime constraints
Comprehensive testing capabilities ensure code quality and reliability
Customizable actor lifecycle
Flexible draining mechanism with configurable lifecycle management
60s grace period
Customizable lifecycle management allows for graceful state transfers and prevents data loss
Control over actor upgrades
Full control based on your existing rollout mechanisms
Only allows controlling gradual deployment percentages, not specific Durable Object versions
Controlled upgrades ensure smooth transitions without service disruption tailored to your application's architecture
Actor creation with input data
Pass initialization data when creating actors
Cannot pass input data during Durable Object creation
Ability to initialize actors with data simplifies setup and reduces boilerplate
Actor shutdown control
Clean shutdown API for actors
Requires deleteAll with custom logic and error-prone boilerplate
Proper shutdown control ensures graceful cleanup and prevents resource leaks
Monitoring
Built-in monitoring for development and production
Per-namespace Durable Objects metrics and GraphQL analytics in the Cloudflare dashboard
Integrated monitoring simplifies operations and debugging
Logging
Supports your existing logging infrastructure
Durable Object logs are available through Workers Logs, wrangler tail, and Logpush
Built-in logging reduces setup time and operational complexity
Metadata access
Built-in metadata API
Custom implementation required
Direct access to metadata such as tags, region, and more simplifies management and deployment
Developer Tooling
State inspector
Built-in tools to inspect and modify actor state
Data Studio can view and edit SQLite-backed Durable Object storage from the dashboard; in-memory state is not inspectable
Ability to view & edit actor state in real time simplifies debugging and management
RPC debugger
Interactive RPC testing tools for actors
No built-in RPC debugging
Ability to test remote procedure calls to actors accelerates development and troubleshooting
Connection inspector
Real-time monitoring of actor connections
No connection visualization tools
Visibility into active connections helps diagnose client-side issues and monitor usage patterns
Actor listing and management
Browse and manage active actors with full interaction capabilities
Can list Durable Objects but cannot interact with them
Being able to list and interact with live actors enables debugging and operational management
Development Experience
Documentation
Comprehensive, developer-focused documentation
Fragmented and difficult to understand documentation
Clear documentation accelerates learning and implementation
Compatible with Docker Compose
Seamless integration with Docker Compose for local development
No Docker Compose compatibility
Integration with Docker Compose enables use with your existing development workflows and tools

Verdict

While Cloudflare Durable Objects provide stateful serverless computing with vendor lock-in, Rivet Actors offer the same actor model capabilities as an open-source library that works with your existing infrastructure. Choose Rivet Actors when you want the power of actors without changing your deployment process, technology stack, or being locked into a specific platform.

Migrating from Cloudflare Durable Objects?

Our team can help make the transition smooth and seamless. We provide migration assistance, technical guidance, and dedicated support.

Frequently asked questions

Is Rivet an alternative to Cloudflare Durable Objects?
Yes. Rivet Actors provide the same stateful actor model as Durable Objects, including persistent state, WebSockets, and scheduling, as an open-source platform that runs on Rivet Cloud or your own infrastructure. See the Rivet Actors documentation for details.
Can I run Rivet Actors outside of a single cloud provider?
Yes. Rivet Actors run on Rivet Cloud or self-hosted on Kubernetes, AWS, a VPS, or any infrastructure that runs containers. Your application code stays the same in either case, so you are not locked to one provider.
Do Rivet Actors support SQLite storage like Durable Objects?
Yes. Each Rivet Actor can use built-in key-value state or its own embedded SQLite database, with raw SQL or Drizzle ORM. See the SQLite documentation.
Is Rivet open source?
Yes. Rivet is open source under the Apache 2.0 license. The source code is available at github.com/rivet-dev/rivet.
How hard is it to migrate from Cloudflare Durable Objects to Rivet?
Durable Objects and Rivet Actors share the same core concepts, so most migrations map each Durable Object class to a Rivet Actor with state, actions, and scheduling. Our team also provides hands-on migration assistance. Talk to an engineer to plan a migration.
Do Rivet Actors support WebSockets and realtime connections?
Yes. Rivet Actors include built-in connection handling for HTTP, WebSockets, and server-sent events, plus event broadcasting to connected clients with automatic reconnection handling.

The primitive for stateful workloads.

The next generation of software needs a new kind of backend. This is it.