Automatizar Publicación en Redes Sociales con n8n: Instagram, Twitter/X, LinkedIn y TikTok
Manejar redes sociales para un negocio es un trabajo de tiempo completo. Crear contenido, adaptarlo a cada plataforma, publicar en los horarios óptimos, responder comentarios, analizar métricas. Si sos emprendedor o tenés un equipo chico, probablemente estés haciendo todo esto a mano, y te está consumiendo horas que podrías dedicar a cosas más importantes.
Yo manejaba las redes de Trinico Ventures y de dos clientes simultáneamente. Eran entre 8 y 12 publicaciones semanales por cuenta, y me llevaba unas 6 horas por semana solo la parte de publicación y distribución. Hoy, con n8n, ese proceso toma cero horas de mi tiempo. Creo el contenido una vez, y n8n se encarga de adaptarlo y publicarlo en todas las plataformas automáticamente.
En esta guía te muestro exactamente cómo armé este sistema.
La estrategia: crear una vez, publicar en todos lados
Antes de meternos en la parte técnica, quiero explicar la filosofía detrás de este sistema. No se trata de publicar exactamente lo mismo en todas las redes (eso se ve mal y los algoritmos lo penalizan). Se trata de crear un contenido base y que n8n lo adapte automáticamente al formato y tono de cada plataforma.
Por ejemplo, si escribo un artículo en mi blog sobre automatización:
Para LinkedIn, n8n genera un post profesional de 3 a 4 párrafos con insights del artículo, orientado a un público corporativo y con un llamado a acción para leer el artículo completo.
Para Twitter/X, n8n crea un hilo de 3 a 5 tweets que resumen los puntos clave del artículo, con un formato más directo y casual.
Para Instagram, n8n genera el texto para un carrusel con los puntos principales, optimizado para engagement, con hashtags relevantes.
Para TikTok, n8n genera un guión corto basado en el contenido que puedo grabar rápidamente.
Todo esto desde un solo contenido base. El ahorro de tiempo es masivo.
Configurando n8n para redes sociales
Lo primero que necesitás es tu instancia de n8n funcionando. Si todavía no tenés una, podés empezar con n8n acá y seguir este tutorial paso a paso.
Las credenciales que vas a necesitar
Cada red social tiene su propio sistema de APIs y autenticación. Esto es lo que necesitás para cada una:
Twitter/X: Una cuenta de desarrollador en el Twitter Developer Portal. Necesitás crear un proyecto y una app, y obtener las credenciales OAuth 2.0: Client ID y Client Secret, además del Bearer Token para operaciones de lectura. El proceso de aprobación puede tardar unos días.
LinkedIn: Registrá una aplicación en el LinkedIn Developer Portal. Necesitás los permisos `w_member_social` para publicar posts y `r_liteprofile` para leer tu perfil. LinkedIn usa OAuth 2.0 y el token hay que renovarlo cada 60 días (esto también se puede automatizar con n8n).
Instagram: Instagram usa la API de Facebook/Meta. Necesitás una Facebook App, conectar tu cuenta de Instagram Business y obtener un Page Access Token de larga duración. El proceso es un poco burocrático pero solo lo hacés una vez.
TikTok: La API de TikTok para publicación directa está en beta y tiene acceso limitado. La alternativa que yo uso es generar el contenido con n8n y enviarlo a una app de programación como Later o Buffer que sí tienen integración con TikTok.
Configurando las credenciales en n8n
En n8n, andá a Settings, luego Credentials y creá cada una:
Para Twitter, n8n tiene un nodo nativo de Twitter que soporta OAuth 2.0. Hacé clic en “Create New Credential”, seleccioná “Twitter OAuth2 API” y seguí el flujo de autorización.
Para LinkedIn, usá el tipo “LinkedIn OAuth2 API”. n8n te va a pedir el Client ID, Client Secret y los scopes. Configurá el redirect URL en tu app de LinkedIn con la URL que n8n te muestra.
Para Instagram y Facebook, usá “Facebook Graph API”. El token de larga duración dura 60 días, así que creá un workflow aparte que lo renueve automáticamente cada 50 días para tener margen.
Workflow 1: Publicación automática desde un blog
Este es el workflow principal. Cada vez que publico un artículo nuevo en el blog, n8n lo detecta, genera versiones adaptadas para cada red social y las publica automáticamente.
Trigger: detectar nuevo artículo
Tenés varias opciones para detectar nuevos artículos:
RSS Feed: Si tu blog tiene feed RSS, usá un nodo RSS Feed Trigger que lo chequee cada hora. Cuando detecta un nuevo artículo, dispara el workflow.
Webhook desde tu CMS: Si usás WordPress, Ghost o similar, configurá un webhook que notifique a n8n cuando publicás un nuevo post.
Schedule + Scraping: Si no tenés acceso al CMS ni al RSS, podés usar un Schedule Trigger que revise tu sitio web periódicamente con un nodo HTTP Request.
Nodo de extracción de contenido
Una vez que tenés la URL del nuevo artículo, extraé el contenido con un nodo HTTP Request que baje el HTML de la página. Después, usá un nodo Code para extraer el título, la descripción, el texto del cuerpo y las imágenes principales. Si tu blog tiene API (como Ghost o WordPress), es mejor usar la API directamente porque te devuelve el contenido estructurado.
Adaptación del contenido con IA
Acá es donde la magia sucede. Usá un nodo de OpenAI (o Claude, o el LLM que prefieras) para generar versiones adaptadas del contenido para cada red social.
Creá un nodo HTTP Request que llame a la API de OpenAI con un prompt bien armado. El prompt debe incluir el contenido del artículo y las instrucciones específicas para cada plataforma.
Para LinkedIn, el prompt debería pedir un post profesional de máximo 1300 caracteres (el límite antes del “ver más”), con un gancho fuerte en la primera línea, 2 a 3 párrafos con insights del artículo, emojis profesionales usados con moderación, y un CTA al final invitando a leer el artículo completo.
Para Twitter/X, pedí un hilo de 4 a 5 tweets de máximo 280 caracteres cada uno, donde el primer tweet sea un gancho que genere curiosidad, los siguientes desarrollen los puntos clave, y el último tenga el link al artículo.
Para Instagram, pedí el copy para un carrusel de 5 a 7 slides, donde la primera slide sea un título llamativo, las siguientes desarrollen los puntos principales (un punto por slide), la última sea un CTA, y además generá 20 a 25 hashtags relevantes separados.
Publicación en cada plataforma
Después de generar el contenido adaptado, vienen los nodos de publicación:
Nodo Twitter: Usá el nodo nativo de Twitter para publicar cada tweet del hilo. Para crear un hilo, publicá el primer tweet y guardá su ID, después usá ese ID como `reply_to` para el segundo tweet, y así sucesivamente. Un nodo SplitInBatches con un Wait de 2 segundos entre cada tweet evita que Twitter te bloquee por publicar muy rápido.
Nodo LinkedIn: Usá un nodo HTTP Request con POST a `https://api.linkedin.com/v2/ugcPosts`. El body debe incluir el `author` (que es tu URN de LinkedIn, algo como `urn:li:person:tu_id`), el `lifecycleState` como `PUBLISHED`, y el `specificContent` con el texto del post y opcionalmente un artículo compartido con la URL de tu blog.
Nodo Instagram: Para Instagram, usá la API de contenedor de medios. Primero, creá un contenedor con POST a `https://graph.facebook.com/v18.0/{ig_user_id}/media` pasando la imagen y el caption. Después, publicá el contenedor con POST a `https://graph.facebook.com/v18.0/{ig_user_id}/media_publish` pasando el `creation_id` del contenedor. Para carruseles, el proceso tiene un paso adicional: creás un contenedor por cada imagen, después creás un contenedor de carrusel que los agrupa, y finalmente publicás.
Workflow 2: Programación de contenido semanal
En lugar de publicar reactivamente cuando sale un artículo, también tengo un sistema para programar contenido semanal. Funciona así:
La planilla de contenidos
Mantengo un Google Sheet con las columnas: fecha de publicación, tipo de contenido (tip, caso de estudio, promoción, humor, pregunta), texto base, imagen URL, plataformas destino (separadas por coma), y estado (pendiente, publicado, error).
El workflow de publicación programada
Un Schedule Trigger se ejecuta cada hora y consulta el Google Sheet buscando filas donde la fecha de publicación sea anterior a la hora actual y el estado sea “pendiente”.
Para cada fila encontrada, el workflow determina las plataformas destino, genera el contenido adaptado si es necesario (usando el nodo de IA), publica en cada plataforma, actualiza el estado en el Google Sheet a “publicado” con la URL del post y la hora de publicación real.
Este sistema me permite sentarme un domingo, planificar todo el contenido de la semana en la planilla, y olvidarme. n8n se encarga de publicar cada cosa en el día y hora correctos.
Horarios óptimos de publicación
Según mi experiencia manejando cuentas en LATAM, estos son los horarios que mejor funcionan:
LinkedIn: Martes a jueves, entre 8:00 y 10:00 AM hora local. El contenido publicado temprano en la mañana tiene más alcance porque la gente lo ve al empezar su jornada laboral.
Twitter/X: Lunes a viernes, entre 12:00 y 14:00 (horario de almuerzo) y entre 18:00 y 20:00. Los hilos largos rinden mejor los martes y miércoles.
Instagram: Lunes a viernes, entre 11:00 y 13:00 y entre 19:00 y 21:00. Los fines de semana el engagement es menor para contenido de negocios pero mejor para contenido lifestyle.
Estos horarios los podés configurar directamente en tu Google Sheet o en el Schedule Trigger de n8n.
Workflow 3: Monitoreo y respuestas automáticas
Publicar es solo la mitad. También necesitás monitorear las interacciones y responde