---
title: Retrieve dSYMs for Bitcode apps
source: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/configuration/retrieve-dsyms-bitcode-apps
---

> #### ⚠️ IMPORTANT
>
> With Xcode 14 and later, the App Store no longer accepts bitcode submissions from Xcode 14. If a project explicitly enables bitcode, Xcode will generate a warning message that says, "Building with bitcode is deprecated. Please update your project and/or target settings to disable bitcode.” The [Xcode 14 release notes](https://developer.apple.com/documentation/xcode-release-notes/xcode-14-release-notes) goes on to say that "the capability to build apps with bitcode will be removed in a future update."
>
> If you use Xcode 14 or later, instead of using bitcode to capture symbolicated crash stacks from your release builds, we recommend using the [automatic symbol uploading script](https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/installation/spm-installation#configure-using-swift-package-manager) to upload your build's symbols.

Bitcode is a feature that gives Apple the ability to re-compile iOS and tvOS applications for specific users' hardware. This provides a smaller download size for end users. For more about this process, see Apple's [Bitcode and app thinning documentation](https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html).
When Apple compiles an app, the dSYM files are also compiled. For New Relic to be able to symbolicate crashes of your Bitcode-enabled app, these dSYM files need to be downloaded from Apple and then uploaded to New Relic.

## Identify missing dSYMs [#IdentifyingMissingdSYMs]

When a Bitcode-enabled app is uploaded to Apple for App Store review or ad-hoc distribution, dSYMs need to be manually downloaded from Apple and uploaded to New Relic to allow the [mobile crash reports](https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/getting-started/ios-agent-crash-reporting) to be properly symbolicated. These dSYMs can be downloaded through the archives organizer in Xcode within several minutes of uploading the app. In this situation follow the procedures to [find the archive and download dSYMs](#Archive).

If an app is missing a dSYM file, you'll see three indicators in the mobile monitoring UI:

-   **Banner notification**: A banner warning appears on the [**Crash report** page](https://docs.newrelic.com/docs/mobile-monitoring/mobile-monitoring-ui/crashes/mobile-apps-crash-report-dashboard). The warning reads:

    ```
    We were unable to locate your dsym.
    ```
-   **Upload prompt**: from the **Crash type summary** page you will be automatically prompted to [upload a dSYM file](https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/install-configure/upload-dsyms-bitcode-apps#mobile-ui) if it is missing.
-   **Machine code**: The crash stack trace on the **Crash report** page displays machine code and not a human-readable error message.

## Download dSYM files using iTunes Connect [#iTunes]

To download the dSYM files you need for your app:

1.  Log in to Apple [App Store Connect](https://appstoreconnect.apple.com/login).
2.  Select **Apps > (select an app) > TestFlight**.
3.  From the list of builds for your application, select the build number you need for the dSYM.
4.  From the **Build Metadata** tab, select **Download dSYM**.

Then, to upload the resulting zip file directly to New Relic:

1.  Follow the instructions to [manually upload dSYM](https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/install-configure/upload-dsyms-bitcode-apps#manual-dsym), and skip step 1.
2.  Unpack one dSYM contained in this zip file to retrieve a build UUID that you can upload. (Follow the last step in the manual upload instructions.)

Once New Relic receives the zip file, the build UUIDs for all other dSYMs contained in that zip file will be identified.

## Download dSYM files using Xcode's app archive [#Archive]

Use the [app version and build number](#identifyingAppVersion) to identify the applicable app archive in the Xcode **Organizer** and download the dSYMs.

![Download dSYMs for mobile app version/build](https://docs.newrelic.com/images/mobile_screenshot-full_download-dsym-file.webp "Download dSYMs for mobile app version/build")

**Using Xcode to download dSYMs:** From the **Archives** tab, select the app and version/build, then select **Download dSYMs**.

1.  Open the Xcode **Organizer**: From the **Xcode** menu, select **Window > Organizer > Archives > (select a mobile app)**.
2.  From **Version**, select the archive that matches the app version (listed first) and build number (following the app version in parentheses).
3.  Select **Download dSYMs**.

The dSYMs will be downloaded from Apple if available and if the file names contain a series of letters and numbers. If the dSYM files are named after the the dependencies in your project, the download will not be successful.

## Upload dSYMs [#Upload-dSYMs]

Once you have located the dSYMs, follow the instructions to [upload a dSYM](https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/install-configure/upload-dsyms-bitcode-apps) for each zipped dSYM.
