changedetection.io — Self-Hosted Website Change Monitoring
changedetection.io monitors websites for content changes and sends alerts. Track price drops, restock alerts, content updates, and page modifications automatically.
What it is
changedetection.io is a self-hosted website change monitoring tool. It watches web pages for content changes and sends notifications when something changes. Use cases include tracking price drops on e-commerce sites, monitoring competitor pages, detecting content updates, and alerting on restock events.
The tool supports CSS/XPath selectors for monitoring specific page sections, visual comparison for layout changes, and multiple notification channels including email, Slack, Discord, and webhooks.
How it saves time or tokens
Manually checking websites for updates is tedious and unreliable. changedetection.io automates this by polling pages on a schedule and diffing the content. You only see what changed, not the entire page.
For AI agents that need to track web content, changedetection.io provides a structured change feed that can trigger automated workflows when specific changes are detected.
Additionally, the project's well-structured documentation and active community mean developers spend less time troubleshooting integration issues. When AI coding assistants generate code for this tool, they can reference established patterns from the documentation, producing correct implementations with fewer iterations and lower token costs.
How to use
- Deploy with Docker:
docker run -d --restart always \
-p 5000:5000 \
-v /data/changedetection:/datastore \
ghcr.io/dgtlmoon/changedetection.io
- Open the web UI at
http://localhost:5000and add a URL to monitor.
- Configure monitoring options:
URL: https://example.com/product-page
Check interval: 30 minutes
CSS selector: .price-tag
Notification: Slack webhook
- changedetection.io polls the page and alerts you when the selected content changes.
Example
# Docker Compose with browser support for JavaScript-heavy sites
services:
changedetection:
image: ghcr.io/dgtlmoon/changedetection.io
ports:
- '5000:5000'
volumes:
- ./data:/datastore
environment:
PLAYWRIGHT_DRIVER_URL: 'ws://playwright:3000'
playwright:
image: browserless/chrome
ports:
- '3000:3000'
Related on TokRepo
- AI Tools for Web Scraping — Web content extraction and monitoring tools
- AI Tools for Automation — Automation workflows triggered by web changes
Common pitfalls
- Not using CSS selectors to target specific content. Without selectors, changedetection.io monitors the entire page, triggering false alerts for ad rotations, timestamps, and session tokens.
- Polling too frequently. Aggressive polling can get your IP blocked. Start with 30-minute intervals and adjust based on how often the target page actually changes.
- Forgetting to enable JavaScript rendering for dynamic sites. Many modern sites load content via JavaScript. Enable the Playwright/Chrome browser option for these sites.
- Failing to review community discussions and changelogs before upgrading. Breaking changes in major versions can disrupt existing workflows. Pin versions in production and test upgrades in staging first.
Frequently Asked Questions
Yes. changedetection.io supports headless browser rendering via Playwright or Browserless Chrome. This executes JavaScript on the page before checking for changes, handling SPAs and dynamically loaded content.
changedetection.io supports email, Slack, Discord, Telegram, Pushover, webhooks, and many more via the Apprise notification library. You can configure multiple notification channels per watch.
Yes. Use CSS selectors or XPath expressions to target specific elements. For example, monitor only the price element on a product page to avoid false alerts from unrelated content changes.
Yes. changedetection.io is free and open-source for self-hosting. There is also a paid hosted version for users who do not want to manage their own server. The self-hosted version has no limitations on the number of watches.
changedetection.io stores snapshots of monitored content and generates visual diffs showing additions, removals, and modifications. You can browse the history of changes for each monitored URL.
Citations (3)
- changedetection.io GitHub— changedetection.io monitors websites for content changes and sends alerts
- changedetection.io Wiki— changedetection.io documentation
- Playwright Documentation— Web content monitoring best practices
Related on TokRepo
Discussion
Related Assets
Conda — Cross-Platform Package and Environment Manager
Install, update, and manage packages and isolated environments for Python, R, C/C++, and hundreds of other languages from a single tool.
Sphinx — Python Documentation Generator
Generate professional documentation from reStructuredText and Markdown with cross-references, API autodoc, and multiple output formats.
Neutralinojs — Lightweight Cross-Platform Desktop Apps
Build desktop applications with HTML, CSS, and JavaScript using a tiny native runtime instead of bundling Chromium.