Rotas gerais

Marketing

Campanhas Meta Ads & Google Ads

Passo a passo real para subir campanhas de Facebook, Instagram e Google Ads apontando para o Membresia 360 — do zero, com R$10/dia. Inclui scripts Node prontos para automatizar tudo via API oficial.

1. Pré-requisitos (do zero)

Faça esta parte uma vez. Sem isso, nenhuma das plataformas deixa você anunciar.

1

Página no Facebook (você já tem ✅)

Ela é obrigatória para anunciar no Facebook e Instagram. A conta Instagram deve estar conectada à Página em Configurações → Contas vinculadas.
2

Meta Business Manager (Gerenciador de Negócios)

Acesse business.facebook.com. Clique em Criar conta → nome do negócio (Apache Desenvolvedor), seu nome, seu e-mail. Depois:
  • Configurações do negócio → Contas → Páginas: adicione sua página.
  • Contas do Instagram: adicione seu @.
  • Contas de anúncios → + Adicionar → Criar: fuso Brasília, moeda BRL.
  • Pagamentos: cadastre cartão (o Meta cobra depois que a fatura fecha).
3

Conta Google Ads

Vá em ads.google.com Comece agora. Escolha Modo especialista (fica escondido em "Alternar para o modo especialista"). Pule a criação de campanha inicial clicando em Criar uma conta sem campanha. Depois em Faturamento cadastre o cartão (Google só cobra ao atingir R$150 ou fim do mês).
4

Domínio verificado (recomendado)

No Business Manager → Segurança da marca → Domínios → adicione igreja-conectada-360.lovable.app (ou seu domínio próprio quando o DNS estiver no ar). A verificação por DNS libera CAPI e otimização por eventos.

2. UTMs, Pixel do Meta e Google Tag

Sem rastreamento você anuncia às cegas. Faça isto antes de subir a primeira campanha.

1

Padrão de UTM (use sempre)

Sempre aponte os anúncios para uma URL com UTM. Assim você separa cliques no GA4 e dentro do próprio app.
url
https://igreja-conectada-360.lovable.app/membresia360?utm_source=meta&utm_medium=cpc&utm_campaign=lancamento&utm_content=video-01
https://igreja-conectada-360.lovable.app/membresia360?utm_source=google&utm_medium=cpc&utm_campaign=lancamento&utm_content=texto-01
2

Meta Pixel (Facebook/Instagram)

Business Manager → Gerenciador de Eventos → Conectar fontes de dados → Web → Meta Pixel. Nomeie Membresia 360. Ele gera um PIXEL_ID. Cole no <head> do site (ou peça pra eu adicionar no src/routes/__root.tsx).
html
<!-- Meta Pixel -->
<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','https://connect.facebook.net/en_US/fbevents.js');
fbq('init', 'SEU_PIXEL_ID');
fbq('track', 'PageView');
</script>
Se quiser, me diga o Pixel ID e eu insiro no projeto.
3

Google Tag (GA4 + Ads)

Em tagmanager.google.com crie um contêiner GTM para o domínio. Dentro, adicione uma Tag GA4 (measurement ID G-XXXX) e depois uma Tag de conversão do Google Ads (ID AW-XXXXXXX/label). Publique. Em Google Ads → Ferramentas → Conversões → Nova, escolha Site → Envio de formulário / Clique em botão.

3. Meta Ads — Facebook e Instagram (passo a passo real)

Objetivo: Tráfego para a landing. Orçamento sugerido: R$6/dia por conjunto.

1

Abrir o Ads Manager

adsmanager.facebook.com → botão verde + Criar.
2

Nível Campanha

  • Objetivo: Tráfego.
  • Nome da campanha: MB360 · Tráfego · Lançamento.
  • Categoria de anúncio especial: Nenhuma.
  • Advantage+ Orçamento de campanha: desligado por enquanto (para você controlar o teste).
3

Nível Conjunto de anúncios

  • Destino da conversão: Site.
  • Orçamento diário: R$ 6,00.
  • Localização: Brasil (ou estados específicos: RO, AC, AM…).
  • Idade: 28–60.
  • Segmentação detalhada (Interesses): Igreja evangélica, Cristianismo, Pastor (religião), Bíblia, Célula (cristianismo).
  • Posicionamentos: Manuais → Feed do Facebook, Feed do Instagram, Stories IG, Reels IG. Desmarque Audience Network.
4

