Apple App Store Scraper - Rankings, Reviews & Apps avatar

Apple App Store Scraper - Rankings, Reviews & Apps

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Apple App Store Scraper - Rankings, Reviews & Apps

Apple App Store Scraper - Rankings, Reviews & Apps

Apple App Store scraper & data API: export top-chart rankings (Top Free, Paid, Grossing, New) by category & country, scrape app reviews & ratings, full app details, metadata and ASO keyword search. iOS app market intelligence & competitor tracking โ€” fast, no login. Pairs with a Google Play scraper.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

25

Total users

1

Monthly active users

a day ago

Last modified

Features

Limited permissions

Share

Apple App Store 4 Modes 47+ Countries 1,000+ Scale Export

The Apple App Store scraper that turns apps.apple.com into clean, structured market intelligence. Export top-chart rankings (Top Free, Top Paid, Top Grossing, New) for any category and country, scrape App Store reviews and star ratings at scale, extract complete app details and metadata, and run ASO keyword discovery searches โ€” all from a single no-code actor with 1,000+ results pagination and bulk export to JSON, CSV, Excel, or API.

๐Ÿ’ก Built for ASO specialists, mobile growth and product teams, app-market analysts, B2B intelligence researchers, venture investors, and AI/data teams building iOS app catalogs and review-sentiment pipelines.


โšก At a glance

FeatureDetails
๐ŸŽฏ Primary Modesrankings (Top Charts), reviews (Customer Reviews), appDetails (Full Metadata), search (ASO Keywords)
๐ŸŒ Storefront Coverage47+ country storefronts (us, gb, de, fr, jp, kr, ca, au, br, in, tr, and more)
๐Ÿ“Š Ranking ChartsTop Free, Top Paid, Top Grossing, New Apps, New Free, New Paid (iPhone & iPad) across 40+ categories
๐Ÿ’ฌ Review DepthSorted by RECENT or HELPFUL, automatic multi-page & multi-storefront expansion for 1,000+ reviews
๐Ÿ”ข Pagination & ScaleUnlocked 1,000+ results pagination with automatic cross-category / cross-keyword / cross-country expansion
๐Ÿ›ก๏ธ Deduplication100% deduplicated by unique appId or reviewId across charts, keywords, and storefronts
โšก Typical Speed~5โ€“15 seconds for 100 ranked apps with full details; ~20โ€“60 seconds for 1,000+ records
๐Ÿ“ค Export FormatsJSON, CSV, Excel (XLSX), XML, HTML Table, RSS, and live REST API

๐Ÿ“‹ Table of contents


๐Ÿ”Ž Why scrape the Apple App Store?

The Apple App Store is the richest public indicator of consumer and B2B mobile software demand: millions of iOS and iPadOS apps, live top-chart rankings that shift daily, millions of user reviews and star ratings, localized pricing, developer portfolios, version histories, and release notes across 47+ regional storefronts.

Collecting this intelligence manually is slow and fragmented: web pages paginate slowly, review lists hide historical feedback behind endless scrolling, pricing and rankings vary by country storefront, and there is no native bulk export. An Apple App Store scraper automates the entire workflow โ€” select a mode, press Start, and receive a clean, deduplicated dataset ready for spreadsheets, BI dashboards, CRM enrichment, or AI pipelines.

Common reasons teams use this App Store data extractor:

  • ๐Ÿ“ˆ ASO & App Store Optimization โ€” monitor keyword rankings, category chart positions, title/subtitle patterns, and metadata updates across storefronts.
  • ๐Ÿ† App Market Intelligence โ€” build an automated feed of top-chart rankings by category and country without expensive enterprise subscriptions.
  • ๐Ÿ’ฌ Voice-of-Customer & Review Mining โ€” extract thousands of user reviews to uncover bug reports after a release, churn drivers, and high-priority feature requests.
  • ๐ŸฅŠ Competitor Monitoring โ€” track rival apps' star ratings, review velocity, version cadence, pricing changes, and release notes.
  • ๐Ÿ’ฐ VC, PE & M&A Deal Sourcing โ€” spot breakout apps climbing the Top Grossing and Top Free charts across global markets.
  • ๐Ÿค– AI & LLM Training Datasets โ€” feed structured app descriptions and verified user reviews into sentiment models, RAG pipelines, and classification engines.
  • ๐ŸŒ Global Pricing & Localization Audits โ€” compare app pricing, currencies, and language support across 47+ country storefronts.

