04 — Anuncios de Captación

Índice de la página
  1. 01Cliente: Martín Rieznik / LevantArte
  2. Área: Contenido & Ads (Cortex domina, Martín cámara)
  3. 020. Definición de "done" para esta checklist
  4. 031. Pre-requisitos
  5. 042. Tareas
  6. 2.1 Discovery — winners históricos + orgánicos
  7. 2.2 Sesión 1 con Martín — grabación de hooks frescos (12-16 may)
  8. 2.3 Pipeline A — Reciclar 5 winners × 5 hooks = 25 ads
  9. 2.4 Pipeline B — 15 orgánicos viralizados con CTA tail
  10. 2.5 Brief por ad (audit + scoring + audiencias destino)
  11. 2.6 Distribución Schwartz + Diversity Engine
  12. 2.7 Audiencias destino (cold)
  13. 2.8 Anti-Meta-rejection sweep
  14. 2.9 Naming + estructura en Meta Ads Manager
  15. 2.10 Tracking + UTMs
  16. 2.11 Handoff a 14_META_OPTIMIZACIONES.md
  17. 053. Variables y posibilidades a anticipar
  18. 064. Multi-tenant: cómo se replica al cliente #2
  19. 075. Recursos y archivos relacionados
  20. 086. Notas y aprendizajes (post-mortem)
  21. 09CHANGELOG

Cliente: Martín Rieznik / LevantArte

Área: Contenido & Ads (Cortex domina, Martín cámara)

50+ ads en draft en Meta Ads Manager para el día del go-live (8 jun). Dos pipelines: (A) reciclar 5 winners históricos × 5 hooks nuevos = 25 ads; (B) 10-15 orgánicos viralizados con CTA al webinar. Materia prima: Sesión 1 con Martín (12-16 may) + scraping de YouTube/IG.

Última actualización: 2026-05-05
Responsable principal (R): Cortex (briefs + edición + audit + upload) + Martín (cámara)
Aprobador (A): Jesús
Deadline: 31 may 2026
Depende de: 03_COPIES.md (copies firmados), 06_VIDEOS_YOUTUBE.md (winners históricos identificados + voz extraída), 08_OFERTA_Y_STACK.md, 13_PIXEL_TRACKING.md (Pixel + CAPI funcionando)
Bloquea a: 14_META_OPTIMIZACIONES.md, 19_GO_LIVE_8_JUNIO.md


0. Definición de "done" para esta checklist

  • ≥ 50 ads en Meta Ads Manager en modo DRAFT (no pausados, no activos), correctamente nombrados, con creativos subidos en 9:16 + 1:1 + 16:9.
  • 100% de copies pasaron audit ≥ 4.0/5.0 (agents/redaccion-publicitaria/) y headlines ≥ 40/50 (agents/promise-engineer/).
  • Distribución Schwartz documentada y verificada: UNAWARE 30% / PROBLEM 25% / SOLUTION 20% / PRODUCT 15% / MOST AWARE 10% (±5%).
  • Naming convention aplicada al 100%: MR_CAP_<pipeline>_<schwartz>_<estructura>_<nro>_<aspect>.
  • Anti-Meta-rejection sweep ejecutado: 0 ads con palabras prohibidas del nicho seducción en copy de cold traffic.

1. Pre-requisitos

# Pre-requisito Provisto por Estado
1 Acceso a Meta Business Manager + Ad Account de Martín (token + permisos) Martín → Jesús ⚠️
2 Lista de 5 ads winners históricos identificados con métricas (CTR, CPL, ROAS) Cortex (output 06_VIDEOS_YOUTUBE.md §4.4) ⚠️
3 Lista de 10-15 reels/shorts orgánicos con tracción ≥ 50K views Cortex (output 06_VIDEOS_YOUTUBE.md + Instagram) ⚠️
4 Copies de ads (50+) firmados — cross-ref 03_COPIES.md §2.4 Cortex ⚠️
5 Sesión 1 con Martín agendada y ejecutada (12-16 may, 2-3 hrs) Jesús + Martín ⚠️
6 Brand assets: logo LevantArte, paleta, fonts, lower-thirds Martín ⚠️
7 Music tracks royalty-free aprobados por Martín Cortex ⚠️
8 Pixel + CAPI funcionando (eventos Lead y Purchase recibidos) Eric ⚠️
9 Cuenta de respaldo Meta provisionada por si rechazo masivo Jesús ⚠️

