Apple App Store Scraper: iOS Apps, Ratings & Reviews avatar

Apple App Store Scraper: iOS Apps, Ratings & Reviews

Pricing

from $1.20 / 1,000 apps

Go to Apify Store
Apple App Store Scraper: iOS Apps, Ratings & Reviews

Apple App Store Scraper: iOS Apps, Ratings & Reviews

Scrape Apple App Store iOS apps by keyword search, app ID, URL or bundle ID across many countries: ratings, rating counts, price, version history, genres, developer and optional customer reviews. Built on the official iTunes Search and RSS feeds.

Pricing

from $1.20 / 1,000 apps

Rating

0.0

(0)

Developer

Emilio Cisneros

Emilio Cisneros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Get Apple App Store app data in clean JSON, CSV or Excel. You can:

  • Search the App Store by keyword (e.g. "habit tracker") and get apps in Apple's ranking order, with their search rank.
  • Look up specific apps by App Store URL, numeric ID or bundle ID (com.burbn.instagram).
  • Cover many countries in one run: every term and app is fetched in every storefront you list (us, gb, de, jp, br...). You can compare prices, ratings and versions across markets.
  • Add customer reviews (optional): rating, title, text, app version, date and reviewer nickname, nested in each app or as one row per review.

It uses only Apple's official public endpoints: the iTunes Search API, the iTunes Lookup API and the customer-reviews RSS feed. There are no proxies, no browser and no login, so runs are fast and cheap.

How to use

  1. Enter search terms, or App Store URLs / app IDs / bundle IDs.
  2. Pick countries and platform (iPhone or iPad). Turn on Include reviews to also get customer reviews.
  3. Click Start and export apps (ratings, price, version, genre, developer) and reviews.

What you get per app

appId, bundleId, name, url, country, platform, developer (developerId, developerName, developerUrl, sellerName, developerWebsite), price, currency, formattedPrice, isFree, averageRating, ratingCount, averageRatingCurrentVersion, ratingCountCurrentVersion, version, releaseNotes, releaseDate, currentVersionReleaseDate, primaryGenre, genres, contentRating, advisories, minimumOsVersion, fileSizeBytes, fileSizeMB, languages, supportedDevicesCount, features, iconUrl, screenshotUrls, ipadScreenshotUrls, description, plus source (search/lookup), searchTerm, searchRank, scrapedAt, and reviews when enabled.

Numbers are numbers, dates are ISO 8601 strings, and tracking parameters are stripped from URLs.

Why this Actor

This ActorTypical App Store scrapers
Apps + reviews in one runYes, nested or as rowsUsually two separate Actors
Many countries per runYes, one list of country codesOne country per run
InputKeywords, URLs, IDs and bundle IDsUsually one kind
Data sourceApple's official public APIs onlyOften HTML scraping or private APIs
Price$1.50 / 1,000 apps, $0.30 / 1,000 reviews$2 to $3.50 / 1,000 apps

Input examples

Top 50 "budget" apps in the US, UK and Germany

{ "searchTerms": ["budget"], "countries": ["us", "gb", "de"], "resultsPerSearch": 50 }

Track competitors' ratings and versions in 5 markets

{ "appIds": ["https://apps.apple.com/us/app/notion-notes-tasks-ai/id1232780281", "com.todoist.ios", "id389801252"], "countries": ["us", "gb", "de", "fr", "jp"], "includeDescription": false }

Latest 500 reviews of an app, one row per review (for sentiment analysis)

{ "appIds": ["284882215"], "countries": ["us"], "includeReviews": true, "maxReviewsPerApp": 500, "reviewsOutput": "rows" }

Mac apps for a keyword

{ "searchTerms": ["screenshot"], "platform": "mac", "maxItems": 100 }

Output

