Variantes A/B
Donnez un texte de départ — titre, accroche, appel à l’action, e-mail — et l’outil en produit des variantes conçues pour un test A/B : des versions qui diffèrent sur un angle clair, pas sur des détails. Vous les mettez en concurrence sur votre audience réelle et laissez les chiffres, non l’intuition, désigner la gagnante.
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.
Des variantes vraiment différentes
Un test A/B n’a de sens que si les versions s’opposent sur quelque chose de net : le ton, la promesse, l’angle. Comparer deux formulations quasi identiques ne vous apprend rien. L’outil génère des variantes contrastées, chacune défendant une hypothèse claire, pour que le résultat du test soit interprétable. Vous savez alors ce qui a fait la différence, pas seulement quelle version a gagné.
Une seule chose change à la fois
Pour lire un test, isolez la variable : testez le titre, ou le bouton, ou l’accroche — pas tout en même temps. Sinon, impossible de savoir ce qui a joué. L’outil vous aide à décliner un élément précis tout en gardant le reste stable. Cette rigueur transforme un test en enseignement réutilisable pour vos prochaines campagnes. La discipline de la variable unique fait la valeur du test.
Du texte au test
Sur cette page, vous générez vos variantes et les copiez dans votre outil de test — emailing, page, publicité. Par l’API, la génération alimente une chaîne d’expérimentation. Applications mobiles, e-mail et Telegram suivront. L’outil ne mesure pas les résultats : ce sont votre plateforme et votre audience qui livrent le verdict, sur des données réelles.
Cas d’usage
Un objet d’e-mail à tester
Studio Lumen SAS oppose deux angles d’objet pour une campagne : bénéfice contre curiosité. L’outil produit les deux versions ; le routeur départage sur les ouvertures.
Un bouton d’appel à l’action
Julien Lefèvre teste « Réserver un appel » contre « Discutons de votre projet ». Il obtient des variantes nettes et compare les clics sur sa page.
Une accroche publicitaire
Nadia Benali met en test deux promesses distinctes pour une même offre, afin d’identifier l’argument qui parle à sa cible.
Questions fréquentes
Combien coûte une variante ?
$0.003 par requête, plus $0.0135 par variante générée. Facturé à l’usage, sans abonnement : vous produisez le nombre de versions nécessaire à votre test et ne payez que celles-là.
Combien de variantes pour un test fiable ?
Commencez par deux versions clairement opposées. Multiplier les variantes disperse votre trafic et rend les résultats moins nets, surtout avec une audience modeste. Mieux vaut un test binaire concluant qu’un test à cinq bras illisible.
L’outil réalise-t-il le test à ma place ?
Non. Il génère les variantes ; le test lui-même se mène dans votre outil d’emailing, votre page ou votre régie publicitaire. C’est là que se mesurent ouvertures, clics et conversions, sur votre audience réelle.
Mon texte de départ est-il conservé ?
Le contenu que vous fournissez est traité le temps de produire les variantes, puis sert seulement à vous renvoyer le résultat. Il n’est ni stocké pour un autre usage ni transmis à un tiers.
Faut-il un compte ?
Non. Achat direct par PayPal, sans inscription, avec facture possible pour votre comptabilité.
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/text/ab-variants \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/text/ab-variants", {
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/text/ab-variants",
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/text/ab-variants", 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/text/ab-variants", 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": "text.ab_variants",
"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.
Limites
max_tokens | 20000 |
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. |
422 | task_failed | La tâche a échoué : elle ne vous est pas facturée. |