Back to Integrations
integrationGitHub node
integrationGoogle Sheets node

GitHub and Google Sheets integration

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

How to connect GitHub 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.

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

Step 2: Add and configure GitHub and Google Sheets nodes

You can find GitHub 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 GitHub and Google Sheets nodes one by one: input data on the left, parameters in the middle, and output data on the right.

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

Step 3: Connect GitHub and Google Sheets

A connection establishes a link between GitHub 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.

GitHub and Google Sheets integration: Connect GitHub and Google Sheets

Step 4: Customize and extend your GitHub 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 GitHub and Google Sheets with any of n8n’s 1000+ integrations, and incorporate advanced AI logic into your workflows.

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

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

Save and run the workflow to see if everything works as expected. Based on your configuration, data should flow from GitHub 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.

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

AI Timesheet Generator with Gmail, Calendar & GitHub to Google Sheets

AI-Powered Automatic Timesheet Generator for Google Sheets

Stop wasting billable hours on manual time-tracking. AutoTimesheet Pro uses AI to collect emails, meetings, and GitHub work, then writes a clean timesheet straight into Google Sheets. Perfect for developers, consultants, agencies, and remote teams.

Get Started with n8n now!

🚀 Key Features

Automated Google Sheets time-tracking** — zero spreadsheet prep.
AI-generated activity summaries** (≤ 120 chars) via OpenAI GPT-4o-mini.
Gmail integration** — logs only important emails, skipping newsletters & no-replies.
Google Calendar time logger** — captures confirmed events, duration, and attendees.
GitHub commit & PR tracker** — records your commits plus opened/closed PRs.
Daily 7 PM cron trigger** (easily adjustable).
Month-based sheet creation** — new tab spins up on the first run each month.
No-code n8n template* — just connect credentials and tweak one Set Variables* node.
🔌 Easily extensible** — drag-and-drop extra n8n nodes to add Slack, Jira, Notion, Asana, Trello, Toggl, or any other data source you need.

🔍 How It Works

Collect — n8n pulls data from Gmail, Google Calendar, and chosen GitHub repos.
Clean — filters remove noise (newsletters, irrelevant commits, etc.).
Condense — OpenAI rewrites each item into a concise, SEO-friendly description.
Write — workflow appends Date, Type, and Description to your Timesheet Google Sheet.
Extend — simply insert new n8n nodes (e.g., Slack, Notion, Jira) and merge them into the same pipeline.

📈 Benefits for SEO-Minded Professionals

Keyword-rich activity log** improves internal search and reporting.
Structured data** in Sheets simplifies export to accounting or PM tools.
Consistent naming** (CALENDAR_EVENT, EMAIL, COMMIT, PR) makes analytics easy.

✅ Why Choose AutoTimesheet Pro?

Zero manual entry — just open the sheet and bill clients.
Immediate visibility into where your hours went.
Works with any GitHub repo list and any inbox you own.
100 % no-code setup — activate in minutes.
Built on n8n, so you can customize and scale without limits.
📥 Get Started

Ready to replace manual time-tracking with smart automation?

https://n8n.partnerlinks.io/ds9podzjls6d

Join N8N now, connect your Google & GitHub accounts, and let AI handle your daily log.

Nodes used in this workflow

Popular GitHub and Google Sheets workflows

+2

AI Timesheet Generator with Gmail, Calendar & GitHub to Google Sheets

AI-Powered Automatic Timesheet Generator for Google Sheets Stop wasting billable hours on manual time-tracking. AutoTimesheet Pro uses AI to collect emails, meetings, and GitHub work, then writes a clean timesheet straight into Google Sheets. Perfect for developers, consultants, agencies, and remote teams. Get Started with n8n now! 🚀 Key Features Automated Google Sheets time-tracking** — zero spreadsheet prep. AI-generated activity summaries** (≤ 120 chars) via OpenAI GPT-4o-mini. Gmail integration** — logs only important emails, skipping newsletters & no-replies. Google Calendar time logger** — captures confirmed events, duration, and attendees. GitHub commit & PR tracker** — records your commits plus opened/closed PRs. Daily 7 PM cron trigger** (easily adjustable). Month-based sheet creation** — new tab spins up on the first run each month. No-code n8n template* — just connect credentials and tweak one Set Variables* node. 🔌 Easily extensible** — drag-and-drop extra n8n nodes to add Slack, Jira, Notion, Asana, Trello, Toggl, or any other data source you need. 🔍 How It Works Collect — n8n pulls data from Gmail, Google Calendar, and chosen GitHub repos. Clean — filters remove noise (newsletters, irrelevant commits, etc.). Condense — OpenAI rewrites each item into a concise, SEO-friendly description. Write — workflow appends Date, Type, and Description to your Timesheet Google Sheet. Extend — simply insert new n8n nodes (e.g., Slack, Notion, Jira) and merge them into the same pipeline. 📈 Benefits for SEO-Minded Professionals Keyword-rich activity log** improves internal search and reporting. Structured data** in Sheets simplifies export to accounting or PM tools. Consistent naming** (CALENDAR_EVENT, EMAIL, COMMIT, PR) makes analytics easy. ✅ Why Choose AutoTimesheet Pro? Zero manual entry — just open the sheet and bill clients. Immediate visibility into where your hours went. Works with any GitHub repo list and any inbox you own. 100 % no-code setup — activate in minutes. Built on n8n, so you can customize and scale without limits. 📥 Get Started Ready to replace manual time-tracking with smart automation? https://n8n.partnerlinks.io/ds9podzjls6d Join N8N now, connect your Google & GitHub accounts, and let AI handle your daily log.
+6

