Recursos · Integración n8n

Integración Google Sheets n8nAutomatiza Google Sheets con n8n.

¿Y si tus hojas dejaran de esperar a que alguien las rellene? La integración Google Sheets n8n expone 10 operaciones sobre 2 recursos, el documento y la hoja que contiene, más un trigger, el nodo que arranca el flujo, que vigila 3 eventos de fila. Para quien lleva las operaciones en una hoja compartida.

Reseñas verificadas en Trustpilot · Agencia de IA, automatización y growth

Por qué automatizar

¿Qué resuelve la integración Google Sheets n8n?

La integración Google Sheets n8n comunica tus hojas de cálculo con el resto de tus herramientas, y lo hace en los dos sentidos. El nodo Google Sheets escribe y lee filas desde un flujo de trabajo, con 10 operaciones sobre 2 recursos: el documento completo y cada hoja que contiene. El Google Sheets Trigger hace el camino contrario, arranca el flujo cuando alguien añade o modifica una fila.

Una hoja que deja de duplicar líneas. Un formulario llena una pestaña de entrada, la operación sheet.appendOrUpdate busca la fila del mismo cliente y la corrige en lugar de añadir otra, y el equipo recibe el aviso en Slack. La lista deja de crecer con tres versiones del mismo contacto.

El resumen de la mañana, ya filtrado. Con sheet.read pides solo las filas cuyo estado sigue en espera, activas returnAllMatches para que vuelvan todas y no únicamente la primera, y el resultado sale por Gmail antes de la reunión. Nadie abre la hoja para contar a mano.

La hoja como panel de control. Alguien apunta una tarea y el evento rowAdded despierta el flujo en el siguiente sondeo: el flujo la procesa y sheet.update escribe el estado de vuelta en la misma línea. Cuando la pestaña empieza a pesar demasiado, esa misma lógica se muda a Airtable o a Baserow sin rehacer el flujo entero.

Cuándo conviene salirse del nodo. Las 10 operaciones cubren el trabajo diario sobre filas, pestañas y documentos. Para cualquier otra llamada a la API de Google Sheets tienes el nodo HTTP Request: la credencial genérica Google OAuth2 API existe justo para esas llamadas personalizadas, y la de Service Account trae el interruptor Set up for use in HTTP Request node, que te pide los Scope(s) a mano.

Los límites que conviene conocer antes. Al leer la hoja entera, n8n trata la primera fila como cabecera y no te la devuelve. Un array no entra tal cual: hay que convertirlo antes en pares de clave y valor con Split Out, AI Transform o Code. Y si alguien renombra una columna después de configurar el nodo, salta un error que se resuelve volviendo a seleccionar el Mapping Column Mode. La reseña n8n sitúa el resto de la herramienta.

Conexión

¿Cómo conectas Google Sheets con n8n?

  1. 01

    Elige el método de autenticación

    El nodo acepta dos credenciales, es decir dos formas de guardar tus accesos dentro de n8n: OAuth2, la recomendada, y Service Account. En n8n Cloud existe Managed OAuth2, un atajo que se resuelve pulsando «Sign in with Google» en la pantalla de la credencial, sin tocar la Google Cloud Console. Si alojas n8n en tu propio servidor, ese atajo no aparece y toca montar un Custom OAuth2.

  2. 02

    Crea el cliente OAuth en Google Cloud

    En la Google Cloud Console, configura la pantalla de consentimiento con App name y User support email, elige Audience entre Internal y External, y añade en Authorized domains el dominio n8n.cloud o el de tu instancia. Después, en la sección Credentials, crea un OAuth client ID de tipo Web application.

  3. 03

    Termina la credencial en n8n

    Copia la OAuth Redirect URL que muestra n8n y pégala tal cual en Authorized redirect URIs: en local se parece a http://localhost:5678/rest/oauth2-credential/callback. Vuelve con el Client ID y el Client Secret, pulsa «Sign in with Google» y guarda. Con Service Account, pega el client_email y la private_key del JSON, sin las comillas.

Disparadores

¿Qué escucha el Google Sheets Trigger?

