Home » Data Marketing » Comment analyser les revenus mensuels par cohorte avec GA4 et BigQuery ?

Comment analyser les revenus mensuels par cohorte avec GA4 et BigQuery ?

L’analyse des revenus mensuels par cohorte permet de comprendre l’évolution de la valeur client après acquisition grâce à GA4 et BigQuery. Décortiquons ensemble une requête SQL puissante, issue de données réelles, qui révèle les comportements clients au fil du temps.

3 principaux points à retenir.

  • La cohorte analyse la valeur client dans le temps. Elle permet d’identifier l’impact réel des campagnes et la fidélité des clients.
  • GA4 combiné à BigQuery offre une vue granulaire via SQL. La segmentation temporelle des utilisateurs dévoile des tendances invisibles aux métriques classiques.
  • L’exploitation des données cohortes guide les décisions marketing et produit. Identifier les périodes d’acquisition rentables optimise l’allocation des budgets et la stratégie à long terme.

Qu’est-ce qu’une analyse de cohorte et pourquoi l’utiliser en e‑commerce

L’analyse de cohorte est une méthode puissante qui permet de segmenter les utilisateurs selon leur première interaction avec votre site e-commerce, souvent sur une période déterminée. Pourquoi est-ce si crucial ? Parce que cela vous permet de suivre leur comportement dans le temps et d’obtenir des insights fondamentaux sur la rétention des clients, l’évolution des revenus par groupe d’utilisateurs, et l’impact des campagnes d’acquisition que vous avez menées.

Les métriques classiques, comme le revenu total, peuvent vous donner une vue d’ensemble séduisante, mais elles manquent souvent de nuance. Imaginez que vous regardez juste le chiffre du million d’euros généré ce mois-ci. Mais, derrière ce chiffre se cache une réalité bien plus complexe : quels groupes de clients ont réellement contribué à ce montant ? Qui dépense avec efficacité et qui s’évapore après leur première commande ? C’est là que les métriques de cohortes prennent tout leur sens. Elles vous permettent de voir au-delà de la simple somme et de comprendre quel groupe de clients dépense le plus sur le long terme.

Pour illustrer ce propos avec un cas concret, prenons l’exemple de GA4 qui vous facilite l’extraction de ces données comportementales. L’un de ses principaux atouts est sa capacité à segmenter les utilisateurs et à leur attribuer un statut au sein d’une cohorte… Alors que d’autres outils vous laissent dans le flou, GA4 vous permet de dire : « Cette cohorte de septembre a dépensé 20 % de plus que celle de février. » C’est un peu comme prendre le pouls de votre entreprise, mais avec des outils modernes. Pour plus de détails sur comment procéder, n’hésitez pas à consulter cet article sur l’analyse de cohortes avec GA4.

En somme, en utilisant l’analyse de cohorte, vous ne vous contentez pas d’observer les chiffres globaux ; vous plongez dans les profondeurs de vos données pour découvrir des histoires cachées. Cela vous aide non seulement à optimiser vos stratégies marketing, mais aussi à améliorer l’expérience globale de vos utilisateurs, rendant votre e-commerce non seulement plus rentable, mais aussi plus résilient.

Comment extraire les données GA4 dans BigQuery pour une analyse cohortale

Pour analyser les revenus mensuels par cohorte avec GA4 et BigQuery, il est essentiel de d’abord établir un lien entre vos données GA4 et BigQuery. GA4 offre nativement la possibilité d’exporter des événements bruts, ce qui facilite grandement cette étape.

Une fois connecté, vos données se retrouvent dans plusieurs tables, mais la plus précieuse pour notre analyse est celle des événements. Ici, vous trouverez user_pseudo_id, l’identifiant utilisateur pseudo-anonymisé qui vous permettra de suivre les interactions des utilisateurs, ainsi que event_timestamp, qui capture le moment de chaque événement. Ces deux éléments sont cruciaux pour notre analyse cohortale.

Pour déterminer le premier événement de chaque utilisateur, autrement dit le moment de l’acquisition, l’idée est d’extraire l’événement correspondant au plus ancien event_timestamp. Ensuite, en extrayant les événements d’achat, vous pourrez également récupérer les revenus associés. Cela vous fournira un ensemble de données comprenant l’historique des interactions de chaque utilisateur depuis son acquisition jusqu’à ses achats.

Voici un exemple de requête SQL simple qui démontre ces étapes :


WITH first_touch AS (
  SELECT 
    user_pseudo_id,
    MIN(event_timestamp) AS first_event_ts,
    TIMESTAMP_MICROS(MIN(event_timestamp)) AS first_event_time,
    DATE(TIMESTAMP_MICROS(MIN(event_timestamp))) AS cohort_day
  FROM 
    `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
  GROUP BY 
    user_pseudo_id
),

purchase_events AS (
  SELECT
    user_pseudo_id,
    TIMESTAMP_MICROS(event_timestamp) AS purchase_time,
    DATE(TIMESTAMP_MICROS(event_timestamp)) AS purchase_day,
    ecommerce.purchase_revenue AS revenue
  FROM
    `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
  WHERE
    event_name = 'purchase'
)