Personalize Resumes & Cover Letters with AI, GitHub Pages and Google Drive

🧠 Automated Resume & Cover Letter Generator This project is an automation workflow that generates a personalized resume and cover letter for each job listing. 🚀 Features Automated Resume Crafting Generates an HTML resume from your data. Hosts it live on GitHub Pages. Converts it to PDF using Gotenberg and saves it to Google Drive. Automated Cover Letter Generation Uses an LLM to create a tailored cover letter for each job listing. Simple Input Database Agent Stores your experience in an n8n Data Table with the following fields: role, summary, task, skills, tools, industry. The main agent pulls this data using RAG (Retrieval-Augmented Generation) to personalize the outputs. One-Time GitHub Setup Initializes a blank GitHub repository to host HTML files online, allowing Gotenberg to access and convert them. 🧩 Tech Stack Gotenberg** – Converts HTML to PDF GitHub Pages** – Hosts live HTML files n8n** – Handles data tables and workflow automation LLM (OpenAI / Cohere / etc.)** – Generates cover letters Google Drive** – Stores the final PDFs ⚙️ Installation & Setup Create a GitHub Repository This repo will host your HTML resume through GitHub Pages. Set the Webhook URL In the notify-n8n.yml file, replace: role | summary | task | skills | tools | industry Create the n8n Data Table Add the following columns: role | summary | task | skills | tools | industry Create a Google Spreadsheet Add these columns: company | cover_letter | resume Install Gotenberg Follow the installation instructions on the Gotenberg GitHub repository: https://github.com/thecodingmachine/gotenberg Customize the HTML Template Modify the HTML resume to your liking. You can use an LLM to locate and edit specific sections. Add Authentication and Link Your GitHub Repo Ensure your workflow has permission to push updates to your GitHub Pages branch. Run the Workflow Once everything is connected, trigger the workflow to automatically generate and save personalized resumes and cover letters. 📝 How to Use Copy and paste the job listing description into the Telegram bot. Wait for the "Done" notification before submitting another job. Do not use the bot again until the notification appears. The process usually takes a few minutes to complete. ✅ Notes This workflow is designed to save time and personalize your job applications efficiently. By combining n8n automation, LLMs, and open-source tools like Gotenberg, you can maintain full control over your data while generating high-quality resumes and cover letters for every job opportunity.
+2

Auto-Categorize Blog Posts with OpenAI GPT-4, GitHub, and Google Sheets for Astro/Next.js

