Back to Integrations
integrationGmail node
integrationGoogle Sheets node

Gmail and Google Sheets integration

Save yourself the work of writing custom integrations for Gmail and Google Sheets and use n8n instead. Build adaptable and scalable Communication, Data & Storage, and Productivity workflows that work with your technology stack. All within a building experience you will love.

How to connect Gmail and Google Sheets

  • Step 1: Create a new workflow
  • Step 2: Add and configure nodes
  • Step 3: Connect
  • Step 4: Customize and extend your integration
  • Step 5: Test and activate your workflow

Step 1: Create a new workflow and add the first step

In n8n, click the "Add workflow" button in the Workflows tab to create a new workflow. Add the starting point – a trigger on when your workflow should run: an app event, a schedule, a webhook call, another workflow, an AI chat, or a manual trigger. Sometimes, the HTTP Request node might already serve as your starting point.

Gmail and Google Sheets integration: Create a new workflow and add the first step

Step 2: Add and configure Gmail and Google Sheets nodes

You can find Gmail and Google Sheets in the nodes panel. Drag them onto your workflow canvas, selecting their actions. Click each node, choose a credential, and authenticate to grant n8n access. Configure Gmail and Google Sheets nodes one by one: input data on the left, parameters in the middle, and output data on the right.

Gmail and Google Sheets integration: Add and configure Gmail and Google Sheets nodes

Step 3: Connect Gmail and Google Sheets

A connection establishes a link between Gmail and Google Sheets (or vice versa) to route data through the workflow. Data flows from the output of one node to the input of another. You can have single or multiple connections for each node.

Gmail and Google Sheets integration: Connect Gmail and Google Sheets

Step 4: Customize and extend your Gmail and Google Sheets integration

Use n8n's core nodes such as If, Split Out, Merge, and others to transform and manipulate data. Write custom JavaScript or Python in the Code node and run it as a step in your workflow. Connect Gmail and Google Sheets with any of n8n’s 1000+ integrations, and incorporate advanced AI logic into your workflows.

Gmail and Google Sheets integration: Customize and extend your Gmail and Google Sheets integration

Step 5: Test and activate your Gmail and Google Sheets workflow

Save and run the workflow to see if everything works as expected. Based on your configuration, data should flow from Gmail to Google Sheets or vice versa. Easily debug your workflow: you can check past executions to isolate and fix the mistake. Once you've tested everything, make sure to save your workflow and activate it.

Gmail and Google Sheets integration: Test and activate your Gmail and Google Sheets workflow

Automated Web Scraping: email a CSV, save to Google Sheets & Microsoft Excel

How it works:
The workflow starts by sending a request to a website to retrieve its HTML content.
It then parses the HTML extracting the relevant information
The extracted data is storted and converted into a CSV file.
The CSV file is attached to an email and sent to your specified address.
The data is simultaneously saved to both Google Sheets and Microsoft Excel for further analysis or use.

Set-up steps:
Change the website to scrape in the "Fetch website content" node
Configure Microsoft Azure credentials with Microsoft Graph permissions (required for the Save to Microsoft Excel 365 node)
Configure Google Cloud credentials with access to Google Drive, Google Sheets and Gmail APIs (the latter is required for the Send CSV via e-mail node).

Nodes used in this workflow

Popular Gmail and Google Sheets workflows

Automated Web Scraping: email a CSV, save to Google Sheets & Microsoft Excel

How it works: The workflow starts by sending a request to a website to retrieve its HTML content. It then parses the HTML extracting the relevant information The extracted data is storted and converted into a CSV file. The CSV file is attached to an email and sent to your specified address. The data is simultaneously saved to both Google Sheets and Microsoft Excel for further analysis or use. Set-up steps: Change the website to scrape in the "Fetch website content" node Configure Microsoft Azure credentials with Microsoft Graph permissions (required for the Save to Microsoft Excel 365 node) Configure Google Cloud credentials with access to Google Drive, Google Sheets and Gmail APIs (the latter is required for the Send CSV via e-mail node).

