Compare all

Realtime.co VS Push Technology

A comparison of realtime providers

Easily build complete, trusted realtime functionality.

Take our APIs for a spin

Disclaimer: All information is as accurate as possible as of publishing, January 2019. It’s worth noting that the information presented in this article has been gathered based on documentation and resources freely available online from Realtime.co and Push Technology. Be sure to double-check anything before you make any decisions. If you do find anything incorrect or out of date then please let us know.

That said, the aim is to help you make a more informed decision when it comes to choosing a realtime data streaming or messaging platform. We’ll cover a set of questions we think are essential to ask of any realtime data streaming platform.

Realtime.co and Push Technology are realtime messaging platforms offering high-throughput and realtime data delivery between online networks of users and services. Like all platforms there are pros and cons of each.

Contents

To help you answer the questions above in relation to Realtime.co and Push Technology we’ve done our best to perform an unbiased, high-level comparative analysis of both platforms.

Is it globally fast, reliable, and redundant?

Before considering anything else you need to trust your realtime provider can deliver a stable and reliable service that’s easy to implement.

Information provided is from publicly available sources and is intended as a starting point for further investigation. See full disclaimer.

Reliability Realtime.co Push Technology
Latency of response times No data available. Varies between 100ms-250ms+. Check status site for current latencies.
Uptime SLA 100% SLA uptime guarantee for enterprise customers. Unclear. SLAs offered but no mention of uptime guarantees.
How many globally distributed datacenters? 3-6 datacenters across Europe, US East, US West According to the status site Push Technology has at least 3 datacenters across Europe, US, Australia.
Mesh architecture with no central point of failure Unknown. Unknown.
Data replicated in multiple regions No support. Supported on specific plans
Quality of Service and message delivery guarantee (never lose data during brief disconnections) Limited support. No support.

The comparisons presented here are: (i) derived from public information and open sources available as of January 2019, and thus may be outdated; (ii) intended as a starting point for further investigation; and (iii) not guaranteed to be 100% accurate or complete. The reader is encouraged to conduct an independent evaluation and to not rely solely on the information presented here. Please contact us if you believe the information here is inaccurate or incomplete.

What’s the level of platform interoperability?

The modern internet is a web of different languages, platforms, open and proprietary protocols, and services built on top of other services. This isn’t likely to change anytime soon so a platform that supports widespread interoperability is essential in the long-term. There are three questions to help assess how interoperable a platform is:

  • How extensively does the platform support different languages, frameworks, and protocols?
  • How easy is it to migrate to or move away from the platform?
  • Are there protocols for streaming data into third party platforms?

Information provided is from publicly available sources and is intended as a starting point for further investigation. See full disclaimer.

Interoperability Realtime.co Push Technology
Support for native client libraries/SDKs Quite extensive support with ~25 SDKs across both Realtime.co’s realtime messaging and storage products. Limited with only six SDKs covering the most popular platforms/languages (JavaScript, Apple, Android, .Net, C, Java).
Support for open source and proprietary protocols (e.g. MQTT, AMQP, STOMP) No support. No support.
Migration and lock-in Does not support proprietary realtime vendor protocols, making it harder to migrate in and away. Does not support proprietary realtime vendor protocols, making it harder to migrate in and away.
Coverage of various languages, frameworks, protocols and transports, including MQTT No support. Supports Kafka. See GitHub.

The comparisons presented here are: (i) derived from public information and open sources available as of January 2019, and thus may be outdated; (ii) intended as a starting point for further investigation; and (iii) not guaranteed to be 100% accurate or complete. The reader is encouraged to conduct an independent evaluation and to not rely solely on the information presented here. Please contact us if you believe the information here is inaccurate or incomplete.

How easy is it to get started and scale up?

We all want to work with platforms and technologies that are easy to understand, implement, and then scale. When it comes to realtime platforms you can get a good feel for this by looking at:

  • The user-friendliness of the API
  • The documentation

Is the API easy to use?

Looking at the official Node.js Client, this section compares ease of publishing.

Is the API easy to use: Getting set up with Realtime.co
var ortcNodeclient = require('ibtrealtimesjnode').IbtRealTimeSJNode;

// Create Messaging client
var ortcClient = new ortcNodeclient();

// Set Messaging client properties
ortcClient.setConnectionMetadata('clientConnMeta');
ortcClient.setClusterUrl('http://ortc-developers.realtime.co/server/2.1/');