Automatically Assign Categories and Tags to Blog Posts with AI This workflow streamlines your content organization process by automatically analyzing new blog posts in your GitHub repository and assigning appropriate categories and tags using OpenAI. It compares new posts against existing entries in a Google Sheet, updates the metadata for each new article, and records the suggested tags and categories for review — all in one automated pipeline. Who’s It For Content creators and editors** managing a static website (e.g., Astro or Next.js) who want AI-driven tagging. SEO specialists** seeking consistent metadata and topic organization. Developers or teams** managing a Markdown-based blog stored in GitHub who want to speed up post curation. How It Works Form Trigger – Starts the process manually with a form that initiates article analysis. Get Data from Google Sheets – Retrieves existing post records to prevent duplicate analysis. Compare GitHub and Google Sheets – Lists all .md or .mdx blog posts from the GitHub repository (piotr-sikora.com/src/content/blog/pl/) and identifies new posts not yet analyzed. Check New Repo Files – Uses a code node to filter only unprocessed files for AI tagging. Switch Node – If there are no new posts, the workflow stops and shows a confirmation message. If new posts exist, it continues to the next step. Get Post Content from GitHub – Downloads the content of each new article. AI Agent (LangChain + OpenAI GPT-4.1-mini) – Reads each post’s frontmatter (--- section) and body. Suggests new categories and tags based on the article’s topic. Returns a JSON object with proposed updates (Structured Output Parser) Append to Google Sheets – Logs results, including: File name Existing tags and categories Proposed tags and categories (AI suggestions) Completion Message – Displays a success message confirming the categorization process has finished. Requirements GitHub account** with repository access to your website content. Google Sheets connection** for storing metadata suggestions. OpenAI account** (credential stored in openAiApi). How to Set Up Connect your GitHub, Google Sheets, and OpenAI credentials in n8n. Update the GitHub repository path to match your project (e.g., src/content/blog/en/). In Google Sheets, create columns: FileName, Categories, Proposed Categories, Tags, Proposed Tags. Adjust the AI model or prompt text if you want different tagging behavior. Run the workflow manually using the Form Trigger node. How to Customize Swap OpenAI GPT-4.1-mini for another LLM (e.g., Claude or Gemini) via the LangChain node. Modify the prompt in the AI Agent to adapt categorization style or tone. Add a GitHub commit node if you want AI-updated metadata written back to files automatically. Use the Schedule Trigger node to automate this process daily. Important Notes All API keys and credentials are securely stored — no hardcoded keys. The workflow includes multiple sticky notes explaining: Repository setup File retrieval and AI tagging Google Sheet data structure It uses a LangChain memory buffer to improve contextual consistency during multiple analyses. Summary This workflow automates metadata management for blogs or documentation sites by combining GitHub content, AI categorization, and Google Sheets tracking. With it, you can easily maintain consistent tags and categories across dozens of articles — boosting SEO, readability, and editorial efficiency without manual tagging.

Triage GitHub issues with OpenAI categorization and embedding-based duplicate detection

Who's it for Open-source maintainers, product teams with public repositories, and any organization receiving a steady stream of GitHub Issues. Ideal for small teams who waste hours per week triaging duplicates and misrouted reports. How it works When a new Issue is opened, a GitHub webhook fires this workflow. It first filters for the "opened" action, then fetches the last 30 Issues from the repository. All Issue texts (new + past) are sent to OpenAI's embeddings API in a single batch call for efficiency. The workflow calculates cosine similarity between the new Issue and every past Issue. If the maximum similarity exceeds 0.85, the new Issue is auto-closed with a comment referencing the original. Otherwise, AI classifies it into one of four categories: bug (adds label + Slack alert to dev team), question (posts FAQ link as a comment), feature (appends to a roadmap Google Sheet), or spam (auto-close with label). AI is used only for classification — the duplicate detection uses deterministic vector math, and every action is rule-based. Set up steps Generate a GitHub Personal Access Token with repo scope Create a webhook on your repository pointing to this workflow's URL, subscribing to Issues events Create a Google Sheet named feature_roadmap with columns: date_added, issue_number, title, author, url, status Open Set Configuration and fill in the repo owner, repo name, Sheet ID, Slack channel, and FAQ URL Register GitHub and OpenAI Header Auth credentials and connect Google Sheets and Slack Activate the workflow How to customize Adjust duplicate_threshold for stricter or looser matching, change the embeddings model, or swap Sheets for Notion or Airtable.
+3

Triage GitHub issues with GPT-4.1-mini, Slack, Gmail, ClickUp and Sheets

How it works This workflow automatically handles new GitHub issues by reading and understanding them using AI, then taking multiple actions simultaneously — creating tasks, sending notifications, and keeping everything organized — without any manual effort. Step-by-step Trigger & filter** GitHub Trigger – Listens for issue events on a GitHub repository. If – Filters to only process issues with the action opened. AI analysis** Message a model – Sends the issue title, body, and metadata to GPT-4.1-mini with a structured prompt to extract category, subcategory, severity, priority, estimated effort, assigned team, summary, and suggested action. Parse AI Response – Converts the raw AI text output into a clean structured JSON object and appends a formatted date. Parallel output actions** Append row in sheet – Logs all issue data and AI analysis into a Google Sheets tracker. Create a task – Creates a prioritized ClickUp task with full issue and AI analysis details. Send a message – Posts a formatted Slack alert to #github-alerts with issue details and AI analysis. Send a message1 – Sends an HTML-formatted email via Gmail with the full issue report and AI insights. Create a comment on an issue – Posts the AI analysis summary as a comment directly on the GitHub issue. HTTP Request – Applies AI-generated labels (category + severity) to the GitHub issue via the GitHub API. Why use this? Eliminates manual issue triage by using AI to instantly classify and prioritize every new issue Keeps the entire team informed across Slack, Email, and GitHub simultaneously Auto-creates ClickUp tasks so nothing falls through the cracks Logs every issue to Google Sheets for reporting and trend analysis Responds directly on GitHub so issue reporters get instant acknowledgment
+2

Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs

