Getting started is simple

  1. Grab the Sentry Cocoa SDK from Cocoapods:

    source 'https://github.com/CocoaPods/Specs.git'
    platform :ios, '8.0'
    use_frameworks!
    
    target 'YourApp' do
        pod 'Sentry'
    end
  2. Configure your API key:

    Instructions for Objective-C
    @import Sentry;
    - (BOOL)application:(UIApplication *)application
      didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
      SentryClient.sharedClient = [[SentryClient alloc] initWithDsn:@"your dsn" didFailWithError:nil];
      [SentryClient.sharedClient startCrashHandlerWithError:nil];
      return YES;
    }
    Instructions for Swift
    import Sentry
    func application(
      application: UIApplication, didFinishLaunchingWithOptions
      launchOptions: [NSObject: AnyObject]?) -> Bool
    {
      Client.shared = try? Client(dsn: "your dsn")
      try? Client.shared?.startCrashHandler()
      return true
    }

Sentry automatically captures crashes recorded on macOS, iOS, and tvOS.
View the Sentry for Cocoa documentation for more information.

Get iOS error monitoring with complete stack traces


A minimalist illustration of a user interface that alludes to the iOS error tracking information features of Sentry.

See details like function, filename, and line number so you never have to guess.


Reveal hidden context in Apple’s incomplete error data by automatically symbolicating unreadable symbols.


Handle iOS crashes with complete context using the React Native SDK while the Objective-C SDK runs in the background.

An illustration depicting a sequence of events. A user types F, Ü, N, scrolls down, clicks a checkbox, then iOS throws an error due to encoding problems, which is caught by Sentry's iOS error monitoring.

Fill in the blanks about iOS errors


See what the app was doing when the iOS error occurred: every user action, view controller changes, custom breadcrumbs.

Record events even when devices are offline or in airplane mode, then send errors as soon as connection is regained.

See the full picture of any Cocoa exception

See the full picture of any iOS exception


Record environment and state details to recreate bugs down to the device, iOS version, app version, free memory, and disk space.

Sentry’s tag distribution graph also makes it easy to isolate and prioritize any iOS error by seeing how often it occurs in context.

  • “How actionable is this error? Should I snooze the alert?”
  • “Has an error with the same stack occurred before?”
  • “Were they even close to catching the Aerodactyl?”
  • “Was the device an iPhone 3GS or an iPad Air?”
  • “Did they swipe left or swipe right?”

Resolve iOS errors with max efficiency, not max effort


Improve workflow with a full view of releases so you can mark errors as resolved and prioritize live issues.

An illustration of iOS error tracking, depicting a package on a conveyor belt, with marks along the belt indicating commits in a release.
Illustration of iOS error monitoring, depicting a sequence of git commits depicted as platforms in a line. One of commit is crumbling and has been engulfed in lava.

Learn in which version a bug first appeared, merge duplicates, and know if things regress in a future release.

Add commit data to automatically suggest an owner of each iOS error and instantly send deploy emails.

An illustration of iOS crash reporting, depicting three avatars, with one highlighted as responsible for an error.

Security doesn’t cost extra


All accounts get the same high quality security features, regardless of plan.

  • Two-Factor Auth
  • Single Sign On support
  • Organization audit log

Learn more about Security

  • Privacy Shield certified
  • PII data scrubbing
  • SSL encryption

Learn more about Privacy

iOS debugging that looks nice, too

Track errors while maintaining your dignity.

A screenshot of the Sentry crash reporting dashboard

Seriously though, stop hoping your users will report iOS bugs.

Get started