Apple App Store Reviews Scraper avatar

Apple App Store Reviews Scraper

Pricing

Pay per event

Go to Apify Store
Apple App Store Reviews Scraper

Apple App Store Reviews Scraper

Scrape Apple App Store reviews, ratings, dates, versions, countries, and app metadata from public iTunes review feeds.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Extract Apple App Store reviews from public iTunes review feeds.

Use this actor to collect review text, star ratings, app versions, review dates, reviewer names, helpful-vote counts, countries, and app metadata for iOS apps.

What does Apple App Store Reviews Scraper do?

Apple App Store Reviews Scraper turns public iOS review feeds into a clean dataset.

It accepts Apple App Store app URLs or numeric app IDs.

It then fetches public customer reviews from the Apple iTunes RSS endpoint.

Each saved row is one review.

The actor also enriches each row with app metadata from Apple's public lookup endpoint.

You can export the dataset as JSON, CSV, Excel, XML, RSS, or HTML from Apify.

Who is it for?

πŸ§‘β€πŸ’Ό Product managers use it to monitor app feedback after releases.

πŸ“£ App marketers use it to track sentiment, keywords, and campaign impact.

⭐ ASO agencies use it to compare review language across clients and competitors.

🎧 Support teams use it to find recurring complaints and urgent bug reports.

πŸ›‘οΈ Trust, safety, and compliance teams use it to preserve review evidence.

πŸ“Š Data teams use it to feed BI dashboards and text analytics pipelines.

Why scrape App Store reviews?

App reviews are one of the fastest public signals for product quality.

They include star ratings and free-form customer language.

They often mention bugs, pricing objections, feature requests, and competitor comparisons.

Review monitoring is recurring work.

Most teams need fresh data daily or weekly.

This actor is designed for repeat runs and simple automation.

Why use this actor?

βœ… HTTP-only implementation using public Apple endpoints.

βœ… No account, login, cookie, browser, or CAPTCHA required.

βœ… Supports multiple apps in one run.

βœ… Supports multiple App Store countries in one run.

βœ… Uses Apple's reliable most-recent public review feed.

βœ… Includes app metadata when available.

βœ… Produces flat review rows ready for spreadsheets and databases.

Data you can extract

FieldDescription
appIdNumeric Apple App Store app ID
appNameApp name from Apple lookup
bundleIdiOS bundle identifier
developerNameDeveloper or publisher name
genrePrimary App Store genre
genresGenre list from Apple lookup
averageUserRatingCurrent average user rating
userRatingCountCurrent total rating count
currentVersionCurrent app version
countryApp Store country code used for the feed
sortByReview sorting mode
reviewIdApple review ID
reviewUrlPublic review URL when provided
reviewTitleReview headline
reviewTextReview body text
ratingReview star rating from 1 to 5
reviewVersionApp version reviewed
reviewDateReview timestamp
authorNameReviewer display name
voteSumHelpful vote score
voteCountHelpful vote count
scrapedAtActor scrape timestamp

How much does it cost to scrape Apple App Store reviews?

This actor uses pay-per-event pricing.

There is a small run-start charge.

There is also a per-review charge for each review saved to the dataset.

Always check the actor pricing panel on Apify for the exact current tiered price, because your Apify plan can change the tiered per-review price.

Typical cost examples at the current Bronze tier are:

Reviews savedEstimated actor charge
20 reviewsabout $0.008
100 reviewsabout $0.020
500 reviewsabout $0.080
1,000 reviewsabout $0.155

These examples include the run-start event plus a per-review event.

The Apify free plan includes monthly platform credits, so small tests such as 20 or 100 reviews are usually suitable for evaluation within free-plan credits.

Large recurring monitoring jobs should still review the pricing panel before scheduling daily or hourly runs.

Input overview

You can provide app URLs.

You can provide app IDs.

You can provide both.

Duplicates are removed automatically by app ID.

You can choose one or more countries.

You can set a maximum number of reviews per app per country.

Example input

{
"appUrls": [
{ "url": "https://apps.apple.com/us/app/youtube/id544007664" }
],
"countries": ["us"],
"sortBy": "mostRecent",
"maxReviewsPerApp": 50,
"includeAppMetadata": true
}

Input fields

appUrls

Paste one or more Apple App Store URLs.

The actor extracts the numeric app ID from URLs such as https://apps.apple.com/us/app/facebook/id284882215.

appIds

Use numeric app IDs directly when you already have them.

For example, YouTube is 544007664.

countries

Use two-letter App Store country codes.

Examples include us, gb, ca, de, fr, jp, and au.

The actor fetches each app/country pair separately.

sortBy

The actor uses mostRecent for newest public reviews first.

maxReviewsPerApp

Set the maximum review count per app per country.

Apple's public RSS feed normally exposes up to about 500 reviews per app/country.

includeAppMetadata

Keep this enabled when you want app name, developer, genre, version, rating count, and artwork fields included on every row.

