Vérifier la balise canonical
La balise canonical indique à Google l’URL de référence d’un contenu, pour éviter que des adresses quasi identiques se concurrencent. Cet outil la retrouve dans votre page et vérifie qu’elle est présente, unique et cohérente. Utile dès qu’un même contenu s’ouvre sous plusieurs adresses — avec ou sans « www ».
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
À quoi sert la balise canonical
Un même contenu s’ouvre souvent sous plusieurs adresses : version avec et sans « www », page d’accueil en « / » ou en « /index.html », URL portant un paramètre de campagne. Aux yeux de Google, ce sont autant de doublons qui se disputent le classement. La balise canonical désigne l’adresse à considérer comme officielle et concentre le signal sur elle. Mal réglée, elle fait au contraire disparaître la bonne page des résultats.
Ce que l’outil contrôle
Collez le HTML de votre page : l’outil isole la balise canonical et vérifie qu’elle existe, qu’il n’y en a qu’une, qu’elle pointe vers une URL absolue et valide, et qu’elle ne se contredit pas avec une autre indication de la page. Il repère les cas dangereux — canonical vers une page bloquée, renvoi vers une URL différente, ou balise pointant vers une adresse en erreur — qui privent souvent une page de son référencement sans que personne ne comprenne pourquoi.
Gratuit et confidentiel
L’analyse du code collé se déroule entièrement dans votre navigateur : rien n’est envoyé, rien n’est gardé, c’est gratuit et sans inscription. Cette confidentialité compte quand on inspecte une page interne ou un site encore en préparation. Pour tester une adresse en ligne sans copier son code, la variante par URL passe par l’API et se facture $0.002 par requête. Aucune installation n’est requise, et le résultat reste sous vos yeux plutôt que sur un serveur tiers.
Cas d’usage
Doublon avec et sans www
Studio Lumen SAS constate que le site d’un client s’ouvre en « www » et sans « www ». En collant le HTML, l’agence vérifie que la balise canonical pointe partout vers la même version de référence.
Paramètres de campagne
Atelier Garnier SARL diffuse une promotion avec des liens portant un paramètre de suivi. L’outil confirme que la canonical renvoie vers l’adresse propre de la fiche, sans le paramètre, pour éviter le contenu dupliqué.
Page qui a disparu de Google
Une indépendante s’étonne qu’une page ne remonte plus. L’outil révèle une canonical pointant par erreur vers l’accueil : la page se désignait elle-même comme un doublon de la page d’accueil.
Questions fréquentes
Que se passe-t-il si la balise canonical est absente ?
Google choisit alors seul l’URL de référence, souvent bien, mais parfois mal en présence de doublons. Ajouter une canonical explicite lève l’ambiguïté. L’outil vous dit si la balise manque et si un doublon la rendrait nécessaire.
Une page peut-elle pointer sa canonical vers elle-même ?
Oui, et c’est même recommandé : une page qui se désigne elle-même comme canonique confirme son statut d’original. L’outil vérifie que ce renvoi vers soi-même est correct et utilise une URL absolue.
Le code que je colle est-il transmis à un serveur ?
Non, en mode collé. Tout se passe dans votre navigateur ; le HTML ne quitte pas la page et n’est pas conservé. Seule l’analyse par URL via l’API implique un traitement à distance.
Une mauvaise canonical peut-elle nuire à mon référencement ?
Oui, franchement. Une canonical qui renvoie vers une autre page revient à déclarer la vôtre comme un doublon : Google peut cesser de l’afficher. C’est justement ce type d’erreur que l’outil met en lumière.
L’outil est-il gratuit ?
Oui pour le mode collé, sans compte ni limite. Seule la vérification directe d’une adresse en ligne, via l’API, est facturée $0.002 la requête, en dollars US.
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/canonical-check \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://ejemplo.com"}'const res = await fetch("https://api.kit.forhosting.com/seo/canonical-check", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://ejemplo.com"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/canonical-check",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://ejemplo.com"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/canonical-check", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://ejemplo.com"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://ejemplo.com"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/canonical-check", 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
{
"url": "https://ejemplo.com"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.canonical_check",
"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. |