App Store Keyword Ranking Scraper icon

SEO & ads intelligence

App Store Keyword Ranking Scraper

Track the exact 1-based rank position of every app that shows up in Apple App Store search results for your ASO keywords, across any storefront and device type, with full app metadata per row — not another review-text dump.

Free Apify credit covers a first run. No credit card to try.

What this Actor scrapes

Apple's public <code>itunes.apple.com/search</code> endpoint returns app metadata for any query, but it never tells you where an app actually ranks. This Actor takes your ASO keywords, fans them across every App Store storefront and device type you care about, and writes one row per app with its exact rank position, rating, price, and metadata. No reviews, no review-scraping duplication of the crowded cluster ahead of us &mdash; just accurate keyword-rank snapshots for competitive ASO intel.

What we handle for you

  • 🛡️ Browser fingerprint rotationcurl-cffi impersonates real Chrome / Firefox / Safari TLS handshakes so the target sees a browser, not Python.
  • 🌐 Apify Proxy + session rotation — one impersonation session per browser profile, round-robined, so consecutive requests don't share a fingerprint. Apple's endpoint is public, so this is about pacing and resilience, not evading a wall.
  • 🔁 Retries with exponential backoff on 403 / 408 / 429 / 503 and network errors — up to 5 attempts, and we honour Retry-After when Apple sends one.
  • 🧱 Rate-limit-aware pacing — when the target pushes back, we slow down instead of getting banned.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, stable IDs, JSON / CSV / Excel export straight from the Apify Console.
  • 💰 Pay-Per-Event pricing — you only pay for results that hit your dataset. No data, no charge.

Use cases

  • ASO rank tracking &mdash; snapshot where your app ranks for the keywords that actually drive installs.
  • Competitive intel &mdash; watch a rival's rank across the exact same keyword set, run over run.
  • Storefront comparison &mdash; the same keyword often ranks differently in the US vs. Germany vs. Japan; find the gap.
  • Keyword research &mdash; pull full metadata (price, rating, genre) for every top-ranked app on a candidate keyword before committing ASO budget.

Input

Paste this into the Apify Console, or send it as the run input over the API. Proxy settings are on by default; you rarely need to touch them.

FieldTypeRequiredWhat it does
keywords array yes ASO search terms to rank-track. The Actor fans each keyword across every country in countries.
countries array no 2-letter lowercase App Store storefronts to check per keyword (e.g. us, gb, de).
entity string no Apple App Store entity type to search within.
limit integer no Apps fetched per keyword x country pair. Apple caps effective results at 200.
lang string no Optional Apple locale hint, e.g. en_us. Leave blank to use Apple's default per storefront.
maxRankToKeep integer no Only emit rows for apps ranked at or above this position. Keeps the dataset lean for deep lookups.
{
  "keywords": [
    "crm"
  ],
  "countries": [
    "us"
  ],
  "entity": "software",
  "limit": 5,
  "maxRankToKeep": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}

Output

One row per result, schema-validated before it is written. Export JSON, CSV, Excel or XML from the run, or read it over the API.

keywordcountryentityranktrackIdtrackNamebundleIdsellerNameprimaryGenreNamegenrespriceformattedPriceaverageUserRatinguserRatingCountcurrentVersionReleaseDateversion

{
  "keyword": "crm",
  "country": "us",
  "entity": "software",
  "rank": 1,
  "trackId": 883898067,
  "trackName": "HubSpot: CRM & Sales, Marketing",
  "bundleId": "com.hubspot.crmapp",
  "sellerName": "HubSpot, Inc.",
  "primaryGenreName": "Business",
  "genres": [
    "Business",
    "Productivity"
  ],
  "price": 0.0,
  "formattedPrice": "Free",
  "averageUserRating": 4.7,
  "userRatingCount": 12345,
  "currentVersionReleaseDate": "2026-08-15T00:00:00Z",
  "version": "12.3.0",
  "contentAdvisoryRating": "4+",
  "artworkUrl512": "https://is1-ssl.mzstatic.com/image/thumb/example.png",
  "trackViewUrl": "https://apps.apple.com/us/app/hubspot/id883898067",
  "description": "HubSpot CRM keeps all your...",
  "releaseNotes": "Bug fixes and performance improvements.",
  "scrapedAt": "2026-09-01T12:00:00Z"
}

Pricing

EventPriceWhen
Actor start$0.05Once per run, covers warm-up and proxy session setup.
App ranked$0.0030Per result written to the dataset.

You pay only for results that land. Cap any run with maxTotalChargeUsd. See pricing & billing for worked examples.

FAQ

Does this scrape App Store reviews?
No. This Actor is rank-only — trackName, rank, price, rating metadata. Review text and review-level data are explicitly out of scope; see the review-scraper cluster on the Store for that.
Does rank match what I see in the App Store app?
It reflects Apple's own iTunes Search API result order, which is the same ordering signal every established ASO tool relies on. It is not guaranteed to be pixel-identical to the on-device App Store app's personalized results.
Do I need my own Apple Developer account or API key?
No. The iTunes Search API is public and keyless.
What happens when a keyword has zero matches?
The run still succeeds — you just get zero rows for that keyword/country pair, with the status message reporting it as an empty (not failed) pair.

Ready to run it?

Open the listing on Apify, paste the input above, and watch rows land. If it ever breaks, it is our problem before it is yours.

Related Actors

Teams that run this also run