Cerebro-Unlocked

Command center diario.

Vista read-only de Ads → Lead → Cita → Show → Venta. La prioridad es detectar qué merece acción hoy y qué dato todavía no es confiable.

Abrir Command Center 8–14Launch Gate / BriefingApprovals / Drafts
Datos desde Postgres
Día operativo
2026-05-07
Timezone
America/Bogota
Fuente
rds:DailyMetricSnapshot

Citas

high

39

GHL por startTime

Show rate

high

25.6%

10 show ups

HT close/show

low

70.0%

7 cierres HT

Costo/show

medium

$81.07

ad_spend_daily high_ticket

Reconciliation Engine

Citas explicadas

Delta

0

Show10 · 26%
No show6 · 15%
Canceladas20 · 51%
Inválidas3 · 8%

39 citas = 10 show / 6 no show / 20 canceladas / 3 inválidas.

Decision Layer

Cards de acción

1

observe

medium

Show rate bajo: revisar confirmación y calidad de lead

Show rate 25.6% con 39 citas.

Operator Decision Cards

Prioridades por fuente y closer

Capa accionable desde entidades granulares: mide primero el puente campaign/ad→call, luego baja desde fuente hacia campaña/ad, spend, Call→Cita y closer sin exponer leads, emails ni teléfonos.

postgres · 2026-05-07

critical

medium

Puente campaign/ad → call no instrumentado

33 filas de ads / 13 campañas tienen identidad de campaña/ad, pero las 19 calls del día solo traen campos fuente (primarySource, sourceSystem), sin campaign/ad/UTM enlazable.

0/19 calls con señal campaña/ad

Agregar persistencia de UTM/campaign/ad en el punto lead→GHL→call antes de pedir recomendaciones por campaña. Mientras tanto mantener decisiones a nivel fuente.

Evidencia: ad-spend-daily · crm-calls-lite

warn

low

Campaña con puente downstream pendiente

UA | CP | Pixel 1 | RM | Programar | Master | VSL | 15 Enero | Activar: $115.44 de spend y 674 clicks; hay señales calificadas a nivel fuente Meta Ads, pero todavía no a nivel campaña/ad.

$115.44 spend · source-level only

Usar como candidato para crear puente campaign/ad → lead/call; no escalar ni apagar solo por esta card.

Evidencia: ad-spend-daily · crm-calls-lite

warn

low

Campaña con puente downstream pendiente

UA-Mentoria-Search-LATAM: $101.57 de spend y 170 clicks; hay señales calificadas a nivel fuente Google Ads, pero todavía no a nivel campaña/ad.

$101.57 spend · source-level only

Usar como candidato para crear puente campaign/ad → lead/call; no escalar ni apagar solo por esta card.

Evidencia: ad-spend-daily · crm-calls-lite

warn

low

Campaña con puente downstream pendiente

UA2 | CP | Pixel 1 | 3 Videos | VSL | Ads 01,02,03 Abril / 20 Junio: $90.28 de spend y 185 clicks; hay señales calificadas a nivel fuente Meta Ads, pero todavía no a nivel campaña/ad.

$90.28 spend · source-level only

Usar como candidato para crear puente campaign/ad → lead/call; no escalar ni apagar solo por esta card.

Evidencia: ad-spend-daily · crm-calls-lite

warn

low

Campaña con puente downstream pendiente

UA3 | CP | Pixel 1 | Master | Version 1 | VSL | 18 Marzo | Activar: $87.44 de spend y 580 clicks; hay señales calificadas a nivel fuente Meta Ads, pero todavía no a nivel campaña/ad.

$87.44 spend · source-level only

Usar como candidato para crear puente campaign/ad → lead/call; no escalar ni apagar solo por esta card.

Evidencia: ad-spend-daily · crm-calls-lite

warn

low

Campaña con puente downstream pendiente

UA-YouTube-Mentoria-CO-MX: $81.46 de spend y 1005 clicks; hay señales calificadas a nivel fuente Google Ads, pero todavía no a nivel campaña/ad.

$81.46 spend · source-level only

Usar como candidato para crear puente campaign/ad → lead/call; no escalar ni apagar solo por esta card.

