Google Keyword Rank Tracker — Serpstat Alternative avatar

Google Keyword Rank Tracker — Serpstat Alternative

Pricing

from $40.00 / 1,000 seo observations

Go to Apify Store
Google Keyword Rank Tracker — Serpstat Alternative

Google Keyword Rank Tracker — Serpstat Alternative

Track current Google keyword rankings and compare target domains in the same SERP. Export positions, top domains, related queries, and source evidence; optionally cluster keywords by shared ranking domains.

Pricing

from $40.00 / 1,000 seo observations

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

5 days ago

Last modified

Share

Track current Google keyword rankings and compare target domains in the same SERP. Export positions, top domains, related queries, and source evidence; optionally cluster keywords by shared ranking domains. For search marketers, each dataset row represents one observed keyword, with optional domain ranks and clustering evidence.

Workflow: put the results to work

Submit the keyword campaign and optional target and competitor domains. Use rank mode for a position snapshot or clustering mode to group terms by shared top-ranking domains. Review the source evidence before assigning clusters to separate content pages.

Best fit for this Actor

  • Start with a bounded keyword campaign when you need a current Google position check for one domain and a few direct competitors.
  • Use keyword clustering when a content team needs evidence from shared top-ranking domains instead of a generic keyword list.
  • Use the target-domain workflow for an exportable campaign observation, not a persistent SEO project.

For broader SEO data, use the related SEMRush Alternative — Domain Overview, Keywords & Backlinks workflow before this Actor to discover domain metrics, organic keywords, and backlinks.

When to use this Actor — and when not to

Use this Actor when a current, bounded Google rank observation or a SERP-overlap keyword cluster is the decision you need to make. Do not use it when you need persistent project history, a backlink database, site crawling, paid-keyword research, team workspaces, or an agency reporting dashboard; those jobs are outside this Actor's contract.

How this workflow compares with Serpstat

This Actor is a focused alternative for the current Google rank-check and SERP-overlap clustering step. It accepts a bounded keyword list and returns structured keyword observations. Serpstat remains the broader choice for persistent projects, historical reporting, backlink analysis, site audits, and team workflows.

DecisionThis ActorSerpstatBest fit
ScopeOne current rank-and-cluster workflowBroader SEO platformUse this Actor for a bounded campaign observation
BillingPay per persisted observation plus Apify platform usagePlan tiers with bundled project and position-check allowancesChoose based on your run frequency and workspace needs
Effective efficiencyOne structured row per processed keyword in a bounded one-off runBroader dashboard and project workflowUse this Actor when a machine-readable campaign snapshot is the actual job
One-off outputOne structured row per processed keywordDashboard, export, and applicable API surfacesUse this Actor for dataset readback in a pipeline
Starting pointKeyword list, target domain, location, and deviceOngoing project setup for continuous monitoringStart here for a discrete current snapshot
FreshnessSource search URL and collection time per rowPersistent tracking and historyChoose Serpstat when durable project history is required

Serpstat is a trademark of its owner. This independent Actor is not affiliated, associated, or endorsed by Serpstat.

From keyword campaign to a reviewable SEO decision

An SEO operator starts with a campaign's target phrases and a domain. In rank snapshot mode, the Actor checks the same current Google SERP for the target and optional competitors, then returns targetRank, competitorRanks, topDomains, and sourceUrl. In keyword clustering mode, the same bounded SERP observations are grouped by shared top domains, giving the operator an evidence-backed first pass at which phrases likely serve a similar search intent.

Quick start input

{
"mode": "rank_snapshot",
"keywords": ["technical seo audit", "seo audit checklist"],
"targetDomain": "example.com",
"competitorDomains": ["moz.com", "semrush.com"],
"locationName": "United States",
"languageCode": "en",
"device": "desktop",
"maxKeywords": 2
}

For keyword clustering, supply at least two distinct phrases and switch the mode:

{
"mode": "keyword_clustering",
"keywords": ["technical seo audit", "seo audit checklist", "website seo audit"],
"locationName": "United States",
"languageCode": "en",
"device": "desktop",
"maxKeywords": 3,
"clusterSimilarityThreshold": 0.3
}

Input reference

FieldTypeWhat it controls
modeenumChooses a current rank_snapshot or SERP-overlap keyword_clustering workflow.
keywordsstring arrayBounded Google phrases; blank and duplicate entries are removed.
targetDomainstringRequired for rank snapshots and ignored for keyword clustering.
competitorDomainsstring arrayUp to five domains compared in the already retrieved SERP.
locationName / languageCode / devicestringFix the geographic, language, and device context of every observation.
maxKeywordsintegerCaps processed phrases from 1 to 20 and therefore caps the billable observation count.
clusterSimilarityThresholdnumberSets the shared-top-domain overlap needed to group phrases in clustering mode.

