Skip to content

Connect GitHub to Google Sheets

Google Sheets is where many teams track hours, bugs and plans, while the work itself happens in GitHub. Linking them fills timesheets and activity logs from real commits and pull requests, turns rows from a form into issues, and can even publish blog posts from a content sheet.

Ideas

What you can do with GitHub and Google Sheets

Timesheets, activity logs, issue triage logs and sheet-driven issues and blog posts, between GitHub and Google Sheets. These are ready-made starting points. Anything else you can describe works too.

Build your own

Build any GitHub and Google Sheets automation you can describe

The ideas above are ready-made starting points, not a fixed list. Describe what should happen between GitHub and Google Sheets in your own words, with your conditions, other apps or an AI step, and your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

For example, ask your assistant

Each night, update a sheet with every open GitHub issue older than 30 days in our repos, and use AI to add a column suggesting close, keep or needs info.

When a row in my Roadmap sheet changes Status to Ready, create a GitHub issue with the row's title and description, but skip it if the row already has an issue URL.

Use cases

Why people connect GitHub and Google Sheets

How the two apps work together

  • GitHub events such as new issues, merged pull requests or releases reach a ClickRuntime trigger link through GitHub webhooks, or the script reads the GitHub API on a schedule.
  • Each event becomes a new or updated row in your chosen Google Sheets tab.
  • In the other direction, the script checks the sheet for new ready rows every few minutes and creates GitHub issues from them.
  • Release tracking for product and support

    Product teams keep a sheet with one row per GitHub release, with tag, date and a short summary. Support and sales read the sheet instead of the repository.

  • Open issue counts for weekly reports

    Engineering managers record open issues and pull requests per repository each Monday in a sheet. Charts on that sheet show whether the backlog is growing.

  • Bulk issue creation from a planning sheet

    Project leads plan work in Google Sheets with title, assignee and labels columns. Rows marked ready become GitHub issues and the issue URL is written back to the row.

  • Contributor activity for agencies and clients

    Agency owners log commits and merged PRs per developer per client repository. The sheet feeds client invoices and monthly reports.

More apps

GitHub, Google Sheets and other apps in one automation

An automation isn't limited to two apps. Add the next step in another app and it runs as part of the same automation.

Weekly GitHub stats in a sheet and Slack

Every Monday, add a row to my Engineering Stats sheet with last week's merged PRs and open issues per repo, and post the totals in #engineering.

Match GitHub PRs to Jira keys in a sheet

Each day, list merged GitHub pull requests in a sheet with the Jira key from the PR title and that ticket's status in Jira.

Compare commits with Harvest hours

Every Friday, write a sheet row per developer with their GitHub commits this week next to the hours they logged in Harvest.

Setup

Connect GitHub and Google Sheets once

Every idea on this page uses the same two connections, so you set them up once. If one is missing, your assistant tells you and links to the right place.

GitHub

Developer / Source control

  1. In GitHub, open your profile picture, then Settings, Developer settings, Personal access tokens, Fine-grained tokens, and choose Generate new token.
  2. Give it a name and an expiration, and choose the resource owner (you or your organization).
  3. Under repository access, pick only the repos the automation needs, then set the minimum permissions, such as Issues, Pull requests or Contents.
  4. Generate the token and copy it.
  5. In the ClickRuntime dashboard, open Connections & secrets and save the token as a secret for GitHub.

Google Sheets

Spreadsheets

  1. In the ClickRuntime dashboard, open Connections and choose Google Sheets.
  2. Sign in with your Google account and allow access.
  3. Pick the spreadsheets the automation may use. It can't see any other file in your Drive.

FAQ

Questions about connecting GitHub and Google Sheets

Will it change rows I typed myself?
No. It adds new rows or fills the columns it owns, such as an issue link. Your own columns and formulas are left alone.
Which Google account does it use?
The Google account you connect in your ClickRuntime dashboard. Share the sheet with that account as an editor.
Can it read private repositories?
Yes, if the GitHub account or app you connect has access to them. You choose which repositories when you connect.
Can non-engineers use these sheets?
Yes. That is often the point: managers, clients and support staff can read and add rows without a GitHub login.
Does it update a row when the GitHub issue changes?
It can. The script can store the issue number in a column and update that row when the issue is closed, relabeled or reassigned.
Can it import my existing issues?
Yes. A one-time run can read existing issues from the GitHub API and write them to the sheet, then later runs only add new ones.
How quickly do sheet changes reach GitHub?
The sheet is checked on a schedule you choose, every 5 minutes or slower. GitHub to Sheets can be instant through GitHub webhooks.

Tell your assistant what GitHub and Google Sheets should do together

Free plan. No credit card.