Wireframe de baixa fidelidade · tela Tráfego, visão Distribuição · caixa, linha, rótulo e posição. Sem cor, sem tipografia final, sem dado real: XX, R$ X.XXX,XX e DD/MM são marcação. Estado desenhado: recorte cheio, com um conjunto em cada camada (C2 e C3), 5 e 3 peças, mais um segundo desenho do bloco 1 no estado recorte sem investimento em distribuição. Os blocos e a ordem batem com hierarquia/TRAFEGO-DISTRIBUICAO.md §1; a legenda ao lado diz a pergunta de cada um.

marca Nextmarca BerclahRadar 3.0
tema

Cabeçalho (três marcas), menu de seis e botão de tema herdam da Geral. Não são bloco desta tela e não se desenham aqui.

0Barra da telabarra-da-tela · titulo-tela · grupo-opcoes/botao-opcao · seletor-de-turma + faixa de datas · botao-icone

Tráfego VendasAtraçãoDistribuição Turma N: DD/MM/AAAA DD/MM DD/MM
da tela, as três visões dividem recorte: DD/MM a DD/MM (janela de venda da turma N)

Uma tela, três visões, nunca três abas. Título, grupo de visões, filtro e ↻ são da tela: trocar de visão mantém o recorte. A URL guarda ?tela=trafego&visao=distribuicao, e ?tela=distribuicao continua abrindo. Sem interruptor Descontar reembolso: distribuição não tem receita, como a Atração. Turma aqui também é recorte de data, não atribuição: o conjunto de C2/C3 roda contínuo (a mesma tagDoDia que carimba a atração carimba a distribuição em radar_fato_gasto), e não foi comprado para aquela turma. Só o bloco 1 responde a este filtro. Os blocos 2, 3 e 5 são vitalícios (a vida inteira da conjunto, da peça ou do acervo) e não mudam com a turma escolhida: é a mesma regra que a Atração já aplica à própria tabela de peças, aqui esticada para quase a tela inteira, porque é isso que a Marketing API da CA03 entrega. Nome de conta (CA03) não aparece: o rótulo é o conceito de negócio.

1Placar de distribuiçãograde-metricas com 3 cardDeMetrica · anexaComLegendaDoBloco · marca de parcial D8

Investimento em distribuiçãoR$ XXX,XX3 papéis: R$ X.XXX,XXaté DD/MM HH:MM (D8, só quando o gasto está pela metade)
ImpressõesXX.XXXno recorte
CPMR$ X,XXinvestimento ÷ mil impressões, no recorte

Estado recorte sem investimento em distribuição (§4 da hierarquia): a turma ou a faixa escolhida não tem linha de radar_fato_gasto no papel distribuição. Os três cartões vão a traço; nada mais na tela muda.

Investimento em distribuição-
Impressões-
CPM-

Os blocos 2, 3 e 5 continuam cheios, porque não obedecem ao recorte. Nunca R$ 0,00 de investimento, que leria como distribuição de graça.

investimento e impressões do papel distribuição, no recorte escolhido, somados de radar_fato_gasto · CPM recalculado da soma, nunca média de razões · investimento medido até DD/MM HH:MM.

O cartão 1 é o que manda: é a resposta direta a "para onde o dinheiro foi", por isso tem borda e número maiores (na alta fidelidade isso é tamanho, não borda). Impressões e CPM são apoio: dizem quanto isso comprou e a que preço, no MESMO recorte do cartão 1. Este é o único bloco desta visão que lê o D1, e lê pelo caminho canônico: radar_fato_gasto, papel distribuicao, que por sua vez é meta_gasto_vigente (a visão que dedup­lica grão de campanha e de anúncio), nunca a tabela meta_gasto crua. É consulta nova (§5 e §9): a conta CA03 já tem papel declarado no de-para (PAPEL_POR_CONTA_DE_ANUNCIO) e é conta obrigatória do sync, mas nenhuma rota soma isto por recorte hoje. Este cartão não é o mesmo número da coluna Investimento acumulado do bloco 2, que é a vida inteira de cada conjunto, lida direto da Marketing API sem passar pelo D1: por isso os nomes são diferentes, e a diferença está escrita na legenda do bloco 2 e no rodapé.

2Camada por camadatabela-responsiva (A TABELA PRESERVADA) · celulaDeLeitura, pilula · lista de públicos, nova

rola ›
Camada Investimento acumuladoInvest. acum. Verba diáriaVerba/dia Impressões Alcance Frequência CPM Estado Anúncios ativosAtivos Anúncios ExclusõesExcl.
C2R$ XXX,XXR$ XX,XXXX.XXXXX.XXXX,XXXR$ X,XXAtivoXXX
C3R$ XX,XXR$ X,XXXX.XXXXX.XXXX,XXXR$ X,XXAtivoXX0
TotalR$ XXX,XXR$ XX,XXXX.XXX--R$ X,XXXXX

