Mobile Apps

Where Are Your App Downloads Coming From? A Café Owner's Guide

By The Tany Team 10 min read

You launched a branded ordering app. Downloads are trickling in. The obvious question — which of the things I’m doing is actually causing them? — turns out to be surprisingly hard to answer, because the two dashboards that hold the answer use different vocabulary, different maths, and different rules about what they will show you at all.

This guide translates both. It covers what each metric really means, what traffic sources each store reports, how to tag your own links so a counter QR code shows up as a line in a report, and why your numbers will never reconcile between the two platforms.

The metrics that matter, defined properly

Start with Apple, because its terms are the ones most often misread. These are App Store Connect’s own definitions:

MetricWhat Apple actually counts
ImpressionsTimes your app was viewed on the Today, Games, Apps, and Search tabs for more than one second. Includes product page views.
Product Page ViewsTimes your product page was viewed, including pages loaded by other apps via StoreKit.
Conversion RateTotal downloads and pre-orders divided by unique device impressions — not raw impressions.
First-Time DownloadsFirst-time downloads on a device.
RedownloadsRedownloads via the redownload button. Excludes auto-updates and device restores.
Total DownloadsFirst-time downloads plus redownloads.
InstallationsEvery completed install, including redownloads on the same device, installs across multiple devices on one Apple Account, and Family Sharing.
SessionsTimes the app was used for at least two seconds. Returning from the background counts as a new session.
Active DevicesDevices with at least one session in the period.
RetentionPercentage of active devices that installed on a given day and opened the app a set number of days later. People who install and never open are excluded from both sides of the fraction.

Two of those definitions do real work. Conversion rate uses unique device impressions in the denominator, so it is not the naive downloads-divided-by-impressions figure. And retention excludes never-openers entirely — which flatters your retention chart and hides a genuine problem, since a customer who downloads and never opens is a customer you lost at the worst possible moment. Track first-open separately.

Google Play uses a different frame, and this is where reconciliation dies:

  • Store listing visitors — users who visited your listing and did not already have your app installed on any of their devices.
  • Store listing acquisitions — users who visited and installed, who did not have it on any other device at the time.
  • Click-through rate — the percentage of visitors who clicked Install, Open, or Pre-register.
  • First-time installers — unique users who installed a set number of days after visiting the listing.
  • Retained installers — users who kept the app on at least one device for the period shown. Google is explicit that this “doesn’t mean that the app was opened.”

Google’s own documentation makes the comparison for you: Google Ads counts all install events, including reinstalls and installs on multiple devices, while Play Console tracks only first-time unique installations. Apple counts devices and downloads; Google counts users who didn’t already have it. Different denominators, different answers, both correct.

Where the stores say your downloads came from

Both platforms publish a source breakdown. Apple’s categories, verbatim from its documentation:

  • App Store search — found via search. Includes ads in search results.
  • App Store browse — found while browsing Today, Games, or Apps.
  • App referrer — tapped a link inside another app, including StoreKit-loaded pages and Apple apps such as Messages. Not Safari.
  • Web referrer — tapped a link from a website. On a redirect chain in Safari, Apple records the last URL in the chain.
  • Institutional Purchase — via Apple Business Manager or Apple School Manager.
  • App Clip — a download that followed tapping a link in your App Clip.
  • Unavailable — gift card, promo code, or MDM downloads, and anything before April 15, 2017.

That web referrer rule has a sharp edge worth internalising: if you run your QR codes through a link shortener or your own redirect, Apple credits the last hop, not the original source. Every “unknown” you have ever seen in a web referrer report probably started life as a shortened link.

Google Play’s grouping differs — and inconveniently, Google uses two groupings in two places. In the Store performance report you get Google Play search, Google Play explore (browsing categories and recommendations, excluding search and ads), and Ads and referrals. On the Grow overview you instead get Google Play explore, Paid and direct, and Not attributed. Same underlying reality, two vocabularies. Know which page you are reading before you quote a number to anyone.

This is the part most operators skip, and it is the difference between “we got 40 downloads” and “the table tents got 40 downloads.”

On Apple, use campaign links. Apple supports exactly three parameters: pt (provider token), ct (campaign token), and mt (media type token). Apple’s own example takes the form:

https://apps.apple.com/app/apple-store/id123456789?pt=123456&ct=test1234&mt=8

The campaign token allows up to 30 alphanumeric characters and spaces. Give each physical touchpoint its own value — counter-qr, receipt, table-tent, instagram-bio — and App Store Connect will report impressions, product page views, downloads, usage, and sales per campaign, sliceable by territory and device.

Two constraints to plan around. The attribution window is 24 hours, and where a customer clicks several links, only the most recent gets credit for subsequent sales. And Apple only surfaces a campaign after at least 24 hours and at least five first-time downloads from individual users.

On Google Play, use UTM parametersutm_source, utm_medium, and utm_campaign at minimum. Values are case sensitive, so utm_source=google and utm_source=Google are two different sources and will split your data if you are sloppy. Play Console’s conversion analysis, under Grow users → Store performance, lets you filter by UTM source and campaign.

Note the asymmetry: Apple does not document any support for UTM parameters on App Store links. Use ct tokens for Apple and UTMs for Google. One naming convention, two syntaxes — write your values down in a spreadsheet the day you start, because renaming them later orphans your history.

