ASO Keyword Rank Tracker avatar

ASO Keyword Rank Tracker

Pricing

Pay per event

Go to Apify Store
ASO Keyword Rank Tracker

ASO Keyword Rank Tracker

Track Google Play keyword ranks for Android package IDs by country/language. Export rank positions, matched app metadata, and top competitors.

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

4 days ago

Last modified

Categories

Share

Track Google Play keyword rankings for one or more Android apps by package ID, country, and language.

What does ASO Keyword Rank Tracker do?

ASO Keyword Rank Tracker checks Google Play public search results and tells you where your target app appears for each keyword.

It accepts Google Play package IDs such as com.myfitnesspal.android, a list of ASO keywords, and locale settings.

For every app and keyword combination, it outputs the detected rank, matched title, developer, rating, Google Play URL, status, and a sample of top competing results.

Who is it for?

  • ๐Ÿ“ฑ ASO teams monitoring app visibility.
  • ๐Ÿ“ˆ Mobile marketers reporting keyword movement.
  • ๐Ÿง‘โ€๐Ÿ’ผ Agencies checking client and competitor apps.
  • ๐Ÿงช Indie developers validating keyword experiments.
  • ๐Ÿงฐ Data teams feeding rank checks into dashboards.

Why use this actor?

Google Play rankings vary by keyword, country, and language. Manual checking is slow and difficult to repeat.

This actor gives you structured rows that can be exported to CSV, JSON, Google Sheets, BI tools, or your own monitoring system.

Google Play data covered

The actor reads public Google Play search result pages.

It does not require a Google account.

It does not install apps, use private APIs, or access user data.

Data table

FieldDescription
keywordKeyword searched on Google Play
countryGoogle Play gl country code
languageGoogle Play hl language code
appIdTarget package ID
foundRankRank position, or null when not found
foundUrlGoogle Play app URL
matchedTitleApp title from the matched card
matchedDeveloperDeveloper name from the matched card
matchedRatingRating visible in search results
checkedAtISO timestamp of the check
resultsScannedNumber of unique apps parsed
topResultsCompetitor sample from the top results
statusFOUND, NOT_FOUND, or ERROR
errorError message when a keyword check fails

How much does it cost to track Google Play ASO keyword ranks?

The actor uses pay-per-event pricing.

You pay a small run-start event plus one result event for each app + keyword row produced.

For example, 2 apps ร— 5 keywords creates 10 output rows.

Final live prices are visible on the Apify actor page before you run it.

Quick start

  1. Open the actor on Apify.
  2. Enter one or more Google Play package IDs.
  3. Add your ASO keywords.
  4. Choose country and language.
  5. Run the actor.
  6. Export the dataset.

Input: app IDs

Use Android package IDs, not full URLs.

Good examples:

  • com.myfitnesspal.android
  • com.google.android.apps.fitness
  • com.fitbit.FitbitMobile

Input: keywords

Use the exact phrases you want to monitor.

Examples:

  • calorie counter
  • fitness tracker
  • workout app
  • meditation

Input: country and language

country maps to the Google Play gl parameter.

language maps to the Google Play hl parameter.

Examples:

  • United States English: country=US, language=en
  • Germany German: country=DE, language=de
  • France French: country=FR, language=fr

Input: rank depth

maxRankDepth controls how many unique apps are scanned per keyword.

Use a small depth for cheap smoke tests.

Use a larger depth for production monitoring.

Output: found ranks

When the target app appears in the parsed Google Play results, foundRank is a 1-based rank.

When it does not appear, foundRank is null and status is NOT_FOUND.

Output: competitor sample

topResults includes a small list of top apps for the keyword.

This helps you understand who is ranking ahead of your app without running a separate competitor scraper.

Example input

{
"appIds": ["com.myfitnesspal.android", "com.google.android.apps.fitness"],
"keywords": ["calorie counter", "fitness tracker"],
"country": "US",
"language": "en",
"maxRankDepth": 30,
"includeTopResults": 10
}

