How to choose the right MBaaS: Firebase, CloudKit, or Kinvey?

Modern mobile services require authentication to identify a consumer, a place to store data, push notification services, analytics, and ad management. These services are collectively known as mobile backend as a service (MBaaS).

There are three clear leaders in this space. The goal of this article is to cover the following leaders: Google Firebase, Apple CloudKit and Kinvey. Amazon Web Services (AWS) is being included among these as an honorable mention among MBaaS solutions.

Here's a guide to understanding MBaaS, how it could improvesyour mobile solution, what the associated costs are, as well as the leaders in this space, so that you can decide which might be best for your organization.

Gartner Magic Quadrant for Software Test Automation

How does MBaaS apply to the enterprise?

Five years ago, advanced services for mobile development had to be cobbled together with a collection of homegrown solutions, expensive third-party technologies, and a wish and a prayer. An apparent gap appeared: How can mobile developers quickly build solutions that can take advantage of the latest features in a mobile device as well as manage complex service commands? MBaaS was born.

The early leader was Parse. Parse provides cost-effective and easy-to-use tools for MBaaS, mostly setting the groundwork for all MBaaS companies. Facebook acquired Parse in 2013 and recently announced that the service will be shut down in January 2017. The good news is that the services that run Parse are now open source. The momentum of Parse opened up the path for other services to compete.

For the enterprise, MBaaS provides a selection of solutions that enable rapid development of sophisticated mobile solutions. There is no need for a company to host its own push notification server, scale cloud databases, or track app analytics.

Google Firebase

In October 2014, Google acquired Firebase  and effectively leap-frogged into the MBaaS market. Google launched Firebase as part of its 2016 UI with a slew of new features and services. The core of the features are broken into three broad categories: Develop, Grow and Earn.

Google is aiming to provide a comprehensive set of tools that meets the needs of the modern mobile and web developer (Yes, the bonus for developers is that many of the Firebase tools work for modern web browsers, too). The big message to developers is that getting started with the Firebase service is free.

The first category, Develop, offers a stunning list of tools that include the following:

  • Realtime database: A database in the cloud that can be up and running in minutes
  • Authentication: Authenticate users with OAuth Services, Facebook, Google, Git and Twitter, email/password, or even your own custom service
  • Cloud Messaging: Set up notification services that push out messages to Android, iOS, and web browsers
  • Storage: Petabyte-scale and storage of files
  • Hosting: Production-grade hosting and CDN
  • Remote Config: Update your app without publishing a new app
  • Test Lab: Test an app
  • Crash Reporting: Learn from app crashing

The second category, Grow, provides the following services:

  • Analytics: The center of Firebase is Analytics, built on Google Analytics but with a mobile focus
  • Notifications: User analytics for tailored notification campaigns
  • App Indexing
  • Dynamic Links

The final category, Earn, is a link to AdMob, a mobile advertising service acquired by Google in 2009.

The services are free to start. If the demand for services grows, you can grow how much you invest (see pricing here). The only services that have variable rates are Realtime Database, Storage, and Hosting. The good news is that you should be pushing a lot of data back and forth before you start paying anything.

Apple CloudKit

Apple released CloudKit services in 2015 as part of its iOS 8 updates. On the whole, this is the weakest service in this group, but, as with Firebase, Apple’s CloudKit is free and is relatively easy to integrate into iOS apps.

CloudKit service provides support for the following:

  • Analytics
  • Authentication
  • Private and Public Database
  • Asset Storage Services

As with Firebase, the database and asset services are free to start with, but there is a threshold where you will start to be charged. You can keep track of costs using the CloudKit Dashboard.

Kinvey

In many ways, Kinvey has the broadest selection of MBaaS services. Code on the site enables rapid development for iOS, Android, HTML5, and Xamarin. Core services include:

  • Database
  • Push Notifications
  • Authentication
  • Location Services

There are many additional code snippet libraries that can be brought into play. Check out the list for Android.

Kinvey is free for an individual developer, and pricing increases on a monthly subscription for larger teams.

Honorable Mention: AWS

Amazon Web Services for mobile also deserves mention, but for now, it is an honorable mention. The service does have a lot of offer, but what stops me from fully endorsing AWS is that, unlike the other services listed above, AWS MBaaS is complicated and cumbersome to use, and the goal of using MBaaS is to make it easier to implement a solution, not harder.

Nevertheless, AWS offers the following services:

  • User Sign-In
  • Data Storage
  • Analytics
  • Push Notifications
  • App Testing
  • AWS Device Farm
  • Cloud Logic

A notable service, AWS Device Farm, provides easy access to a cloud of hosted iOS and Android devices. Be warned, however, that the service is charged by the minute. The first 250 minutes are free and then there is a charge after that, which means the service can get expensive very quickly.

Which MBaaS should you use?

You should thoroughly evaluate all of the services listed above to see that they meet your needs. But my team is increasingly impressed with Google’s Firebase.

What is most impressive with Firebase is that the service is designed from the ground up to be cross platform (unlike Apple’s CloudKit which is mainly iOS-centric). The free analytics and push services are a bonus with Firebase.

For larger databases, however, you may want to mix up your environment with Amazon Web Services. AWS does cloud very well.

Gartner Magic Quadrant for Software Test Automation
Topics: Dev & Test