Note, August 2023: this method is outdated, for the latest please see this newer blog post.
Change is the only constant. Nowhere is this more visible than on the App Store. Thousands of new apps and games appear every day and existing apps receive regular updates to add features and fix bugs. This will only accelerate further now that the App Store is firing on all cylinders and review times are measured in hours rather than days.
But what if you want to continue to use an old version of an app for your own reasons? Perhaps the old version has a better user interface, or the new version has some bugs? I can remember both of these issues affecting me numerous times over the years. The eBay app is the example that springs to mind.
General consensus of opinion is that the only thing you can do is switch off automatic updates in iOS and avoid updating that particular app manually, which is easier said than done.
There has to be a better way
It’s a little known fact that there is actually a way to install an old version of an app on your iOS device which will prevent it from being checked for updates. Read on to find out how this can be done. This tutorial uses eBay as the example app, but I’ve also carried out this process on Gmail, Instagram, VSCO and more.
You will need:
- good old iTunes,
- the iOS device you want to install it on,
- the USB cable for your iOS device.
- a backup of the old version of the app as an .ipa file on your Mac. You’ll only have this if you use iTunes to sync your iOS device or download app updates. Have a look in your Time Machine or other backups in the following location:
~/Music/iTunes/iTunes Music/Mobile Applications
Warning: as part of this process you will be required to delete the current version of the app that you have installed on your iOS device. So be sure to backup any data from the app that is not stored in the cloud!
eBay introduced a disastrous fourth version of their app back in September 2015. It was a complete rewrite of the app that made it much more cumbersome to use, and was also missing key functionality and information that were present in the previous app. It was, understandably, met with a user revolt. eBay are now up to version 5.0 and it is arguably still not as good as the old version I like to use.
The photo editing app VSCO is another app that has enraged users with an update that destroys the usability of the app. Strangely enough that is also version 5.x and users are also outraged over the change.
Yes again another disaserous version 5.x! This tim it is Gmail, the new version being very similar to the “Inbox by Gmail” app that has been bad and stayed bad for some time now. Gmail v5 is at one-star on the App Store.
To the Time Machine!
Due to the fact I frequently do a manual update of all my apps through iTunes on my Mac, I had a backup of eBay 3.6.1 for iPhone and VCO 4.6.1 sitting in my Time Machine backup on my external drive.
How to install an old app and prevent it from updating
Before we begin, remove the app you want to downgrade from your device by tapping and holding on it. Make sure to backup any data you need from it!
This example uses the eBay app, but applies equally well to VSCO.
- Copy your backup of .ipa somewhere where you can work on it.
- Open the .ipa with Archive Utility to decompress it.
- Expand the folder until you get to the Payload.
- Drop the eBay.app from the Payload folder onto iTunes “My Apps”. It’s the one whose icon has a “no entry” on it.
- If prompted, replace the newer version of the app in iTunes (you can always download the latest version again from the App Store).
- Check that iTunes recognises the app payload (for this to work apps must have been downloaded with an Apple ID that is authorised on this Mac). Don’t worry about the missing app icon, that’s OK.
- Go into your iOS device screen, Apps section, find the app through search and press Install.
- Apply changes to Sync, and you’re done!
“Just let me look at some screenshots to figure this out”. OK!
Steps 1, 2 & 3: Work on a copy of your .ipa backup, extract it, find the payload app.
Steps 4, 5 & 6: Drop the payload app onto iTunes, replace the newer version if prompted, check that the app is listed without an icon.
Step 7: Browse to the apps on your phone, find the app you just added, mark it for install. Step 8: Sync, you’re done!
So how does this work?
What we are doing here is installing the app on the iOS device without the associated app receipt, so the App Store app is not aware the old version is on the device and so will never prompt you to update it.
How do I undo this kind of install?
If you want to get things back to normal, simply delete the app from your iOS device and reinstall a newer version of the app without doing this trick.
The one limitation of this is how long the developer will support the infrastructure that powers the old version of the app. For eBay this hasn’t been a problem to date, but there are no guarantees. Enjoy it whilst it lasts.
Have fun keeping it old school! If you have any questions you as me on twitter @gingerbeardman.