Vérifier le chevauchement du titre et de la méta-description
Un titre et une méta-description doivent répondre à la même intention de recherche sans formuler exactement le même message.
Lancer gratuitement
Ce vérificateur normalise les deux champs, mesure le chevauchement de leurs mots uniques, énumère les termes communs et repère une description qui répète simplement le titre une ou plusieurs fois. Servez-vous du résultat pour détecter l’espace perdu avant publication, examiner des lots selon une règle constante ou motiver une réécriture avec un indicateur transparent plutôt qu’avec une simple impression visuelle.
Ce que révèle le taux de chevauchement
Le taux de chevauchement est un indice de Jaccard calculé à partir des mots uniques normalisés du titre et de la description. Le vérificateur compte les termes présents dans les deux champs, puis divise ce nombre par celui des mots distincts présents dans l’un ou l’autre. Zéro signifie qu’aucun terme normalisé n’est commun ; un signifie que le vocabulaire unique est identique. Les valeurs intermédiaires constituent des indices, pas une note universelle. Une certaine répétition est utile, car les deux champs traitent généralement de la même page, du même produit ou de la même question. Un chevauchement excessif peut signaler une description peu informative, tandis qu’un faible taux peut révéler deux sujets différents. Consultez la liste des mots communs avec le taux afin de distinguer les concepts importants des termes génériques. Les décomptes indiquent aussi les occurrences répétées, mais celles-ci n’augmentent pas le taux : répéter cinq fois un mot-clé ne peut donc pas gonfler artificiellement la comparaison.
Normalisation du texte et détection des répétitions
Avant la comparaison, l’outil applique la normalisation de compatibilité Unicode, met les lettres en minuscules selon une configuration anglaise fixe et extrait les suites de lettres et de chiffres. Il conserve les apostrophes internes : une contraction reste donc un seul élément, alors que la ponctuation entourant un mot n’affecte pas la correspondance. Le résultat est déterministe : aucun modèle ni moteur de recherche n’est consulté, aucune heure n’intervient et les paramètres linguistiques du navigateur n’ont aucun effet. L’indicateur de titre répété obéit à une règle plus stricte que le taux. Il n’est vrai que si la séquence complète des mots normalisés de la description reproduit exactement celle du titre une ou plusieurs fois. Une description contenant les mêmes mots dans un autre ordre peut donc obtenir un taux de un sans être marquée. Un seul mot réellement nouveau rend également l’indicateur faux. Les chaînes vides, composées uniquement d’espaces ou dépourvues de mot reconnaissable sont refusées, car aucun taux pertinent ne peut être calculé.
Transformer le résultat en meilleure description
Commencez par l’indicateur de répétition. S’il est vrai, réécrivez la description afin d’apporter une information absente du titre : avantage, périmètre, public visé, différence, contrainte ou prochaine étape utile. Examinez ensuite les mots communs. Conservez les termes précis qui relient les deux champs au sujet réel de la page, sans remplir la description de variantes répétées uniquement pour modifier le score. Une bonne description développe naturellement la promesse du titre. Lorsque l’indicateur est faux, utilisez le taux comme diagnostic et non comme objectif. Comparez des pages semblables d’un même site, étudiez les valeurs extrêmes inattendues et relisez les champs avant de trancher. L’outil ne prédit pas le classement, ne mesure pas les clics, n’évalue pas la longueur et ne garantit pas l’extrait affiché par un moteur. Il isole une question éditoriale à associer aux contrôles de longueur, de mots-clés, de données structurées et à la relecture humaine. Vos automatisations peuvent appeler l’API pour $0.002 par élément et confier les cas suspects à une personne chargée de l’édition.
Cas d’usage
Contrôler une page avant publication
Vérifiez que la méta-description enrichit le titre au lieu de reprendre la même formulation.
Auditer un export de métadonnées
Appliquez une mesure transparente aux titres et descriptions exportés depuis un système de gestion de contenu.
Prioriser les réécritures éditoriales
Soumettez à une personne éditrice les entrées répétant le titre ou présentant un chevauchement inhabituellement élevé.
Questions fréquentes
Que signifie le taux de chevauchement ?
Il correspond au nombre de mots uniques normalisés communs aux deux champs, divisé par le total de termes uniques des deux champs.
Quand l’indicateur de titre répété est-il vrai ?
Il est vrai lorsque la séquence normalisée de la description reproduit exactement celle du titre une ou plusieurs fois.
La casse ou la ponctuation modifie-t-elle le résultat ?
La casse et la ponctuation extérieure ne modifient pas les correspondances. Le texte Unicode est normalisé avant comparaison.
Un taux élevé est-il toujours mauvais ?
Non. Des champs liés doivent partager des termes essentiels. Le taux aide à relire ; ce n’est ni une règle de classement ni un verdict automatique.
Que se passe-t-il si un champ est vide ?
La requête échoue avec une erreur de saisie, car la comparaison exige au moins un mot reconnaissable dans chaque champ.
Combien coûte une requête API ?
Chaque élément coûte $0.002. Le calcul est déterministe et n’utilise ni modèle linguistique ni service réseau externe.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/seo/title-description-similarity \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"title":"Affordable Solar Panels for Homes","description":"Compare affordable solar panels, installation choices, and savings for your home."}'const res = await fetch("https://api.kit.forhosting.com/seo/title-description-similarity", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"title": "Affordable Solar Panels for Homes",
"description": "Compare affordable solar panels, installation choices, and savings for your home."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/title-description-similarity",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"title": "Affordable Solar Panels for Homes",
"description": "Compare affordable solar panels, installation choices, and savings for your home."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/title-description-similarity", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"title":"Affordable Solar Panels for Homes","description":"Compare affordable solar panels, installation choices, and savings for your home."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"title":"Affordable Solar Panels for Homes","description":"Compare affordable solar panels, installation choices, and savings for your home."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/title-description-similarity", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"title": "Affordable Solar Panels for Homes",
"description": "Compare affordable solar panels, installation choices, and savings for your home."
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.title_description_similarity",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |