← Retour au blog

Vérifier la balise H1 : repérer les H1 manquants ou dupliqués

Vérifier la balise H1 : repérer les H1 manquants ou dupliqués

Un H1 tag checker lit le HTML d'une page, repère le titre principal <h1> et indique s'il est absent, dupliqué, trop long ou en décalage avec le sujet de la page. Lancé sur tout un site et répété dans le temps, le même contrôle vous signale aussi quand une mise à jour de thème ou un rédacteur a modifié un H1 qui était correct.

Le H1 donne l'impression d'un problème réglé depuis longtemps, et c'est précisément pour cela qu'il dérive. Les thèmes sont mis à jour, les page builders ajoutent leurs propres titres, les rédacteurs collent du contenu dans les templates. Personne ne rouvre le HTML rendu jusqu'au jour où quelqu'un enquête sur une chute de positionnement.

Le rôle du H1 sur la page

Le H1 est le titre visible en haut du document. Pour le lecteur, il confirme qu'il est arrivé au bon endroit. Pour un moteur de recherche, c'est l'un des indices on-page les plus clairs sur le sujet de la page, avec la balise <title>, et c'est un signal que vous maîtrisez entièrement. Quand il est vide, générique ou dupliqué, vous perdez un élément de pertinence que rien ne vous obligeait à abandonner.

Les problèmes qu'un H1 tag checker doit signaler

Problème Origine habituelle Ce qu'il faut chercher
Aucun H1 Une landing page montée dans un page builder où tous les titres sont restés en H2, ou une refonte de template Aucun élément <h1> dans le DOM rendu
Plusieurs H1 Le logo ou le nom du site entouré d'un <h1> dans le header, plus le titre de l'article dans un autre Deux occurrences ou plus, dont souvent une identique sur toutes les pages
H1 générique « Bienvenue », « Boutique », « Blog » hérités d'un template Le même texte court sur de nombreuses URL
H1 très long Une liste de mots-clés collée par le client Des titres qui dépassent largement une ligne sur desktop
H1 en contradiction avec le title Title mis à jour dans le plugin SEO sans toucher au H1, ou l'inverse Un title et un H1 qui parlent visiblement de deux sujets différents
Même H1 sur plusieurs URL Variantes de produit, pages de localisation, archives paginées Texte de H1 dupliqué entre plusieurs URL dans un crawl

Sur les H1 multiples, une précision honnête : Google a indiqué qu'il gère très bien plusieurs H1 sur une même page, et le HTML l'autorise. Cela vaut quand même la peine de corriger, car un second H1 est presque toujours un accident (le logo dans le header en est l'exemple classique) et il brouille le seul titre que vous vouliez vraiment utiliser.

Vérifier une seule page

Il existe trois méthodes, et elles ne donnent pas toujours le même résultat.

Le code source (view-source: devant l'URL, puis une recherche sur <h1) montre le HTML envoyé par le serveur. C'est ce qu'un crawler simple voit en premier.

Les DevTools montrent le DOM rendu, après exécution du JavaScript. Ouvrez la console et lancez document.querySelectorAll('h1').length pour compter les titres, ou [...document.querySelectorAll('h1')].map(h => h.textContent.trim()) pour les afficher. Si le nombre diffère de celui du code source, un script ajoute ou remplace le titre, ce qui est courant sur les front-ends en React ou Vue.

Les extensions SEO pour navigateur affichent le H1 dans un panneau. C'est rapide, mais pas plus fiable que la version du HTML que lit l'extension.

Dans les page builders WordPress, le niveau de titre est un réglage du widget ou du bloc. Le widget Titre d'Elementor possède une liste déroulante « Balise HTML » et le bloc Titre de l'éditeur de blocs un sélecteur de niveau : un H1 « disparu » n'est donc souvent qu'un titre passé en H2 lors d'une refonte.

Pourquoi cela ne tient plus sur un portefeuille de sites clients

Tout cela fonctionne pour une URL. Pas pour vingt sites clients de quelques centaines de pages chacun, déployés par des développeurs qui ne vous préviendront pas quand ils mettent un thème à jour. Une modification du template de header peut ajouter un second H1 sur toutes les pages d'un coup, sans que rien ne change à l'écran. Un crawl lancé une fois par trimestre finit par le repérer, mais le changement est alors en ligne depuis des semaines.

Ce qui aide, c'est un contrôle qui tourne seul et se compare au résultat précédent. La question devient alors « quels H1 ont changé depuis hier ? » au lieu de « quels H1 posent problème aujourd'hui ? ».

Surveiller les H1 avec Deltio

Deltio contrôle le H1 des pages qu'il surveille lors de son cycle quotidien, avec le title et la meta description, le canonical, le noindex et le sitemap. Il signale les H1 absents, multiples, trop courts ou trop longs et, comme il compare chaque vérification à la précédente, il vous alerte aussi quand le texte d'un H1 change. L'alerte part sur Slack et par e-mail pour le site concerné et indique l'URL. Après un déploiement, vous pouvez aussi lancer un scan SEO manuel plutôt que d'attendre le prochain cycle.

Si vous contrôlez aussi les autres balises, la même approche s'applique avec le title tag checker et le canonical tag checker. Pour les sites multilingues, le guide hreflang checker présente les vérifications supplémentaires à faire à la main.

Questions fréquentes

Le H1 doit-il être identique à la balise title ?
Les deux doivent traiter du même sujet, sans forcément correspondre mot pour mot. Le title est rédigé pour les résultats de recherche et tronqué autour de 60 caractères, il contient donc souvent la marque ou un qualificatif. Le H1 s'adresse à quelqu'un qui est déjà sur la page et peut être plus naturel.
Un H1 masqué en CSS compte-t-il quand même ?
Il est présent dans le HTML, donc un checker le trouvera. Mais cacher le titre principal aux visiteurs tout en le montrant aux robots est une pratique que les moteurs de recherche regardent avec méfiance. Si une maquette n'a pas de titre visible, mieux vaut faire d'un titre visible le H1 que d'en cacher un.
Mon checker ne trouve aucun H1 alors que je vois un grand titre sur la page. Pourquoi ?
Ce titre visible est probablement du texte mis en forme dans une div ou un span, ou un titre réglé en H2 ou moins dans le page builder. Inspectez l'élément dans les DevTools pour voir sa balise réelle.
Un scan SEO manuel peut-il remplacer des contrôles de H1 planifiés ?
Un scan manuel est utile juste après une mise en production dont vous êtes au courant. Les contrôles planifiés, eux, repèrent les mises en production dont vous n'étiez pas au courant, c'est-à-dire la plupart d'entre elles sur des sites clients.
Combien coûte Deltio ?
Starter coûte 29 € par mois, ou 24 € par mois en facturation annuelle, pour 50 sites et 5 000 URL maximum. Professional coûte 59 € par mois (49 € en facturation annuelle) pour 200 sites maximum, et Enterprise 139 € par mois (116 € en facturation annuelle) pour 500 sites maximum. Chaque forfait inclut un essai gratuit de 14 jours, et l'export CSV est disponible à partir de Professional.