TL;DR, Réponse rapide
10 min de lectureUn diagramme de Sankey dessine le flux sous forme de bandes dont la largeur est proportionnelle à la quantité, avec des nœuds pour les étapes et des liens pour le mouvement entre elles. La règle qui le sépare de tout autre graphique est la conservation : d3-sankey, la mise en page dont descend presque toute implémentation, calcule `node.value` comme la somme de `link.value` pour les liens entrants du nœud, donc la largeur en entrée égale la largeur en sortie sauf déclaration contraire. Cette règle fixe aussi les limites. d3-sankey gère le flux dirigé "in an acyclic network", et les vrais parcours utilisateurs bouclent. La documentation de Google se contredit ici : Google Charts dit que Google Analytics utilise des Sankey pour le trafic de page à page, tandis que la page d'aide GA4 appelle l'exploration de parcours un arbre.
Qu'est-ce qu'un diagramme de Sankey ?
Tout diagramme de Sankey obéit à une règle qu'aucun autre graphique n'impose : la quantité qui entre dans un nœud est égale à celle qui en sort, donc la largeur des bandes est conservée d'un bout à l'autre de l'image. La documentation graphique de Google en donne la définition simple, à savoir qu'un Sankey est "a visualization used to depict a flow from one set of values to another", où "the things being connected are called nodes and the connections are called links".
C'est toute la grammaire. Les nœuds sont des étapes, des catégories ou des pages. Les liens sont le mouvement entre eux. La largeur de chaque lien est proportionnelle au nombre de personnes qui l'empruntent, et la hauteur de chaque nœud est proportionnelle au total qui le traverse.
Le nom vient du capitaine Sankey, qui représentait le rendement des machines à vapeur avec des flèches dont la largeur était proportionnelle à la perte de chaleur. La comptabilité de l'énergie explique pourquoi la règle de conservation est intégrée d'office : la chaleur qui entre dans une machine doit aller quelque part, et le schéma a été construit pour montrer où.
En quoi la règle de conservation diffère-t-elle des autres graphiques ?
Un graphique en barres laisse chaque barre indépendante. Un Sankey, non.
L'énoncé le plus clair se trouve dans le contrat d'API de d3-sankey, la mise en page dont le code Sankey de Google lui-même est dérivé. Sa documentation définit la valeur d'un nœud ainsi :
node.value - the node's value; this is the sum of link.value
for the node's incoming links, or node.fixedValue
if definedDeux conséquences en découlent directement. D'abord, link.width est proportionnelle à link.value et node.y1 - node.y0 est proportionnelle à node.value, donc vous ne pouvez pas gonfler une bande sans en rétrécir une autre. Ensuite, si vos données ne s'équilibrent pas, la mise en page ne vous avertit pas. Elle recalcule le nœud à partir des liens que vous avez fournis et dessine une image cohérente d'un jeu de données incohérent.
C'est pourquoi l'abandon doit être modélisé explicitement. Si 1,000 sessions entrent sur une page panier et que 600 continuent vers le paiement, un Sankey avec un seul lien sortant de 600 redessinera silencieusement le nœud panier comme un nœud de 600 unités. Les 400 qui sont parties ne sont pas montrées comme une perte, elles sont montrées comme n'ayant jamais existé. Il faut ajouter un nœud de sortie portant 400 pour que l'image dise la vérité.
L'autre contrainte structurelle figure dans la première ligne de la documentation de d3-sankey : elle visualise "the directed flow between nodes in an acyclic network". Acyclique signifie sans boucle. Les parcours utilisateurs bouclent en permanence.

