📊 Track weekly Google SERP rankings with Bright Data, Google Sheets, and Slack
⚡ 6 views · 📊 Market Research & Insights
Description
Quick overview
This workflow runs every Monday at 8 AM to check your Google rankings for keywords stored in Google Sheets using Bright Data’s SERP API, then writes the latest and previous positions back to the sheet and posts a per-keyword update to a Slack channel.
How it works
- Runs every Monday at 8 AM on a scheduled trigger.
- Reads the list of keywords, target domains, and target countries from a Google Sheets spreadsheet.
- Queries Google for each keyword via the Bright Data SERP API.
- Parses the organic results to find the ranking position of the target domain (or returns “Not in top 100”) and carries forward the prior saved position.
- Updates Google Sheets by writing the new “Last Position” and shifting the prior value into “Previous Position” for the same row.
- Sends a formatted SERP rank update message to a selected Slack channel for each tracked keyword.
Setup
- Add credentials for Google Sheets, Bright Data, and Slack (OAuth2).
- Replace
YOUR_GOOGLE_SHEET_IDin both Google Sheets steps with your spreadsheet ID and ensure the worksheet containsKeyword,Target Domain,Target Country,Last Position, andPrevious Positioncolumns. - Configure the Bright Data node with your preferred zone and set the country input to use your sheet’s
Target Countryvalue if you want per-row geo targeting. - Set
YOUR_SLACK_CHANNEL_IDto the channel where you want the updates posted.
đź”— Nodes Used
Google Sheets, Slack, Schedule Trigger
📥 Import
Download workflow.json and import into n8n:
Workflow menu → Import from File