Calcular el porcentaje de progreso de un resultado clave OKR
Un resultado clave que empezó en 20, va por 65 y apunta a 100 lleva un 56,25 % de avance, porque el progreso se mide desde el valor inicial. Las metas que deben bajar, como el tiempo de respuesta, funcionan igual. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Valor inicial
- 20
- Valor actual
- 65
- Valor objetivo
- 100
- Progreso (%)
- 56,25
Esta calculadora convierte el valor inicial, la medición actual y el objetivo de un resultado clave OKR en un porcentaje claro. Funciona tanto con metas que deben crecer, como ingresos o retención, como con metas que deben disminuir, como tiempos de respuesta o defectos. Conserva valores inferiores a 0 y superiores a 100 para mostrar retrocesos y superaciones sin límites artificiales. Puede utilizarla en una revisión o integrarla como cálculo determinista en informes automatizados.
Mida el avance desde la referencia real
Un porcentaje OKR solo resulta significativo si parte del valor registrado al comienzo del ciclo. La calculadora determina qué fracción de la distancia total se ha recorrido. Pasar de 20 a 60 con un objetivo de 100 equivale al 50 por ciento, no al 60 por ciento que produciría dividir el valor actual por el objetivo.
Mantenga los tres datos en la misma unidad, periodo y ámbito. No mezcle ingresos mensuales y anuales ni referencias regionales y resultados globales. El resultado se redondea a seis decimales para ofrecer informes estables con precisión suficiente.
Use una fórmula para aumentos y reducciones
La fórmula direccional sirve para ambos tipos de resultado sin configurar modos. En una meta creciente, un valor actual mayor suele indicar más avance; en una decreciente sucede lo contrario. Reducir el tiempo medio de 12 horas a 4 horas y alcanzar 8 horas representa un 50 por ciento.
Los signos se compensan porque tanto el cambio logrado como el requerido son negativos. Esto resulta útil para costes, abandono, defectos, latencia o emisiones. El objetivo no puede coincidir con el inicio porque no existiría distancia medible y se dividiría por cero.
Los valores negativos sí son válidos cuando la métrica los admite, por ejemplo en flujo de caja neto.
Interprete retrocesos y superaciones
La salida no se limita entre 0 y 100. Un porcentaje negativo indica que la medición se alejó del objetivo; uno superior a 100 indica que lo superó en la dirección prevista. Ambos datos aportan información que se perdería al recortarlos.
Considere el porcentaje una medición, no una evaluación completa del rendimiento, y compare solo resultados con referencias, objetivos y fechas igualmente fiables. Si un panel necesita una barra limitada, conserve el valor bruto y limite únicamente su presentación. En automatizaciones, calcule después de validar la medición más reciente y guarde junto al porcentaje los tres valores de origen para que futuras modificaciones sigan siendo explicables y auditables.
Qué puede hacer con ella
Actualizar un panel OKR trimestral
Convierta cada medición aprobada en un porcentaje coherente para el periodo actual.
Seguir un objetivo de reducción
Mida avances hacia menos abandono, defectos o tiempo de respuesta.
Auditar cálculos de progreso
Recalcule un porcentaje con su referencia, medición y objetivo para comprobarlo.
Preguntas frecuentes
¿Qué fórmula utiliza la calculadora?
Calcula (valor actual menos valor inicial) dividido por (objetivo menos valor inicial) y multiplica por 100.
¿Admite un objetivo que debe disminuir?
Sí. La fórmula direccional funciona cuando el objetivo está por debajo del inicio.
¿Por qué el resultado puede ser negativo o superar 100?
Un valor negativo muestra alejamiento y uno superior a 100 muestra que se superó el objetivo.
¿Por qué se rechazan inicio y objetivo iguales?
El movimiento requerido sería cero y produciría una división por cero sin porcentaje definido.
¿Por qué no basta con dividir el valor actual entre el objetivo?
Porque así se ignora el punto de partida. Pasar de 20 a 60 con un objetivo de 100 cubre la mitad del camino, un 50 % de progreso, mientras que 60 entre 100 indicaría por error un 60 %.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su 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)Ejemplo de solicitud
{
"starting_value": 20,
"current_value": 65,
"target_value": 100
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.okr_progress_percent",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Mida el avance desde la referencia real
Introduzca esa referencia como starting_value, la última medición fiable como current_value y el destino previsto como target_value.
Preguntas técnicas
¿Cuánto cuesta un cálculo mediante API?
Cada solicitud API cuesta $0.002. La versión web ejecuta localmente el mismo cálculo determinista.