Esta guía te lleva paso a paso a construir un modelo financiero de 3 estados completamente enlazado en Google Sheets - estado de resultados, balance general y estado de flujo de caja - conectados entre sí de manera que cualquier cambio en una pestaña se propague correctamente a las otras dos. Al final tendrás una plantilla reutilizable con verificación de balance en vivo, schedules de capital de trabajo y toggles de escenarios alimentados desde una sola pestaña de Supuestos.
Requisitos previos
- Google Sheets con acceso de edición (no solo lectura - vas a crear rangos nombrados)
- Familiaridad con referencias estructuradas y fórmulas entre pestañas (
=P&G!C12) - Un set de cifras reales para alimentar el modelo, aunque sea parcial (los cierres del año anterior funcionan perfectamente)
- Al menos un año de histórico para anclar las tasas de crecimiento y supuestos de márgenes
Paso 1: Arquitectura de la plantilla del modelo financiero de 3 estados
Antes de escribir una sola fórmula, define la arquitectura de pestañas. Si lo haces mal aquí, terminarás refactorizando docenas de referencias cruzadas después.
Crea ocho pestañas en este orden:
- Portada - control de versiones, autor, fecha, resumen de outputs
- Supuestos - todos los inputs viven aquí, en ningún otro lugar
- P&G - estado de resultados
- Balance - balance general
- FC - estado de flujo de caja
- Schedule Deuda - disposiciones, repagos, cálculo de intereses
- Schedule PP&E - capex, rollforward de depreciación
- Verificaciones - cuadre del balance, verificación del plug, auditorías de fórmulas
Consejo: Bloquea las pestañas P&G, Balance y FC para evitar hardcoding accidental. Ve a Datos → Rangos protegidos y restringe la edición a tu usuario. Quien revise el modelo no debería poder escribir en celdas de output.
Paso 2: Construir la pestaña de Supuestos
Cada driver - crecimiento de ingresos, metas de margen, tasa impositiva, capex como % de ingresos, DSO, DPO - vive en una columna por año. Nada se hardcodea en las pestañas de estados financieros.
Estructura la tabla como un bloque vertical de drivers con encabezados en la fila 1 y años en las columnas C a H (históricos en C-D, proyectados en E-H):
| Driver | Etiqueta | FY2023A | FY2024A | FY2025E | FY2026E |
|---|---|---|---|---|---|
| B3 | Crecimiento de Ingresos | - | 18.2% | 22.0% | 19.5% |
| B4 | Margen Bruto | 61.3% | 63.1% | 64.0% | 64.5% |
| B5 | Margen EBITDA | 18.4% | 21.2% | 23.0% | 24.5% |
| B6 | Tasa Impositiva | 21.0% | 21.0% | 21.0% | 21.0% |
| B10 | DSO (días) | 42 | 38 | 36 | 35 |
| B11 | DPO (días) | 51 | 54 | 55 | 55 |
| B12 | Capex % Ingresos | 6.8% | 5.9% | 6.5% | 6.0% |
Nombra la fila de encabezados de año como un rango nombrado (AñosProyectados) y referencíala desde todas las pestañas de estados. Si algún día necesitas correr el modelo un año hacia adelante, lo cambias una sola vez.
Consejo: Agrega un toggle de
Escenarioen B1 (un desplegable: Base / Pesimista / Optimista) y construye un segundo bloque de supuestos para cada caso. Luego envuelve cada referencia a Supuestos en=IF(Supuestos!$B$1="Optimista", Supuestos!BloqueOptimista, Supuestos!BloqueBase). El cambio de escenario queda en una sola celda.
Paso 3: Construir el estado de resultados
La pestaña P&G recibe todos los supuestos desde la pestaña de Supuestos - sin números hardcodeados, salvo los históricos.
Los ingresos son la base. La fila 5 es la línea de ingresos:
=IF(C5="", "", IF(P&G!C5>0, P&G!C5, P&G!B5 * (1 + Supuestos!$C$3)))
Para los años proyectados, toma la tasa de crecimiento de Supuestos y compone desde la columna anterior. Para los históricos, referencia directamente tu fuente de datos.
La utilidad bruta toma el supuesto de margen:
=P&G!C5 * Supuestos!$E$4
EBITDA:
=P&G!C5 * Supuestos!$E$5
La D&A fluye desde el Schedule PP&E:
='Schedule PP&E'!C18
EBIT = EBITDA - D&A. El gasto financiero viene del Schedule Deuda:
='Schedule Deuda'!C22
EBT = EBIT - Intereses. Impuestos:
=P&G!C14 * Supuestos!$E$6
La utilidad neta cierra el P&G. Este número alimenta el rollforward de utilidades retenidas en el balance - conéctalo ahora:
=P&G!C16
Consejo: Agrega una fila de verificación de margen al final del P&G que muestre el margen EBITDA realizado versus el supuesto. Si no coinciden, hay una fórmula rota en algún lugar.
=P&G!C12/P&G!C5debe ser igual exactamente aSupuestos!$E$5.
Paso 4: Construir los schedules de soporte antes del balance
Construye PP&E y Deuda antes de tocar el balance general - ambos lo alimentan a él y al flujo de caja.
Schedule PP&E:
PP&E bruto de apertura:
='Balance'!B22
Adición de capex:
=P&G!C5 * Supuestos!$E$12
PP&E bruto de cierre = apertura + capex. La depreciación usa línea recta sobre la vida útil promedio del supuesto (por ejemplo, 7 años para este modelo):
='Schedule PP&E'!C15 / 7
Rollforward de depreciación acumulada:
='Schedule PP&E'!B18 + 'Schedule PP&E'!C17
PP&E neto = Bruto - Acumulado:
='Schedule PP&E'!C15 - 'Schedule PP&E'!C18
Schedule Deuda:
Saldo inicial, nuevas disposiciones, repagos, saldo final. Interés = promedio entre saldo inicial y final × tasa. Mantén la tasa en Supuestos (fila B15) para poder sensibilizarla. El saldo final alimenta la deuda de largo plazo en el balance; el gasto financiero alimenta el P&G.
Consejo: Si el modelo tiene una línea de crédito revolvente, agrega un schedule separado que dispone cuando el saldo de caja cae a negativo y repaga cuando es positivo. El saldo del revolvente se convierte en el plug del balance, que es más limpio que una línea de ajuste manual.
Paso 5: Balance general en tu modelo financiero de 3 estados
El balance tiene tres secciones: activos, pasivos y patrimonio. Cada línea proviene de un schedule o de un cálculo de capital de trabajo basado en Supuestos.
Cuentas por cobrar:
=P&G!C5 / 365 * Supuestos!$E$10
DSO × ingresos diarios. Esto es $4,200,000 de ingresos / 365 * 36 días = $414K en CxC para FY2025E.
Cuentas por pagar:
=P&G!C7 / 365 * Supuestos!$E$11
DPO × costo diario de ventas.
PP&E neto:
='Schedule PP&E'!C19
Deuda de largo plazo:
='Schedule Deuda'!C25
Rollforward de utilidades retenidas:
='Balance'!B35 + P&G!C16 - Balance!C40
Utilidades retenidas de apertura + utilidad neta - dividendos (si aplica). Este es el plug de patrimonio que hace cuadrar el balance.
Verificación de balance (conecta esto a la pestaña Verificaciones):
=Balance!C20 - (Balance!C32 + Balance!C38)
Total activos menos total pasivos y patrimonio. Esto debe ser cero. Si no lo es, encuentra el enlace roto antes de continuar con cualquier otra cosa.
Consejo: Resalta la celda de verificación en rojo con formato condicional si el valor es distinto de 0. Usa
=ABS(Verificaciones!C5)>0.01como condición - el umbral de 0.01 captura errores de redondeo de punto flotante sin marcar errores reales como falsos positivos.
Paso 6: Construir el estado de flujo de caja
El FC reconcilia la utilidad neta con el saldo final de caja. Usa el método indirecto - es el estándar en la mayoría de reportes para el directorio y modelos para sindicación bancaria.¹
Actividades operativas:
Comienza con la utilidad neta del P&G, luego suma la D&A (no erogable en caja):
=P&G!C16
='Schedule PP&E'!C17
Los cambios en capital de trabajo son el delta en CxC, inventario, CxP y devengados:
=-('Balance'!C12 - 'Balance'!B12) // Aumento de CxC = uso de caja
=-('Balance'!C13 - 'Balance'!B13) // Aumento de inventario = uso de caja
=('Balance'!C29 - 'Balance'!B29) // Aumento de CxP = fuente de caja
Actividades de inversión:
El capex es una salida de caja del Schedule PP&E:
=-'Schedule PP&E'!C16
Actividades de financiamiento:
Cambio neto de deuda del Schedule Deuda:
='Schedule Deuda'!C25 - 'Schedule Deuda'!B25
Saldo final de caja:
='Balance'!B10 + FC!C18 + FC!C24 + FC!C30
Caja de apertura + FCO + FCI + FCF. Esto debe ser igual a Balance!C10. Si no lo es, hay un enlace roto. Conecta esta verificación también a la pestaña Verificaciones.
Consejo: El error más frecuente en el FC es el doble conteo del capital de trabajo. Si las CxC aparecen tanto en el rollforward del balance como en la sección de capital de trabajo del FC, verifica que los deltas estén jalando de las mismas filas del balance. Usa
=Verificaciones!C8 - Verificaciones!C9para mostrar la discrepancia de forma explícita.
Paso 7: Agregar análisis de escenarios y sensibilidad en la plantilla de 3 estados
Un modelo sin escenarios es un estimado puntual. La pestaña de Supuestos ya tiene el toggle de escenario del Paso 2 - ahora expón el output.
Tabla resumen de escenarios (en la pestaña Portada):
| Métrica | Pesimista | Base | Optimista |
|---|---|---|---|
| Ingresos FY2026E | $31.2M | $37.8M | $44.1M |
| Margen EBITDA | 21.5% | 24.5% | 27.0% |
| EBITDA | $6.7M | $9.3M | $11.9M |
| EV a 14.2x EBITDA | $95.1M | $132.1M | $169.0M |
Jala estos valores del P&G y del Balance de forma dinámica usando CHOOSE() vinculado al toggle de escenario:
=CHOOSE(MATCH(Supuestos!$B$1,{"Pesimista","Base","Optimista"},0), P&G!H12_Pesimista, P&G!H12_Base, P&G!H12_Optimista)
Para una tabla de sensibilidad completa - por ejemplo, valor del patrimonio a diferentes múltiplos de EBITDA y supuestos de margen - usa SUMPRODUCT o tablas de dos variables vía Datos → Análisis Y si. Construye la sensibilidad en la pestaña Portada para que sea lo primero que vea cualquier revisor.
Consejo: A partir de abril de 2026, ModelMonkey puede actualizar los bloques de escenarios automáticamente si tus supuestos viven en un rango nombrado conectado a una fuente de datos. Vale la pena configurarlo si la pestaña de Supuestos jala históricos en vivo desde una base de datos. Elige un plan de ModelMonkey - funciona tanto en Google Sheets como en Excel.
Preguntas frecuentes sobre el modelo financiero de 3 estados
¿Cuál es la diferencia entre un modelo de 3 estados y un modelo de proyección simple? Un modelo de proyección simple puede contener solo un estado de resultados con supuestos de crecimiento. El modelo de 3 estados agrega el balance general y el flujo de caja, lo que permite verificar la consistencia contable (el balance cuadra o no cuadra), modelar el endeudamiento con precisión y derivar el flujo de caja libre para valoración. Para cualquier proceso de due diligence o sindicación bancaria, el estándar mínimo es el modelo de 3 estados completo.
¿Cuánto tiempo toma construir esta plantilla desde cero? Un analista con experiencia en modelación tarda entre 6 y 10 horas en construir la estructura base con los schedules de soporte y las verificaciones. La mayor parte del tiempo se invierte en los schedules de PP&E y Deuda, y en depurar los enlaces del flujo de caja. Una vez lista la plantilla, adaptarla a una empresa distinta toma entre 1 y 3 horas si los históricos están limpios.
¿Qué hacer si el balance no cuadra? Revisa en este orden: (1) verifica que las utilidades retenidas del período anterior estén jalando del año anterior del balance, no de una celda hardcodeada; (2) confirma que el saldo final de caja del FC sea igual a la celda de caja del balance; (3) revisa que el gasto por impuestos en el P&G use la tasa del período correcto; (4) asegúrate de que el capex en el FC jale exactamente del mismo valor que entra al Schedule PP&E. El 90% de los descuadres provienen de estos cuatro puntos.
¿Es necesario usar rangos nombrados o se puede trabajar con referencias directas?
Técnicamente funciona con referencias directas, pero los rangos nombrados reducen drásticamente los errores al refactorizar. Si mueves una fila en el balance, un rango nombrado sigue apuntando al dato correcto; una referencia de celda como Balance!C35 apuntará a la fila equivocada en silencio. Para modelos que usarán múltiples revisores o durarán más de un trimestre en producción, los rangos nombrados son práctica estándar.²
¿Cómo se adapta este modelo para empresas con operaciones en varias monedas? Agrega una pestaña de Tipo de Cambio con los rates por período (MXN/USD, COP/USD, CLP/USD según corresponda) y multiplica las líneas de ingresos y costos por subsidiaria antes de consolidar en el P&G. El balance consolida a tipo de cambio de cierre; el P&G consolida a tipo de cambio promedio del período. La diferencia entre ambos métodos genera la variación por tipo de cambio en el patrimonio (Other Comprehensive Income), que es una línea separada del rollforward de utilidades retenidas.
¹ IFRS Foundation - IAS 7 Statement of Cash Flows, párrafo 18: el método indirecto reconcilia la utilidad neta con los flujos operativos ajustando por transacciones no monetarias y cambios en capital de trabajo. Edición vigente a enero de 2026.
² Corporate Finance Institute - Financial Modeling Best Practices Guide v4.2 (2025): recomienda el uso de rangos nombrados para modelos con más de tres pestañas de estados financieros y múltiples usuarios concurrentes.
Conclusión
Ahora tienes una plantilla donde cada output se conecta a una sola pestaña de Supuestos, los tres estados se enlazan a través de D&A, intereses, capital de trabajo y utilidades retenidas, y la pestaña de Verificaciones señala cualquier ruptura de inmediato. El cuadre del balance es cero o no lo es - no hay ambigüedad posible.
Las extensiones naturales desde aquí son una pestaña de análisis de retornos (TIR, MOIC, waterfall de equity) y un DCF que jale el FCFF del flujo de caja. Ambos son directos una vez que los tres estados están limpios. La estructura enlazada del modelo significa que cambiar un supuesto - por ejemplo, subir el DSO de 36 a 42 días - fluye a través de las CxC, la caja y la verificación de balance en un solo recálculo.
Para más contexto sobre la estructura subyacente del modelo, consulta la visión general del modelo financiero de 3 estados y los modelos de 3 estados en Google Sheets.