App Store & Google Play Reviews Scraper
Pricing
from $0.10 / 1,000 reviews
App Store & Google Play Reviews Scraper
Scrape reviews and app stats from Google Play and the App Store in one run. Many apps and countries, developer replies, and an incremental mode that only returns new reviews on scheduled runs.
Pricing
from $0.10 / 1,000 reviews
Rating
0.0
(0)
Developer
Team Tickory
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
Reviews and app statistics from both stores in one run: any number of apps, any number of countries, developer replies where the store exposes them, and an incremental mode that returns only the reviews that are new since the previous run. Schedule it daily and you have a review monitor for support, ASO or sentiment pipelines without re-paying for reviews you already have.
No proxies, no logins: both stores are read through their public endpoints.
What you get
Two record types in the same dataset, told apart by type.
review
| Field | Notes |
|---|---|
store | app_store or google_play |
appId, country, language | language is set for Google Play only |
reviewId, rating, title, text, author, date | title is App Store only; date is ISO 8601 |
version | App version the review was written for |
helpfulVotes | Thumbs-up / helpful count |
developerReply | {text, date} for Google Play; null on the App Store, whose public feed does not expose replies |
url | Link to the review |
app (one per app and country, optional): title, developer, rating, rating count, review count,
installs (Google Play), price, genre, version, release and update dates, release notes, content
rating, icon, store URL.
Tasks that fail are written as type: "error" records with the reason, never dropped silently.
Input
| Field | Default | Notes |
|---|---|---|
apps | required | App Store / Google Play URLs, Apple numeric ids, Android package names. Mix freely. |
countries | ["us"] | One fetch per app and country. |
languages | ["en"] | Google Play review languages. Ignored for the App Store. |
sort | recent | recent or helpful. |
maxReviewsPerApp | 500 | 0 = all available. |
onlyNewReviews | false | Incremental mode (see below). |
stateStoreName | app-reviews-monitor-state | Where incremental state lives. |
sinceDate | none | Stop once reviews older than this date are reached. |
minRating, maxRating | 1, 5 | Keep only reviews in this star range, e.g. 1–2 for complaints. |
includeAppDetails | true | Add the app snapshot record. |
concurrency | 4 | Parallel app/country tasks. |
Incremental mode
With onlyNewReviews: true the actor remembers, per app and country, the newest review ids and
date it has delivered, in the named key-value store. The next run pages newest-first and stops as
soon as it reaches a review it has already delivered. Only new reviews are written and charged.
The first run delivers the newest maxReviewsPerApp reviews and seeds the state.
Use different stateStoreName values for independent monitors (for example per client).
Pricing
Pay per event. You pay only for what is written to the dataset.
| Event | Price |
|---|---|
| Review | $0.0001 ($0.10 per 1,000) |
| App snapshot | $0.001 |
Limits, stated honestly
- App Store: at most 500 reviews per app and country. Apple's public feed serves 10 pages of 50. That is Apple's limit, not a setting.
- App Store feeds can be empty for some app and country combinations even when the app has reviews. The actor reports these in its status message instead of failing.
- App Store developer replies are not in the public feed and are returned as
null. - Google Play exposes reviews per language, not per country: the same English reviews are
shown in every country. The actor therefore fetches Google Play reviews once per app and
language (with
countryset to the first country in your list) and usescountriesonly for the per-country app snapshot. Pass severallanguagesto cover a multilingual user base. - Review counts shown in the stores include ratings without text; only reviews with text are retrievable.
Example
{"apps": ["https://apps.apple.com/us/app/youtube/id544007664", "com.whatsapp"],"countries": ["us", "gb", "de"],"languages": ["en", "de"],"onlyNewReviews": true,"maxReviewsPerApp": 200}
Changelog
- 0.1: first release.
- 0.1.6: fix runs failing on dataset schema validation (app snapshot rating is a decimal).
- 0.1.7: App Store pages that come back empty in Apple's JSON feed are retried from the XML feed of the same page.