- Examples
- /
- Add an Avatar Stack for live collaborative experiences
Add an Avatar Stack for live collaborative experiences
Copy link to clipboardWhat is an Avatar Stack?
An Avatar Stack visually represents users who are connected in a digital space. It is an important feature for a variety of multiuser applications from chat to collaborative spaces.
Avatar Stacks can also include information about user connection state such as online, offline and last seen information which helps to understand recent activity.

Click below to play with Ably's Avatar Stack implementation and to browse through the code that powers it. You can test the demo in realtime, on multiple browser windows/devices, or with a friend.
Copy link to clipboardTest Ably’s Avatar Stack implementation in realtime!
Click below to try Ably's Avatar Stack implementation and to browse through the code that powers it.
Test the demo. Open on multiple browser windows/devices, or share with a friend. See new Avatars instantly appear and become greyed out as soon as a tab is closed.
Copy link to clipboardWhere can I use Avatar Stacks?
Avatar Stacks can add value to a range of live experiences online. Some example use cases are:
Showing members of a chat room
Collaborating with others in a virtual space (e.g. document, deck, sheet)
Showing recipients in a 1-1 chat
Visualising the audience in a virtual event
Copy link to clipboardAdvanced Avatar Stack functionality
You can incorporate more functionality within your Avatar Stack such as:
Displaying user profile information including username, name, status, description
Avatar customisation with the ability for users to include a profile picture, initials etc.

Copy link to clipboardHow to add an Avatar Stack to your product
With Ably, it is easy to add an Avatar Stack to your product.
Copy link to clipboardStep 1: Sign up to Ably
Visit our sign up page to start using Ably for free. Simply upgrade when you need to ramp up usage past 6M Monthly messages, 200 Peak concurrent channels, 200 Peak concurrent connections. Once you are signed up, download one of our SDKs to get started.
Copy link to clipboardStep 2: Start using Ably Channels, Presence, and History
Ably Channels
Channel is the unit of distribution of messages. Messages can be anything and a channel can represent a chat room, direct messaging, a virtual event etc. Users or their devices can connect to a specific channel. The Avatar Stack is not related to messages in a channel, but the digital place where an Avatar Stack can be used is the channel itself.
channels.get
- to get an existing or create a new channelchannel.presence
- to get the presence object
Ably Presence
Presence allows you to automatically track who is present in a channel. This feature is used to update the Avatar Stack when users or their devices connect or disconnect from a channel. This provides visibility of user activity in realtime.
Some key methods to help you get started are:
presence.get
- to retrieve the current list of userspresence.enter(data)
- to add a user with a specific namepresence.leave
- to remove a userpresence.subscribe
- to watch for users being added or removed
Ably History
History provides access to historical messages, including presence events for up to 2 minutes. This can be used to see who has disconnected from the channel. This enables the Avatar Stack to see who is offline and to show when the user was last seen.
presence.history
- to get a paginated history of presence events
Copy link to clipboardNext steps
You'll need to do the following to get started with adding an Avatar Stack to your application.
Implement a UI for the Avatar Stack
Implement behaviour for the Avatar Stack
Manage storage for user information in a datastore or similar
Copy link to clipboardDon’t forget to try out Ably’s Avatar Stack implementation!
Get hands-on with our Avatar Stack offering by testing the demo in realtime - on multiple browsers, or with a friend. You can also browse through the code that powers it.
Copy link to clipboardDiscover more collaborative features
Discover the other features you could use to deliver a world-class collaborative experience, including:
Recommended Articles

Emoji Reactions
Ably provides simple APIs to help you build and add emoji reactions to your chat application, allowing users to react to messages in realtime.

Live Charts
Ably provides simple APIs to help you build live charts, that support insight and analysis.

Activity Feed
Ably provides simple APIs to help you build an Activity feed, which displays a list of user actions in realtime.