Deliver your product updates in a modern, accessible format. This workflow automatically transforms GitHub releases into podcast-style audio announcements and distributes them via email and Slack. 🎯 What This Workflow Does This template bridges your development cycle with your marketing and communication channels. 🐙 Step 1 — GitHub Trigger & Notion Synthesis GitHub Trigger:** Fires when a new release is published Parsing:** Converts raw markdown into structured categories (features, fixes, improvements) Notion Merge:** Enriches data with additional context from your Notion changelog database 🎙️ Step 2 — AI Scriptwriting & Professional TTS Script Generation:** OpenAI converts technical notes into a conversational 60–90 sec script Voice Generation:** ElevenLabs turns the script into high-quality audio CDN Hosting:** Uploads MP3 via UploadToURL to generate a public URL 📧 Step 3 — Multimedia Newsletter Delivery Subscriber Fetch:** Loads email list from Google Sheets Email Creation:** Builds a rich HTML email with embedded audio player Distribution:** Sends via Gmail using BCC list 💬 Step 4 — Internal Sync & Database Update Slack Alert:** Posts update with audio preview to team channel Notion Update:** Marks entry as published and stores audio URL ✨ Key Features Bidirectional Notion Sync:** Reads and updates changelog entries Conversational AI:** Converts technical updates into human-friendly audio Dynamic HTML Emails:** Includes inline audio playback High-Quality Voice:** Uses ElevenLabs for realistic narration 🔧 Setup Requirements Required Integrations GitHub:** Personal Access Token (repo read scope) Notion:** Integration token + changelog database ElevenLabs:** API key + Voice ID OpenAI:** API key UploadToURL:** For MP3 hosting Slack:** Bot token Environment Variables NOTION_DATABASE_ID APPROVER_EMAIL DISCORD_WEBHOOK_URL SLACK_CHANNEL_ID Humanize your software updates. Import this template and start broadcasting your product journey with audio.

Build your own GitHub and Google Sheets integration

Create custom GitHub 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.

GitHub supported actions

Create
Create a new file in repository
Delete
Delete a file in repository
Edit
Edit a file in repository
Get
Get the data of a single file
List
List contents of a folder
Create
Create a new issue
Create Comment
Create a new comment on an issue
Edit
Edit an issue
Get
Get the data of a single issue
Lock
Lock an issue
Get Repositories
Returns all repositories of an organization
Create
Creates a new release
Delete
Delete a release
Get
Get a release
Get Many
Get many repository releases
Update
Update a release
Get
Get the data of a single repository
Get Issues
Returns issues of a repository
Get License
Returns the contents of the repository's license file, if one is detected
Get Profile
Get the community profile of a repository with metrics, health score, description, license, etc
Get Pull Requests
Returns pull requests of a repository
List Popular Paths
Get the top 10 popular content paths over the last 14 days
List Referrers
Get the top 10 referrering domains over the last 14 days
Create
Creates a new review
Get
Get a review for a pull request
Get Many
Get many reviews for a pull request
Update
Update a review
Get Repositories
Returns the repositories of a user
Get Issues
Returns the issues assigned to the user
Invite
Invites a user to an organization
Disable
Disable a workflow
Dispatch
Dispatch a workflow event
Dispatch and Wait for Completion
Dispatch a workflow event and wait for a webhook to be called before proceeding
Enable
Enable a workflow
Get
Get a workflow
Get Usage
Get the usage of a workflow
List
List workflows

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 GitHub connect with Google Sheets?

  • Can I use GitHub’s API with n8n?

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

  • Is n8n secure for integrating GitHub and Google Sheets?

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

Need help setting up your GitHub and Google Sheets integration?

Discover our latest community's recommendations and join the discussions about GitHub and Google Sheets integration.
Sergey Komardenkov
sérgio eduardo floresta filho
Julian
therealJMT
Guilherme

Looking to integrate GitHub and Google Sheets in your company?

Over 3000 companies switch to n8n every single week

Why use n8n to integrate GitHub 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