- Le nœud panier se redessine à 600 unités
- Les 400 sessions parties disparaissent de l'image
- Les largeurs restent équilibrées, donc rien ne semble faux
- Le nœud panier reste à 1 000 sessions
- Le lien vers le paiement porte 600, le lien de sortie porte 400
- Les largeurs s'équilibrent et correspondent à la réalité
Où un Sankey aide-t-il en analytics ?
Là où la question porte sur les embranchements, et là où les branches comptent autant que le tronc.
Un entonnoir répond bien à une seule question : combien ont survécu à chaque étape, dans un ordre fixe que vous avez défini à l'avance. Un Sankey en répond à une autre : où tout le monde est réellement allé. Quatre cas où c'est la meilleure question :
- Source de trafic vers page d'atterrissage vers résultat. Un entonnoir réduit cela à un taux de conversion par canal. Un Sankey montre qu'un canal se concentre sur une seule page d'atterrissage tandis qu'un autre se disperse sur douze, ce qui change ce que vous corrigez.
- Paiements à parcours multiples. Le paiement invité, le paiement avec compte et le paiement express sont trois branches, pas trois étapes. Un Sankey les garde séparées jusqu'au bout.
- Recherche vers résultat vers action. Type de requête à gauche, catégorie de résultat au milieu, action à droite, avec la bande sans action dessinée en pleine largeur au lieu d'être omise.
- Migration de plan ou de catégorie. De quel plan vient chaque montée en gamme, vers lequel va chaque descente, le tout dans une seule image.
La propriété commune est le mouvement de plusieurs vers plusieurs. La documentation de Google dit la même chose : les Sankey conviennent le mieux à "a many-to-many mapping between two domains" ou à "multiple paths through a set of stages". Là où le mouvement est un à un et ordonné, une analyse d'entonnoir porte la même information avec moins d'encre.
Où un Sankey induit-il en erreur ?
De quatre manières précises, qui viennent toutes de la rencontre entre la règle de conservation et des données réelles désordonnées.
Les boucles sont aplaties en largeur. Parce que la mise en page exige un graphe acyclique, un visiteur qui passe par accueil, produit, accueil, produit génère deux nœuds accueil distincts à deux étapes distinctes. La page produit ressemble à deux destinations séparées et la même page apparaît deux fois dans une seule image. Rien n'est faux dans les chiffres. La forme suggère de l'exploration là où la réalité est une personne qui fait des allers-retours.
La troncature casse l'arithmétique. Les rapports de parcours plafonnent le nombre de nœuds affichés par étape. L'exploration de parcours de GA4 montre les 5 premiers nœuds par défaut, permet d'étendre à 20 et regroupe tout le reste dans un nœud "Others". Dès qu'une queue est repliée dans "Others" ou supprimée, les largeurs cessent de représenter la population, et la bande la plus large à l'étape quatre est la plus large parmi les survivants plutôt que la plus large en absolu.
Tableau de bord en temps réel
Suivi des objectifs
Suivi sans cookies
Les sorties sont invisibles tant que vous ne les construisez pas. C'est le même échec que l'exemple du panier ci-dessus, et c'est la raison la plus fréquente pour laquelle un Sankey paraît plus sain que l'activité réelle. Chaque étape a besoin d'un lien de sortie explicite, sinon l'image se renormalise discrètement autour de ceux qui ont continué. Recoupez les largeurs avec votre taux de drop-off avant de montrer le schéma à qui que ce soit.
La position horizontale est un ordre, pas un temps. Les colonnes sont des étapes. Un écart de trois secondes et un écart de trois jours occupent la même distance. Un parcours qui semble fluide dans un Sankey peut contenir un arrêt de deux jours que la mise en page n'a aucun moyen d'exprimer.
Quels outils d'analytics en affichent un ?
Moins que la popularité du terme ne le laisse penser, et la documentation de Google se contredit sur ce point précis.
| Outil | Ce qu'il affiche | Ce que dit sa propre documentation |
|---|---|---|
| Google Analytics 4 | Exploration de parcours | "Explore your user journeys in a tree graph." Les 5 premiers nœuds par étape par défaut, extensible à 20, le reste regroupé dans "Others" |
| Google Charts | Type de graphique Sankey | "A sankey diagram is a visualization used to depict a flow from one set of values to another." Rendu en SVG ou VML ; le code de mise en page "is derived from D3's sankey layout code" |
| Matomo | Users Flow, un plugin payant | "Shows navigation paths for up to 10 interaction steps and more steps can be added optionally", avec "over 100 pages" disponibles par étape d'interaction |
| PostHog | Insight User paths | "Each step along the path is a page that the user viewed, and the horizontal bars correspond to a user navigating from one page to another." La documentation n'emploie pas le mot sankey |
| d3-sankey | La mise en page elle-même | "Sankey diagrams visualize the directed flow between nodes in an acyclic network." Valeurs par défaut : nodeWidth 24, nodePadding 8, iterations 6 |
La contradiction mérite d'être lue deux fois. La page Sankey de Google Charts prend Google Analytics comme exemple d'usage du type de graphique, en disant que "Google Analytics uses sankeys to show how traffic flows from pages to other pages on your web site". La page d'aide GA4 sur l'exploration de parcours décrit la même fonctionnalité comme un arbre. Un arbre et un Sankey ne sont pas le même objet : dans un arbre, chaque nœud a exactement un parent, donc les flux se divisent mais ne se rejoignent jamais. Dans un Sankey, deux sources peuvent fusionner en un seul nœud. Cette différence décide si le rapport peut vous dire que deux canaux convergent vers la même page.
Google Charts porte aussi son propre avertissement sur la page : "The sankey chart may be undergoing substantial revisions in future Google Charts releases."

