🔗onestore.link

Étude originale

Ce que devient un lien d'app ouvert dans Instagram et TikTok : 74,000 redirections mesurées

Des préchargements que personne ne voit, une webview TikTok qui refuse le store, et un App Store qui s'ouvre par-dessus la page : ce que montrent nos logs de redirection.

Publié le · Adrien De Coster

Réponse courte

Sur 74,713 arrivées Android depuis des navigateurs in-app en 30 jours, 9.1% étaient des pages qu'Instagram ou Facebook avait chargées en arrière-plan puis jetées environ 30 secondes plus tard sans que personne ne les voie. Dans TikTok sur Android, l'ouverture du Play Store dépend de la webview qu'utilise TikTok : un format de user-agent a atteint le store dans 85% des sessions, deux autres dans 12–14%, sur les mêmes liens les mêmes jours. Sur iOS, Instagram et Facebook ouvrent l'App Store par-dessus le navigateur in-app : la page ne passe jamais en arrière-plan, et un taux d'ouverture du store mesuré depuis la page affiche 13–56% alors que le passage au store a fonctionné.

Ces chiffres viennent des logs de redirection d'un service de liens intelligents : une seule URL qui envoie un téléphone vers l'App Store ou Google Play. Chaque fois qu'un lien est ouvert dans une app sociale, nous servons une petite page qui passe le visiteur au store, et cette page rapporte ce qui s'est passé ensuite. Voici ce que disent ces rapports, comment nous les avons mesurés, et où s'arrête la mesure.

Les données

PériodeQuoiVolume
30 jours jusqu'au 2026-10-12Arrivées Android depuis des navigateurs in-app, reconstruction au niveau de la session74,713
2026-09-27 → 2026-10-26Chargements de page in-app, toutes plateformes109,253
2026-10-20 → 2026-10-26Idem, reconstruits en sessions pour les tableaux d'entonnoir30,535
2026-10-16 → 2026-10-26Préchargements classés par la page elle-même1,679
90 jours jusqu'au 2026-10-15, puis 30 jours jusqu'au 2026-10-26TikTok sur Android, sessions par format de webview73 + 1,247
Chargements de page in-app, 30 jours jusqu'au 2026-10-26
Navigateur in-appAndroidiOS
Instagram50,16116,675
Facebook27,9119,441
TikTok3,7551,219
Navigateur classique (simple 302, pour comparaison)24,18524,627

Deux choses ressortent avant toute analyse. Les apps de Meta envoient bien plus de trafic que TikTok. Et sur Android, plus des trois quarts des arrivées passent par un navigateur in-app, pas par Chrome.

Comment la page rapporte ce qui s'est passé

Quand un lien est ouvert dans un navigateur in-app, la page fait trois choses et envoie une balise pour chacune :

Une page web ne peut pas voir l'App Store ni le Play Store. Tout ce qui suit est déduit de ces trois signaux, et la section des limites dit où cette déduction ne tient plus.

Constat 1 : environ 1 arrivée Meta Android sur 11 est un préchargement que personne n'a vu

Sur les 30 jours jusqu'au 12 octobre, un groupe net de sessions Android s'est comporté comme aucune visite humaine ne le pourrait : la page s'est chargée, le minuteur de passage au store n'a jamais tourné, et la page a été détruite 29 à 31 secondes plus tard. Pas de auto, pas de stuck, aucun appui. Rien de comparable sur iOS.

C'est la signature du navigateur in-app d'Instagram et de Facebook qui précharge un lien présent dans un fil, le garde masqué, puis le jette quand l'utilisateur continue de défiler. La page a exécuté notre JavaScript, donc l'arrivée a été enregistrée. Personne ne l'a jamais regardée.

30 jours jusqu'au 2026-10-12
PopulationArrivéesPréchargementsPart
Toutes les arrivées, toutes plateformes139,1996,7904.9%
Android95,6486,7907.1%
Android in-app74,7136,7909.1%
Android in-app, hors le plus gros lien——4.9%
Le lien le plus touché35,3374,86413.8%

Nous avons confronté le critère à des sessions clairement humaines : 0 sur 17,606 sessions où le store s'est ouvert 2–3 s après le passage au store y correspondaient, et 0 sur 244 sessions où quelqu'un a appuyé sur le bouton du store.

La part varie d'une semaine à l'autre : 6.8% la dernière semaine de cette période, puis 8.8%, 10.6% et 10.0% les semaines précédentes. Elle se concentre aussi là où tournent des campagnes Instagram payantes : 72% des préchargements de la période venaient d'un seul lien derrière une grosse campagne Instagram.

Depuis le 16 octobre, la page fait elle-même ce classement à l'exécution : elle signale un préchargement au lieu d'une sortie quand elle meurt après au moins 20 s sans avoir jamais été affichée. Voici ce qu'elle a détecté depuis :

