Apple App Store Reviews Scraper & Monitor avatar

Apple App Store Reviews Scraper & Monitor

Pricing

from $0.30 / 1,000 review saveds

Go to Apify Store
Apple App Store Reviews Scraper & Monitor

Apple App Store Reviews Scraper & Monitor

Export Apple App Store reviews across 50 markets. Filter by rating, date, version, and keyword; monitor new reviews and enrich results with app metadata.

Pricing

from $0.30 / 1,000 review saveds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

8

Total users

1

Monthly active users

9 days ago

Last modified

Share

Export and monitor public Apple App Store reviews across 50 major markets, with rating, date, version, and keyword filters plus helpful votes and enriched app metadata.

Apple App Store Reviews Scraper saves one public review per dataset row. Use it for ASO, product feedback mining, release monitoring, support triage, competitor review analysis, and mobile app intelligence.

At a glance

  • Input: Apple App Store URLs or numeric app IDs in appUrlsOrIds.
  • Output: review text, rating, version, date, helpful votes, stable record ID, app metadata, and source feed URL.
  • Controls: one or many countries, 50 major markets, rating/date/version/keyword filters, concurrency, review caps, and incremental monitoring.
  • Exports: download JSON, CSV, Excel, XML, RSS, or HTML, or read results through API/MCP.
  • Best for: ASO analysis, post-release monitoring, competitor review mining, and support issue triage.

Ready-to-run examples

What can it do?

  • Export public app reviews: Save one row per public Apple App Store review for one or more apps.
  • Filter by country and sort: Use localized review feeds and choose recent or helpful review ordering.
  • Compare markets in one run: Collect several storefronts or a curated set of 50 major App Store markets.
  • Filter before export: Keep selected ratings, dates, versions, or review keywords.
  • Track ratings and versions: Capture star ratings, review text, dates, version labels, and public author display names.
  • Monitor new reviews: Compare with a previous dataset, save only new stable review IDs, and read CHANGE_SUMMARY plus per-market diagnostics.
  • Add app metadata: Include app identity, genre, ratings, current version, release notes, icon, price, and currency when available.
  • Use as an App Store reviews API workflow: Run from API, schedules, webhooks, or MCP-compatible agents and export CSV/Excel/JSON.

Input example

{
"appUrlsOrIds": ["https://apps.apple.com/us/app/whatsapp-messenger/id310633997"],
"countries": ["us", "gb"],
"sortBy": "mostrecent",
"maxReviewsPerApp": 20,
"minRating": 1,
"maxRating": 3,
"keywords": ["crash", "subscription"],
"includeAppMetadata": true
}

Output example

{
"appId": "310633997",
"appUrl": "https://apps.apple.com/us/app/whatsapp-messenger/id310633997",
"country": "us",
"appName": "WhatsApp Messenger",
"developerName": "WhatsApp Inc.",
"recordId": "apple-review:310633997:us:14177411298",
"outputSchemaVersion": "1.0",
"reviewId": "14177411298",
"reviewUrl": "https://itunes.apple.com/us/review?id=310633997&type=Purple%20Software",
"authorName": "Example reviewer",
"authorUri": "https://itunes.apple.com/us/reviews/id123456789",
"rating": 4,
"voteSum": 0,
"voteCount": 0,
"version": "25.12.0",
"title": "Example review title",
"content": "Example public review text...",
"updatedAt": "2026-06-13T04:03:53-07:00",
"sortBy": "mostrecent",
"status": "ok",
"bundleId": "net.whatsapp.WhatsApp",
"genre": "Social Networking",
"averageUserRating": 4.7,
"userRatingCount": 18000000,
"currentVersion": "25.12.0",
"sourceFeedUrl": "https://itunes.apple.com/us/rss/customerreviews/page=1/id=310633997/sortby=mostrecent/json",
"scrapedAt": "2026-07-03T00:00:00.000Z"
}

Input configuration

SettingJSON keyDescription
App URLs or IDsappUrlsOrIdsRequired App Store URLs or numeric IDs. URLs must contain an id123456789 value.
CountrycountryTwo-letter App Store country code, such as us, gb, ca, de, fr, or au.
CountriescountriesOptional list of country codes; replaces the single-country setting.
Include major marketsallMajorMarketsAdd a curated set of 50 storefronts.
Sort reviews bysortBymostrecent or mosthelpful.
Maximum reviews per appmaxReviewsPerAppPer-app review cap from 1 to 500. Apple feeds may expose fewer rows.
App-country safety limitmaxAppCountryPairsMaximum expanded app × country combinations.
ConcurrencymaxConcurrencyApp-country combinations processed together, from 1 to 10.
Include app metadataincludeAppMetadataAdd app identity, ratings, version, release, icon, price, and genre data.
Rating rangeminRating, maxRatingKeep reviews within a 1-5 star range.
App versionsversionsKeep exact reviewed-version values.
KeywordskeywordsKeep reviews containing at least one term in the title or text.
Date rangedateFrom, dateToKeep reviews inside an ISO date/date-time range.
Baseline datasetcompareDatasetIdCompare stable record IDs with a previous dataset.
Save only new reviewsonlyNewReviewsExclude IDs already present in the selected baseline.

Output fields