2. Tareas

2.1 Discovery — winners históricos + orgánicos

  • Auditar winners históricos de Martín: pedir export de Meta Ads de los últimos 24 meses + scraper de Meta Ad Library con page_id de LevantArte. R: Cortex. Done cuando: archivo ads/captacion/_DISCOVERY/WINNERS_HISTORICOS.md con ≥ 20 candidatos rankeados por CTR + CPL + tiempo activo.
  • Seleccionar TOP 5 winners para reciclar (criterio: longevidad + CTR + replicabilidad de hook). R: Cortex + Jesús aprueba. Done cuando: _DISCOVERY/TOP_5_WINNERS.md firmado con análisis de por qué cada uno funcionó (ángulo + Schwartz + emoción dominante).
  • Auditar orgánicos virales: top 30 reels/shorts/TikToks de Martín por views + saves + share. R: Cortex. Done cuando: _DISCOVERY/ORGANICOS_TOP30.md con métricas + transcripción + tag de tema.
  • Seleccionar TOP 10-15 orgánicos para Pipeline B. R: Cortex + Jesús. Done cuando: _DISCOVERY/TOP_15_ORGANICOS.md firmado.
  • Mapear cobertura Schwartz de los 5 winners + 15 orgánicos. Identificar gaps. R: Cortex. Done cuando: tabla _DISCOVERY/SCHWARTZ_GAPS.md muestra qué niveles necesitan más material.

2.2 Sesión 1 con Martín — grabación de hooks frescos (12-16 may)

  • Brief de grabación con 8-12 hooks distintos en formato talking head + B-roll guiado, cubriendo niveles Schwartz UNAWARE/PROBLEM/SOLUTION (los más débiles del catálogo). R: Cortex. Done cuando: ads/captacion/_BRIEFS/SESION_1_GRABACION.md con 12 hooks textuales + tipo de plano + duración objetivo.
  • Pre-prod: locación + iluminación + audio + cámara + wardrobe (2 cambios de outfit). R: Jesús. Done cuando: checklist de pre-prod firmado y equipo confirmado.
  • Sesión 1 ejecutada (2-3 hrs): 8-12 hooks grabados + B-roll de "Martín caminando", "Martín leyendo", "Martín al teléfono", "Martín tomando café" para inserts. R: Jesús + Martín. Done cuando: raw upload a ads/captacion/_RAW/SESION_1/ con naming RAW_<n>_<hook_categoria>.mp4.
  • Transcripción + sync de todo el material grabado. R: Cortex (Whisper). Done cuando: cada clip raw tiene su .srt + .md con timestamps.
  • Indexar takes por hook + calidad (1-5) + utilizable para qué Schwartz. R: Cortex. Done cuando: _RAW/SESION_1/INDEX.md con tabla completa.

2.3 Pipeline A — Reciclar 5 winners × 5 hooks = 25 ads

  • Por cada winner (5): documentar el ángulo / hook original / cuerpo / CTA. R: Cortex. Done cuando: 5 archivos ads/captacion/pipelineA/WINNER_<n>_BASE.md.
  • Generar 5 hooks alternativos por winner con agents/hook-engineer/ (uno por categoría: Dato, Pregunta/Dolor, Contrarian, Historia, Curiosidad/FOMO). R: Cortex. Done cuando: 25 hooks documentados en archivos pipelineA/WINNER_<n>_HOOKS.md + scorecard de hook-engineer ≥ 7/10 cada uno.
  • Adaptar cuerpo + CTA al webinar gratis (no al taller — webinar es la oferta de cold). R: Cortex (agents/copywriter/). Done cuando: 25 copies completos en pipelineA/AD_W<n>_H<n>_v1.md con scorecard redaccion-publicitaria ≥ 4.0/5.0.
  • Editar 25 videos con agents/video-editor/ cosiendo hook nuevo + cuerpo del winner + CTA tail (3-5s) con QR a deacademia.com/martin/. R: Cortex. Done cuando: 25 videos en _OUTPUT/pipelineA/9x16/, audio normalizado, lower-thirds aplicados.
  • Versionar a 1:1 + 16:9 cada video. R: Cortex. Done cuando: 75 videos totales (25 × 3 aspect ratios) en _OUTPUT/pipelineA/<aspect>/.
  • QA visual y de audio por Jesús sobre los 25 ads (vista mobile + sonido). R: Jesús. Done cuando: 25/25 aprobados o re-editados; log en _QA/pipelineA_QA.md.

