Expedia Corbin Montague Nov 3, 2020

Monitoring App Performance on iOS

Article Summary

Expedia's iOS team breaks down the complete performance monitoring toolkit every mobile team needs. Your users notice lag after just 300ms—here's how to stay ahead.

Corbin Montague from Expedia Group shares a comprehensive guide to iOS performance monitoring, covering everything from Apple's native tools to third-party solutions. This is the playbook for teams serious about app quality.

Key Takeaways

Critical Insight

iOS developers get three powerful native monitoring tools (XCTest, MetricKit, Xcode Organizer) plus proven third-party options like Firebase Performance, all with implementation examples.

The article includes production-ready Swift code for MetricKit integration that takes under 5 minutes to implement.

About This Article

Problem

iOS apps that use too much memory trigger OS warnings and get terminated, while constant disk writes wear out SSDs faster than they should. Battery drain from inefficient networking and processing means users need to charge more often, which leads them to uninstall the app.

Solution

Expedia Group's engineering team uses XCTest Metrics APIs to collect performance baselines automatically during CI/CD workflows. They set up builds to fail when metrics go beyond standard deviation thresholds. They also pull daily production reports from MetricKit and aggregated user data from Xcode Organizer to track memory, battery, and disk usage.

Impact

By watching scroll hitch rates and app hangs, teams found that users notice lag delays as small as tenths of a second. This helps them prioritize optimizations. Firebase Performance and SwiftInfo give them cross-platform metrics on network requests and app size, so they can work toward Apple's 400ms target for cold launch times.