How to make one QR code for both App Store and Google Play
A QR code is an address printed as a picture. To make one code work for iPhone and Android, the address inside it has to choose the store — here is how, and how to print it so it scans.
Why a plain QR code cannot do it
A QR code stores text. When the text is a web address, the phone’s camera opens it. Put an App Store address in the code and Android users who scan it land on a web page with nothing to install; put a Google Play address in it and iPhone users get the same. A code cannot contain two addresses and pick one.
What can pick is the address. If the code holds a short link — setlinks.io/fitpulse — the server behind it sees which phone asked and sends it to that phone’s store. The code stays the same; the decision moves to the moment of the scan.
Static and dynamic codes
- Static: the code contains the final address, such as an App Store link. It never stops working, but it can never change either, and nobody can count its scans.
- Dynamic: the code contains a short link that redirects. Change where the link goes and every printed code follows. Scans can be counted, because each one passes through the link.
A dynamic code depends on the service behind the short link. Pick one that does not put an ad page between the scan and the store, and whose links do not expire when you stop paying for something. SetLinks sends a scan straight to the store, with no page in between.
Make the code
- Create a link with your App Store and Google Play addresses, and AppGallery or RuStore if you have them. Set a fallback for everything else. The guide to finding your store links covers where each address comes from.
- Open the link’s QR code in the dashboard and download it: SVG for print, PNG for screens and documents.
- Test before printing. Scan from the screen with an iPhone camera and an Android camera or Google Lens. Each should land in its own store.
- Print, then leave the code alone. To point it somewhere else later, change the link’s destinations. The code itself never needs to change.
Need a code without an account? The free App Store QR code generator makes a code for each store from your store links, in the browser. Each of those codes opens one store directly, so it cannot be counted or changed later — fine for a slide, less so for 10,000 flyers.
Print it so it scans
- Size. About 2 cm (0.8 in) across is the smallest that scans reliably from a hand’s distance. For a poster, plan on roughly one tenth of the distance people stand from it: two metres away, a 20 cm code.
- Quiet zone. Leave an empty margin around the code, four squares wide. Text or a frame pushed against it is the most common reason a code will not scan.
- Contrast. Dark code on a light background. Inverted colours and low-contrast brand palettes fail on older cameras.
- Vector for print. Send the SVG to the printer. A small PNG enlarged for a banner turns blurry.
- Say what it does. “Scan to get the app” under the code earns more scans than a bare square — people want to know what happens before they point a camera at it.
- Short address beside it. Print
setlinks.io/fitpulseunder the code for people who would rather type.
When a code will not scan
Most codes that fail were fine on screen and broke in production. Check these before blaming the camera:
- A logo in the middle. QR codes tolerate some damage, and a small logo uses up that tolerance. If you add one, keep it small and test on an older phone, not only on the newest one.
- Glossy or curved surfaces. Lamination, bottles and cans reflect light into the camera. Matte finishes and a flat spot for the code help more than a bigger code.
- Too much in the code. A long address makes a denser pattern with smaller squares. A short link keeps the code coarse and easy to read even when it is printed small.
- Colours that look dark but are not. A mid-grey or a bright brand colour can fall below the contrast a camera needs. When in doubt, print in black.
Codes on screens
A code on a website is scanned by people who are on a computer and want the app on their phone. Show it on desktop only, next to the store badges. On a phone, the same link as a button is what works — nobody scans their own screen.
What a scan tells you
Every scan passes through the link, so it is counted: SetLinks marks a visit from the QR code and shows it both inside the link’s total clicks and as its own figure, by day, platform and country. Link-preview bots are not counted. To compare placements — the table tent against the receipt, say — give each its own link and code. The guide to tracking downloads from a QR code walks through it.
Questions
Can one QR code open both the App Store and Google Play?
Yes, when the code holds a link that picks the store at scan time. A code that holds a store address directly can open only that store.
Will the printed code keep working if I change the store link?
Yes. The code holds the SetLinks address, which stays the same. You change where it leads in the dashboard and printed codes follow.
What happens when someone scans it on a computer or an unsupported phone?
They go to the web address you set for computers, or to the link’s fallback page.