App Store Reviews Scraper avatar

App Store Reviews Scraper

Pricing

from $0.50 / 1,000 app store review records

Go to Apify Store
App Store Reviews Scraper

App Store Reviews Scraper

Export Apple App Store reviews for any app across every storefront, both sort orders, with a stable schema

Pricing

from $0.50 / 1,000 app store review records

Rating

0.0

(0)

Developer

Nick Randall

Nick Randall

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Export Apple App Store reviews for any app across every storefront and both sort orders, with a stable schema.

Get structured review data from Apple's public App Store review feed as JSON, CSV or Excel, or call it as a tool from Claude, Cursor, ChatGPT or any MCP client. Pay only for the results you receive.

What you get

Give it an app by its numeric App Store ID, bundle ID (e.g. com.spotify.client) or a full App Store URL, and a list of storefronts, and it returns reviews with title, text, star rating, app version, helpfulness votes and date. Both the "Most Recent" and "Most Helpful" sort orders are supported in the same run, and every review is tagged with the storefront and sort order it came from so you can merge or dedupe as needed.

Every result is a flat record with stable field names, so it drops straight into a spreadsheet, a database or an AI agent's context.

Why use this instead of the incumbents

  • A fraction of the price of the incumbent App Store review scrapers
  • Every storefront in one run instead of one country at a time
  • Both sort orders in a single call, tagged so you can tell them apart
  • Stable schema across runs, unlike incumbents that have changed shape without notice
  • Works as an MCP tool, so AI agents can pull sentiment on demand
  • No browser, no proxies, no personal data: fast runs and a tiny cost per result

Input

FieldTypeDefaultMeaning
appIdsarrayNumeric App Store IDs, bundle IDs, or App Store URLs
countriesarray["us"]Two-letter storefront codes, or ["all"] for every supported storefront
sortOrdersarraybothmostRecent, mostHelpful, or both if left empty
maxResultsinteger200Cap on results saved. You are charged per result, so this caps your cost.

Example input:

{
"appIds": ["com.spotify.client"],
"countries": ["us", "gb"],
"maxResults": 200
}

Output

Example result:

{
"appId": "324684580",
"country": "us",
"sortBy": "mostRecent",
"reviewId": "10001",
"title": "Great app",
"content": "I use this every day.",
"rating": 5,
"appVersion": "8.9.0",
"voteSum": 12,
"voteCount": 14,
"updated": "2026-09-01T00:00:00-07:00"
}

Field reference: appId, country, sortBy, reviewId, title, content, rating (1 to 5), appVersion, voteSum, voteCount, updated. Reviewer names are never collected.

Pricing

Pay per event. You are charged $0.50 per 1,000 results saved to the dataset, plus a fraction of a cent per run start. Nothing is charged for results you do not receive. Set "Max total charge per run" in the run options to cap spending on any run. When a run reaches your cap it stops cleanly and keeps everything it already saved.

Rough guide: 1,000 reviews cost $0.50 and take about 45 seconds.

Use it from an AI agent (MCP)

This Actor is available as an MCP tool through the Apify MCP server. Add it to your client, then ask the agent for the data in plain language.

Claude Desktop, Claude Code or Cursor (mcp.json / claude_desktop_config.json):

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?actors=brightpath-data/app-store-reviews",
"headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
}
}
}

ChatGPT and other clients that support remote MCP servers: add https://mcp.apify.com/?actors=brightpath-data/app-store-reviews as a connector with your Apify token.

Example prompt once connected: "Pull the 100 most recent US reviews for Spotify and summarize the complaints."

Use it from code

curl -X POST "https://api.apify.com/v2/acts/brightpath-data~app-store-reviews/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"appIds":["com.spotify.client"],"countries":["us"],"maxResults":200}'

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("brightpath-data/app-store-reviews").call(run_input={"appIds": ["com.spotify.client"], "countries": ["us"], "maxResults": 200})
items = client.dataset(run["defaultDatasetId"]).list_items().items

Limits and fair use

  • Up to 10,000 results per run.
  • The reviews feed serves at most 10 pages (about 500 reviews) per app, per storefront, per sort order; run again later for newer reviews.
  • Requests are paced at 1.5 seconds apart to stay well under Apple's informal rate limit; a run across many storefronts and both sort orders will take proportionally longer.
  • A bundle ID that Apple's lookup API cannot resolve, or a storefront with no reviews for that app, is skipped rather than treated as an error.

Data comes from Apple's public customer-reviews RSS-to-JSON feed, served without authentication at itunes.apple.com. This Actor collects public, non-personal data only: reviewer names are dropped, and review content remains the property of its authors. This Actor does not bypass logins, paywalls or access controls. You are responsible for how you use the data.

Support

Found a problem or need a field added? Open an issue on the Actor's Issues tab. Fixes for broken runs are prioritized.