Disable it only if you want the smallest possible request footprint.

Output example

{
"appId": "544007664",
"appName": "YouTube",
"developerName": "Google",
"country": "us",
"sortBy": "mostRecent",
"reviewId": "14153383959",
"reviewTitle": "Useless",
"reviewText": "Can’t lock my profile without reason",
"rating": 1,
"reviewVersion": "564.0.0",
"reviewDate": "2026-06-06T22:45:43-07:00",
"authorName": "Nikniknikmorenik",
"voteSum": 0,
"voteCount": 0,
"scrapedAt": "2026-06-08T00:00:00.000Z"
}

How to run the actor

  1. Open the actor on Apify.

  2. Click Try for free or Start.

  3. Paste one or more App Store URLs or app IDs.

  4. Choose country codes.

  5. Select the sort mode.

  6. Set the review limit.

  7. Start the run.

  8. Download the dataset when the run succeeds.

Tips for best results

Start with one app and one country while testing a workflow.

Use mostRecent for release monitoring.

Run the same input daily or weekly for review monitoring.

Use country-specific runs when your app has localized support teams.

Export to CSV when handing review lists to non-technical stakeholders.

Export to JSON when feeding NLP pipelines.

Common workflows

Release monitoring

Run the actor after every iOS release.

Filter reviews by reviewVersion.

Watch for one-star reviews mentioning crashes or login issues.

Competitor tracking

Add your competitor app IDs.

Run the actor weekly.

Compare ratings and review themes across apps.

ASO keyword research

Export review text.

Extract repeated phrases from five-star reviews.

Use those phrases to improve App Store listing language.

Support triage

Search review text for billing, password, crash, subscription, or cancellation terms.

Send matching reviews to your support queue.

Integrations

Connect the dataset to Google Sheets for stakeholder reporting.

Send results to Slack through an Apify webhook.

Load the dataset into BigQuery, Snowflake, or S3 for warehouse analysis.

Trigger the actor from Zapier or Make when a release checklist is completed.

Use Apify API clients to schedule review ingestion from your own backend.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/apple-app-store-reviews-scraper').call({
appIds: ['544007664'],
countries: ['us'],
maxReviewsPerApp: 50
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.slice(0, 3));

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/apple-app-store-reviews-scraper').call(run_input={
'appIds': ['544007664'],
'countries': ['us'],
'maxReviewsPerApp': 50,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items[:3])

API usage with cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~apple-app-store-reviews-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"appIds":["544007664"],"countries":["us"],"maxReviewsPerApp":50}'

MCP usage

You can use the actor through Apify MCP from Claude Code, Claude Desktop, or other MCP clients.

Use this MCP server URL:

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

Add it in Claude Code with:

$claude mcp add apify-apple-app-store-reviews --transport http "https://mcp.apify.com/?tools=automation-lab/apple-app-store-reviews-scraper"

For Claude Desktop or another JSON-based MCP client, add a server entry like this:

{
"mcpServers": {
"apify-apple-app-store-reviews": {
"url": "https://mcp.apify.com/?tools=automation-lab/apple-app-store-reviews-scraper"
}
}
}

Example prompts:

  • "Run the Apple App Store Reviews Scraper for app ID 544007664 in the US and summarize one-star complaints."
  • "Collect the 100 most recent reviews for these iOS app IDs and group them by app version."
  • "Compare review themes for my app and two competitors across US and GB storefronts."

Scheduling

Use Apify schedules to run the same input repeatedly.

Daily schedules work well for active consumer apps.

Weekly schedules work well for competitor monitoring.

Monthly schedules work well for market research snapshots.

Limitations

Apple controls the public RSS review feed.

The feed normally exposes recent or helpful reviews rather than every historical review ever written.

Availability can vary by app and country.

Some apps or countries may return no public reviews.

The actor does not scrape private App Store Connect data.

The actor does not require or use Apple developer credentials.

FAQ and troubleshooting

Why did I get zero reviews?

Check that the app ID is correct.

Try country us first.

Try another popular app to confirm your input shape.

Some app/country combinations have no public reviews in Apple's RSS feed.

Why are there fewer than my requested reviews?

Apple's public feed has a practical page limit.

The app may have fewer visible reviews for that country and sort mode.

Try another country or reduce the review limit.

Why does metadata differ by country?

Apple lookup data is storefront-specific.

Names, ratings, pricing, and availability can vary by country.

Legality and ethics

This actor uses public Apple endpoints.

It does not log in.

It does not access private App Store Connect data.

You should still use the data responsibly.

Respect applicable laws, privacy obligations, platform terms, and your organization's data policies.

If you are unsure whether your use case is permitted, consult legal counsel.

Explore related Automation Lab actors:

Changelog

0.1

Initial version with public Apple RSS review extraction, multi-app input, country support, per-review charging, and app metadata enrichment.

Support

If a run fails, include the run URL and the input you used when reporting the issue.

For best troubleshooting, start with one app ID, one country, and a low review limit.