[{"content":"1.1 In one sentence It\u0026rsquo;s the WhatsApp meter: it links each ad click (Meta, Google, or Instagram bio) to the conversation that starts on WhatsApp and to its outcome (won/lost + value). In the end, you see how many leads, sales, and return each campaign and each creative brought in.\n1.2 Why the Pixel and Google Analytics aren\u0026rsquo;t enough The Pixel and GA see up to the click. Your sale ends in the chat — and that\u0026rsquo;s a black box to them. martec stitches the two sides together with an invisible code that travels from the link to WhatsApp, and that\u0026rsquo;s what lets you say \u0026ldquo;this creative generated 18 leads, 5 sales, R$ 2,450\u0026rdquo; — something Ads Manager alone can\u0026rsquo;t know.\n1.3 What it answers about your method Right on the scoreboard: which campaign, creative, audience, and source brought more sales and at lower cost — via Leads, Wins, Conversion, Revenue, Cost, CPL, and ROAS. What it does not answer on its own (still part of your analysis): sales cycle, region, and customer desires — things that depend on you recording or observing them.\n🖥️ Screen — The per-creative scoreboard (the heart of measurement)\nPlacar por criativo / ICP ┌─────────────────────────────────────────────────────────────────────┐ │ Criativo│ICP/Público│Leads│Ganhos↓│Conversão│Receita│Custo│CPL │ROAS │ │ video-A │ lookalike │ 18 │ 5 │ 27,8% │R$2.450│R$600│R$33│4,08×│ │ Sem atr.│ Sem atrib.│ 3 │ 1 │ amostra │sem val│ — │ — │ — │ └─────────────────────────────────────────────────────────────────────┘ How to read it: each row is a creative crossed with an audience. CPL = cost ÷ leads (how much each lead cost). ROAS = revenue ÷ cost (return). Where data is missing, \u0026ldquo;—\u0026rdquo; shows up (never \u0026ldquo;R$ 0\u0026rdquo;). \u0026ldquo;Sem atribuição\u0026rdquo; (no attribution) means measurement didn\u0026rsquo;t reach there — see §5.6 and §11 items 1–4.\n","permalink":"https://faq.martec.app/en/faq/concepts/","summary":"What martec.app does and how it connects to your method.","title":"1. What martec.app is and how it connects to your method"},{"content":"2.1 How do I get access You receive an email invitation (sent by the admin, the agency, or the team). There\u0026rsquo;s no self-signup — it\u0026rsquo;s intentional, for security. The invitation expires in 72 hours.\n🖥️ Screen — Set a password and sign in (via the invitation)\n+--------------------------------------------+ | [ MARTEC LOGO ] | | Definir senha e continuar | | Nova senha [ ........ ] | | Confirmar [ ........ ] | | ○ Mínimo 8 caracteres | | ○ As senhas conferem | | [ Definir senha e continuar ] | +--------------------------------------------+ ✅ Click the link in the email → set your password → sign in. If the link says it expired, ask whoever invited you for a new invitation.\n2.2 I forgot my password 🖥️ Screen — Forgot my password\nESTADO inicial: DEPOIS de enviar: +---------------------------+ +---------------------------+ | Esqueci minha senha | | Verifique seu e-mail | | E-mail [ ............ ] | | Se cadastrado, você | | [ Enviar instruções ] | | receberá instruções... | | Voltar ao login | | [ Voltar ao login ] | +---------------------------+ +---------------------------+ ✅ Login → \u0026ldquo;Esqueci minha senha\u0026rdquo; → enter your email. The confirmation always looks the same (even if the email doesn\u0026rsquo;t exist) — it\u0026rsquo;s a privacy protection. If you\u0026rsquo;re registered, a link arrives that expires in 1 hour and works only once. When you reset, all your sessions drop and you sign in again.\n2.3 My password is temporary (operator\u0026rsquo;s 1st sign-in) When the admin creates or resets your account, it comes with a temporary password and the system forces a change on the first sign-in.\n🖥️ Screen — Change password\n+--------------------------------------------+ | Trocar senha | | Sua senha atual é temporária... | | Senha atual [ ........ ] | | Nova senha [ ........ ] | | Confirmar nova senha[ ........ ] | | ✓ Mínimo 8 caracteres | | ✗ Diferente da senha atual | | [ Trocar senha ] | +--------------------------------------------+ ✅ Type the temporary password + the new one (min. 8 characters, different from the current one). Forgot the temporary one? Ask the admin to redefinir (reset) your access in Operadores.\n2.4 My profile 🖥️ Screen — My profile (read-only)\nMeu perfil ┌ Empresa atual ─────────────┐ ┌ Sua conta ─────────────┐ │ Nome ..... Loja Exemplo │ │ Nome .. Maria Silva │ │ Slug ..... loja-exemplo │ │ E-mail maria@exemplo │ │ Timezone . America/Sao_Paulo│ │ │ │ Seu papel Admin │ │ │ └────────────────────────────┘ └────────────────────────┘ 💡 This screen is read-only — name/email/role are changed by the admin; the password, through the password screen.\n","permalink":"https://faq.martec.app/en/faq/access/","summary":"Sign in, recover your password, and manage your profile.","title":"2. Access \u0026 account"},{"content":"3.1 My panel 🖥️ Screen — Operator panel (mobile)\nOlá, João ┌ Disponíveis na fila ───────┐ │ 8 +2 vencidos 📥 │ │ [ Próximo lead ] │ │ 3 em atendimento com você │ └────────────────────────────┘ 🕐 Hoje: 5 tratados · 2 ganhos [ Atribuídos 12 ][ Ganhos 4 ][ Conv 33% ] ┌ Meu ranking (privado) ─────┐ │ 2º de 5 · sua conv 40% │ └────────────────────────────┘ ⚠ 2 leads parados há mais de 5 dias Action-focused: the queue, what\u0026rsquo;s with you, today\u0026rsquo;s result, your ranking (only you see it), and an alert for leads stalled for more than 5 days.\n3.2 Claim the next lead ✅ Click \u0026ldquo;Próximo lead\u0026rdquo;. The system assigns you the next one in the queue — from then on it\u0026rsquo;s yours. The button only shows up if your user has an active operator profile.\n3.3 Handle a lead 🖥️ Screen — Lead detail\n← Voltar pra leads Maria Souza [ Botão primário ] [ ⋯ ações ] +55 (11) 9xxxx-xxxx · maria@exemplo.com [ ●Novo ] · Atribuído: Op. Ana · Criado 2h · Origem: Meta Ads Identidades [ Telefone | E-mail | fbclid | Meta lead ID | WA ID ] Histórico ◉ Lead criado ◉ Atribuído ◉ Estágio alterado Touches recentes Canal | Status | Tracking link | Campanha | Quando The big button changes depending on the stage and ownership (Claim / Start handling / Mark outcome…). The ⋯ menu holds the secondary actions (edit, schedule a follow-up, transfer, return to queue, merge).\n3.4 ⚠️ \u0026ldquo;The lead screen is read-only, with no button\u0026rdquo; Almost always it means the lead belongs to another operator. If it should be yours, ask the admin to transferir (transfer) or devolver à fila (return to queue) — then you claim it via \u0026ldquo;Próximo lead\u0026rdquo;. This is the control that prevents two operators on the same handling.\n","permalink":"https://faq.martec.app/en/faq/operator/","summary":"The day-to-day of whoever answers: panel, claiming and handling leads.","title":"3. Operator — the day-to-day of whoever answers"},{"content":"4.1 Reading the dashboard 🖥️ Screen — Admin panel\nOlá, Maria [ ⃝? Como funciona ] Painel operacional [ Hoje | Ontem | 7d | 30 | 90 ] ┌ Funil: Cliques → Leads → % conversa → Ganhos ┐ ┌ Ranking operadores ┐ ┌ Saúde do time ──┐ │ 1º Ana · conv 42% │ │ Parados: 3 · ...│ └────────────────────┘ └─────────────────┘ ┌ Métricas por campanha (lifetime) ───────────┐ │ Camp | Leads | CPL | Receita | ROAS [custo▼] │ │ Promo Verão | 12 | R$166,67 | R$3.200 | 1,50 │ └──────────────────────────────────────────────┘ The period filter affects the funnel, the ranking, and team health. The per-campaign metrics are lifetime (cumulative) — they do not change with the filter. The \u0026ldquo;Como funciona\u0026rdquo; button explains each block with the formulas.\n4.2 ⚠️ \u0026ldquo;Why two different conversion rates?\u0026rdquo; They are two distinct measures: the funnel win rate (wins ÷ leads, the whole operation) and the ranking conversion (per operator, only over the leads they handled). Different bases → different numbers. It\u0026rsquo;s not a bug.\n4.3 Lead list 🖥️ Screen — Lead list (with filters)\nLeads [ Próximo Lead ] [ ▦ Board ] [ + Criar lead ] [ 🔍 Buscar ] [ Estágio: Todos ▾ ] [ Atribuição: ▾ ] ┌──────────────────────────────────────────────────────────────┐ │ Nome │ Contato │ Estágio │ Resultado │ Atribuído │ │ Maria S│ +55(11)9xxxx-xxxx │ ●Novo │ — │ [Sem dono] │ │ João P │ +55(21)9xxxx-xxxx │ ⏱Em at. │ — │ Op. Ana │ │ Carlos │ +55(31)9xxxx-xxxx │ ✔Encerr.│ 🏆Ganho │ Op. Bruno │ └──────────────────────────────────────────────────────────────┘ « Anterior 1–30 de N Próxima » Filters: Estágio (stage), Resultado (outcome — only when filtering Encerrados/closed: Won/Lost/Discarded), Atribuição (assignment — Mine + ownerless / All / Assigned to me / No attribution). The search waits 300ms and the \u0026ldquo;Criado\u0026rdquo; (created) column sorts.\n4.4 Board (kanban) — admin only 🖥️ Screen — Board\nBoard de leads [ Ver lista ] ⚠ Mostrando 200 de 1.250 leads (os mais recentes). Use a lista… ┌ Novos (3) ┐ ┌ Em atend.(2) ┐ ┌ Agendados(1)┐ ┌ Encerrados(4) ┐ │ Maria S │ │ João P │ │ Ana L │ │ Carlos 🏆R$1.2k│ │ Camp:Verão│ │ Camp:Black │ │ Camp:Orgân. │ │ (terminal) │ └───────────┘ └──────────────┘ └─────────────┘ └───────────────┘ One column per stage, one card per person. Dragging moves the stage (to Agendados opens \u0026ldquo;Agendar retorno\u0026rdquo;; to Encerrados opens \u0026ldquo;Marcar resultado\u0026rdquo;). Encerrados (closed) cards don\u0026rsquo;t come back by dragging.\n4.5 ⚠️ \u0026ldquo;The board shows 200 of N\u0026rdquo; The board loads the ~200 most recent ones to stay light. To find a lead beyond that, use the list (it has search and filters).\n4.6 Operators 🖥️ Screen — Operators\nOperadores [ + Convidar operador ] [ Status: Todos ▾ ] 3 de 5 operadores ┌──────────────────────────────────────────────────────────┐ │ Nome | E-mail | Status | Ações │ │ Ana Souza | ana@ex.com | Disponível | ⋯ editar / blo- │ │ João Lima | joao@ex.com | Ausente | quear / redef. │ │ Beto | beto@ex.com | Convite… | senha / excluir│ └──────────────────────────────────────────────────────────┘ ✅ Convidar (invite — sends the email), Editar (edit), Bloquear/Desbloquear (block/unblock), Redefinir senha (reset password — generates a temporary one), Excluir (delete). 💡 The status filter hides blocked operators and pending invitations by default — switch it to \u0026ldquo;Todos\u0026rdquo; (All) if someone\u0026rsquo;s missing.\n⚠️ Before blocking an operator, reassign or disable their links. Blocking does not turn off the tracking links — they keep sending leads to the WhatsApp of the person you turned off. See §11 item 5.\n4.7 ⚠️ Excluir × Eliminar dados do titular (LGPD) In the lead detail\u0026rsquo;s ⋯ menu there are two different red actions — don\u0026rsquo;t confuse them:\nExcluir (delete) — only removes it from the list. The personal data stays in the database. It\u0026rsquo;s for clearing the queue, not for fulfilling a deletion request. Eliminar dados do titular (erase the data subject\u0026rsquo;s data) — really erases it (anonymizes name, phone, and email, irreversibly), preserves the anonymous sale values, and logs the action. This is the one that fulfills the LGPD right to deletion (§9.3). ","permalink":"https://faq.martec.app/en/faq/admin-operations/","summary":"Dashboard, lead list, board (kanban), and operators.","title":"4. Admin — operation"},{"content":"The sequence: create a campaign → generate a trackable link → use the link as the ad\u0026rsquo;s destination (and tag the creative) → read the scoreboard.\n5.1 Create a campaign 🖥️ Screen — Campaigns + \u0026ldquo;Nova campanha\u0026rdquo; modal\nCampanhas [ + Nova campanha ] ✓ Meta Business conectado · 2 contas · expira em 47 dias ┌──────────────────────────────────────────────────────────────────┐ │ Nome │ Canal │ Status │ Tracking links │ Criada │ │ Coleção inverno… │ Meta ads │ ●Ativa │ 3 │ há 2 d │ │ Promo frete │ Google ads│ ⏸Pausada │ 1 │ há 5 d │ └──────────────────────────────────────────────────────────────────┘ ┌ Nova campanha ─────────────────┐ │ Nome [ .................. ] │ │ Canal ( Meta ▾ ) │ ← Meta / Google / Orgânico / Manual │ Status ( ● Ativa ) │ │ [ Cancelar ][ Criar ]│ └─────────────────────────────────┘ ✅ Campanhas → + Nova campanha: name, channel, status. The campaign is the umbrella for the trackable links.\n⚠️ Tagging the channel as \u0026ldquo;Meta\u0026rdquo; is not enough for cost to come in. The creation modal does not have the ID field — after creating, open Editar campanha and paste the Meta campaign ID (from Ads Manager) into the \u0026ldquo;ID da campanha no canal\u0026rdquo; field. Without it, cost never syncs (CPL/ROAS stay \u0026ldquo;—\u0026rdquo;) and there is no automatic match by name. See §11 item 1.\n5.2 Tracking links (the trackable link) 🖥️ Screen — Campaign detail\n← Campanhas Coleção inverno 2026 [ Editar ] Meta ads · ●Ativa · Criada há 2 dias Tracking links (3) [ + Novo link ] ┌──────────────────────────────────────────────────────────────┐ │ Slug │ Operador │ Cliques │ Criado │ ⋯ │ │ martec.app/r/acme/inverno │ João S. │ 42 │ há 2d │[⋯] │ │ martec.app/r/acme/inv-az │ sem oper.│ 0 │ há 1d │[⋯] │ └──────────────────────────────────────────────────────────────┘ [⋯]: Copiar pro anúncio · Validar oferta · Editar mensagem · Desativar ✅ + Novo link generates martec.app/r/\u0026lt;empresa\u0026gt;/\u0026lt;slug\u0026gt;. Each link points to one operator (it\u0026rsquo;s their WhatsApp that receives) and can have a pre-written message. Use Copiar pro anúncio (copy to the ad) — this link is the destination (URL) of your ad.\nThree rules that save you headaches:\nWithout an operator, the click lands on \u0026ldquo;indisponível\u0026rdquo; (unavailable) — always assign one (§11 item 7). Don\u0026rsquo;t pause or delete a link with a live ad — pause the ad first (§11 item 6). In the pre-written message, only 6 variables work: {utm_source} {utm_campaign} {utm_content} {utm_term} {campaign_name} {tracking_link_slug}. Any other (e.g., {nome}) goes through literally to the customer (§11 item 8). 5.3 Validate the offer (without firing a real lead) 🖥️ Screen — Offer validation (guide, read-only)\n← Voltar pra campanha Validação de oferta Destino do anúncio: [ Direto pro WhatsApp ] [ Landing page ] 3 passos pra medir: ① Use o link como destino [ martec.app/r/acme/inverno-vd ] [Copiar] ② Marque o criativo ▸ utm_content={{ad.name}}\u0026amp;utm_term=… ③ Confira antes de publicar Prévia da mensagem (montada de verdade, sem registrar nada) 💡 Use it before publishing — it builds the real message preview without recording a test lead.\n5.4 Tag the creative (Meta URL parameters) ✅ In the ad\u0026rsquo;s \u0026ldquo;Parâmetros de URL\u0026rdquo; (URL parameters) field, paste exactly:\nutm_content={{ad.name}}\u0026amp;utm_term={{adset.name}}\u0026amp;utm_id={{ad.id}} Meta swaps the macros on its own: {{ad.name}} → Criativo (creative) column, {{adset.name}} → Público/ICP (audience), {{ad.id}} → links the click to cost. 💡 Name creatives and audiences in a readable way — those names show up raw on the scoreboard.\n⚠️ If you use a landing page in between, it needs to pass the utm_* parameters through to the /r/ button. If it doesn\u0026rsquo;t, the creative arrives blank (\u0026ldquo;Sem atribuição\u0026rdquo;). See §11 item 4.\n5.5 Read the scoreboard Already shown in §1.3. Reinforcing the formulas: CPL = cost ÷ leads, ROAS = revenue ÷ cost. A small sample gets a badge and sinks in the sort order; a win without a value counts as a win but adds no revenue.\n5.6 ⚠️ \u0026ldquo;Landed in Orgânico\u0026rdquo; × \u0026ldquo;Sem atribuição\u0026rdquo; Orgânico (organic) = a lead with no tracked click (came in without going through a /r/ link). Sem atribuição (no attribution) = came through a trackable link but the ad had no URL parameters (§5.4). Avoid both: /r/ link as the destination and URL parameters pasted, always.\n","permalink":"https://faq.martec.app/en/faq/campaigns/","summary":"Create campaigns, tracking links, validate the offer, and read the scoreboard.","title":"5. Admin — acquisition \u0026 campaigns"},{"content":"6.1 Bio (link-in-bio) 🖥️ Screen — Bio editor (admin)\nBio [ ⃝? Como funciona ] [ Ver bio pública ↗ ] ┌ Detalhes: nome / tagline / publicada / tema / cores / foto ┐ ┌ 🔗 Botões da bio (arrastar pra ordenar, ligar cada um) ────┐ 🖥️ Screen — Public bio (what the customer sees)\n┌──────────────────────────┐ │ ( ◯ avatar ) │ │ Loja Exemplo │ │ Atendimento via WhatsApp │ │ ┌──────────────────────┐ │ │ │ Falar no WhatsApp │ │ ← liga num link /r/ rastreável │ │ Ver promoções │ │ │ └──────────────────────┘ │ │ feito com martec.app → │ └──────────────────────────┘ ✅ Build the buttons and link each one to a destination. Each button can be a trackable link, so Instagram traffic also enters the funnel.\n⚠️ Don\u0026rsquo;t publish the bio without buttons — it looks abandoned (just a header and footer). Add at least one button first (§11 item 17).\n6.2 Why the /r/ link shows a counting screen 🖥️ Screen — Tracked redirect\n┌──────────────────────────┐ │ [ MartecLogo ] │ │ Conectando você ao │ │ atendente │ │ Redirecionado em 3 seg. │ │ via WhatsApp · (11)9999… │ │ [ Ir agora ]→ wa.me │ └──────────────────────────┘ It\u0026rsquo;s not an instant redirect — this is the step where martec records the click, filters bots, applies the click limit, and generates the code that stitches click↔conversation. It\u0026rsquo;s on purpose: it\u0026rsquo;s the heart of measurement.\n6.3 ⚠️ \u0026ldquo;I clicked and it didn\u0026rsquo;t count in the funnel\u0026rdquo; Two legitimate reasons: bot/preview (the link preview on WhatsApp/Slack opens the page and gets redirected, but doesn\u0026rsquo;t count) and the click limit (the same IP clicking a lot — 10 in 60 seconds — gets held). A real customer counts. If you\u0026rsquo;re testing, your repeated F5 can hit the limit (§11 item 18).\n6.4 The lead-magnet spreadsheet The /recursos/planilha page is a static marketing lead magnet: it offers a free .xlsx without asking for an email; attribution goes via UTM inside the file itself. Good for SEO.\n","permalink":"https://faq.martec.app/en/faq/public-pages/","summary":"Bio (link-in-bio), the /r/ counting screen, and the lead-magnet spreadsheet.","title":"6. Pages your customer sees"},{"content":"7.1 Connect Meta Business 🖥️ Screen — Meta banner (4 states) in Campaigns\nA) ✗ Meta desconectado [ Conectar Meta Business ] (só leitura: ads_read) B) ✓ Meta conectado · 2 contas · expira em 47 dias [ Reconectar ] [ Desconectar ] C) ⚠ Sincronização falhou [ Reconectar ] D) ⏰ Token expira em \u0026lt;7 dias [ Reconectar ] ✅ Campanhas → \u0026ldquo;Conectar Meta Business\u0026rdquo; → authorize on Facebook → grant ads_read + business_management (these are read-only — martec doesn\u0026rsquo;t create or pause ads). The token lasts ~60 days.\n⚠️ Connected but no ad account showed up? You logged into Facebook with a user without access to the ad account. Reconnect with the user who can see the account in Ads Manager (§11 item 12).\n7.2 CAPI — return the events to Meta ✅ The Conversions API returns to Meta the events that happen off-site: Lead and Purchase (sale). Only the Meta click identifier (fbc) is sent — zero personal data. You turn CAPI on and manage it in the WhatsApp connection area (Official/Cloud) → \u0026ldquo;Gerenciar conexão / Envio CAPI\u0026rdquo;. It stays active when the credential is enabled + verified (by a test event) + non-revoked. Disconnecting Meta turns CAPI off.\n⚠️ CAPI stopped sending with no alarm if the credential gets disabled, loses verification, or is revoked — or if you disconnect Meta. Check \u0026ldquo;Envio CAPI: Ativo\u0026rdquo; (CAPI sending: Active) after touching Meta (§11 item 10).\n7.3 ROAS — what closes automatically and what depends on what It needs two sides: cost (comes from Meta, overnight — ~5–6am — and is lifetime spend) and revenue (each recorded sale). So ROAS = revenue ÷ cost. Without Meta connected, CPL/ROAS stay \u0026ldquo;—\u0026rdquo;; if the token expires, cost freezes; Google still doesn\u0026rsquo;t bring cost automatically (§7.6).\n7.4 Connect WhatsApp 🖥️ Screen — Connect WhatsApp\nConectar WhatsApp ── Conectado (Oficial/Cloud) ── ◉ WhatsApp conectado [ Oficial Meta ] Número +55 11 9 9999-0000 Consentimento Aceito · v2 / Pendente / Reconsentir Envio CAPI Ativo / Inativo [ Gerenciar conexão ] ── Conectado (WhatsApp Web / Evolution) ── ✓ Conectado [ Trocar ] [ Desconectar ] + banner azul \u0026#34;Oficial Meta disponível [ Migrar ]\u0026#34; ── Nada conectado ── [ Conectar via WhatsApp Oficial ] Prefere WhatsApp Web (não-oficial)? → expande Evolution (QR Code) Two paths: Official (Cloud/Meta) — Facebook login, unlocks templates and the CAPI sending, recommended for whoever runs paid; and WhatsApp Web (Evolution) — QR Code, simpler, unofficial. You can start on Evolution and migrate later.\n⚠️ Migrated and ended up with two connections? Evolution doesn\u0026rsquo;t turn itself off. After confirming the Official one, disconnect Evolution manually (§11 item 15).\n7.5 WhatsApp consent (LGPD) Before connecting you accept a versioned agreement. What\u0026rsquo;s collected: the sender\u0026rsquo;s phone and name + metadata; message content is not stored; the personal data is anonymized within 30 days. States: Pendente (pending) / Aceito · v\u0026lt;N\u0026gt; (accepted) / Reconsentir (re-consent) (when the agreement text changes, it asks for re-acceptance). Roles: your company = Controller, martec = Processor.\n7.6 Google Ads — what works today martec reads the source Google (a click with gclid → Google paid source). It does not yet import cost or do conversion returns. 💡 Use the /r/ link as the ad\u0026rsquo;s final URL; treat Google CPL/ROAS as partial (leads/wins count; cost doesn\u0026rsquo;t).\n","permalink":"https://faq.martec.app/en/faq/integrations/","summary":"Meta, CAPI, ROAS, WhatsApp, consent, and Google Ads.","title":"7. Integrations"},{"content":"8.1 My portfolio 🖥️ Screen — My portfolio (cockpit + branding)\nSua carteira [⌘K] [ + Nova empresa ] ┌──────────────────────────────────────────────────────────────────┐ │ Empresa │ Ativação │ Alerta │ Ações │ │ Loja do João │ [chip] │ ⚠ Sem WhatsApp │ [ Entrar → ] │ │ Café Aurora │ [chip] │ ✓ Sem alertas │ [ Entrar → ] │ └──────────────────────────────────────────────────────────────────┘ ┌ Branding do relatório ───────────────────────────────────────────┐ │ Nome de exibição [ Minha Agência ] (vazio = nome da carteira) │ │ URL do logo [ https://exemplo.com/logo.png ] │ │ Prévia: [ 🖼 logo ] [ Salvar branding ] │ └───────────────────────────────────────────────────────────────────┘ The activation chip shows how much each company has completed; the alert points out what\u0026rsquo;s missing; \u0026ldquo;Entrar →\u0026rdquo; (enter) drops you into its context.\n8.2 \u0026ldquo;Entrar como\u0026rdquo; — operate on behalf of the client ✅ \u0026ldquo;Entrar →\u0026rdquo; lets you operate as the company\u0026rsquo;s admin (build campaigns, bio, connect integrations). A context banner shows which company you\u0026rsquo;re acting in, and the access is audited.\n8.3 Report branding ✅ Set the Nome de exibição (display name) and URL do logo — that\u0026rsquo;s what shows up on the report you deliver, with a live preview. An empty name uses the portfolio name.\n8.4 Client report (lifetime) 🖥️ Screen — White-label report\nRelatório do cliente [ Salvar como PDF ] Cliente [ Selecione… ▾ ] ───────────────────────────────────────────────────────────────── [🖼 logo] Minha Agência · Relatório de resultados · Loja do João Valor de vida: [Receita R$12.340][Clientes 87][Recompradores 21] [LTV médio R$141,83][Taxa recompra 24%] ROAS por campanha: Campanha|Leads|Ganhos|Custo|Receita|CPL|ROAS Criativo × público: Black Friday → … The white-label deliverable: lifetime value, ROAS per campaign (with CPL = cost ÷ leads) and Creative × Audience, with \u0026ldquo;Salvar como PDF\u0026rdquo; (save as PDF). 💡 Access today: via the /dashboard/partner/report route — still no menu entry (reach it by the direct URL).\n8.5 ⚠️ \u0026ldquo;A client disappeared from my portfolio\u0026rdquo; Usually the partner\u0026rsquo;s access to that company was revoked — the company wasn\u0026rsquo;t deleted, you just lost visibility. Confirm with the team whether it was intentional; if not, ask for the re-link.\n","permalink":"https://faq.martec.app/en/faq/partners/","summary":"Portfolio, signing in as a client, branding, and the lifetime report.","title":"8. Partners \u0026 agencies (white-label)"},{"content":"9.1 Isolation Each company only sees its own data; each partner only sees their own portfolio. The separation is enforced at the database level, not just on screen.\n9.2 Retention (run automatically, every day) Temporary technical events: 90 days. Data that identifies the person (phone, sender name): anonymized in 30 days. Technical click telemetry (IP prefix, browser): anonymized in 180 days. Lead merge history: 365 days. Business data (leads, sales, aggregates): does not expire by time — it only leaves through on-demand erasure (§9.3) or account removal. Anonymizing the telemetry doesn\u0026rsquo;t change your numbers — the funnel and scoreboard don\u0026rsquo;t depend on the anonymized columns.\n9.3 Erase data at the data subject\u0026rsquo;s request The data subject can request deletion; the admin runs it via the \u0026ldquo;Eliminar dados do titular\u0026rdquo; action in the lead detail (§4.7) — don\u0026rsquo;t confuse it with \u0026ldquo;Excluir\u0026rdquo;, which only removes it from the list and keeps the data. The erasure anonymizes the personal data irreversibly, preserves the anonymous values, and stays audited.\n9.4 Versioned consent The sensitive agreements are versioned: when the text changes, the previous acceptance drops and the system asks for re-consent, with the date recorded.\n9.5 Encrypted credentials and auditing The integration credentials (Meta/Google tokens, WhatsApp connection) are encrypted and never appear in logs. Partner access via \u0026ldquo;Entrar como\u0026rdquo; is audited.\n","permalink":"https://faq.martec.app/en/faq/data-privacy/","summary":"Isolation, retention, erasure at the data subject\u0026rsquo;s request, and auditing.","title":"9. Data, privacy \u0026 LGPD"},{"content":" Lead — a person who got in touch and was recorded. Opportunity — a sales chance linked to the lead; the scoreboard counts opportunities. Touch — each tracked click on the /r/. Attribution — linking a lead to its source campaign and creative. Source / Channel — precedence: fbclid (Meta paid) \u0026gt; gclid (Google paid) \u0026gt; UTM (organic) \u0026gt; referrer \u0026gt; direct. Match token — the code generated on the redirect screen that stitches the click to the conversation. CPL — Cost Per Lead = cost ÷ leads. CAC — Customer Acquisition Cost = cost ÷ wins. LTV — customer lifetime value (in the partner report). ROAS — return = revenue ÷ cost. Scoreboard — the Creative × Audience table with Leads/Wins/Conversion/Revenue/Cost/CPL/ROAS. Funnel — the Clicks → Leads → % conversation → Wins sequence on the admin panel. Claim — the operator \u0026ldquo;taking\u0026rdquo; the next lead from the queue. Entrar como (sign in as) — a partner/platform taking over the context of a company to operate on its behalf (with a context banner and audited access). Modo casa (house mode) — the lead comes in ownerless and is taken by claim in \u0026ldquo;Próximo Lead\u0026rdquo;. It\u0026rsquo;s about ownership, not routing: the /r/ link goes to the operator\u0026rsquo;s WhatsApp on that link. CTWA (Click to WhatsApp) — a Meta ad that leads straight to the conversation, with no destination URL. Attributed as Meta paid, but with no cost or creative detail (it doesn\u0026rsquo;t go through /r/); only on the Official/Cloud connection. See §11 item 13. CAPI — Conversions API: returns the events (Lead/Purchase) to Meta sending only the fbc, with no personal data. ","permalink":"https://faq.martec.app/en/faq/glossary/","summary":"All the martec.app terms on one page.","title":"10. Glossary"},{"content":" Canonical index. Measurement almost never breaks from a bug — it breaks from a wrong setting that gives no warning. Each row: symptom → cause → what to do. Items marked 🔴 fail silently (no on-screen error; the number just doesn\u0026rsquo;t add up).\n11.1 Acquisition \u0026amp; ad # Symptom Cause What to do 1 🔴 CPL/ROAS stay \u0026ldquo;—\u0026rdquo; on a campaign running on Meta Channel ≠ Meta, OR Meta channel without the campaign ID filled in. Cost only syncs with the Meta channel and the Ads Manager ID Make sure the channel is Meta and open Editar campanha → paste the Meta campaign ID. There\u0026rsquo;s no automatic match by name (§5.1) 2 🔴 Everything lands in \u0026ldquo;Sem atribuição\u0026rdquo; on the scoreboard Ad without the URL parameters Paste utm_content={{ad.name}}\u0026amp;utm_term={{adset.name}}\u0026amp;utm_id={{ad.id}} (§5.4) 3 🔴 Nothing tracked; everything \u0026ldquo;Orgânico\u0026rdquo; The ad\u0026rsquo;s destination is not the /r/ link Use the /r/ link as the destination (§5.2) 4 🔴 Creative blank even with the right landing page Your landing doesn\u0026rsquo;t pass the utm_* through to the /r/ button Make sure they\u0026rsquo;re passed through, or point the ad straight to /r/ (§5.4) 5 🔴 Leads arriving at the WhatsApp of someone you turned off Blocked the operator, but their links keep routing Reassign/disable their links before blocking (§4.6) 6 Visitor sees \u0026ldquo;this link expired or doesn\u0026rsquo;t exist\u0026rdquo; Link paused/deleted with the ad still pointing to it Pause the ad first; only then touch the link (§5.2) 7 Click lands on \u0026ldquo;indisponível\u0026rdquo; Tracking link without an operator Assign an operator to the link (§5.2) 8 🔴 Customer gets a raw \u0026ldquo;Olá {nome}\u0026rdquo; Invalid placeholder (only 6 work) Use only the 6: {utm_source} {utm_campaign} {utm_content} {utm_term} {campaign_name} {tracking_link_slug} (§5.2) 9 I can\u0026rsquo;t save the operator\u0026rsquo;s WhatsApp (or a legacy number would route wrong) Registration requires a valid BR mobile (area code + 9 — +55 DD 9XXXX-XXXX); a non-BR/malformed one is rejected on creation/edit with an error. Only legacy data would slip through and route wrong Enter a valid BR number; non-BR isn\u0026rsquo;t supported today. Suspect legacy data? Edit the operator and re-save 11.2 Integrations # Symptom Cause What to do 10 🔴 CAPI stopped sending conversions Credential disabled/unverified/revoked, OR Meta disconnected Check \u0026ldquo;Envio CAPI: Ativo\u0026rdquo;; reconnect Meta if needed (§7.2) 11 🔴 Cost frozen / ROAS out of date Meta token expired and nobody reconnected (banner state D) Reconnect before the token expires (\u0026lt;7 days warns you) (§7.1) 12 🔴 Connected Meta but no ad account came in Facebook user without access to the account (banner state C) Reconnect with the user who can see the account in Ads Manager (§7.1) 13 🔴 CTWA leads with no cost, no CPL/ROAS, no creative CTWA enters as Meta paid in the funnel, but with no cost/creative (it doesn\u0026rsquo;t go through /r/); active only on Cloud To get cost and creative, use the /r/ link as the destination instead of native CTWA (§5.4) 14 🔴 An operator\u0026rsquo;s conversations don\u0026rsquo;t correlate Operator registered with a WhatsApp different from the connected number — the match is by number Register the operator with the same number connected in WhatsApp connect (§7.4) 15 Two WhatsApp connections on the same number Migrated Evolution→Official; Evolution doesn\u0026rsquo;t turn itself off Disconnect Evolution manually after confirming the Official one (§7.4) 16 Google campaign cost doesn\u0026rsquo;t show up Expected: Google still has no cost import Treat Google CPL/ROAS as partial (§7.6) 11.3 Public \u0026amp; operation # Symptom Cause What to do 17 Published bio looks abandoned Published without buttons Add at least one button before publishing (§6.1) 18 My click test doesn\u0026rsquo;t count Bot/preview or the click limit (10/60s from the same IP) Test from your phone, without reloading several times; the real click counts (§6.3) 19 \u0026ldquo;Today/Yesterday\u0026rdquo; look off Wrong company timezone Adjust the company timezone 20 Cost only shows up the next day Expected: the cost sync runs overnight (~5–6am) Wait for the next cycle; if it persists \u0026gt;1 day, check the channel (§5.1) and the Meta banner (§7.1) 11.4 \u0026ldquo;No-gaps activation\u0026rdquo; script (do it in this order) Create the campaign on the right channel (Meta, if it runs on Meta) — item 1. Create the tracking link with an operator and a message using only the 6 placeholders — items 7, 8. Check the operator\u0026rsquo;s WhatsApp in BR format and matching the connected number — items 9, 14. On the ad, use the /r/ link as the destination and paste the URL parameters — items 2, 3, 4. Use Validar oferta to check destination + message + tagging before publishing (§5.3). Connect Meta with the right user, confirm the green banner, and paste the Meta campaign ID into each campaign (Editar campanha) — otherwise cost won\u0026rsquo;t add up — items 11, 12, 1. If you use CAPI, confirm \u0026ldquo;Envio CAPI: Ativo\u0026rdquo; — item 10. Publish. Do not pause/delete the link or block the operator without first handling the live ads — items 5, 6. ","permalink":"https://faq.martec.app/en/faq/config-errors/","summary":"Symptom -\u0026gt; cause -\u0026gt; fix for what silently breaks measurement.","title":"11. Configuration errors that break measurement"}]