Attribution UTM
Cliquez sur un lien avec ?utm_source=… ; le traceur capture source / medium / campaign lors de la prochaine page vue.
Chaque clic, défilement, changement de route et dimension personnalisée que vous définissez sur cette page arrive dans le rapport demo0001. Ouvrez ce même rapport et vous vous y trouverez.
Cliquez sur n’importe quel bouton — le journal à droite affiche la donnée que vous venez de produire.
Cliquez sur un lien avec ?utm_source=… ; le traceur capture source / medium / campaign lors de la prochaine page vue.
Le SDK détecte automatiquement ?q=… sur n’importe quelle URL et enregistre la requête comme un événement.
Atteignez un chemin volontairement rompu — 404.php signale le lien mort via le traceur.
Essayer un lien rompuLe SDK capture automatiquement les clics vers des hôtes externes et les enregistre comme des événements.
Essayer un lien sortantLes clics sur les extensions de fichiers courantes (pdf/zip/docx/…) sont automatiquement enregistrés comme un événement « téléchargement ».
Essayer un téléchargement .txtcd1-3 définis via tj("cd", 1, "premium") ; rattachés à chaque PV/événement suivant. Idéal pour des groupes A/B ou des segments de niveau.
Ne compte que les secondes où l’onglet est visible ET où une interaction a eu lieu dans les 30 s — le temps d’inactivité est exclu.
Le PerformanceObserver natif mesure LCP / INP / CLS ; les valeurs sont envoyées au moment du pagehide ; les seuils Google sont affichés dans le tableau de bord.
Voir vos Vitalsdemo0001 est une démo publique. Les visites de chacun s’y cumulent — mais vous verrez immédiatement votre impact dans les panneaux appareil / géo / navigateur.
Ouvrir le rapport demo0001Une ligne, quatre méthodes. Toutes asynchrones, jamais bloquantes.
À coller avant </body>. La plus simple / la meilleure compatibilité.
<script async src="https://9ping.dev/hm.min.js"
data-sid="YOUR_SITE_ID"></script>
Chargement dynamique pour les applications JS. Écoute automatiquement hashchange + History API — pas de PV virtuelle manuelle.
// React/Vue/Vite/Next SPA
(function () {
var s = document.createElement('script');
s.async = true; s.src = 'https://9ping.dev/hm.min.js';
s.dataset.sid = 'YOUR_SITE_ID';
document.head.appendChild(s);
})();
Capte les visiteurs dont le JS est désactivé. À combiner avec l’une des deux méthodes ci-dessus.
<noscript>
<img src="https://9ping.dev/collect.php?sid=YOUR_SITE_ID&type=pv"
width="1" height="1" style="display:none" alt="">
</noscript>
Appelez tj() à tout moment après le chargement — un seul utilitaire pour les boutons / soumissions de formulaire / étapes de tunnel.
// 自定义事件
tj('event', 'signup', 'submit', 'pricing-page');
// 自定义维度(跟随后续 PV/事件一同上报)
tj('cd', 1, 'premium');
tj('cd', 2, 'card');
Cette page est équipée de notre traceur (site_id = demo0001 — identique à celui que le tableau de bord vous fournit). Essayez ceci :
Cliquez sur l’onglet « Produits » — la barre d’adresse affiche #/page2, le titre change, et une nouvelle PV virtuelle apparaît à droite. C’est le suivi de page en application monopage (SPA).
Astuce : ouvrez quelques fenêtres de navigation privée — le compteur UV et en ligne distinguera les différents visiteurs.
PV virtuelle déclenchée — changer de route par hash, c’est exactement ainsi que les applications React/Vue changent de page. La nouvelle PV est à droite.
$129
Réduction de bruit active · 38 h d’autonomie · multipoint
$219
Verre saphir · fréquence cardiaque et SpO₂ · étanche à 50 m
$89
Format 75 % personnalisé · switches hot-swap
Chaque clic « Ajouter au panier » est enregistré comme un événement personnalisé (category=ecommerce, action=add_to_cart, label=SKU du produit).
Ceci illustre la dernière étape d’un tunnel de conversion. Le formulaire n’est jamais réellement soumis, mais le focus du champ et le clic sur « Passer commande » sont tous deux des événements enregistrables.