ortcClient.onConnected = function (ortc) {
    // Messaging client is connected

    ortcClient.subscribe('myChannel', true,
        function (ortc, channel, message) {
            // Received message: 'message' - at channel: 'channel'
    });
};

ortcClient.onSubscribed = function (ortc, channel) {
    // Subscribed to the channel 'channel';
    // Sending HelloWorld message
    ortcClient.send(channel, 'Hello World');
};

ortcClient.connect('[YOUR_APPLICATION_KEY]', 'myAuthenticationToken');
Is the API easy to use: Getting set up with Push Technology
var diffusion = require('diffusion');

diffusion.connect({
    host : 'hostname',
    principal : 'control',
    credentials : 'password'
}).then(function(session) {
    console.log('Connected!');
    // add a topic
    session.topics.add('json', diffusion.topics.TopicType.JSON);
    // Update topic with JSON data
    session.topics.update('json', '{"foo": bar}');
    //subscribe to the topic
    session.subscribe('json').asType(datatype).on({
        value : function(topic, specification, newValue, oldValue) {
            console.log(JSON.parse(newValue.get()));
        },
    });
});
Which API is best?

Both Realtime.co and Push Technology APIs are easy to use. They’re simple and self-explanatory, getting you up and running in a relatively short time.

Is the documentation any good?

Documentation is the bedrock of understanding and using software, especially for such complicated and essential functionality as realtime messaging. Nowadays this is a really low bar but far too many services still have minimal, incomplete, or no documentation at all. Clear and succinct documentation is usually a good indication that the service is well-designed and you’ll be able to find the information you need. And if they’re using the OpenAPI Specification then that’s a good sign too.

So how do Realtime.co and Push Technology stack up? Both do quite well with fairly extensive documentation across quickstart guides, SDKs, and docs explaining some of the core features of their respective platforms such as ‘presence’ and ‘topics’. That said, Push Technology has the edge with clearer, more current, and a wider variety of documentation.

NOTE: at the time of writing (the end of January 2019) it looks as if the Realtime.co documentation is quite out of date, with the most recent update on January 2nd 2018. This is a red flag because it suggests the product is no longer in active development or being maintained. In contrast, Push Technology’s last update was January 10th 2019. That’s over a year’s difference.

Connectivity and transport

How your data/messages are transported changes the speed of delivery and fundamentally impacts your product or service. A realtime platform provider should always choose the best transport available based on the browser and connection available. The client library should prioritize transports in this order:

Both Realtime.co and Push Technology support the full range of transports.

How mature is the feature set?

It takes non-trivial engineering effort to adopt a realtime data streaming platform and integrate into your application or service. It’s natural you’ll want to make sure the platform you choose has a mature and full feature set that provides the basic the functionality you’d expect from a realtime platform, provides the features you need right now, and has the functionality to support you as you grow and your needs change.

Below is a feature matrix with a set of standard features you’d expect to see on offer from an established realtime data streaming platform. Realtime.co and Push Technology are compared side by side against these features.

Information provided is from publicly available sources and is intended as a starting point for further investigation. See full disclaimer.

Features Realtime.co Push Technology Why does it matter?
Realtime data streaming Yes. Yes.
Message and worker queues No. No. Message queues that provide a reliable and straightforward mechanism to consume, process, store, augment or reroute data efficiently from a realtime platform.
Webhooks Yes. No. Webhooks provide a means to get messages, channel lifecycle and present events pushed to your servers over HTTP.
Serverless cloud function invocation Partial. Recommends using a generic Webhook to deliver to an API Gateway that then triggers a function. No. Trigger serverless functions on third platforms like Amazon Lambda, Microsoft Azure or Google Function.
Presence Yes. No. Subscribe to events when users or devices enter or leave channels/topics.
Message history Partial. Up to 128 messages can be retained for up to 60 seconds. Although this is disabled by default. Partial. A fixed number of messages can be retained for a small amount of time. A NoSQL cloud database with built-in real-time notifications keeps data synchronized between users. Dictates whether clients can access historical activity, catching up on missed messages.
Realtime data firehose No. No. Stream your realtime data published within a realtime platform directly to another streaming or queueing service such as Amazon Kinesis, Apache Storm or Kafka.
Native push notifications Yes. Yes. Send notifications and updates to users even when they are offline.
Announcement channels Yes. Yes. Stay updated on what’s happening on the client’s end, connection, disconnection etc.
Reliable message ordering No. No. Ensures messages are delivered to persistently connected subscribers in the order they were published on each channel/topic.
Conflation No. Yes. Ability to reduce the amount of information sent to clients by combining or discarding updates.

