App Store Reviews Scraper API | Multi-Country, App Version avatar

App Store Reviews Scraper API | Multi-Country, App Version

Pricing

from $0.15 / 1,000 reviews

Go to Apify Store
App Store Reviews Scraper API | Multi-Country, App Version

App Store Reviews Scraper API | Multi-Country, App Version

Scrape Apple App Store reviews from many countries in one run: up to 1,000 per country, app version on every review, detected language, new reviews only. Clean JSON.

Pricing

from $0.15 / 1,000 reviews

Rating

0.0

(0)

Developer

Happy Scrapper

Happy Scrapper

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

App Store reviews from many countries in one clean format

What is App Store Reviews Scraper API?

It collects user reviews from the Apple App Store, for as many apps and countries as you need, in a single run, merged and de-duplicated in one clean JSON format.

Every review comes with the app version it was written on, the language it is actually written in and an anonymised author. Schedule it, and it returns only the reviews published since the last run.

👉 Paste an App Store link, pick your countries, press Start, and get your first reviews in seconds.

Why use it

This ActorA typical App Store review scraper
🌍 Many countries per run✅ merged and de-duplicatedone country per run
📄 Depth per country✅ up to about 1,000 reviewsoften stops at 450 or 500
🔢 App version on each review✅ every reviewvaries
🗣️ Language of the text✅ detected, not guessed from the countrycountry only
🔁 Only new reviews since the last run✅ built inrarely built in
🆔 Stable review IDs across runs✅ safe to de-duplicate and joinnot guaranteed
🔒 Authors anonymised by default✅usually names in clear
⭐ Filter by stars, pay only for kept reviews✅varies

Why depth matters. Apple's public feed sometimes serves an empty page from its cache. Many scrapers read it as "no more reviews" and stop at 450 or 500. This Actor detects it and asks for a fresh page. Measured on Spotify across 5 countries: 4,995 reviews in about 30 seconds.

Why the language is detected. A storefront is not a language: see the review from the German App Store written in English below. The language_detected field reads the text itself.

What data do you get?

FieldExampleNotes
storeapplealways apple here
app_id, app_name324684580, Spotify: Music and Podcasts
countryjpApp Store storefront
language_detected, language_confidenceja, 0.99from the text itself, empty under 25 letters
rating11 to 5 stars
title, text
date2026-09-30T11:15:55ZUTC
app_version, version_confidence9.1.86, exactas given by Apple
helpful_count3
review_idapple:324684580:13470918234stable across runs
author_hasha1b2c3d4e5f60718stable anonymous ID
author_namenullonly if you turn it on

The same schema is used by our Google Play and two-store Actors, so you can merge the results without any mapping.

Real reviews from a test run

CountryStarsVersionLanguageReview
Japan★☆☆☆☆9.1.86jaプレイリスト作成して再生すると聞いたこともないアーティストのおすすめから再生される。
Brazil★★★★★9.1.86ptNao tem como viver nesse mundo sem musica, dito isso, me salvou da depressao!
Germany★☆☆☆☆9.1.86enCan't stream anymore… unbelievable

How to use it

  1. Apps: one per line. An App Store URL (https://apps.apple.com/us/app/.../id324684580) or the numeric Apple ID (324684580).
  2. App Store countries: pick as many as you need, out of 175.
  3. Max reviews: per app and country.
  4. Filter by stars (optional): for example 1 to 2 for negative reviews only. Max reviews and billing count kept reviews only.
  5. Scheduled tracking (optional): turn on Only new reviews since the last run, give it a tracking name, and schedule the Actor daily or weekly.

Input example

{
"apps": ["https://apps.apple.com/us/app/spotify-music-and-podcasts/id324684580"],
"appleCountries": ["us", "gb", "fr", "de", "jp"],
"maxReviewsPerApp": 1000,
"onlyNewReviews": false
}

Don't have the app list? Find apps first

Fill Search terms or Developers instead of (or together with) Apps, and the Actor finds the App Store apps first, then collects their reviews:

  • Search terms: one keyword per line. For each keyword and country, the top App Store apps (5 by default, up to 200).
  • Developers: the numeric Apple developer ID (324684583) or the developer page URL. The Actor takes up to 20 apps per developer.

Reviews are collected for every app found, so set Max reviews per app too. For Google Play, use the Google Play Actor below.

Use cases

  • 📦 iOS product managers: see what a release changed, version by version.
  • 🔎 ASO and marketing: read how users talk about you and your competitors, country by country, in their own words.
  • 🎧 Support and community teams: get today's 1 and 2-star reviews only.
  • 📊 Analysts and investors: compare apps of a category across markets with the same fields.
  • 🤖 Data pipelines and AI agents: a stable schema, stable IDs and new reviews only, ready to feed a database or a model.

Pricing

$0.30 per 1,000 reviews on the free plan, lower on paid Apify plans, down to $0.15 per 1,000 reviews. A run that finds no new review only costs the Actor start. The $5 of monthly credit on Apify's free plan covers about 16,000 reviews a month. Set a maximum cost per run in the run options if you want a hard cap.

Integrations

Run it from the Apify API, schedule it, send results to Google Sheets, Slack, Zapier, Make or a webhook, or call it from an AI agent through the Apify MCP server. Export to JSON, CSV, Excel or HTML.

Need Google Play too?

FAQ

The Actor only reads reviews that Apple displays publicly, at a moderate pace. Reviewer names are personal data: they are replaced by an anonymous hash by default, and you should only turn names on if you have a legal basis to process them. You remain responsible for how you use the data. If in doubt, ask a lawyer.

How many reviews can I get?

Up to about 1,000 per app and country per run: Apple's public feed gives the 500 most recent and the 500 most helpful. Schedule it with Only new reviews to build a longer history over time.

Are developer replies included?

Not on the App Store: Apple's public feed doesn't carry them. Our Google Play Actor does.

Why is language_detected sometimes empty?

When a review has fewer than 25 letters ("Great app 👍"), the language can't be told reliably, so the field stays empty rather than wrong.

I pasted an Android package and the run failed. Why?

This Actor reads the App Store only. A name like com.example.app is an Android package: use our Google Play Actor, or the two-store Actor for both at once.

Something is wrong or missing?

Open an issue on this page. Every report is read.

Is this Actor affiliated with Apple?

No. App Store is a trademark of Apple Inc.