Comment connecter Google Analytics 4 sur wordpress sans plugin

Installer Google Analytics 4 sur WordPress sans plugin, c’est la méthode que je recommande systématiquement à mes clients qui veulent un site propre et performant. Un plugin de moins, c’est une dépendance de moins, une requête base de données de moins à chaque chargement de page, et un vecteur de faille potentielle en moins. Le code de suivi GA4 ne fait que quelques lignes : il n’y a aucune raison valable d’installer une extension entière pour les ajouter.

Il existe quatre façons de le faire sans plugin, selon votre niveau d’accès aux fichiers du thème et votre configuration. Je les présente dans l’ordre que je recommande, du plus propre techniquement au plus simple à mettre en place.

Créer sa propriété GA4 et récupérer son ID de mesure

Avant d’ajouter quoi que ce soit à WordPress, il faut disposer de son identifiant de mesure GA4, qui ressemble à ceci : G-XXXXXXXXXX. Voici comment l’obtenir depuis l’interface Google Analytics 2026.

Connectez-vous à analytics.google.com avec votre compte Google. Si vous n’avez pas encore de compte GA4, cliquez sur « Commencer la mesure » et suivez les étapes pour créer un compte, puis une propriété. Donnez-lui le nom de votre site, choisissez le fuseau horaire et la devise.

Une fois la propriété créée, GA4 vous demande de configurer un flux de données. Choisissez « Web », entrez l’URL de votre site et donnez un nom au flux (par exemple « Site principal »). Google génère alors votre flux et affiche votre identifiant de mesure en haut à droite de l’écran, sous la forme G-XXXXXXXXXX.

Copiez cet identifiant. C’est lui que vous allez utiliser dans toutes les méthodes qui suivent. Ne confondez pas avec l’ancien format UA-XXXXXXXXX qui correspondait à Universal Analytics, désactivé depuis juillet 2023.

Méthode 1 : via le functions.php du thème enfant (recommandée)

C’est la méthode la plus propre techniquement. Elle injecte le script GA4 directement dans le head de toutes les pages via le système de hooks WordPress, sans dépendre d’un plugin tiers et sans risque d’être écrasée à la prochaine mise à jour du thème.

Attention : il faut impérativement modifier le fichier functions.php de votre thème enfant, pas du thème parent. Si vous modifiez le thème parent directement, votre code sera supprimé à chaque mise à jour du thème. Si vous n’avez pas encore de thème enfant, c’est le moment de le créer avant de continuer.

Dans votre tableau de bord WordPress, allez dans Apparence > Éditeur de fichiers de thèmes, sélectionnez votre thème enfant dans le menu déroulant en haut à droite, puis ouvrez le fichier functions.php. Ajoutez ce code à la fin du fichier :

function pascalmalapert_add_ga4() {
    if ( is_user_logged_in() ) {
        return;
    }
    ?>
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
    <script>
        window.dataLayer = window.dataLayer || [];
        function gtag(){dataLayer.push(arguments);}
        gtag('js', new Date());
        gtag('config', 'G-XXXXXXXXXX');
    </script>
    <?php
}
add_action( 'wp_head', 'pascalmalapert_add_ga4' );

Remplacez les deux occurrences de G-XXXXXXXXXX par votre vrai identifiant de mesure. La ligne if ( is_user_logged_in() ) { return; } exclut automatiquement vos propres visites en tant qu’administrateur des données de suivi, ce qui évite de fausser vos statistiques réelles. Enregistrez le fichier.

Méthode 2 : via les options du thème (Astra, GeneratePress, Kadence)

Plusieurs thèmes populaires intègrent nativement un champ pour ajouter des scripts personnalisés dans le head ou le footer du site, sans toucher au code. C’est souvent la méthode la plus rapide si vous utilisez l’un de ces thèmes.

Sur Astra : allez dans Apparence > Personnaliser > Options Astra > Avancé > Crochets (Hooks). Collez le script GA4 dans le champ « wp_head ».

Sur GeneratePress : allez dans Apparence > Personnaliser > GeneratePress > Éléments. Créez un nouvel élément de type « Hook », choisissez « wp_head » comme position, et collez le script.

Sur Kadence : allez dans Apparence > Personnaliser > Général > Scripts. Un champ dédié permet d’ajouter des scripts dans le head de toutes les pages.

Dans tous les cas, utilisez le même code que dans la méthode 1, avec votre identifiant G-XXXXXXXXXX. La condition d’exclusion des administrateurs (is_user_logged_in()) ne peut pas être ajoutée via ces interfaces, mais vous pouvez la contourner en activant le filtre « Ne pas suivre moi-même » directement dans les paramètres de la propriété GA4.

Méthode 3 : via Code Snippets (si pas accès aux fichiers du thème)

Si vous n’avez pas accès aux fichiers du thème, que votre hébergeur ne propose pas d’éditeur de fichiers ou que vous préférez éviter de manipuler du PHP directement, le plugin Code Snippets est la solution la plus propre. C’est le seul cas où j’accepte d’utiliser un plugin pour cette tâche, parce que Code Snippets est léger, maintenu activement et fait exactement une chose : gérer des extraits de code PHP ou JavaScript sans toucher aux fichiers du thème.