โœจ What this App Store scraper does

This is a four-in-one App Store data extractor designed for both quick 100-item snapshots and deep 1,000+ results pagination:

  • โœ… ๐Ÿ† Top-chart rankings (rankings) โ€” export Top Free, Top Paid, Top Grossing, or New charts for iPhone and iPad across 40+ categories and 47+ countries, each tagged with its exact rank, collection, and rankCategory.
  • โœ… ๐Ÿ’ฌ App reviews & ratings (reviews) โ€” collect reviews per app sorted by Most recent (RECENT) or Most helpful (HELPFUL), complete with star score, headline, full review body, reviewed app version, reviewer name, profile link, and timestamp.
  • โœ… ๐Ÿ“‹ Full app details (appDetails) โ€” pull complete metadata for any list of apps: overall rating, total review count, current-version rating, 5-star rating histogram, price, currency, developer details, genres, content advisory rating, byte size, minimum iOS version, release notes, and high-res screenshots.
  • โœ… ๐Ÿ”Ž Keyword search (search) โ€” run ASO keyword queries for any topic, brand, or feature set and capture matching apps in rank order with full metadata.
  • โœ… ๐Ÿš€ Unlocked 1,000+ scaling โ€” when you set maxItems: 1000 (or higher), the actor automatically expands across categories/collections in Rankings mode, across discovery keywords in Search mode, and across country storefronts in Reviews mode so your run never hits a 100- or 200-item ceiling.
  • โœ… ๐Ÿ”— Flexible app identifiers โ€” pass numeric App IDs (389801252), bundle IDs (com.spotify.client), or full App Store URLs (https://apps.apple.com/us/app/instagram/id389801252) โ€” mix all three formats in one run.
  • โœ… ๐Ÿ“ฆ Bulk export anywhere โ€” download clean data in JSON, CSV, Excel, XML, HTML, or RSS, or stream directly via the Apify API.

๐ŸŽฏ Use cases

PersonaHow they use this Apple App Store Scraper
๐Ÿ“ˆ ASO & Growth MarketersSchedule daily runs in search and rankings modes to track keyword share-of-voice, chart movement, and seasonal category shifts across tier-1 markets (us, gb, de, jp).
๐Ÿ’ฌ Product & QA ManagersRun reviews mode sorted by RECENT after every app update to catch version-specific crash reports, UI complaints, and rating drops within hours of release.
๐Ÿข B2B Lead Generation TeamsExtract developer, developerUrl, and developerWebsite across thousands of ranked apps in BUSINESS, FINANCE, PRODUCTIVITY, and SHOPPING categories to build targeted publisher outreach lists.
๐Ÿ’ฐ Venture Capital & Market AnalystsPull TOP_GROSSING_IOS and NEW_FREE_IOS across all categories weekly to identify fast-rising consumer subscription apps and mobile games.
๐ŸŒ International Expansion TeamsCompare price, currency, languages, and localized score across 47 storefronts before launching in Europe, LATAM, or APAC.
๐Ÿค– Data Scientists & AI EngineersHarvest 1,000+ labeled 1-to-5 star reviews per vertical to fine-tune sentiment classifiers, topic-modeling pipelines, and automated customer-support agents.

๐Ÿ“ฅ Input parameters

Configure everything in the visual Apify Console form or pass JSON via the API. Every field is optional โ€” running with default settings immediately exports the current US Top Free chart.

FieldTypeDefaultDescription
modestring"rankings"Task mode: "rankings" (Top-chart rankings), "reviews" (App reviews & ratings), "appDetails" (Full app details), or "search" (Keyword search).
collectionstring"TOP_FREE_IOS"Used in rankings mode. Chart to export: TOP_FREE_IOS, TOP_PAID_IOS, TOP_GROSSING_IOS, NEW_IOS, NEW_FREE_IOS, NEW_PAID_IOS, TOP_FREE_IPAD, TOP_PAID_IPAD, TOP_GROSSING_IPAD.
categorystring""Used in rankings mode. Narrow to a specific App Store category (GAMES, BUSINESS, FINANCE, PRODUCTIVITY, HEALTH_AND_FITNESS, SOCIAL_NETWORKING, etc.) or leave empty for Overall.
countrystring"us"Two-letter App Store country storefront (us, gb, ca, au, de, fr, jp, kr, br, in, tr, etc. โ€” 47 storefronts supported).
searchTermsarray["fitness tracker", "budget planner"]Used in search mode. One or more keywords, brands, or topics. Leave empty for a built-in diverse sample.
appIdsarray["389801252"]Used in reviews and appDetails modes. Paste App Store URLs, numeric App IDs (389801252), or bundle IDs (com.burbn.instagram).
maxReviewsPerAppinteger0Used in reviews mode. Maximum reviews to pull per app (0 = unlimited, governed by maxItems). Automatically expands across storefronts when >500 reviews are requested.
reviewsSortstring"RECENT"Used in reviews mode. Sort order: "RECENT" (Most recent) or "HELPFUL" (Most helpful).
fullDetailbooleantrueIn rankings & search modes, enrich every app with full metadata (rating, review count, description, size, version, release notes). Turn off for a faster lightweight list.
maxItemsinteger0 (prefill 100)Maximum total records (apps or reviews) to return. Set 0 for unlimited or 1000+ for deep multi-category / multi-keyword / multi-storefront extraction.
maxConcurrencyinteger4Number of apps processed in parallel (1โ€“15).
proxyConfigurationobjectuseApifyProxy: falseOptional Apify Proxy configuration. Works out of the box on direct connections; enable proxy rotation for massive recurring runs.

Input examples

1. Top Free iPhone apps in the US (fast snapshot):

{
"mode": "rankings",
"collection": "TOP_FREE_IOS",
"category": "",
"country": "us",
"fullDetail": true,
"maxItems": 100
}

2. Deep 1,000+ app ranking sweep across categories:

{
"mode": "rankings",
"collection": "TOP_GROSSING_IOS",
"country": "us",
"fullDetail": true,
"maxItems": 1000
}

๐Ÿ“ค Output schema & field reference

Every record is returned as a clean flat JSON object. App records (rankings, appDetails, search) and review records (reviews) carry an explicit recordType field so downstream pipelines can route them effortlessly.

Ranked app / App detail example (recordType: "rankedApp" or "app")

{
"recordType": "rankedApp",
"rank": 1,
"collection": "TOP_FREE_IOS",
"rankCategory": "overall",
"country": "us",
"appId": 310633997,
"bundleId": "net.whatsapp.WhatsApp",
"title": "WhatsApp Messenger",
"url": "https://apps.apple.com/us/app/whatsapp-messenger/id310633997?uo=4",
"description": "WhatsApp from Meta is a FREE messaging and video calling app...",
"developer": "WhatsApp Inc.",
"developerId": 310634000,
"developerUrl": "https://apps.apple.com/us/developer/whatsapp-inc/id310634000?uo=4",
"developerWebsite": "https://www.whatsapp.com/",
"score": 4.71891,
"reviews": 20325663,
"currentVersionScore": 4.71891,
"currentVersionReviews": 20325663,
"histogram": { "1": 612040, "2": 215400, "3": 489120, "4": 1490100, "5": 17519003 },
"price": 0,
"free": true,
"currency": "USD",
"genre": "Social Networking",
"genreId": 6005,
"genres": ["Social Networking", "Utilities"],
"genreIds": ["6005", "6002"],
"contentRating": "12+",
"languages": ["EN", "ES", "FR", "DE", "PT"],
"size": "398458880",
"requiredOsVersion": "15.0",
"released": "2009-05-03T04:10:02Z",
"updated": "2026-10-28T18:03:11Z",
"version": "26.42.77",
"releaseNotes": "Bug fixes and performance improvements.",
"icon": "https://is1-ssl.mzstatic.com/.../512x512bb.jpg",
"screenshots": ["https://is1-ssl.mzstatic.com/.../1.jpg"],
"ipadScreenshots": ["https://is1-ssl.mzstatic.com/.../ipad1.jpg"],
"supportedDevices": ["iPhone13", "iPadPro"],
"scrapedAt": "2026-11-10T02:00:00.000Z"
}

Customer review example (recordType: "review")

{
"recordType": "review",
"appId": 310633997,
"bundleId": null,
"reviewId": "14735005849",
"userName": "iOSPowerUser",
"userUrl": "https://itunes.apple.com/us/reviews/id1986068692",
"version": "26.42.77",
"score": 5,
"title": "Reliable daily messenger",
"text": "100% excellent โ€” works seamlessly across iPhone and CarPlay.",
"url": "https://itunes.apple.com/us/review?id=310633997&type=Purple%20Software",
"updated": "2026-10-31T12:55:54-07:00",
"country": "us",
"scrapedAt": "2026-11-10T02:00:00.000Z"
}

๐Ÿ“ฑ App & Ranking fields

FieldTypeCoverageDescription
๐Ÿท๏ธ recordTypestring๐ŸŸข High (100%)"rankedApp" (rankings mode) or "app" (appDetails & search modes).
๐Ÿ† rankinteger๐ŸŸข High (Rankings)Exact chart position (1..N) within the category/collection chart.
๐Ÿ“Š collection / rankCategorystring๐ŸŸข High (Rankings)Chart identifier (e.g. TOP_FREE_IOS) and category (overall, GAMES, etc.).
๐Ÿ”Ž searchTermstring๐ŸŸข High (Search)The keyword query that surfaced this app in search mode.
๐Ÿ†” appId / bundleIdnumber / string๐ŸŸข High (100%)Numeric Apple track ID and reverse-DNS bundle identifier (net.whatsapp.WhatsApp).
๐Ÿ“ฑ title / urlstring๐ŸŸข High (100%)Official App Store title and canonical listing URL.
๐Ÿ“ descriptionstring๐ŸŸข High (100%)Full App Store description text (when fullDetail: true).
๐Ÿข developer / developerIdstring / number๐ŸŸข High (100%)Publisher name and numeric Apple artist ID.
๐Ÿ”— developerUrlstring๐ŸŸข High (100%)Link to the publisher's full App Store portfolio page.
๐ŸŒ developerWebsitestring๐ŸŸก Conditional (~90%)Publisher's external website URL (great for B2B lead enrichment).
โญ score / reviewsnumber / integer๐ŸŸข High (100%)Overall average star rating (0โ€“5) and total ratings count.
๐Ÿ“ˆ currentVersionScore / currentVersionReviewsnumber / integer๐ŸŸข High (~98%)Star rating and count for the currently live version.
๐Ÿ“Š histogramobject๐ŸŸก Conditional (appDetails)Breakdown of 1-star through 5-star rating counts ({1, 2, 3, 4, 5}).
๐Ÿ’ต price / free / currencynumber / boolean / string๐ŸŸข High (100%)Localized price, boolean free flag, and ISO currency code (USD, GBP, EUR, JPY).
๐Ÿ—‚๏ธ genre / genreId / genres / genreIdsstring / array๐ŸŸข High (100%)Primary category name/ID and complete list of assigned genres.
๐Ÿ”ž contentRatingstring๐ŸŸข High (100%)Age advisory rating (4+, 9+, 12+, 17+).
๐ŸŒ languagesarray<string>๐ŸŸข High (~99%)Supported ISO-2 language codes (["EN", "ES", "DE"]).
๐Ÿ“ฆ size / requiredOsVersionstring๐ŸŸข High (~99%)App download size in bytes and minimum required iOS version.
๐Ÿ—“๏ธ released / updated / versionstring๐ŸŸข High (100%)Initial release timestamp, latest update timestamp, and current version string.
๐Ÿ†• releaseNotesstring๐ŸŸก Conditional (~95%)"What's New" changelog notes for the latest version.
๐Ÿ–ผ๏ธ icon / screenshots / ipadScreenshotsstring / array๐ŸŸข High / ๐ŸŸก ConditionalHigh-resolution app icon URL, iPhone screenshots, and iPad screenshots (~73%).
๐Ÿ“ฒ supportedDevicesarray<string>๐ŸŸข High (~98%)Compatible Apple hardware identifiers.
๐Ÿ•’ country / scrapedAtstring๐ŸŸข High (100%)Two-letter storefront code and ISO-8601 extraction timestamp.

๐Ÿ’ฌ Customer review fields

FieldTypeCoverageDescription
๐Ÿท๏ธ recordTypestring๐ŸŸข High (100%)Always "review".
๐Ÿ†” reviewIdstring๐ŸŸข High (100%)Unique review identifier (used for automatic deduplication).
๐Ÿ“ฑ appId / bundleIdnumber / string๐ŸŸข High (100%)Target app identifier matching your input list.
๐Ÿ‘ค userName / userUrlstring๐ŸŸข High (100%)Reviewer display name and public reviewer profile link.
โญ scoreinteger๐ŸŸข High (100%)Star rating (1 to 5).
๐Ÿ“ฐ title / textstring๐ŸŸข High (100%)Review headline and full review body text.
๐Ÿท๏ธ versionstring๐ŸŸข High (~99%)App version the reviewer was using when submitting feedback.
๐Ÿ”— url / updatedstring๐ŸŸข High (100%)Direct review link and ISO-8601 submission/update timestamp.
๐ŸŒ country / scrapedAtstring๐ŸŸข High (100%)Storefront country where the review was posted and scrape timestamp.

๐Ÿ” Pagination & 1,000+ scale

Apple's individual storefront feeds return up to 200 apps per single chart or keyword query and up to 500 reviews (10 pages ร— 50 reviews) per app per country storefront. This actor unlocks seamless 1,000+ results pagination across all modes:

  1. Rankings mode (1,000+ apps): When you set maxItems above 200 (or 0 for unlimited), the actor automatically steps through additional categories (GAMES, BUSINESS, PRODUCTIVITY, FINANCE, SOCIAL_NETWORKING, etc.) and chart collections while deduplicating by appId, delivering up to 2,000+ unique ranked apps in a single run.
  2. Search mode (1,000+ apps): Each keyword fetches up to 200 matching apps. When your maxItems target exceeds what a single term provides, the actor automatically fans out across your searchTerms list (and built-in high-volume discovery keywords if needed) with strict appId deduplication.
  3. Reviews mode (1,000+ reviews): The actor paginates through all 10 review pages per app (50 reviews/page). When maxItems or maxReviewsPerApp exceeds a single storefront's 500-review ceiling, it automatically expands across major English and international storefronts (us, gb, ca, au, de, fr, es, it, etc.) and deduplicates by reviewId.

โš™๏ธ How to use

  1. Open Apple App Store Scraper in the Apify Console.
  2. Select your Mode:
    • Top-chart rankings โ†’ choose a collection (e.g., TOP_FREE_IOS), category, and country.
    • App reviews & ratings โ†’ paste one or more App IDs, bundle IDs, or URLs into appIds.
    • Full app details โ†’ paste target apps into appIds to get complete metadata + rating histograms.
    • Keyword search โ†’ enter your target keywords in searchTerms.
  3. Set Max results (maxItems) โ€” leave at 100 for a quick test or set 1000+ for a deep harvest.
  4. Click Start and export your dataset in JSON, CSV, Excel, or via API.

๐Ÿ”Œ Integrations & automation

Connect this App Store scraper directly to your analytics and growth stack:

  • Google Sheets & Excel โ€” sync daily top-chart rankings or new 1-star review alerts directly to a spreadsheet.
  • Slack, Microsoft Teams & Discord โ€” trigger instant notifications via Make, Zapier, or n8n whenever a negative review (score <= 2) is posted on your app.
  • BigQuery, Snowflake & Postgres โ€” stream historical ranking and rating time-series into your warehouse keyed on appId and scrapedAt.
  • LangChain, LlamaIndex & OpenAI โ€” feed recordType: "review" items into an LLM pipeline to summarize weekly user feedback by app version.

๐Ÿ’ก Tips for best results

  • ๐Ÿ† Track daily chart velocity: Schedule a daily run on your target category (FINANCE, HEALTH_AND_FITNESS, GAMES) to spot apps jumping 20+ positions week over week.
  • โšก Speed up lightweight ranking lists: Set fullDetail: false when you only need rank, appId, bundleId, title, url, and developer โ€” runs finish in 1โ€“2 seconds per chart.
  • ๐Ÿ’ฌ Combine RECENT and HELPFUL reviews: Run once with reviewsSort: "RECENT" to monitor the latest release, and once with reviewsSort: "HELPFUL" to capture the most upvoted long-term user feedback.
  • ๐Ÿ”— Mix identifier formats freely: You can paste 389801252, com.spotify.client, and https://apps.apple.com/us/app/whatsapp-messenger/id310633997 in the same appIds array.

โ“ FAQ

How many apps or reviews can I extract in a single run? You can extract 1,000 to 10,000+ records in a single run. Single charts return up to 200 apps and single-country review feeds return up to 500 reviews per app, and the actor automatically expands across categories, keywords, and storefronts when you request higher maxItems.

Do I need proxies or an Apple login? No login is ever required. The scraper works out of the box without proxies for typical runs; for very large multi-thousand-record runs you can optionally enable Apify Proxy in proxyConfiguration.

Why is histogram only populated in appDetails mode? Apple only serves the 1-to-5 star breakdown histogram on individual app detail lookups. Use mode: "appDetails" when you need exact star counts per tier.

Can I scrape localized prices and reviews for non-US markets? Yes โ€” pick any of the 47 supported country storefronts in country (gb, de, fr, jp, kr, br, in, tr, au, ca, etc.) and all rankings, currencies, prices, and reviews will reflect that regional store.

How do I schedule daily App Store ranking snapshots? In the Apify Console, open the Schedules tab, attach this actor with mode: "rankings", and choose a daily cron (e.g., 0 8 * * *). Combine with Google Sheets, Webhook, or BigQuery integrations to build an automated historical ranking database.

Can I use this actor via Python or Node.js API? Yes โ€” call haketa/app-store-scraper via the official apify-client in Python or Node.js, or trigger synchronous/asynchronous runs via REST API (POST /v2/acts/haketa~app-store-scraper/runs) and stream dataset items in JSON, CSV, or XLSX.

API Quickstart (Python & Node.js)

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("haketa/app-store-scraper").call(run_input={
"mode": "rankings",
"collection": "TOP_FREE_IOS",
"country": "us",
"maxItems": 200
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["rank"], item["title"], item["score"], item["developer"])


๐Ÿ“‹ Changelog

VersionDateUpdates
v1.22026-11Unlocked 1,000+ deep pagination across all modes: automatic cross-category/collection expansion in rankings mode, automatic multi-storefront expansion in reviews mode (maxReviewsPerApp default 0 = unlimited), and removed the 100/200-item clamps in search and rankings modes with strict appId/reviewId deduplication.
v1.12026-11Added developerUrl and developerWebsite enrichment, improved bundle ID + URL resolution in appIds, and verified 0% duplicate rate across multi-app review runs.
v1.02026-05Initial release supporting 4 modes (rankings, reviews, appDetails, search) across 47 Apple App Store country storefronts.
⌂ ๆข็ฝ‘ๅ€