Petit guide de Google Analytics à l’attention des amoureux de R

 

Puissant outil développé par le géant américain, Google Analytics reste le dashboard indispensable pour garder un œil sur le comportement les internautes qui visitent votre site (oui, vous, derrière votre écran). Pages d’entrée, de sortie, durée de lecture, sources… toutes les données de navigation de vos visiteurs sont à portée de clic.

Google Analytics, pour quoi faire ?

Pour qui ?

Fer-de-lance des travailleurs du web du monde entier, Google Analytics est un service utilisé par des millions de professionnels : webmaster (obviously), experts en référencement naturel, rédacteurs, services marketing… Mais, soyons réalistes, pas toujours facile de faire parler l’interface native de l’outil – design pas très clair, visualisations parfois douteuses, chiffres pas toujours très compréhensibles, manipulation de données impossible… Heureusement, nous avons une solution : nous tourner vers notre logiciel fétiche !

R et Google Analytics

Pour analyser votre site avec R, la première option à votre disposition est d’exporter vos données depuis votre navigateur.

Comment ça marche ? Depuis le dashboard, vous pouvez télécharger ces données, en définissant en quelques clics la période à étudier et les variables à surveiller. Ici, le géant du web vous livre un fichier contenant les informations voulues, avec en-tête de 7 lignes et pied de page superflu : ce qui joue déjà en défaveur de l’usage de cette méthode avec R. Mais là où le bât blesse, c’est qu’il vous faudra enregistrer un nouveau fichier à chaque fois que vous souhaitez changer un paramètre. Envie de modifier la période ? Les variables ? Direction le dashboard, pour exporter puis empiler les csv dans votre dossier Téléchargements.

Bif-bof niveau reproductibilité”, nous glisse-t-on à l’oreillette ? Effectivement. Mais rassurez-vous, des développeurs ont pensé à tout, et ont mis à disposition un package pour vous faciliter la tâche et rendre reproductible l’analyse des données de votre site web. Son petit nom ? RGoogleAnalytics.

 

RGoogleAnalytics

Disponible sur le CRAN, ce package publié exécute exactement ce qu’il nomme : il vous permet d’accéder aux données des sites enregistrés sur votre comtpe Google Analytics directement dans R.

NB : Nous allons prendre pour cet article l’exemple des visites de l’abcdr (un site à avoir dans ses bookmark si vous faites du R). Nos données couvriront la période 01 mars – 01 Juin.

Configurer votre accès

Première étape (après celle d’avoir installé Analytics sur votre site, bien sûr) : la création de votre connexion à une API Google. Pour ça, rendez-vous sur le gestionnaire d’API de Google. Ensuite, c’est tout simple : direction “Sélectionner un projet”, en haut à droite de votre écran, puis “Nouveau projet”. Parmi les APIs proposées, choisissez “Analytics API”, puis “Activer” et “Accéder à ‘identifiants’”. Sur la nouvelle page qui s’offre à vous, les paramètres à entrer pour accéder à votre API seront 

Acceder a Google Analytics depuis R

Une fois vos identifiants enregistrés, il est temps de créer vos ID OAuth. Pour cela, et toujours dans l’onglet Identifiants, vous trouverez “Créer des identifiants / ID Client OAuth”. Une fois sur l’écran suivant, sélectionnez “Autre”, donnez un petit nom à votre accès, et ouvrez le. Un pop-up s’affiche, contenant votre ID Client et le code secret client. Gardez bien précieusement ces deux codes, nous en aurons très vite besoin !

Back to R

library("RGoogleAnalytics")

La première fonction à exécuter, Auth, crée votre environnement de connexion à l’API.

oauth_token <- Auth(client.id = "xxxxxxxxxxxxxxx.apps.googleusercontent.com", client.secret = "xxxxxxxxxxxxxxxxxxxxxxxx")

Ici, votre navigateur ouvrira un onglet qui vous demandera de confirmer l’accès à votre API.

 

Pour un usage futur, nous vous conseillons d’enregistrer votre token en local :

