Sources : Google Search Console (clics et impressions par URL, 12/12/2025 au 12/06/2026) · sitemap.xml du 12/06 · Semrush (backlinks)
L'essentiel
Le sitemap est plutôt sain : 610 URLs sur 749 génèrent du clic (301 688 clics en 6 mois).
70 pages mortes identifiées (0 clic, quasi 0 impression), dont 57 déclinaisons locales par ville. Aucun backlink à perdre, vérifié via Semrush.
41 % des clics du site viennent de pages hors offre (gendarmerie, fonction publique, santé). Question stratégique à arbitrer.
155 pages à vrai trafic ne sont pas déclarées dans le sitemap (35 414 clics), dont tout un pattern d'URL /blog/ distinct de /article/.
Les lastmod du sitemap sont factices (162 URLs au même timestamp) et les priority quasi uniformes (718 sur 749 à 0.7).
1. Méthodologie du tri
Chaque URL du sitemap a été croisée avec ses clics et impressions Search Console sur 6 mois, puis classée en 3 paquets. Les seuils sont volontairement simples et discutables : ils sont posés pour être challengés.
Paquet
Critère
Lecture
Traitement proposé
A · On garde
≥ 10 clics / 6 mois
Valeur prouvée
Ne pas toucher
C · À retravailler
1 à 9 clics ou ≥ 100 impressions
Visible mais ne capte pas le clic
File de mise à jour (title, contenu), priorisée par impressions
B · Mortes
0 clic et < 100 impressions
Google ne la montre jamais
Retrait sitemap + 301 vers la page mère
Limites assumées : fenêtre de 6 mois (saisonnalité rentrée sous-évaluée), flag "alignement offre" basé sur l'URL et non le contenu (~170 pages restent à qualifier à la main), et la Search Console ne montre que les pages ayant eu au moins 1 impression.
2. Résultat du tri : un sitemap globalement sain
610 pages
Paquet A · 301 688 clics en 6 mois
69 pages
Paquet C · 237 clics, visibles sans cliquer
70 pages
Paquet B · 0 clic, quasi 0 impression
Répartition des 749 URLs du sitemap
A · On garde
610 pages · 81 %
C · À retravailler
69 pages · 9 %
B · Mortes
70 pages · 9 %
Conséquence directe : les ~1200 pages non indexées relevées dans l'audit ne viennent pas du sitemap, qui ne déclare que 749 URLs dont 90 % performent. Elles sont à chercher dans ce que Google crawle en dehors : pages orphelines, anciennes URLs, patterns non déclarés. Proposition : sortir l'export couverture complet de la GSC et appliquer le même tri à ces pages.
3. Paquet B : les pages locales programmatiques sont mortes
57 des 70 pages mortes suivent le même pattern : une déclinaison par ville de pages formation ou secteur, sur 10 villes (Paris, Lyon, Marseille, Lille, Bordeaux, Strasbourg, Montpellier, Nantes, Nice, Toulouse).
Pattern
Pages
Impressions cumulées 6 mois
/formation-metier-secretaire/[ville]
10
0
/formation-metier-conducteur-travaux/[ville]
10
0
/formation-metier-comptable/[ville]
9
0
/concours-crpe/[ville]
9
0
/concours-infirmier/[ville]
9
0
/secteurs/btp/[ville]
9
0
Articles divers
14
< 100 chacun
Vérification backlinks (Semrush) : 69 pages sur 70 n'ont strictement aucun lien entrant. La seule exception est /formation-metier-comptable/lille (2 liens depuis 1 domaine référent), dont le jus est préservé par la redirection 301.
Recommandation
Retrait du sitemap + redirection 301 vers la page formation mère pour les 70 pages. La 301 suffit : elle déréférence l'ancienne URL et transfère sa valeur (dont les backlinks) vers la destination. Le noindex ne serait utile que pour une page qu'on garde en ligne sans la rediriger. Le contenu campus Lyon et Paris est un sujet séparé : des pages dédiées aux 2 formations hybrides (FRI et TMCVC), seules concernées par les campus, plutôt que des déclinaisons par formation.
4. La question stratégique : 41 % des clics sont hors offre
Répartition des 301 925 clics du sitemap (6 mois)
Hors offre (gendarmerie, santé...)
123 994 · 41 %
À qualifier à la main
121 187 · 40 %
Aligné offre hupso
56 744 · 19 %
Le top trafic du site hors homepage est entièrement hors offre :
Page
Clics 6 mois
/article/reserviste-gendarmerie
11 307
/article/grades-gendarmerie
11 053
/article/salaire-gendarme
8 021
/article/professeur-contractuel
4 652
/article/epreuves-concours-gendarmerie
4 375
À arbitrer ensemble
Ce trafic nourrit l'autorité du domaine, le supprimer serait contre-productif. Trois options non exclusives :
Router on-page : bandeau honnête sur ces articles ("hupso ne prépare plus à ce concours") avec un angle reconversion, vers la formation la plus adjacente (ex : fonction publique et professeur contractuel vers CRPE).
Monétiser en retargeting : ces visiteurs sont une audience pixel Meta gratuite et massive (proposition détaillée séparée, à présenter côté growth).
Geler l'investissement : plus aucun budget de rédaction ou de mise à jour sur ces contenus, ils vivent et rapportent de l'autorité.
5. 155 pages à vrai trafic hors sitemap
155 pages
≥ 10 clics en 6 mois, absentes du sitemap
35 414 clics
Trafic 6 mois non déclaré à Google
Le point le plus intrigant : il existe deux patterns d'URL blog. /article/... est déclaré dans le sitemap (644 URLs), /blog/... n'y figure pas du tout alors qu'il capte du vrai trafic :
Question pour la technique : doublon de template, migration inachevée, canoniques propres ? Autres absents notables du sitemap : /connexion (6 445 clics, à étouffer des résultats de recherche) et /formation-diplomante (1 293 clics, à déclarer si la page est stratégique).
6. Hygiène du sitemap : lastmod et priority
162 URLs
Au même lastmod, à la seconde près (23/02/2024)
718 / 749
URLs avec priority 0.7 : la hiérarchie ne dit plus rien
lastmod : 162 URLs partagent exactement le timestamp 2024-02-23T13:03:35, 60 autres 2025-02-27, 26 datent de juillet 2023. Ce sont des régénérations en masse, pas de vraies dates de modification. Or c'est le seul champ que Google exploite vraiment, et uniquement s'il est fiable. À corriger côté génération.
priority : Google le traite comme un hint et 96 % des URLs ont la même valeur. Effort à mettre sur le lastmod plutôt que sur un rééquilibrage des scores.
Séquencement proposé : trier d'abord (paquets), puis régénérer le sitemap avec uniquement les pages à indexer (A + C + pages /blog/ légitimes), corriger le lastmod, resoumettre dans la GSC et suivre la courbe d'indexation.
7. Rich snippets avis clients : proposition
Pour la stratégie rich snippets évoquée au CR du 11/06. Le type Schema.org adapté aux pages formation est Course : il déclare à Google le nom de la formation, l'organisme, la note moyenne des avis (aggregateRating, alimentée par Trustpilot) et le diplôme délivré (educationalCredentialAwarded, où on déclare le titre RNCP).
Résultat cible dans Google
h
hupso
https://www.hupso.co › formation-metier-comptable
Formation Comptable à distance · Titre RNCP niveau 5 | hupso
★★★★★ 4,8/5 · 1 200+ avis Trustpilot
Devenez comptable en 12 mois avec une formation 100 % à distance, reconnue par l'État (titre RNCP niveau 5). Éligible CPF, accompagnement individuel et garantie emploi.
Maquette illustrative. Les étoiles et la note viennent du schema (aggregateRating). La mention "Titre RNCP / reconnue par l'État" doit vivre à deux endroits : dans le schema via educationalCredentialAwarded (lisible par la machine) ET dans le title + meta description (visible par l'humain), car ce champ ne s'affiche pas automatiquement dans le résultat.
Proposition
Commencer par les ~20 pages formation : schema Course avec aggregateRating (avis Trustpilot réels) et educationalCredentialAwarded (titre RNCP). C'est l'intention transactionnelle, là où les étoiles boostent le plus le CTR.
En parallèle, vérifier que les title / meta description des pages formation portent bien "titre RNCP" ou "reconnue par l'État" en clair.
Ne pas baliser la homepage : Google n'affiche plus les étoiles "self-serving" au niveau organisation depuis 2019.
Étendre ensuite aux pages secteurs si les premières remontent bien dans la GSC (rapport "Résultats enrichis").