What data you receive

One dataset item is one current Google keyword observation. A target domain can be absent from the inspected top results; in that case, rank fields remain null while the row still preserves the SERP evidence.

FieldMeaning
targetRank, targetUrl, competitorRanksCurrent domain matches from the same Google result set.
clusterId, clusterKeywords, maxClusterOverlapSERP-overlap cluster evidence in keyword clustering mode.
topDomains, relatedQueries, peopleAlsoAskCompact intent and competitor context from the observed SERP.
sourceUrl, collectedAtSource search URL when returned and the time the observation was collected.
warningsNon-fatal row notes; terminal outcome details remain in OUTPUT and RUN_SUMMARY.
{
"operation": "rank_snapshot",
"keyword": "technical seo audit",
"targetDomain": "example.com",
"targetFound": true,
"targetRank": 3,
"competitorRanks": [
{
"domain": "moz.com",
"rank": 1,
"url": "https://moz.com/example"
}
],
"topDomains": ["moz.com", "example.com"],
"relatedQueries": ["seo audit checklist"],
"peopleAlsoAsk": ["What is a technical SEO audit?"],
"sourceUrl": "https://www.google.com/search?q=technical+seo+audit",
"collectedAt": "2026-09-07T12:00:00.000Z",
"warnings": []
}

Use through the API

curl -X POST "https://api.apify.com/v2/acts/khadinakbar~serpstat-alternative/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"mode": "rank_snapshot",
"keywords": ["technical seo audit"],
"targetDomain": "example.com",
"locationName": "United States",
"languageCode": "en",
"device": "desktop",
"maxKeywords": 1
}'

After the run finishes, read the default dataset for the observations and the OUTPUT plus RUN_SUMMARY records for the terminal outcome, warning list, and event-count diagnostics.

Use with AI agents through Apify MCP

Check example.com and two direct competitors for these five SEO campaign keywords in the United States on desktop. Return the current target and competitor ranks, top domains, related queries, source URLs, and collection times. Stop at five observations and report whether the terminal outcome was complete or partial.

Use the current Apify MCP configurator to connect an approved client. This is a read-only data workflow: it starts a bounded run, writes SEO observations to the run dataset, and does not modify Google, Serpstat, or the target domains.

Best results

  • Use a stable campaign keyword list and the same location, language, and device when comparing runs over time.
  • Use rank snapshots when the decision is about one target domain; use keyword clustering when the decision is about shared SERP intent across phrases.
  • Keep the initial run small, inspect topDomains and relatedQueries, then expand only the phrases that are useful for the campaign.

Limitations and recovery

The Actor inspects the first ten current Google organic results returned by its managed provider; it does not calculate historical visibility, crawl a site, or produce a backlink index. A PARTIAL outcome means that some useful rows were persisted but a provider failure or spend cap interrupted the rest; retain the dataset, inspect RUN_SUMMARY, then retry only the unprocessed keywords. A VALID_EMPTY outcome is not an error: it means the provider accepted the input but returned no result items. A CONFIG_ERROR indicates that the owner-managed provider account needs attention, while INVALID_INPUT tells you what to correct without charging an observation event.

Evidence and freshness

Each rank observation retains its source context and collection time. Compare only observations with consistent location, language, and device settings; inspect terminal outcomes before treating a campaign snapshot as complete.

Builder's note

The Actor keeps one dataset row per keyword rather than mixing campaign summaries and error controls into the result set. That makes the rank evidence easy to join, export, and compare, while OUTPUT and RUN_SUMMARY preserve the provider and cost-cap diagnostics needed for an honest retry decision.

Responsible use

Use this workflow for public or otherwise authorized search research, and comply with applicable laws, provider terms, and your organization's data-handling policies. Google results can vary by time, location, language, device, and user context; this Actor records the selected context and collection time rather than claiming a universal rank.

Pricing and run costs

This Actor uses Pay per event plus Apify platform usage. The Pricing tab lists the current event rates and billing terms.

EventBilling unitWhen it applies
apify-actor-startActor StartCharged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).
rank-observationSEO observationCharged once for each validated current Google rank snapshot or SERP-overlap keyword observation persisted to the dataset.

Run cost combines the charged events and Apify platform usage. Review the run charge limit and requested result count before starting.

Connect an AI agent

Use the Apify MCP configurator to choose an available client connection. Inspect this Actor’s current input schema and required credentials before running it.