Website change watch

Public page diffs on targets you already watch

Watch public page content you are allowed to fetch and emit source-linked change rows when the page diff crosses your settings.

Not a SaaS pricing-page specialist (use SaaS Pricing Competitor Monitor). Not a docs/changelog drift Actor. Not a full-site crawler. You supply targets (name + url); live required array is empty.

from $80.00 / 1,000 URL change detected ($0.08 per delivered url-change-detected); $0.02 per URL snapshot; $5.00 per Change digest report. No Actor Start.

Open Website Change Monitor on Apify

Website Change Monitor, not a neighboring Actor

Use this page for this Actor’s job. Use SaaS Pricing Competitor Monitor for Competitor pricing HTML; Use Docs & Changelog Drift Scraper for Docs/changelog drift; Use SaaS Pricing Tracker for SaaS page change alerts.

This ActorSaaS Pricing Competitor MonitorDocs & Changelog Drift ScraperSaaS Pricing Tracker
IntentPage-diff alerts on a URL watchlistCompetitor pricing HTMLDocs/changelog driftSaaS page change alerts
Primary inputtargetsurlsurlsurls
What it readsUser-supplied public page HTMLPublic pricing pagesPublic docs HTMLPublic HTML
Primary outputurl-change-detected, optional url-snapshot, and change-digest-report eventsPrice-change rowsDrift rowsPage-change rows
Not this jobNot a SaaS pricing-page specialist (use SaaS Pricing Competitor Monitor). Not a docs/changelog drift Actor. Not a full-site crawler. You supply targets (name + url); live required array is empty.Not a generic page-diff watch.Not an arbitrary URL diff watch.Not a generic URL watch with page diffs.

Store ID: taroyamada/url-change-watch-scraper. Respect source terms, robots.txt, and rate limits.

Use cases

How is Website Change Monitor different from SaaS Pricing Competitor Monitor and Docs & Changelog Drift Scraper?

Website Change Monitor (taroyamada/url-change-watch-scraper): Watch public page content you are allowed to fetch and emit source-linked change rows when the page diff crosses your settings. Not a SaaS pricing-page specialist (use SaaS Pricing Competitor Monitor). Not a docs/changelog drift Actor. Not a full-site crawler. You supply targets (name + url); live required array is empty. SaaS Pricing Competitor Monitor is for Competitor pricing HTML (input urls; Public pricing pages; Price-change rows). Not a generic page-diff watch. Docs & Changelog Drift Scraper is for Docs/changelog drift (input urls; Public docs HTML; Drift rows). Not an arbitrary URL diff watch. SaaS Pricing Tracker is for SaaS page change alerts (input urls; Public HTML; Page-change rows). Not a generic URL watch with page diffs.

What input is required?

Live required fields: none (see live fields). Published exampleRunInput is shown below.

Field Type Default Notes
targets any[] [{"name": "Example page", "url": "https://example.com/", "cssSelector": "", "ignoreSelectors": []}] Watch targets. Public pages to monitor. Optional cssSelector narrows the hashed region; ignoreSelectors remove noisy nodes (as text patterns).
maxTargets integer 25 Max targets. Maximum targets to check in one run. minimum=1 maximum=100
emitSnapshots boolean false Emit snapshot rows. Emit a url-snapshot row whenever a page is successfully fetched (in addition to change rows).
generateDigest boolean true Generate digest report. When any change is detected, emit one change-digest-report summarizing the run.
stripDates boolean true Strip date-like tokens. Remove ISO-like dates and common timestamps before hashing to reduce false positives.
stripVolatileNumbers boolean false Strip volatile counters. Normalize long digit runs (view counts, etc.) before hashing.
maxDiffSegments integer 20 Maximum added/removed segments. Maximum number of added and removed text segments included in each change row. minimum=1 maximum=100
emitUnchanged boolean false Emit unchanged rows. When false (default), repeated unchanged runs emit zero rows and zero charges.
dryRun boolean false Dry run. Emit local sample rows without fetching or charging.
initialRunMode string enum "baseline_only" Initial run mode. emit_backfill allows first-run change rows when no baseline exists; baseline_only records hashes with zero output rows. enum: emit_backfill, baseline_only
snapshotKey string empty Snapshot key. Optional state namespace for canary and recurring schedules.
maxChargeUsd number 10 Maximum event charge per run. Fail before delivery when configured output events would exceed this buyer-approved cap. minimum=0.01 maximum=1000

Published Store example run input (omitted fields take schema defaults):

{
  "targets": [
    {
      "name": "Example page",
      "url": "https://example.com/",
      "cssSelector": "",
      "ignoreSelectors": []
    }
  ],
  "maxTargets": 3,
  "emitSnapshots": false,
  "generateDigest": true,
  "stripDates": true,
  "stripVolatileNumbers": false,
  "maxDiffSegments": 3,
  "emitUnchanged": false
}

Run Website Change Monitor on Apify

How do dataset, webhook, and dry-run delivery work?

Dataset output is the billable surface when rows are written. See live PPE for which events bill. dryRun true validates or samples without the usual dataset/webhook side effects described on the Store schema. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE.

What does a result contain?

Published README Output Example / Sample Output JSON. Illustration: { "rowType": "url_change", "billingEventName": "url-change-detected", "targetName": "Competitor pricing", "sourceUrl": "https://example.com/pricing", "changeKind": "content_hash_diff", "addedSegments": [ "The Pro plan now includes priority support." ], "removedSegments": [ "The Pro plan includes standard support." ], "addedSegmentCount": 1, "removedSegmentCount": 1, "changeRatio": 0.25, "contentHash": "bcf38e4a58839f6c7686c3f1", "previousContentHash": "dba4a91988d5ed0d5f3dbd31", "checkedAt": "2026-07-27T01:00:00.000Z" } Treat README samples as illustrations, not a live coverage guarantee. There is no published output JSON schema on the Store page.

How is Website Change Monitor priced?

Billing is pay per event. The live Store card is from $80.00 / 1,000 URL change detected ($0.08 per delivered url-change-detected); $0.02 per URL snapshot; $5.00 per Change digest report. No Actor Start. Current PPE:

Event Price Emitted when
url-change-detected (URL change detected) $0.08 Charged for each source-linked public page change row.
url-snapshot (URL snapshot) $0.02 Charged for each optional successful page snapshot row.
change-digest-report (Change digest report) $5.00 Charged for each run-level digest when changes were detected.

from $80.00 / 1,000 URL change detected ($0.08 per delivered url-change-detected); $0.02 per URL snapshot; $5.00 per Change digest report. No Actor Start.

See Website Change Monitor pricing on Apify

Limits to keep in mind

Open Website Change Monitor on Apify

Related pages