Os relatórios respondem perguntas como "quanto faturei nos últimos 30 dias?", "qual barbeiro trouxe mais receita?", "qual horário do dia bomba?". Tudo numa só tela, com janela de 7, 30 ou 90 dias.
Onde fica
No painel: Relatórios. URL /{sua-barbearia}/relatorios. Apenas o Owner tem acesso.
Janelas de período
No topo, três botões:
- Últimos 7 dias.
- Últimos 30 dias (default).
- Últimos 90 dias.
Mudou o botão? Tudo abaixo recalcula.
O que aparece
KPIs do período
Cartões grandes com os principais números:
- Faturamento total — soma do
price_centsdos agendamentosattended(não conta cancelados ou no-show). - Ticket médio — faturamento ÷ número de atendimentos.
- Taxa de ocupação — % de horários trabalháveis (dentro do horário recorrente) que viraram agendamento atendido.
- Taxa de no-show — % de agendamentos
scheduledque viraramno_show. Termômetro de confiabilidade do cliente. - Novos clientes — quantos clientes únicos foram cadastrados no período.
- Clientes recorrentes — clientes que já existiam e voltaram.
Timeline diária
Linha do tempo com um ponto por dia mostrando faturamento e número de atendimentos. Útil pra ver:
- Picos (sábados? final de mês?).
- Vales (segunda? feriado?).
- Tendência (subindo, estável, caindo).
Heatmap de demanda
Mapa dia da semana × hora do dia. Cada célula colorida pela densidade de agendamentos.
- Você descobre quando bate o pico — geralmente sexta tarde + sábado dia inteiro.
- Janelas vazias mostram horários que poderiam ser desativados ou onde sua oferta não está atraindo.
Ranking de serviços
Lista ordenada por faturamento (configurável pra ordenar por quantidade) com:
- Nome do serviço.
- Quantidade de atendimentos.
- Receita total.
- % do faturamento total.
Você descobre o que vende e o que fica esquecido. Decisão típica: cortar serviço inativo do catálogo, ou destacar serviço campeão na descrição da landing.
Produtividade por barbeiro
Tabela com cada barbeiro:
- Atendimentos.
- Receita gerada.
- Ticket médio dele.
- Taxa de ocupação dele.
Pra você comparar performance e decidir promoções, mudanças de comissão, ou conversa de feedback.
Como os números são calculados
Todos os relatórios usam orders.date (a data efetiva do agendamento), não a data de cadastro no sistema. Isso evita deriva quando a barbearia opera em fuso horário diferente ou faz ajustes retroativos.
Apenas agendamentos com status = attended entram em faturamento, ticket médio, ocupação. Cancelamentos e no-shows ficam fora — mas no-show conta na taxa de no-show.
Boas práticas
- Revise toda segunda-feira o relatório de "últimos 7 dias" — calibre o que mudar na semana.
- Toda virada de mês confira "últimos 30 dias" — base pra decisões de preço, promoção, contratação.
- A cada trimestre, abra "últimos 90 dias" — entender tendência sazonal sem o ruído de uma semana atípica.
Faturamento sem ticket médio engana. Mês com 100 atendimentos a R$ 30 (R$ 3000) vs 60 atendimentos a R$ 50 (R$ 3000) — mesmo faturamento, realidades diferentes. Olhe os dois números juntos.
Limitações em v0
- Não há export (CSV, PDF). Visual apenas.
- Não há comparativo de períodos automaticamente (ex: "este mês vs mês anterior"). Você compara olhando.
- Não há filtros de barbeiro dentro do relatório. Alterando "produtividade por barbeiro" você já tem desagregado.
Refinamentos futuros estão no roadmap (telas "Em breve" no menu).
Próximos passos
- Dashboard diário — pra leitura do dia atual.