Validateur de sitemap XML
Repérez dans un sitemap les adresses qui rendent les robots méfiants : dans un fichier de deux entrées, no-es-una-url ressort invalide tandis que l'autre passe. Les chemins relatifs comme /products/42 sont aussi signalés, et vous voyez si des dates lastmod existent. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Le sitemap XML liste, à l’intention de Google, les adresses de votre site. Cet outil en lit les URL, signale celles qui ne sont pas des adresses absolues valides et indique si le fichier porte des dates lastmod. Utile avant de le soumettre à la Search Console, pour repérer les fautes de syntaxe qui bloquent l’exploration.
Ce qu’un sitemap doit respecter
Un sitemap valide suit des règles précises : un en-tête XML correct, chaque adresse dans une balise dédiée, des URL absolues et échappées, une date de dernière modification au format ISO, et un plafond de 50 000 URL et 50 Mo décompressés. Cet outil se concentre sur le point structurel qui casse le plus souvent un fichier : chaque adresse est-elle une URL absolue valide ? Il la relit, pointe celle qui ne l’est pas, et indique si le fichier porte des dates lastmod.
Les erreurs les plus courantes
La faute la plus fréquente est une adresse relative — /produits/42 — là où le sitemap exige une URL absolue complète, avec protocole et domaine : elle passe pour un lien valide dans une page mais rend l’entrée inexploitable ici. L’outil la liste individuellement plutôt que de vous laisser face à un « fichier invalide » sans savoir où chercher. D’autres défauts existent — esperluette non échappée, balises mal imbriquées, date mal formée — mais relèvent d’un contrôle XML à part.
Cas d’usage
Sitemap généré par un plugin
Menuiserie Rousseau & Fils a un sitemap produit par une extension. En le collant, l’artisan vérifie que toutes les adresses sont bien absolues et qu’aucune n’est mal formée avant de le soumettre.
Fichier édité à la main
Une indépendante maintient un petit sitemap à la main. L’outil repère une adresse relative glissée dans le fichier, qui le rendait invalide sans message clair côté Search Console.
Contrôle après refonte
Studio Lumen SAS refait le site d’un client et veut être sûr que le nouveau sitemap tient la route. La vérification confirme que chaque adresse est absolue et bien formée et compte les URL avant la remise en ligne.
Questions fréquentes
Combien d’URL un sitemap peut-il contenir ?
Jusqu’à 50 000 adresses et 50 Mo une fois décompressé. Au-delà, il faut découper le site en plusieurs sitemaps regroupés dans un fichier d’index. Cet outil lit les URL et les compte, mais ne bloque pas pour vous un fichier au-delà de la limite.
Quel format de date le sitemap attend-il ?
Le format ISO 8601, par exemple 2026-07-14 ; une date à la française, 14/07/2026, est refusée par Google. Cet outil indique si le fichier porte des dates lastmod, mais n’en contrôle pas le format — c’est à vous de respecter le standard.
Mon sitemap est-il transmis à un serveur ?
Non, en mode collé. La vérification s’exécute dans votre navigateur ; le fichier ne quitte pas la page et rien n’est conservé.
Un sitemap invalide empêche-t-il l’indexation ?
Il peut la freiner : si Google ne parvient pas à lire le fichier, il ignore les URL qu’il contient et découvre vos pages plus lentement. Vérifier avant de soumettre évite ce blocage silencieux.
Faut-il payer pour vérifier ?
Non pour le mode collé : c’est gratuit, sans compte ni limite.
Outils associés
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/sitemap-validate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/sitemap.xml"}'const res = await fetch("https://api.kit.forhosting.com/seo/sitemap-validate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://example.com/sitemap.xml"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/sitemap-validate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://example.com/sitemap.xml"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/sitemap-validate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://example.com/sitemap.xml"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://example.com/sitemap.xml"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/sitemap-validate", 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://example.com/sitemap.xml"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.sitemap_validate",
"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. |
Notes techniques
Collez, c’est gratuit
Pratique pour contrôler un fichier généré à la main ou par un plugin avant sa mise en ligne. Collez le contenu de votre sitemap : la vérification se fait dans le navigateur, sans rien envoyer ni conserver, gratuitement et sans inscription. Pour vérifier un sitemap déjà publié en le chargeant depuis son adresse, la variante par URL passe par l’API et coûte $0.002 par requête.