Quick overview
This workflow runs daily, reads a list of search-results URLs from Google Sheets, captures above-the-fold SERP screenshots with Snapshot Site, compares them to baseline images, and posts a single digest to Slack highlighting shifted layouts, stable results, and any capture/compare failures.
How it works
- Runs every day at 7AM on a schedule.
- Reads the Keywords sheet in Google Sheets to get each SERP URL with its keyword label, country, language, and baseline screenshot URL.
- For each row, uses Snapshot Site to capture an above-the-fold screenshot of the SERP using the specified country and language settings.
- Compares the new screenshot with the baseline image in Snapshot Site to calculate a mismatch percentage and generate a diff link, or records the row as failed if an API error occurs.
- Builds a single digest message that lists shifted SERPs (≥10% mismatch) sorted by highest mismatch and includes any failures with their error messages.
- Posts the digest to a Slack channel, sending either the detailed shift/failure report or an all-clear message when everything is stable.
Setup
- Install the n8n-nodes-snapshot-site community node and add Snapshot Site API credentials.
- Add Google Sheets credentials, set the spreadsheet URL/ID in the Google Sheets node, and ensure the Keywords sheet contains columns url, keyword, country, language, and baselineUrl.
- Add Slack credentials and set the destination channel (for both Slack messages).
- Populate baselineUrl values with hosted baseline screenshots captured with the same width/height/country/language settings used for daily captures.
- Adjust the schedule time and (optionally) the 10% shift threshold in the workflow if you want more or fewer alerts.