SELECT
  ft.user_pseudo_id,
  ft.cohort_day,
  pe.purchase_day,
  pe.revenue
FROM
  first_touch ft
JOIN
  purchase_events pe
ON
  ft.user_pseudo_id = pe.user_pseudo_id;

Une attention particulière doit être portée à la conversion des timestamps et à la normalisation des dates, car cela garantit que vos données sont prêtes à être analysées de manière cohérente. En utilisant ces fonctionnalités, vous serez capable de mieux comprendre le comportement et la valeur des clients au fil du temps.

Comment calculer le chiffre d’affaires mensuel par cohorte avec SQL


Analyser les revenus mensuels par cohorte avec Google Analytics 4 (GA4) et BigQuery nécessite une requête SQL bien structurée. Commençons par le cœur de l’analyse, avec trois Common Table Expressions (CTE) qui nous aideront à établir des relations entre les utilisateurs et leurs achats.

La première étape consiste à définir la date d’acquisition de chaque utilisateur à travers le CTE first_touch. Voici comment cela fonctionne :


WITH first_touch AS (
  SELECT 
    user_pseudo_id,
    MIN(event_timestamp) AS first_event_ts,
    TIMESTAMP_MICROS(MIN(event_timestamp)) AS first_event_time,
    DATE(TIMESTAMP_MICROS(MIN(event_timestamp))) AS cohort_day
  FROM 
    `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
  GROUP BY 
    user_pseudo_id
),

Dans ce bloc de code, on identifie chaque utilisateur avec user_pseudo_id. Grâce à la fonction MIN(), nous récupérons leur premier événement et en déduisons le cohort_day. Ce jour marquera la date d’établissement de la cohorte.

Ensuite, concentrons-nous sur les achats dans le CTE purchase_events :


purchase_events AS (
  SELECT
    user_pseudo_id,
    TIMESTAMP_MICROS(event_timestamp) AS purchase_time,
    DATE(TIMESTAMP_MICROS(event_timestamp)) AS purchase_day,
    ecommerce.purchase_revenue AS revenue
  FROM
    `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
  WHERE
    event_name = 'purchase'
),

Ici, nous filtrons les événements pour ne conserver que les achats, stockant des informations cruciales telles que le purchase_day et le revenue. Cela nous permet de dresser un bilan de toutes les transactions effectuées par chaque utilisateur.

Le dernier CTE, cohort_revenue, relie ces données afin de calculer la différence en mois entre chaque achat et la date d’acquisition :


cohort_revenue AS (
  SELECT
    ft.user_pseudo_id,
    ft.cohort_day,
    EXTRACT(MONTH FROM ft.cohort_day) AS acquisition_month,
    EXTRACT(YEAR FROM ft.cohort_day) AS acquisition_year,
    pe.purchase_day,
    EXTRACT(MONTH FROM pe.purchase_day) - EXTRACT(MONTH FROM ft.cohort_day) + 
    12 * (EXTRACT(YEAR FROM pe.purchase_day) - EXTRACT(YEAR FROM ft.cohort_day)) AS months_after_acquisition,
    pe.revenue
  FROM
    first_touch ft
  JOIN
    purchase_events pe
  ON
    ft.user_pseudo_id = pe.user_pseudo_id
)

Grâce à la jointure, nous allions les informations des deux CTE. months_after_acquisition nous donne le temps écoulé depuis l'acquisition, un indicateur critique pour analyser les comportements d'achat.

Enfin, dans notre requête principale, nous allons effectuer des agrégations finales pour obtenir la somme des revenus, le nombre d’acheteurs uniques et le revenu moyen par utilisateur :


SELECT
  FORMAT_DATE('%Y-%m', cohort_day) AS cohort_month,
  months_after_acquisition,
  ROUND(SUM(revenue), 2) AS total_revenue,
  COUNT(DISTINCT user_pseudo_id) AS purchasing_users,
  ROUND(SUM(revenue) / COUNT(DISTINCT user_pseudo_id), 2) AS average_revenue_per_user
FROM
  cohort_revenue
GROUP BY
  cohort_month, months_after_acquisition
ORDER BY
  cohort_month, months_after_acquisition;

Cette dernière étape nous offre une vue claire et concise des revenus par cohorte au fil du temps, renvoyant des informations précieuses pour orienter les stratégies marketing futures. Pour plus de conseils sur l'analyse des données, n'hésitez pas à consulter cet article.

Comment interpréter et visualiser les résultats obtenus par cohorte

Une fois que vous avez exécuté votre requête SQL dans BigQuery et que vous avez vos résultats de cohortes bien ordonnés, il est temps de transformer ces données en une matrice visuelle. Pourquoi ? Parce que les chiffres bruts, soyons francs, c’est un peu comme essayer de lire un manuel de physique quantique dans une langue que vous ne comprenez pas. La visualisation du tableau des résultats permet non seulement de digérer l’information plus facilement, mais elle révèle également des tendances qui pourraient rester cachées dans un tableau traditionnel.