2.4 Pipeline B — 15 orgánicos viralizados con CTA tail

  • Por cada orgánico (15): bajar el original en máxima calidad + audio limpio. R: Cortex (yt-dlp/instaloader). Done cuando: 15 raws en ads/captacion/pipelineB/_RAW/.
  • Escribir tail copy de 3-5s ("Registrate gratis al webinar del lunes — link en bio"). R: Cortex. Done cuando: 15 copies en pipelineB/AD_ORG_<n>_v1.md con scorecard ≥ 4.0/5.0.
  • Pegar tail editorial con agents/video-editor/ (lower-third + QR + voice over Martín si hace falta). R: Cortex. Done cuando: 15 videos en _OUTPUT/pipelineB/9x16/ + versionado 1:1 y 16:9.
  • Verificar derechos: si en el orgánico hay música con copyright, sustituirla por royalty-free equivalente. R: Cortex. Done cuando: log _QA/pipelineB_audio_clearance.md.
  • QA Jesús sobre los 15 ads. R: Jesús. Done cuando: 15/15 aprobados.

2.5 Brief por ad (audit + scoring + audiencias destino)

  • Plantilla _BRIEF_TEMPLATE.md con campos: ad_id, pipeline, schwartz, estructura, hook_categoria, copy_id, video_path, score_copy, score_headline, audiencia_objetivo, presupuesto_diario_propuesto, naming_meta. R: Cortex. Done cuando: plantilla creada en ads/captacion/_BRIEFS/.
  • Brief por cada uno de los 40 ads completado y firmado. R: Cortex. Done cuando: 40 archivos _BRIEFS/AD_<id>.md listos.
  • Audit final batch con agents/redaccion-publicitaria/: ningún ad < 4.0/5.0. R: Cortex. Done cuando: log _AUDIT/CAPTACION_FINAL.md con 40/40 verde.
  • Audit headlines batch con agents/promise-engineer/scripts/score_promise.py. R: Cortex. Done cuando: 40 headlines ≥ 40/50.

2.6 Distribución Schwartz + Diversity Engine

  • Asignar nivel Schwartz a cada uno de los 40 ads. R: Cortex. Done cuando: tabla _AUDIT/SCHWARTZ_DIST.md muestra distribución ±5% del target (UNAWARE 30% / PROBLEM 25% / SOLUTION 20% / PRODUCT 15% / MOST 10%).
  • Reequilibrar si hay sobre-índice en algún nivel: generar ads adicionales o reescribir hooks. R: Cortex. Done cuando: distribución dentro de tolerancia + total ≥ 50 ads.
  • Diversity Engine log: ningún hook / estructura / protagonista / CTA repetido en > 2 ads. R: Cortex. Done cuando: _AUDIT/DIVERSITY.md validado.

2.7 Audiencias destino (cold)

  • Audiencia A — Lookalike compradores históricos (1-3% AR/MX/CO/ES) si Martín tiene CRM previo. R: Cortex + Eric (sube CSV). Done cuando: audiencia creada en Meta + ≥ 5M de tamaño.
  • Audiencia B — Lookalike vistas de webinars previos (si existen). R: Cortex. Done cuando: audiencia creada.
  • Audiencia C — Intereses broad (desarrollo personal / coaching / Tony Robbins / autoayuda / habilidades sociales) AR/MX/CO/ES, hombres 25-55. R: Cortex. Done cuando: 1 audiencia creada por país.
  • Audiencia D — Engagement IG/FB de Martín 365 días. R: Cortex. Done cuando: audiencia creada y poblada.
  • Audiencia E — Broad open targeting (sólo edad + país, dejar Advantage+ optimizar). R: Cortex. Done cuando: audiencia configurada.
  • Mapeo ad → audiencia documentado en _AUDIT/MAPEO_AUDIENCIAS.md. R: Cortex. Done cuando: cada ad tiene 1-3 audiencias asignadas.