Evidencia: ad-spend-daily · crm-calls-lite

warn

low

Campaña con puente downstream pendiente

UA2 | Clientes potenciales | Programar | Master CBO ABO | Ads DIC | VSL |7 Dic: $79.59 de spend y 1197 clicks; hay señales calificadas a nivel fuente Meta Ads, pero todavía no a nivel campaña/ad.

$79.59 spend · source-level only

Usar como candidato para crear puente campaign/ad → lead/call; no escalar ni apagar solo por esta card.

Evidencia: ad-spend-daily · crm-calls-lite

critical

medium

Brecha Call → Cita por fuente

Comunidad/CA: 1/3 calls tienen cita enlazada.

33% calls enlazadas

No juzgar campañas de esta fuente hasta mejorar cobertura Call→Cita o confirmar que el gap es real.

Evidencia: crm-calls-lite · daily-closers-history-lite

critical

medium

Brecha Call → Cita por fuente

Google Ads: 0/3 calls tienen cita enlazada.

0% calls enlazadas

No juzgar campañas de esta fuente hasta mejorar cobertura Call→Cita o confirmar que el gap es real.

Evidencia: crm-calls-lite · daily-closers-history-lite

critical

medium

Brecha Call → Cita por closer

3/7 calls de Daryi Perez tienen cita granular enlazada.

43% enlazadas

Revisar llaves/fallbacks de este closer antes de usar sus calls para coaching o atribución.

Evidencia: crm-calls-lite · daily-closers-history-lite

critical

medium

Brecha Call → Cita por closer

2/6 calls de Juan Diego Afanador tienen cita granular enlazada.

33% enlazadas

Revisar llaves/fallbacks de este closer antes de usar sus calls para coaching o atribución.

Evidencia: crm-calls-lite · daily-closers-history-lite

warn

medium

No show concentrado

Alejandro Gallo: 1/3 citas fueron no show.

33% no show

Priorizar auditoría de fuente/confirmación para este bloque antes de atribuirlo a performance comercial.

Evidencia: daily-closers-history-lite

warn

medium

Show rate bajo por closer

Carlos Velez Unlocked: 3/14 citas terminaron en show.

21% show rate

Revisar confirmación, calidad de agenda y objeciones recurrentes antes de escalar tráfico.

Evidencia: daily-closers-history-lite

warn

medium

Muchas citas canceladas o inválidas

Carlos Velez Unlocked: 9/14 citas quedaron canceladas/inválidas.

64% cancel/invalid

Separar problema de calidad de lead vs agenda duplicada/ruido antes de juzgar cierres.

Evidencia: daily-closers-history-lite

Bridge campaign→call

0

19 calls · 13 campañas

UA | CP | Pixel 1 | RM | Programar | Master | VSL | 15 Enero | Activar

2

$115.44 · 674 clicks · Meta Ads

UA-Mentoria-Search-LATAM

2

$101.57 · 170 clicks · Google Ads

UA2 | CP | Pixel 1 | 3 Videos | VSL | Ads 01,02,03 Abril / 20 Junio

1

$90.28 · 185 clicks · Meta Ads

UA3 | CP | Pixel 1 | Master | Version 1 | VSL | 18 Marzo | Activar

3

$87.44 · 580 clicks · Meta Ads

Meta Ads

10

$627.68 · 5 linked · 7 qualified

Google Ads

3

$183.03 · 0 linked · 2 qualified

Daryi Perez

16

5 show · 7 calls · 3 linked

Carlos Velez Unlocked

14

3 show · 6 calls · 3 linked

Closed HT

0

Follow up

1

Evidence gap

0

Fathom coverage

4

4 calls

Carlos Velez Unlocked

4

1 follow-up · 0 HT

Daryi Perez

4

0 follow-up · 0 HT

System Readiness / Launch Gate

¿Listo para scale/cut recommendations?

Gate PII-free read-only para freshness, bridge campaign/ad→call, journey/Fathom, drift y conteo de recomendaciones preview.

blocker

postgres · 2026-05-07

Freshness

ready

Última captura hace 4 minutos.

4 min