FieldDescription
appIdNumeric Apple App Store app ID.
recordIdStable apple-review:app:country:review identifier.
outputSchemaVersionOutput contract version for pipelines.
appUrlCanonical App Store app URL.
countryCountry code used for the review feed.
appNameApp name when metadata lookup is available.
developerNameDeveloper or publisher name when available.
reviewIdPublic review identifier.
reviewUrlPublic review URL when Apple exposes it.
authorNameReviewer display name when available.
authorUriReviewer URI when available.
ratingStar rating as a number.
voteSum, voteCountPublic helpfulness score and vote count from Apple.
versionApp version attached to the review when available.
titleReview title.
contentReview text.
updatedAtReview update timestamp from Apple.
sortBy, statusRequested ordering and record status.
bundleId, genre, genresApp identity and category metadata.
averageUserRating, userRatingCountStorefront rating snapshot.
currentVersion, currentVersionReleaseDate, releaseNotesCurrent release metadata.
iconUrl, price, currencyStorefront artwork and pricing metadata.
sourceFeedUrlApple RSS feed URL used for the batch.
scrapedAtTimestamp when the row was saved.

Pricing

This Actor uses pay-per-event pricing:

  • Run start: $0.005 once per run.
  • Saved review: charged once for each review row written to the dataset.
  • Not charged as results: reviews removed by filters, duplicate reviews, baseline reviews skipped by onlyNewReviews, and app-country pairs that return no rows.

The saved-review price depends on the Store discount tier attached to your Apify account:

Account context / Store tierPer saved reviewPer 1,000 saved reviews
Free / no discount$0.000575$0.575
Starter / Bronze$0.000500$0.500
Scale / Silver$0.000390$0.390
Business / Gold$0.000300$0.300
Custom / Platinum$0.000200$0.200
Custom / Diamond$0.000140$0.140

Example Actor charges, including the $0.005 run-start event:

Saved reviewsFree / no discountBusiness / Gold
20$0.0165$0.0110
100$0.0625$0.0350
500$0.2925$0.1550
1,000$0.5800$0.3050

These are Actor charges from the current live pricing record. Apify platform usage for compute, storage, proxies, or data transfer can be additional. Check the Pricing tab and the completed run for the exact amount charged to your account.

Common workflows

  • Release monitoring: schedule mostrecent reviews after each app update and compare version, rating, and content.
  • ASO review mining: export review text by country to identify feature language, complaints, and competitor positioning.
  • Support triage: collect low-star review text and route common issues to support or engineering.
  • Competitor analysis: run several app IDs with the same country and cap, then compare themes and ratings.
  • Downstream AI analysis: send title, content, rating, version, and updatedAt into tagging or summarization workflows.

Incremental review monitoring

Run once to create a baseline dataset. On the next run, select that dataset in compareDatasetId; optionally enable onlyNewReviews. The Actor writes:

  • RUN_SUMMARY with pages fetched, reviews scanned and saved, filter counts, duplicates, existing-review skips, failures, retries, and SUCCEEDED or PARTIAL status.
  • CHANGE_SUMMARY with baseline/current/new/removed/unchanged counts and stable IDs.

For recurring monitoring, schedule a small mostrecent run. Update the task's baseline periodically when you want comparison against the latest accepted snapshot.

Tips for best results

  • Use numeric IDs when possible: App Store URLs work, but IDs are easiest to reuse in scheduled tasks.
  • Start with a few countries: review availability and language vary by storefront; use maxAppCountryPairs to control global sweeps.
  • Keep first runs small: start with 20-50 reviews per app before increasing to 500.
  • Use sort intentionally: mostrecent is best for monitoring; mosthelpful is useful for evergreen review samples.
  • Expect optional fields: author URI, review URL, version, and app metadata can be missing for some rows.

Limits and caveats

  • Public reviews only: the actor does not log in and does not collect private Apple account data.
  • Feed limits: Apple review feeds may expose fewer rows than your requested cap, often up to about 500 per country/sort combination.
  • Metadata is optional: review rows can still be saved if app metadata lookup is unavailable.
  • No ratings aggregate history: the actor exports review rows, not complete historical rating curves.
  • No developer replies: Apple's public RSS review feed does not expose developer responses.

API usage

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/apple-app-store-reviews-scraper').call({
appUrlsOrIds: ['https://apps.apple.com/us/app/whatsapp-messenger/id310633997'],
country: 'us',
sortBy: 'mostrecent',
maxReviewsPerApp: 20,
includeAppMetadata: true
});
console.log(run.defaultDatasetId);

MCP and AI agents

Focused Apify MCP server URL:

https://mcp.apify.com?tools=fetch_cat/apple-app-store-reviews-scraper

Example agent prompt: "Collect the 20 newest US App Store reviews for this app, then group complaints by app version and rating."

FAQ

Does it require an Apple account?

No. It collects public App Store review data.

Can I export reviews to CSV or Excel?

Yes. Apify datasets export to CSV, Excel, JSON, JSONL, XML, RSS, and HTML.

Can I scrape multiple apps in one run?

Yes. Add multiple app URLs or IDs to appUrlsOrIds. The review cap applies per app.

Can I scrape reviews from several countries?

Yes. Pass countries, or enable allMajorMarkets for the curated 50-storefront set. Every row includes country, and the app-country pair limit prevents accidental oversized runs.

Why did I get fewer reviews than requested?

The selected app, country, or sort order may expose fewer public reviews than your requested maxReviewsPerApp value.

Is this an Apple App Store API alternative?

It can be used as a public review export workflow, but it is not an official Apple API.

Support

If a run fails or a field looks wrong, report it from the Actor page. Include the Apify run ID or run URL, input JSON, expected output, actual output, and one public App Store URL that reproduces the problem.