Calculer la progression d'un résultat clé OKR
Un résultat clé parti de 20, aujourd’hui à 65 et visant 100 est avancé à 56,25 %, car la progression se mesure depuis la valeur de départ. Les cibles qui doivent baisser, comme un délai de réponse, se calculent de la même façon. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Valeur de départ
- 20
- Valeur actuelle
- 65
- Valeur cible
- 100
- Progression (%)
- 56,25
Ce calculateur transforme la valeur initiale, la mesure actuelle et la cible d'un résultat clé OKR en un pourcentage clair. Il convient aux objectifs en hausse, tels que le revenu, comme aux objectifs en baisse, tels que le délai de réponse ou les défauts. Il conserve les valeurs inférieures à 0 et supérieures à 100 afin de révéler les reculs et les dépassements. Vous pouvez l'utiliser pour une revue ponctuelle ou dans des rapports automatisés.
Mesurez depuis la référence réelle
Un pourcentage OKR n'a de sens que s'il part de la valeur relevée au début du cycle. Le calcul porte sur la fraction de la distance totale parcourue. Passer de 20 à 60 avec une cible de 100 donne 50 pour cent, et non 60.
Conservez la même unité, la même période et le même périmètre pour les trois nombres. Le résultat est arrondi à six décimales afin de stabiliser les rapports tout en gardant une précision utile.
Appliquez une formule aux hausses et aux baisses
La formule directionnelle traite les deux cas sans mode distinct. Pour une hausse, une valeur actuelle plus élevée indique généralement davantage de progression; pour une baisse, c'est l'inverse. Réduire un délai de 12 heures à 4 heures et atteindre 8 heures correspond à 50 pour cent.
Les signes s'annulent correctement. Cette méthode convient aux coûts, à l'attrition, aux défauts, à la latence et aux émissions. La cible ne peut pas égaler la valeur initiale, car la distance serait nulle.
Les nombres négatifs restent admis lorsque la métrique les autorise.
Interprétez les reculs et les dépassements
Le résultat n'est pas borné entre 0 et 100. Un pourcentage négatif signale un éloignement de la cible; une valeur supérieure à 100 signale son dépassement dans le bon sens. Les borner masquerait une information utile.
Considérez ce nombre comme une mesure, et non comme une évaluation complète. Si un tableau de bord exige une barre limitée, conservez la valeur brute et limitez uniquement l'affichage. Dans une automatisation, calculez après validation de la mesure récente et stockez les trois valeurs sources avec le pourcentage pour préserver l'explication et l'auditabilité.
Cas d’usage
Actualiser un tableau OKR trimestriel
Convertissez chaque mesure approuvée en pourcentage cohérent pour le cycle.
Suivre un objectif de réduction
Mesurez la baisse de l'attrition, des défauts ou des délais.
Auditer les calculs de progression
Recalculez un pourcentage depuis ses trois valeurs pour le contrôler.
Questions fréquentes
Quelle formule est appliquée ?
Elle divise (valeur actuelle moins valeur initiale) par (cible moins valeur initiale), puis multiplie par 100.
Une cible décroissante est-elle prise en charge ?
Oui. La formule fonctionne lorsque la cible est inférieure au départ.
Pourquoi le résultat peut-il être négatif ou dépasser 100 ?
Une valeur négative indique un recul; au-dessus de 100, la cible est dépassée.
Pourquoi refuser une cible égale au départ ?
Le mouvement requis serait nul et entraînerait une division par zéro indéfinie.
Pourquoi ne pas simplement diviser la valeur actuelle par la cible ?
Parce que cela ignore le point de départ. Passer de 20 à 60 avec une cible de 100 couvre la moitié du chemin, soit 50 % de progression, alors que 60 divisé par 100 afficherait à tort 60 %.
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/biz/okr-progress-percent \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"starting_value":20,"current_value":65,"target_value":100}'const res = await fetch("https://api.kit.forhosting.com/biz/okr-progress-percent", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"starting_value": 20,
"current_value": 65,
"target_value": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/biz/okr-progress-percent",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"starting_value": 20,
"current_value": 65,
"target_value": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/biz/okr-progress-percent", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"starting_value":20,"current_value":65,"target_value":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"starting_value":20,"current_value":65,"target_value":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/biz/okr-progress-percent", 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
{
"starting_value": 20,
"current_value": 65,
"target_value": 100
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.okr_progress_percent",
"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
Mesurez depuis la référence réelle
Saisissez-la dans starting_value, placez la dernière mesure fiable dans current_value et la cible dans target_value.
Questions techniques
Quel est le coût d'un calcul API ?
Chaque appel API coûte $0.002. La version web exécute localement le même calcul déterministe.