---
name: roi-calculator-builder
description: >
  Cria calculadoras interativas de ROI para SaaS com IA — o componente de
  maior conversão em LP de ferramentas B2B e B2C. O lead informa seus dados
  (frequência de uso, tempo por tarefa, custo do sistema atual) e a calculadora
  mostra em tempo real quanto tempo e dinheiro ele economiza por mês com o
  SaaS. Inclui payback em dias, custo da inação, 3 cenários (conservador/
  realista/otimista), integração com quiz e disclaimer de credibilidade.
  Use quando disser "calculadora de ROI", "calculadora de economia",
  "mostrar quanto economiza", "componente interativo de ROI", "quanto vale
  o produto", "calculadora de tempo", "payback em dias", "custo de não
  fazer nada". Integra com /ai-feature-map, /saas-landing-blueprint,
  /quiz-diagnostico-saas.
---

# ROI Calculator Builder

> "A melhor prova de valor não é o depoimento de outro cliente — é o lead calculando o próprio ROI."


## FASE 0 — Leitura do Contexto do Projeto (OBRIGATÓRIO)

> **ANTES DE QUALQUER OUTRA AÇÃO:** leia o arquivo `SAAS-CONTEXT.md` da pasta do projeto.

Se o arquivo existe:
- Leia NOME, SETOR, REGULAÇÃO, DECISOR, USUÁRIO FINAL, CANAL, TICKET, MODELO, VOC e CONCORRENTES
- Use esses dados como fonte de verdade em todas as seções desta skill
- Não faça perguntas que já estão respondidas no SAAS-CONTEXT.md

Se o arquivo **não existe**:
- Pare aqui
- Informe: "Nenhum SAAS-CONTEXT.md encontrado. Rode `/saas-context-doc` primeiro para criar o briefing do projeto. Isso garante que esta skill use dados reais do seu SaaS, não exemplos genéricos."
- Não prossiga até o arquivo ser criado

Por que é obrigatório: esta skill usa nome do SaaS, VOC do cliente, regulação do setor e perfil do decisor para gerar output que você pode usar diretamente — sem edição. Sem o contexto, o output fica com placeholders e linguagem de produto, não de cliente.

---

## FASE 0.5 — Leitura de Outputs Anteriores

Se existirem, leia os arquivos `.saas/` para evitar repetir informações já definidas:

- `.saas/SAAS-S2-FEATURES.md` → coluna "Tempo Economizado" e "ROI Semana Estimado" por feature (pré-requisito para os cálculos da calculadora)
- `.saas/SAAS-S10-QUIZ.md` → perguntas de frequência e tempo do quiz (para pré-preencher os campos da calculadora via URL params)

Campos que NÃO precisam ser perguntados se já constam nesses arquivos:
- Percentual de redução de tempo por feature (já calculado na S2)
- Frequência e tempo por execução (já captados no quiz da S10 — usar como valores padrão dos sliders)
- Perfil do lead por score de quiz (S10 — determina qual cenário destacar por padrão)

---

## Por que existe

Copywriting afirma. Calculadora prova. Quando o lead insere seus próprios números e vê o resultado — é ele mesmo se convencendo. Esta skill cria a especificação completa de uma calculadora de ROI que pode ser implementada como componente React, HTML vanilla, ou página no Notion/Typeform.

---

## MODOS DE OPERAÇÃO

- **`/roi-calculator-builder`** — spec completa: campos + fórmula + visual + 3 cenários + disclaimer
- **`/roi-calculator-builder simples`** — calculadora de 2 campos (tempo + frequência)
- **`/roi-calculator-builder completa`** — calculadora multi-feature com breakdown por cenário
- **`/roi-calculator-builder codigo`** — entrega componente HTML/JS implementável

---

## PRÉ-REQUISITO

Precisa do output do `/ai-feature-map` — coluna "Tempo Economizado" e "ROI Semana Estimado".

---

## PROCESSO — 4 FASES

### FASE 1 — Definição dos Campos de Input

Máximo 4 campos de input (cada campo a mais reduz a taxa de uso da calculadora):

