Sign in

Liveblocks vs. Ably for collaborative apps

Liveblocks is a realtime collaboration platform that allows you to build multiplayer applications where users and agents can work together. It provides a sync engine that powers shared documents, text editing, presence, and more. Ably is a realtime messaging service with Pub/Sub channels, presence, shared maps and counters (Ably LiveObjects), a chat API, and a transport for streaming AI responses.

Which should you choose?

Ably and Liveblocks solve different problems. Ably is how messages and state move between clients at scale, whereas Liveblocks is how people edit artifacts together.

Choose Liveblocks when several people work on the same document, board, or text at once, and the product needs comments and notifications around that work, such as a design review where teammates annotate a canvas and resolve threads. Choose Ably when the job is delivering messages to many clients, such as a live score feed, a chat room with thousands of viewers, or streaming an AI response to a user's phone and laptop at the same time. Some products use Ably for high-volume messaging and Liveblocks for the documents people edit together.

Compare the building blocks

AreaLiveblocksAbly
Shared stateObjects, maps, lists, text, and files in Storage. Maps and counters in Ably LiveObjects.
PresencePresence for who is online and what they are doing. Channel presence, plus Spaces for cursors, locks, and locations.
Conflict resolutionCRDT-based. Concurrent edits to objects, lists, maps, and text merge automatically. LiveObjects merges concurrent map and counter operations on the server. Pub/Sub delivers messages as-is.
Text editingBuilt in, with Tiptap, BlockNote, Lexical, and more. Not built in. Requires a CRDT library sent over Pub/Sub.
Ready-made UICursors, avatar stacks, comments, and notifications. React UI Kit for Chat.
AuthenticationYour server issues access tokens using your existing auth. Your server issues tokens with channel capabilities.
PersistencePermanent. Stored until you delete it.LiveObjects expires after an inactivity period, 90 days by default.
The main questionWhich parts of your app should people edit together?Which messages, state, and conversations should flow through channels?

Choose the interface and the infrastructure together

For a design-review feature, users annotate an object, mention a teammate, resolve a thread, and come back through a notification. That workflow needs shared canvas data, comments attached to the canvas, and notifications.

With Liveblocks Comments, you can style the default components or combine hooks and primitives for a custom interface, so you decide how much of the commenting UI to build yourself. Ably Chat is built for conversations in rooms and ships a React UI Kit for that. Pick the one that matches the conversation in your app: a discussion attached to a document, a group chat, or both.

How does Liveblocks Storage compare with Ably LiveObjects?

Ably LiveObjects is a much smaller toolkit. It has two types, a key-value LiveMap and a LiveCounter, and everything you store is built from those. Note the name clash: Liveblocks also has a LiveMap, and the two are unrelated. Liveblocks Storage has five: LiveObject, LiveMap, LiveList, LiveText, and LiveFile for uploaded files, and they nest to any depth with every level merging field by field. Both keep shared state in sync across clients; the difference is how much of your document they can represent without you writing merge logic.

CapabilityLiveblocks StorageAbly LiveObjects
Key-value dataLiveObject for fixed shapes and LiveMap for dynamic keys. Both merge per key. Ably LiveMap, merged per key with last write wins.
CounterNone. Store one entry per user in a Liveblocks LiveMap so concurrent votes don't overwrite each other. Ably LiveCounter. Concurrent increments add up.
Ordered listLiveList. Concurrent insert, move, and delete all merge. None. Encode ordering in Ably LiveMap keys yourself.
Rich textLiveText, or a Y.Doc through the editor integrations. None. Add a CRDT library and send its updates over Pub/Sub.
FilesLiveFile. Upload a file and store a reference to it in the document. None. Store files elsewhere and keep the URL in an Ably LiveMap.
Deep nestingAny depth. A list of objects containing maps of text is one document.Only by creating separate Ably LiveMap and LiveCounter objects and referencing them. A plain JSON object stored as a value is replaced whole.
SizePer-room limit set by your plan. Yjs documents are not capped. 6.5 MB for all objects on a channel, 64 KiB per operation.
LifetimePermanent. Stored until you delete it, with version history. Expires after 24 hours to 90 days without changes.
AudienceRooms of collaborators. Simultaneous connections per room are set by your plan.Same fan-out as Pub/Sub channels, built for large audiences.

For a design-review app, that plays out like this. Votes on a proposal are the one case Ably LiveObjects handles more directly: an Ably LiveCounter sums concurrent votes, whereas in Liveblocks you record each person's vote as its own entry. An ordered agenda with editable paragraphs is a LiveList of LiveObjects with LiveText inside; on Ably you would design the ordering scheme and bolt on a text CRDT. A conversation attached to a shape is Comments with the shape ID as metadata; on Ably it is a Chat room per shape or your own message format.

Ably fits applications built around messages, counters, and flat shared state delivered to many clients. Liveblocks fits applications built around structured shared documents and the review workflows around them.

How long is data kept?

In Liveblocks, permanently. Storage and Yjs documents are stored until you delete them, with version history on top, so a proposal nobody opens for two years is still there, unchanged, when someone does.

In Ably LiveObjects, until the data goes unchanged for the retention period: configurable from 24 hours to 90 days, 90 days by default, and longer only by arrangement with Ably. When it expires, the channel resets to an empty object. Ably's own suggestion for a permanent record is to read the objects over its REST API and store them in your database, which makes your database, not Ably, the system of record for anything long-lived. That is workable for a leaderboard or a live poll; it is a second storage layer to build and reconcile for documents people come back to.

Reconnection is similar on both sides. Ably replays missed operations if the client was away for under two minutes and resends the full object state otherwise. Liveblocks clients resync the document on reconnect and send any edits queued while offline in the session.

How do they support AI features?

Both do, for different jobs. Ably AI Transport gives an agent conversation a durable session: streamed responses, reconnection, and access from several devices, optionally with Ably LiveObjects for shared session state. Liveblocks lets server-side code, including agents, edit shared documents alongside users. A resumable agent chat and an agent editing a shared document are different requirements, and an application can need both.

How do the billing units compare?

They don't map one-to-one. Ably's Standard package starts at $29 per month, with usage billed on top at $2.50 per million messages, $1 per million connection minutes, and $1 per million channel minutes. For LiveObjects, every operation counts as messages: a map set is one inbound message, and delivering that update counts as one outbound message per connected client. Initial sync counts one outbound message per object.

As an example, 100 map-set operations delivered to three connected clients produce 100 inbound and 300 outbound messages. That excludes initial sync, connection minutes, and channel minutes.

Liveblocks bills collaboration time, data updates, storage, and selected collaboration features. Those units do not translate into Ably message counts, so estimate both with the same editing session and feature scope. Your plan's credits apply once across all Liveblocks usage.

Ably is a managed service. Liveblocks offers self-hosting as a paid add-on on the Enterprise plan. If you self-host, your own servers, database, backups, and operations are part of the budget.

Get started

Explore the editor example, which brings Sync, Comments, and Notifications into one application.

Start building with Liveblocks for free. Follow the setup guide for your project.