Nível Anúncio

  • Página do Facebook + Conta do Instagram vinculada.
  • Formato: Imagem única. Use os banners /divulgacao (1080×1080 para Feed, 1080×1920 para Stories/Reels).
  • Texto principal (copiar):
    txt
    Pastor(a), gerencie sua igreja como um sistema profissional 🙏
    
    ✅ Cadastro completo de membros
    ✅ Células nas casas + relatórios de reunião
    ✅ Senso automático por faixa etária
    ✅ Painel exclusivo para líderes
    
    Teste grátis agora 👇
  • Título: Membresia 360 — gestão completa da sua igreja
  • Descrição: Membros, células e relatórios em um só lugar.
  • URL do site: https://igreja-conectada-360.lovable.app/membresia360?utm_source=meta&utm_medium=cpc&utm_campaign=lancamento&utm_content={{ad.name}}
  • Botão: Saiba mais.
5

Publicar

Botão verde Publicar. O Meta analisa em 15min a 24h. Enquanto está Em análise o anúncio não roda.

Com R$10/dia total, rode 1 campanha Meta com R$6/dia e sobra R$4/dia pro Google. Depois de 5–7 dias, pause o pior anúncio e realoque o orçamento.

4. Google Ads — Rede de Pesquisa (passo a passo real)

Objetivo: capturar quem já procura por 'sistema para igreja'. Orçamento sugerido: R$4/dia.

1

Nova campanha

Em ads.google.com Campanhas → + → Nova campanha.
2

Objetivo e tipo

  • Objetivo: Tráfego do site.
  • Tipo: Pesquisa.
  • URL do site: https://igreja-conectada-360.lovable.app/membresia360.
  • Nome: MB360 · Search · Lançamento.
3

Lances e orçamento

  • Lance: Maximizar cliques com CPC máx R$1,20.
  • Orçamento diário: R$4,00.
  • Redes: desmarque Rede de Display e Parceiros de pesquisa.
  • Local: Brasil. Idioma: Português.
4

Palavras-chave (copiar e colar)

Cole exatamente assim (com aspas e colchetes — controla correspondência):
keywords
"sistema para igreja"
"software para igreja evangélica"
"aplicativo de gestão de igreja"
"controle de membros igreja"
"sistema de células nas casas"
[gestão de igreja online]
[cadastro de membros igreja]
+igreja +gestão +sistema
+células +igreja +relatório
Palavras-chave negativas (não desperdiça verba):
negativas
grátis
gratis
gratuito
apostila
curso
sermão
sermao
letra
música
musica
youtube
5

Anúncios responsivos de pesquisa (RSA)

Crie 1 anúncio com o máximo de títulos e descrições possíveis:
titulos-15
Sistema para Igreja Evangélica
Membresia 360 — Gestão Completa
Controle de Membros e Células
App para Igreja com Relatórios
Cadastre sua Igreja Grátis
Senso Automático por Idade
Painel para Pastores e Líderes
Relatórios de Célula em PDF
Gestão Profissional da Sua Igreja
Igreja Organizada Começa Aqui
Software Cristão de Gestão
Tudo o que sua Igreja Precisa
Membresia, Células e Senso
Fácil de Usar — Sem Instalar
Comece Hoje — Teste Grátis
descricoes-4
Cadastro completo de membros, células nas casas e relatórios de reunião num só painel.
Senso por faixa etária, ficha impressa, PDF profissional. Feito por e para igrejas.
Painel exclusivo para líderes de célula. Convites por QR Code e WhatsApp.
Teste grátis agora e organize sua igreja em minutos. Suporte em português.
URL final: https://igreja-conectada-360.lovable.app/membresia360?utm_source=google&utm_medium=cpc&utm_campaign=lancamento&utm_content={creative}
6

Extensões (assets)

  • Sitelinks: Manual, Preços, Demonstração, Fale no WhatsApp.
  • Frases de destaque: "Suporte em português", "Sem instalação", "PDF pronto", "Convite por QR Code".
  • Chamada: +55 69 99246 7599.
7

Publicar

Revisar → Publicar. Google aprova em minutos a 2h.

5. Automação via API (scripts prontos)

Suba, pause e clone campanhas pelo terminal — sem entrar nos painéis.

Meta Marketing API

Você precisa de 3 coisas: AD_ACCOUNT_ID (Business Manager → Contas de Anúncios), PAGE_ID (sua Página FB) e um ACCESS_TOKEN de longa duração (developers.facebook.com → seu App → Marketing API → gerar token com escopos ads_management, business_management).

.env
META_ACCESS_TOKEN=EAAG...
META_AD_ACCOUNT_ID=act_1234567890
META_PAGE_ID=1122334455
META_INSTAGRAM_ID=1789...
scripts/meta-create-campaign.mjs
// node scripts/meta-create-campaign.mjs
import 'dotenv/config';