Google Sheets Trigger es el nodo que arranca un workflow cuando algo ocurre en Google Sheets. Escucha 3 eventos, listados abajo por familia. Eliges uno o varios, activas el workflow y n8n registra el webhook (la URL que Google Sheets llama) en tu cuenta.

Lo que ves en n8n

Todos los eventos, por familia

Una fila por objeto, un chip por acción. El evento que marcas en el nodo se escribe objeto.acción; pasa el cursor por un chip para leer cuándo se dispara.

row.*2
    any.*1

      Notas de configuración

      01Google Sheets TriggerEste nodo vigila una pestaña concreta y arranca el flujo cuando ocurre el evento que hayas marcado en Trigger On. Lo hace por sondeo, lo que en n8n se llama polling: consulta la API de Google Sheets al intervalo que fijes en Poll Times, como mucho cada minuto, y emite un item por cada fila nueva, sin nada que registrar del lado de Google. Va por la versión 1 y expone 3 eventos, sin comodín: se elige uno, no «todos a la vez».

      Este nodo vigila una pestaña concreta y arranca el flujo cuando ocurre el evento que hayas marcado en Trigger On. Lo hace por sondeo, lo que en n8n se llama polling: consulta la API de Google Sheets al intervalo que fijes en Poll Times, como mucho cada minuto, y emite un item por cada fila nueva, sin nada que registrar del lado de Google. Va por la versión 1 y expone 3 eventos, sin comodín: se elige uno, no «todos a la vez».

      Parámetros clave

      • Document: la hoja de cálculo que quieres vigilar, obligatoria, seleccionada de la lista, por URL o por su spreadsheetId.
      • Sheet: la pestaña dentro de ese documento, también obligatoria. El trigger escucha una pestaña, no el documento entero.
      • Include in Output: decide qué devuelve el nodo, y solo surte efecto cuando el flujo se ejecuta automáticamente, nunca en una prueba manual.
      • Options: la colección donde eliges Columns to Watch, las columnas que el nodo vigila, para que solo se dispare cuando cambia una de ellas y no con cualquier retoque en la fila.
      Cuándo usarlo
      siempre que la hoja sea el punto de entrada del proceso y prefieras no revisarla tú a mano cada mañana.
      02Row Added and Row UpdatedLa familia de eventos de fila separa dos momentos distintos de la vida de una línea. rowAdded se dispara cuando aparece una fila nueva; rowUpdate lo hace cuando cambia una fila que ya estaba ahí. Son dos disparos que piden reacciones diferentes: uno da la bienvenida a un registro, el otro avisa de una corrección.

      La familia de eventos de fila separa dos momentos distintos de la vida de una línea. rowAdded se dispara cuando aparece una fila nueva; rowUpdate lo hace cuando cambia una fila que ya estaba ahí. Son dos disparos que piden reacciones diferentes: uno da la bienvenida a un registro, el otro avisa de una corrección.

      Parámetros clave

      • Trigger On: aquí eliges rowAdded o rowUpdate, y el nodo ignora el otro caso.
      • DateTime Render: la opción que evita recibir las fechas como números, disponible cuando Trigger On está en Row Added. Ponla en Formatted String.
      Cuándo usarlo
      con rowAdded para dar de alta cada pedido o cada inscripción que alguien apunta en la hoja. Con rowUpdate para reaccionar a una casilla que cambia de estado, por ejemplo la que marca una factura como cobrada.
      03Row Added or UpdatedEl tercer evento, anyUpdate, no distingue: cubre las altas y las modificaciones con un solo disparo. Evita duplicar el mismo flujo dos veces cuando la reacción es idéntica en los dos casos, y ahorra el trabajo de mantener dos ramas gemelas que siempre acaban divergiendo.

      El tercer evento, anyUpdate, no distingue: cubre las altas y las modificaciones con un solo disparo. Evita duplicar el mismo flujo dos veces cuando la reacción es idéntica en los dos casos, y ahorra el trabajo de mantener dos ramas gemelas que siempre acaban divergiendo.

      Parámetros clave

      • Trigger On: la opción Row Added or Updated, es decir el valor anyUpdate.
      • Include in Output: útil sobre todo aquí, porque la fila puede llegar por dos caminos y conviene ver qué devuelve el nodo antes de encadenar el resto.
      Cuándo usarlo
      para sincronizar una hoja con otra herramienta línea a línea, donde da igual si la fila acaba de nacer o si alguien acaba de retocarla: en los dos casos hay que volver a enviarla.
      Acciones

      Las 10 operaciones del nodo Google Sheets

      El nodo Google Sheets expone 10 operaciones en 2 recursos. Para cada una: el nodo tal como lo configuras en n8n, los campos obligatorios y nuestras notas de campo.

      Matriz recursos × operaciones
      RecursoCreateUpdate RowDelete Rows or ColumnsDeleteAppend RowAppend or Update RowClearDeleteGet Row(s)
      Document✓✓
      Sheet Within Document✓✓✓✓✓✓✓✓

      Document

      2 operaciones
      01

      Create spreadsheet

      spreadsheet.create

      Lo que ves en n8n

      Notas y casos de uso

      Crea un documento nuevo desde el flujo, con las pestañas que le indiques, sin abrir el navegador.

      Parámetros clave

      • Title: el título del documento. Ningún campo es obligatorio en esta operación, pero sin título la hoja nace sin nombre.
      • Sheets: la colección donde añades las pestañas que quieres dentro, cada una con su Title y su Hidden.
      • Locale: el idioma del documento, en formato en, fil o en_US, que cambia cómo se leen fechas y funciones.
      • Recalculation Interval: cada cuánto se recalculan las funciones volátiles, con ON_CHANGE, MINUTE o HOUR.
      Casos de uso
      generar el informe mensual en un documento limpio, con una pestaña por equipo, en vez de duplicar una plantilla a mano.
      02

      Delete spreadsheet

      spreadsheet.deleteSpreadsheet

      Lo que ves en n8n

      Notas y casos de uso

      Borra el documento entero, no una pestaña. La llamada pasa por la API de Google Drive, así que el archivo desaparece del Drive con todo lo que contenía.

      Parámetros clave

      • Document: el único campo obligatorio. Lo eliges de la lista, pegas su URL o das el spreadsheetId, ese trozo de la dirección que va entre /d/ y /edit.
      Casos de uso
      limpiar los documentos temporales que crea un flujo semanal, una vez que el informe ya se ha enviado a quien tocaba.

      Sheet Within Document

      8 operaciones
      03

      Append or update row in sheet

      sheet.appendOrUpdate

      Lo que ves en n8n

      Notas y casos de uso

      Busca la fila que coincide y la actualiza; si no encuentra ninguna, escribe una nueva al final de los datos. Es el upsert de la hoja, el que impide tener al mismo cliente tres veces.

      Parámetros clave

      • Document y Sheet: obligatorios los dos, el documento y la pestaña donde escribe.
      • Columns: el mapeo de columnas. Con Map Each Column Manually rellenas los Values to Send uno a uno, con Map Automatically n8n empareja por nombre.
      • Handling extra fields in input: qué hacer con un campo que no encaja en ninguna columna, crear una nueva, ignorarlo o lanzar error.
      Casos de uso
      mantener al día la hoja de clientes desde un formulario, donde cada envío corrige la ficha en lugar de añadir otra línea.
      04

      Append row in sheet

      sheet.append

      Lo que ves en n8n

      Notas y casos de uso

      Escribe la fila al final de los datos sin comprobar si ya existe algo parecido. Cada ejecución deja una línea más, así que encaja con los registros históricos.

      Parámetros clave

      • Columns: el mapeo, obligatorio. Map Automatically funciona cuando los campos de entrada ya se llaman igual que las columnas de la hoja.
      • Cell Format: USER_ENTERED deja que Google interprete el valor como si lo teclearas, RAW conserva los tipos que manda n8n.
      • Minimise API Calls: usa append en lugar de update, más eficiente, pero solo si la hoja no tiene huecos entre filas ni entre columnas.
      Casos de uso
      guardar cada pedido que entra, con su fecha y su importe, en la pestaña que alimenta el informe del mes.
      05

      Clear sheet

      sheet.clear

      Lo que ves en n8n

      Notas y casos de uso

      Vacía el contenido de una pestaña, entera o por partes, y deja la pestaña en su sitio. Se van los valores, no la estructura del documento.

      Parámetros clave

      • Range: obligatorio, el rango de la tabla. Con varias pestañas se escribe así: MySheet!A:F.
      • Clear: qué se limpia, entre wholeSheet, specificRows, specificColumns y specificRange.
      • Keep First Row: conserva la fila de cabeceras mientras el resto desaparece.
      • Start Row Number: desde qué fila empieza el borrado, contando la primera como 1.
      Casos de uso
      dejar la pestaña de importación en blanco cada mañana, antes de volcar los datos del día.
      06

      Create sheet

      sheet.create

      Lo que ves en n8n

      Notas y casos de uso

      Añade una pestaña dentro de un documento que ya existe. El documento no se toca, solo gana una hoja más.

      Parámetros clave

      • Document: dónde se crea la pestaña, obligatorio.
      • Title: el nombre de la hoja, obligatorio también, y el sitio natural para una expresión, es decir un valor que n8n toma del item de entrada, como {{ $json.cliente }}.
      • Sheet ID: identificador numérico no negativo que no se puede cambiar una vez fijado.
      • Sheet Index y Tab Color: la posición de la pestaña y el color de su etiqueta.
      Casos de uso
      abrir una pestaña por semana o por cliente, con el nombre generado desde el dato que llega, sin duplicar el documento.
      07

      Delete sheet

      sheet.remove

      Lo que ves en n8n

      Notas y casos de uso

      Elimina una pestaña para siempre, con sus datos dentro. No hay papelera intermedia, conviene leer antes lo que vayas a necesitar después.

      Parámetros clave

      • Document: el documento que contiene la pestaña.
      • Sheet: la pestaña que desaparece, elegida de la lista, por URL, por ID o por su nombre.
      Casos de uso
      cerrar el ejercicio retirando las pestañas de trabajo que ya se archivaron en otro documento.
      08

      Delete rows or columns from sheet

      sheet.delete

      Lo que ves en n8n

      Notas y casos de uso

      Quita filas o columnas y hace subir lo que queda debajo. Es la diferencia con Clear, que solo vacía las celdas y deja el hueco.

      Parámetros clave

      • To Delete: rows o columns, según lo que quieras quitar.
      • Start Row Number: la fila por la que empieza el borrado, que en esta operación arranca en 2.
      • Number of Rows to Delete: cuántas filas caen a partir de ahí.
      Casos de uso
      depurar las líneas ya procesadas de una cola de tareas, para que la pestaña no crezca sin fin.
      09

      Get row(s) in sheet

      sheet.read

      Lo que ves en n8n

      Notas y casos de uso

      Devuelve una fila, varias o todas, convertidas en elementos con el nombre de cada columna. Al leer la hoja entera, n8n trata la primera fila como cabecera y no te la devuelve.

      Parámetros clave

      • Filters: pares de Column y Value para quedarte con las filas que cumplen la condición.
      • Combine Filters: AND exige todas las condiciones, OR se conforma con una.
      • When Filter Has Multiple Matches: por defecto vuelve la primera coincidencia; con returnAllMatches llegan todas.
      • Output Formatting: los valores sin formato, tal como se ven en la hoja, o las fórmulas en texto.
      Casos de uso
      sacar cada mañana las filas que siguen pendientes y pasarlas al flujo que prepara los recordatorios.
      10

      Update row in sheet

      sheet.update

      Lo que ves en n8n

      Notas y casos de uso

      Modifica filas que ya están en la pestaña, y solo eso: si no encuentra la coincidencia no crea nada, porque para eso existe Append or Update Row.

      Parámetros clave

      • Columns: el mapeo con los valores que se escriben en cada columna, obligatorio.
      • Data Location on Sheet: la Header Row y la First Data Row, cuando la tabla no empieza arriba del todo.
      • Cell Format: quién decide el tipo de la celda, Google con USER_ENTERED o n8n con RAW.
      Casos de uso
      marcar una línea de pedido como enviada en cuanto sale el correo, sin tocar el resto de la fila.
      Necesitas ayuda

      ¿Necesitas ayuda para automatizar Google Sheets con n8n?

      El equipo te responde directamente.

      Cada mensaje lo lee una persona.

      FAQ

      Preguntas frecuentes

      01¿La integración Google Sheets n8n es gratuita?
      Sí. El nodo Google Sheets y el Google Sheets Trigger vienen incluidos en n8n, tanto en la versión cloud como si alojas la herramienta en tu propio servidor, sin licencia aparte por usarlos. La diferencia entre las dos está en la conexión: en n8n Cloud puedes usar Managed OAuth2, pulsar «Sign in with Google» y olvidarte de la Google Cloud Console, mientras que en una instancia propia ese atajo no aparece y toca crear un Custom OAuth2 con su Client ID y su Client Secret. Lo que te cueste tu cuenta de Google es otra conversación, y esta página no entra ahí.
      02¿Qué credenciales y permisos necesitas?
      Dos opciones: OAuth2, la recomendada, o Service Account. Con OAuth2 conectas tu propia cuenta de Google y el nodo actúa en tu nombre, que es el camino más corto. Service Account funciona con una cuenta técnica: copias el client_email del JSON que descarga Google en el campo Service Account Email y la private_key en Private Key, sin las comillas que la rodean. Ahí hay un paso extra, compartir cada hoja con ese correo, con permiso de Editor para escribir o de Viewer para solo leer. Si montas la credencial genérica Google OAuth2 API, los scopes admitidos para Sheets, es decir los permisos que pide la app, son spreadsheets y drive.file.
      03¿Qué límites tiene el nodo de Google Sheets?
      Depende de lo que le pidas. El nodo cubre 10 operaciones sobre 2 recursos, el documento y la hoja, así que el resto de la API de Google Sheets se queda fuera y pasa por el nodo HTTP Request. Hay tres comportamientos que sorprenden al principio. Al leer la hoja entera, la primera fila se trata como cabecera y no vuelve entre los resultados. Un array no se inserta tal cual: hay que convertirlo antes en pares de clave y valor con los nodos Split Out, AI Transform o Code. Y si alguien renombra una columna después de configurar el nodo, salta un error que se arregla volviendo a seleccionar el Mapping Column Mode para que recupere los nombres.
      04¿El trigger de Google Sheets reacciona en tiempo real?
      No. El Google Sheets Trigger funciona por sondeo, no en tiempo real: n8n consulta la API de Google Sheets al intervalo que fijes en Poll Times, como mucho cada minuto, así que no hay nada que registrar del lado de Google y el retraso equivale a ese intervalo. El nodo va por la versión 1, escucha 3 eventos y su parámetro Include in Output solo surte efecto cuando el flujo se ejecuta de forma automática, nunca en una prueba manual. Si al probar con Execute step la ejecución parece colgada esperando el evento, el problema suele estar fuera de n8n, en un proxy inverso que no tiene activados los websockets, el canal permanente entre tu navegador y el servidor. Y si las fechas llegan como números, añade la opción DateTime Render y ponla en Formatted String, disponible cuando Trigger On está en Row Added.
      05¿n8n o Make para automatizar Google Sheets?
      Depende de dónde quieras que se ejecute el flujo. n8n se puede alojar en tu propio servidor, y esa decisión pesa: Managed OAuth2, el atajo de «Sign in with Google», solo existe en la versión cloud, mientras que en una instancia propia montas el Custom OAuth2 y decides tú por dónde viajan los datos de la hoja. El segundo criterio es el modelo de coste: Make es una plataforma alojada, sin opción de instalarla en el tuyo, y se factura por operación, algo que cuenta cuando una hoja dispara muchas filas. Para el resto, la comparación honesta se hace con tu propio caso: monta el mismo flujo en las dos herramientas y quédate con la que te deje menos mantenimiento. La reseña n8n entra en más detalle.