2.8 Anti-Meta-rejection sweep

  • Pasar lista de palabras gatillo del nicho seducción sobre los 40 copies. Lista base en copies/_GUARDRAILS.md. R: Cortex. Done cuando: 0 hits en cold copies.
  • Reescribir copies que disparan: posicionar como "habilidades sociales / desarrollo personal / liderazgo masculino / comunicación / confianza". R: Cortex. Done cuando: copies reescritos pasan re-audit.
  • Pre-validar 5 ads en Meta mediante draft + preview manual para detectar warnings tempranos. R: Cortex. Done cuando: 5/5 sin warnings; si alguno warning, ajustar plantilla.
  • Plan de respaldo "cuenta B": documentar pasos para mover campañas a la cuenta secundaria si rechazo masivo. R: Jesús. Done cuando: runbook _OPS/PLAN_RESPALDO_META.md listo.

2.9 Naming + estructura en Meta Ads Manager

  • Naming convention: MR_CAP_<P|A|B>_<UNAWARE|PROBLEM|SOLUTION|PRODUCT|MOST>_<S|T|M|C|L|BA|D|CMP>_<NN>_<9x16|1x1|16x9> (P=Pipeline, S=Storytelling, T=Testimonio, M=Math, C=Contrarian, L=Listicle, BA=Before/After, D=Descubrimiento, CMP=Comparación). R: Cortex. Done cuando: convention documentada en _OPS/NAMING_CONVENTION.md.
  • Estructura de campañas Meta (CBO):
  • Campaña 1: MR_CAP_COLD_LAL (presupuesto $30/día arranque)
  • Campaña 2: MR_CAP_COLD_INT (presupuesto $30/día)
  • Campaña 3: MR_CAP_COLD_BROAD_AdvantagePlus (presupuesto $40/día)
  • Objetivo: Sales / evento custom Lead (post-quiz)
    R: Cortex. Done cuando: 3 campañas creadas en draft.
  • Ad sets por audiencia dentro de cada campaña, con placement Advantage+. R: Cortex. Done cuando: estructura completa en draft.
  • Subir 50+ ads como drafts: un solo upload batch, asignar a ad set correcto, copies en cuerpo principal + headline + descripción + CTA "Más información" hacia deacademia.com/martin/?utm_source=fb&utm_medium=paid&utm_campaign=cap&utm_content=<ad_id>. R: Cortex. Done cuando: 50+ ads en draft, todos con preview correcto en Meta.

2.10 Tracking + UTMs

  • UTM por ad: definir convención utm_source=fb|ig / utm_medium=paid / utm_campaign=cap_<schwartz> / utm_content=<ad_id> / utm_term=<estructura>. R: Cortex + Eric. Done cuando: convention en _OPS/UTM_CONVENTION.md y aplicada a los 50 ads.
  • Test de Pixel + CAPI desde un ad draft → preview → click → quiz → confirmar evento PageView + Lead en Events Manager. R: Eric. Done cuando: match rate > 70% en muestra de 5 sesiones.
  • Validar que la UTM persiste desde click → registro → compra en Supabase. R: Eric. Done cuando: query SELECT utm_source, utm_campaign, utm_content FROM leads JOIN compras USING(lead_id) LIMIT 5 muestra valores coherentes en sesiones de prueba.

2.11 Handoff a 14_META_OPTIMIZACIONES.md

  • Documento de handoff con: lista de 50 ads + presupuesto inicial recomendado + audiencias + KPI targets ($CPL ≤ $1.50, CTR ≥ 1.5%, CPM ≤ $15) + reglas de pause/scale. R: Cortex. Done cuando: archivo _OPS/HANDOFF_OPTIMIZACIONES.md firmado por Jesús.
  • Plan de activación piloto del 5 jun: $100/día durante 3 días para calentar pixel + identificar primeros winners. R: Cortex + Jesús. Done cuando: plan firmado y agendado.

3. Variables y posibilidades a anticipar

