Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

iOS Crash Reporting Tools in 2017

DZone's Guide to

iOS Crash Reporting Tools in 2017

Crash reporting is vital in today's crowded mobile application landscape. Find out the tools of the trade, and which is best suited for your team.

· Mobile Zone ·
Free Resource

More than one year has passed since our last iOS Crash Reporting Tools analysis article, so I'm here to introduce you to the newest and biggest players, what's changed, and who's not among us anymore.

For each platform analyzed, I evaluated their key features, pricing, and who it's best suited for, after all, each tool usually fits best with a particular type of business, industry, or user.

I explored the market's top 11 options, as listed below (in alphabetical order):

List of Crash Reporting Tools Reviewed in This Article

Name

Platforms

Pricing

Appsee

Android, iOS

14-day free trial

Apteligent (formerly Crittercism)

Android, iOS

Free with limitations

Buddybuild

Android, iOS

21-day free trial

Bugsee

Android, iOS, Others

Free with limitations.

Bugsnag

Android, iOS, Others

14-day free trial

Countly

Android, iOS, Others

Community Edition for free

Fabric (Crashlytics)

Android, iOS, Others

100% FREE

Firebase

Android, iOS

100% FREE

HockeyApp

Android, iOS, Others

10 apps free.

Instabug

Android, iOS

14-day free trial

Xcode

All Apple OS

100% FREE


Appsee

Appsee's greatest feature, the one that probably makes it stand out from its competitors, is the ability to record Touch Heatmaps. Another exclusive feature is automatic events, which increase the ease of integration since they automatically detect screens, buttons, and user actions on the screen, so you don't have to manually configure what you'd like to be measured ahead of time. Crash video recording is not something particular to Appsee, but it's very handy to be able to see what the user was doing seconds before the crash happened. Also, they claim their SDK is lightweight and doesn't impact your app's performance, so there's virtually nothing to be worried about regarding performance.

Appsee has become famous for its Touch Heatmap insights, but since it doesn't offer any free plan, we can tell its primary focus is to provide its service only to companies. Not only that, businesses that are still starting to implement their analytics infrastructure might like Appsee due to the ease of integration. If your company fits one of these categories, Appsee might be one of the best crash reporting tools out there.

Pricing: Appsee offers two plans: Premium and Enterprise, but they don't specify the cost explicitly on their website. Instead, they just offer a 14-day free trial for the Premium plan. You can find the full list of features for each plan they offer here.

Apteligent

In 2016, Crittercism became Apteligent, and now provides a wide range of services that are not limited to Android and iOS crash reporting anymore. It is also the only Application Performance Management solution built ground-up for mobile, including insights on network usage, benchmarking your competitors, and seeing how the SDKs you're using in your app impact performance.

The crash reporting tool organizes the crashes in groups, so they're easier to identify and resolve because you can now prioritize what's more critical to your app based on their insights.

Apteligent's focus is definitely on mAPM (mobile Application Performance Management), so their benchmarking analysis, app insights, and network analytics determine how the user experienced the app, are their strongest pillars. Mature businesses are more likely to be looking for such characteristics, so if your company has these necessities, you should take a look at their services.

Pricing: Their free plan got updated since our last article, now offering unlimited MAU, crash reporting, networking insights, automatic bread crumbs, and support to Android and iOS platforms, but they also have more features available on paid plans.

Buddybuild

I have personally been using Buddybuild for the past few weeks and think the services they offer are just amazing. I wrote in another article here about buddybuild's beta testing tools and their facilities. Now, when the topic comes to crash reporting, they also stand out, offering an in-app feedback reporting tool, with replay videos upon user feedback, or even upon a crash (just like Appsee).

You can integrate Buddybuild with services like GitHub Issues, JIRA Issues, Trello, and other bug-tracking tools, to obtain automatic issues assigned to a specific team based on the crash and feedback reports generated by their SDK. This feature added to all the other facilities they offer, compose a fantastic service, and also with a customer support that I can vouch for!

Pricing: Buddybuild's subscriptions have a high price tag, but if you consider it's an all-in-one service that includes even CI+CD solutions (thus competing with other CI services), its price is fair enough. Its free plan is limited to 1 concurrent build, max 20 minutes per build, only two devices can be auto-provisioned, there are limited integrations, and a limited amount of user feedback per month. If you'd like to check all of its pricing tiers, you can do so here.

Bugsee

Bugsee's highlight is that it offers bug and crash reports to Android, iOS, and web apps. With its video playback and network traffic information, it combines the key feature of Appsee's service with Apteligent's network traffic logs. Another highlight is that it scored the #1 position in CrashProbe's benchmarking analysis, offered by Bit Stadium GmbH. More information on this benchmark is given later in this article.

Pricing: Bugsee's pricing strategy seems to rely on how many clients its customer has. The free plan starts with up to 10 test devices and 10k live devices. Higher plans pricing can be found here.

Bugsnag

Another tool that scored nicely in CrashProbe's benchmarking was Bugsnag, taking 3rd place in the iOS overall charts. They have quite a large roster of customers including Airbnb, Square, Lyft, MailChimp, Yelp, Cisco, Xoom, Docker, Shopify, and plenty of others.

It's fairly easy to integrate Bugsnag to your project, and it also features intelligent error grouping. Other than that, automatic app error detection captures unhandled and handled errors using lightweight SDKs, minimizing the footprint on your app performance.

Pricing: The free plan starts with one person in the team receiving max 250 events/day. Anything higher than that starts at $29/month, but more details can be found on their pricing page.

Countly

Explicitly focused on the enterprise ecosystem, Countly offers industrial grade analytics for mobile and web platforms. Although its main service is analytics, they also provide a crash reporting service, and a unique plugin-centered environment, where the community may develop plugins that extend Countly services. Another interesting fact is that they support an outstanding range of platforms: Android, iOS, Windows Phone, Windows desktop, and MacOS, with over 50 billion events/month collected from over 11,000 live apps.

