El problema que resuelve
Heredaste (o compraste, o exportaste) una lista de miles de emails. No traen nombre, ni empresa, ni puesto. Así no sirven: no puedes segmentar, no puedes personalizar, y mandarles el mismo mensaje genérico quema tu dominio.
Enriquecer eso a mano es imposible — nadie va a buscar 10,000 emails uno por uno. Y hacerlo mal a escala es peor: si disparas 10,000 llamadas a la API sin control, revientas el rate limit, pagas de más por duplicados, y te quedas sin saber cuáles fallaron.
El playbook resuelve las dos cosas: enriquece la lista completa y lo hace de forma que escala. Procesa por lotes, reintenta los que fallan, evita duplicados y te dice cuánto va costando. Al final tienes una base con nombre, empresa, puesto y teléfono por cada email que tuvo match.
El stack
FullEnrich para el reverse lookup (email → identidad completa)
n8n para orquestar el procesamiento por lotes
Airtable o una base local (SQLite) como destino de los datos enriquecidos
Costo: ~$0.01 a $0.05 por email según el volumen y el tipo de dato. Una lista de 10,000 emails cuesta entre $100 y $500 — muchísimo menos que el valor de tener esos contactos segmentables.
El flujo paso a paso
1. Cargar la lista
Los emails entran desde un CSV o una tabla de Airtable. El flujo los lee y los pone en cola. Antes de procesar, deduplica: si un email aparece dos veces, se enriquece una sola vez para no pagar doble.
2. Procesar por lotes
Aquí está la diferencia entre un flujo de juguete y uno serio. En vez de disparar 10,000 llamadas de golpe, el flujo procesa en lotes (por ejemplo, 100 a la vez), respetando el rate limit de FullEnrich. Cada email pasa por el reverse lookup y devuelve nombre, empresa, puesto, ubicación y teléfono.
3. Reintentar los fallos
Algunos emails fallan por rate limit temporal o timeout, no porque no tengan datos. El flujo separa "falló de verdad" de "falló por saturación" y reintenta los segundos. Sin esto, pierdes datos válidos por ruido de la red.
4. Guardar incrementalmente
Los resultados se escriben conforme llegan, no al final. Si el proceso se interrumpe en el email 6,000 de 10,000, no pierdes el trabajo — retomas desde donde quedó. A escala, esto es la diferencia entre terminar y empezar de cero.
5. Exportar la base segmentable
Al terminar, tienes una tabla con cada email y su perfil. Ahora sí puedes segmentar (por puesto, por industria, por tamaño de empresa) y decidir a quién escribirle y qué decirle. La lista muerta quedó viva.
Variables de entorno necesarias
FULLENRICH_API_KEY = tu API key de FullEnrich
BATCH_SIZE = cuántos emails por lote (ej. 100)
AIRTABLE_TOKEN = tu personal access token (si el destino es Airtable)
Implementación por plataforma
n8n + SQLite (recomendado para volumen alto)
Para cientos de miles de registros, una base SQLite local es más rápida y barata que Airtable. n8n maneja los lotes y escribe a SQLite. Al final exportas a CSV. Es el setup para cuando el volumen es serio.
n8n + Airtable
Para volúmenes medianos (hasta decenas de miles), Airtable como destino es más cómodo: ves el progreso en tiempo real y segmentas con vistas. Cuidado con el límite de registros del plan Free.
Script custom
Si tu volumen es de millones, a veces conviene un script directo contra la API de FullEnrich (Python o Node) en vez de n8n, para máximo control del batching y menor overhead. El playbook aplica igual, cambia el motor.
Cuándo NO usar este playbook
Si tu lista es de unos cientos de emails, no necesitas la maquinaria de lotes y reintentos — el playbook de enriquecer contacto nuevo uno por uno alcanza. El reverse lookup masivo gana cuando el volumen es tan grande que hacerlo sin control te haría perder datos o dinero.
¿Listo para implementar este sistema?
He ayudado a decenas de empresas a escalar su autoridad mediante procesos inteligentes. Podemos hacer lo mismo por ti.