Analytics for Mobile App Landing Pages
Your app’s landing page has one job: store clicks. Track outbound store taps, campaign attribution, and page speed per visit.
An app landing page has exactly one conversion, and it happens off-site: the tap on the store badge. Everything else — the screenshots, the feature list, the testimonials — exists to produce that tap. Which makes the analytics setup unusually clean: one outbound event, careful source tagging, and an honest accounting of the attribution wall at the store's door.
The core event: store-badge taps
document.addEventListener('click', (e) => {
const a = e.target.closest('a[href*="apps.apple.com"], a[href*="play.google.com"]');
if (a) window.webanalytics?.track('store_clicked', {
store: a.href.includes('apple') ? 'ios' : 'android',
position: a.dataset.pos || 'unknown',
page: location.pathname,
});
});Store-click rate (taps ÷ visitors) is your page's one true conversion rate; the platform split tells you which badge deserves the prime position, and the position property (CTA discipline) reveals whether the hero badge or the post-screenshots badge does the work.
Sources, with mobile honesty
- App marketing traffic is dominated by in-app browsers (TikTok, Instagram) — tag every campaign and bio link, because referrers from those environments are unreliable.
- Press and podcast mentions get vanity paths (/yourapp.com/tiktok); QR codes on physical media get the redirect pattern.
- Page speed is non-negotiable: this audience is 90%+ mobile on cellular — per-visit load times segmented by source show you what the TikTok browser actually delivers, and a heavy hero video can cost more installs than any copy change recovers.
The attribution wall, stated plainly
Web analytics ends at the store door — the install, the signup, the subscription happen inside Apple's and Google's walls, joined to your web data only through store-provided campaign parameters (Apple's campaign links and Google's UTM passthrough help; neither is complete). Accept the seam: optimize store_clicked per source on the web side, installs-per-store-listing-view on the store side, and resist any vendor claiming to bridge it seamlessly — that bridge is built from fingerprinting, and it is exactly what the platforms (and privacy law) are shutting down. Note for app teams: store-compliance pages like account-deletion URLs belong on your web property too — measure them with the same one tag.