v0.55.8

Try our Chrome extension

Chrome store icon Chrome Webstore

Easily add the current web-page from your browser directly into your changedetection.io tool, more great features coming soon!

Changedetection.io needs your support!

You can help us by supporting changedetection.io on these platforms;

The more popular changedetection.io is, the more time we can dedicate to adding amazing features!

Many thanks :)

changedetection.io team

  • No watch with the UUID 0f5bfc5e-8c54-4fe0-9a45-e0e46eacd545 found.
  • No watch with the UUID 2e44be8b-e9b8-49e4-9a49-be8e9abdfdd2 found.
  • Bu izleyici için fark sayfasını göstermek üzere yeterli geçmiş yok (2 anlık görüntü gerekli).
  • 1 izleyici yeniden kontrol için sıraya alındı.
  • 未找到 UUID 为 f462a06e-263e-46e5-a6c0-00b495c1102e 的监控项。
  • Language set to auto-detect from browser
  • No watch with the UUID dc86b968-e6ad-4c05-b264-f31effa89276 found.
  • Not enough history (2 snapshots required) to show difference page for this watch.
  • Keinen Verlauf für den angegebenen Link gefunden, fehlerhafter Link?
  • Die Beobachtung mit der UUID 43cb3ded-45d4-4fb3-a59e-dd9c7568a075 existiert nicht.
  • Завдання з UUID cfcef03d-493c-4b95-ad78-9d6b9df80f6d не знайдено.
  • No watch with the UUID f9592b06-5b88-437b-aebc-d8f908bb8967 found.
  • No history found for the specified link, bad link?
  • No watch with the UUID 76e0fdcb-dd75-4493-ba86-e851ef170f4a found.
  • No se encontró ningún monitor con el UUID 38fa97b5-68c1-430f-8aeb-1e7ff1066a79.
  • Monitor no encontrado
  • Historie pro vybraný odkaz nenalezena, chybný odkaz?
  • 未找到该链接的历史记录,链接是否有误?
  • No watch with the UUID a3e50260-2ae4-4fe1-8832-df29944e99fd found.
  • No watch with the UUID 51b3518c-4bfa-416c-a9a8-b7bb37db7c9f found.
  • 08ef4a34-c601-4037-9cd9-fd4d6e714f0a UUID'li izleyici bulunamadı.
  • UUID f5fd0555-b970-499f-bb95-b5e5e11edcb8 のウォッチが見つかりません。
  • UUID 2cd57b46-d988-40b3-87a7-7b0035d74efc에 해당하는 모니터링을 찾을 수 없습니다.
  • No watch with the UUID 8ab0a385-dffe-4477-b881-6c752bbcdc0d found.
  • No watch with the UUID 8a882328-a2fe-4658-a4a8-67842f18ddac found.
  • The watch by UUID 8a882328-a2fe-4658-a4a8-67842f18ddac does not exist.
  • UUID c0e60412-0a81-426d-8a95-edd655e0c2a2에 해당하는 모니터링을 찾을 수 없습니다.
  • Недостаточно истории (необходимо 2 снимка), чтобы показать страницу различий для этих часов.
  • Часы с UUID f266d43c-25f7-4daa-b6df-7d9a88f449e4 ​​не найдены.
  • Language set to auto-detect from browser
Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
Variables are supported in the URL (help and examples here).
Organisational tag/group name used in the main listing page
Automatically uses the page title if found, you can also use your own title/description here

The interval/amount of time between each check.

Want to use a time schedule? First confirm/save your Time Zone Settings

Sends a notification when the filter can no longer be seen on the page, good for knowing when the page changed and your filter will not work anymore.
Limit collection of history snapshots for each watch to this number of history items.
Set to empty to use system settings default

Use the Basic method (default) where your watched sites don't need Javascript to render.

The Chrome/Javascript method requires a network connection to a running WebDriver+Chrome server, set by the ENV var 'WEBDRIVER_URL'.

Tip: Connect using Bright Data and Oxylabs Proxies, find out more here.
If you're having trouble waiting for the page to be fully rendered (text missing etc), try increasing the 'wait' time here.
This will wait n seconds before extracting the text.
Using the current global default settings

Sorry, this functionality only works with fetchers that support interactive Javascript (so far only Playwright based fetchers)
You need to Set the fetch method to one that supports interactive Javascript.

Use system defaults

Tip: Use AppRise Notification URLs for notification to just about any service! Please read the notification services wiki here for important configuration notes.

