TL;DR, Réponse rapide
9 min de lectureLes données de clickstream sont l'export non agrégé au niveau du hit d'une plateforme analytique : une ligne par interaction, portant un horodatage, un identifiant de visiteur, une URL, un user agent et souvent une adresse IP brute. Adobe les livre via ses data feeds avec des colonnes comme hit_time_gmt, visid_high, post_page_url et user_agent ; Google Analytics 4 livre l'équivalent via l'export BigQuery avec event_timestamp, event_name et user_pseudo_id. Comme chaque ligne porte encore un identifiant en ligne, le GDPR Article 4(1) et le California Civil Code 1798.140(v)(1)(F) font tous deux entrer le fichier dans leur définition de la donnée personnelle, ce qui le sépare juridiquement d'un rapport agrégé.
Que sont les données de clickstream ?
Chaque ligne de données de clickstream est une interaction d'un visiteur à un instant donné, stockée sans agrégation, avec l'identifiant, l'horodatage et l'URL encore attachés. Rien n'a été compté, moyenné ni consolidé. Un rapport vous dit que 4 812 sessions ont atterri sur /pricing la semaine dernière. Le clickstream sous ce rapport, ce sont 4 812 lignes séparées, chacune nommant un visiteur, une seconde dans le temps et une page, plus des dizaines de colonnes décrivant l'appareil et la source de trafic.
Le nom vient de la forme de la chose. Triez ces lignes par identifiant puis par horodatage et vous obtenez un flux de clics : la suite littérale de ce qu'une personne a fait, dans l'ordre, sur votre site. Cette suite est la matière première à partir de laquelle tous les autres chiffres analytiques sont calculés. C'est aussi la raison pour laquelle l'analyse comportementale existe comme discipline distincte du reporting : les questions d'ordre et de séquence n'ont pas de réponse dans une table de totaux.
Que contient un enregistrement de clickstream ?
Un enregistrement de clickstream porte un horodatage, un identifiant de visiteur, un identifiant de hit, l'URL, le référent, l'appareil et la valeur de chaque variable personnalisée posée sur ce hit. Adobe Analytics publie la liste complète des colonnes de ses data feeds, et voici ses propres descriptions :
| Colonne | Description d'Adobe |
|---|---|
hit_time_gmt | "The timestamp of the hit Adobe data collection servers received the hit, based in UNIX time." |
hitid_high | "Used with hitid_low to identify a hit." |
visid_high | "Used with visid_low to uniquely identify a visitor." |
visit_num | "Starts at 1, and increments each time a new visit starts per visitor." |
page_url | "The URL of the hit." |
post_page_url | "Stripped for link tracking image requests." |
page_event | "The type of hit that is sent in the image request (standard hit, download link, custom link, exit link)." |
user_agent | "The user agent string sent in the HTTP header of the image request." |
ip | "The IPv4 address, based on the HTTP header of the image request." |
geo_city | "The name of the city that the hit came from, based on IP." |
referrer | "The Referrer dimension." |
post_evar1 | Variable personnalisée 1 après traitement côté serveur, l'une des eVar1 à eVar250 |
Adobe décrit tout le mécanisme en une ligne : "Data feeds are a powerful way to get raw data out of Adobe Analytics", livrés "in hourly batches at the conclusion of each hour, or in daily batches at the conclusion of each day."
Google Analytics 4 expédie la même idée sous d'autres noms via son export BigQuery. Les champs au niveau de la ligne y sont event_timestamp, "the time (in microseconds, UTC) when the event was received by Google Analytics" ; event_name, "the name of the event" ; et user_pseudo_id, "the pseudonymous id (e.g., app instance ID) for the user. A unique identifier that is assigned to a user when they first open the app or visit the site." Les paramètres pendent à chaque ligne sous forme de paires répétées event_params.key et event_params.value.string_value, et geo.city est renseignée "based on IP address."
Deux vocabulaires, une seule structure. Adobe compte des hits, GA4 compte des événements, et les deux vous donnent une ligne par chose qui s'est produite.

