An automated weekly pipeline built in n8n that tracks product updates across any set of competitors, deduplicates findings across runs, scores them by strategic impact, and delivers a ranked digest to Slack.
Point it at any company's changelog, release notes, blog, or news page. No other changes needed - just update the competitor list in the n8n editor.
Built by a PM to replace hours of manual competitive research every week.
Every week, the workflow:
- Scrapes the URLs you configure - changelogs, release notes, blogs, news pages
- Detects changes using page-level hashing - only processes pages that actually changed since the last run
- Extracts product updates using an AI agent - pulls structured feature data, filters out marketing fluff
- Deduplicates findings using a content hash - the same update never surfaces twice across runs
- Scores each update 1-5 for strategic impact using a second AI agent
- Summarises trends across all competitors using a third AI agent
- Delivers a ranked weekly digest to Slack
In your n8n instance:
- Go to Workflows > Import from File
- Select
workflow/competitor-intelligence.json
Open the Vendor List code nodes (there are 3, one per pipeline batch) and replace the placeholder entries with your actual competitors:
return [
{json:{vendor:'Competitor A', url:'https://competitor-a.com/changelog'}},
{json:{vendor:'Competitor B', url:'https://competitor-b.com/releases'}},
{json:{vendor:'Competitor C', url:'https://competitor-c.com/blog'}},
];Point URLs at pages that get updated regularly. Changelogs, release notes, and news rooms work best. Avoid homepages.
You need two credentials in n8n (Settings > Credentials):
- OpenAI - used by all AI extraction, scoring, and summarisation nodes
- Slack - used by the output nodes to post the weekly digest
Toggle the workflow to Active. Runs on a weekly schedule. Use Execute Workflow for a manual test first.
Weekly Schedule
|
v
Competitor List <-- edit this to add your competitors
|
v
HTTP Scrape
|
v
Hash Page --> Compare with stored hash
|
[Only if page changed]
|
AI Agent: Extract Features
(structured JSON output only)
|
Deduplicate by content hash
(never sees same update twice)
|
AI Agent: Score 1-5
(strategic impact + reason)
|
Aggregate all competitors
|
AI Agent: Trend Summary
|
Slack Digest
Three parallel pipelines run the same logic across different competitor batches. A failure in one batch does not block the others.
Each update is scored 1-5 across these dimensions:
| Dimension | What it measures |
|---|---|
| Roadmap overlap | Direct conflict with your planned features |
| Customer-facing impact | Would users switch for this? |
| Technical differentiation | Hard for you to replicate quickly? |
| Release velocity | Is the market moving fast in this area? |
| Pricing or packaging threat | Does this change the competitive price equation? |
Hash-based change detection - HTTP scraping runs every week but AI extraction only fires when a page actually changed. This keeps OpenAI API costs near zero on quiet weeks.
Deduplication by content hash - Updates are hashed as feature_title || link. Seen IDs are stored in static memory and persist across runs. The same release note never resurfaces in a future digest.
Strict JSON output - All AI agents return structured JSON only. Prompts include explicit fallback instructions (return {"updates":[]}) to prevent null errors on empty weeks.
Three parallel pipelines - Competitors are split across three independent schedule triggers. Isolates failures and lets you set different scrape cadences per batch.
Add a competitor - Add a new entry to any Vendor List code node. Nothing else to change.
Track more than 15 competitors - Clone a full pipeline branch (Schedule + Vendor List + the processing chain) and wire it to a new Vendor List.
Narrow what gets extracted - Edit the AI Agent (Extract Features) prompt. Default extracts all product updates. You can tighten it: "Extract only pricing changes" or "Extract only API and developer tooling updates."
Change scoring criteria - Edit the AI Agent3 prompt. Default uses 5 general strategic dimensions. Customise for your context: "We are a B2B SaaS company. Weight scoring toward enterprise buying criteria."
Add a second output - Duplicate the Slack node and replace with Email, Notion, or an HTTP webhook.
Weekly Competitor Intel - 4 new updates this week
[5/5] Competitor A - Real-time Collaboration Mode
Simultaneous multi-user editing now live. Direct overlap with our Q3
roadmap. They shipped this first.
[4/5] Competitor B - API Rate Limit Increase (10x)
Developer-facing but signals platform investment. Worth flagging in
enterprise deals where API access is a criterion.
[3/5] Competitor C - Onboarding Templates (10 new)
Industry-specific setup templates. Reduces time-to-value for SMB.
Low threat for our enterprise focus.
[2/5] Competitor A - Dark Mode
UI polish. No strategic significance.
- n8n (self-hosted or cloud)
- OpenAI GPT-4o
- Slack
Praveen Kumar Dayalan - Product Manager LinkedIn | Portfolio