Pular para o conteúdo principal
Você pode marcar usuários no OneSignal com base nas páginas com as quais interagem em seu site ou aplicativo, e então segmentar essas tags para mensagens direcionadas. Esta página cobre dois padrões distintos — escolha o que corresponde ao seu objetivo, ou execute ambos lado a lado.

Escolha seu padrão

PadrãoQuando o código é executadoO que é definidoPlataformas
Marcar por tópico de páginaA cada visita de página ou telaUma tag contadora por tópico (gaming = 5)Web, Android, iOS
Marcar na assinaturaUma vez, quando um usuário opta por pushUma tag de atribuição (subscription_page = gaming)Apenas Web
Marcar por tópico de página constrói um perfil de interesse comportamental que cresce com o engajamento — útil para recomendações de conteúdo, campanhas de re-engajamento e segmentação baseada em categoria, incluindo para usuários que nunca optam explicitamente por um tópico. Marcar na assinatura captura um sinal único no momento da opt-in — útil para mensagens de boas-vindas conscientes da origem e campanhas de gotejamento onde a página a partir da qual um usuário se inscreveu prevê o que ele quer ler a seguir.

Pré-requisitos


Marcar por tópico de página (a cada visita)

Marque usuários com os tópicos com os quais mais se envolvem para que você possa entregar mensagens mais personalizadas — aumentando relevância, taxas de clique e satisfação. Exemplos de casos de uso:
  • Em um site de moda, um usuário está interessado apenas em sapatos masculinos — não em vestidos femininos.
  • Em um aplicativo de notícias, um usuário visita consistentemente artigos de finanças e esportes — mas nunca entretenimento ou política.

1. Definir sua taxonomia de tópicos

Comece identificando as categorias de conteúdo ou tópicos que você deseja rastrear. Estes podem ser:
  • Verticais amplas como sports, finance ou entertainment
  • Tipos de produtos como laptops, accessories ou premium
  • Autores ou marcas
  • Comece com 3–8 tópicos para manter o gerenciamento simples.
  • Fique abaixo de 20 tópicos no total para evitar inchaço.

2. Adicionar código para rastrear visitas a tópicos

Os exemplos abaixo fazem três coisas:
  • Rastrear um ou mais tópicos por página ou tela.
  • Incrementar a contagem de visitas toda vez que o tópico é visualizado.
  • Marcar o usuário com a contagem atualizada em cada visualização.
const topics = ["sports", "entertainment"]; // One or many

if (typeof localStorage !== "undefined" && Array.isArray(topics)) {
  topics.forEach(topic => {
    let count = parseInt(localStorage.getItem(topic), 10);
    count = isNaN(count) ? 1 : count + 1;
    localStorage.setItem(topic, count);
    OneSignal.User.addTag(topic, count.toString());
  });
}

3. Segmentar e enviar mensagens personalizadas

Uma vez que as tags são aplicadas aos usuários, você pode direcioná-los usando:
  • Segmentos para construir grupos baseados em regras (por exemplo, usuários com gaming >= 3).
  • Filtros de API para incluir dinamicamente usuários em uma única campanha.
Exemplos de casos de uso:
  • Enviar mensagens a usuários sobre tópicos específicos somente quando visitaram páginas relacionadas 5 ou mais vezes.
  • Promover posts para usuários que leram mais de 3 posts de um autor específico.
  • Oferecer descontos a compradores que continuam retornando a uma categoria de produto específica.

Melhores práticas

Faça:
  • Teste sua lógica de tags usando console.log() (web) ou o logger da sua plataforma antes de lançar campanhas.
  • Use convenções consistentes de nomenclatura de tópicos entre páginas.
  • Mantenha a lista de tópicos em um local central (arquivo de configuração ou configuração remota) para que você possa ajustar sem tocar em cada página.
Evite:
  • Chaves de tag longas ou excessivamente específicas (títulos completos de artigos, URLs longas).
  • Exceder os limites de tags do OneSignal.
  • Marcar com informações pessoalmente identificáveis (PII).

Marcar na assinatura (única vez, apenas web)

Marque assinantes de web push com dados contextuais — como o tópico da página ou o caminho de URL a partir do qual se inscreveram — para entregar campanhas de acompanhamento direcionadas. Este padrão detecta o opt-in, aplica tags e alimenta segmentos para mensagens estilo gotejamento.

1. Marcar usuários no opt-in

Quando um usuário se inscreve em notificações push, use o listener PushSubscription change para detectar o opt-in e aplicar tags com dados contextuais sobre a página que estava visualizando.
function pushSubscriptionChangeListener(event) {
  if (event.current.optedIn && !event.previous.optedIn) {
    // User just opted in — tag with subscription context
    var pathSegment = window.location.pathname.split('/')[1] || 'home';
    var pageTopic = document.querySelector('meta[name="article-topic"]')?.content || 'general';

    OneSignal.User.addTags({
      subscription_page: pathSegment,
      subscription_page_topic: pageTopic,
    });
  }
}