Escenario Plan B
Meta rechaza > 30% de los ads por nicho Activar cuenta de respaldo (provisionada en pre-req 9) + reescribir como "habilidades sociales / liderazgo / desarrollo personal". Documentar en _OPS/PLAN_RESPALDO_META.md.
Sesión 1 con Martín se cae o se acorta Plan B: usar 100% material de scraping + Pipeline B se infla a 25 ads. Plan C: agendar Sesión 1.5 entre 17-22 may aunque Martín esté de vacaciones (1h remoto).
Hook ganador del scoring no convierte en piloto (CTR < 1%) Quemar y rotar al siguiente del backlog. Cada winner tiene 5 hooks → usar #2. Documentar en _AUDIT/HOOK_PERFORMANCE.md.
Pixel no dispara Lead correctamente Bloqueante crítico para Eric. Pausar todos los drafts hasta validar. Plan B: usar conversion Contact + CompleteRegistration como fallback.
Audiencia LAL no tiene tamaño suficiente (< 1M) Substituir por LAL 5-10% o pasar a Broad Open Targeting con Advantage+.
Winners históricos tienen audio o legal issues (música con copyright, testimonios sin derecho de uso) Re-grabar con Martín en sesión 1.5 + sustituir música por royalty-free + pedir liberaciones por escrito antes de publicar.
Los 25 ads de Pipeline A salen "todos iguales" porque el winner condiciona Forzar Diversity Engine: un winner con 5 hooks ≠ 5 ads idénticos; cambiar también orden de bloques + B-roll + protagonista (a veces hablado por Martín, a veces por testimonio en off).
Andrés Rieznik (hermano neurocientífico) pide no aparecer en ads Respetar; usar autoridad textual ("avalado por la neurociencia") sin video de él.
Naming convention rota a mitad de upload Hacer rename batch con script cortex/agents/meta-ads/scripts/rename_ads.py.
Después del piloto (5-7 jun) ningún ad pasa CPL target Mantener mejores 10 + parir Pipeline C "fast" (5 nuevos hooks de tendencia ese día).

4. Multi-tenant: cómo se replica al cliente #2

  • Variables a externalizar:
  • cliente.slug (= martin)
  • cliente.naming_prefix (= MR)
  • meta.ad_account_id / meta.pixel_id / meta.access_token
  • meta.fallback_ad_account_id (cuenta de respaldo)
  • audiencias.lal_seed_csv_path
  • audiencias.intereses[] (lista por nicho)
  • audiencias.geos[] (países)
  • palabras_prohibidas[] (lista por nicho)
  • pipelines.A.target / pipelines.B.target (cantidades por defecto)
  • kpi.cpl_max / kpi.ctr_min / kpi.cpm_max
  • presupuesto_piloto_diario / presupuesto_arranque
  • Templates a guardar en sop/lanzar-cliente/templates/ads/captacion/:
  • _BRIEF_TEMPLATE.md (brief por ad)
  • _DISCOVERY_WINNERS_TEMPLATE.md
  • _DISCOVERY_ORGANICOS_TEMPLATE.md
  • _OPS_NAMING_CONVENTION_TEMPLATE.md
  • _OPS_PLAN_RESPALDO_META_TEMPLATE.md
  • SESION_1_BRIEF_TEMPLATE.md (brief de grabación con cliente)
  • Estructura de campañas Meta CBO (3 campañas) — definida en meta_campaign_template.json.
  • Sustituciones automáticas (clone_client.py):
  • {{cliente.naming_prefix}}MR / <otro>
  • {{cliente.slug}}martin / <slug>
  • {{deacademia_path}}deacademia.com/martin / deacademia.com/<slug>
  • {{schwartz_dist}} → distribución del config
  • {{audiencias_geos}} → lista del config
  • Script de bootstrap: cortex/sop/lanzar-cliente/scripts/bootstrap_meta_campaigns.py toma client_config.json + briefs + creativos → crea las 3 campañas + ad sets + ads en draft vía Meta API.
  • Validación post-clonación: revisar que ningún ad quede en cuenta del cliente equivocado (cross-ref meta.ad_account_id).

5. Recursos y archivos relacionados


6. Notas y aprendizajes (post-mortem)

  • (vacío hasta primera ejecución)

CHANGELOG

  • 2026-05-05 — JT/Cortex — Creación inicial. 50 tareas en 11 sub-bloques, target 50+ ads en draft.