En quoi les données de clickstream diffèrent-elles de l'analytique agrégée ?
L'analytique agrégée répond aux questions que vous aviez écrites avant la collecte ; les données de clickstream répondent à celles qui vous viennent après. C'est tout l'échange. Un rapport a déjà décidé quelles dimensions s'apparient à quelles métriques, et un chiffre qui n'a jamais été calculé ne peut pas en être récupéré. Les lignes brutes n'ont pris aucune de ces décisions : vous pouvez donc les joindre, les filtrer et les reséquencer comme une nouvelle question l'exige.
| Rapport agrégé | Export clickstream | |
|---|---|---|
| Granularité | Une ligne par combinaison de dimensions | Une ligne par hit ou par événement |
| Identifiant | Retiré ou soumis à un seuil | Présent sur chaque ligne |
| Séquence | Perdue | Préservée par l'horodatage |
| Nouvelles questions | Exigent un nouveau plan de collecte | Répondues par une nouvelle requête |
| Taille pour 1 million de sessions mensuelles | Kilooctets | Dizaines de gigaoctets |
| Qui le lit | Quiconque a accès à l'interface | Quiconque a SQL et un accès à l'entrepôt |
Google impose cette séparation dans son propre produit. Son réglage de conservation des données propose "2 months" ou "14 months" pour les données au niveau utilisateur et au niveau événement, et Google précise que "the data retention setting does not affect standard aggregated reports (including primary and secondary dimensions) in your Google Analytics property." Les agrégats survivent aux lignes dont ils sont issus, et c'est exactement le point : les agrégats ont cessé d'être des données personnelles, les lignes ne l'ont jamais fait. Voyez la conservation des données dans Google Analytics pour savoir ce qui expire et quand.
La sessionnisation est l'autre différence qui mérite d'être nommée. Un fichier de clickstream ne contient aucune session, seulement des hits ordonnés ; la session est une règle appliquée à ces hits plus tard. Changez la règle et le nombre de sessions change sans qu'une seule ligne ne bouge, mécanisme détaillé dans ce qui compte comme une session.
Quelles obligations de confidentialité s'attachent aux données de clickstream ?
Les données de clickstream sont des données personnelles dans l'UE parce que chaque ligne porte un identifiant en ligne. GDPR Article 4(1) définit la donnée personnelle comme "any information relating to an identified or identifiable natural person", une personne identifiable étant celle qui "is one who can be identified, directly or indirectly, in particular by reference to an identifier such as a name, an identification number, location data, an online identifier". Recital 30 lève l'ambiguïté sur ce qu'est un identifiant en ligne : "Natural persons may be associated with online identifiers provided by their devices, applications, tools and protocols, such as internet protocol addresses, cookie identifiers or other identifiers." Votre colonne visid_high et votre colonne user_pseudo_id sont ces identifiants, et la colonne ip est nommée telle quelle dans le considérant. Le raisonnement est déroulé dans la question de savoir si une adresse IP est une donnée personnelle.
La Californie arrive au même endroit par une autre route. Le Civil Code 1798.140(v)(1)(F) liste parmi les catégories d'informations personnelles "Internet or other electronic network activity information, including, but not limited to, browsing history, search history, and information regarding a consumer's interaction with an internet website application, or advertisement". Un fichier de clickstream est un historique de navigation au sens le plus littéral qui soit.
Trois obligations en découlent directement. L'Article 5(1)(c) exige que les données personnelles soient "adequate, relevant and limited to what is necessary in relation to the purposes for which they are processed", ce qui fait de chaque colonne collectée parce qu'elle figurait dans le schéma par défaut une colonne à justifier. L'Article 5(1)(e) exige que les données soient conservées "in a form which permits identification of data subjects for no longer than necessary", ce qui fait passer la rétention d'une décision de coût de stockage à une décision juridique. L'Article 17(1) donne à la personne concernée "the right to obtain from the controller erasure of personal data concerning him or her without undue delay", ce qui suppose un moyen de retrouver chaque ligne appartenant à un identifiant à travers chaque partition, chaque copie d'entrepôt et chaque sauvegarde que vous avez faite.

