App Review Monitor — App Store & Google Play Review Tracker avatar

App Review Monitor — App Store & Google Play Review Tracker

Pricing

from $0.50 / 1,000 review checks

Go to Apify Store
App Review Monitor — App Store & Google Play Review Tracker

App Review Monitor — App Store & Google Play Review Tracker

Monitor Apple App Store and Google Play Store reviews for changes. Detects new, edited, and deleted reviews. Pay per check + per detected change. Perfect for app reputation monitoring, competitor analysis, and 1-star alerting.

Pricing

from $0.50 / 1,000 review checks

Rating

0.0

(0)

Developer

Mariano Ferreras

Mariano Ferreras

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Pay-per-event — zero monthly fee, zero subscription. Monitor Apple App Store and Google Play Store reviews for changes. Detects new, edited, and deleted reviews with smart state tracking via Apify KeyValueStore. Pay per check + per detected change. No rental. No idle fees.


What it does

This is an app review monitoring tool that periodically fetches the latest reviews from both the Apple App Store (via RSS JSON feed) and Google Play Store (via SSR HTML parsing), detects changes since the last check, and emits only the changed reviews to the dataset.

Change types detected:

  • New — a review ID not seen before
  • Edited — same review ID but the content, title, rating, or version changed
  • Deleted — a review ID is no longer present in the latest fetch

Run it once to establish a baseline for each app, then schedule it (e.g. every hour, daily, weekly) to monitor continuously. State persists across runs via Apify's built-in KeyValueStore — no external storage needed.


Use cases

  • App reputation monitoring — track your app's reviews across both stores in one tool
  • 1-star alerting — get notified the moment a new 1-star review drops (use minRating: 1)
  • Competitive intelligence — watch competitor apps for new praise, complaints, or feature requests
  • Review response tracking — detect when a developer edits a review in response to a bug fix
  • Regulatory / compliance monitoring — track apps in regulated industries for emerging sentiment changes
  • Agent-powered workflows — wire this into an AI agent: have it summarize what changed across all your monitored apps

Input example

Monitor Facebook on both platforms, plus Instagram on Play Store:

{
"apps": [
{
"appId": "284882215",
"platform": "appstore",
"country": "us",
"language": "en",
"label": "Facebook (iOS)"
},
{
"appId": "com.facebook.katana",
"platform": "playstore",
"language": "en",
"label": "Facebook (Android)"
},
{
"appId": "com.instagram.android",
"platform": "playstore",
"language": "en",
"label": "Instagram (Android)"
}
],
"maxReviewsPerApp": 100,
"minRating": 2,
"webhookUrl": "https://hooks.example.com/review-alerts"
}
FieldTypeDefaultDescription
appsarrayrequiredOne or more apps to monitor. Each entry: appId (string), platform ("appstore" | "playstore"), country (App Store only, default "us"), language (default "en"), label (optional, appears in output)
maxReviewsPerAppinteger200Max reviews to fetch per app per run
minRatingintegernoneOnly alert on reviews at or below this rating (1–5). E.g. 2 = alert on 1★ and 2★ only
webhookUrlstringnonePOST changed reviews (new/edited) to this URL
webhookSecretstringnoneBearer token for webhook auth
useResidentialProxybooleanfalseUpgrade to residential proxies if needed

Finding app IDs

  • App Store (iOS): Find your app's ID in its App Store URL. E.g. apps.apple.com/us/app/facebook/id284882215 → ID is 284882215.
  • Play Store (Android): The package name is in the URL. E.g. play.google.com/store/apps/details?id=com.facebook.katana → ID is com.facebook.katana.

Output example

[
{
"changeType": "new",
"reviewId": "14338093308",
"rating": 5,
"title": "Happy Thursday",
"text": "GM",
"author": "spicy and dicey",
"date": "2026-07-23T04:40:43-07:00",
"version": "570.0.0",
"helpfulVotes": 0,
"platform": "appstore",
"appId": "284882215",
"label": "Facebook (iOS)",
"checkedAt": "2026-07-24T10:00:00.000Z",
"previousRating": null,
"previousHash": null
}
]
FieldTypeNotes
changeTypestring"new", "edited", or "deleted"
reviewIdstringUnique review identifier
ratinginteger1–5 star rating
titlestringReview title
textstringFull review body text
authorstringReviewer display name
datestringISO 8601 date of the review
versionstring|nullApp version at time of review
helpfulVotesintegerNumber of helpful votes
platformstring"appstore" or "playstore"
appIdstringThe app ID or package name
labelstring|nullHuman-readable label from input
checkedAtstringISO timestamp of when we checked
previousRatinginteger|nullPrevious rating (only on "edited")
previousHashstring|nullPrevious content hash (only on "edited")

Pricing

This actor uses pay-per-event pricing. You are never charged for failed requests or quarantined results.

EventPriceDescription
review-checkedCharged once per app per run, covers fetch cost
review-changedCharged once per detected new or edited review
apify-actor-startplatform-managedStandard platform startup event

The review-changed event is only triggered when a review actually differs from the previous check. Deleted reviews are detected but not charged.


Scheduling

App Review Monitor is designed to be run on a schedule. Create a schedule in Apify Console (e.g. hourly, daily) and the actor will automatically compare against the previous run's stored state.

To monitor many apps, batch them into a single run using the apps input array. This is more efficient than one schedule per app.


How it works

Apple App Store: Fetches the RSS JSON feed at https://itunes.apple.com/{country}/rss/customerreviews/id={appId}/sortBy=mostRecent/json. No proxy or browser needed. Paginates up to your maxReviewsPerApp limit. Apple returns at most ~50 reviews per request, so the practical limit per fetch is ~500 reviews.

Google Play Store: Fetches the SSR HTML page and extracts the embedded review data from the AF_initDataCallback payload. No proxy or browser needed for moderate volume. The initial page load typically returns the most recent ~20 reviews.

State management: Each app's previous review set is stored in a named KVS keyed by SHA-256(appId+platform). Only the minimum data needed for diffing is stored (review ID → hash + rating).


Use with AI agents (MCP)

This actor is available as a tool for AI assistants via the Apify MCP server. Agents can monitor app reviews directly — no Apify console needed.

MCP setup

{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.apify.com?tools=mfapitools/app-review-monitor",
"--header",
"Authorization: Bearer <YOUR_API_TOKEN>"
]
}
}
}

Example agent prompts

  • "Monitor Facebook reviews on both App Store and Google Play. Alert me on any 1-star reviews"
  • "Check Instagram Play Store reviews for anything new since yesterday"
  • "What's the sentiment trend for our app this week?"

Limitations

  • Apple RSS caps at ~50 reviews per request — the feed is limited by Apple. If your app gets many reviews, you may miss some between runs. Recommended schedule: every few hours for active apps.
  • Google Play only returns ~20 reviews on initial page — the SSR HTML only embeds a limited number of reviews. Full pagination is not available via plain HTTP (the Play Store API requires Play Integrity attestation).
  • First run is always a baseline — the first check of any app shows all fetched reviews as "new". Schedule the second run to see only changes.
  • No login-gated data — this actor only fetches public review data. No App Store Connect or Google Play Console access.
  • Google Play parsing is fragile — relies on the internal AF_initDataCallback JSON structure, which Google may change without notice. The fixture test catches breakage.
  • Public data only — only reviews visible to the public on each store's public pages.

Changelog

See ./CHANGELOG.md.