```
CAMPO 1 — Frequência de Uso:
Label: "Quantas vezes por semana você [processo]?"
Tipo: slider (1-20) OU botões de opção (1-2x / 3-5x / diariamente / várias vezes/dia)
Valor padrão: [valor médio da persona — ex: 5]

CAMPO 2 — Tempo por Execução:
Label: "Quanto tempo leva cada vez?"
Tipo: slider em minutos (5-120) OU botões (15min / 30min / 1h / 2h+)
Valor padrão: [tempo médio identificado no /saas-problem-fit-canvas]

CAMPO 3 (opcional) — Valor do Tempo:
Label: "Qual o valor da sua hora de trabalho?"
Tipo: slider (R$20 - R$500) OU input numérico
Valor padrão: R$50 (se o lead não souber, usa o padrão)
Micro-copy: "Não sabe? Use R$50/h — valor médio do mercado BR"

CAMPO 4 — Custo do Sistema Atual:
Label: "Quanto você paga hoje pelo sistema/ferramenta que usa para isso?"
Tipo: slider (R$0 - R$2.000) OU input numérico OU toggle (não pago nada / pago R$__)
Valor padrão: R$0
Micro-copy: "Inclui: planilha (R$0), sistema legado (R$ X/mês), processo manual (só o tempo)"
Por que importa: lead que migra de outro sistema vê economia DUPLA (tempo + substituição de custo)
```

---

### FASE 2 — Fórmulas de Cálculo

```
VARIÁVEIS DE ENTRADA:
freq = frequência semanal (Campo 1)
tempo = minutos por execução (Campo 2)
valor_hora = R$/hora (Campo 3 ou default R$50)
custo_sistema_atual = R$/mês (Campo 4 ou default R$0)

CÁLCULOS:
min_semana = freq × tempo
horas_semana = min_semana ÷ 60
horas_mes = horas_semana × 4.33 (semanas/mês)
horas_ano = horas_mes × 12

custo_tempo_mes = horas_mes × valor_hora
custo_total_atual = custo_tempo_mes + custo_sistema_atual

# Com o SaaS (redução de tempo calculada do /ai-feature-map):
reducao_pct = [percentual de redução da feature principal — ex: 0.85 para 85%]
tempo_saas = tempo × (1 - reducao_pct)
min_semana_saas = freq × tempo_saas
horas_mes_saas = (min_semana_saas × 4.33) ÷ 60

economia_horas_mes = horas_mes - horas_mes_saas
economia_reais_mes = (economia_horas_mes × valor_hora) + custo_sistema_atual

custo_saas_mes = [preço do plano Pro]
roi_ratio = economia_reais_mes ÷ custo_saas_mes

# PAYBACK EM DIAS (mais psicologicamente concreto que ROI multiplicado):
economia_diaria = economia_reais_mes ÷ 30
payback_dias = custo_saas_mes ÷ economia_diaria
# Exemplo: "O SaaS se paga em 11 dias"

# CUSTO DA INAÇÃO (12 meses sem o SaaS):
custo_inacao_12m = custo_total_atual × 12
# "Se você mantiver o processo atual por 12 meses: R$ [custo_inacao_12m] gastos sem retorno."
```

---

### FASE 3 — Especificação do Output Visual com 3 Cenários

A calculadora atualiza os resultados em tempo real (onChange em cada campo):