Pricing: Even though Countly is focused on enterprise solutions, its platform is entirely open sourced on GitHub and is supported by the community. The Community Edition plan is a self-hosted solution and free forever, but to get a quote on the Enterprise Edition, you must contact them.

Crashlytics (Fabric)

Another service that has been covered in the Beta Testing Tools article was Fabric. It offers a huge suite of modular SDKs that can be easily integrated into your project, and one of them is Crashlytics. It doesn't offer all the great key features like crash replays, in-app feedback tools, or anything their competitors offer, but it's completely free to use. It's probably the most popular tool for new projects, startups, pet projects, or even non-profit projects.

It won the award of the most popular crash reporting tool in 2016, and is reportedly active on 2.5 billion devices, which virtually represents all the devices in the world - crazy, right? That said, that's enough to consider it one of the biggest players in the game.

Fabric used to be owned by Twitter and was recently purchased by Google. It will be interesting to see how Crashlytics/Fabric develops over time under new management.

Pricing: As one of its differentiating factors, it offers its solution 100% free of charge.

Firebase

In 2016, the biggest event in Firebase's history was being bought by Google. They now, also, provide a crash reporting tool 100% free of charge, and other great new features to make app development easier for us, including notifications, file storage, remote config, dynamic links, and more. Considering the whole range of services they're now offering, it's become a great ally of new startups, and thus a direct competitor of Fabric - maybe that's why Google bought them out as well!

Pricing: Firebase's free plan includes analytics, app indexing, auth system, cloud messaging, crash reporting, dynamic links, invites, notifications, and remote config. More perks are offered in the free plan, or at a low price specified here.

HockeyApp

Microsoft also plays the Crash Reporting game, with a handful of other features, from beta distribution to user metrics and powerful workflow integrations. They're currently testing the next generation of their services, called Visual Studio Mobile Center, which combines the features of HockeyApp with cloud-based development, testing, and analytics, so that might put them on an even higher level soon enough. At the moment, their crash reporting tool isn't much different from its competitors, while the only difference I noticed was a pop-up alert explicitly asking if the user wants to send the crash report to the app developers, or not. Point to Microsoft!

Additionally, HockeyApp took 2nd place in the CrashProbe report aforementioned. They're the company behind the report itself, and I'll give more details below.

Pricing: HockeyApp's free tier supports up to 10 apps now, and the other plans can be found here.

Instabug

Communication between your users and your company should be as streamlined as possible, right? Instabug's primary focus is to reduce negative App Store ratings and make it easier for your users to express themselves. You can continue using your favorite customer support tools like Zendesk, Desk, or Freshdesk, and they'll forward everything there. Their crash reporting tool is very straight forward, featuring issue grouping and log symbolication alongside customer communication enhancements. The world's top apps like Yahoo, Soundcloud, PayPal, Asana, Kik, BuzzFeed, and many others, trust their services with Instabug.

Pricing: When it comes to the pricing, Instabug's free plan provides the in-app feedback feature, screenshot attachments, environment snapshot, app mode, filters and bulk actions, for only one team member, with one month of data retention. It also has many other enterprise plans, which can be found here.

Xcode

It may not be very well known, but Apple also offers their own crash reporting system, now with symbolicated logs and everything. It's not very sophisticated but definitely gets the job done. The problem with Apple's solution is that it depends on the user opting-in to data sharing with Apple itself. As a result, there will be a much smaller sampling of all crashes occurring in your app, which might lead you to wrong conclusions, metrics, and prioritization.

Pricing: This tool is 100% free for developers to use.

Crashprobe Benchmarking Report

I mentioned a few times in this article a benchmarking report called CrashProbe, presented by HockeyApp.

My opinion is that it's not a genuinely fair comparison. Their intention was to create a benchmark comparing how different crash reporting tools actually identify and report the most various kind of errors and app crashes. My issue is that the date of the testing for the various SDKs is years apart from each other. HockeyApp took 2nd place in their ranking, with the latest test having taken place on Feb 24, 2017, while Crashlytics, for instance, took place on Dec 10th, 2015, scoring 5th place. That said, for me, that comparison is not fair at all because the dates the tests took place are not consistent, so please take that into consideration when analyzing those reports.

I look forward to seeing an updated report from CrashProbe with recent results from all the different solutions.

Conclusion

I presented a total of 11 solutions that offer Crash Reporting tools and also provide other services that might make sense to your company, or not. In the end, it's up to you to choose the best suite of tools that supply the needs of your business and at a fair price, but I came up with a few finalists, as follows:

My choice for a free service is Crashlytics. It won the #1 stability SDK of 2016 among the top 200 free iOS Apps, pool made in last December. Fabric's Crashlytics is really fast to integrate into your app and offers an excellent service.

If you're looking for a solution that can integrate with your existing support communication services, you should give Instabug a chance. In-app chat with your customers is a big bonus that will lead your app to have way better App Store ratings, but more important than that, turn your angry users into loyal fans. 

If you're looking for an open source, self-hosted solution, Countly is the way to go. With their community-supported platform, you'll likely find the plugin you're looking for in their plugin base.

Buddybuild is likely to be your choice if you want an all-in-one solution for all your app development problems. It's a complete solution when it comes to crash reporting, and although it doesn't offer other analytics handy tools like the Appsee's Touch Heatmaps, or in-depth networking analysis that Apteligent offers, it's the best service in the market as a whole bundle.

Lastly, I was quite impressed with Bugsee's#1 position on the CrashProbe report, doing even better than HockeyApp.

Topics:
crash reporting ,mobile ,application development ,product reviews

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}