Comment en construire un qui ne ment pas ?
Cinq règles, qui portent toutes sur les données plutôt que sur le dessin.
- Ajoutez des nœuds de sortie à chaque étape. Si une étape compte 1,000 entrées et 600 sorties, le troisième lien est une sortie de 400 unités. Sans lui, le schéma se renormalise.
- Fixez l'unité avant de commencer. Les sessions et les utilisateurs produisent des images différentes, parce qu'un utilisateur contribue à plusieurs sessions et qu'un schéma au niveau utilisateur fusionne des parcours qu'un schéma au niveau session garde séparés. Décidez laquelle, étiquetez-la, et ne mélangez jamais les deux dans un même graphique. La distinction est la même que celle qui sépare pages vues, sessions et utilisateurs.
- Regroupez avant de tronquer. Réduisez
/product/*à un seul nœud délibérément plutôt que de laisser l'outil supprimer la queue. Un regroupement conçu préserve l'arithmétique ; une troncature la détruit. - Limitez les étapes. Quatre ou cinq colonnes sont la limite lisible. Au-delà, les bandes se croisent si fortement qu'aucun lecteur ne peut suivre un parcours, et la propriété de conservation cesse d'être visible même si elle tient toujours.
- Reconstruisez à partir de la séquence brute. Les données source d'un Sankey correct sont au niveau du hit, ordonnées par identifiant et horodatage, ce qui est exactement la forme des données de clickstream. Les rapports agrégés ont déjà jeté l'ordre dont le graphique a besoin.
Un Sankey construit ainsi et un rapport de flux utilisateur et de parcours client répondent à la même question, mais un seul des deux vous montre la taille de ce que vous avez perdu à chaque étape.
Questions fréquentes
Quelle est la différence entre un diagramme de Sankey et un graphique en entonnoir ?
Un entonnoir suppose un seul parcours ordonné et rapporte la survie à chaque étape. Un Sankey montre tous les parcours empruntés, y compris les branches qui se rejoignent, et met chaque bande à l'échelle de son volume. Utilisez un entonnoir quand la séquence est fixe et que vous l'avez définie à l'avance. Utilisez un Sankey quand ce qui compte est l'endroit où les gens ont divergé.
L'exploration de parcours de GA4 est-elle un diagramme de Sankey ?
La documentation de Google répond dans les deux sens. La page d'aide GA4 appelle l'exploration de parcours un arbre. La page Sankey de Google Charts cite Google Analytics comme exemple de Sankey montrant comment le trafic circule entre les pages. La différence de comportement est qu'un arbre ne peut pas montrer deux sources fusionnant en un seul nœud.
Pourquoi mon Sankey ne tombe-t-il pas juste ?
Presque toujours parce que l'abandon n'est pas représenté par un lien. Les mises en page basées sur d3-sankey dérivent la valeur d'un nœud de la somme de ses liens entrants, donc toute population qui part sans lien sortant est absorbée plutôt qu'affichée. Ajoutez un nœud de sortie explicite à chaque étape.
Un diagramme de Sankey peut-il montrer des boucles ou des visites répétées ?
Pas directement. d3-sankey est documenté comme une mise en page pour réseaux acycliques. Les outils contournent cela en traitant chaque étape comme sa propre colonne, donc une page visitée deux fois apparaît comme deux nœuds. Les chiffres restent corrects et la forme surestime le nombre de destinations distinctes.
Combien d'étapes un Sankey doit-il afficher ?
Quatre ou cinq colonnes. Chaque colonne supplémentaire multiplie le nombre de bandes qui se croisent, et passé ce point les lecteurs ne peuvent plus suivre un parcours individuel, ce qui supprime le seul avantage que le graphique avait sur un tableau.
Un diagramme de Sankey doit-il avoir des totaux égaux à gauche et à droite ?
Oui, s'il est construit correctement. Chaque unité qui entre dans la colonne la plus à gauche doit arriver quelque part dans la colonne la plus à droite, y compris dans un nœud de sortie ou d'attrition. Des totaux inégaux signifient qu'une population a quitté le schéma sans être comptabilisée.
Pourquoi l'appelle-t-on diagramme de Sankey ?
Le nom vient du capitaine Sankey, qui s'en servait pour représenter l'efficacité des machines à vapeur. Il traçait des flèches dont la largeur était proportionnelle à la perte de chaleur, et c'est de là que vient aussi la règle de conservation : l'énergie qui entre dans un moteur doit bien aller quelque part, et le diagramme a été conçu pour montrer où.
Tableau de bord en temps réel
Suivi des objectifs
Suivi sans cookies
Quelle est la différence entre un diagramme de Sankey et un arbre (tree graph) ?
Dans un arbre, chaque nœud n'a qu'un seul parent, les chemins se séparent mais ne se rejoignent jamais. Dans un diagramme de Sankey, deux sources peuvent converger vers un même nœud. C'est exactement ce qui est en jeu avec l'exploration de parcours de GA4, que Google décrit comme un arbre alors que la page Sankey de Google Charts cite Google Analytics comme exemple de sankey.
Quelles données faut-il pour construire un diagramme de Sankey ?
Des données au niveau du hit, ordonnées par identifiant et horodatage, exactement la forme des données de clickstream. Les rapports agrégés ont déjà perdu cet ordre, qui est pourtant ce dont un sankey a besoin pour placer chaque utilisateur dans le bon nœud et le bon lien.
Un diagramme de Sankey peut-il montrer combien de temps a duré chaque étape d'un parcours ?
Non. La position horizontale dans un sankey représente l'ordre, pas le temps écoulé, un écart de trois secondes et un écart de trois jours entre deux étapes occupent donc la même distance sur le graphique. Un parcours qui paraît fluide dans un sankey peut cacher un blocage de plusieurs jours que le diagramme est incapable de montrer.
Cet article vous a-t-il été utile ?
Dites-nous ce que vous en pensez !
Nous voir plus souvent sur Google
Un clic définit Flowsery comme source préférée. Nos articles remontent alors dans vos À la une, en mode IA et dans les aperçus IA.
Avant de partir...
Flowsery
Des analyses orientées revenus pour votre site web
Suivez chaque visiteur, source et conversion en temps réel. Simple, puissant et sans cookies.
Tableau de bord en temps réel
Suivi des objectifs
Suivi sans cookies
Termes connexes du glossaire


Ce qu'un chemin de conversion montre avant qu'une personne achète
Chaque chemin de conversion est la liste ordonnée des canaux touchés par un acheteur avant de convertir. Comment GA4 le découpe, et quoi corriger.


Ce que les micro-conversions mesurent avant que la vente n'ait lieu
Suivre les micro-conversions montre la progression vers une vente ou une inscription. Les deux types, comment les choisir, et pourquoi les isoler du KPI.


Bien choisir son outil : analyse de parcours vs analyse d'entonnoir
Dans le choix analyse de parcours vs analyse d'entonnoir, l'entonnoir mesure vos étapes, le parcours montre les séquences réelles. GA4, Mixpanel, Amplitude.


Comment mesurer le taux d'abandon de formulaire, champ par champ
Comparez formulaires commencés et envoyés pour obtenir le taux d'abandon de formulaire : formule, démarrage selon GA4 et Zuko, exemple champ par champ.


Comment fonctionne le test de l'intérêt légitime du RGPD selon l'article 6(1)(f)
Les règles de l'intérêt légitime du RGPD à l'article 6(1)(f), citées depuis EUR-Lex, le test en trois étapes de l'EDPB et le cas disputé de l'analytics web.


Ce que les données de clickstream enregistrent, ligne par ligne
Chaque ligne de données de clickstream est un hit horodaté avec un identifiant et une URL, ce qui en fait une donnée personnelle pour le GDPR comme le CCPA.
Articles connexes


Ce que l'attribution auto-déclarée voit et que les clics ne montrent pas
Un champ d'attribution auto-déclarée capte les podcasts, le bouche-à-oreille et le dark social que le suivi des clics ignore. Pourquoi les réponses biaisent.


Là où flux utilisateur vs parcours utilisateur cessent de dire la même chose
Comparer flux utilisateur vs parcours utilisateur sépare un chemin observé dans votre produit de l'objectif entier qu'une personne poursuit dans le temps.


Ce que l'analyse comportementale enregistre que les pages vues manquent
Contrairement à un simple comptage de pages vues, l'analyse comportementale enregistre ce qu'un visiteur fait sur une page, en flux d'événements liés à lui.

