👉 ipatool is an open-source tool developed by Majd, a highly trustworthy and talented developer in the iOS community. Recently, ipatool got a significant update that allows users to easily download older versions of iOS apps on macOS/Windows/Linux!.
👉 Since ipatool doesn't have a graphical user interface (GUI), some of you might think it's tricky to use. But trust me, it's not! Here's a simple guide if you're still a bit scared of the terminal. (Tbh, everything in this *guide can be found on ipatool's repo)
👉 Note: You need to log into your Apple ID via ipatool for the tool to work. Unless you prioritize security above all, you can trust logging into your Apple account with ipatool. As explained earlier, it’s an open-source tool developed by a well-known and reliable developer, minimizing security risks to the lowest level.
- Method 1: You can get the Build Number of most apps on the App Store from ipafilezone or Appstore.bilin (backup).
- Method 2: Ask a jailbroken user who has AppStore++ installed to get the
Build version numberfor you. - If you still can't find the Build Number, see this.
- Grab the ipatool binary from ipatool realeases. Use
...windows-arm64.tar.gzfor ARM Windows,...windows-amd64.tar.gzfor x86 Windows. - Unzip.
-
Open Command Prompt (search "cmd" in Start menu) or PowerShell.
-
Drag & drop the extracted ipatool binary into the Command Prompt or PowerShell window. Then, run:
/path/to/ipatool.exe auth login --email [email protected] -
Enter your Apple Account password and 2FA code when prompted (your password won't be displayed, just type it normally).
-
Enter your PC password (passphrase) when prompted. If you do not set a password for your computer, press Enter to skip.
- ipatool should respond with something like:
INF [email protected] name="Your Name" success=true
- Get the app's bundle ID (com.abc.xyz):
/path/to/ipatool.exe search Yourapp
- Combine with the prepared Build Number, we can now download the exact version we want. Note that if you don't specify the
--external-version-idflag, ipatool will simply download the latest version available.
💻 /path/to/ipatool.exe download -b [app's bundle ID] --external-version-id [Build Number]
- That's it! The IPA is saved in your Home folder.
- Example: Download YouTube (com.google.ios.youtube) version 20.16.7(874149063)
💻 ipatool download -b com.google.ios.youtube --external-version-id 874149063
-
Install Homebrew (if not installed):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" -
Use Homebrew to install ipatool:
brew install ipatool -
Now you can call ipatool directly in the Terminal window.
- Grab the ipatool binary from ipatool realeases. Use
...macos-arm64.tar.gzfor Apple silicon Mac,...macos-amd64.tar.gzfor Intel Mac. - Unzip.
- Drag & drop the binary into the Terminal.
-
In Terminal, run:
ipatool auth login --email [email protected] -
Enter your password and 2FA code when prompted (your password won't be displayed, just type it normally).
-
If ipatool responds with
INF [email protected] name="Your Name" success=true, then you're good to go. -
You also will be prompted to enter your device’s password to allow ipatool to access the keychain (Select Always Allow).
-
Get the app's bundle ID (com.abc.xyz):
ipatool search Yourapp
-
Combine with the prepared Build Number, we can now download the exact version we want. Note that if you don't specify the
--external-version-idflag, ipatool will simply download the latest version available.
💻 ipatool download -b [app's bundle ID] --external-version-id [Build Number]
-
Example: Download YouTube (com.google.ios.youtube) version 20.16.7(874149063)
💻 ipatool download -b com.google.ios.youtube --external-version-id 874149063
(Don't think a Linux user has to read this guide)
- Check out this step on my old guide.







Edit: After getting the values from iMazing, you can skip the other steps and use my new tool which is based off IPATool here: pyIPATool-WebUI
For anyone who wants to use this for tvOS apps, here are the steps:
Make sure you have the current version of the app downloaded on your Apple TV.
Install ProxyMan on your Mac (or an equivalent packet sniffer/proxy tool for Windows).
Install iMazing on your Mac or PC
Follow iMazing’s steps for connecting your Mac/PC to the Apple TV.
In iMazing, go to Tools → Manage Apps.
Right‑click (or use the options menu) and select Export List to CSV.
Open the CSV file. For the app’s row:
AppIDfor IPAToolExternal Version IDfor IPAToolIn Terminal, set your proxy to ProxyMan (adjust the port if using another tool):
In ProxyMan, go to Tools → SSL Proxying List and add this rule:
Using the values from step 6, in Terminal run IPATool. For example:
ipatool get-version-metadata --app-id {Store ID} --external-version-id {Version ID}Example with real values:
Run the command.
In ProxyMan, review the captured requests. Look for a URL like:
Open that request and check the response body. It will include an array of
softwareVersionExternalIdentifiers— these represent the Apple TV versions of the app that are available.You can:
get-version-metadatacommand to inspect each version until you find the one you want, orThe
softwareVersionExternalIdentifiersvalues are theexternal-version-idyou’ll need to download a specific version with IPATool.