Sa collecte exige-t-elle un consentement ?
Stocker ou lire l'identifiant sur l'appareil du visiteur exige un consentement dans l'UE, que la donnée soit personnelle ou non. L'Article 5(3) de la Directive 2002/58/EC couvre "the storing of information, or the gaining of access to information already stored, in the terminal equipment of a subscriber or user", et ne l'autorise "only on condition that the subscriber or user concerned has given his or her consent, having been provided with clear and comprehensive information". La règle s'attache au fait de toucher l'appareil, pas à la sensibilité de ce que vous apprenez.
Tableau de bord en temps réel
Suivi des objectifs
Suivi sans cookies
Le même article ménage deux exemptions : le stockage ou l'accès "for the sole purpose of carrying out the transmission of a communication over an electronic communications network, or as strictly necessary in order for the provider of an information society service explicitly requested by the subscriber or user to provide the service". La mesure analytique n'est pas le service que le visiteur a explicitement demandé, d'où la bannière devant toute mesure fondée sur les cookies. Une collecte qui ne lit rien sur l'appareil ne met pas du tout en jeu l'Article 5(3), et c'est l'argument structurel en faveur du tracking sans cookies.
Peut-on retirer l'identité et garder le fichier ?
Retirer les identifiants directs produit des données pseudonymisées, pas des données anonymes, et les données pseudonymisées restent dans le champ d'application. Hacher visid_high laisse encore une clé stable qui relie entre elles toutes les lignes de l'historique d'une personne, et une clé stable qui permet le rapprochement est la définition d'un pseudonyme plutôt que d'un effacement. Seule une agrégation irréversible qui rend irrécupérables les lignes individuelles sort un fichier du champ d'application, et c'est une opération destructive par construction. La distinction, et ce que chacune vous coûte analytiquement, est posée dans pseudonymisation contre anonymisation.
Des mesures pratiques existent entre ces deux pôles. Tronquez l'octet de l'IP avant d'écrire la ligne plutôt qu'après. Abandonnez user_agent si vous n'en lisez jamais que le nom de navigateur déjà analysé. Fixez une rétention plus courte sur la table brute que sur les agrégats dérivés. Chacune de ces mesures répond directement à l'Article 5(1)(c), et chacune est plus facile à faire au moment de la collecte qu'à rétro-installer dans un entrepôt.
Questions fréquentes
Les données de clickstream sont-elles des données personnelles au sens du GDPR ?
Oui, dès lors que chaque ligne porte un identifiant de visiteur stable ou une adresse IP. GDPR Article 4(1) compte quiconque est identifiable "indirectly" par "an online identifier", et Recital 30 nomme explicitement les adresses de protocole internet et les identifiants de cookies comme exemples de ces identifiants.
Quelle est la différence entre des données de clickstream et un journal serveur ?
Un journal serveur enregistre les requêtes que le serveur a traitées ; les données de clickstream enregistrent les interactions que la balise analytique a observées. Le journal rate les pages en cache, les événements de défilement, les clics qui ne déclenchent aucune requête et toute variable personnalisée, tandis que le clickstream rate les bots et les ressources que la balise n'a jamais vues.
Quel volume de données de clickstream produit un site de taille moyenne ?
Le volume suit les hits, pas les visiteurs. Un site qui fait en moyenne six hits par session et un million de sessions par mois écrit six millions de lignes par mois, et les data feeds Adobe comme l'export BigQuery de GA4 transportent largement plus d'une centaine de colonnes par ligne avant la moindre variable personnalisée.
Les rapports agrégés survivent-ils à la suppression des lignes brutes ?
Dans Google Analytics 4, oui. Google indique que le réglage de conservation des données "does not affect standard aggregated reports (including primary and secondary dimensions) in your Google Analytics property", donc les agrégats calculés avant l'expiration restent lisibles une fois les lignes au niveau événement disparues.
Le droit du consentement s'applique-t-il si je ne stocke jamais de cookie ?
L'Article 5(3) de la Directive ePrivacy s'attache à "the storing of information, or the gaining of access to information already stored, in the terminal equipment" de l'utilisateur. Une collecte qui n'écrit ni ne lit rien sur l'appareil ne déclenche pas cet article, même si le GDPR régit toujours les données personnelles que vous traitez côté serveur.
Quelles colonnes valent la peine d'être supprimées en premier ?
Commencez par ip et user_agent. Les deux sont nommées ou impliquées dans la liste d'identifiants du Recital 30, les deux ne sont habituellement consommées que sous forme analysée, en ville et en navigateur, et les deux peuvent être réduites au moment de la collecte sans changer aucun rapport en aval.
À quelle fréquence les plateformes d'analyse livrent-elles les données de clickstream ?
Adobe livre ses data feeds, selon sa propre description, "par lots horaires à la fin de chaque heure, ou par lots quotidiens à la fin de chaque jour". GA4 livre le même niveau de détail via son export BigQuery, avec la même structure d'une ligne par événement, sous d'autres noms de colonnes.
Quelle est la différence entre un hit et un événement dans les données de clickstream ?
Chez Adobe, chaque ligne s'appelle un hit, et la colonne page_event indique s'il s'agissait d'un hit standard, d'un lien de téléchargement, d'un lien personnalisé ou d'un lien de sortie. GA4 appelle cette même ligne un événement et inscrit son nom dans la colonne event_name. Le vocabulaire change, mais le grain reste identique, une ligne par chose qui s'est produite.
Peut-on faire correspondre les exports clickstream d'Adobe et de GA4 ?
Les repères se correspondent approximativement : hit_time_gmt correspond à event_timestamp, en secondes face à des microsecondes, visid_high correspond à user_pseudo_id, et page_url correspond au paramètre page_location. Les deux gardent les trois mêmes repères, un horodatage, un identifiant et une URL ou un nom d'événement, sous des étiquettes différentes.
Une ligne de clickstream révèle-t-elle quel appareil un visiteur a utilisé ?
Les lignes d'Adobe portent la chaîne user_agent brute ainsi que des dizaines de colonnes sur l'appareil et la source de trafic, tandis que l'export BigQuery de GA4 livre plutôt des champs d'appareil déjà analysés. La colonne user_agent d'Adobe stocke cette chaîne telle qu'envoyée dans l'en-tête HTTP, avant qu'un rapport ne la traduise en nom d'appareil. Rien n'est agrégé ici, l'appareil derrière une seule visite reste visible ligne par ligne.
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 que la conformité RGPD du session replay exige vraiment
Un audit de conformité RGPD du session replay tient à quatre points : base légale article 6, données sensibles article 9, consentement ePrivacy 5(3) et AIPD.