Campaign Bridge Coverage

blocker

Sin señal campaign/ad/UTM en calls del día; atribución por campaña no es confiable.

0/19

Journey/Fathom Coverage

ready

Cobertura Fathom suficiente para leer objeciones y follow-up.

4/4 (100%)

Data-Quality Drift

ready

Sin drift relevante en fuentes recientes.

0 critical / 0 warn

Recommendation Preview

ready

Preview disponible con 15 recomendaciones PII-free pendientes de aprobación manual.

15 total · 4 tipos

Recommendation preview

Operación preview · sync solicitado: no

Total recommendations

15

coach_closer

1

fix_data_quality

5

follow_up

1

Action items

  1. Completar persistencia UTM/campaign/ad en lead→GHL→call para subir cobertura de puente por encima de 80%.

Recommendation Ledger

Acciones recomendadas persistibles

Recomendaciones determinísticas derivadas de decision cards, journeys y data quality. Todas quedan en modo aprobación manual.

preview read-only

postgres · 2026-05-07

coach_closercloserapproval required

Show rate bajo por closer

Carlos Velez Unlocked: 3/14 citas terminaron en show. Acción sugerida: Revisar confirmación, calidad de agenda y objeciones recurrentes antes de escalar tráfico.

Evidence: daily-closers-history-lite

fix_data_qualitydata_feedapproval required

Puente campaign/ad → call no instrumentado

33 filas de ads / 13 campañas tienen identidad de campaña/ad, pero las 19 calls del día solo traen campos fuente (primarySource, sourceSystem), sin campaign/ad/UTM enlazable. Acción sugerida: Agregar persistencia de UTM/campaign/ad en el punto lead→GHL→call antes de pedir recomendaciones por campaña. Mientras tanto mantener decisiones a nivel fuente.

Evidence: ad-spend-daily, crm-calls-lite

fix_data_qualitydata_feedapproval required

Brecha Call → Cita por closer

3/7 calls de Daryi Perez tienen cita granular enlazada. Acción sugerida: Revisar llaves/fallbacks de este closer antes de usar sus calls para coaching o atribución.

Evidence: crm-calls-lite, daily-closers-history-lite

fix_data_qualitydata_feedapproval required

Brecha Call → Cita por closer

2/6 calls de Juan Diego Afanador tienen cita granular enlazada. Acción sugerida: Revisar llaves/fallbacks de este closer antes de usar sus calls para coaching o atribución.

Evidence: crm-calls-lite, daily-closers-history-lite

fix_data_qualitydata_feedapproval required

Brecha Call → Cita por fuente

Comunidad/CA: 1/3 calls tienen cita enlazada. Acción sugerida: No juzgar campañas de esta fuente hasta mejorar cobertura Call→Cita o confirmar que el gap es real.

Evidence: crm-calls-lite, daily-closers-history-lite

fix_data_qualitydata_feedapproval required

Brecha Call → Cita por fuente

Google Ads: 0/3 calls tienen cita enlazada. Acción sugerida: No juzgar campañas de esta fuente hasta mejorar cobertura Call→Cita o confirmar que el gap es real.

Evidence: crm-calls-lite, daily-closers-history-lite

follow_upleadapproval required

Show/HOT sin cierre visible

Lead #ed62cb6a: tuvo show y señales de intención/cualificación, pero no hay cierre HT en pagos. Acción sugerida: Priorizar seguimiento comercial; validar next action y evidencia Fathom/GHL antes de escalar más tráfico similar.

Evidence: crm-calls-lite, daily-closers-history-lite

observecloserapproval required

Muchas citas canceladas o inválidas

Carlos Velez Unlocked: 9/14 citas quedaron canceladas/inválidas. Acción sugerida: Separar problema de calidad de lead vs agenda duplicada/ruido antes de juzgar cierres.

Evidence: daily-closers-history-lite

Lead → Call → Venta

Journeys accionables

Vista persona por persona sin PII: une cita, call/Fathom, oportunidad y pago para decidir seguimiento, gap de evidencia o patrón ganador.

postgres · 2026-05-07
criticalfollow up neededCarlos Velez Unlocked

Show/HOT sin cierre visible

