Our DNA is written in Swift

iOS Versions in the Wild

Apple sends a clear message to us developers: “Stop supporting 3.x”. They say that most loudly by omitting Simulator 3.2 from Xcode 4.1 which I painfully noticed when I wanted to debug a 3.2 bug in a component of mine. I had updated everything to Lion and installed Xcode 4.1 because that’s the first version supporting Lion.

So if you are basing your operations on the most current “stable” versions of the OS and Xcode then you cannot support 3.2 without jumping through some extra hoops. So I did some research to find if anybody is actually still using 3.2. Unfortunately Apple forbids ad networks from collecting and publishing device data because that would also show us info about future iOS devices.

So what is the trend and current status? Read on.

In March Marco Arment published statistics on what devices and iOS versions users of Instapaper 3.0 are on. These numbers a skewed by the sample taken from his users (tech geeks and avid readers), but still are a good sign of things to come:

  • 4.0 and above = 98.2%
  • less than 4.0 = 1.8 %

At about the same time Jesse Collis asked the same question “Is it worth supporting iOS 3 in 2011?” and came to a similar conclusion:

  • Paying customers are more likely to update their iOS version: 94% use 4.x
  • Non-paying customers lag a little more behind: 13% still on 3.x
That was in MARCH.

The most recent data I could find came from German Ad Network Apprupt at the end of June.

Alls these measurements depend on the sample, but even if we take the median of all these measurements we arrive at about 5%. For all intents and purposes we can safely say that iOS 3 is dead, long live iOS 4.

But even iOS 4 has seen many iterations in the past year, so Claus Bloch kindly provided this statistic to let us gauge how willing our users really are in upgrading. Granted the past few releases did not bring any new functionality, but where for the most part security fixes. Apple has finished adding really new stuff to iOS 4 about a year ago and is now obviously concentrating on getting iOS 5 out of the door.

These stats taken from “It’s Your Round”, available on the app store.

At the time of this writing you can see that this shows our users as very anxious to update. More than two thirds of users can be found in distributed amongst the last 3 point releases. As I said those are just security things which most people are not really caring much for: the geolocation history fix, the PDF fix and another one I don’t even recall.


iOS users – paying ones more than those who are broke – are generally updating very quickly, even within the iterations over the current generation of operating system. Anybody who HAS 3.x still is very unlikely to pay for your app anyway.

Do yourself a favor and ditch iOS 3 as soon as possible.

