Website Change Monitor: Price and Text Changes via Wayback avatar

Website Change Monitor: Price and Text Changes via Wayback

Pricing

Pay per event

Go to Apify Store
Website Change Monitor: Price and Text Changes via Wayback

Website Change Monitor: Price and Text Changes via Wayback

Only real changes. Compares the cleaned text of every Wayback Machine snapshot of a page and returns just the diffs with real added or removed text, plus prices before and after. No noise flags, no comparison cap.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Rick Ivory

Rick Ivory

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 hours ago

Last modified

Features

Limited permissions

Share

Website Change Monitor: Price and Text Changes via Wayback Machine

Track competitor price changes without the alert noise. Find out what actually changed on any web page, and when. Give it a URL. It reads every archived Wayback Machine snapshot in the window you choose, compares the cleaned visible text, and returns only the changes that are real: lines added, lines removed, and prices that moved, with links to both snapshots.

It does not return snapshot lists, and it does not flag a page as "changed" because its markup, tracking code or a rotating widget changed.

Who it's for

  • Competitive pricing research. When did a competitor change their plans, and from what to what?
  • Terms and policy tracking. What changed in a terms of service, refund or privacy policy?
  • AI agents answering "when did X change on this page?" in one call with structured output.

Real example: stripe.com/pricing (run on Nov 9, 2026)

Default input, last 3 changes, 25 snapshots scanned. The Actor ignored 4 lines from a recommendations widget that blinked in and out between snapshots, and returned 2 real changes:

  1. Oct 30, 2026, 11:29 to 17:16 UTC. Stripe restructured its payouts pricing: a new "Dispute appealed fee: $15.00 for each dispute you appeal", new per-rail payout rates (ACH next day $0.50, ACH same day $1.00, real-time $2.50, Fedwire $25.00), stablecoin payouts, and coverage going from "50+ countries" to "160+ countries". 57 lines added, 48 removed.
  2. Nov 5 to Nov 6, 2026. A wording fix: "Smart Dispute fee" became "Smart Disputes fee".

How it works

  1. Looks up distinct archived captures of each URL with the Internet Archive CDX API.
  2. Fetches the archived HTML and strips scripts, styles and, by default, navigation and footers.
  3. Drops flickering content. Lines that appear and disappear 3 or more times across the scanned snapshots (rotating widgets, A/B tests, personalised banners) are ignored. A line that is added and stays, or a promotion that starts and later ends, is still reported.
  4. Compares the visible text of every snapshot in the window, with no cap. Snapshots whose cleaned text is identical are skipped.
  5. Reports each real change with dates and links to both snapshots. Content that only moved position is counted as moved, not changed.
  6. Pairs price and number changes only when the surrounding words match ("Pro plan $29/mo" to "Pro plan $35/mo"), so unrelated numbers are never reported as a price move.

Modes

  • Last N changes (lastChanges): scans the newest captures and reports up to N real changes, each pinned to the window between the last capture before it and the first capture after it.
  • Date range (dateRange): compares the page at the start and end of a date range.

Input example

{
"urls": ["https://stripe.com/pricing"],
"mode": "lastChanges",
"lastChanges": 3,
"maxSnapshotsToScan": 25
}

Output example (one diff record, abridged from the real run above)

{
"type": "diff",
"url": "https://stripe.com/pricing",
"from": { "date": "2026-11-05T13:09:06Z", "snapshotUrl": "https://web.archive.org/web/20261105130906/https://stripe.com/pricing" },
"to": { "date": "2026-11-06T13:23:09Z", "snapshotUrl": "https://web.archive.org/web/20261106132309/https://stripe.com/pricing" },
"summary": "1 line(s) added, 1 removed",
"linesAdded": 1, "linesRemoved": 1, "linesMoved": 0,
"numberChanges": [],
"added": ["There's no Smart Disputes fee for lost disputes. The dispute received fee still applies."],
"removed": ["There's no Smart Dispute fee for lost disputes. The dispute received fee still applies."],
"truncated": false,
"diffMethod": "lcs",
"flickeringLinesIgnored": 4
}

Other record types: no-change (with a reason) and error. Neither is charged.

Notes and limits

  • Coverage depends on the Archive. If the Archive did not capture a page, there is nothing to compare.
  • Regional versions. The Archive sometimes captures another country's version of a page. When the currency switches (for example € to $), the change is flagged as currencyChanged, not reported as a price change.
  • Flicker filter. On by default; switch off "Ignore flickering content" if you want to see A/B test churn.
  • Polite by design. One request at a time, with a delay between requests and backoff on rate limits. Large runs take time.

Pricing (pay per event)

  • snapshot-scanned: per archived snapshot read and compared.
  • diff-report: per real change found. You pay for changes, not for noise.
  • snapshot-row: per capture row, only when "Also output snapshot rows" is on.

Set a max cost per run and the Actor stops scanning cleanly when it is reached.

Archived content is provided by the Internet Archive (https://archive.org). This Actor is not affiliated with or endorsed by the Internet Archive.