iOS Bundle ID Finder and App Store ID Lookup
A bundle ID is the reverse-domain identifier Apple uses for an app. Instagram's is com.burbn.instagram. The App Store ID, also called the track ID, is the number in the store URL: 389801252 for that same app. Search by app name or paste an App Store link and this tool returns both, along with the publisher, pricing, ratings, screenshots, release notes, supported devices and the raw JSON Apple returns.
You need the bundle ID for code signing, push certificates, deep links and provisioning profiles; you need the App Store ID for store links, review prompts and the App Store Connect API. The lookup reads Apple's public iTunes endpoint, so it needs no account: search by name in any of the storefronts in the picker, or paste an App Store link and the storefront is taken from the link itself. If you only came for one well-known app's identifier, the verified table below already has seventeen of them.
Bundle IDs and App Store IDs for 17 popular iOS apps
These are the values Apple itself returns for each listing. Every row was read back from itunes.apple.com/lookup?id=… against the United States storefront on 8 August 2026, not copied from another list. Names, prices and screenshots change constantly; the two identifiers below do not, because Apple fixes both when the app record is created.
| App | Bundle ID | App Store ID | Publisher |
|---|---|---|---|
| com.burbn.instagram | 389801252 | Instagram, Inc. | |
| TikTok | com.zhiliaoapp.musically | 835599320 | TikTok Pte. Ltd. |
| WhatsApp Messenger | net.whatsapp.WhatsApp | 310633997 | WhatsApp Inc. |
| Spotify | com.spotify.client | 324684580 | Spotify |
| YouTube | com.google.ios.youtube | 544007664 | Google LLC |
| Netflix | com.netflix.Netflix | 363590051 | Netflix, Inc. |
| com.facebook.Facebook | 284882215 | Meta Platforms, Inc. | |
| Snapchat | com.toyopagroup.picaboo | 447188370 | Snap, Inc. |
| Uber | com.ubercab.UberClient | 368677368 | Uber Technologies, Inc. |
| Gmail | com.google.Gmail | 422689480 | Google LLC |
| Telegram Messenger | ph.telegra.Telegraph | 686449807 | Telegram FZ-LLC |
| Signal | org.whispersystems.signal | 874139669 | Signal Messenger, LLC |
| Slack | com.tinyspeck.chatlyio | 618783545 | Slack Technologies L.L.C. |
| Zoom Workplace | us.zoom.videomeetings | 546505307 | Zoom Communications, Inc. |
| X (formerly Twitter) | com.atebits.Tweetie2 | 333903271 | X Corp. |
| com.reddit.Reddit | 1064216828 | Reddit, Inc. | |
| Discord | com.hammerandchisel.discord | 985746746 | Discord Inc. |
For anything not listed, use the search box above, or open a listing straight from its number — load Instagram's full App Store record and swap the ID for the app you are after.
Popular apps, one page each
Each page below carries the same two identifiers plus the developer, genre, current version, minimum iOS and last store update Apple returned, with the date it was checked.
- Instagram bundle IDcom.burbn.instagram
- TikTok bundle IDcom.zhiliaoapp.musically
- WhatsApp Messenger bundle IDnet.whatsapp.WhatsApp
- Spotify bundle IDcom.spotify.client
- YouTube bundle IDcom.google.ios.youtube
- Netflix bundle IDcom.netflix.Netflix
- Facebook bundle IDcom.facebook.Facebook
- Snapchat bundle IDcom.toyopagroup.picaboo
- Uber bundle IDcom.ubercab.UberClient
- Gmail bundle IDcom.google.Gmail
- Telegram Messenger bundle IDph.telegra.Telegraph
- Signal bundle IDorg.whispersystems.signal
- Slack bundle IDcom.tinyspeck.chatlyio
- Zoom Workplace bundle IDus.zoom.videomeetings
- X (formerly Twitter) bundle IDcom.atebits.Tweetie2
- Reddit bundle IDcom.reddit.Reddit
- Discord bundle IDcom.hammerandchisel.discord
Bundle ID, App Store ID and App ID are three different things
Most of the time someone says “app ID” they mean one of three identifiers, and picking the wrong one is why a push certificate or an associated-domains entitlement refuses to validate. They are not interchangeable.
| Identifier | Example | Where it comes from | What it controls |
|---|---|---|---|
| Bundle ID | com.burbn.instagram | You choose it in Xcode and register it in the Apple Developer portal | Code signing, provisioning profiles, push notifications, keychain and App Group access |
| App Store ID (track ID) | 389801252 | Apple assigns it when the app record is created | Store URLs, review prompts, App Store Connect and the iTunes lookup API |
| App ID | ABCDE12345.com.burbn.instagram | Your Team ID prefix joined to the bundle ID | Entitlements, associated domains, App Groups: what a profile actually authorises |
| Application ID (Android) | com.example.myapp | The applicationId in your Gradle module, baked into the APK manifest | Google Play identity, signing, install and upgrade matching on the device |
App Store Connect adds one more piece of vocabulary: on an app's App Information page the track ID is labelled the Apple ID. It is the same number as the one in the store URL, and it has nothing to do with the Apple ID you sign in with. Apple's App Store Connect API and most third-party analytics tools key on that number, while anything that touches the binary (signing, entitlements, MDM inventory, crash reports) keys on the bundle ID.
Where to find your own app's bundle ID
Four places hold the answer, and they can disagree. That disagreement is itself the diagnosis when a build refuses to install.
- Xcode. Select the target, then the General tab: the field is Bundle Identifier. It is backed by the
PRODUCT_BUNDLE_IDENTIFIERbuild setting, so if the field looks unexpectedly empty or greyed out, the value is coming from an.xcconfigfile and you should search the build settings instead. - Info.plist. The key is
CFBundleIdentifier. In any project made this decade its value is literally$(PRODUCT_BUNDLE_IDENTIFIER), a reference rather than a string. That is why reading the plist alone often tells you nothing. - The built .ipa. This is the one that matters, because it is what actually shipped. An
.ipais a zip; the resolved value sits inPayload/YourApp.app/Info.plist. Drop the file into the IPA inspector to read it, along with the version, minimum OS and embedded provisioning profile, without unzipping anything. - The provisioning profile. Its entitlements carry an
application-identifier— your Team ID followed by the bundle ID, or a wildcard. The provisioning profile decoder prints it, which is the fastest way to confirm that a profile really covers the app you are signing.
For an Android build the equivalent is the application ID; the APK inspector reads it out of the decoded manifest.
How to find the bundle ID of an app you did not build
You cannot read a competitor's Info.plist, but you do not need to. Apple publishes the mapping. An App Store URL carries the track ID in its last path segment (apps.apple.com/us/app/instagram/id389801252), and Apple's public lookup endpoint turns that number into the rest of the record, bundle ID included:
https://itunes.apple.com/lookup?id=389801252The response is JSON; the field you want is bundleId. It also works in the other direction, which is the part most people miss: querying ?bundleId=com.burbn.instagram returns the listing. That is how you turn an unfamiliar identifier from an MDM inventory, a crash report or a mobile-config profile back into an app name. Add a country parameter to switch storefront; an app that is not sold in one region returns nothing there while resolving normally elsewhere, and the identifiers are identical either way.
Apple documents a rate limit of roughly twenty calls a minute on this API, so a script that walks a list of apps needs to pace itself. For one-off checks the lookup form at the top of this page is quicker, and it renders the ratings, release notes, screenshots and raw JSON alongside the identifiers.
If you would rather follow the whole process as a walkthrough — how to tell two near-identical search results apart, and what a storefront mismatch looks like when it happens — the longer write-up covers both paths step by step.
Why bundle IDs so rarely match the app's name
Look down the table above and most of the surprises have the same cause. A bundle ID is chosen once, before the first upload, and Apple will not let you change it afterwards. It therefore fossilises whatever the product was called at the moment somebody first hit Archive — through every rename, pivot and acquisition that followed.
com.burbn.instagram: Instagram was pivoted out of Burbn, a check-in app, in 2010.com.toyopagroup.picaboo: Snapchat launched as Picaboo, under a company called Toyopa Group.com.atebits.Tweetie2: X was Twitter, and Twitter's iOS app was Tweetie, bought from a developer called atebits.com.tinyspeck.chatlyio: Slack was built inside Tiny Speck, the studio behind the game Glitch.com.hammerandchisel.discord: Discord's company was named Hammer & Chisel.com.zhiliaoapp.musically: TikTok inherited the App Store record of Musical.ly after the 2018 merger.
The practical lesson is narrow but useful: never infer a bundle ID from a company's current name, and never assume the one you were told is right. Look it up. The cost of guessing is a push certificate issued against an identifier no build uses, or a deep link that silently never matches.
What the bundle ID does during beta distribution
iOS keys installed apps by bundle identifier. Two builds sharing one identifier are, as far as the device is concerned, the same app: install the beta and it lands on top of the copy already there rather than beside it. Teams that want a tester to hold both at once give the beta its own identifier (a .beta or .dev suffix is the usual convention), and that identifier has to exist in the developer portal and in the provisioning profile as well, not just in the Xcode target.
Over-the-air installs make this visible. When you upload a build, BetaDrop reads the bundle identifier out of the .ipa and writes it into the itms-services manifest that Safari hands to iOS. iOS compares the identifier in that manifest with the one inside the binary it downloads, so a build whose target, provisioning profile and App ID disagree tends to fail with nothing more useful than an “Unable to install” alert. When that happens, the file is rarely the problem; the identifiers are. The same applies on the Android side when you upload an APK, where the application ID plays the same role.
If an install is failing, check three things in order: the bundle ID in the built binary, the identifier the profile authorises, and whether the tester's device is in that profile at all. The UDID checker answers the third in a couple of taps on the tester's phone.
Frequently asked questions
What is Instagram's bundle ID?
Instagram's bundle ID is com.burbn.instagram and its App Store ID (track ID) is 389801252. The "burbn" part is historical: Instagram was pivoted out of a check-in app called Burbn, and Apple does not let you change a bundle ID once a build has been uploaded to App Store Connect, so the original identifier stayed.
What is TikTok's bundle ID?
TikTok's bundle ID is com.zhiliaoapp.musically and its App Store ID (track ID) is 835599320. Both belong to Musical.ly: ByteDance merged Musical.ly into TikTok in 2018 and kept the existing App Store record rather than publishing a new app, and a bundle ID cannot be changed once that record exists.
How do I find an iOS app's bundle ID from its App Store link?
Take the numeric ID out of the URL — in apps.apple.com/us/app/instagram/id389801252 that is 389801252 — then request itunes.apple.com/lookup?id=389801252 and read the bundleId field out of the JSON. Pasting the App Store URL into the lookup tool on this page does the same thing and shows the rest of the listing with it.
What is the difference between a bundle ID and an App Store ID?
A bundle ID is the reverse-domain string you choose in Xcode, such as com.example.myapp. It identifies the binary to iOS, to code signing and to push notifications. An App Store ID — also called the track ID, or the app's Apple ID in App Store Connect — is the number Apple assigns to the store record, such as 389801252, and it identifies the listing rather than the binary. One published app has exactly one of each.
Can I change my app's bundle ID after release?
No. Once a build has been uploaded to App Store Connect, the bundle ID is fixed for that app record. Shipping under a different one means creating a new app, which gets its own App Store ID, its own reviews and its own ranking history, and existing users are never offered it as an update — they would have to install it as a separate app. Get the bundle ID right before the first upload.
Where is the bundle ID stored inside an .ipa file?
An .ipa is a zip archive. The value sits in the CFBundleIdentifier key of Payload/YourApp.app/Info.plist, which is normally a binary plist rather than XML, so a text editor will show mojibake. On macOS, unzip -p YourApp.ipa 'Payload/*.app/Info.plist' | plutil -p - prints it. The IPA inspector reads the same key in the browser without unzipping anything.
Do bundle IDs change between App Store countries?
No. An app has one bundle ID and one App Store ID worldwide; the storefront only affects availability, the localised name, the price and the marketing metadata. Apple's lookup endpoint returns a result count of 0 for a storefront where the app is not sold, which reads like a missing app but only means it is not on sale there — query another storefront and the same identifiers come back.
What is the Android equivalent of a bundle ID?
The application ID, usually called the package name. It has the same reverse-domain shape, is declared as applicationId in the module's Gradle file and is recorded in the APK's manifest. It carries the same permanence problem: Google Play keys an app by its application ID, so it cannot be changed after publishing. The APK inspector reads it straight out of an .apk.
What is Spotify's bundle ID?
Spotify's iOS bundle ID is com.spotify.client. You can confirm any published app's identifier the same way this finder does: search the app or paste its App Store link, and it returns the bundle ID, the App Store ID and the seller from Apple's public lookup. Bundle IDs are public metadata, which is why deep-linking and analytics tools ask for them.
What is WhatsApp's bundle ID?
WhatsApp Messenger's iOS bundle ID is net.whatsapp.WhatsApp. As with any App Store app, you can look it up here from the app name or its store link, and the finder returns the bundle ID alongside the App Store ID and the publisher. The value is drawn from Apple's public catalogue, so nothing about the app is downloaded or modified.
Need an identifier that isn't in the table?
Look up any app's bundle ID and App Store ID with the search box at the top of this page — by app name or by pasting an App Store link. And if you came here mid-signing-workflow, checking an identifier before a distribution build, upload the signed .ipa to get an OTA install link your testers open in Safari.