changedetection.io

Apache-2.0
Platform
Docker Web
Licence
Apache-2.0 Open source
changedetection.io

changedetection.io watches web pages for you and tells you when something on them changes. You add a URL, choose how often it should be re-checked, and from then on the app keeps each version, produces a word, line or character-level diff of what moved, and sends the notification wherever you want it.

It is a Python (Flask) application with a browser interface, shipped as a Docker image, so docker run -d -p 5000:5000 dgtlmoon/changedetection.io gives you a working instance with no account, no external service and no page data leaving your host. Every watch keeps its own history, so a page can be reopened to see exactly what it said last week.

What it can watch

  • Plain page text, or one region of it picked with CSS selectors, XPath or JSON filters for API endpoints.
  • Browser Steps — fill a field, click a button, accept a cookie banner or log in — run before the page is fetched, so changes behind a search form or a login can be tracked. This needs the Playwright content fetcher enabled.
  • Re-stock and price detection for product pages, with upper and lower price limits, percentage-change rules and a price history graph.
  • Conditional triggers, so a notification fires on “price below X” rather than on any byte of the page changing.

Notifications and integrations

Alerts go out by e-mail, Discord, Slack, Telegram, generic webhook and a long list of further providers. An optional AI layer — any OpenAI-compatible endpoint, including a local Ollama, vLLM or llama.cpp server through LiteLLM — turns a raw diff into a plain-language summary such as “price dropped from $89.99 to $67.00”, and can suppress diffs that do not match a plain-English intent. A REST API and an MCP endpoint let other tools drive the watch list directly.

Deployment and requirements

Docker is the supported route: the image runs on linux/amd64 and linux/arm64, stores everything in a mounted data volume and needs no separate database. A docker-compose.yml in the repository shows the volume and port wiring. A hosted subscription ($8.99/month, with proxies) exists for people who would rather not run infrastructure, but the self-hosted build is the same open-source application with nothing held back.

Where it fits

Uptime monitors such as Uptime Kuma answer “is it up?”; changedetection.io answers “did the content change?”. That covers the pages that never fail but quietly change: government notices, price lists, release notes that ship without an RSS feed, job boards and stock levels.

Explore More Categories

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.