RETAIL MEDIA · PLATAFORMA B2B · 2025—2026

CRMAds: transformar inventário de mídia em espaço vendável.

Plataforma de retail media da CRMBonus, desenhada com o SBT como publisher piloto. Traduzi a documentação e as regras de um produto de mídia denso em jornadas para publisher, anunciante e agência.

PAPEL
Product Designer — tradução da direção de produto em fluxos e UX
TIME
Liderança, engenharia e inovação
ENTREGAS
Arquitetura de fluxos, UX de 3 módulos, evolução do design system
STATUS
MVP pronto para teste

As telas apresentadas são conceito. Dados, marcas e valores são ilustrativos.

Tela de login do CRMAds Publisher Ad Manager

Recebia a complexidade em estado bruto e a transformava em jornada.

Meu ponto de partida era a documentação do produto: regras de negócio, restrições técnicas, o que o PM havia definido. Meu trabalho era transformar isso em jornadas que fizessem sentido para usuários com necessidades distintas (o publisher, o anunciante, o ad ops), garantindo que cada fluxo respeitasse ao mesmo tempo a regra de negócio e o que a engenharia conseguia construir.

As decisões de feature e o recorte vinham do PM. Eu devolvia os fluxos e as alternativas de interface que davam forma a cada escolha, em conversa próxima com produto e engenharia.

A CRMBonus estava sentada em cima de dois ativos que a mídia tradicional não consegue replicar.

Retail media cresce por um motivo simples: quem tem relacionamento direto com o consumidor tem dado de primeira mão e inventário próprio. A CRMBonus já operava o elo entre varejo e consumidor em escala, com canais próprios: QR code, WhatsApp, cashback. O que faltava era transformar isso em um produto de mídia.

A parceria com o SBT deu forma concreta à aposta: um publisher com audiência massiva, inventário próprio e necessidade de monetizar melhor.

Google e Meta têm audiência incomparável. Competir por volume seria perder. A vantagem defensável do CRMAds era dominar o triângulo entre consumidor, varejo e mídia, algo que nenhuma big tech consegue montar do mesmo jeito.

Um publisher tem inventário, mas não tem como vendê-lo de forma estruturada e mensurável.

O anunciante quer alcançar audiência qualificada, mas não quer negociar caso a caso. Entre os dois, faltava produto.

Primeiro desafio: dar forma a um conceito que não existia. O que exatamente é um "espaço publicitário" quando o inventário não é uma página web, e sim um programa de TV, um cupom ou uma mensagem de WhatsApp?

Segundo desafio: tornar operável algo denso. Inventário, campanhas, pedidos, anunciantes, agências, pacing e performance. Tudo precisava caber numa interface que um time de ad ops usasse todo dia.

A CRMBonus tinha dois ativos para vender: espaço de mídia e audiência.

O publisher (o SBT) trazia o inventário de mídia: os espaços onde o anúncio aparece. A CRMBonus trazia o outro lado, o inventário de dados: a audiência da própria base, que dava ao anunciante para quem falar.

A regra de negócio já vinha definida. Meu trabalho de design foi dar a esses dois ativos uma mesma gramática na interface, para que o produto não parecesse dois sistemas colados. O publisher modela o inventário de mídia como programa, com períodos de exibição (dias e faixas de horário); a audiência entra como um catálogo de segmentos, com volume e preço.

Espaço e audiência são coisas diferentes no negócio. Na tela, precisavam ser a mesma coisa: inventário disponível para venda.
Tela de edição de inventário do CRMAds, com tipo de inventário, nome do programa e períodos de exibição por dia e horário

Modelei o inventário de mídia como programa + período de exibição. O dropdown "tipo de inventário" foi desenhado para que novos formatos entrem sem redesenhar o produto.

A peça que amarra tudo: cada espaço publicitário disponível para venda.

A definição precisava ser abstrata o suficiente para caber banner em aplicativo, QR code em cupom, espaço em WhatsApp, mídia em e-mail, tela de cashback e push notification patrocinada, sem que nenhum novo formato exigisse repensar o produto.

A tela de detalhe da campanha é onde o conceito inteiro se materializa: veiculação por programa, dia e faixa horária de um lado; do outro, a oferta que chega ao consumidor via QR code no WhatsApp, com giftback atrelado à compra no varejo.

É aqui que o triângulo se fecha. A mídia é do publisher, a audiência vem da base da CRMBonus, e o benefício acontece no varejo. Nenhuma big tech monta esse encadeamento.
Detalhe de campanha no CRMAds: performance, veiculação por programa e horário, audiência, e prévia da oferta em WhatsApp

Coloquei performance, veiculação e a prévia do anúncio na mesma tela porque quem opera precisa ver, de uma vez, o que foi comprado, onde vai ao ar e o que o consumidor recebe.

Uma hierarquia clara: publisher, pedido, campanha.

