PITCH: Como vocês descobrem se uma funcionalidade está sendo usada?
Nos últimos anos trabalhei em diversos projetos de software para clientes e startups e comecei a notar um padrão.
Em algum momento alguém sempre faz perguntas como:
- Os usuários estão usando a funcionalidade nova?
- Em qual etapa do cadastro eles abandonam o fluxo?
- Quais ações dentro do sistema realmente são utilizadas?
- Valeu a pena desenvolver determinada funcionalidade?
O curioso é que responder essas perguntas quase sempre exigia uma das duas abordagens:
Opção 1 - Banco de Dados
Criar tabelas específicas para armazenar eventos, migrations, consultas e dashboards.
Funciona, mas acaba misturando dados operacionais com dados analíticos e adicionando complexidade a uma aplicação que muitas vezes nem precisava disso.
Opção 2 - Ferramenta externa
Integrar alguma ferramenta de analytics.
Também funciona, mas em vários casos a configuração parecia desproporcional ao problema que queríamos resolver.
Muitas vezes a necessidade era simplesmente saber:
"As pessoas estão usando essa funcionalidade?"
ou
"Onde elas estão abandonando o fluxo?"
Depois de enfrentar isso repetidamente, resolvemos criar uma solução interna baseada apenas em eventos enviados por HTTP.
A ideia é extremamente simples:
- Criar um tipo de evento.
- Enviar um POST.
- Consultar os dados posteriormente.
- Sem SDK obrigatório.
- Sem alterar o banco principal da aplicação.
- Sem dezenas de telas de configuração.
O motivo deste post não é vender nada.
Inclusive ainda estamos tentando validar o problema antes de pensar em monetização.
Estamos usando a solução em alguns projetos reais e tentando descobrir se estamos resolvendo um problema que outras equipes também enfrentam ou se isso é algo muito específico dos contextos em que trabalhamos.
Os resultados iniciais têm sido promissores, mas ainda estamos tentando validar se essa dor existe fora dos projetos em que atuamos.
Em muitos casos, a discussão sobre monetização aparece muito cedo. Neste caso, estamos tentando fazer o caminho inverso: validar primeiro se o problema realmente existe para outras equipes.
O produto nasceu porque a dor já existia nos projetos e agora estamos tentando entender se ela também existe fora deles.
Por isso queria ouvir a opinião de vocês:
Quando precisam responder perguntas sobre comportamento dos usuários dentro de uma aplicação, qual abordagem costumam utilizar?
- Tabelas próprias no banco?
- Google Analytics?
- PostHog?
- Mixpanel?
- Logs?
- Solução interna?
E principalmente:
Vocês enxergam esse problema ou ele nunca foi relevante nos projetos em que trabalharam?
Se alguém tiver interesse em dar feedback sobre a abordagem ou sobre a solução em si, ficarei feliz em ouvir.
Para quem tiver curiosidade em conhecer a abordagem que estamos testando:
https://site.sedl.dev