Regrouper vos mots-clés par thème
Cet outil prend une liste de mots-clés et les regroupe automatiquement par proximité de sens, à l’aide d’embeddings. Chaque groupe rassemble les requêtes qui appellent une même page, ce qui vous évite d’écrire deux articles concurrents sur le même sujet. Idéal pour bâtir un plan de contenu à partir d’un export de centaines de requêtes.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
De la liste en vrac aux grappes de sens
Quand on exporte les requêtes d’un site — depuis la Search Console ou un outil de recherche de mots-clés — on obtient vite des centaines de lignes en désordre. L’outil les range en grappes thématiques : les variantes d’une même intention se retrouvent ensemble. Vous passez d’une liste illisible à une poignée de sujets nets, chacun correspondant à une page à écrire ou à renforcer.
Le sens plutôt que les mots exacts
La méthode repose sur les embeddings : chaque expression est convertie en une représentation de son sens, puis comparée aux autres. « Devis assurance voiture » et « assurance auto pas chère » ne partagent presque aucun mot, mais visent la même intention — l’outil les réunit. Un regroupement par mots communs les aurait séparées, laissant croire à tort à deux sujets distincts.
Une grappe, une page
Chaque grappe devient une décision : une page unique et bien ciblée, plutôt que trois articles qui se disputent la même requête. C’est le remède à la cannibalisation, où vos propres pages se concurrencent dans Google et se privent mutuellement de position. Vous repérez aussi la requête pivot d’un groupe, celle qui donnera le titre et l’axe du contenu.
Tarif et canaux, sans abonnement
Le service se paie à l’usage, en dollars US : $0.002 par requête, plus $0.0015 par lot traité. Vous lancez le regroupement depuis cette page pour un essai, ou via l’API pour brasser un export de plusieurs milliers de lignes d’un coup. Aucun compte, aucun abonnement : vous ne réglez que les analyses réellement effectuées.
Cas d’usage
Refonte d’un site de services
Studio Lumen SAS reprend le site d’un client et exporte 600 requêtes de la Search Console. En quelques secondes, l’outil les ramène à douze thèmes ; l’agence en tire l’arborescence des pages à créer.
En finir avec deux articles rivaux
Un consultant indépendant s’aperçoit que deux de ses articles se battent pour la même requête. Le regroupement confirme qu’ils appartiennent à la même grappe ; il les fusionne en une page plus complète, qui remonte dans les résultats.
Calendrier éditorial d’une boutique
Atelier Garnier SARL veut planifier son blog. À partir d’une liste de mots-clés autour du bois et du mobilier, les grappes obtenues deviennent autant de sujets d’articles, répartis sur le trimestre.
Questions fréquentes
Sur quoi repose le regroupement des mots-clés ?
Sur les embeddings : chaque mot-clé est traduit en une représentation mathématique de son sens, puis rapproché de ceux qui lui ressemblent. Deux formulations différentes mais de même intention finissent dans la même grappe, ce qu’un tri par mots communs ne permet pas.
Qu’est-ce que la cannibalisation, et en quoi l’outil aide ?
Il y a cannibalisation quand plusieurs de vos pages ciblent la même requête et se concurrencent dans Google. En réunissant ces requêtes dans une seule grappe, l’outil vous invite à n’écrire qu’une page par intention, plus forte qu’une poussière d’articles rivaux.
Dans quel format fournir ma liste ?
Une simple liste de mots-clés, un par ligne, suffit. Vous pouvez coller l’export de votre outil habituel : peu importe la casse ou l’ordre, le regroupement se fait sur le sens, pas sur la mise en forme.
Combien coûte un regroupement ?
$0.002 par requête, plus $0.0015 par lot traité, en dollars US. Regrouper quelques centaines de mots-clés revient à quelques centimes, calculés sur ce que vous soumettez réellement, sans abonnement.
Mes mots-clés sont-ils conservés ?
Non. La liste transite par nos serveurs le temps du calcul, par transfert chiffré, puis elle est supprimée. Le regroupement suppose un traitement à distance, que nous assumons sans détour.
Y a-t-il une limite au nombre de mots-clés ?
Pour un essai depuis cette page, une liste de taille raisonnable passe sans souci. Pour des exports de plusieurs milliers de lignes, l’API est faite pour ça et traite le tout en un seul appel.
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/keyword-cluster \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/seo/keyword-cluster", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/keyword-cluster",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/keyword-cluster", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/keyword-cluster", 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
{
"input": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.keyword_cluster",
"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. |