```
PAINEL DE RESULTADO:

┌─────────────────────────────────────────────────────────┐
│ CENÁRIO CONSERVADOR (economia mínima garantida)          │
│ Redução de [reducao_pct × 0.5 × 100]% do tempo          │
│ ⏱ [economia_horas_mes × 0.5] horas/mês economizadas    │
│ 💰 R$ [economia_reais_mes × 0.5]/mês em retorno        │
│ 📅 Payback: [payback_dias × 2] dias                    │
├─────────────────────────────────────────────────────────┤
│ ★ CENÁRIO REALISTA (resultado médio dos clientes) ★     │← DESTAQUE
│ SEM O [NOME SaaS]: R$ [custo_total_atual]/mês           │
│ COM O [NOME SaaS]: R$ [custo_saas_mes]/mês              │
│ VOCÊ ECONOMIZA: R$ [economia_reais_mes]/mês             │
│ PAYBACK: o [SaaS] se paga em [payback_dias] dias        │
├─────────────────────────────────────────────────────────┤
│ CENÁRIO OTIMISTA (resultado top 20% dos clientes)       │
│ Redução de [reducao_pct × 1.2 × 100]% do tempo          │
│ ⏱ [economia_horas_mes × 1.2] horas/mês economizadas   │
│ 💰 R$ [economia_reais_mes × 1.2]/mês em retorno        │
│ 📅 Payback: [payback_dias × 0.8] dias                  │
└─────────────────────────────────────────────────────────┘

CUSTO DA INAÇÃO (destaque em vermelho abaixo do resultado):
┌─────────────────────────────────────────────────────────┐
│ 🔴 CUSTO DE NÃO FAZER NADA:                             │
│ Se você mantiver o processo atual por 12 meses:          │
│ R$ [custo_inacao_12m] gastos sem nenhum retorno          │
│ = [custo_inacao_12m ÷ custo_saas_mes] meses do [SaaS]  │
│ "Você está pagando mais para manter o problema          │
│ do que para resolver."                                   │
└─────────────────────────────────────────────────────────┘

CTA ABAIXO DO RESULTADO:
"Com payback em [payback_dias] dias, o risco é zero:"
[BOTÃO] "Economizar R$ [economia_reais_mes]/mês — Começar grátis"

DISCLAIMER DE CREDIBILIDADE (abaixo do botão — OBRIGATÓRIO):
"* Cálculo baseado em [reducao_pct × 100]% de redução de tempo — média dos nossos
[N] clientes ativos. Cenário conservador usa 50% desse valor. Seu resultado pode
variar conforme volume e complexidade do seu processo."
```

---

### FASE 4 — Integração com Quiz (Pré-preenchimento)

```
QUANDO O LEAD VEM DO QUIZ (/quiz-diagnostico-saas):
Os campos da calculadora são pré-preenchidos com as respostas do quiz.

Quiz Pergunta 2 (frequência) → Campo 1 da calculadora
Quiz Pergunta 3 (tempo) → Campo 2 da calculadora
Score do quiz → define qual cenário destacar por padrão:
  Score alto (12-15) → destacar Cenário Realista (lead engajado aceita)
  Score médio (7-11) → destacar Cenário Conservador (lead cético: subestimar é credível)
  Score baixo (0-6) → mostrar Custo da Inação em destaque máximo

COMO PASSAR OS DADOS:
Via URL params: /calculadora?freq=5&tempo=30&score=12
A calculadora lê os params e preenche os campos + rola até o resultado automaticamente

VERSÃO STANDALONE (sem quiz):
Campos aparecem com os valores padrão — lead ajusta
Custo da inação só aparece após o lead preencher todos os campos
```

---

## IMPLEMENTAÇÃO

### Opção A — HTML + JavaScript Vanilla (implementação mais rápida)

```html
<!-- Spec do componente — implementar como arquivo único -->
<!-- Campos: range inputs ou radio buttons -->
<!-- Output: div atualizado com JS puro em tempo real -->
<!-- Estilo: inline CSS seguindo paleta Painel da Tata (creme+navy+púrpura) -->
<!-- Responsivo: funciona em mobile sem biblioteca -->
<!-- 3 cenários: tabs ou seções colapsáveis -->
<!-- Custo da inação: seção em vermelho translúcido abaixo do resultado -->
```

### Opção B — Componente React (para SaaS com frontend React/Next.js)

```jsx
// Props: initialFreq, initialTempo, valorHora, custoSistemaAtual,
//        reducaoPct, precoSaas, nomeSaas, nClientes, scenarioFromQuiz
// State: campos controlados com useState
// Effect: calcula em tempo real a cada mudança
// Output: 3 tabs de cenário + seção de custo da inação
// Animação: número crescendo ao mudar valores (CSS transition)
```

### Opção C — Typeform / Tally (sem código)

