Keeping your app healthy can be a very time consuming process, even if you’re already using Crashlytics. The bigger your app grows, the more difficult it becomes to keep track of all the crashes your users experience, and which part of your ever growing codebase is causing them. By combining Crashlytics with Google Analytics, all of those previous hurdles become much more manageable, with a supplementary SDK that allows you to reproduce issues and keep track of data with much more granularity. Some of these features include a detailed insight into your crash-free user metrics, the ability to use breadcrumbs to track specific events a user went through before a crash occurred, and the ability to link your apps data to BigQuery to easily visualize your apps key metrics.
Out of the box, Google Analytics keeps count of the number of sessions, and crashes that occur in your Firebase app. This is done through events that the Google Analytics for Firebase SDK tracks automatically--aptly titled “automatically collected events”. By pulling the “session_start” and “app_exception” events, Google Analytics is able to understand when a user session has started and respectively when a crash has occurred. Having those metrics alongside your Crashlytics data gives you a top level view of crashes in your app, as well as the ability to analyze those individual user sessions that led to a crash. This also provides you a dashboard that allows you to quickly notice a dip or a spike in your Crash Free Users, and to check the crash issues right underneath, to figure out what caused it.
Sometimes, you not only need to know where in your code a crash occurred, but exactly what a user was doing in your app before it crashed. As we mentioned earlier, Google Analytics automatically collects several different events in your app, but you also have the ability to log custom events, and custom event parameters. Crashlytics will then add these custom events to individual crash sessions, allowing you to track user sessions with much more granularity. Using these custom event markers alongside Analytics breadcrumbs, you’ll be able to create a trail leading directly to the users crash.
One example you get out of the box is screen view events. This means if you have both Crashlytics and Analytics, you’ll be able to see exactly what screens your user traveled through before they experienced a crash. You can read more about breadcrumbs and Crashlytics here.
Monitoring the stability of your app within your user base is critical for understanding what your areas of focus need to be. This process has been made much simpler with the Latest Release feature. This display will highlight your data once you have both the Google Analytics SDK and Crashlytics SDK integrated, and you will be able to detect crashes in your app’s most recent version, as well as its most popular versions. This view is extremely useful for identifying a prevalent bug that might appear in your app’s latest version that might not present in other versions. Using this tool will allow you to isolate the issue, and solve it much more quickly.
Creating queryable reports on the insights you’ve gathered can be instrumental for your app’s success, among developers and stakeholders alike. Both Crashlytics and Google Analytics offer the ability to export your data into BigQuery and visualize it with Data Studio. You can create complex dashboards that use data from both Analytics and Crashlytics, providing crucial metrics for your business.
By implementing user identifiers or key value pairs into your crash reports, and exporting them alongside your Google Analytics custom events, you can start tying your Crashlytics and Google Analytics data together in order to better understand how stability is affecting your users and your revenue. For example, if you’re a game developer and your users are only getting to the first level of your game before they reach a fatal error, this could be causing a lot of churn. You could figure that out by querying for most pervasive crashes in your app by user ID, and then filtering by your first level custom event.
Picking up on trends such as which crashes are causing your users the most grief in a given week, or figuring out which demographic of users those problematic crashes are affecting, are just a couple of the useful features that exporting your Crashlytic and Google Analytics data to BigQuery will provide you. Here are a handful of useful queries you can try out for yourself!
No party is complete without pizza, and no Firebase Crashlytics integration is complete without Google Analytics. So, whether you’re looking to keep track of your app’s latest version, break down your user data in BigQuery, or just need a robust app development platform, head over to the Firebase console and integrate your app with Crashlytics and Google Analytics!
It’s been a year since we all came together in Madrid, Spain for Firebase Summit 2019, shared announcements and updates, and listened to your product feedback. Since then the world as we know it has changed, but here at Firebase our mission to help developers succeed by making it easy to build and operate mobile and web apps remains the same.
We’ve been working hard to build tools to help you accelerate app development, gain actionable insights and scale with ease. We’re looking forward to sharing these updates with you at this year’s virtual Firebase Summit, happening 27-28 October at 9:30AM PST each day. All you have to do is prop up your mobile device or laptop, head over to firebase.google.com/summit, and tune in from wherever you’d like.
While we will miss connecting with you in person, we are excited that even more developers can join us this year.
Here’s what to expect during the two days:
Join us 27 October at 9:30 am PST for the opening keynote to learn how Firebase can help you build and operate your apps. After the keynote, you can ask questions in the chat and have them answered live by the Firebase team during #AskFirebase.
Stay tuned for 11 technical sessions on topics like monitoring your latest release, increasing user engagement, optimizing your app revenue, and more. These sessions will be live streamed over the two days so you can watch and chat with other developers and the Firebase team, or you can watch them on-demand at your convenience.
For a more hands-on learning experience, watch us live code an app from scratch using Flutter and Firebase. You can also try one of our new demos, codelabs with walkthrough videos and multi-step tracks to learn about popular topics such as how to build a web app using Firebase.
We will be releasing more details about Firebase Summit in the coming weeks. In the meantime, sign up for updates on our event page, subscribe to the Firebase YouTube channel, and follow us on Twitter to join the conversation.
One of the biggest challenges game developers face is figuring out how to improve monetization without compromising their game experience. Many game developers embed ads into their titles, which enables them to offer their games for free and remove the cost barrier of adoption for players - while still generating revenue. In-app advertising can be lucrative, when done effectively and in moderation.
But how do you know what types of ads are best-suited for your game? How do you ensure ads won’t drive away players? These are the exact questions Pomelo Games had. For answers, they turned to Firebase.
Pomelo Games is one of the top game studios in Uruguay. They pride themselves on developing unique and polished games that capture players’ imaginations. Their recent release, Once Upon a Tower, “is an easy-to-pick-up, hard-to-put-down, free-to-play game,” says co-founder Jonás Mora. A Play Store Editors’ Choice, the game is beloved for its high-fidelity graphics, as well as the “fairness of its free-to-play mechanics,” says Jonás.
So when the team needed to improve the game’s monetization, they were unsure how to proceed. They were looking for a way to increase revenue without sacrificing the affordability and game quality their players loved.
Pomelo Games used Firebase Remote Config and Firebase A/B Testing to test a new ad format: interstitials. They also used Google Analytics to monitor revenue and Firebase Crashlytics to keep an eye on stability.
Although initially opposed to the idea, Jonás and his team discovered that showing interstitial ads to their entire player base led to an average 25% increase in AdMob revenue, and surprisingly, a 35% increase in in-app purchases as well. In both cases, there was almost no negative impact on retention or game stability. Firebase gave Pomelo Games the confidence to try new approaches to grow revenue without driving players away. Read Pomelo Games’ full story and get details on their success with Firebase in our new case study. And learn more about how Firebase can help you build and grow your game, and see what other game studios are using Firebase.
Nothing spoils a great game for a user like a crash, and most of us have been there too: you’re just about to solve the puzzle, defeat the final boss, or cross the finish line, and then...crash.
For Tapps Games, a Brazilian game developer, it was particularly important that players had a stable and high performing gaming experience during one of the feature rollouts to their popular game, Vlogger Go Viral. With more than 11M monthly active users, the Tapps team didn’t have time to investigate every negative review manually — it would take days, leaving a considerable number of users waiting for resolution.
To solve this, Tapps Games enabled Firebase Crashlytics velocity alerts, which let them know right away when there was an increase in the severity of crashes occurring in the Vlogger Go Viral game. Crashlytics also helped them prioritize, identify and track the state and sequences of events that led to the crash using custom keys and custom logs. The Vlogger Go Viral team then used Remote Config to shut down the problem area in stages and used staged rollouts on the Google Play console to slowly release the new version to a subset of it’s players before moving ahead to a full rollout
Check out the full case study to find out how Tapps Games used Crashlytics and Remote Config to increase crash free user rate and improve ratings, and learn more ways Firebase can help you build and grow your game.
We’re excited to announce several new features that make developing with Firebase Hosting even better!
Our new integration with Cloud Logging gives you access to web request logs for your Hosting sites. Cloud Logging, previously known as Stackdriver Logging, makes it easy to view, search, and filter logs. You can learn from where and when you have visits to your site, your site's response statuses, the latency of end user requests, and more.
To get started, link your Firebase project to Cloud Logging in the Cloud Logging integration card in the Firebase console or visit the Hosting docs to learn more.
Hosting will now compress your assets with Brotli encoding. We’ll automatically serve the smallest, best-compressed version of your content, based on what your user's client is able to handle.
Brotli compression gives you a boost in performance because assets are smaller, use less bandwidth, and are delivered more quickly to your end users. This means you’ll have lower bandwidth costs, while your end users will enjoy faster sites.
The best part? You’ll get this automatically the next time you deploy.
We know it’s important to you to provide a great experience for your users everywhere. Firebase Hosting now supports serving country and language specific content, backed by the power of our global CDN. Previously, the best strategy was to use Cloud Functions to look at the country and/or language code and reply with a redirect as necessary.
Firebase Hosting’s i18n rewrites allow developers to serve different content, depending on a user's language preferences or country location. In your public directory, create an i18n directory containing separate folders for each language/country combination, then add the i18n field to your project's firebase.json config. I18n rewrites also work for localized 404 pages. Learn more about using i18n rewrites in our documentation.
i18n
firebase.json
We hope you all are excited for these new features, but stay put because we have even more coming in the future!