Google SERP Rank Tracker — Keyword Positions & SERP API avatar

Google SERP Rank Tracker — Keyword Positions & SERP API

Pricing

from $2.00 / 1,000 result pages

Go to Apify Store
Google SERP Rank Tracker — Keyword Positions & SERP API

Google SERP Rank Tracker — Keyword Positions & SERP API

Track where your domains rank on Google for hundreds of keywords, countries and devices in one run, with featured snippet and AI Overview checks. Or get the full organic results. $2 per 1,000 result pages.

Pricing

from $2.00 / 1,000 result pages

Rating

0.0

(0)

Developer

Salih Küçükkayış

Salih Küçükkayış

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 hours ago

Last modified

Categories

Share

Track where your site and your competitors rank on Google for hundreds of keywords, in up to 10 countries, on desktop and mobile, in one run. Each tracked domain gets its position, ranking URL, and whether it holds the featured snippet or is cited in the AI Overview. Or leave tracking empty and get every organic result as a row.

$2 per 1,000 result pages. A result page is 10 Google results: checking the top 30 for one keyword is 3 pages ($0.006), the top 100 is 10 pages ($0.02). You pay only for pages actually returned. Searches that fail or are not ready in time are free. No subscription, and platform usage is included. (Plus a tiny $0.00005 start fee per run.)

What you get

  • Rank tracking in bulk. Up to 10,000 searches a run (keywords × countries × devices), and up to 50 tracked domains or pages compared on each.
  • One row per keyword and domain. Best position, the URL that ranks, other URLs of the same domain on the page, and inTop10.
  • Beyond the blue links. Featured snippet owner, AI Overview citations, and the list of SERP features on each results page (People Also Ask, video, local pack, …).
  • Desktop and mobile, any country. Every country Google serves, in its main language or the one you choose.
  • The full results too. Turn on includeResults (or track nothing) for one row per organic result: position, domain, URL, title and snippet.
  • Stops at your spending limit. Pages already queued are counted against it, so a run never goes over.
  • Feed it from Keyword Research. Point datasetId at a Keyword Research run and track the keywords you just found.

Typical uses

  • Weekly rank report. Schedule the same input every Monday and compare runs.
  • Who owns page one. Track yourself and four competitors across 200 keywords and pivot by domain.
  • AI Overview visibility. See for which keywords your site is cited in Google's AI Overview.
  • Local markets. The same list in US, UK, Canada and Australia, desktop and mobile.

Input

{
"keywords": ["project management software", "best crm for small business"],
"trackDomains": ["asana.com", "monday.com"],
"countries": ["US", "GB"],
"devices": ["desktop", "mobile"],
"depth": 30
}
FieldMeaning
keywordsSearch queries. Search operators (site:, intitle:, …) are not supported.
trackDomainsUp to 50 domains (subdomains count) or exact page URLs to find on each results page.
countriesUp to 10 countries. Default US.
languageOptional search language code. Default: the country's main language.
devicesdesktop (default), mobile, or both.
depth10 to 100, in steps of 10. Default 30.
includeResultsAlso return one row per organic result.
maxWaitMinutesHow long to wait for queued searches. Default 60.
keywordsUrl, datasetId, keywordFieldOther ways to pass keywords.

Output

The dataset has three kinds of rows, told apart by type.

ranking, one per keyword, tracked domain, country and device:

{
"type": "ranking",
"keyword": "asana",
"country": "US",
"language": "en",
"device": "desktop",
"target": "asana.com",
"position": 2,
"url": "https://help.asana.com/s/article/your-asana-account?language=en_US",
"title": "Asana account: how to create it & log in | Help Center",
"otherRankingUrls": ["https://asana.com/jobs/all", "…"],
"inTop10": true,
"status": "ok"
}

A real row from a run on 17 October 2026 (asana, United States, desktop, top 10). Subdomains such as help.asana.com count for asana.com; the other pages of the domain on the same results page are in otherRankingUrls.

serp, one per search: serpFeatures, totalResults, organicResults, the top10 (position, domain, URL, title), the tracked positions in short, and pages charged. Searches that were not delivered are serp rows with a status and note.

result (with includeResults), one per organic result: position, absolutePosition, domain, url, title, description.

position counts organic results only; absolutePosition counts every element on the page (ads, snippets, boxes). A tracked domain not found within depth has position: null.

Rows that cost nothing: invalid_keyword, input_error, no_results (Google returned nothing), spending_limit, free_plan_limit, not_ready (not finished within the waiting time), throttled and provider_error.

What it costs

RunPrice
100 keywords, top 10, 1 country$0.20
100 keywords, top 30, desktop + mobile$1.20
500 keywords, top 100, 1 country$10.00
50 keywords, top 30, 10 countries$3.00

How long it takes

Searches go through a queue: most finish within a few minutes, some take longer at busy times. The run collects them as they finish and stops waiting after maxWaitMinutes; anything not ready by then is listed and not charged.

Apify free plan

Every search costs us real money at the data source, and free-plan runs earn nothing. So on the Apify free plan this Actor gives 3 searches of the top 10 a day. The rest comes back as uncharged free_plan_limit rows. Any paid Apify plan has no such limits.

Good to know

  • Results come from a licensed search data provider, checked for the chosen country, language and device. They can differ from what you see in your own browser, which is personalised.
  • This Actor is for rank tracking and search research. It is not affiliated with, endorsed by or sponsored by Google; "Google" is a trademark of Google LLC.
  • A run that is moved to another server continues where it stopped, collecting the searches it already queued. Nothing is searched or charged twice.
  • Pricing: one serp-page charge per 10 results returned, plus $0.00005 when a run starts.
  • Questions or a missing feature: open an issue on the Actor page.

Next steps

More from this developer

  • Keyword Research: keyword ideas, suggestions and related keywords with volume, difficulty and search intent, $2 per 1,000 keywords.
  • Competitor Keywords: every Google keyword a domain or page ranks for, and its organic competitors, $2 per 1,000 rows.
  • Domain SEO Overview: organic keywords, estimated traffic and top-10 rankings for thousands of domains, $5 per 1,000 domains.
  • Google Trends API: interest over time, by region and related queries for hundreds of keywords, $6 per 1,000 queries.
  • Keyword Search Volume: Google Ads search volume, CPC and up to 48 months of trend for a keyword list, $2 per 1,000 keywords.
  • Sitemap Extractor: every URL a website lists in its sitemaps, with lastmod, images and hreflang, $0.25 per 1,000 URLs.
  • Broken Link Checker: crawl a site and find broken links and images, with the pages they are on.
  • Tech Stack Detector: which CMS, ecommerce platform, analytics and hosting a website uses, $1.50 per 1,000 websites.
  • Website Screenshot + Change Detection: screenshots of many URLs on desktop and mobile, with visual change detection between runs.
  • Dataset Merge & Dedup Datasets: merge, dedupe and filter the results of several runs into one dataset.