OKR en Google Sheets: Crea un Tracker de 5 Pestañas (2026)
Crea un OKR tracker de 5 pestañas enlazadas en Google Sheets desde cero: fórmulas, dashboard automático y plantilla lista en menos de 90 minutos.
Esta guía te lleva paso a paso por la construcción de un OKR tracker de 5 pestañas en Google Sheets que tu CFO puede leer en 30 segundos. La mayoría de las plantillas OKR para Google Sheets que circulan en internet son, en el mejor de los casos, listas de verificación glorificadas: una columna para el objetivo, una columna para el estado y quizás un indicador RAG que alguien actualiza manualmente una vez por trimestre. Esta es diferente: los datos reales se extraen de una sola pestaña fuente, el avance se consolida automáticamente y el dashboard se colorea solo. Al terminar, tendrás una plantilla OKR funcional que puedes clonar para cada ciclo de planeación.
Lo que necesitarás
- Acceso a Google Sheets (cualquier plan)
- Un conjunto de OKRs definido para al menos un trimestre (objetivos y key results con metas numéricas)
- Comodidad básica con referencias entre pestañas y fórmulas de arreglo
- 60 a 90 minutos de tiempo de construcción enfocado
Guía paso a paso
Diseña la Estructura de Pestañas de tu Plantilla OKR
Antes de escribir una sola fórmula, define la arquitectura de pestañas. Cada fórmula en este modelo fluye en una sola dirección, desde las pestañas de datos brutos hacia el dashboard, por lo que la estructura debe estar correcta desde el principio.
Las 5 pestañas son:
| Pestaña | Propósito |
|---|---|
| Assumptions | Fechas del trimestre, reglas de ponderación, umbrales |
| Objectives | Una fila por objetivo, con responsable y peso |
| Key Results | Una fila por KR, vinculada a su objetivo |
| Actuals | Datos de métricas sin procesar: la única pestaña que editas semanalmente |
| Dashboard | Consolidado calculado automáticamente, nunca se edita directamente |
- Assumptions** almacena
$B$3(inicio del trimestre) y$B$4(fin del trimestre): cada fórmula con filtro de fecha referencia estas celdas, no cadenas fijas - Objectives** incluye una columna para
OBJ_ID(clave de texto comoOBJ-01),Owner,WeightyCalculated Score(fórmula, no entrada manual) - Key Results** incluye
KR_ID,OBJ_ID(la clave foránea),Target,UnityProgress %(fórmula) - Actuals** es la única pestaña donde se ingresan números manualmente: protege todas las demás contra ediciones accidentales
- Dashboard** es salida de solo lectura: bloquéala desde el inicio para que nadie sobrescriba una fórmula
Pro Tip
Diferencia las pestañas por color según su tipo. Azul para entradas (Actuals), gris para pestañas calculadas (Dashboard), blanco para referencia (Assumptions, Objectives, Key Results). Las señales visuales evitan el problema de "creí que podía editar esto".Construye la Pestaña Assumptions
Una pestaña centraliza todas las variables de configuración. Si una regla de ponderación cambia a mitad de año, la modificas en una sola celda, no en 40 fórmulas distintas.
Organiza la pestaña Assumptions así (comenzando en la fila 2, con la fila 1 como encabezado):
B3: 2026-04-01 (fecha de inicio Q2)
B4: 2026-06-30 (fecha de fin Q2)
B7: 0.70 (umbral verde: avance de KR >= 70% = en curso)
B8: 0.40 (umbral rojo: avance de KR < 40% = en riesgo)
B11: TRUE (ponderar objetivos por la columna Weight)
- Inicio/fin del trimestre** (
B3:B4) controlan cada SUMIFS con filtro de fecha que extrae de Actuals: cambia una vez y se actualiza en todos lados - Los umbrales** (
B7:B8) controlan la lógica RAG en el Dashboard; 0.70 y 0.40 son valores predeterminados razonables, pero ajústalos según la tolerancia de tu organización - El interruptor de ponderación** (
B11) te permite alternar entre puntuación ponderada y sin ponderar para presentaciones al directorio donde la igualdad de pesos se lee mejor - Nombra las celdas clave:
QtrStart,QtrEnd,GreenThreshold,RedThreshold. Los rangos con nombre hacen las fórmulas legibles y sobreviven inserciones de columnas
Pro Tip
Agrega una celdaLastUpdated que referencie TODAY() y dale un formato visible. Cuando alguien abra el archivo dos meses después, sabrá de inmediato si los datos están desactualizados.Llena las Pestañas Objectives y Key Results
Estas dos pestañas son tu diccionario de datos. La relación entre ellas (un objetivo, múltiples key results) es lo que hace posible la consolidación del Paso 5.
Pestaña Objectives - una fila por objetivo:
A2: OBJ-01
B2: Expande el segmento empresarial
C2: Sarah Chen
D2: 0.40 (peso: todos los pesos de objetivos deben sumar 1.0)
E2: =AVERAGEIFS('Key Results'!F:F,'Key Results'!B:B,A2)
La columna E es una fórmula, no una entrada. Promedia el avance de cada KR que pertenece a ese objetivo.
Pestaña Key Results - una fila por KR:
A2: KR-01
B2: OBJ-01 (vincula con Objectives)
C2: Retención Neta de Ingresos
D2: 1.10 (objetivo: NRR del 110%)
E2: %
F2: =IFERROR(SUMIFS(Actuals!C:C,Actuals!A:A,A2,Actuals!B:B,">="&QtrStart,Actuals!B:B,"<="&QtrEnd)/D2,"-")
- KR_ID** en la columna A es la clave de unión: Actuals referencia este ID, no la descripción del KR, lo que evita romper fórmulas cuando alguien reescribe el texto del objetivo
- Target** (columna D) almacena el objetivo numérico bruto; la fórmula en F divide el real entre el objetivo para obtener el avance como decimal
- Unit** (columna E) es solo para visualización: le indica al Dashboard si formatear una celda como %, $ o x
- Guarda los objetivos en unidades nativas: si la meta es $4,200,000 de ARR, almacena
4200000, no4.2. Mezclar convenciones de escala rompe tus SUMIFS
Pro Tip
Congela la fila 1 en ambas pestañas y agrega validación de datos a la columna OBJ_ID en Key Results para que solo se puedan ingresar IDs de objetivo válidos. Los errores tipográficos en claves foráneas producen respuestas incorrectas silenciosas, no errores.Configura la Pestaña Actuals
Actuals es la única pestaña de esta plantilla OKR donde se ingresan números. Todo lo demás lee desde aquí.
Estructura: una fila por evento de medición. Una medición semanal de NRR es una fila. Una revisión mensual de pipeline es una fila. Nunca agregues datos antes de almacenarlos.
A2: KR-01 (KR_ID: coincide con la pestaña Key Results)
B2: 2026-05-15 (fecha de medición)
C2: 1.08 (el valor real, ej., 108% de NRR como decimal)
D2: Q2 2026 (etiqueta de período opcional para filtrar)
La fórmula en la columna F de la pestaña Key Results lee:
=IFERROR(
SUMIFS(Actuals!C:C, Actuals!A:A, 'Key Results'!A2,
Actuals!B:B, ">=" & QtrStart,
Actuals!B:B, "<=" & QtrEnd)
/ 'Key Results'!D2,
"-")
- Múltiples filas de datos reales para un KR** están bien: SUMIFS las suma a lo largo del trimestre, por lo que las entradas semanales de pipeline se acumulan correctamente
- El filtrado de fechas mediante QtrStart/QtrEnd** significa que puedes almacenar los datos reales de todo el año en una sola hoja y las fórmulas se autofiltran al trimestre activo
- Nunca elimines filas** de Actuals: archívalas en una pestaña separada si es necesario. Las eliminaciones rompen los gráficos de tendencias históricas
- Protege las columnas A y B con validación de datos: el KR_ID debe existir en la columna A de Key Results y las fechas deben estar dentro de un rango razonable
Pro Tip
Agrega una columnaSource (columna E) donde quien ingresa los datos anota de dónde vino el número: Salesforce, sistema financiero, conteo manual. Cuando se cuestiona un número en una reunión de directorio, el rastro de auditoría es crucial.Construye el Dashboard de OKR
El Dashboard es la única pestaña que alguien fuera de tu equipo inmediato debería ver. Lee de todas las demás pestañas y nunca se edita directamente.
Puntaje ponderado de objetivo (el número principal):
=SUMPRODUCT(
(Objectives!A2:A10<>"") *
Objectives!D2:D10 *
Objectives!E2:E10
)
Este multiplica el peso de cada objetivo por su puntaje calculado y los suma. Si los objetivos no tienen el mismo peso, esto te da el puntaje compuesto real.
Fila de avance por KR - repite este patrón para cada KR:
Etiqueta KR: ='Key Results'!C2
Objetivo: ='Key Results'!D2
Real: =SUMIFS(Actuals!C:C,Actuals!A:A,'Key Results'!A2,Actuals!B:B,">="&QtrStart,Actuals!B:B,"<="&QtrEnd)
Avance %: ='Key Results'!F2
Estado RAG: =IF('Key Results'!F2>=GreenThreshold,"🟢",IF('Key Results'!F2>=RedThreshold,"🟡","🔴"))
Reglas de formato condicional en la columna Avance %:
| Regla | Formato |
|---|---|
Valor >= GreenThreshold (0.70) | Relleno verde |
Valor >= RedThreshold (0.40) | Relleno amarillo |
Valor < RedThreshold (0.40) | Relleno rojo |
A partir de junio de 2026, Google Sheets admite rangos con nombre en las reglas de formato condicional: usa GreenThreshold y RedThreshold directamente en lugar de valores fijos para que los cambios de umbral se propaguen automáticamente.
- Construye un bloque de resumen en la parte superior: puntaje compuesto, número de KRs en curso (≥70%), número en riesgo (<40%) y fecha de fin del trimestre extraída de
QtrEnd - Agrega una razón de cobertura de pipeline si es relevante:
=SUMIFS(Actuals!C:C,...) / Objectives!D2formateado a 1 decimal (ej., 2.9x vs. 3.2x objetivo) - Formatea el puntaje compuesto como un porcentaje grande y en negrita: es el número que mira el CFO, hazlo imposible de pasar por alto
- Agrega
="Al: "&TEXT(MAX(Actuals!B:B),"mmm d, yyyy")para mostrar cuándo se actualizaron los datos por última vez, de modo que los dashboards desactualizados sean evidentes
Pro Tip
Nombra la pestaña Dashboard como "📊 Dashboard" y Actuals como "📥 Actuals". Los prefijos con emoji hacen que el propósito de cada pestaña sea legible al instante y ordenan las pestañas visualmente por tipo.Agrega Fórmulas de Plantilla OKR para Análisis de Tendencias y Brechas
Una instantánea estática no es suficiente para una presentación trimestral al directorio. Necesitas mostrar la dirección, no solo la posición.
Tendencia trimestral de NRR (asume que los datos reales del trimestre anterior están en la misma pestaña Actuals con una etiqueta de período):
=SUMIFS('Actuals'!C:C,
'Actuals'!A:A, "KR-01",
'Actuals'!D:D, "Q1 2026")
/ SUMIFS('Actuals'!C:C,
'Actuals'!A:A, "KR-01",
'Actuals'!D:D, "Q2 2026") - 1
Brecha respecto al objetivo (cuántas unidades faltan para alcanzar la meta):
='Key Results'!D2 - SUMIFS(Actuals!C:C, Actuals!A:A, 'Key Results'!A2,
Actuals!B:B, ">=" & QtrStart, Actuals!B:B, "<=" & QtrEnd)
Seguimiento de margen bruto (si uno de tus KRs es un objetivo de margen):
=SUMIFS('P&L'!C:C,'P&L'!B:B,">="&QtrStart,'P&L'!B:B,"<="&QtrEnd)
/ SUMIFS('P&L'!D:D,'P&L'!B:B,">="&QtrStart,'P&L'!B:B,"<="&QtrEnd)
Con un objetivo de 66.2% de margen bruto, una fórmula como esta convierte la brecha respecto al objetivo en tiempo real, sin necesidad de actualizar manualmente.
- Agrega un sparkline** para cada KR usando
=SPARKLINE(Actuals!C2:C52, {"charttype","line";"color","#1a73e8"}): cabe en una sola celda y muestra la dirección sin necesidad de un objeto gráfico - Resalta la columna de brecha** con formato condicional: rojo cuando la brecha supera el 20% del objetivo, amarillo entre el 10% y 20%, verde en cualquier otro caso
- Agrega una celda de "semanas restantes"**:
=NETWORKDAYS(TODAY(), QtrEnd). Saber que quedan 6 semanas hábiles en lugar de 12 cambia la urgencia con que se lee un avance del 60%
Pro Tip
Construye una "fila plantilla" para mostrar KRs con todas las fórmulas y todo el formato, y luego duplícala 15 veces. Cada nuevo KR solo necesita que cambies el KR_ID en la columna A. Una altura de fila y un ancho de columna consistentes hacen que el dashboard sea imprimible sin ajustes.Protege, Comparte y Versiona la Plantilla OKR
Un modelo que cualquiera puede romper accidentalmente no es un modelo: es un pasivo.
Protección de hojas: configura esto de inmediato:
- Actuals**: Solo el equipo de ingreso de datos puede editar las columnas A-D; sin protección en filas nuevas (necesitan agregar filas)
- Dashboard, Objectives, Key Results, Assumptions**: Protege todas las celdas; crea una lista de excepciones para las 3 a 5 personas que administran el modelo
- Usa Tools > Protect Sheets and Ranges, no la configuración de uso compartido a nivel de archivo: son controles independientes
- Comenta cada fórmula no obvia** usando Insert > Note, no una columna auxiliar: las notas no rompen los rangos de fórmulas
- Comparte solo la pestaña Dashboard** para distribución al directorio: File > Share > publica una vista filtrada, no el libro completo
- Crea un rango con nombre llamado
ModelVersionque apunte a una celda en Assumptions donde se almacene la cadena de versión: referencíalo en el pie del Dashboard para que cada impresión se identifique a sí misma
Pro Tip
Agrega una hoja oculta "Guía de ingreso de datos" con instrucciones para la pestaña Actuals: qué va en cada columna, el formato exacto para los KR_IDs y qué hacer si una métrica llega a mitad de trimestre. Quien ingrese datos en el mes 3 puede no ser quien construyó el modelo.Conclusión
Lo que construiste es una plantilla OKR de verdad: un modelo de 5 pestañas donde los datos reales fluyen hacia arriba a través de fórmulas, el dashboard se actualiza solo y el único trabajo manual es ingresar nuevas mediciones en Actuals. Con un avance compuesto del 86%, un NRR real del 108% y una cobertura de pipeline de 2.9x frente a un objetivo de 3.2x, el dashboard cuenta la historia sin que nadie tenga que interpretar una hoja de cálculo en tiempo real durante una reunión.
El mayor costo de mantenimiento del modelo a futuro es mantener Actuals actualizado. Ahí es donde la automatización se paga sola. Elige un plan de ModelMonkey: funciona tanto en Google Sheets como en Excel y puede extraer métricas en tiempo real desde HubSpot, Stripe y Google Analytics directamente en tu pestaña Actuals de forma programada.
Preguntas frecuentes
¿Cuántos key results debe tener cada objetivo en la plantilla OKR de Google Sheets?
De 3 a 5 KRs por objetivo es el límite práctico para esta estructura de plantilla. Con más de 5, la fórmula AVERAGEIFS en la pestaña Objectives empieza a promediar ruido; además, el dashboard se vuelve demasiado largo para leerlo en una sola vista sin hacer scroll. Si un objetivo tiene genuinamente 8 resultados medibles, divídelo en 2 objetivos.
¿Esta plantilla OKR puede manejar múltiples equipos o departamentos?
Sí. Agrega una columna `Owner` o `Team` tanto en la pestaña Objectives como en Key Results, y luego incorpora esa columna como criterio de filtro en tus fórmulas SUMIFS. El Dashboard puede mostrar un compuesto a nivel empresa más un desglose por equipo usando los mismos datos de Actuals. Un SUMPRODUCT filtrado por equipo es el enfoque más limpio.
¿Cómo manejo un KR con un objetivo de "mientras menos, mejor", como la tasa de cancelación de clientes?
Guarda el objetivo y el valor real en su forma directa (ej., objetivo = 0.05, real = 0.03 para una cancelación del 3%). Ajusta la fórmula de avance para calcular `1 - (real / objetivo)` en lugar de `real / objetivo`. Un KR donde el valor real está por debajo del objetivo debe leerse como avance > 100%, no < 100%. Marca estos KRs con una columna auxiliar para que la ramificación de la fórmula sea evidente para cualquiera que audite el modelo.
¿Cuál es la manera correcta de manejar KRs que se agregan a mitad de trimestre?
Agrega el nuevo KR a la pestaña Key Results con una fecha de inicio en una columna opcional `KR_Start`. Ajusta el SUMIFS en Key Results para que también filtre `Actuals!B:B >= KR_Start`, de modo que los datos anteriores al KR no inflen la medición. No rellenes el objetivo retroactivamente: un KR agregado en la semana 8 de un trimestre de 13 semanas debe tener su objetivo prorrateado o simplemente anotado como "trimestre parcial" en el campo Owner.
¿En qué se diferencia esto de las plantillas OKR disponibles en la galería de plantillas de Google Sheets?
Las plantillas OKR integradas de Google son diseños de una sola pestaña con menús desplegables de estado manuales. No vinculan los datos reales a los objetivos mediante fórmulas, no consolidan en un puntaje compuesto ponderado ni filtran por rango de fechas. La estructura de 5 pestañas de esta guía se acerca más a un modelo financiero ligero que a un gestor de tareas: produce números que puedes defender en una reunión de directorio, no una lista que actualizas por intuición.