The comparisons presented here are: (i) derived from public information and open sources available as of January 2019, and thus may be outdated; (ii) intended as a starting point for further investigation; and (iii) not guaranteed to be 100% accurate or complete. The reader is encouraged to conduct an independent evaluation and to not rely solely on the information presented here. Please contact us if you believe the information here is inaccurate or incomplete.

As the matrix shows, both platforms offer a good level of realtime messaging functionality. But they also offer some additional help for developers when it comes to doing the technical heavy lifting. However, both could offer more on that front as features like serverless functions, reliable message ordering, and message queues are missing. With serverless compute, functions, and event-driven architecture becoming more integrated into our software design these omissions should weigh heavily in your decision.

While on the surface it may look as if Push Technology has fewer features than Realtime.co, they both offer similar functionality. And one could argue that those features Realtime.co does offer that Push Technology doesn’t aren’t in the best of shape.

That said, each clearly has different offerings with their own strengths and weaknesses. So, as stated before, using this feature matrix as a guide, check the platform functionality in relation to your own specific requirements.

Does the platform offer realtime API Management tools?

The demand for realtime apps and experiences is exploding, which is probably why you’re reading this vendor comparison. Current realtime data streaming providers can give you the much-needed core transfer infrastructure for realtime data – but they put the responsibility for managing realtime APIs back onto you, which can get messy and why we all use REST API management tools nowadays.

A couple of extra considerations when you’re choosing a realtime data streaming platform:

  • In addition to the realtime streaming infrastructure, does the platform provide the operational tools you need to stream, manage, and exchange data in realtime? For example, analytics, developer portals, and rate limiting tools.
  • Is end-to-end data delivery supported – from source to subscriber? This might be sending data straight from an IoT sensor to a smartphone, without needing to pass through your own servers first.

A globally distributed data stream network providing an all-encompassing platform with everything you need to build the realtime experiences is the future. Just something to think about.

How secure is the platform and the way it does things?

Security and encryption are front of mind and any realtime platform will have robust security built into their design and delivery. A good general checklist for security is:

Realtime.co

Realtime.co provides security through an authentication process. To authenticate a user you send a token to the server which grants the authenticated user read/write permissions to a specific channel. The limit is 100 authenticated channels per user token. Realtime.co also supports using TLS for stronger security. To use this type of connection you simply replace the path /server/2.1 with /server/ssl/2.1 in your Realtime Messaging Cluster URL, as shown below:

https://ortc-developers.realtime.co/server/ssl/2.1

Push Technology

Push Technology is secured using a role-based model where permissions control actions performed on the server by client sessions. They offer a Unified API AuthenticationControl feature which allows a control client session to authenticate other client sessions. This is done by sending a principal and a password to the server, which is either granted or denied.

All Push Technology transport protocols support TLS. To ensure passwords and session tokens are not transferred in the clear, TLS is recommended to protect all communication with the server.

How responsive and helpful is support?

Even if a platform or product is well-designed and the docs are strong, the nature of software and complex infrastructure means you’ll inevitably need to talk to a human at some point. Whether it’s about pricing, implementation, or a bug – support is a fact of building stuff on the internet. So it’s essential you can rely on responsive, helpful support.

Good indicators are short response times across live chat and email, access to people who understand the nitty gritty technical details of the platform, and an up-to-date support portal for docs. An active community with forums or a group chat can also be a good sign.

Realtime.co’s support

In all honesty, Realtime.co is pretty light on the level of support it offers:

  • None of the pricing tiers mention anything about support
  • There’s no live chat
  • Email support didn’t respond
  • There’s no obvious community support

And, as of late January 2019, the support page/documentation returns a 404 error from Intercom. It’s not clear whether this is a temporary issue or not. But combined with out of date documentation, it doesn’t bode well if you’re trusting the integrity of your realtime service to Realtime.co.


Intercom throws a 404 for Realtime.co

Push Technology’s support

Push Technology has everything you’d expect:

However, if you need more extensive support you’ll need to buy a support package. This comes in two flavors.


Push Technology's two support packages

We can’t comment on the access to engineers for deeply technical support. It’s also worth noting it looks like there’s only a single person manning the live chat.

When it comes to support, Push Technology is the clear winner.