Invoice data extraction with LlamaParse and OpenAI

This n8n workflow automates the process of parsing and extracting data from PDF invoices. With this workflow, accounts and finance people can realise huge time and cost savings in their busy schedules. Read the Blog: https://blog.n8n.io/how-to-extract-data-from-pdf-to-excel-spreadsheet-advance-parsing-with-n8n-io-and-llamaparse/ How it works This workflow will watch an email inbox for incoming invoices from suppliers It will download the attached PDFs and processing them through a third party service called LlamaParse. LlamaParse is specifically designed to handle and convert complex PDF data structures such as tables to markdown. Markdown is easily to process for LLM models and so the data extraction by our AI agent is more accurate and reliable. The workflow exports the extracted data from the AI agent to Google Sheets once the job complete. Requirements The criteria of the email trigger must be configured to capture emails with attachments. The gmail label "invoice synced" must be created before using this workflow. A LlamaIndex.ai account to use the LlamaParse service. An OpenAI account to use GPT for AI work. Google Sheets to save the output of the data extraction process although this can be replaced for whatever your needs. Customizing this workflow This workflow uses Gmail and Google Sheets but these can easily be swapped out for equivalent services such as Outlook and Excel. Not using Excel? Simple redirect the output of the AI agent to your accounting software of choice.

Host your own Uptime Monitoring with Scheduled Triggers

This n8n workflow demonstrates how to build a simple uptime monitoring service using scheduled triggers. Useful for webmasters with a handful of sites who want a cost-effective solution without the need for all the bells and whistles. How it works Scheduled trigger reads a list of website urls in a Google Sheet every 5 minutes Each website url is checked using the HTTP node which determines if the website is either in the UP or DOWN state. An email and Slack message are sent for websites which are in the DOWN state. The Google Sheet is updated with the website's state and a log created. Logs can be used to determine total % of UP and DOWN time over a period. Requirements Google Sheet for storing websites to monitor and their states Gmail for email alerts Slack for channel alerts Customising the workflow Don't use Google Sheets? This can easily be exchanged with Excel or Airtable.

TwentyCRM event based updates on selective messaging channels with logs