Lead #ed62cb6a

Lead #ed62cb6a: tuvo show y señales de intención/cualificación, pero no hay cierre HT en pagos.

1shows2/2Fathom0HT close

Priorizar seguimiento comercial; validar next action y evidencia Fathom/GHL antes de escalar más tráfico similar.

warnmonitorDaryi Perez

Journey en observación

Lead #3682bbb6

Lead #3682bbb6: actividad granular conectada, sin señal crítica suficiente todavía.

1shows1/1Fathom0HT close

Mantener monitoreo hasta que haya show, señal HOT, pago o brecha de evidencia.

warnmonitorDaryi Perez

Journey en observación

Lead #51278a76

Lead #51278a76: actividad granular conectada, sin señal crítica suficiente todavía.

1shows1/1Fathom0HT close

Mantener monitoreo hasta que haya show, señal HOT, pago o brecha de evidencia.

warnmonitorCarlos Velez Unlocked

Journey en observación

Lead #70334dfb

Lead #70334dfb: actividad granular conectada, sin señal crítica suficiente todavía.

1shows0/0Fathom0HT close

Mantener monitoreo hasta que haya show, señal HOT, pago o brecha de evidencia.

warnmonitorDaryi Perez

Journey en observación

Lead #8c506f53

Lead #8c506f53: actividad granular conectada, sin señal crítica suficiente todavía.

1shows0/0Fathom0HT close

Mantener monitoreo hasta que haya show, señal HOT, pago o brecha de evidencia.

warnmonitorAlejandro Gallo

Journey en observación

Lead #8e6eb286

Lead #8e6eb286: actividad granular conectada, sin señal crítica suficiente todavía.

1shows0/0Fathom0HT close

Mantener monitoreo hasta que haya show, señal HOT, pago o brecha de evidencia.

Campaign Capture Contract

Contrato lead → GHL → call

Campos mínimos PII-free para convertir el bridge campaign/ad→call de 0/19 en atribución usable por campaña/ad.

2026-05-campaign-capture-v1

Campos requeridos

visitor_idghl_contact_idutm_sourceutm_campaignutm_contentcampaign_idadset_idad_idcaptured_at

Hops de persistencia

Landing/VSL forms

Capture from query params, hidden form fields, and first-party storage before submitting lead.

GHL contact/custom fields

Store campaign fields as custom fields/tags linked to contact id; do not store or expose PII in Cerebro responses.

crm-calls-lite export

Export the same campaign fields with each call row so Call → Cita and campaign/ad spend can share a deterministic bridge.

Instrumentation Rollout

Plan operativo para activar el puente

Siguiente fase práctica: qué tocar en Landing/VSL, GHL, export CRM y Cerebro para que campaign/ad→call deje de estar en 0/19 sin mutar budgets ni exponer PII.

ready_for_operator_rollout

Fase 1 · Landing/VSL

Landing/VSL hidden-field capture

A test visit with UTMs submits all required landing bridge fields with the form.

visitor_idutm_sourceutm_campaignutm_contentcampaign_id+3

Fase 2 · GHL

GHL contact custom-field persistence

A test contact shows every required bridge key on the contact/custom-field layer.

visitor_idutm_sourceutm_campaignutm_contentcampaign_id+4

Fase 3 · Dashboard export / crm-calls-lite

crm-calls-lite export bridge fields

A booked test call row contains contact id plus campaign/ad/UTM bridge fields.

visitor_idutm_sourceutm_campaignutm_contentcampaign_id+4

Fase 4 · Cerebro-Unlocked

Cerebro campaign/ad coverage gate

Decision cards show campaignBridge coverage above the success gate and stop flagging the bridge as not instrumented.

visitor_idutm_sourceutm_campaignutm_contentcampaign_id+4

Validaciones

  1. Open VSL/landing with test UTMs and confirm hidden fields retain visitor_id + campaign/ad ids before submit.
  2. Confirm GHL contact/custom fields receive the same campaign/ad ids after form submit.
  3. Confirm crm-calls-lite exports campaign/ad fields for the booked call row.
  4. Run sync:entities and verify /api/decision-cards campaignBridge moves above 0 calls with campaign signal.