Show advanced help and tips
Title for all notifications
Body for all notifications — You can use Jinja2 templating in the notification title, body and URL, and tokens from below.
Show token/placeholders
  • For JSON payloads, use |tojson without quotes for automatic escaping, for example - { "name": {{ watch_title|tojson }} }
  • URL encoding, use |urlencode, for example - gets://hook-website.com/test.php?title={{ watch_title|urlencode }}
  • Regular-expression replace, use |regex_replace, for example - {{ "hello world 123" | regex_replace('[0-9]+', 'no-more-numbers') }}
  • For a complete reference of all Jinja2 built-in filters, users can refer to the https://jinja.palletsprojects.com/en/3.1.x/templates/#builtin-filters

Format for all notifications
Field
Operator
Value
Actions

Use the verify (✓) button to test if a condition passes against the current snapshot.

Read a quick tutorial about using conditional web page changes here.

✨ AI

Configure an AI / LLM provider in Settings → AI / LLM to enable AI Change Intent and AI Change Summary.

Activate preview
Pro-tips:
  • Use the preview page to see your filters and triggers highlighted.
  • Some sites use JavaScript to create the content, for this you should use the Chrome/WebDriver Fetcher
One CSS, xPath 1 & 2, JSON Path/JQ selector per line, any rules that matches will be used.
Show advanced help and tips
  • Remove HTML element(s) by CSS and XPath selectors before text conversion.
  • Don't paste HTML here, use only CSS and XPath selectors
  • Add multiple elements, CSS or XPath selectors per line to ignore multiple parts of the HTML.

Text filtering

Limit trigger/ignore/block/extract to;
Note: Depending on the length and similarity of the text on each line, the algorithm may consider an addition instead of replacement for example.
 So it's always better to select Added+Replaced when you're interested in new content.
 When content is merely moved in a list, it will also trigger an addition, consider enabling Only trigger when unique lines appear
Good for websites that just move the content around, and you want to know when NEW content is added, compares new lines against all history for this watch.
Remove duplicate lines of text
Helps reduce changes detected caused by sites shuffling lines around, combine with check unique lines below.
Remove any whitespace before and after each line of text
  • Text to wait for before triggering a change/notification, all text and regex are tested case-insensitive.
  • Trigger text is processed from the result-text that comes out of any CSS/JSON Filters for this monitor
  • Each line is processed separately (think of each line as "OR")
  • Note: Wrap in forward slash / to use regex example: /foo\d/
  • You can also use conditions - "Page text" - with Contains, Starts With, Not Contains and many more /foo\d/
  • Matching text will be ignored in the text snapshot (you can still see it but it wont trigger a change)
  • Each line processed separately, any line matching will be ignored (removed before creating the checksum)
  • Regular Expression support, wrap the entire line in forward slash /regex/
  • Changing this will affect the comparison checksum which may trigger an alert


  • Block change-detection while this text is on the page, all text and regex are tested case-insensitive, good for waiting for when a product is available again
  • Block text is processed from the result-text that comes out of any CSS/JSON Filters for this monitor
  • All lines here must not exist (think of each line as "OR")
  • Note: Wrap in forward slash / to use regex example: /foo\d/
  • Keep only lines that contain any of these words or phrases (plain text, case-insensitive)
  • One entry per line — any line in the page text that contains a match is kept
  • Simpler alternative to regex — use this when you just want lines about a specific topic
  • Example: enter celsius to keep only lines mentioning temperature readings
  • Extracts text in the final output (line by line) after other filters using regular expressions or string match:
    • Regular expression - example /reports.+?2022/i
    • Don't forget to consider the white-space at the start of a line /.+?reports.+?2022/i
    • Use //(?aiLmsux)) type flags (more information here)
    • Keyword example - example: Out of stock
    • Use groups to extract just that text - example /reports.+?(\d+)/i returns a list of years only
    • Example - match lines containing a keyword /.*icecream.*/
  • One line per regular-expression/string match

Sorry, this functionality only works with fetchers that support Javascript and screenshots (such as playwright etc).
You need to Set the fetch method to one that supports Javascript and screenshots.

Check count 3
Consecutive filter failures 0
History length 1
Last fetch duration 2.119s
Notification alert count 0
Server type reply github.com

Not enough history to calculate Levenshtein metrics

Content Analysis

Word count (latest snapshot) 2249

Word count is a simple measure of content length, calculated by splitting text on whitespace.

Download latest HTML snapshot Download watch data package