StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Platform as a Service
  4. Realtime Backend API
  5. Apollo vs NATS vs Pusher

Apollo vs NATS vs Pusher

OverviewDecisionsComparisonAlternatives

Overview

Pusher
Pusher
Stacks618
Followers1.4K
Votes234
NATS
NATS
Stacks394
Followers498
Votes60
Apollo
Apollo
Stacks2.7K
Followers1.8K
Votes25

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Pusher, NATS, Apollo

Márton
Márton

CTO at Media4Care

Aug 31, 2020

Decided

We wanted to save as much time as possible when writing our back-end, therefore Apollo was out of the question, we went for an auto-generated API instead. Hasura looked good in the beginning, but we wanted to retain the ability to add a few manual resolvers and modifications to auto-generated ones, which ruled out Hasura. Postgraphile with its Plug-In architecture was the right choice for us, we never regretted it!

37.1k views37.1k
Comments
Raj
Raj

CTO & Founder at Novvum

Oct 5, 2020

Review

Hey Brian, it's hard to pick a best tool for any situation, however, there are tools that offer advantages dependent on use case.

Server Side

If you're looking to quickly generate a GraphQL API, you can use a Graphql As A Service like FaunaDB, Slash Graphql, or 8base.

If you want something more advanced on the server side: Prisma with Postgres, Nexus, & Apollo Server (js) is a great stack to try out. Examples here

Check out TypeORM and TypeGraphQL too

If you're have some existing data on Postgres, PostGraphile or Hasura are your best bet!

If you are using a lot of AWS services, check out Amplify and AppSync. Tutorial here

On the client side:

Check out Gatsby! Graphql is already configured and used to query static or remote information at build time. It's a great way to get your feet wet!

Apollo Client is often the choice for more advanced use cases. But URLQL and gqless are some pretty good alternatives too!

Hope this helps! 👍

301 views301
Comments

Detailed Comparison

Pusher
Pusher
NATS
NATS
Apollo
Apollo

Pusher is the category leader in delightful APIs for app developers building communication and collaboration features.

Unlike traditional enterprise messaging systems, NATS has an always-on dial tone that does whatever it takes to remain available. This forms a great base for building modern, reliable, and scalable cloud and distributed systems.

Build a universal GraphQL API on top of your existing REST APIs, so you can ship new application features fast without waiting on backend changes.

Easily build scalable in-app notifications, chat, realtime graphs, geotracking and more in your web & mobile apps with our hosted pub/sub messaging API.;Send programmable push notifications to iOS and Android devices with delivery and open rate tracking built in.;Easily add 1-1 and group Chat to your web & mobile apps. Presence, message storage, rich media, notifications, typing indicators and more.;Embed a realtime collaborative editor in your app in seconds to empower your users to do more, together.
--
Statistics
Stacks
618
Stacks
394
Stacks
2.7K
Followers
1.4K
Followers
498
Followers
1.8K
Votes
234
Votes
60
Votes
25
Pros & Cons
Pros
  • 55
    An easy way to give customers realtime features
  • 40
    Websockets
  • 34
    Simple
  • 27
    Easy to get started with
  • 25
    Free plan
Cons
  • 11
    Costly
Pros
  • 22
    Fastest pub-sub system out there
  • 16
    Rock solid
  • 12
    Easy to grasp
  • 4
    Easy, Fast, Secure
  • 4
    Light-weight
Cons
  • 2
    Persistence with Jetstream supported
  • 1
    No Order
  • 1
    No Persistence
Pros
  • 12
    From the creators of Meteor
  • 8
    Great documentation
  • 3
    Open source
  • 2
    Real time if use subscription
Cons
  • 1
    Increase in complexity of implementing (subscription)
  • 1
    File upload is not supported
Integrations
Slack
Slack
Datadog
Datadog
Librato
Librato
No integrations available
GraphQL
GraphQL

What are some alternatives to Pusher, NATS, Apollo?

Heroku

Heroku

Heroku is a cloud application platform – a new way of building and deploying web apps. Heroku lets app developers spend 100% of their time on their application code, not managing servers, deployment, ongoing operations, or scaling.

Firebase

Firebase

Firebase is a cloud service designed to power real-time, collaborative applications. Simply add the Firebase library to your application to gain access to a shared data structure; any changes you make to that data are automatically synchronized with the Firebase cloud and with other clients within milliseconds.

Clever Cloud

Clever Cloud

Clever Cloud is a polyglot cloud application platform. The service helps developers to build applications with many languages and services, with auto-scaling features and a true pay-as-you-go pricing model.

Socket.IO

Socket.IO

It enables real-time bidirectional event-based communication. It works on every platform, browser or device, focusing equally on reliability and speed.

Google App Engine

Google App Engine

Google has a reputation for highly reliable, high performance infrastructure. With App Engine you can take advantage of the 10 years of knowledge Google has in running massively scalable, performance driven systems. App Engine applications are easy to build, easy to maintain, and easy to scale as your traffic and data storage needs grow.

Red Hat OpenShift

Red Hat OpenShift

OpenShift is Red Hat's Cloud Computing Platform as a Service (PaaS) offering. OpenShift is an application platform in the cloud where application developers and teams can build, test, deploy, and run their applications.

AWS Elastic Beanstalk

AWS Elastic Beanstalk

Once you upload your application, Elastic Beanstalk automatically handles the deployment details of capacity provisioning, load balancing, auto-scaling, and application health monitoring.

PubNub

PubNub

PubNub makes it easy for you to add real-time capabilities to your apps, without worrying about the infrastructure. Build apps that allow your users to engage in real-time across mobile, browser, desktop and server.

Render

Render

Render is a unified platform to build and run all your apps and websites with free SSL, a global CDN, private networks and auto deploys from Git.

SignalR

SignalR

SignalR allows bi-directional communication between server and client. Servers can now push content to connected clients instantly as it becomes available. SignalR supports Web Sockets, and falls back to other compatible techniques for older browsers. SignalR includes APIs for connection management (for instance, connect and disconnect events), grouping connections, and authorization.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase