At its I/O 2016 developer conference today, Google announced an expansion of Firebase, its service for helping developers build apps for Android, iOS, and the Web. At the same time, the company also simplified Firebase’s pricing in an effort to woo more developers.
Google acquired Firebase in October 2014. Since then, the backend-as-a-service has grown from 110,000 developers to over 470,000. Now the company has decided it’s time to turn Firebase into a true Google service.
Jason Titus, head of Google’s developer product group, told VentureBeat his team has been working with a wide range of developers to gather feedback on “other major pain points” for app development. If Firebase were to be expanded to other areas, Google would need to go beyond the backend, focusing on analytics, growth, and crashes.
Before we dive into the new features, you should know Firebase’s website and documentation has moved to firebase.google.com and that there is now a “completely redesigned” console integrated with Google’s other offerings. In fact, Firebase now uses the same underlying account system as Google Cloud Platform, so developers can use Cloud products with their Firebase app. A new C++ SDK beta is also available.
On top of Firebase’s existing features, Realtime Database, User Authentication, and Hosting, Google is adding tools to help developers build faster, improve app quality, acquire and engage users, and monetize apps. Let’s start with the new functionality that is supposed to tie all this together.
Google Analytics is great, but it’s designed for websites. Firebase Analytics is also free and unlimited, but it’s specifically designed for mobile apps. Firebase Analytics differs from Google Analytics in two major ways: It’s user centric, and it’s integrated with Firebase.
As opposed to focusing on pageviews, screenviews, and sessions, Firebase Analytics tells developers what users are doing in their app and how paid advertising campaigns are performing with cross-network attribution. A feature called Audiences lets you define groups of users with common attributes and then access them from other Firebase features. Oh, and you can also export raw analytics data to BigQuery for advanced querying, such as determining long-term purchasing trends.
Developers can really learn about user acquisition and retention. Titus gave an example: You can narrow down to all users that got to level 5 of your game, figure out where they came from, and even send them a notification to say you have a new game coming out, for example. Or, for all those that got stuck on level 5, you can turn down the difficulty.
Remote Config and Crash Reporting
Remote Config lets you tune and customize your app on the fly. You can use variables to enable or disable features, change the look and feel, target configurations to specific Audiences, and so on without having to publish a new version of your app.
Crash Reporting gives developers actionable reports to help diagnose and fix problems in Android and iOS apps that have already shipped. Crash Reporting also works with Audiences so you can tell if users on a particular device, in a specific location, or in any other custom segment are experiencing a specific problem.
After an app has launched, Firebase offers the following growth features:
- Firebase Notifications can target a segment of users using Audiences. The Notifications console lets developers re-engage users, increase app growth, and run marketing campaigns without writing code.
- Firebase Dynamic Links make URLs more powerful by letting them persist across the app install process so users are taken to the right place when they first open the app and allow for dynamically changing the destination based on run-time conditions (such as the type of browser or device).
- Firebase Invites lets users share referral codes or their favorite content via text message or email.
- Firebase App Indexing, formerly Google App Indexing, brings new and existing users to your app from Google Search. New users are presented with a link to install the app while existing users can launch it directly from the search results.
- AdWords and AdMob are now integrated with Firebase. Developers can track AdWords app installs in the Firebase Analytics dashboard, use Audiences in AdWords to re-engage specific groups of users, and define in-app events as conversions in AdWords. Integrating the Firebase SDK into your app means being able to use AdMob ad formats, including native ads.
Dynamic Links is by far the most interesting. In short, you can change the behavior of links based on where they’re cast. Right now if you receive a link to an interesting recipe that suggests installing an app, chances are when you’re done installing you won’t be redirected back to the recipe. Dynamic Links lets you set what happens when a user shares something, launches an app for the first time, and so on. You can even target by version, so for example, asking the user to update their app, and then opening the recipe.
For the advertising option, Titus had more examples. You can now only advertise to those who are hardcore users of your app. Or if you have a music app, you can target those who only spend time in the music section of your news app, for example.
Cloud Messaging, Test Lab, and Firebase Storage
There are also a lot of features that Google already offered, but are now tied closer to Firebase.
Google Cloud Messaging (GCM), the company’s cloud-to-device push messaging service that already sends 170 billion messages per day to two billion devices, is now Firebase Cloud Messaging (FCM). As its new name implies, the service is integrated with Firebase. It’s still free for unlimited usage, still supports Android, iOS, and the Web, and is still optimized for reliability and battery-efficiency.
Cloud Test Lab, the company’s mobile app testing service announced at Google I/O 2015 and based on the Appurify acquisition, is now Firebase Test Lab for Android. Test Lab still does the same thing: helps developers find problems in their app before their users do, using automatic and customized testing on real devices hosted in Google data centers.
Firebase Storage isn’t a rebranding, though the new feature is powered by Google Cloud Storage. Developers can now securely upload and download images, videos, and other large files. Stored files can be easily accessed by Google Cloud projects, and the Firebase Storage client SDKs have advanced logic to gracefully handle poor network conditions.
Last but not least, Firebase’s existing backend products (Realtime Database, Hosting, and Authentication) have received a few improvements. Realtime Database has a new user interface, Hosting has gained free custom domain support for all developers, and Authentication has received new SDKs and an upgraded backend infrastructure. New authentication features, including email verification and account linking, have been added as well.
New pricing plans
Analytics, Crash Reporting, Remote Config, and Dynamic Links are all free for unlimited usage. For the four paid products (Test Lab, Storage, Realtime Database, and Hosting), Google has simplified the pricing to:
- A free plan with generous limits
- A fixed-rate plan for early-stage startups who need a predictable monthly price
- A metered pay-as-you-go plan that scales with the largest apps
So, what exactly are you paying for? Well, hopefully Google’s commitment not to shut down Firebase, like Facebook did with Parse.
Google is promising to provide support when you run into issues, and says it is “committed to cross-platform development.” If you used a Firebase feature before today, it should still work. But Google recommends “upgrading to the latest SDK to access our new features,” so don’t expect that support to last forever.