Custom pages: one landing page per channel

Both stores let you point different audiences at different versions of your listing, which is both a conversion tool and an attribution tool.

  • Apple custom product pages — up to 70 per app, each with its own automatically generated unique URL. Per-page metrics include product page views, total downloads, and conversion rate, appearing once the page has at least five first-time downloads.
  • Google Play custom store listings — up to 50 per app, linked with a &listing= parameter on your Play URL, and targetable by user behaviour, country, ads traffic, pre-registration, search keywords, or custom audiences. Each country can be targeted by only one custom listing at a time.

The café use case is concrete: make one custom page whose screenshots lead with the loyalty card and the words “Skip the line” for the QR code on your counter, and a different one for Instagram. Then compare conversion rates. That is a sharper experiment than most cafés ever run, and it costs nothing but the screenshots. If your listing itself needs work first, start with app store optimization for a restaurant or café app.

Why your dashboards look empty (and when to worry)

Before you conclude a channel failed, check whether the platform is simply refusing to tell you.

  • Apple detailed reports omit rows with fewer than five users or five devices.
  • A campaign needs 24 hours and five first-time downloads from individual users to appear.
  • A custom product page needs five first-time downloads to appear.
  • Apple data for a given day is complete two days after the reporting date — never judge yesterday.
  • Play data refreshes daily on Pacific Time, and Google warns that acquisition reports track activity occurring after the end of your date range, so recent figures keep drifting upward.

For a single-location café app, five downloads from one specific campaign can take a fortnight. Blank rows in week one are the privacy threshold, not a broken QR code. Give any channel test at least 30 days before you call it.

A related honesty check: downloads are not the goal. Downloads that become second orders are. If your install numbers look fine and your repeat rate does not, the problem is downstream of everything in this article — see how to get customers to actually download and use your restaurant app.

An operator’s monthly review, in fifteen minutes

You do not need a dashboard habit. You need one calendar reminder.

  1. Pull last month’s first-time downloads from both stores. One number each.
  2. Read the source split. Is growth coming from store search (your listing is working) or from your own referrals (your marketing is working)? Those imply completely different next actions.
  3. Check conversion rate, not just downloads. A low rate with high impressions is a listing problem — screenshots and the first two lines of your description. A high rate with low impressions is a discovery problem — you need more people looking.
  4. Compare tagged campaigns. Which physical touchpoint is producing? Kill the one that isn’t and reprint the one that is.
  5. Look at retention alongside installs. Remember Apple excludes never-openers from retention, so pair it with a first-order number from your own ordering data.
  6. Write one sentence in a notes file about what you changed this month, so next month’s numbers have context.

That is it. Six steps, once a month, and you will know more about your app’s acquisition than most multi-unit chains do.

The wider point

Analytics only pays off when there is something to attribute. The channels that reliably produce café app downloads are unglamorous and physical: the QR code by the till, the line on the receipt, the staff member who says “we have an app, it’s faster” while handing over a flat white. The dashboards exist to tell you which of those is pulling its weight. If you are still deciding whether to run QR codes at all, we cover the mechanics in QR code ordering for cafés.

And before you get to any of this, the app has to ship — which has its own rulebook, covered in why Apple and Google reject restaurant apps.

If you would rather have the app, the ordering, and the loyalty running without becoming an analytics specialist, Tany builds branded iOS and Android ordering apps on top of your existing Square POS — loyalty, eGift cards, push notifications, and an operator dashboard — at $99 CAD/month per location.

Measure what you can control. Tag the links you print. Ignore the rest.

Sources

Frequently asked questions

Why don't my App Store and Google Play numbers match?
Because they measure different things by design. Apple's conversion rate is total downloads and pre-orders divided by unique device impressions, and it counts first-time downloads plus redownloads separately. Google Play's acquisition reports count users who did not already have your app installed on any of their devices, not install events. Google's own documentation contrasts this with Google Ads, which counts all install events including reinstalls. A gap between the two is normal, not a tracking failure.
How do I tell whether the QR code on my counter is producing downloads?
Tag the link. On Apple, use a campaign link with the pt, ct, and mt parameters — for example a ct value of counter-qr. On Google Play, add UTM parameters such as utm_source and utm_campaign, which you can then filter by in Play Console's conversion analysis. Note that Apple only reports a campaign after at least 24 hours and at least five first-time downloads from individual users, so a small café may see nothing for the first week or two.
Do UTM parameters work on App Store links?
Apple's campaign link documentation makes no reference to UTM parameters. Apple's system uses three of its own tokens: pt for the provider token, ct for the campaign token, and mt for the media type token. If you want App Store campaign reporting, use a ct campaign token rather than assuming your UTM tags will appear in App Store Connect.
Why is my analytics dashboard showing blank rows?
Privacy thresholds. Apple's detailed reports omit rows with data from fewer than five users or five devices, a campaign only appears after at least five first-time downloads from individual users, and a custom product page appears once it has at least five first-time downloads. For a single-location café app doing modest volume, empty rows are usually the threshold at work, not a broken link.
How current is the data in each dashboard?
Apple states that data for a given day is considered complete two days after the reporting date, so do not judge yesterday. Google Play's acquisition and retention data is based on Pacific Time and refreshes daily, and Google warns that the acquisition reports track user activity that can happen after the end of your date range, meaning recent numbers keep moving for a while.