2026-10-16 → 2026-10-26
Navigateur in-appChargements de pagePréchargementsPart
Instagram, Android15,1001,1527.6%
Facebook, Android19,8304772.4%
TikTok, Android3,64810.03%
Instagram, iOS5,965450.8%
Facebook, iOS6,13440.07%

Ce comptage à l'exécution est un plancher. Un préchargement qui meurt sans exécuter le moindre script ne laisse aucune balise, et la règle à l'exécution est plus stricte que la reconstruction historique.

Pourquoi c'est important. Si vous comptez les clics à votre redirection, environ un « clic » Instagram Android sur 13 n'a jamais été vu par une personne. Votre ratio clics/installations pour ce canal paraît pire qu'il ne l'est, et un tableau de bord de campagne construit sur les hits bruts de redirection surestime la portée d'à peu près autant.

Constat 2 : TikTok refuse le Play Store selon la webview qu'il utilise

Dans TikTok sur Android, une partie des visiteurs ne quittent jamais la page : le passage au store se déclenche et TikTok affiche sa propre boîte de dialogue (« The action cannot be completed »). Cela n'arrive pas sur tous les liens, et pendant des semaines on a cru que cela dépendait du lien. Ce n'est pas le cas. Cela dépend du navigateur in-app que TikTok utilise pour ce visiteur, et son user-agent le trahit :

FormatForme du user-agent
A… Chrome/151 Mobile Safari/537.36 musical_ly_46.8.3
BVersion/4.0 … musical_ly_2024509000 JsSdk/1.0 … BytedanceWebview
CVersion/4.0 … musical_ly_2024701040 AppName/musical_ly ByteLocale/…

Une session compte comme réussie quand le passage au store s'est déclenché et que la page est passée masquée, et comme un échec quand la carte de secours s'est affichée. Le taux vaut réussites / (réussites + échecs), par appareil et par jour :

Format90 jours jusqu'au 2026-10-1530 jours, 2026-09-27 → 10-26
A23 / 26 (88%)827 / 969 (85%)
B0 / 17 (0%)34 / 245 (14%)
C5 / 30 (17%)4 / 33 (12%)

La comparaison qui tranche garde le lien et le jour constants, puisque le mélange des formats change d'une semaine à l'autre :

Même lien, mêmes jours (30 jours)
LienFormat AFormat B
Lien 1560 / 674 (83%)32 / 192 (17%)
Lien 2257 / 285 (90%)2 / 47 (4%)

Même lien, même code de redirection, même jour : une webview laisse le store s'ouvrir, l'autre la plupart du temps non. Les domaines personnalisés n'ont fait aucune différence dans les données sur 90 jours. TikTok ne documente ni cette boîte de dialogue, ni ce qui la déclenche, ni quels utilisateurs reçoivent quelle webview : la répartition par user-agent est tout ce qu'on a.

Pourquoi c'est important. Aucune forme d'URL n'y change rien : la sortie par intent:// et une simple URL https://play.google.com reçoivent le même refus. Ce que vous pouvez faire, c'est ne pas cacher la sortie : dans TikTok, affichez tout de suite les instructions « ouvrir dans le navigateur » et un bouton de copie, au lieu de les afficher après un délai.

Constat 3 : sur iOS, l'App Store s'ouvre par-dessus le navigateur in-app

Sur Android, après le passage au store, la page passe masquée dans la plupart des sessions, en général 1 à 3 secondes plus tard. Sur iOS dans Instagram et Facebook, souvent non, alors que le passage au store s'est déclenché dans presque toutes les sessions :

7 jours, 2026-10-20 → 10-26. Les colonnes après « Passage déclenché » sont des parts des sessions où il s'est déclenché ; une session peut être encore visible à 2.2 s et passer masquée plus tard.
Navigateur in-appChargements de pagePassage déclenchéPassée masquée…en moins de 4 sVisible à 2.2 s
Instagram, Android7,19077.5%90.0%75.9%47.6%
Facebook, Android13,60072.4%73.8%39.6%77.8%
TikTok, Android2,92047.1%85.2%79.5%7.6%
Instagram, iOS2,88194.6%55.9%41.7%64.2%
Facebook, iOS3,07887.0%13.1%7.9%65.6%
TikTok, iOS86693.8%50.5%23.8%75.2%

Si deux tiers des visiteurs iOS étaient vraiment bloqués devant une carte de secours visible avec un bouton « Ouvrir l'App Store », bon nombre appuieraient dessus. Ce n'est pas le cas : 0.9% des chargements de page Instagram iOS et 0.4% des chargements Facebook iOS appuient sur le bouton. Et aucune version d'iOS ne « fonctionne » :

Les trois apps, 7 jours
Version majeure d'iOSSessions avec passage au storePage passée masquée
1612724.4%
1710633.0%
1895833.3%
263,71139.3%
271,24934.3%

