andreworia/unit-economics

Cria uma planilha .xlsx de economia unitária e coortes com fórmulas ativas em abas separadas (premissas, coortes e saídas) e verificações, calculando CAC, LTV, LTV/CAC e payback do CAC a partir de uma grade de retenção de coortes mensais.

O que é unit-economics?

Esta skill gera automaticamente um arquivo Excel (.xlsx) de economia unitária e análise de coortes, ideal para negócios SaaS ou por assinatura. O usuário fornece dados como gastos com vendas e marketing, novos clientes, ARPU, margem bruta, churn e taxa de desconto. A skill cria seis abas: Capa, Premissas, Coortes, Economia Unitária, LTV-CAC e Verificações. Os principais indicadores calculados incluem CAC (Custo de Aquisição de Cliente), LTV (Valor do Tempo de Vida do Cliente), a relação LTV/CAC e o período de payback do CAC. A análise é construída a partir de uma grade de retenção de coortes, permitindo visualizar a evolução de cada coorte ao longo dos meses. A skill suporta cenários (Base, Otimista, Pessimista) e inclui verificações de consistência e monotonicidade da retenção. Funciona diretamente no aplicativo Claude, gerando um download .xlsx sem necessidade de add-ins do Excel ou conexão Microsoft 365.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/andreworia/claude-excel-skills/tree/main/skills/unit-economics

Installed? Explore more Produtividade e Colaboração skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Economia Unitária (LTV/CAC e Coortes)

Quando usar

Use quando precisar saber se um cliente vale mais do que custa para ser adquirido: CAC, contribuição de margem bruta, retenção, LTV, a relação LTV/CAC e o payback do CAC em meses. Adequado para negócios SaaS e por assinatura, revisões de conselho e due diligence onde uma grade de retenção de coortes respalda os principais índices. A skill constrói um arquivo .xlsx para download no aplicativo Claude com openpyxl; não usa nenhum add-in do Excel ou conexão Microsoft 365.

O que ela constrói

Uma pasta de trabalho com seis abas:

  • Capa: título, legenda de cores, seletor de cenário, principais índices LTV/CAC e payback.
  • Premissas: entradas em azul (gastos com S&M, novos clientes, ARPU, % margem bruta, churn, taxa de desconto, multiplicadores de cenário).
  • Coortes: grade de retenção, coortes nas linhas e meses nas colunas, com % retida e receita por coorte.
  • Economia Unitária: CAC, ARPU, contribuição por cliente, payback.
  • LTV-CAC: LTV pela fórmula simples e pela contribuição de coorte descontada, mais a relação.
  • Verificações: consistência, retenção monotônica e sinalizadores de sanidade do payback.