How clear, flexible, and scalable is the pricing structure?

Pricing for realtime platforms should be flexible and scalable. Rigid pricing tiers with fixed quotas on messages and concurrent connections often result in huge price jumps when you hit arbitary limits. It can even impact on your service availablity if the realtime provider locks you out once you hit your limits. This can be a huge pain when you’re trying to grow your business or have a service with unpredictable spikes. And it often works against you when you want to scale up capacity because the price changes are so dramatic. Not good.

When it comes to testing the service out, a generous free tier is helpful as it enables you to do some real stuff with your service and properly evaluate whether the provider can deliver what you need.

Both Realtime.co and Push Technology offer free and paid versions.

Realtime.co

Realtime.co offers self-service pricing options for up to 25,000 simultaneous connections and 251 million messages inclusive. More than that and you’ll need to get in touch with them and get yourself a tailored package (good luck).


Realtime.co pricing options

Push Technology

Push Technology takes a different approach: a limited self-hosted version and a cloud version.


Push Technology pricing options

Both platforms charge roughly ~$1 per million messages sent outside of your agreed limits.

To better understand the pricing models and what you get let’s look at some examples.

Example one

A chat application with 100,000 users/month, each averaging two ten-minute chat sessions with 20 messages averaging 1KB in payload in each direction between customer and operator. The application has around 3,000 concurrent users at any one time.

For Realtime.co, the app would result in the following:

  • 20 messages * 2 sessions * 100,000 messages = 4,000,000 messages
  • Total cost = $30

This would be covered under the $30/month plan as it can take 3,000 concurrent users and 31 million messages a month.

For Push Technology, the app would result in the following:

  • 20 messages * 2 sessions * 100,000 messages = 4,000,000 messages * 1kb data = 4GiB
  • cost of data = 4GiB * $1 = $4
  • Total cost = $75 + $4 = $79

3,000 concurrent users would be covered on the $75/month plan but data for messages would be charged extra.

Example two

This one’s an app where you can hail cabs with your smartphone. When you request a ride the backend checks which drivers are online by using the `here_now()` call. Online drivers are alerted and accept a trip. Once matched, the driver’s location is published twice per minute to the user. An average ride lasts 15 minutes. There’s an average 100 concurrent connections and 30 rides a day.

For Realtime.co, this would result in the following:

  • 100 concurrent connections
  • 30 messages publishing and receiving latitude/longitude from driver to rider = 31 messages * 30 rides = 910 messages per day * 30 = 27,300 messages per month
  • Total cost = $30

For Push Technology, this would result in the following:

  • 100 concurrent connections
  • 30 messages publishing and receiving latitude/longitude from driver to rider = 31 messages * 30 rides = 910 messages per day * 30 = 27,300 messages per month at average of 1KiB / message = 0.0273 GiB
  • Total cost = $35 + $0.013718593 = $35.013718593.

Note that for Push Technology this would actually be covered under the free plan.

Who’s behind the platforms?

It’s good to know who’s behind a company when you’re relying on them for such an essential service. Do they have a proven track record? Will they be around next year? These are all valid concerns. We’ve tried to answer these questions with information from each platform’s website.

How long have they been around?

Push Technology was founded in 2006 while Realtime.co was established in 2014.

Team size

According to Crunchbase, Realtime.co has 51-100 employees and Push Technology has 11-50 employees. It’s worth noting that Realtime.co is actually a product named Realtime Framework produced by Realtime.co app creators.

Track record

Both Realtime.co and Push Technology both have a range of brands using their platforms, including:

Products Realtime.co Push
League Of War: Mercenaries Brenock Technology (Ocean Guardian)
Buddytruk PIA First
The Fluid App Tradition
Mastercook Sportingbet
Brandlive Consorsbank

Which platform is best?

Unfortunately this just isn’t a question we can answer outright. Both of these realtime data streaming platforms have their pros and cons when it comes to functionality. However, on the strength of docs, level of support, and outward strength of the core product Push Technology is likely to be the better choice of the two.

And, as we’ve mentioned twice before, as of January 2019 it’s unclear whether Realtime.co is still actively building or even maintaining their product. So please do your own research before choosing any provider.

Ultimately the choice is yours but hopefully this article helped you gain a better understanding of what you should look for in a realtime data streaming platform – and whether Realtime.co or Pusher Technology can provide what you’re looking for.


Compare these companies with other realtime providers