Skip to main content
All guides

App teams and anyone printing a download prompt

How to send iPhone and Android users to different app stores from one QR code

Printing two codes labelled iOS and Android asks the reader to identify their own device before they can act. Most will not bother, and the ones who do will occasionally pick wrong.

One code can decide for them. The routing happens when the code is scanned, so the same artwork works for every device and for whatever comes after the current two.

  1. 1

    Create a link with a web fallback as the default

    Start with the destination that should work for everybody — usually your product page. Anything that does not match a more specific rule lands here, so nothing ever dead-ends.

  2. 2

    Add an iOS destination

    Your App Store listing. This fires for iPhone and iPad, and also for macOS, which is deliberate — a Mac user is closer to the Apple ecosystem than to Google Play.

  3. 3

    Add an Android destination

    Your Google Play listing. Between the two rules and the default, every scanner is covered.

  4. 4

    Optionally deep link into the app itself

    If the app is already installed, a custom scheme can open it directly at the right screen, with the store listing as the fallback when it is not.

  5. 5

    Print it and check the split later

    Scan analytics record operating system per scan, so you can see the real iOS-to-Android mix of the people standing in front of your poster — which is often not the market share you assumed.

What this will not do

  • Rules are evaluated in order and the first match wins. If a country or time rule sits above the OS rules, it takes precedence — worth knowing when the routing does something you did not expect.
  • Detection is from the browser's user agent. It is reliable for iOS and Android in practice, but it is an inference, not a certainty.
  • There is no language or region-of-city routing. Country is the finest location grain available.

Tools used in this guide

Questions

What happens on a desktop browser?
It falls through to your default destination, which is why that should be a web page rather than a store link.
Can I add this to a code I already printed?
Yes. Routing is configuration on the destination. A code printed last year can gain OS routing this afternoon and the printed square never changes.
In what order are the rules applied?
Time of day, then location, then A/B split, then operating system, then the default. First match wins, so put the most specific thing you care about highest.
Does the QR code look different?
No. All the logic sits behind one short URL, so the code is the same size and complexity as any other.
Free QR code generatorPricingStart free

Other guides