Fluxo de construção

  1. Criar a pasta de trabalho e as seis abas na ordem acima.
  2. Na aba Premissas, dispor todas as entradas em azul com unidades; adicionar uma célula de cenário (1=Base, 2=Otimista, 3=Pessimista) nomeada scn.
  3. Construir o CAC e a contribuição por cliente na aba Economia Unitária a partir dos gastos e entradas de clientes.
  4. Construir a grade de coortes: uma base de mês 0 de 100% (ou clientes iniciais) decaindo pela retenção ao longo dos meses.
  5. Adicionar uma linha de receita e contribuição abaixo da grade de retenção por coorte.
  6. Construir o LTV de duas formas na aba LTV-CAC: forma fechada e soma de coortes descontada; calcular a relação e o payback.
  7. Construir a aba Verificações com testes de consistência, monotonicidade e payback.
  8. Recalcular a pasta de trabalho headless (LibreOffice) para que todas as fórmulas sejam computadas.
  9. Verificar zero erros de fórmula (#REF!, #DIV/0!, #VALUE!, #NAME?); corrigir e recalcular em loop, depois entregar.

Especificação aba por aba

Capa

  • Célula de título, linha de propósito do modelo e uma data de construção.
  • Bloco de legenda de cores: um retângulo azul rotulado "Entrada", preto rotulado "Fórmula", verde rotulado "Link entre abas".
  • Eco do cenário: =ESCOLHER(scn;"Base";"Otimista";"Pessimista") puxando o cenário ativo de Premissas.
  • Saídas principais como links verdes entre abas: LTV/CAC =LTV-CAC!<célula da relação>, payback do CAC em meses e LTV descontado.
  • Uma linha de leia-me observando que a pasta de trabalho recalcula ao vivo no Excel e foi verificada sem erros na construção.

Premissas

  • Seletor de cenário B2 (azul, 1/2/3), nomeado scn.
  • Gastos com S&M por período B5; novos clientes adquiridos B6.
  • ARPU por mês B7; % margem bruta B8.
  • % de churn mensal B9 (portanto retenção mensal =1-B9); taxa de desconto por mês B10.
  • Multiplicadores de cenário (Base/Otimista/Pessimista) para churn e ARPU: churn ativo =ESCOLHER(scn;...) em B12, ARPU ativo =ESCOLHER(scn;...) em B13.

Economia Unitária

  • CAC B3 =Premissas!B5/Premissas!B6.
  • ARPU efetivo B4 =Premissas!B7*Premissas!B13.
  • Lucro bruto por cliente-mês B5 =B4*Premissas!B8.
  • Retenção mensal B6 =1-Premissas!B9*Premissas!B12.
  • Payback do CAC (meses) B7 =CAC/lucro bruto por cliente-mês =B3/B5. Se preferir payback com base em coorte, calcule o lucro bruto acumulado por mês da coorte até ultrapassar o CAC e reporte esse índice de mês.
  • Vida média do cliente (meses) B8 =1/(Premissas!B9*Premissas!B12).

Coortes

  • Linha 3 cabeçalhos de mês 0,1,2,...,N nas colunas.
  • Coluna A rótulos de coorte (Coorte 1, Coorte 2, ...).
  • % retida: célula do mês 0 = 1 (100%); cada mês posterior =célula_mês_anterior*'Economia Unitária'!$B$6 (aplicar retenção mensal). Uma fórmula consistente em toda a linha.
  • Clientes ativos por coorte: =%retida * Premissas!$B$6.
  • Receita por coorte-mês: =clientes ativos * 'Economia Unitária'!$B$4.
  • Contribuição por coorte-mês: =receita * Premissas!$B$8.

LTV-CAC

  • LTV forma fechada B3 ='Economia Unitária'!B4*Premissas!B8/('Economia Unitária'!B6 churn vitalício) i.e. =ARPU*%margem bruta / churn; nas células ='Economia Unitária'!B4*Premissas!B8/(Premissas!B9*Premissas!B12).
  • LTV coorte descontado B4: soma ao longo dos meses da contribuição por cliente descontada, =SOMARPRODUTO(linha_contribuição_por_cliente; 1/(1+Premissas!B10)^índice_mês) usando a linha da coorte do mês 0 dividida pelos clientes iniciais para que seja por cliente.
  • LTV/CAC B5 =B4/'Economia Unitária'!B3 (usar o LTV descontado como principal).
  • Eco do payback B6 ='Economia Unitária'!B7.

Verificações

  • Consistência: =SE(ABS(LTV_forma_fechada-LTV_descontado)/LTV_descontado<=Premissas!tol;"PASS";"FAIL").
  • Retenção monotônica dentro de cada coorte: =SE(SOMARPRODUTO(--(células_mês_atual>células_mês_anterior))=0;"PASS";"FAIL") para que nenhum mês exceda o anterior.
  • Payback positivo e dentro de um limite máximo informado (entrada azul).
  • LTV/CAC calculado a partir do mesmo ARPU, margem e churn usados na grade de coortes.

Convenções de fórmula e formatação

  • Fonte azul para entradas (apenas Premissas). Preto para fórmulas na mesma aba. Verde para links entre abas.
  • Sem números fixos nas fórmulas; constantes vivem em Premissas. Use referências absolutas para os direcionadores de retenção e ARPU para que as linhas de coorte sejam preenchidas de forma limpa.
  • Uma fórmula consistente por linha de coorte para que possa ser copiada entre os meses sem edições.
  • Retenção e margens como percentual; CAC, LTV, ARPU como moeda; payback e vida útil como meses com uma casa decimal.
  • Nomeie scn, tol, CAC e a célula de retenção para fórmulas legíveis de Verificações e LTV.

Verificações

  • LTV/CAC calculado de forma consistente (forma fechada e descontado dentro da tolerância).
  • Payback do CAC reportado em meses e positivo.
  • Retenção monotonicamente não crescente dentro de cada coorte (nenhum mês sobe acima do anterior).
  • Margens e retenção entre 0 e 1; CAC e LTV não negativos.

Recalcular e verificar

Após escrever, recalcular headless com LibreOffice para que o texto da fórmula do openpyxl se torne valores computados. Examinar cada planilha em busca de #REF!, #DIV/0!, #VALUE!, #NAME?. Observe que LTV e payback dividem por churn, portanto proteja contra churn = 0 produzindo #DIV/0!. Corrigir qualquer fórmula ofensiva ou intervalo nomeado ausente e recalcular novamente em loop. Entregar apenas quando a aba Verificações mostrar todos PASS e nenhuma string de erro permanecer.

Entradas a coletar

  • Gastos com vendas e marketing e novos clientes no mesmo período (para CAC).
  • ARPU por mês e % margem bruta.
  • Churn mensal (ou retenção) e uma taxa de desconto.
  • Número de coortes e meses a modelar na grade.
  • Multiplicadores de cenário para churn e ARPU (Base/Otimista/Pessimista) e a faixa de tolerância.

Exemplo

Hipotético: S&M 200.000, 400 novos clientes, portanto CAC 500. ARPU 50 por mês, 80% de margem bruta dá 40 de lucro bruto por cliente-mês, payback de 12,5 meses. Churn de 4% mensal implica vida média de 25 meses; LTV forma fechada cerca de 1.000 e LTV coorte descontado ligeiramente menor; LTV/CAC perto de 2,0x. A grade de coortes decai cada coorte 100%, 96%, 92,2%, ... ao longo dos meses, e a contribuição soma até o LTV descontado.

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

andreworia/assumption-registry-builder

Creates a structured assumption register for any Excel model with columns for name, category, base value, source, Bull/Bear values, sensitivity rank, and owner, plus a formula for computing sensitivity rank from Data Table outputs.

andreworia/data-cleaning-for-excel

Turns pasted or exported data with mixed formats, blank rows, or duplicates into a clean, consistently formatted range ready for analysis. Use it right after pasting raw data into a worksheet.

andreworia/formula-audit-checker

Provides a systematic audit checklist for Excel model formula logic, hardcoded values, circular references, and error handling, with step-by-step instructions for using Excel's native auditing tools.

andreworia/inputs-calcs-outputs-design

Enforces the three-tab separation principle for any Excel model, producing a full design for a dedicated Inputs tab, one or more Calculations tabs, and a clean Outputs tab with a conventions checklist.

andreworia/model-architecture-template

Defines the master tab structure, naming conventions, color codes, number formats, and print area setup for any new strategy or finance Excel model, serving as the structural template before any content is added.

andreworia/output-summary-tab

Designs the executive summary tab of an Excel model with KPI tiles, a narrative block, a sensitivity summary, and an assumption log, formatted for print or screenshot use in a board pack.

andreworia/pivot-table-builder

Specifies and builds a pivot table from a flat data range, choosing rows, columns, values, and filters. Use it when you have raw tabular data and need a summary view without building it cell by cell.

andreworia/revenue-build

Builds a driver-based revenue forecast .xlsx with live formulas across separate drivers, build, and output tabs plus checks, rolling a customer or units schedule (beginning, adds, churn, ending) into revenue with Base/Bull/Bear scenario toggles. Use when someone needs a bottom-up revenue model, an ARR build, or a driver-based forecast for planning or a board deck. Do not trigger for editing an existing workbook through the Claude for Excel add-in.

andreworia/scenario-manager

Builds a Base/Bull/Bear scenario switching layer for a model in a .xlsx with a live selector, CHOOSE or INDEX assumption links, a side-by-side output comparison, and a recalc check, then delivers the workbook. Use when someone wants an auditable scenario toggle instead of Excel's hidden Scenario Manager. Do not trigger for editing an existing workbook through the Claude for Excel add-in.

andreworia/sensitivity-tables

Builds one- and two-variable sensitivity (Data Table) analysis on a model output in a .xlsx with live formulas and a recalc check, then delivers the workbook. Use when someone wants to see how an output (NPV, IRR, EPS, margin) moves as one or two inputs change. Do not trigger for editing an existing workbook through the Claude for Excel add-in.

andreworia/sensitivity-tornado

Ranks variable sensitivities to a key output and builds a tornado chart by swinging each input over a defined range, computing output impact, and producing a horizontal bar chart data structure.

Habilidades Relacionadas