Categories: Apple


  1. All first and 2nd generation iPods and iPhones can either not run iOS 4 or are mega slow doing so. There’s a reason Apple wants developers to ditch 3.x, they want to sell new devices to those early adopters. An uncle of mine has an original iPhone which works perfectly for him since there’s no AT&T 3G in his town. But more and more app he’s using are updated to only work on 4.0 and it’s almost impossible to go back to previous versions. So he just hates Apple and those developers.

  2. Anybody knows what happens when an existing (published in the appstore) app drops support of 3.x in an update? Does it simply not install on the 3.x device or does it install and then crash as soon as a 4.x specific functionality is used?

  3. I think that it would be more interesting to also cross reference your data with the hightest iOS version available for each model of iPhone and iPod Touch. I, for example, have the original iPhone with the most up-to-date iOS version (3.2.1 I think) and I am often purchasing apps.

  4. If the user updates in iTunes on her computer: the new version is downloaded and the old version is moved to the trash. When she syncs her device the old version is removed from her device. One unhappy customer.

    If the user updates in the AppStore app the update won’t install, and the user gets a warning that one of the updates requires a newer iOS version.

  5. BTW, Oliver, these comments are invisible to your readers if they’re not logged in. If you want a lively discussion, repeat visitors and more eyeballs on your ads, you might want to change that. Registering is a painful procedure.

  6. Is it possible to include a version of an iOS app which is compatible with 3.x alongside a separate iOS 4+ codebase within a single binary? Essentially a version where development is halted + the latest greatest version. It would seem a shame to ditch compatibility which once existed, if such a solution is possible, considering iOS apps are generally small in file size.

  7. I know at least four people who are using older devices that are not recommended to be running iOS 4 because they will be too slow (iPod Touch 2nd gen and 3rd gen I think; 3rd gen _can_ use 4.x but net says it’s too slow to use). In three of these four I know they are buying apps and are frustrated that so many require 4.0 and won’t work on their device.

    There are a lot of these older devices out there that are getting handed down. It’s worth considering if you might want to leave the 3.x compatible version of your app available and make the 4.x version a new “flavor” or something so it doesn’t delete the 3.x version from the store.

    Be interesting to know how many devices which are not recommended for 4.x were manufactured and might still be in circulation.

    That said, for new development it makes sense to be 4.x only.

  8. Only theoretically. This would mean that all the symbols you have from the old version would be duplicate and you couldn’t even link your app.

  9. That does not have to do with being registered per se. It’s FlexiCache that only expires the page after a while. Logged in users requests don’t get cached. I have to investigate why it cached the original page without comments for too long.

  10. Dont underestimate the “power” of iOS 3 Users. I just upgraded to XCode 4.1 (due to Lion), and suddenly my last patch release turned out to be incompatible with iOS 3, although base SDK is still set to iOS 3 and no new iOS4+-methods were introduced in the code. The result: Even if maybe only a few (< 100 ) users of my App still use iOS3, ALL of them will complain about this issue in a 1-star-"review" (and of course not in a support-request). This is not what you want from a release where you put in some sweat to make things even better :(.

  11. Great information! This couldn’t come at a better time as I’m deciding whether or not I should support iOS 3-5 or just 4 and 5 for my app. I think I’ll take your advice and ditch 3 on the first update that support 5.

    Would love to see updated statistics about a month after iOS5 enters the wild and see how quickly its adopted.

  12. Looking at the stats for various apps we’ve worked on, it appears that iPad users are somewhat slower to upgrade than iPhone users.

    We currently see about 4% of users running 3.x on iPhones and iPods. Almost all of those are running 3.1.3 (the latest version), so perhaps they’re just not updating to 4.x for performance reasons.

    On the iPad, we’re down to about 6% of users running 3.2. Here’s the trend for the last few months:

    April: 10.6%
    May: 8.7%
    June: 7.9%
    July: 6.8%
    August (so far): 6%

    We introduced an in-app upgrade to a free iPad app in mid-July, and we’ve yet to see a single 3.2 user upgrade. We don’t have compelling reasons to completely drop support for 3.x on existing apps yet, but we’re only targeting 4.x for new apps, and will likely change that to 5.x as soon as it’s released.

  13. Great numbers, thanks!

  14. As far as i remember the transition to iOS 4 it was not possible to set up a binary to use base SDK iOS 4 and at the same time iOS Deployment Target iOS 2.x. So if we go for iOS 5 features, and i believe most of us will do, the decision will already be made for us to drop iOS 3.

  15. It’s perfectly possible to do this. You use a technical trick called “soft linking” and some code to ensure the OS you’re running on supports whatever features you try to use.

    The problem is that it’s a fair amount of extra work when programming and if a feature of your app requires some OS service introduced in, e.g. iOS 4.1, then you’ll have to decide whether to implement a half-baked approximation of that feature on older devices or just drop the feature. It’s not that different from building a web site that has some slick fancy JavaScript-enhanced features but still works without javascript.

    As an aside, realize that all Verizon customers in the US are still stuck on iOS 4.2. There are many apps we can’t install even though we’re “up to date” because it’s easy to publish an app flagged as requiring 4.3.

  16. Thanks for your article. I am iOS Developer and really need to know the iOS stats.

    Thanks again! 🙂

  17. I think it’s incorrect to say “Anybody who HAS 3.x still is very unlikely to pay for your app anyway,” at least in my case. I have paid up to $20 for good apps in the past, and I still buy apps. What don’t need to buy is a new iPod Touch, when my 1st generation one works perfectly well.

    It’s also incorrect to assume that people are on iOS 3 because they are not active upgraders. I’m stuck with iOS 3.1.3, because that’s the most recent update that Apple has provided for my device. (You could say they are not active in replacing their hardware.)

    Given that Apple is slowly crippling iOS 3 support in Xcode and that only 5% of users still have it, as a developer I will stop supporting iOS 3. It’s not worth the effort. Unfortunately for me the only hardware I have for testing iPhone apps is my iPad.

  18. I think it works best if the Base SDK is set to the latest version and the Deployment Target is set to iOS 3.

  19. Well, I’m not going to be a lazy developer so I’m still going to support it for as long as Apple lets me. I still have my old iPod Touch 2G with iOS 3.1.3 as well as my new iPod Touch 4G with iOS 5.0.1 to test on.

    Though, I don’t think Apple tests apps on iOS 3.x devices anymore (even with apps targeting them) because in my app I accidentally missed disabling a small feature that adds an event to the calendar app (which only works for iOS 4+ users) after submitting my app and Apple still approved it.

  20. Unquestionably imagine that that you said. Your favorite
    justification seemed to be on the web the simplest factor to
    understand of. I say to you, I definitely get annoyed at the same time as other people consider concerns that they
    just don’t understand about. You managed to
    hit the nail upon the top and also outlined out the entire thing without having
    side-effects , other people can take a signal. Will
    probably be back to get more. Thank you