Públicos de cada camada

C2 incluinome-do-público-1, nome-do-público-2 excluinome-do-público-3, nome-do-público-4, nome-do-público-5, nome-do-público-6
C3 incluinome-do-público-3, nome-do-público-4, nome-do-público-5, nome-do-público-6 excluinenhum

investimento acumulado é a vida inteira do conjunto (leitura ao vivo da Marketing API da CA03, sem recorte): não é o mesmo número do cartão Investimento em distribuição do bloco 1, que é só o recorte escolhido · alcance e frequência do total não somam, pelo mesmo motivo · pacote gerado em DD/MM HH:MM.

A tabela é a mesma que o dono elogiou, sem mudar coluna, ordem ou conteúdo: Camada, investimento, verba diária, impressões, alcance, frequência, CPM, estado, anúncios ativos, anúncios, exclusões, com C2 e C3 nas linhas e o total no rodapé de 2px da marca. Uma mudança de nome, justificada: a coluna 2 se chamava Investimento em distribuição, o mesmo nome do cartão novo do bloco 1, e os dois números divergem porque são janelas diferentes (vitalícia contra recorte). É a mesma colisão que a Atração já resolveu (Investimento virou Investimento acumulado na tabela de peças dela), e aqui o remédio é o mesmo. Novo, dentro do mesmo bloco, sem tocar a tabela: a lista de públicos por camada, que responde à metade "por público" da pergunta desta tela. Hoje a tabela conta só o número de exclusões; os nomes existem no pacote e não apareciam em tela nenhuma. Medido nesta etapa: a lista de exclui de C2 é, item a item, a mesma lista de inclui de C3 (mesmos quatro ids): o mecanismo de remarketing sequencial (quem já foi bastante alcançado em C2 passa a ser alvo de C3, e some da mira de C2) está de fato ligado assim hoje. O nome cru do público é a fonte; qualquer versão legível dele é interpretação minha do nome, não definição conferida no Gerenciador, e por isso nunca substitui o nome cru.

3Peças no artabela-responsiva · celulaDeLeitura · coluna Camada, nova

rola ›
Camada Peça Estado Alcance orgânicoAlcance org. Views orgânicasViews org. Investimento por anúncioInvest./anúncio Custo por ThruPlayCusto ThruPlay Peça original
C2Nome do anúncioPausadoXXXX.XXX--Ver peça original
C2Nome do anúncioAtivoXXXXXX--Ver peça original
C2Nome do anúncioAtivoXXXXXX--Ver peça original
C2Nome do anúncioAtivoXXXXXX--Ver peça original
C2Nome do anúncioAtivoXXXXXX--Ver peça original
C3Nome do anúncioPausadoX.XXXX.XXX--Ver peça original
C3Nome do anúncioAtivoXXXXXX--Ver peça original
C3Nome do anúncioAtivoXXXXXX--Ver peça original

alcance e views são da peça original no acervo orgânico, antes de virar anúncio: universo diferente da entrega paga, por isso o rótulo carrega "orgânico" · investimento por anúncio e custo por ThruPlay: a Marketing API da CA03 foi lida no grão de conjunto, o pacote não traz os dois por anúncio · N peças, X pausadas.

Oito peças hoje, cinco em C2 e três em C3, uma linha por anúncio. Coluna nova: Camada. A tabela de hoje lista os anúncios de C2 e C3 juntos, sem dizer de qual camada cada um é, e a pergunta desta tela é também "por camada": sem a coluna, o leitor não sabe se a peça mais barata está esfriando gente ou provando pra gente já quente. Alcance orgânico e views orgânicas não são a entrega paga: são o que a peça já tinha, publicada, antes de qualquer verba, e é por isso que respondem também ao bloco 5 (a mesma peça aparece nos dois lugares, em duas perguntas diferentes). As duas colunas de dinheiro por anúncio ficam declaradas e vazias, com o motivo no title, no mesmo padrão que a Turma já usa para o pico ao vivo: a fonte tem o grão errado hoje, não falta o dado de um dia específico, e a tabela reserva a coluna certa para quando a DX mudar o grão da leitura. O link vai para a peça original no Instagram, nunca some no meio do nome.

4Vídeograde-metricas com 4 cardDeMetrica · DEPENDÊNCIA DA DX · vira tabela por peça quando a DX entregar