const API = 'https://graph.facebook.com/v20.0';
const { META_ACCESS_TOKEN: TOKEN, META_AD_ACCOUNT_ID: ACC, META_PAGE_ID: PAGE, META_INSTAGRAM_ID: IG } = process.env;

const post = async (path, body) => {
  const res = await fetch(`${API}/${path}`, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ ...body, access_token: TOKEN }),
  });
  const json = await res.json();
  if (!res.ok) throw new Error(JSON.stringify(json));
  return json;
};

// 1. Campanha
const camp = await post(`${ACC}/campaigns`, {
  name: 'MB360 · Tráfego · Lançamento (API)',
  objective: 'OUTCOME_TRAFFIC',
  status: 'PAUSED',
  special_ad_categories: [],
});
console.log('Campaign', camp.id);

// 2. Conjunto de anúncios (R$6/dia = 600 centavos)
const adset = await post(`${ACC}/adsets`, {
  name: 'BR · 28-60 · Interesses cristãos',
  campaign_id: camp.id,
  daily_budget: 600,
  billing_event: 'IMPRESSIONS',
  optimization_goal: 'LINK_CLICKS',
  bid_strategy: 'LOWEST_COST_WITHOUT_CAP',
  targeting: {
    geo_locations: { countries: ['BR'] },
    age_min: 28,
    age_max: 60,
    flexible_spec: [{
      interests: [
        { id: '6003195797498', name: 'Cristianismo' },
        { id: '6003277229371', name: 'Igreja' },
        { id: '6003250373404', name: 'Bíblia' },
      ],
    }],
    publisher_platforms: ['facebook', 'instagram'],
    facebook_positions: ['feed'],
    instagram_positions: ['stream', 'story', 'reels'],
  },
  status: 'PAUSED',
  start_time: new Date(Date.now() + 60_000).toISOString(),
});
console.log('AdSet', adset.id);

// 3. Criativo
const creative = await post(`${ACC}/adcreatives`, {
  name: 'MB360 · Criativo v1',
  object_story_spec: {
    page_id: PAGE,
    instagram_actor_id: IG,
    link_data: {
      message: 'Pastor(a), gerencie sua igreja como um sistema profissional 🙏\n\n✅ Membros ✅ Células ✅ Relatórios\n\nTeste grátis agora 👇',
      link: 'https://igreja-conectada-360.lovable.app/membresia360?utm_source=meta&utm_medium=cpc&utm_campaign=lancamento&utm_content=api-v1',
      name: 'Membresia 360 — gestão completa da sua igreja',
      description: 'Membros, células e relatórios em um só lugar.',
      call_to_action: { type: 'LEARN_MORE' },
      picture: 'https://igreja-conectada-360.lovable.app/banner.jpg',
    },
  },
});
console.log('Creative', creative.id);

// 4. Anúncio
const ad = await post(`${ACC}/ads`, {
  name: 'MB360 · Ad v1',
  adset_id: adset.id,
  creative: { creative_id: creative.id },
  status: 'PAUSED',
});
console.log('Ad', ad.id);
console.log('\n✅ Tudo criado em PAUSED. Ative no Ads Manager depois de revisar.');
scripts/meta-pause-all.mjs
import 'dotenv/config';
const { META_ACCESS_TOKEN: T, META_AD_ACCOUNT_ID: A } = process.env;
const r = await fetch(`https://graph.facebook.com/v20.0/${A}/campaigns?fields=id,name,status&access_token=${T}`);
const { data } = await r.json();
for (const c of data.filter(x => x.status === 'ACTIVE')) {
  await fetch(`https://graph.facebook.com/v20.0/${c.id}`, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ status: 'PAUSED', access_token: T }),
  });
  console.log('Pausada:', c.name);
}

Google Ads API

Precisa de: conta MCC aprovada, developer_token, OAuth client (client_id, client_secret, refresh_token) e customer_id da conta que vai anunciar. Solicitação de developer token: ads.google.com/aw/apicenter.

bash
bun add google-ads-api dotenv
.env
GOOGLE_ADS_DEVELOPER_TOKEN=xxxxxxxxxxxx
GOOGLE_ADS_CLIENT_ID=xxxxxxx.apps.googleusercontent.com
GOOGLE_ADS_CLIENT_SECRET=xxxxxx
GOOGLE_ADS_REFRESH_TOKEN=1//0xxxxxx
GOOGLE_ADS_CUSTOMER_ID=1234567890
GOOGLE_ADS_LOGIN_CUSTOMER_ID=1112223333
scripts/google-create-campaign.mjs
// node scripts/google-create-campaign.mjs
import 'dotenv/config';
import { GoogleAdsApi, enums } from 'google-ads-api';