Gates para recomendaciones

  • 80%+ calls with campaign/ad bridge fields before campaign/ad quality recommendations are enabled.
  • Campaign/ad ids from calls join to ad-spend rows without mutable name matching.
  • Cerebro endpoint responses remain PII-free while exposing enough evidence for operator decisions.

Llamadas

medium

22

CRM booked/created rows from dashboard daily.summary

Revenue

low

0

pending payment truth sync

Ad spend

medium

$810.71

ad_spend_daily high_ticket spend for operational day

Data Quality Center

Cobertura granular

El snapshot diario ya se descompone en entidades read-only: personas, citas, calls, oportunidades, pagos y ads. No modifica GHL, Ads ni pagos.

postgres

Personas

57

Citas

39

39 día actual

Calls

21

19 día actual

Pagos

7

4 día actual

Oportunidades

20

17 día actual

Ad touches

33

33 día actual

Daily snapshots

1

Source snapshots

74

Freshness (min)

4

ok

Source drift

0

fuentes con checksum cambiante

Findings

Freshness estable

Última captura hace 4 minutos.

Últimas fuentes capturadas

ad-spend-daily:2026-05-07

2026-05-09 15:17:47

payments-lead-join:2026-05-07

2026-05-09 15:17:47

crm-calls-lite:2026-05-07

2026-05-09 15:17:47

daily-closers-history:2026-05-07

2026-05-09 15:17:47

Granular Reconciliation

Evidencia por contrato

Compara DailyMetricSnapshot contra entidades Postgres y genera cards accionables sin mostrar nombres, emails ni teléfonos.

postgres · 2026-05-07

Contratos diarios

Citas granular vs snapshot

0

esperado 39 · observado 39

Appointment por scheduledStart del día operativo.

Show ups

0

esperado 10 · observado 10

statusNormalized=showed.

No shows

0

esperado 6 · observado 6

statusNormalized=no_show.

Canceladas

0

esperado 20 · observado 20

statusNormalized=cancelled.

Inválidas

0

esperado 3 · observado 3

statusNormalized=invalid.

Llamadas

-3

esperado 22 · observado 19

Call por startedAt del día operativo.

Pagos HT

-3

esperado 7 · observado 4

Payment por paidAt del día operativo; puede incluir reservas/partials.

Ad spend HT

0

esperado 811 · observado 811

Suma de AdTouch.evidence.spend para high_ticket.

Join coverage

Calls con cita

8

11 sin cita

Link exacto

4

contactId + startTime

Fallback persona+día

4

única cita del día

Pagos con persona

4

4 pagos

Oportunidades

17

12 cualificadas por tag

Fuentes recientes

8

con hash corto

critical

high

Snapshot y entidades no cuadran perfecto

2 contrato(s) tienen delta entre DailyMetricSnapshot y entidades granulares.

Llamadas: -3 · Pagos HT: -3

Revisar fuente/hash más reciente antes de usar estas cifras para decisiones comerciales.

Evidencia: ad-spend-daily:2026-05-07 · payments-lead-join:2026-05-07 · crm-calls-lite:2026-05-07 · daily-closers-history:2026-05-07

critical

medium

Cobertura Call → Cita

8/19 calls están enlazadas a una cita granular (4 exactas, 4 por persona+día).

42% enlazadas

Mejorar llave contactId + startTime o fallback por persona/hora para unir call con cita.

Evidencia: crm-calls-lite · daily-closers-history-lite

ok

medium

Cobertura Pago → Persona

4/4 pagos del día tienen persona asociada.

100% enlazados

Listo para usar pagos como verdad de cierres HT.

Evidencia: payments-lead-join

ok

high

Cobertura de estados terminales

39/39 citas tienen estado explicado como show/no show/cancelada/inválida.

100% explicado

Reconciliación de asistencia lista para decision cards.

Evidencia: daily-closers-history-lite

ok

medium

Cualificación por tags GHL

12/17 oportunidades tienen tags de lead calificado/VIP.

71% calificadas por tag

Usar tags como señal conservadora de calidad.

Evidencia: crm-calls-lite