Installez et activez le plugin Code Snippets depuis Extensions > Ajouter. Dans le menu Code Snippets > Ajouter, créez un nouveau snippet. Donnez-lui un nom (« GA4 tracking »), choisissez « Exécuter dans le head de toutes les pages front-end » comme type, et collez ce code :

add_action( 'wp_head', function() {
    if ( is_user_logged_in() ) return;
    ?>
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
    <script>
        window.dataLayer = window.dataLayer || [];
        function gtag(){dataLayer.push(arguments);}
        gtag('js', new Date());
        gtag('config', 'G-XXXXXXXXXX');
    </script>
    <?php
});

Remplacez G-XXXXXXXXXX par votre identifiant, activez le snippet et enregistrez. L’exclusion des administrateurs est incluse.

Méthode 4 : via Google Tag Manager

Google Tag Manager est une couche supplémentaire entre WordPress et GA4 : plutôt que d’injecter le script GA4 directement, on injecte GTM, qui gère ensuite tous les scripts de tracking depuis son interface. C’est la méthode à privilégier si vous avez ou prévoyez d’avoir plusieurs scripts à gérer : pixel Facebook, LinkedIn Insight Tag, scripts de conversion Google Ads, événements personnalisés. Centraliser tout ça dans GTM évite de multiplier les snippets dans le code.

Créez un compte sur tagmanager.google.com, créez un conteneur de type « Web » pour votre site. GTM vous fournit deux extraits de code : un à placer dans le <head>, un autre immédiatement après la balise <body>. Ajoutez-les via la méthode 1 (functions.php du thème enfant) ou la méthode 3 (Code Snippets).

Dans GTM, créez ensuite une balise de type « Google Analytics : GA4 Configuration », entrez votre ID de mesure G-XXXXXXXXXX, et configurez le déclencheur « All Pages ». Publiez le conteneur. GA4 est maintenant actif via GTM.

Cette méthode est plus complexe à mettre en place mais offre une flexibilité totale pour la suite. Si vous n’avez qu’un seul script à gérer (GA4 uniquement), la méthode 1 reste plus simple et tout aussi efficace.

Vérifier que GA4 fonctionne correctement

Une fois le code installé, ne supposez pas que tout fonctionne : vérifiez-le. Ouvrez votre site dans un onglet en navigation privée (pour ne pas être identifié comme administrateur) et allez simultanément dans votre interface GA4, dans la section Rapports > Temps réel. Si l’installation est correcte, votre visite apparaît dans les données en temps réel en moins de 30 secondes.

Si rien n’apparaît, vérifiez d’abord que le bon identifiant G-XXXXXXXXXX est bien utilisé dans le code (une erreur de copie est fréquente), que le fichier functions.php a bien été enregistré sans erreur PHP (une erreur de syntaxe peut rendre le site inaccessible), et qu’il n’y a pas un autre script GA4 déjà présent via un plugin comme Site Kit ou MonsterInsights, ce qui créerait un doublon de suivi et fausserait les données.

L’extension Chrome GA Debugger permet aussi de voir en temps réel les appels envoyés à GA4 depuis votre navigateur, utile pour diagnostiquer précisément ce qui est tracké et ce qui ne l’est pas.

Questions fréquentes

Combien de temps avant de voir les premières données dans GA4 ?

Les données en temps réel sont disponibles immédiatement après l’installation. Les rapports standard (acquisition, engagement, conversions) peuvent prendre 24 à 48 heures pour afficher des données complètes. C’est normal, GA4 traite les données par lots avant de les afficher dans les rapports.

Que faire si j’avais déjà un plugin GA installé ?

Désactivez et supprimez le plugin avant d’ajouter le code manuellement. Si vous laissez les deux actifs en même temps, chaque visite sera comptabilisée en double dans GA4, ce qui fausse toutes vos métriques. Vérifiez via le mode temps réel qu’une seule requête GA4 est envoyée par page vue.

Quelle méthode choisir si je ne suis pas développeur ?

La méthode 2 via les options du thème (Astra, GeneratePress, Kadence) est la plus accessible si votre thème la propose. Sinon, la méthode 3 via Code Snippets est la plus simple sans toucher au code PHP directement : l’interface est claire et le risque d’erreur est limité.

GA4 ralentit-il mon site WordPress ?

Le script GA4 est chargé en async, ce qui signifie qu’il ne bloque pas le rendu de la page. Son impact sur le LCP est donc minimal comparé à d’autres ressources. En revanche, il ajoute une requête réseau externe vers les serveurs Google, ce qui peut légèrement affecter les métriques de performance dans certains outils comme GTmetrix. C’est un compromis inévitable pour avoir des données d’audience fiables.

Si vous voulez aller plus loin sur l’optimisation technique de votre site WordPress, consultez mon article sur les meilleurs plugins WordPress SEO ou ma page consultant SEO WordPress freelance pour un accompagnement complet.