Pour créer cette matrice cohortale, imaginez vos lignes représentant les cohortes d’origine, tandis que les colonnes affichent les mois post-acquisition. Facile, non ? Cela vous permet de voir en un coup d’œil comment chaque cohorte génère des revenus mois après mois. Voilà le genre d’outil qui fait briller les yeux des analystes ! Voici un aperçu de comment vous le ferez dans Google Sheets :


  1. Copiez les résultats de votre requête depuis BigQuery.
  2. Collez-les dans Google Sheets.
  3. Créez un tableau croisé dynamique à partir des données collées.

La mise en forme conditionnelle est votre meilleur allié dans cette aventure. En appliquant des couleurs aux résultats, vous pouvez immédiatement identifier les cohortes qui « montent en puissance ». Par exemple, si vous voyez un dégradé de vert vif dans un mois donné, cela signifie que vos utilisateurs sont de plus en plus engagés financièrement. À l’inverse, un rouge dominant peut signaler un problème.

Prenons un exemple concret. Supposons que vous analysiez une période de Black Friday. Si la cohorte d’acheteurs qui a été acquise juste avant cette période affiche un pic de revenus au mois suivant, cela pourrait indiquer que votre campagne marketing de Black Friday a réellement eu un impact. En revanche, si les cohortes suivantes ne montrent pas de même dynamisme, cela peut signifier que le buzz de cette période ne s’est pas traduit en fidélisation et que d’autres facteurs, comme la qualité du produit ou du service, doivent être examinés.

Enfin, il est crucial de corréler ces résultats avec d’autres données marketing. En vérifiant vos campagnes publicitaires, vos promotions et même vos efforts sur les réseaux sociaux, vous pourrez déterminer les causes derrière ces tendances. Si vous avez des questions sur GA4 et son utilisation, n’hésitez pas à lire davantage sur ce sujet ici.

Comment cette analyse vous guide-t-elle vers une meilleure stratégie client ?

L’analyse des revenus par cohorte après acquisition, réalisée via GA4 et BigQuery, offre un regard sans filtre sur la valeur client évolutive. En segmentant précisément les utilisateurs selon leur date d’arrivée, vous identifiez non seulement la rentabilité des campagnes, mais aussi la dynamique de fidélisation. Ce niveau de granularité est un véritable levier pour optimiser budgets marketing, personnalisations produit et projections financières. En maîtrisant ces données, vous passez d’une vision intuitive à une stratégie factuelle, qui fait réellement croître votre business sur le long terme.

FAQ

Qu’est-ce qu’une cohorte en analyse marketing ?

Une cohorte est un groupe d’utilisateurs partant d’un même point temporel ou partageant une caractéristique commune. En marketing, cela permet d’observer leur comportement et performance sur une période définie pour mieux comprendre leur fidélité et valeur.

Pourquoi utiliser GA4 avec BigQuery pour l’analyse cohortale ?

GA4 exporte les données d’événements bruts vers BigQuery, offrant une flexibilité d’analyse illimitée en SQL. Cela permet de décortiquer précisément le comportement utilisateur, notamment via des analyses cohortales détaillées impossibles à réaliser directement dans l’interface GA4.

Comment calculer le chiffre d’affaires mensuel par cohorte ?

On identifie la date d’acquisition de chaque utilisateur, on récupère leurs achats avec montants et dates, puis on calcule le nombre de mois écoulés entre acquisition et achat. Ensuite, on agrège les revenus et le nombre d’acheteurs par cohorte et par mois pour obtenir les métriques clés.

Quels pièges éviter dans l’interprétation des cohortes ?

Il faut éviter d’ignorer la saisonnalité, les effets ponctuels de promotions, ou les variations de volume qui peuvent fausser les conclusions. Il est aussi essentiel de disposer de suffisamment de données pour garantir la représentativité statistique des cohortes.

Comment visualiser efficacement les résultats d’une analyse de cohorte ?

Les tableaux croisés dynamiques (pivot tables) associés à une mise en forme conditionnelle dans Google Sheets ou Excel sont idéaux. Ils permettent de visualiser l’évolution du revenu par mois et par cohorte, facilitant l’identification des tendances ou anomalies.

 

 

A propos de l’auteur

Je suis Franck Scandolera, consultant et formateur expert en Web Analytics, Data Engineering et Automatisation, basé à Brive‑la‑Gaillarde. Depuis plus de dix ans, j’aide agences et annonceurs à tirer la substantifique moelle des données digitales, notamment avec GA4, BigQuery et SQL. Ma maîtrise des infrastructures data et mon approche pédagogique vous accompagnent pour transformer vos données brutes en décisions éclairées et actions concrètes. Mon expérience terrain garantit des solutions pragmatiques, conformes et efficaces adaptées à vos enjeux business.

Retour en haut
Data Data Boom