Blog · · 7 min de lectura
Cómo reactivar clientes inactivos con n8n e IA (sin programar)
Guía paso a paso para que n8n detecte cada semana a los clientes que hace tiempo que no vuelven, la IA les escriba un email personal y breve, y tú veas quién regresa. Sin código.

Conseguir un cliente nuevo cuesta mucho más que recuperar a uno que ya te conoce. Y, sin embargo, casi todos los pequeños negocios tienen una lista larga de clientes que vinieron dos o tres veces y desaparecieron. No se fueron enfadados: simplemente se les olvidó, cambiaron de rutina o nadie les volvió a escribir.
En esta guía montarás en n8n un flujo que revisa cada lunes tu hoja de clientes, encuentra a los que llevan demasiado tiempo sin volver, pide a la IA un email corto y personal para cada uno, te lo deja para revisar o lo envía, y apunta quién ha recibido el mensaje para no insistir de más. Tú decides el tono y el ritmo; n8n se encarga de no olvidarse de nadie.
Si ya mandas una encuesta de satisfacción después de cada servicio, este flujo es el siguiente paso natural: la encuesta cuida al cliente que acaba de venir y la reactivación recupera al que dejó de hacerlo.
Qué vas a construir
Un flujo semanal con estos pasos:
- Un Schedule Trigger los lunes por la mañana.
- Google Sheets lee tu lista de clientes.
- Un nodo Filter se queda solo con los inactivos que se pueden contactar.
- Un nodo Limit corta la lista a un número manejable cada semana.
- Un Basic LLM Chain escribe el asunto y el cuerpo de cada email.
- Gmail crea un borrador (o lo envía, cuando ya confíes en el flujo).
- Google Sheets marca la fecha de contacto en la fila del cliente.
Lo que necesitas
- Una instancia de n8n (en la nube o en tu servidor).
- Gmail y Google Sheets conectados a n8n con OAuth2.
- Una clave de API de un proveedor de IA con un límite de gasto puesto.
- Una hoja «Clientes» con columnas
id,nombre,email,ultima_visita(fecha en formato AAAA-MM-DD),servicio_habitual,visitas,bajayultimo_contacto. - Un enlace para reservar o pedir: tu calendario de citas, tu tienda online o, como mínimo, tu WhatsApp.
Lo más importante es que ultima_visita esté al día. Si ya registras ventas o citas en otra hoja, añade al final de ese flujo un Google Sheets (Update Row) que actualice esta columna. Sin ese dato, el flujo no sabe a quién echar de menos.
Paso 1: define qué es «inactivo» en tu negocio
No hay un número universal. Piensa en cada cuánto vuelve un cliente normal:
- Peluquería o estética: cada 4–8 semanas. Inactivo a partir de 75–90 días.
- Clínica de fisioterapia o dental: depende del tratamiento; revisiones cada 6 meses. Inactivo a partir de 7–8 meses.
- Restaurante o cafetería con clientes habituales: inactivo a partir de 45–60 días.
- Tienda online: mira el tiempo medio entre dos pedidos de un mismo cliente y multiplica por dos.
Empieza con una regla sencilla, por ejemplo 90 días sin venir y al menos 2 visitas. Un cliente que vino una sola vez es otro caso: ahí encaja mejor un email de bienvenida y seguimiento a clientes nuevos.
Paso 2: lee la hoja cada lunes
Crea un flujo nuevo con un Schedule Trigger semanal, los lunes a las 9:00. Después, un Google Sheets (Get Row(s)) sobre la hoja «Clientes», sin filtros: lo filtrarás en el paso siguiente con más control.
¿Por qué los lunes y no cada día? Porque así revisas los borradores en un solo rato a la semana y el volumen se mantiene bajo y predecible.
Paso 3: filtra a quién escribir
Añade un nodo Filter con estas condiciones, todas obligatorias (AND):
ultima_visitaanterior a hace 90 días. En el campo de la izquierda usa una expresión como{{ DateTime.fromISO($json.ultima_visita) < $now.minus({ days: 90 }) }}y compárala con is true.visitasmayor o igual que 2.bajavacío.emailno vacío.ultimo_contactovacío o anterior a hace 120 días, con una expresión parecida. Esta regla es la que evita ser pesado: como mucho, un email de reactivación cada cuatro meses por persona.
Después, un nodo Limit con un máximo de 15 o 20 clientes por semana. Así no envías cien correos de golpe desde tu cuenta de Gmail, el gasto en IA queda acotado y, si alguien responde, tienes tiempo de atenderle bien.
Paso 4: la IA escribe un email corto y humano
Conecta un Basic LLM Chain con un prompt como este:
Eres quien atiende un pequeño negocio llamado [NOMBRE DEL NEGOCIO], de [SECTOR]. Escribe un email breve para un cliente que hace tiempo que no viene. Datos: nombre {{ $json.nombre }}, servicio habitual {{ $json.servicio_habitual }}, última visita {{ $json.ultima_visita }}. Reglas: tono cercano y natural, de tú; máximo 80 palabras; sin reproches, sin dramatismo y sin «te echamos de menos» exagerados; menciona su servicio habitual; termina con una única invitación clara a reservar en [ENLACE]; no inventes ofertas, descuentos ni novedades que no estén aquí: [NOVEDADES REALES O «ninguna»]. Responde solo con JSON: {"asunto": máximo 7 palabras, "cuerpo": texto del email}.
Activa Require Specific Output Format con un Structured Output Parser para que lleguen siempre los dos campos. Rellena los huecos con datos reales de tu negocio. La regla de no inventar ofertas es clave: si la IA promete un 20 % que no existe, el problema lo tienes tú en el mostrador.
Al final del cuerpo añade siempre, fuera de la IA (con un Edit Fields (Set) que concatene el texto), una línea fija: «Si prefieres que no te escribamos más, responde a este email con BAJA». Así nunca depende del modelo.
Paso 5: borrador primero, envío después
Usa Gmail con la operación Create Draft (crear borrador), con el email del cliente como destinatario y el asunto y cuerpo de la IA. Las primeras semanas, revisa los borradores el lunes y envíalos tú. Corriges lo que suene raro y ajustas el prompt.
Cuando lleves varias semanas sin tocar casi nada, cambia la operación a Send si quieres. Envía desde tu dirección habitual, no desde una «noreply»: muchas respuestas serán del tipo «¡es verdad! ¿tienes hueco el jueves?», y quieres verlas.
Si ya tienes montado el flujo para responder emails con borradores de IA, esas respuestas entrarán solas en él.
Paso 6: apunta el contacto y mide quién vuelve
Termina con Google Sheets (Update Row), buscando por id, que escribe la fecha de hoy en ultimo_contacto. Es lo que hace funcionar la regla de los 120 días del paso 3.
Para saber si sirve, añade una columna volvio. Cuando un cliente contactado reserve o compre de nuevo y se actualice su ultima_visita, márcala. Al cabo de dos o tres meses, cuenta cuántos de los contactados han vuelto. Ese número, y no una intuición, te dirá si merece la pena ajustar el plazo, el mensaje o el día de envío.
Para las bajas, lo más sencillo: cuando alguien responda BAJA, escribe «sí» en la columna baja. Si quieres automatizarlo, un Gmail Trigger que busque respuestas con esa palabra puede actualizar la fila por ti.
Pruébalo sin molestar a nadie
- Duplica la hoja y deja solo cinco filas de prueba con tu propio email (o variantes como
tu+1@gmail.com). - Pon fechas variadas: dos con más de 90 días, una con 30 días, una con
baja= sí y una conultimo_contactode la semana pasada. - Ejecuta el flujo a mano. Deberían salir exactamente dos borradores.
- Lee los emails: ¿suenan a ti?, ¿mencionan el servicio correcto?, ¿llevan el enlace y la línea de baja?
- Ejecútalo otra vez. Ahora no debería salir ninguno, porque
ultimo_contactoya está relleno. - Cuando todo cuadre, apunta el flujo a la hoja real, deja Gmail en modo borrador y actívalo.
Ideas para ir más allá
- Por WhatsApp en vez de email: para negocios donde el cliente vive en WhatsApp, puedes mandar el mensaje con la API oficial. Ojo: para iniciar tú la conversación Meta exige plantillas aprobadas; revisa sus normas antes. Tienes la base en la guía para conectar WhatsApp Cloud API con n8n.
- Enlace directo a reservar: si gestionas citas con reservas en Google Calendar con n8n, el email puede llevar a ese flujo y la nueva cita actualizará
ultima_visitasola. - Segmentos: un prompt distinto para clientes de muchas visitas (más cercano) y para los de dos o tres.
Coste y límites
- Coste: una llamada corta a la IA por cliente contactado. Con 15–20 a la semana es muy poco; revisa los precios actuales de tu proveedor de IA y de n8n.
- Legalidad: en España, la LSSI (art. 21) permite enviar comunicaciones comerciales por email a clientes con los que ya tienes relación, sobre productos o servicios similares a los que te compraron, si les diste la opción de oponerte al recoger sus datos y cada email incluye una forma sencilla de darse de baja. Si tu caso no encaja, o tienes dudas, pide el consentimiento o consulta a un profesional. Menciónalo en tu política de privacidad.
- Límites de Gmail: una cuenta personal tiene un tope diario de envíos. Con el nodo Limit estás muy lejos, pero no lo uses para campañas masivas: para eso existen las herramientas de email marketing.
- La IA redacta, tú decides: el flujo sirve para no olvidarte de nadie. Si un cliente dejó de venir por una mala experiencia, un email automático no lo arregla; una llamada, quizá sí.
Empieza con plantillas listas
Si quieres ahorrarte la configuración base de n8n e IA, descarga gratis el agente de WhatsApp o mira el pack AgentKiosk: 8 agentes listos para importar, incluido uno de citas y reservas con Google Calendar. Este flujo de reactivación lo montas al lado con los pasos de arriba y encaja con él: el email invita a volver y el agente de reservas recoge la cita.


