Website Change Monitor - Text Diff avatar

Website Change Monitor - Text Diff

Pricing

$2.00 / 1,000 page checks

Go to Apify Store
Website Change Monitor - Text Diff

Website Change Monitor - Text Diff

See exactly which lines were added or removed on any web page since your last check. Track pricing, terms and policy pages. Pay only per page checked.

Pricing

$2.00 / 1,000 page checks

Rating

0.0

(0)

Developer

Quillray

Quillray

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Share

Website Change Monitor – Text Diff

Find out exactly which lines changed on the pages you care about.

Give it a list of pages, such as a competitor's pricing page, a terms of service page or a privacy policy. On every run it reads the visible text of each page and compares it with the text from the previous run. You get the lines that were added and the lines that were removed, so you see the change itself and not just a note that something changed. There is no subscription. You pay only for the pages you check.

What it does

  • Checks up to 50 pages per run and returns one row per page: first check, unchanged, changed, blocked or error.
  • Lists the added and removed lines as they appear on the page.
  • Compares only the visible text, so changes in code, scripts or styles do not raise false alarms.
  • Lets you ignore small edits with minChangeChars.
  • Keeps the last good version of each page in your own Apify account. An error never resets the comparison.
  • Follows robots.txt and identifies itself to site owners with its own User-Agent.
  • Works with Apify Schedules and integrations, so you can get the result after each run.

How to use it

  1. Click Try for free.
  2. Paste the page URLs, one per line.
  3. Click Start. The first run saves the text of each page and reports it as a first check.
  4. Run it again later, or add a schedule (for example once a day). From the second run on you see what changed.
  5. Optional: add an integration (email, Slack, Make, Zapier) to get the result after each run. The run's status message tells you what happened, for example 2 of 10 pages changed or no changes.

Example input:

{
"urls": ["https://example.com/pricing", "https://example.com/terms"],
"minChangeChars": 20
}

Input

FieldDefaultWhat it does
urlsrequired1-50 page addresses (http or https). Duplicates are checked once.
minChangeChars1Changes smaller than this many characters are reported as unchanged. Use it to ignore noise.
maxDiffLines200The most added and removed lines listed per page (1-1000). The full counts are always given.

Output

One row for each page. You can view the results as a table in the Output tab or export them as CSV, Excel or JSON.

Example row after a price change:

{
"url": "https://example.com/pricing",
"status": "changed",
"checkedAt": "2026-10-08T06:00:03.120Z",
"previousCheckedAt": "2026-10-07T06:00:02.870Z",
"added": ["Pro plan: $39 per month."],
"removed": ["Pro plan: $29 per month."],
"addedCount": 1,
"removedCount": 1
}

What the statuses mean:

  • first-check: the page is checked for the first time. Its text is saved for the next run.
  • unchanged: the text is the same as last time, or the change is smaller than minChangeChars.
  • changed: lines were added or removed. See added and removed.
  • blocked-by-robots: the site's robots.txt does not allow the page, so it was not fetched.
  • error: the page could not be checked. The error field says why, for example HTTP 404 or dns-error.

Other fields: finalUrl (the address after redirects), addedCount and removedCount (full numbers even when the lists are cut), truncated (true when a list was cut) and note (extra information).

Cost

2.00 USD per 1,000 checked pages (event page-checked). Pages that end with an error or are blocked by robots.txt are free. Platform compute of this actor is not charged to you.

Example: 20 pages checked once a day for 30 days is 600 checks and costs 1.20 USD.

Tip: set a maximum cost per run in the run options if you want a hard limit. Prices can change, and Apify shows the current ones before you run.

Limitations

  • Pages built by JavaScript are not rendered. Only the HTML the server sends is read, so such pages may show little or no text.
  • Dynamic parts of a page, such as dates, counters or ads, can look like changes. A higher minChangeChars helps.
  • Very large pages (about 1 MB of HTML or text) are skipped with an error.
  • One run checks up to 50 pages and stops starting new pages after 15 minutes.
  • Run one schedule per list at a time. Two runs that check the same page at the same moment can both report the same change.
  • Apify integrations notify you after every run, also when nothing changed. The status message shows which case it was.

Privacy and responsibility

  • The actor runs in your Apify account. The publisher of this actor does not store, receive or see your input, your results or the text of the pages you monitor.
  • What is stored, and where. The visible text of each monitored page (never the HTML), its URL and the time of the check are kept in a Key-Value Store named website-change-monitor-state in your Apify account. Results go to your run's dataset. You can view, export and delete both at any time in Apify Console.
  • You choose the pages and you are responsible for that choice. Monitor only pages you may fetch and keep a copy of text from. Check each site's terms of use and the law that applies to you before you add it. The actor follows robots.txt, but that is not a legal check.
  • Personal data. The actor does not look for personal data, but a page you monitor may contain some, for example names or contact details. Its text is then stored in your store. Whether that is allowed, and how long you may keep it, is your decision and your responsibility.

FAQ

Why does the first run show no changes? The first run has nothing to compare with. It saves the text of each page, and changes show up from the second run on.

Does an error reset the comparison? No. An error or a blocked page never changes the saved text. The next successful check compares with the last good version.

Can I start over for my pages? Yes. In Apify Console open Storage, then Key-value stores, and delete the store website-change-monitor-state. The next run starts with first checks.

How do I get an email when a page changes? Add an Apify integration to the actor or to its schedule. It runs after every run, and the status message tells you whether anything changed.

Will site owners see this actor? Yes. It sends its own User-Agent with a link to this page and follows robots.txt. If a site does not allow it, the page is reported as blocked and is not charged.

Something not working, or missing a feature? Open an issue on this actor's page. We read every one and reply as soon as we can.