A plataforma não servia um publisher, servia uma rede deles. Isso pedia um topo de hierarquia que a maioria dos ad servers esconde: a gestão dos próprios publishers, cada um com seu ciclo de vida (convite, ativo, suspenso, em teste).

Lista de publishers no CRMAds, cada um com status: pendente, ativo, suspenso, inativo, em teste

O topo da hierarquia. Cada publisher tem um estado próprio, porque onboarding, operação e suspensão são momentos distintos da relação, e a tela precisa deixar claro em qual deles cada um está.

Dashboard de visão geral do CRMAds com receita, fill rate, CPM e performance por programa

Dentro de um publisher, a performance por programa: é assim que ele vende, e é assim que o anunciante compra. Fill rate, CPM e receita são as métricas que um publisher realmente olha.

Lista de pedidos comerciais do CRMAds com anunciantes, agências, budget e campanhas vinculadas

Pedido e campanha são coisas diferentes: o pedido é o acordo comercial (anunciante, agência, budget), a campanha é a execução.

Um pedido, cinco pessoas

Olhe uma linha dessa tela: anunciante, agência, vendedor, trafficker e o publisher dono do inventário. São cinco atores com ritmos e responsabilidades distintas, atravessando o mesmo registro.

Separar pedido de campanha não foi organização de menu. Foi reconhecer que o time comercial e o time de ad ops trabalham no mesmo produto, em momentos diferentes, e não podem atrapalhar um ao outro.

O comercial fecha o acordo e some. O ad ops opera todos os dias. Se os dois dividissem a mesma tela, um estaria sempre no caminho do outro.

O sistema existia para ser testado. Este produto foi o teste.

O CRMAds foi um dos primeiros produtos a rodar sobre o design system da casa. Meu papel não era só consumir a biblioteca: era descobrir onde ela quebrava diante de um domínio real.

Retail media cobrou coisas que um catálogo abstrato não previa. O ciclo de vida de uma campanha exigiu estados que não existiam (rascunho, reservada, entregando, pausada, cancelada, finalizada), cada um com peso visual diferente porque não têm a mesma urgência. O pacing exigiu uma barra de progresso que carrega dois números ao mesmo tempo: quanto foi entregue e quanto foi contratado.

Componente bom não nasce de catálogo. Nasce da jornada que o exige.

Cada peça que propus voltou para o sistema, disponível para o próximo produto. É o mesmo raciocínio de plataforma que orientou o produto, aplicado à ferramenta que o constrói.

Tela de configurações do CRMAds com gestão de usuários e status de acesso

Governança de acesso: com muitos atores no mesmo sistema, controlar quem entra e com qual permissão deixa de ser detalhe e vira parte do produto.

No MVP, a audiência era informativa. Plugar a base do cliente ficou para depois.

A audiência vinha da base da CRMBonus. Mas abrir isso por completo, deixando cada cliente conectar e ativar a própria base, era um problema grande de integração e de governança de dado. Grande demais para o primeiro teste.

O recorte que entrou foi uma página informativa: mostrava ao publisher os segmentos disponíveis, com volume e preço, como uma vitrine. A ativação real da base do cliente ficou como evolução, para depois de validar que o publisher vendia o inventário básico.

A tela mostra a audiência como catálogo. No MVP ela informava; a promessa era um dia deixar o cliente plugar a própria base.
Tela de audiências do CRMAds com segmentos, número de usuários, refresh e CPM por segmento

Audiência apresentada como catálogo: cada segmento com volume, atualização e preço. No recorte do MVP, esta camada era informativa.

Desenhei o produto inteiro sem validar uma tela com usuário real.

A estratégia da liderança foi construir primeiro e testar depois, apostando que o negócio se fecharia quando o cliente visse o produto funcionando. É uma aposta legítima em contexto de inovação, e foi a restrição dentro da qual trabalhei.

Mas ela deixou um risco em aberto que eu reconheço: proto-persona e alinhamento com o PM são proxy, não evidência. Desenhei decisões de fluxo sobre um usuário presumido, sem confrontá-las com um usuário observado.

Hoje eu levaria essa tensão para a mesa mais cedo: defenderia ao menos uma rodada de validação leve antes do build, mesmo que curta, para trocar suposição por evidência nos pontos de maior risco.

Não é uma crítica à decisão de negócio. É o que eu, como designer, faria para reduzir a distância entre o que projetamos e o que o usuário confirmaria.

O MVP estava pronto para teste quando encerrei meu ciclo na empresa.

O conceito foi validado com liderança, engenharia e time de inovação. Estas eram as métricas definidas para a validação:

MÉTRICAO QUE RESPONDERIA
Tempo até publicaçãoO produto é operável?
Fill rateO inventário está sendo vendido?
RecorrênciaO anunciante volta?
CTR e ROIA mídia entrega resultado?
NPSO publisher confia na plataforma?
Não tenho o resultado do teste. Tenho a hipótese, o instrumento de medida e o recorte que permitiria aprender rápido, que era o trabalho a ser feito naquele momento.
PresenteIA B2B
Vamos conversar