save(oauth_token,file="./token_file")

Ensuite, et c’est là que les choses se corsent, vous devrez construire votre requête sur l’API. Pour ça, vous aurez besoin de la fonction Init, dont les paramètres se remplissent de la sorte :

query <- Init(start.date = "2016-04-01", 
                           end.date = "2016-06-01", 
                           dimensions = "ga:pageTitle", 
                           metrics = "ga:pageviews,ga:avgTimeOnPage,ga:entranceRate,ga:exitRate", 
                           max.results = 10000, 
                           sort = "ga:pageTitle", 
                           table.id = "ga:XXXXXXX") 
 

Avec, dans l’ordre :

  • start.date : La date de départ de l’analyse, au format Date “%Y-%m-%d”
  • end.date : La date de fin
  • dimensions : La dimension
  • metrics : Les metrics
  • max.results : le nombre maximum de résultats à retourner
  • sort : La variable de classement
  • table.id : Le code de votre site, que vous trouverez sous votre url à l’accueil d’Analytics, qui sont les chiffres entre UA-XXXXXXXX-1

 

Pour construire cette requête, vous aurez besoin de compléter les paramètres dimensions et metrics. Pour savoir comment choisir, rien de plus simple — tout est disponible ici : Dimensions & Metrics Explorer. Enfin, pour un dataframe qui résume le tout :

ga.query <- QueryBuilder(query.params.list = query)
data <- GetReportData(ga.query, oauth_token)

Vous l’aurez compris, en changeant les paramètres de votre query, vous pouvez très facilement mettre à jour votre tableau de résultats.

 

Et donc, pour quoi faire ?

Concrètement, ça nous sert à quoi tout ça ? Si votre esprit webmarketing est en marche, vous voyez tout de suite l’utilité de ce package pour optimiser votre site : avec ces données, vous pouvez très facilement identifier les comportements clés de vos utilisateurs (nouvel arrivant ou vieux de la vieille, visiteur unique ou régulier ?…), les pages les plus populaires, les supports de vos visiteurs (tablette ? smartphone ? bureau ?) ou encore vos sources de trafic (résultats naturels ? liens ? Adwords ? réseaux sociaux ?), etc.

Si nous prenons l’exemple de notre requête, cette dernière nous renvoie un dataframe contenant : le nom de la page (ga:pageTitle), le nombre de fois que cette page a été vue sur la période (ga:pageviews), le temps moyen passé sur la page (ga:avgTimeOnPage), ainsi que le taux d’entrée (si oui ou non il s’agit de la première page du site visitée par l’utilisateur) et le taux de sortie (dernière page visitée avant de sortir du site) : respectivement ga:entranceRate et ga:exitRate.

 

Une fois ces données en poche, facile de tirer quelques conclusions :

  • la page qui compte le plus de vues
data[which.max(data$pageviews), 1]
  • la page qui retient le plus les lecteurs
data[which.max(data$timeOnPage), 1]

Ou encore d’analyser les rapports entre les variables — par exemple : les internautes passent-ils le plus de temps sur vos pages les plus vues ?

library(ggplot2)

ggplot(data, aes(x=pageviews, y=avgTimeOnPage)) + 
  geom_point() + 
  xlab("Nombre de vues") + 
  ylab("Temps passé sur la page")

Visualisation avec ggplot2 et RGoogleAnalytics

Pour résumer, vous avez ici un puissant outil pour identifier vos pages qui marchent, celles que personne ne lit, celles que tout le monde quitte ou encore celles qui sont un point d’entrée majeur sur votre site. Et ça, rien qu’avec la requête établie plus haut. Alors, pour le reste, vous pouvez être créatif : combien de vos visiteurs utilisent un smartphone ? Avez-vous plus de trafic depuis les moteurs de recherches, via des liens sur d’autres sites, ou encore depuis les réseaux sociaux. Bref, des usages nombreux pour réveiller le webmaster qui sommeille en vous !


À propos de l'auteur

Colin Fay

Colin Fay

Data scientist & R Hacker


Commentaires


À lire également