{
"appId": 1232780281, "bundleId": "notion.id", "name": "Notion: Notes, Tasks, AI", "url": "https://apps.apple.com/us/app/notion-notes-tasks-ai/id1232780281",
"country": "us", "platform": "ios", "developerName": "Notion Labs, Incorporated", "price": 0, "currency": "USD", "isFree": true,
"averageRating": 4.775, "ratingCount": 90424, "version": "1.7.346", "currentVersionReleaseDate": "2026-10-14T16:00:00Z",
"primaryGenre": "Productivity", "genres": ["Productivity", "Business"], "contentRating": "4+", "fileSizeMB": 463.4, "languages": ["EN", "JA"],
"iconUrl": "https://is1-ssl.mzstatic.com/...", "source": "lookup", "searchTerm": null, "searchRank": null, "reviewsFetched": 2,
"reviews": [ { "reviewId": "14675987099", "title": "Great with AI agents", "text": "...", "rating": 5, "appVersion": "1.7.346", "userName": "The Monker", "date": "2026-10-16T20:59:35-07:00", "voteSum": 0, "voteCount": 0 } ]
}

With "reviewsOutput": "rows", each review is its own row with type: "review", appId, appName and country. The app record is still included.

Pricing (pay per event)

  • $0.0015 per app record ($1.50 per 1,000). One app in one country is one record.
  • $0.0003 per review ($0.30 per 1,000), only when Include customer reviews is on, and only for reviews actually delivered.
  • Error records (e.g. an app that isn't sold in a country) are free. Set a maximum cost per run and the Actor stops cleanly at your limit.

How much does it cost?

You only pay for results, never for compute time:

You getYou pay (Starter/Bronze plan price)
100 apps$0.15
1,000 apps$1.50
10,000 apps$15.00

Apify's free plan includes $5 of usage every month, and free-plan users pay half price on this Actor, so that covers about 6,666 apps at no cost. Paid plans get volume discounts (Silver -10%, Gold -20%). Set a maximum cost per run and the Actor stops cleanly at your limit.

Limits you should know

  • Apple's Search API returns at most 200 apps per term per country. Use several related terms or countries for more.
  • Apple's reviews feed exposes at most the 500 most recent (or most helpful) reviews per app per country. Add countries to get more reviews (each storefront has its own reviews).
  • Reviews are best effort. Apple's public reviews feed often answers with empty pages, especially under load. The Actor retries every page many times and backs off when the feed stops responding. You may still get fewer reviews than you asked for, sometimes none for an app or country. Each app record shows reviewsFetched and explains any gap in reviewsError. You only pay for reviews actually delivered. App data (search and lookup) is not affected.
  • Apple's public APIs don't include the star histogram, in-app purchase prices or "similar apps".

Use cases

App Store Optimization (ASO) and keyword research, competitor tracking (ratings, versions, release notes), price comparison across countries, market research and app discovery, review mining and sentiment analysis, and lead lists of app developers (company name and website only).

FAQ

Is it legal? It reads public data through Apple's documented public endpoints. Reviews include only the public nickname the reviewer chose: no profile IDs, emails or other personal data. Follow Apple's terms and privacy law when you republish data. Do I need an Apple account or API key? No. How fresh is the data? Search and lookup data is live from Apple. Reviews usually appear in the feed within hours. Can I schedule it? Yes. Use Apify Schedules to track ratings or new reviews daily, and webhooks or the API to send results to Google Sheets, Slack or your database.

Run it from code (API, Python, JavaScript)

curl -X POST "https://api.apify.com/v2/acts/api-co~app-store-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" -d '{"searchTerms": ["habit tracker"], "maxItems": 10}'
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("api-co/app-store-scraper").call(run_input={"searchTerms": ["habit tracker"], "maxItems": 10})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('api-co/app-store-scraper').call({"searchTerms": ["habit tracker"], "maxItems": 10});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

It also works from AI agents through the Apify MCP server, and with Zapier, Make, n8n, Google Sheets and webhooks. You can schedule it in the Apify Console.