const client = new GoogleAdsApi({
  client_id: process.env.GOOGLE_ADS_CLIENT_ID,
  client_secret: process.env.GOOGLE_ADS_CLIENT_SECRET,
  developer_token: process.env.GOOGLE_ADS_DEVELOPER_TOKEN,
});

const customer = client.Customer({
  customer_id: process.env.GOOGLE_ADS_CUSTOMER_ID,
  login_customer_id: process.env.GOOGLE_ADS_LOGIN_CUSTOMER_ID,
  refresh_token: process.env.GOOGLE_ADS_REFRESH_TOKEN,
});

// 1. Budget: R$4/dia -> 4_000_000 micros
const [budget] = await customer.campaignBudgets.create([{
  name: 'MB360 Search R$4/dia ' + Date.now(),
  amount_micros: 4_000_000,
  delivery_method: enums.BudgetDeliveryMethod.STANDARD,
}]);

// 2. Campanha Search (pausada)
const [campaign] = await customer.campaigns.create([{
  name: 'MB360 · Search · Lançamento (API)',
  advertising_channel_type: enums.AdvertisingChannelType.SEARCH,
  status: enums.CampaignStatus.PAUSED,
  campaign_budget: budget.resource_name,
  manual_cpc: { enhanced_cpc_enabled: false },
  network_settings: {
    target_google_search: true,
    target_search_network: false,
    target_content_network: false,
    target_partner_search_network: false,
  },
}]);
console.log('Campaign', campaign.resource_name);

// 3. Ad group
const [adGroup] = await customer.adGroups.create([{
  name: 'MB360 · Palavras principais',
  campaign: campaign.resource_name,
  cpc_bid_micros: 1_200_000, // R$1,20
  status: enums.AdGroupStatus.ENABLED,
  type: enums.AdGroupType.SEARCH_STANDARD,
}]);

// 4. Palavras-chave
const KWS = [
  { text: 'sistema para igreja', match: 'PHRASE' },
  { text: 'software para igreja evangélica', match: 'PHRASE' },
  { text: 'controle de membros igreja', match: 'PHRASE' },
  { text: 'gestão de igreja online', match: 'EXACT' },
  { text: 'cadastro de membros igreja', match: 'EXACT' },
];
await customer.adGroupCriteria.create(KWS.map(k => ({
  ad_group: adGroup.resource_name,
  status: enums.AdGroupCriterionStatus.ENABLED,
  keyword: { text: k.text, match_type: enums.KeywordMatchType[k.match] },
})));

// 5. Anúncio Responsivo (RSA)
await customer.adGroupAds.create([{
  ad_group: adGroup.resource_name,
  status: enums.AdGroupAdStatus.ENABLED,
  ad: {
    final_urls: ['https://igreja-conectada-360.lovable.app/membresia360?utm_source=google&utm_medium=cpc&utm_campaign=lancamento'],
    responsive_search_ad: {
      headlines: [
        { text: 'Sistema para Igreja Evangélica' },
        { text: 'Membresia 360 — Gestão Completa' },
        { text: 'Controle de Membros e Células' },
        { text: 'Cadastre sua Igreja Grátis' },
        { text: 'Painel para Pastores e Líderes' },
      ],
      descriptions: [
        { text: 'Cadastro completo de membros, células e relatórios num só painel.' },
        { text: 'Senso por faixa etária, ficha impressa e PDF pronto. Feito para igrejas.' },
      ],
    },
  },
}]);

console.log('✅ Campanha Google Ads criada em PAUSED.');

6. Checklist antes de ativar

Passe por cada item — 90% dos problemas de conta bloqueada vêm daqui.

  • Meta Pixel disparando PageView (verifique no Meta Pixel Helper — extensão Chrome).
  • Google Tag disparando (verifique no Google Tag Assistant).
  • URL final com UTMs corretas em cada anúncio.
  • Página de destino carregando em <3s (Lighthouse ≥ 80).
  • Termos e Política de Privacidade linkados no rodapé da landing.
  • Cartão cadastrado nas duas plataformas.
  • Domínio verificado no Business Manager (recomendado).
  • Nome dos anúncios com padrão MB360 · [canal] · [criativo] · v[n].
  • Orçamento total combina com sua realidade financeira (R$10/dia = R$300/mês).
  • Cronograma: rodar 7 dias, pausar pior anúncio, dobrar orçamento do melhor.