```
Campos de input: Typeform Number Field com slider
Resultado: página de resultado customizada com variáveis calculadas
Limitação: não atualiza em tempo real — resultado aparece só após submissão
Quando usar: MVP de validação antes de implementar o componente real
Custo da inação: incluir como campo calculado na página de resultado
```

---

## VARIAÇÕES DE COPY POR RESULTADO

```
SE payback_dias < 7:
"O [SaaS] se paga em [payback_dias] dias. Menos de uma semana — e depois
disso, tudo que você economiza é lucro puro."

SE payback_dias entre 7 e 30:
"Payback em [payback_dias] dias. Antes da segunda cobrança, você já está no lucro."

SE payback_dias > 30:
"O [SaaS] se paga em [payback_dias] dias. Mas você vai usar por anos — então
o retorno acumulado é de [roi_ratio × 12]x no primeiro ano."

SE roi_ratio < 2x:
"Para cada R$1 que você investe no [SaaS], você recupera R$ [roi_ratio] em tempo.
Ainda é vantagem — especialmente com [freq]× de uso por semana."

SE roi_ratio entre 2x e 5x:
"Seu ROI é de [roi_ratio]x. O [SaaS] se paga [roi_ratio] vezes por mês."

SE roi_ratio > 5x:
"Você está deixando R$ [economia_reais_mes] na mesa todo mês.
Isso é [roi_ratio]x o preço da assinatura — por fazer tudo na mão."
```

---

## Anti-Erros

- **Nunca use números fixos** — o lead precisa inserir os próprios dados para confiar no resultado
- **Nunca mostre ROI impossível sem disclaimer** — ROI acima de 20x sem contexto mata credibilidade
- **Sempre mostre o custo do SaaS no mesmo painel** — comparação direta é o argumento
- **Campo de valor da hora deve ter default** — muita gente não sabe ou trava; o default resolve
- **Resultado deve atualizar em tempo real** — calculadora que recarrega a página perde o efeito
- **3 cenários > 1 número** — lead cético aceita o conservador; lead empolgado vai para o otimista
- **Custo da inação em vermelho** — cor não é optional: ativa aversão à perda
- **Disclaimer é obrigatório** — sem ele, a calculadora parece exagerada; com ele, parece honesta

## Integrações

- `/ai-feature-map` — fornece o percentual de redução de tempo (pré-requisito)
- `/saas-landing-blueprint` — calculadora é a Seção 6 da LP
- `/quiz-diagnostico-saas` — calculadora pré-preenche com dados do quiz
- `/pricing-strategy` — o preço do SaaS na fórmula vem desta skill
- `/saas-narrative-framework` — o número do Ato 5 (ROI) deve ser consistente com esta calculadora

---

## SALVAR OUTPUT

Ao finalizar, salve o resultado em `.saas/SAAS-S12-ROI.md`:

```markdown
# SAAS-S12 — ROI Calculator Builder

## Campos da Calculadora
- Campo 1 (Frequência): [label + tipo + valor padrão]
- Campo 2 (Tempo): [label + tipo + valor padrão]
- Campo 3 (Valor/hora): [label + default]
- Campo 4 (Custo atual): [label + default]

## Fórmulas Principais
- Redução de tempo (%): [valor de SAAS-S2]
- Payback em dias: [fórmula]
- Custo da inação 12m: [fórmula]

## Cenários
- Conservador: [especificação]
- Realista: [especificação — DESTACADO]
- Otimista: [especificação]

## Implementação
[Opção A/B/C escolhida]

## Integração com Quiz
[URL params definidos]
```

---

## OUTPUT PARA PRÓXIMA SKILL

**Próxima skill recomendada:** `/saas-onboarding-flow`

**Passe como input:**
- ROI cenário realista: R$ [X]/mês — usar no email D0 do onboarding
- Payback em dias: [N] — usar no email de conversão do trial D6/D7
- Custo da inação anual: R$ [X] — usar na tela de paywall no D7 do trial
- Lead tem custo de sistema atual > R$0: [sim/não — se sim, trigger onboarding de migração]