L'explication qui colle est que, dans Instagram et Facebook sur iOS, l'App Store apparaît par-dessus le navigateur in-app sans l'envoyer en arrière-plan. La page reste « visible » tout du long, donc visibilitychange et pagehide ne se déclenchent jamais, alors que le visiteur a l'App Store sous les yeux.

Pourquoi c'est important. Toute métrique qui déduit l'ouverture du store du fait que la page quitte l'écran est fausse sur iOS. Nous montrions à nos clients un pourcentage de « portée store » construit exactement ainsi, et il disait à 10 clients payants sur 12 que des liens qui fonctionnaient étaient cassés. Nous l'avons retiré. Sur iOS, le signal d'installation fiable est côté store : les rapports de campagne App Store Connect, avec un provider token (pt) et un campaign token (ct) sur l'URL App Store.

Ce que nous avons mesuré en chemin

Méthode

Limites

Que faire

  1. Lancez le passage au store dès le chargement. Une page qui attend un appui perd la plupart des visiteurs in-app. Gardez le bouton manuel comme solution de secours, affiché seulement si le passage au store a visiblement échoué.
  2. Sur Android, utilisez `intent://` avec `S.browser_fallback_url`. Une URL https://play.google.com dans une webview ouvre le site web du Play Store, qui ne peut rien installer sans connexion.
  3. Laissez du temps à un store lent. Attendez au moins 3 s avant de conclure que le passage au store a échoué, et comptez quand même une sortie tardive.
  4. Dans TikTok, montrez la sortie tout de suite : « ··· → Ouvrir dans le navigateur » et un bouton pour copier le lien. Aucun changement d'URL ne fait disparaître le refus de TikTok.
  5. Ne comptez pas les préchargements Meta comme des clics. Si vous comptez les clics depuis une redirection, attendez-vous à ce que 2–9% des arrivées Instagram et Facebook sur Android soient des pages que personne n'a vues.
  6. Mesurez les installations côté store, avec des liens de campagne App Store Connect (pt + ct) sur iOS et le Play Install Referrer sur Android, pas avec des événements de page.

Nous développons onestore.link, qui fait ces six choses par défaut pour chaque lien, et les données ci-dessus viennent de ses logs de redirection.

Questions et réponses

Quel pourcentage des clics sur les liens Instagram sur Android sont des préchargements ?

Sur 30 jours jusqu'au 2026-10-12, 9.1% des arrivées Android depuis des navigateurs in-app (Instagram et Facebook) étaient des pages que l'app avait chargées en arrière-plan puis jetées environ 30 secondes plus tard, sans être vues. Depuis le 2026-10-16, la vérification à l'exécution de la page elle-même en détecte 7.6% sur Instagram Android et 2.4% sur Facebook Android, comme plancher. Sur iOS, c'est moins de 1%.

Pourquoi le Play Store ne s'ouvre-t-il pas depuis le navigateur in-app de TikTok ?

L'app Android de TikTok utilise plusieurs navigateurs in-app. Dans l'un (une version musical_ly_ à points et pas de Version/4.0 dans le user-agent), 85% des sessions ont atteint le Play Store sur 30 jours. Dans deux autres (Version/4.0 avec JsSdk/BytedanceWebview, ou avec AppName/musical_ly), seulement 12–14%, sur les mêmes liens et les mêmes jours. C'est TikTok qui refuse le passage au store, quelle que soit la forme de l'URL.

Une page web peut-elle savoir que l'App Store s'est ouvert sur iOS ?

Pas dans Instagram ni Facebook. L'App Store s'ouvre par-dessus le navigateur in-app, donc la page ne devient jamais masquée et visibilitychange ne se déclenche pas. Sur 7 jours, seulement 13% (Facebook) à 56% (Instagram) des passages au store sur iOS ont été suivis du masquage de la page, et moins de 1% des visiteurs ont appuyé sur le bouton de secours. Les rapports de campagne App Store Connect sont le signal fiable.

Combien de temps met le Play Store à s'ouvrir depuis un navigateur in-app ?

Sur Android, la page passe masquée 2–3 secondes après le passage au store dans la plupart des sessions réussies, et jusqu'à 8 secondes plus tard sur les téléphones plus lents. Une solution de secours affichée après 2 secondes apparaît avant le store dans beaucoup de sessions qui allaient réussir.

À quelle fréquence une redirection vers un store échoue-t-elle vraiment dans Instagram ?

Sur 7,357 sessions Instagram Android reconstruites, le schéma d'un vrai échec (passage au store déclenché, puis rien, et le visiteur rouvre le lien) représentait 1.9%. La plupart des échecs apparents dans les données brutes d'entonnoir sont des artefacts de mesure : balises perdues, store lent, ou préchargements.

Un domaine personnalisé change-t-il la façon dont TikTok traite un lien ?

Non. Sur 90 jours, les liens avec et sans domaine personnalisé ont été refusés de la même manière. Ce qui décide, c'est le navigateur in-app que TikTok utilise pour ce visiteur.

Explorer plus