Hook Rate-3 s ÷ impressões da mesma leitura
Hold Rate-assistiu 75% ÷ 3 s
Tempo médio-tempo total ÷ reproduções
Custo por ThruPlay-investimento ÷ ThruPlays

as quatro medidas dependem da leitura de vídeo por anúncio, que o pacote de distribuição não traz hoje (conferido nesta etapa, campo a campo) · alvo do método: Hook Rate mínimo 20% e ideal 30% ou mais, Hold Rate mínimo 5% e ideal 10% ou mais · os dois conjuntos otimizam por ThruPlay hoje, medido.

Bloco reservado em traço, um motivo só, no mesmo padrão da pesquisa de satisfação e do bloco de Vídeo das duas visões irmãs: coluna de fonte declarada e vazia, nunca linha de traços inventada. É aqui que a falta dói mais: os dois conjuntos no ar hoje otimizam por THRUPLAY (conferido no pacote), ou seja, a própria campanha já decide por vídeo assistido, e a tela não mostra se o vídeo está prendendo alguém. Quando a DX trouxer isto por anúncio, o bloco vira tabela (Peça · Camada · Hook Rate · Hold Rate · Tempo médio · Custo por ThruPlay) e estes quatro cartões viram a linha de total. Body Rate não entra: a terceira taxa do método é sobre compra de ingresso, e C2/C3 não vendem ingresso nem têm evento de conversão atribuído (compram alcance e frequência num público); inventar uma taxa equivalente seria número derivado sem fonte, e por isso fica como pergunta ao dono (§7). Não existe funil nesta visão, pelo mesmo motivo: sem evento de conversão por etapa, não há o que desenhar como funil, e este bloco é a decomposição possível. Vem depois da tabela de peças porque só faz sentido perguntar "a peça segura o dedo" depois de saber qual peça é qual.

5Acervo orgânicograde-metricas com 5 cardDeMetrica + tabela por formato · secao=acervo, vitalício

PublicaçõesXXXacervo inteiro
Alcance totalXX.XXXacervo inteiro
Views totaisXXX.XXXacervo inteiro
Seguidores atribuídosXXsó feed mede isto
Visitas ao perfilXXXacervo inteiro
FormatoPeçasAlcanceViews
FeedXXXXX.XXXXXX.XXX
ReelsXXXXX.XXXXX.XXX

acervo inteiro, do primeiro ao último post coletado, sem recorte de data selecionável · seguidores atribuídos: a Media Insights API não aceita follows nem profile_visits em Reels, e as peças com o campo são todas de feed, então comparar formato por seguidor é comparar com quem não foi medido · alcance e views são medidos nos dois formatos e a comparação entre eles é legítima, mas não é ajustada por data nem por impulsionamento: é volume bruto do acervo.

Não é entrega paga: é o que o acervo inteiro do @berclah rende sem verba nenhuma, e é de onde as peças do bloco 3 vêm antes de ganharem impulsionamento. Fica por último entre os blocos de conteúdo porque não é dinheiro e não muda a decisão de hoje: é o pano de fundo que explica de onde a próxima peça a promover pode sair. Cinco cartões porque é o resumo que fechou a paridade com o antigo /dash-aquisicao/ (SPEC-INTERFACE §15): publicações, alcance, views, seguidores atribuídos e visitas, mais a tabela por formato, sem nada além disso. A leitura desta etapa bate, campo a campo, com o número já verificado em produção nessa mesma seção do spec.

6RodapémostraRodape na área de estado desta visão · rodape-carga

2 conjuntos no ar · pacote do dash orgânico gerado em DD/MM HH:MM (estado) · distribuição lida ao vivo em DD/MM HH:MM · investimento do recorte até DD/MM HH:MM · atualizado em DD/MM HH:MM

Último bloco, uma linha, na área de estado desta visão. A faixa de frescor que hoje ocupa o topo da tela vem para cá, inteira, e vira uma linha só em vez de três parágrafos: é a mesma regra que a Atração já aplicou (estado de carga é rodapé, nunca faixa no topo), e aqui ela também resolve um segundo problema, o texto comprido demais para o topo. N conjuntos no ar é a cobertura que a resposta de /api/organico já traz e ninguém desenhava. Os dois carimbos de tempo do pacote (geração e leitura ao vivo da CA03) convivem com o terceiro, novo, do investimento em D1: são três relógios diferentes, e por isso três marcas, cada uma com a própria hora. Pacote sem gerar nunca, ou distribuição indisponível na geração: a linha diz o estado e o motivo em vez do carimbo (§4). Não há bloco de avisos no topo: a marca até DD/MM HH:MM no cartão 1, a legenda gerada de cada bloco e esta linha dizem tudo, cada uma onde muda a leitura.