Sous le GDPR, la réversibilité tranche pseudonymisation vs anonymisation
La réversibilité tranche pseudonymisation vs anonymisation. Les données de l'Article 4(5) restent personnelles, les données anonymes sortent du GDPR.


Sous le GDPR et le CCPA, une adresse IP est une donnée personnelle ?
Sous le GDPR, une adresse IP est une donnée personnelle dès que l'exploitant dispose des moyens légaux d'identifier le visiteur, a jugé le CJEU dans Breyer.


Comment une fenêtre d'attribution décide quels points de contact sont payés
Passez la fenêtre d'attribution de 7 à 90 jours et une commande de $1 800 paie trois ensembles de canaux différents. Voyez le calcul et les valeurs par défaut.


Une page de trafic tranche taux de rebond vs taux de sortie
Lire taux de rebond vs taux de sortie tient à deux dénominateurs. Une page de prix rend 40% de taux de sortie et 15% de taux de rebond la même semaine.


La formule du taux de conversion appliquée à du trafic réel
La formule du taux de conversion: conversions divisées par sessions ou visiteurs uniques, fois 100. Une semaine de trafic donne deux réponses selon le.
Articles connexes


Comment l'analytics sans cookies compte les visiteurs sans identifiant
L'analytics sans cookies compte les visiteurs sans stocker d'identifiant dans le navigateur. Ce qu'il supprime, ce qu'il coûte.


Le test qui tranche responsable du traitement vs sous-traitant
Le test du GDPR pour responsable du traitement vs sous-traitant: qui détermine les finalités et les moyens. Ce que chaque rôle signe, doit et notifie.


Lire le taux d'engagement dans Google Analytics 4
GA4 calcule le taux d'engagement comme les sessions avec engagement divisées par le total. Une session compte a 10 secondes ou un événement clé.

