Automated GitHub Bounty Tracker, Google Sheets Logging, and Instant Email Alerts - n8n Workflow

Use this powerful n8n workflow to automatically track new GitHub bounty issues, log status updates in Google Sheets, and receive instant Email alerts for time-sensitive opportunities. Get started with these n8n templates.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?


  • Open-source developers looking to capture paid bounty work.

  • Project managers requiring real-time DevOps monitoring for specific GitHub labels.

  • Users needing robust, scheduled API polling and data synchronization using n8n templates.

  • Organizations seeking to implement complex data merging and filtering logic within their n8n environment.

Overview

The core value of this sophisticated n8n workflow is providing real-time intelligence on high-value open-source contribution opportunities. It eliminates the necessity of manually checking GitHub by using a reliable scheduled n8n trigger to poll the API hourly for issues specifically labeled '💎 Bounty'. The retrieved data is centralized in Google Sheets, serving as both a comprehensive long-term database (Sheet1) and a short-term notification log (Sheet2). This complete automation guarantees you never miss a lucrative bounty opportunity. Furthermore, this n8n workflow features a second, separate n8n trigger that runs every six hours to ensure existing tracked bounties are updated, reflecting crucial status changes (like 'closed' or new comments) directly back into your linked Google Sheets.

How it Works

This powerful n8n automation is split into two primary scheduled operations, initiated by separate n8n trigger nodes.

1. New Bounty Detection and Notification (Hourly)


  1. Scheduled Start: The primary n8n trigger starts the workflow hourly.

  2. GitHub Search: The GitHub Search HTTP Request n8n node queries the GitHub API for all issues that are currently 'open' and tagged with the '💎 Bounty' label. Pagination is used to handle large result sets efficiently.

  3. Data Preparation: The results are split out into individual items. Concurrently, the workflow fetches all existing bounty entries from Google Sheet1.

  4. Identification: A Merge n8n node combines the GitHub results with the Sheet1 log, and a subsequent Filter n8n node isolates only those issues that are truly new (not present in Sheet1).

  5. Logging: These new bounties are immediately logged into Google Sheet1 using the Append row in sheet n8n node.

  6. Alerting: The workflow applies a second filter (Filter1) to check if the new issues were created within the last 5 days and haven't yet been notified (by checking Sheet2). If they qualify, an advanced, GitHub-themed HTML email is generated and sent via the Gmail n8n node.

  7. Notification Log: The details of the alert are recorded in Google Sheet2 to ensure the notification is never resent.

2. Status Update Synchronization (Every 6 Hours)


  1. Scheduled Update: A second n8n trigger runs every six hours to maintain data accuracy.

  2. Sheet Retrieval: The workflow fetches current lists from both Google Sheet1 and Sheet2.

  3. API Check: For every entry, individual GitHub Search HTTP Request n8n node calls are made to retrieve the latest state and comment count for that specific issue.

  4. Comparison and Update: Filter nodes (Filter2 and Filter3) compare the real-time GitHub data against the stored Google Sheets data. If the issue state or critical metrics (like comment count or updated date) have changed, the corresponding rows in Sheet1 and Sheet2 are updated using the Update row in sheet n8n node, ensuring your centralized bounty tracker remains accurate.

Installation Guide

To deploy this comprehensive n8n workflow template, follow these steps:


  1. Import: Copy the provided JSON and paste it into your n8n instance using the 'New' -> 'Import from JSON' function.

  2. GitHub Credentials: Configure the GitHub Search HTTP Request n8n node and the GitHub Search HTTP Request1/2 nodes. You must use a Bearer Token (Personal Access Token) with the required scope to access the GitHub API.

  3. Google Sheets Setup: You will need one Google Sheet document containing at least two tabs (Sheet1 and Sheet2). Authenticate the Google Sheets n8n node connections using OAuth2 credentials. Ensure the sheets have the necessary headers (e.g., 'Issue URL', 'Issue Name', 'Issue state', 'Issue Updated Date').

  4. Gmail Setup: Configure the Send a message n8n node with your Gmail OAuth2 credentials, specifying the target recipient email address.

  5. WhatsApp (Optional): The Send message (WhatsApp) n8n node is currently disabled. To enable it, configure your WhatsApp Business API credentials and set the execution flow appropriately.

  6. Activate: Once all connections are set, activate both the hourly and 6-hourly Schedule Trigger n8n nodes to start the monitoring process.

Node Details

Schedule Trigger (d88aec02): The main n8n trigger for detection, configured to run every hour, initiating the search for new bounties.
GitHub Search HTTP Request (f61d2bf5): This core n8n node uses the GitHub Search API. Key configuration includes the query q=is:issue label:"💎 Bounty" state:open and setting pagination parameters for reliable large-scale data retrieval.
Google Sheets (Get row(s) in sheet): Reads all existing tracked issues from Sheet1 of the bounty spreadsheet. This is vital for the comparison step in the n8n workflow.
Merge (4a3ff3fd): A crucial logic n8n node that compares the GitHub API results (Input 1) against the existing Google Sheets data (Input 2), matching by the Issue URL and configured to keep non-matches (identifying new items).
Filter (47672a86): Filters out already known bounties, ensuring only genuinely new entries proceed to the logging step. It checks if the new title is NOT found in the existing list of titles.
Google Sheets (Append row in sheet): Adds all newly discovered bounties to the master Sheet1 log, capturing details like URL, state, and creation date.
Filter1 (1e114fe5): This n8n node applies notification logic: filtering for issues created within the last 5 days AND ensuring the notification hasn't been sent previously (checked against Sheet2).
HTML (e71ab937): Generates a well-structured, styled HTML body for the email alert, dynamically injecting GitHub issue data.
Gmail (Send a message): Sends the final alert email, utilizing the HTML output generated by the previous n8n node.
Schedule Trigger1 (d07e43e6): The secondary n8n trigger, configured to run every 6 hours to handle status updates for existing tracked issues.
GitHub Search HTTP Request1/2: These n8n nodes execute targeted API calls, dynamically building the URL using existing sheet data (Issue Repo URL and Issue Number) to fetch the current state of tracked bounties.
Google Sheets (Update row in sheet): A powerful n8n node used in the update paths (C and D) to modify specific rows (identified by row_number) if changes in issue state or metrics are detected.

Related n8n Workflows

Free

Nodes: 10 Nodes
Updated: December 26 2025
View all
Created by

I’m a passionate open-source software developer and technologist who thrives on solving complex problems and building systems that make a difference. My work spans software development, automation, data analysis, and infrastructure tooling, with a strong focus on contributing to and improving the open-source ecosystem.

Featured*