π 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 number
for you. - If you still can't find the Build Number, see this.
- Grab the ipatool binary from ipatool realeases. Use
...windows-arm64.tar.gz
for ARM Windows,...windows-amd64.tar.gz
for 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-id
flag, 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.gz
for Apple silicon Mac,...macos-amd64.tar.gz
for 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-id
flag, 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.
I'm on a Windows PC and it is asking me to enter passphrase to unlock "C:\Users\m*******n\.ipatool" (this is separate from your Apple ID password):. However I don't have never setup a passphrase. I got the password and 2FA code done correctly, but can't get past the passphrase. Please advise