Who is this template for? This workflow template is designed for DevOps, Engineering, and Managed Service Provider professionals seeking alerts on various channels, with each channel being logically chosen based on the severity of the event. How it works Each time a new event occurs, the workflow runs (powered by TwentyCRM's native Webhooks feature). After filtering for the required data from the webhook, the filtered data is logged using Google Sheets. Based on the eventType from the webhook, we conditionally select a predefined messaging channel and send updates or alerts through it. Set up instructions Complete the Set up credentials step when you first open the workflow. You'll need a Google-OAuth2.0 with Gmail API & Google Sheets Scope, Slack with OAuth2.0 - chat:write scopes. Set up the Webhook in TwentyCRM, linking the On new TwentyCRM event Trigger with your TwentyCRM App. Set the correct channel to send to in the Post message in channel step. After testing your workflow, swap the Test URL to Production URL in TwentyCRM and activate your workflow. Template was created in n8n v1.63.4.

Gmail campaign sender: Bulk-send emails and follow up automatically if no reply

This workflow allows you to send multi-step email campaigns using n8n, Gmail and Google Sheets. You define a sequence of emails, and a list of email addresses to send them to. The first email is sent to everyone, but the later emails in the sequence are only sent if no-one has replied to the thread yet. This means you only need to worry about replying to people who respond to your email, not chasing people who don’t. Requirements A list of emails in a Google sheet. You can define extra info that will be available to your email templates (e.g. name, company, etc.) A sequence of emails to send, plus how long to wait to send each one, e.g. On day 0:** “Hi, {name} — nice to meet you at the conference. Was wondering whether {company} would be interested in a quick call about X?” On day 3:** “Hi, {name}, just wanted to check in on this. Let me know if there’s any interest!” On day 7:** “{name}, just wanted to give this one last try” A Gmail account (although you could also swap out that part for any other email service) How it works When sending the emails, n8n inserts a hidden attribute in each one that tags it as being part of the email campaign. It then regularly looks through the email threads with that tag and checks whether: No-one has replied yet It’s time to send the next message The workflow doesn’t send emails on weekends. Notes This workflow is not intended for spam! Please use responsibly You can use this workflow for multiple different campaigns by making copies of the workflow and changing the sequence / Google Sheet that it uses

Zalando Price Patrol: Monitor price evolution with email notification

🎉 Do you want to master AI automation, so you can save time and build cool stuff? I’ve created a welcoming Skool community for non-technical yet resourceful learners. 👉🏻 Join the AI Atelier 👈🏻 Monitor Zalando product pricing and get notified if a Zalando product price falls under a limit you have defined. This n8n workflow lets you follow the evolution of the price of products you select. For each product, you define a minimal price. The workflow automatically scrapes the price for you on a daily basis. If the price falls under your minimal price settings, you receive a notification. This workflow is very easy to use. From a simple form, just paste the URL of the Zalando product you want to monitor and fill in the minimal price. Features Monitor Zalando Product price: follow the price evolution of your favorite Zalando products. Email notification: set a minimal price, if the product price falls below this limit, you get notified by email. Visual price evolution: get a graphical overview of the product pricing evolutions. Automated Daily check-up: this workflow automatically checks the price of your selected Zalando products on a daily basis. Set up Copy this workflow to your n8n interface. Create a new Google Spreadsheet, copy this template Setup your workflow with your Google credential, your email, and your copy of the Spreadsheet. Activate the Workflow and start pasting Zalando product URLs. I hope you will enjoy this workflow that is probably one of the simplest ways to monitor the pricing evolution of your favorite Zalando products. Feel free to contact me should you have any questions or suggestions. Created by the n8n.inja ✨ follow on X 📺 follow on YT

Build your own Gmail and Google Sheets integration

Create custom Gmail and Google Sheets workflows by choosing triggers and actions. Nodes come with global operations and settings, as well as app-specific parameters that can be configured. You can also use the HTTP Request node to query data from any app or service with a REST API.

Gmail supported actions

Add Label
Delete
Get
Get Many
Mark as Read
Mark as Unread
Remove Label
Reply
Send
Send and Wait for Approval
Create
Delete
Get
Get Many
Create
Delete
Get
Get Many
Add Label
Delete
Get
Get Many
Remove Label
Reply
Trash
Untrash

Google Sheets supported actions

Create
Create a spreadsheet
Delete
Delete a spreadsheet
Append or Update Row
Append a new row or update an existing one (upsert)
Append Row
Create a new row in a sheet
Clear
Delete all the contents or a part of a sheet
Create
Create a new sheet
Delete
Permanently delete a sheet
Delete Rows or Columns
Delete columns or rows from a sheet
Get Row(s)
Retrieve one or more rows from a sheet
Update Row
Update an existing row in a sheet

FAQs

  • Can Gmail connect with Google Sheets?

  • Can I use Gmail’s API with n8n?

  • Can I use Google Sheets’s API with n8n?

  • Is n8n secure for integrating Gmail and Google Sheets?

  • How to get started with Gmail and Google Sheets integration in n8n.io?

Need help setting up your Gmail and Google Sheets integration?

Discover our latest community's recommendations and join the discussions about Gmail and Google Sheets integration.
jake chard
Jan Koch
Sergey Komardenkov
sérgio eduardo floresta filho
Julian

Looking to integrate Gmail and Google Sheets in your company?

Over 3000 companies switch to n8n every single week

Why use n8n to integrate Gmail with Google Sheets

Build complex workflows, really fast

Build complex workflows, really fast

Handle branching, merging and iteration easily.
Pause your workflow to wait for external events.

Code when you need it, UI when you don't

Simple debugging

Your data is displayed alongside your settings, making edge cases easy to track down.

Use templates to get started fast

Use 1000+ workflow templates available from our core team and our community.

Reuse your work

Copy and paste, easily import and export workflows.

Implement complex processes faster with n8n

red iconyellow iconred iconyellow icon