Crea un agente de voz con IA en GoHighLevel que llame a cada lead en menos de 60 segundos


Automatizar el speed to lead significa que un nuevo lead recibe una llamada en el momento en que envía tu formulario, se cualifica y se le concierta una cita antes de que tenga tiempo de llamar a la competencia. (Si quieres conocer los argumentos de por qué importa el speed to lead, empieza por ahí). Esta guía monta el sistema con GoHighLevel y Retell AI: un formulario de GoHighLevel activa un workflow, el workflow inicia una llamada saliente y un agente de voz con IA reserva directamente en tu calendario de GoHighLevel.
El ejemplo es una empresa ficticia de climatización, Comfort Air Demo. Un propietario solicita un presupuesto para sustituir su aire acondicionado, el teléfono suena en cuestión de segundos y el agente le pregunta qué le pasa al equipo, si es propietario de la vivienda y cuándo quiere sustituirlo. Después consulta la disponibilidad real y reserva una consulta de 30 minutos. Todos los prompts utilizados están en esta página, listos para copiar, así que acabarás con un sistema automatizado de seguimiento de leads que funciona con llamadas, no solo con SMS y correos electrónicos.
El vídeo de abajo muestra el mismo montaje, de principio a fin. Los pasos y los prompts de esta página coinciden con él, así que puedes tenerla abierta en otra pestaña e ir copiando sobre la marcha.
Cinco sistemas se pasan el relevo en un orden fijo:
Nadie de tu equipo tiene que intervenir. El primer contacto del lead con tu negocio es una llamada saliente con IA que termina con una cita concertada. Es el mismo modelo que ISpeedToLead aplica a escala; descubre cómo ISpeedToLead escaló la respuesta a leads 24/7.
El agente reserva en un calendario real, así que créalo primero. En GoHighLevel, abre Calendars → Calendar Settings y crea un nuevo calendario para la cita que quieres concertar. Define la duración de la reunión (30 minutos en este montaje), la URL de reserva y tu disponibilidad.
La disponibilidad importa más de lo que parece. El agente solo puede ofrecer los huecos que este calendario muestra como libres, así que si tu horario es muy reducido, todos los que llamen escucharán las mismas tres opciones.
Puedes crear el formulario a mano, pero GoHighLevel AI Studio crea el formulario y su landing page a partir de un solo prompt. Abre AI Studio y pega esto, sustituyendo los datos por los de tu negocio:
Crea o actualiza una página de captación de leads para Comfort Air Demo, una empresa ficticia de climatización. Si este proyecto ya tiene una página, mantén su diseño actual.
Usa el título Solicita un presupuesto para sustituir tu aire acondicionado. Incluye First Name, Phone, ZIP Code y Service Needed, con la sustitución del aire acondicionado como opción de la demo. Haz obligatorios el nombre y el teléfono. Añade una máscara de formato de teléfono de EE. UU. y asegúrate de que el teléfono de contacto usado para las llamadas salientes incluya el prefijo del país. Pon en el botón el texto Solicitar mi presupuesto.
Conecta el formulario a mi subcuenta de GHL mediante el flujo de conexión al CRM compatible. Muestra cómo se asignan los cuatro campos al contacto. Tras el envío, muestra: ¡Gracias! Nuestro asistente de IA te llamará en breve para hablar de tu solicitud.
No muestres un selector de calendario ni un segundo paso de reserva. Mantén intacto el calendario de reservas Hvac existente; el agente de Retell reservará durante la llamada. No añadas un receptor de webhook en el sitio. Configuraré por separado el workflow de llamada de GHL a Retell.
Identifica los pasos de conexión manuales e indícame cómo publicar y probar el formulario. Informa de lo que está verificado y de lo que aún falta por probar.
La línea más importante es la del prefijo del país. Retell marca los números en formato E.164, como +15551234567. Un formulario que guarde (555) 123-4567 activará el workflow, pero la llamada fallará igualmente.
Mantén el texto de consentimiento en el formulario. El formulario del vídeo indica que, al enviarlo, el lead acepta recibir una llamada sobre su presupuesto. En EE. UU., las llamadas con IA a leads están sujetas a la TCPA, así que lee las normas de la TCPA para llamadas salientes con IA antes de usarlo con tráfico real.
AI Studio te pregunta si quieres conectar el formulario a tu CRM. Di que sí, para que los envíos creen contactos en GoHighLevel. Publica la página y abre su URL independiente para comprobar que el formulario funciona.
Retell se conecta a GoHighLevel con dos valores: un token de Private Integration y el Location ID de la subcuenta. La página de la integración de Retell con GoHighLevel recoge todo lo que admite la conexión.
En el vídeo se seleccionan todos los scopes para que la demo sea breve. En una cuenta real, concede solo los que usa el montaje:
| Scope | Qué cubre |
|---|---|
contacts.readonly, contacts.write | La prueba de conexión, las búsquedas de contactos y la nota posterior a la llamada |
calendars.readonly | Check Availability y el listado de tus calendarios al configurar las herramientas |
calendars/events.readonly, calendars/events.write | Reservar, reprogramar y cancelar citas |
locations/customFields.readonly | Leer campos personalizados como Service Needed y ZIP Code |
La lista completa de scopes está en la documentación de conexión con GoHighLevel. Si más adelante el cuadro de configuración de una herramienta aparece vacío, casi siempre se debe a que falta un scope.
Conductor, el copiloto de IA de Retell, crea el agente por ti. Describes el agente, propone un plan y no cambia nada hasta que lo apruebas. Abre Conductor y pega:
Crea un nuevo borrador de agente de voz saliente con flujo de conversación llamado Comfort Air Demo Speed to Lead para una empresa ficticia de climatización. Hace el seguimiento de las personas que acaban de enviar un formulario de GHL solicitando un presupuesto para sustituir su aire acondicionado. Su objetivo es cualificar la solicitud y concertar una consulta telefónica de 30 minutos en nuestro calendario de presupuestos.
Usa estas variables dinámicas de entrada: {{first_name}}, {{service_requested}}, {{zip_code}} y {{ghl_contact_id}}. Usa America/New_York como zona horaria de la demo y confirma la zona horaria del lead antes de reservar. Si falta una variable, pregunta de forma natural en lugar de leer el marcador en voz alta.
Empieza con: Hola, {{first_name}}, soy Alex, el asistente de IA de Comfort Air Demo. Acabas de solicitar ayuda con {{service_requested}}. ¿Es buen momento para un par de preguntas rápidas?
Da respuestas breves y haz una sola pregunta cada vez. Averigua qué le pasa a su aire acondicionado, si es propietario de la vivienda y cuándo quiere sustituirlo. Usa la información que ya ha facilitado. Si le interesa una consulta de presupuesto, pregúntale qué día y hora prefiere, consulta la disponibilidad real, ofrécele las opciones disponibles y reserva solo después de que elija un hueco. Confirma la fecha, la hora y la zona horaria exactas solo cuando la herramienta de reserva se haya ejecutado correctamente.
Permite que la persona interrumpa y cambie sus preferencias. Si es la persona equivocada, discúlpate y finaliza la llamada sin revelar más datos del lead. Si rechaza la oferta o pide que no se le vuelva a llamar, detén la presentación y registra ese resultado. Si un hueco solicitado no está disponible, ofrece alternativas. Si la reserva falla, explica que no está confirmada y registra que hace falta un seguimiento. Nunca te inventes precios, citas ni acciones completadas.
Configura el buzón de voz para que finalice la llamada en esta demo.
Crea un flujo claro con pasos de conversación y de función etiquetados. Muestra los cambios propuestos para revisarlos. Identifica cualquier conexión de herramientas que falte o ajustes manuales. Deja el agente como borrador y no inicies ninguna llamada.
Las cuatro variables dinámicas son la forma en que el agente sabe a quién llama. El workflow de GoHighLevel las rellena al iniciar la llamada, de modo que el agente empieza con el nombre del lead y el servicio que ha solicitado.
Conductor responde con un plan: el flujo de la llamada, cómo gestionará llamadas de ejemplo y los campos de datos. Responde para continuar y creará un borrador de agente con un subflujo Book Consultation. En este punto, sus herramientas de reserva son marcadores provisionales, así que a continuación se sustituyen por las herramientas reales de GoHighLevel.
El primer borrador de Conductor usa funciones personalizadas provisionales para la disponibilidad y la reserva, porque no puede saber qué calendario usas. Abre las funciones del agente y añade las herramientas nativas de GoHighLevel:
Después, devuelve el resto de la configuración a Conductor:
Sustituye las funciones personalizadas provisionales check_availability y book_appointment del subflujo Book Consultation por las herramientas Check Availability y Book Appointment de GoHighLevel que acabo de añadir, ambas configuradas con mi calendario de reservas Hvac. Book Appointment debe usar {{ghl_contact_id}} como ID de contacto. Elimina la función personalizada provisional record_outcome; los resultados deben proceder del análisis posterior a la llamada.
Añade campos de análisis posterior a la llamada para call_outcome (booked, declined, wrong_person, do_not_call, voicemail, follow_up_needed), ac_issue, owns_home, replacement_timeline y appointment_booked. Establece appointment_booked en true solo si la reserva se ha completado correctamente. Configura un workflow posterior a la llamada con Create Note para guardar el resumen y el resultado de la llamada en el mismo contacto de GHL. Conserva los resultados de persona equivocada y de no llamar para que los gestione el workflow externo.
Muestra los cambios propuestos. Si no puedes configurar directamente alguna herramienta nativa, la selección del calendario, la asignación de campos o algún paso posterior a la llamada, dame los pasos manuales exactos. Identifica claramente cualquier elemento que siga sin conectar. No te inventes credenciales ni uses endpoints ficticios.
Revisa los cambios y acéptalos. La nota posterior a la llamada usa la herramienta Create Note de GoHighLevel como función posterior a la llamada, de modo que cada llamada deja un resumen en la ficha de contacto del lead. Los campos de resultado proceden del análisis posterior a la llamada.
Las pruebas de simulación enfrentan al agente con un interlocutor de IA que interpreta un escenario, para que detectes los caminos rotos antes que un lead real. Pídele a Conductor:
Crea y ejecuta un conjunto de pruebas de simulación para este agente con estos seis casos: el propietario reserva correctamente, el lead cambia el día preferido a mitad de la llamada, responde la persona equivocada, solicitud de no llamar, error de la herramienta de reserva y no hay huecos disponibles. Para cada caso, indica cómo sería un resultado superado antes de ejecutarlo. Muéstrame los resultados en una tabla y, para cualquier caso que falle o dé error, explica la causa y propón la corrección para revisarla.
En el montaje grabado, cinco de seis se superaron en la primera ejecución:
| Caso de prueba | Primera ejecución |
|---|---|
| El propietario reserva correctamente | Superado |
| El lead cambia el día preferido a mitad de la llamada | Superado |
| Responde la persona equivocada | Superado |
| Solicitud de no llamar | Superado |
| Error de la herramienta de reserva | Superado |
| No hay huecos disponibles | Error |
El error reveló una carencia real: el flujo no tenía ningún camino para una respuesta de disponibilidad vacía. El prompt de corrección:
El caso No hay huecos disponibles ha dado error. Añade un camino para cuando Check Availability no devuelva huecos libres: dile a la persona que no hay nada disponible en esa franja, ofrécete a consultar otro día, reintenta como máximo 3 veces y, después, ofrece una llamada del equipo y registra follow_up_needed. Muestra el cambio para revisarlo y vuelve a ejecutar solo esa prueba.
Las ejecuciones de simulación se facturan según el uso del LLM, y Conductor te pregunta antes de iniciarlas. Consulta pruebas con Conductor para ver cómo se crean y se tarifican los conjuntos de pruebas. Cuando todos los casos estén en verde, publica el agente.
La última pieza inicia la llamada. En GoHighLevel, abre Automation → Workflows y haz clic en Build with AI. Pega esto, sustituyendo los dos marcadores entre corchetes angulares:
Crea un borrador de workflow llamado "Comfort Air Demo: del formulario a la llamada de Retell".
Cuando alguien envíe mi formulario de presupuesto de Comfort Air Demo existente, envía inmediatamente una única solicitud de llamada saliente a Retell con los datos de ese contacto.
Usa AI Studio Form Submitted, filtrado por mi proyecto y mi formulario de presupuesto exactos. Si este formulario usa External Tracking, usa en su lugar su trigger de envío verificado. Si no puedes identificar el formulario, deja esa selección sin resolver y dime qué debo seleccionar.
Añade una acción Custom Webhook llamada "Iniciar llamada de Retell": URL https://api.retellai.com/v2/create-phone-call, método POST, Content-Type application/json, token Authorization Bearer; deja la credencial para que la introduzca yo. Usa el cuerpo JSON de abajo.
Asigna Service Needed y ZIP Code usando los campos de contacto reales de mi cuenta. No te inventes claves de campo. Continúa solo si el contacto tiene número de teléfono. Permite el reingreso para que pueda repetir la demo con mi propio número.
Retell cualificará el lead y reservará en mi calendario de reservas Hvac existente. Mantén este workflow sin publicar. Muéstrame todos los campos o credenciales que debo completar manualmente y no afirmes que se ha probado.
El cuerpo del webhook:
{
"from_number": "",
"to_number": "{{contact.phone}}",
"override_agent_id": "",
"retell_llm_dynamic_variables": {
"first_name": "{{contact.first_name}}",
"service_requested": "",
"zip_code": "",
"ghl_contact_id": "{{contact.id}}",
"system_timezone": "America/New_York"
}
} from_number es un número tuyo en Retell y override_agent_id es el agente que publicaste tras las pruebas. Usa el selector de variables de GoHighLevel para los campos Service Needed y ZIP Code, de modo que se resuelvan en valores reales y no en texto literal. Todos los valores de las variables dinámicas deben ser cadenas de texto.
Elige el trigger que corresponda a tu formulario. Un formulario creado con el editor de formularios de Sites de GoHighLevel usa el trigger Form Submitted. Un formulario creado en AI Studio usa AI Studio Form Submitted, o el trigger de seguimiento externo si el formulario registra los envíos de esa manera. El resto del workflow es idéntico.
El workflow terminado tiene tres partes: el trigger del formulario, una comprobación del número de teléfono y el webhook que inicia la llamada.
Un signo de exclamación rojo en la acción del webhook. El generador de IA de GoHighLevel rellena el cuerpo JSON, pero deja vacío el campo de URL del webhook. Pega https://api.retellai.com/v2/create-phone-call en URL, configura Authorization como Bearer con tu clave de API de Retell y guarda. El error desaparece.
"Failed, Retry Limit Reached" en el registro de ejecución. Abre el Execution History del workflow, haz clic en la ejecución fallida y abre el paso del webhook para leer la respuesta de Retell. Las causas habituales, por orden:
Corrige una cada vez y vuelve a enviar el formulario. Como el workflow permite el reingreso, puedes seguir probando con tu propio número.
Publica el workflow, abre el formulario y envíalo con tu propio número. El teléfono debería sonar en menos de un minuto. Responde como si fueras un propietario, elige un hueco y comprueba tres sitios: la cita en tu calendario de GoHighLevel, la grabación y la transcripción de la llamada en el historial de llamadas de Retell, y la nota en el contacto de GoHighLevel.
Si están las tres, cada nuevo lead de ese formulario recibirá ahora una llamada antes de que pueda rellenar el formulario de la competencia.
Consulta la integración de Retell con GoHighLevel para ver todo lo que admite la conexión, o la reserva de citas con IA para conocer los demás calendarios en los que reserva Retell.
En menos de un minuto, y normalmente en segundos. El workflow se activa en el momento en que se envía el formulario y Retell empieza a marcar en cuanto llega el webhook. En la demo grabada, el teléfono sonó antes de que terminara de cargarse el mensaje de confirmación.
No. Este montaje usa GoHighLevel para el formulario, el contacto, el calendario y el workflow, y Retell AI para el agente de voz y la llamada. El Voice AI integrado de GoHighLevel es un producto independiente. Los equipos eligen un agente de Retell cuando quieren un flujo de conversación nodo a nodo, pruebas de simulación antes del lanzamiento y campos de análisis posterior a la llamada definidos por ellos mismos, manteniendo GoHighLevel como CRM.
Sí. Las herramientas nativas de GoHighLevel de Retell consultan la disponibilidad y conciertan citas en un calendario de la subcuenta conectada. La cita queda vinculada al contacto y se crea con el estado confirmado.
El agente se disculpa y finaliza la llamada sin compartir datos del lead, o detiene la presentación ante una solicitud de no llamar. Ambos resultados se registran en el análisis posterior a la llamada y se escriben en la nota del contacto, para que tu equipo pueda actuar en consecuencia.
Sí. Cambia el nombre del negocio, el servicio y las preguntas de cualificación en el prompt de Conductor, y los campos del formulario en el prompt de AI Studio. El workflow y el webhook son los mismos para cualquier negocio de servicios que concierte consultas.
Descubre cuánto podría ahorrar tu empresa al pasar a agentes de voz impulsados por IA.
Total Human Agent Cost
AI Agent Cost
Estimated Savings
Un número de teléfono de demostración de Retell Clinic Office

Start building smarter conversations today.




