Todas las funcionalidades
La API de Meta, optimizada

Meta es tan buena como lo que le dejas ver

El píxel sabe quién hizo clic. No sabe quién llegó a la llamada descalificado, ni quién se vio tu VSL entero y compró. El pixel del navegador le grita a Meta "otro formulario lleno" — y el algoritmo te trae más formularios llenos que nunca contestan. MaKo le devuelve a Meta esas conversiones reales (el CAPI) server-side y desde la verdad de tu CRM: no cuando alguien deja el mail, sino cuando califica y cuando reserva la llamada. Con identidad hasheada que sobrevive a los bloqueadores de pixel, para que Meta salga a buscar más gente como la que te paga — no más curiosos.

Meta Graph API v24.0Meta Conversions APIMeta Lead AdsCalendlySupabaseVercel Cron
Señal real a MetaImpresionesClicsLeadsCalificadosAgendaCierre
¿Lo quieres andando en tu negocio?

Agenda una llamada y te mostramos MaKo con tus propios números.

Agenda tu llamada

Cómo funciona

01

CAPI de fondo de embudo, atada al estado real del CRM

  • Dos etapas separadas, que es lo que Meta necesita para optimizar por calidad: Lead cuando entra el formulario, y SubmitApplication + QualifiedLead cuando ese lead pasa a calificado en tu CRM.
  • Calificar no exige una reunión: si filtras por WhatsApp, esa señal le llega a Meta igual. Y Schedule cuando reserva la llamada. Meta optimiza hacia gente que califica, no hacia el clic más barato.
  • Cuando el lead vino de un formulario de Meta, viaja también su lead_id: es el identificador de mayor prioridad para el match y es lo que mueve la cobertura de leads de tu cuenta.
  • Son señales server-side desde la verdad del negocio — no desde el lead crudo del navegador que cualquier bot o curioso puede inflar.
  • Honestidad: todavía no mandamos el evento Purchase por CAPI. Meta se entera del calificado y del agendado, no de la venta cerrada. No te prometemos 'optimización hacia la compra' server-side.
CRM → MetaCRMcalificado=trueCAPIserver-sideMetaoptimiza agenda
02

Identidad hasheada que sobrevive al bloqueo de pixel

  • Email (lowercase + trim) y teléfono (solo dígitos) viajan como SHA-256. Meta recibe la identidad para hacer match, nunca el dato en claro.
  • El evento Schedule usa un event_id determinístico con action_source='website', listo para deduplicar contra el pixel si dispara el mismo id.
  • Si el visitante bloquea el pixel del navegador, el evento igual llega por el servidor. La señal no depende de que el browser coopere.
Identidad hasheadaEmailana@mail.com→a1b2c3…Teléfono5544332211→9f8e7d…
03

CAPI que jamás rompe tu operación

  • sendMetaCAPIEvent nunca lanza excepción: si falta el token, la red falla o Meta responde no-200, lo registra y sigue.
  • Y si Meta rechaza la conversión —contesta 200 con el error adentro—, queda escrito en el historial del lead. Un rechazo que solo va al log es un rechazo que nadie ve.
  • Tu lead se guarda igual aunque Meta esté caído. La venta nunca se cae por un problema de tracking.
  • Doble guardia try/catch alrededor del disparo, para que ni un bug futuro en esta capa toque el flujo del negocio.
Venta sigue en pie
04

Ingesta diaria de insights, con la retención del VSL por cuartiles

  • Trae por anuncio y por día: gasto, CPM, CPC, CTR y leads hacia marketing_metrics_daily.
  • Extrae la retención de video por cuartiles — video 3s, ThruPlay, p25/p50/p75/p100 y segundos promedio vistos — para saber en qué segundo se cae el espectador de tu VSL, creativo por creativo.
  • Cuenta leads sin doble-contar: toma lead del instant form y si no está cae a onsite_conversion.lead_grouped, pero nunca suma los dos (es el mismo evento).
  • Guarda un snapshot diario de presupuesto por adset en MXN, porque Meta solo expone el valor actual y no el histórico (los adsets con CBO quedan en NULL).
Retención VSL
05

Lead Ads con doble red: webhook firmado + polling

  • Webhook en tiempo real verificado con HMAC-SHA256 (timingSafeEqual) contra tu app secret. Si la firma no valida, no entra.
  • Un cron diario repasa los formularios de los últimos días (Meta retiene 90) como red de seguridad si el webhook se perdió algo.
  • Todo deduplicado por meta_lead_id: re-correr no duplica. El mismo motor de polling hace el backfill histórico del onboarding (?dias=90).
  • Cada lead que entra dispara los avisos y flujos de MaKo — no es solo almacenamiento.
WhatsAppAAnaR122hventana 24hBBrunoAgendó15hventana 24hCCaroNuevo8hventana 24h
06

Multi-tenant fail-closed y a prueba de rate-limit

  • Credenciales por workspace (BYOK): cada cliente carga las suyas. El webhook resuelve el workspace por page_id y si no mapea NO ingiere el lead — jamás cae al dueño de la plataforma.
  • Ante rate-limit (code 17), backoff exponencial 1-2-4-8-16s, hasta 5 intentos. Errores tipados: token vencido (190)→401, rate-limit→429, resto→502.
  • Enriquece cada creativo eligiendo la imagen de mayor resolución disponible (evita el thumbnail crudo de ~64px) más el permalink de IG/FB, en paralelo por chunks de 10 para respetar el límite.
EAAB••••••••3f9↓Reconocimos tu cuentaAds · Elevate MX
¿Lo quieres andando en tu negocio?

Agenda una llamada y te mostramos MaKo con tus propios números.

Agenda tu llamada

De meses por debajo de $10k USD a más de $70k USD en tres meses.

Sin cambiar la oferta. Sin cambiar el funnel.

Mauricio, en vivo

Mauricio no era ningún novato. Más de 20 años de trayectoria, más de 30 mil seguidores y videos con millones de vistas. Desde afuera, todo parecía estar bien.

Pero vendía por impulsos: un mes bien, dos flojos, y nunca sabía por qué. Miraba Meta por un lado, Calendly por otro, y el resto lo cargaba a mano en un Excel que rehacía cada vez.

El resultado: de meses por debajo de los $10k a más de $70k en tres meses, de forma consistente. 14k en abril, 20k en mayo, +40k en junio. La misma oferta. El mismo funnel. Lo único que cambió fue que empezó a decidir con datos.

No existe ningún método estándar que hubiera resuelto el caso de Mauricio.

Ninguna app de marketing lo habría resuelto.No existe una pensada para vender High Ticket: todas le mostraban datos sueltos, nunca su negocio completo ni qué hacer con ellos.
Ningún curso de anuncios lo habría sacado adelante.Te enseñan una fórmula que funcionó en otro negocio, no la lectura de lo que estaba pasando, en vivo, dentro del suyo.
Un media buyer le habría subido el presupuesto.Indefinidamente, creyendo que gastar más lo arregla todo — sin ver que escalaba una campaña que nunca iba a funcionar.
Lo que Mauricio necesitaba era alguien que se metiera de verdad en su negocio y tomara, con datos, las decisiones correctas para su caso.

No para un caso genérico. Para el suyo. Eso es lo que hago contigo.

Mauricio presentando en vivoMartín Koncke junto a MauricioMauricio con su equipo