Example output

{
"keyword": "calorie counter",
"country": "US",
"language": "en",
"appId": "com.myfitnesspal.android",
"foundRank": 1,
"foundUrl": "https://play.google.com/store/apps/details?id=com.myfitnesspal.android",
"matchedTitle": "MyFitnessPal: Calorie Counter",
"matchedDeveloper": "MyFitnessPal, Inc.",
"matchedRating": 4.4,
"checkedAt": "2026-06-25T00:00:00.000Z",
"resultsScanned": 30,
"status": "FOUND"
}

Tips for better ASO monitoring

  • โœ… Keep keyword batches focused.
  • โœ… Use the same country/language for trend comparisons.
  • โœ… Store historical datasets for movement over time.
  • โœ… Track competitor package IDs alongside your own app.
  • โœ… Use NOT_FOUND rows to detect missed visibility.

Integrations

Use the output dataset with:

  • Google Sheets dashboards.
  • Looker Studio reports.
  • Slack alerts for rank drops.
  • Airtable keyword tracking tables.
  • BigQuery or Snowflake warehouses.
  • Scheduled Apify tasks for recurring ASO monitoring.

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/aso-keyword-rank-tracker').call({
appIds: ['com.myfitnesspal.android'],
keywords: ['calorie counter'],
country: 'US',
language: 'en',
maxRankDepth: 30
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
client = ApifyClient('MY-APIFY-TOKEN')
run = client.actor('automation-lab/aso-keyword-rank-tracker').call(run_input={
'appIds': ['com.myfitnesspal.android'],
'keywords': ['calorie counter'],
'country': 'US',
'language': 'en',
'maxRankDepth': 30,
})
print(run['defaultDatasetId'])

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~aso-keyword-rank-tracker/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"appIds":["com.myfitnesspal.android"],"keywords":["calorie counter"],"country":"US","language":"en","maxRankDepth":30}'

MCP for Claude Code and Claude Desktop

You can connect this actor through Apify MCP.

Use this MCP URL:

https://mcp.apify.com/?tools=automation-lab/aso-keyword-rank-tracker

Claude Code setup:

$claude mcp add apify-aso-keyword-rank-tracker https://mcp.apify.com/?tools=automation-lab/aso-keyword-rank-tracker

Claude Desktop JSON configuration:

{
"mcpServers": {
"apify-aso-keyword-rank-tracker": {
"url": "https://mcp.apify.com/?tools=automation-lab/aso-keyword-rank-tracker"
}
}
}

Example prompts:

  • "Check my Android app rank for these ASO keywords in the US."
  • "Compare these competitor package IDs for workout app keywords."
  • "Create a CSV of Google Play keyword ranks for my weekly ASO report."

Scheduling recurring rank checks

Create an Apify task with your package IDs and keywords.

Schedule it daily or weekly.

Export each run's dataset to your reporting stack.

FAQ

Common questions about ASO rank tracking, Google Play package IDs, and recurring keyword monitoring.

Troubleshooting: why is my app not found?

The app may rank below the selected depth, not rank for the keyword, or Google Play may personalize/adjust results by country and language.

Increase maxRankDepth or verify the package ID.

Troubleshooting: why do ranks change?

Google Play rankings can change due to personalization, experiments, country, language, and time.

For trend reporting, keep inputs consistent.

Limitations

The actor currently targets Google Play search results.

It does not yet check Apple App Store rankings.

It parses public search pages, so fields depend on what Google Play exposes in the page response.

Legality and responsible use

This actor extracts publicly available Google Play search result information.

Use it responsibly, respect applicable laws, and avoid abusive request volumes.

Related automation-lab actors:

Support

If a keyword or country stops returning results, open an Apify issue with your input and run ID.

Changelog

  • 0.1 Initial Google Play ASO keyword rank tracking MVP.