Self-host changedetection.io
updated Sep 2026deployed by usprices checked · Jul 2026Install verified on Ubuntu 26.04 · Sep 2026 · how we test
We earn commissions when you shop through the links below. Full disclosure →
Watches web pages for content changes and sends notifications through Apprise to Discord, Slack, Telegram, email, webhooks and more, with CSS/XPath/JSON filters to limit a watch to part of a page. Plain HTTP fetching works out of the box; JavaScript-heavy pages need an optional Playwright/Chrome browser container.
Key facts
CategoryMonitoring
LicenseApache-2.0
StackPython, Flask
Min RAM512 MB
Official imageyes
Measured idle RAM98 MB
Difficulty
What you need
- Any VPS with at least 512 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- Under an hour if you've used Docker before
Where to host itaffiliate disclosure
Hetzner Cloudrun it on
From $23.59/mo · 2 vCPU / 4 GB / 80 GB · EU + USKamaterafree trial
From $4/mo · 1 vCPU / 1 GB / 20 GB · US + EU + AsiaDigitalOceanalso works on
From $6/mo · 1 vCPU / 1 GB / 25 GB · US + EU + AsiaPaid link — we earn a commission if you shop through it.
Install
Run these commands on your server:
# changedetection.io — upstream binds to localhost; put a reverse proxy in front
docker run -d --restart always -p "127.0.0.1:5000:5000" \
-v datastore-volume:/datastore --name changedetection.io \
dgtlmoon/changedetection.io
# → http://localhost:5000 on the server — set a password under SettingsMore in Monitoring
Monitoring
Beszel
GoPocketBaseSQLite
easyRead guide →
Monitoring
Checkmate
TypeScriptNode.jsMongoDB
easyRead guide →
Monitoring
Gatus
Go
easyRead guide →
Monitoring
Glances
Python
easyRead guide →