Business Review Monitor — New & Changed Reviews avatar

Business Review Monitor — New & Changed Reviews

Pricing

from $1.50 / 1,000 source checkeds

Go to Apify Store
Business Review Monitor — New & Changed Reviews

Business Review Monitor — New & Changed Reviews

Monitor public business-review pages for new and changed reviews with persistent state, structured output, and selector fallback when Schema.org data is unavailable.

Pricing

from $1.50 / 1,000 source checkeds

Rating

0.0

(0)

Developer

Automation Tech

Automation Tech

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Monitor public business-review pages and receive structured review records ready for alerts, dashboards, reputation workflows, and scheduled automation.

The Actor uses Schema.org / JSON-LD review data first, with optional CSS selectors for sources that expose reviews in regular HTML.

Persistent monitoring · New/changed detection · Stable review IDs · Pay only for delivered review rows

Quick start

Add one or more public review pages:

{
"startUrls": [
{ "url": "https://example.com/customer-reviews" }
],
"maxResults": 100
}

Each delivered row contains a stable uniqueKey, source URL, scrape timestamp, and normalized review fields such as business name, review text, author, publication date, review URL, and rating when the page exposes them.

Turn a snapshot into a monitor

Enable persistent state and reuse the same stateKey on scheduled runs:

{
"startUrls": [
{ "url": "https://example.com/customer-reviews" }
],
"monitor": true,
"stateKey": "example-business",
"emitMode": "new_and_changed",
"maxResults": 100
}

Monitoring modes:

  • new — deliver reviews not previously acknowledged by this monitor
  • changed — deliver previously known review records whose normalized content changed
  • new_and_changed — deliver both
  • all — deliver all observed reviews

Monitoring state is stored in the named Apify Key-Value Store business-review-monitor-state. State is updated only after a selected row is actually delivered. Reviews blocked by maxResults or the PPE spending limit are not incorrectly marked as delivered, so they remain eligible on a later run.

changeRetentionDays and maxStateRecords keep state bounded.

What counts as a changed review?

A review is matched by its stable uniqueKey. When the same key is observed again, the Actor hashes the normalized review data. A different hash is classified as changed.

Typical changes can include:

  • review text edits
  • rating changes on the same review
  • title/author/date metadata changes exposed by the source

This does not claim to monitor an aggregate business rating unless the target review records themselves expose that information.

Extraction

Automatic structured-data mode

When a page exposes Schema.org Review, LocalBusiness, Organization, or compatible JSON-LD, the Actor normalizes those reviews automatically.

CSS selector fallback

For a source without useful structured review markup, configure:

  • Review card selector
  • Review title selector
  • Review body selector
  • Rating selector
  • Author selector
  • Published date selector
  • Optional stable review ID attribute

Selectors are source-specific and may need maintenance if the website redesigns its markup.

Output

The Reviews dataset view exposes useful monitoring columns directly:

  • monitor status
  • business
  • rating
  • review title/body
  • author
  • published date
  • review URL
  • source URL
  • stable unique key

The OUTPUT record contains run-level diagnostics:

  • requested / successful / failed targets
  • emitted and charged rows
  • PPE charge-limit status
  • new / changed / unchanged counts
  • rows intentionally skipped by monitoring mode
  • persisted state size
  • output warnings

Billing semantics

The live Store uses Apify's synthetic apify-default-dataset-item event for each review row written to the default Dataset. The current event price is $0.0015 per delivered review row ($1.50 / 1,000), plus the standard Actor-start event at $0.00005.

Duplicate rows, unchanged reviews excluded by monitoring mode, failed targets, and rows stopped by the result or spending cap are not written as delivered review rows and therefore do not create a default-Dataset-item event.

The current customer price and any future pricing changes remain visible in the Apify Pricing tab.

Scheduling

For recurring monitoring:

  1. Test each source with a small manual run.
  2. Enable monitor.
  3. Give the workflow a stable stateKey.
  4. Choose new or new_and_changed.
  5. Schedule the same input hourly, daily, or weekly through Apify.

The first new / new_and_changed run treats previously unknown reviews as new. A changed-only first run establishes a baseline without emitting those initial reviews.

Reliability and limits

Public review sites differ significantly.

  • Schema.org markup may be incomplete.
  • CSS selectors can stop matching after a source redesign.
  • Some sites return login walls, CAPTCHAs, or HTTP 403 responses.
  • The Actor does not bypass authentication or private APIs.
  • Blocked pages are target failures, not evidence that a business has zero reviews.
  • Some Trustpilot/G2-style surfaces may block generic public crawling and should not be advertised as supported unless a live run has been verified.

A run where every target fails is failed rather than silently presented as an empty successful scrape. Successful targets from a partial run are preserved.

Responsible use

Use the Actor for lawful collection of public review information. Follow applicable privacy, content, consumer-protection, and platform requirements.