πŸ“Š Monitor competitor SEO changes with CustomJS Scraper, Google Sheets & Slack alerts

⚑ 237 views Β· πŸ“Š Market Research & Insights

πŸ’‘ Pro Tip β€” HTTP Request scraping tends to break when sites update their markup. If you’re scraping a major platform, check if ScraperNode covers it β€” it has maintained scrapers for LinkedIn, Instagram, TikTok, YouTube, and 20+ other platforms that return structured data.

View All Scrapers

Description

> ⚠️ Notice:
> Community nodes like @custom-js/n8n-nodes-pdf-toolkit can only be installed on self-hosted instances of n8n.


Screenshot from 20250911 001042.png

This n8n workflow demonstrates how to monitor competitor websites for SEO changes by scraping content and updating a Google Sheet. It uses the Scraper node from customjs.space to extract HTML content and parse key SEO elements like title, <h1>, <h2>, and meta description.


What this workflow does


Requirements


Workflow Steps

  1. Schedule Trigger
    Runs automatically (weekly by default, adjustable as needed).

  2. Google Sheets – Get Competitor URLs
    Reads competitor website URLs from the configured sheet.

  3. CustomJS Scraper – Fetch HTML

    • Inputs each website URL.
    • Returns raw HTML text for analysis.
  4. Code – Extract SEO Elements
    Parses the HTML to extract:

    • Title
    • H1s
    • H2s
    • Meta description
  5. Google Sheets – Update SEO Data
    Updates the sheet with the new SEO data and a current date.

  6. If – Check for SEO Changes
    Compares old vs. new values.

  7. Slack Notification – Alert on Changes
    Sends a message to Slack when updates are detected.


Usage

  1. Get API key from CustomJS

    • Sign up on the CustomJS platform.
    • Navigate to your profile page.
    • Click β€œShow” to reveal your API key.
  2. Set Credentials for CustomJS API in n8n

    • Copy your API key into a new CustomJS credential.
  3. Prepare your Google Sheet

    • Create a sheet with a column named Websites.
    • Enter competitor URLs (must start with https://).
  4. Run or schedule the workflow

    • The workflow will scrape competitor sites, update the sheet, and notify you of any SEO changes.

Example Output

Google Sheet after update:

WebsitesTitleMeta DescriptionH1sH2sDate
https://example.comExample TitleExample meta descriptionExample H1 HeadingExample H2s2025-09-07 12:00:00

Slack Notification Example

> ⚠️ Competitor SEO Change Detected!

Website: https://example.com

Title

Meta Description

H1s

H2s

Date: 2025-09-07 12:00:00


Customization Tips

πŸ”— Nodes Used

Google Sheets, Slack, Schedule Trigger

πŸ“₯ Import

Download workflow.json and import into n8n: Workflow menu β†’ Import from File

πŸ“– Importing guide Β· πŸ”‘ Credential setup