|Ably||Why does it matter?|
|Uptime guarantee|| 99.999%|
For all customers.
Only for enterprise customers at an additional cost.
|An uptime guarantee offers peace of mind for you and confidence in the service we provide.|
|Low Latency|| WAN < 20 ms|
50% of PubNub’s messages have below 20ms delivery speed. Our intranet latency is below 1ms, while our WAN latency is sub 30ms.
| WAN median ≈ 46 ms|
Ably’s WAN median global latency is 46 ms.
|Low latency provides a true real-time experience for users, which is crucial for increased engagement and adoption.|
|Data availability and replication|| Yes|
PubNub starts at 45 replicas with custom options for more and replication distributed globally over 15 data centers.
However, Ably only offers 4 replicas across 2 regions and 4 AZs.
|Having more data availability and replication ensures that data can always be accessed quickly by users around the globe.|
|Selective replication|| Yes|
PubNub offers custom configuration options for data sovereignty and where data is replicated.
| Not listed||Selective replication allows for customization to make sure your data is available where it needs to be.|
|Wildcard subscribes|| Yes|
PubNub offers a subscription wildcard hierarchy to subscribe to an unlimited number of channels based on a channel dot pattern.
| No||Wildcard Subscribe simplifies code and speeds time to launch by offering the ability to subscribe to many channels with a single name declaration.|
PubNub offers high-volume channel subscriptions, with up to 20,000 channels for each connected user.
| Yes||Multiplexing allows the transmission of a large number of messages to a large number of channels over the same connection. This is important to reduce complexity and optimize client resource consumption/usage.|
|Channel groups|| Yes|
PubNub offers a server-side channel subscription control.
| No||This allows end-users to subscribe to a channel group that controls channel subscriptions for each end-user by a Server-side API.|
|Compression for messages|| Yes|
PubNub offers GZIP compression for both inbound and outbound messages.
| Yes||Compressed messages require significantly less storage capacity and in turn may provide lower latency.|
|CHAT CAPABILITIES - MESSAGING|
|1:1 direct messaging|| Yes|| Yes||Connect users directly. One-on-one.|
|Group messaging|| Yes|
Pubnub also has no limit on the number of users.
Though large scale events are constrained by maximum number of users in a channel.
|Connect groups. No limit on the number of users means no worries when hosting large events.|
|Presence indicators|| Yes|
PubNub Presence lets you track the real-time status of millions of users on a single channel.
However, Ably’s presence is limited to the hundreds per channel.
|Allows users to see when others are there, allowing for more seamless engagement.|
|Push notifications|| Yes|| Yes||This feature ensures the messages users get are seen and received.|
|Access controls|| Yes|
PubNub's Access Manager includes a spoof prevention feature.
| Yes||Access Manager provides built-in enterprise-grade security with fine-grained access control to all applications.|
|User & channel metadata|| Yes|
Our Objects feature provides easy-to-use, serverless storage for the user and channel metadata.
| Yes||PubNub Objects provides serverless storage for the user and channel metadata without starting an external infrastructure.|
|Programmable Functions|| Yes|
PubNub can be used to transform messages in transit to provide real-time language translation or profanity filtering.
Ably supports “Reactor Events” that can trigger business logic on 3rd party systems like Amazon lambda only AFTER a message has been published and sent to all subscribers.
|Programmable functions enable you to write code or leverage existing integrations to address your business needs, whether it's transforming, re-routing, augmenting, filtering, and even aggregating data for subsequent use. PubNub Functions are also serverless.|
|Webhooks|| Yes|| Yes||Webhooks allow for the publishing of messages on the client-server over HTTP to trigger events.|
|Chat UI Components|| Yes|| No||Our chat UI components help you easily build the in-app features you want and get to market faster.|
|Dynamic user state|| Yes|
Users can set flexible, dynamic user states. State changes generate state-change events.
| No||Dynamic user state allows for real-time updates and support needs such as leaderboards etc.|
|Typing indicators|| Yes|
You can use Signals API to send typing on/off events.
You can enable typing indicators using Ably’s standard APIs but each typing indicator signal costs the same as a message, which is very costly.
|This is crucial to providing an engaging chat experience and is built-in to your Chat UI components; implemented in the most cost-effective way.|
|Delivery and read receipts|| Yes|| Yes||This function gives end users the assurance that their messages are being delivered and read.|
|Unread message counts|| Yes|
Users can add logic to store the last timestamp of messages read locally, or using objects in each channel.
| Not listed ||This allows end-users to easily navigate their messages and catch up with their conversations since their last interaction.|
|Pre-delivery message filtering|| Yes|
Clients can select messages to filter out on the server. Customers only pay for delivered messages.
However customers are charged for each filtered message.
|Stream filtering reads input, filters, and passes it on. This can help to reduce overall transaction costs.|
|Message updates and deletes|| Yes|| Yes||Users can update messages (or delete them) by passing another version of the message, using the message actions feature. Users can 'hard' delete although 'soft' delete is recommended.|
|File and image sharing|| Yes|| No||File sharing adds new functionality to your chat application, allowing users to share files like images, records, documents, etc.|
|Message reactions|| Yes|
PubNub offers message reactions through our first-class native API.
With Ably, you have to design it yourself using the standard APIs.
|Allows users to share custom reactions to other posts, allowing for a more dynamic experience for the end-user.|
|Real-time Translation|| Yes|
via PubNub functions.
Reactor events are only offered after a message has been published.
|Real-time translations help to break down language barriers and create a more global conversation.|
Supported via a pre-built function that integrated with Giphy APIs.
| Yes||With PubNub’s Giphy integration, you can integrate the world’s largest GIF library, customize a suite of powerful features, and boost engagement with just a few lines of code.|
|CHAT CAPABILITIES - MODERATION|
|Profanity filters|| Yes|
The profanity filter function allows you to customize dictionaries and control message behavior on profanity detection.
Ably has integration with Neutrino, or you can custom build your own.
|By implementing a filter for your chat, you are taking precautionary actions against offensive words and behaviors before they reach your audience.|
|Image moderation|| Yes|
We have integrations with third-party vendors such as SightEngine and you can use any vendor of your choice.
| Not listed||SightEngine’s image moderation allows developers to moderate and filter user-generated photos for adult content, validation, and phototype - Ideal for chat apps, forums, social media aggregators, and more.|
|Moderation Dashboards|| Yes|
via our open source Moderation Dashboard.
| Not listed||Moderation dashboard allows for moderation in realtime, to keep your chats clean and safe for all ages.|
|Mute/Block users|| Yes|
The access manager feature allows you to manage permissions to mute or ban users on individual channels.
| Not listed||This enables you to manage access controls for individual users, so they can be muted or blocked on specific channels.|
|Ban users|| Yes|
|Flagging users|| Yes|
This is easily done through our open-source Moderation Dashboard.
| Yes||A mechanism where users can report offensive content directly from their real-time applications. Moderators can then fetch these flagged messages from storage and delete or take appropriate action against the user who sent the messages.|
|SUPPORT & MONITORING|
|Message history (persisted data)|| Yes|
Allow persisting messages forever.
Allow persisting messages up to 72 hours.
|Data persistence is important because of its non-volatility, reliability, stability, and time-independent features.|
|Operational dashboards|| Yes|| Not listed||Ability to monitor your app in realtime for any potential issues.|
|Support Team|| 24/7 support team |
Physically located in four time zones and backed by 10 years of experience.
| UK business hours|
24/7 support for Enterprise customers only.
|Support, whenever you need it. No time constraints means timely help and more seamless development.|
|Access to experienced Architects during launch|| Yes|
Our experienced Architects team will work with you during launch, from designing the architecture through testing and launch.
| Not listed||A team dedicated to you from inception through launch.|