OneSignalDeferred.push(function(OneSignal) {
  OneSignal.User.PushSubscription.addEventListener("change", pushSubscriptionChangeListener);
});
Como isso funciona:
  • O evento change é acionado quando o estado de assinatura push do usuário muda (opt-in, opt-out, atualização de token).
  • event.current.optedIn é true quando o usuário tem uma assinatura ativa. Verificar !event.previous.optedIn garante que as tags sejam aplicadas apenas no opt-in inicial, não a cada mudança de estado.
  • window.location.pathname.split('/')[1] captura o primeiro segmento de caminho como o contexto de assinatura. Por exemplo, se a URL for https://example.com/gaming/article-123, a tag subscription_page é definida como gaming.
  • pageTopic é extraído de uma tag <meta>, com fallback para 'general'. Ajuste para corresponder à estrutura de metadados do seu site.

2. Segmentar usuários por tag

Assim que as tags são aplicadas, use Segmentos ou Filtros de API para direcionar usuários com base nessas tags. Por exemplo:
  • Enviar uma campanha para usuários onde subscription_page é gaming.
  • Criar segmentos dinâmicos baseados em valores de tag e tempo (por exemplo, horas desde a primeira sessão).

3. Automatizar mensagens de acompanhamento

Construa campanhas estilo gotejamento que acionam mensagens com base em quando o usuário se inscreveu e sob qual conteúdo ele se inscreveu. Exemplo: Campanha de gotejamento para assinantes de gaming
Nome do segmentoFiltrosDescrição
Gaming 1subscription_page = gaming AND First Session > 2h AND < 24hAlcançar 2–24 horas após a assinatura.
Gaming 2subscription_page = gaming AND First Session > 24h AND < 48hAcompanhamento 1 dia depois.
Gaming 3subscription_page = gaming AND First Session > 72h AND < 96hVerificação final após 3 dias.
Use limites de tempo superiores (<) para evitar que os usuários permaneçam em segmentos uma vez que a janela de mensagens tenha passado.

4. Combinar segmentos com modelos de mensagem

Assim que os segmentos são criados:
  • Construa Templates para cada estágio da campanha (introdução, lembrete, promoção).
  • Use Journeys para enviar essas mensagens quando os usuários entrarem no segmento apropriado.
Ideias de mensagens de exemplo:
  • Convite para uma comunidade ou grupo social de gaming.
  • Recomendar artigos em alta relacionados ao tópico deles.
  • Enviar uma oferta exclusiva ou código de desconto.

Melhores práticas

  • Use nomes e valores de tag significativos que reflitam a intenção real do usuário.
  • Extraia valores de tag dinamicamente a partir de metadados de página quando possível.
  • Marque apenas no opt-in inicial — o exemplo do listener acima verifica !event.previous.optedIn para evitar remarcar a cada mudança de estado.
Não inclua informações de identificação pessoal (PII) como nomes ou endereços de e-mail nos valores de tag. Evite codificar valores de tag em todo o seu site — extraia-os dinamicamente do contexto da página.

Perguntas frequentes

Qual padrão devo usar?

Use Marcar por tópico de página para construir um perfil de interesse comportamental ao longo do tempo. O contador cresce a cada visita, então os segmentos podem ser ajustados pela profundidade do engajamento (gaming >= 5). Use Marcar na assinatura para capturar uma única atribuição pontual no opt-in, útil para mensagens de boas-vindas conscientes da origem onde você quer reagir a onde o usuário se inscreveu antes que ele tenha um longo histórico de visitas. Ambos os padrões podem ser executados lado a lado no mesmo site — eles definem tags diferentes e respondem a perguntas diferentes.

As tags persistem se o usuário limpar os dados do navegador?

Não. Limpar os dados do navegador na web cria uma nova Assinatura, e os contadores por tópico armazenados em localStorage são redefinidos junto. Se o usuário se re-inscrever (manualmente ou via re-inscrição automática), o listener change é acionado novamente e reaplica a tag de assinatura com base na página atual, mas os contadores de visita começam do zero.

Posso atualizar as tags após a assinatura inicial?

Sim. Você pode chamar OneSignal.User.addTag() ou OneSignal.User.addTags() a qualquer momento para adicionar ou atualizar tags. O listener de assinatura é útil para o contexto inicial, mas você também pode marcar usuários com base no comportamento contínuo.

Devo usar esses padrões em vez de filtros de evento de mensagem?

Eles servem a propósitos diferentes. Use os padrões nesta página quando quiser segmentar por quais páginas um usuário visitou ou se inscreveu — ou seja, sinal que se origina no seu site ou aplicativo. Use Filtros de evento de mensagem quando quiser segmentar por com quais mensagens do OneSignal um usuário interagiu (entregue, clicado, etc.). Eles são complementares, não redundantes.

O padrão de origem da assinatura funciona em dispositivos móveis?

Não diretamente. A API PushSubscription.addEventListener("change", ...) é específica para web. No iOS e Android, você pode obter uma atribuição similar chamando addTag de dentro do seu fluxo de opt-in — por exemplo, imediatamente após o usuário aceitar um prompt de permissão, marque-o com a tela ou recurso em que estava.

Páginas relacionadas

Tags

Adicione propriedades personalizadas aos usuários para personalização e segmentação.

Segmentos

Agrupe usuários por propriedades, tags e comportamento para mensagens direcionadas.

Referência do Web SDK

Referência completa do OneSignal Web SDK incluindo listeners de assinatura e métodos de marcação.

Referência do SDK móvel

Referência completa do OneSignal SDK móvel incluindo métodos de marcação.

Journeys

Construa fluxos de mensagens em múltiplas etapas acionados por entrada em segmento ou eventos personalizados.