Rank tracker API
Rank tracker API for Google and Bing positions.
Rank tracker API for Google and Bing. Check where a domain ranks for any keyword by location and device, with organic positions and SERP features as JSON.
Search data for rank checkers and recurring reports
Local SEO and agencies
SERP feature visibility
From keyword list to historical observation
- Define a keyword list with the target domain or URL and the engines to check.
- Persist the complete search context. Google supports country, interface and result language, named location or coordinates, and device. Bing uses country, interface-language hints, coordinates, and device.
- Schedule jobs in your application. Choose a cadence that fits the reporting need and distribute requests within your package's rate limit. The scalable SERP API guide shows how to pace a large batch.
- Read
data.content.results, match the target hostname, and keep its returned rank and position fields. Filter organic results when reporting organic rankings. - Follow documented pagination only when more depth is needed. Use Google's
startcontrol or Bing's returnednext_page_token; each successful page consumes a credit. - Save the UTC observation time, request ID, query, engine, targeting, page context, matched URL, rank, and SERP features. Generate deltas and alerts from comparable observations.
Check a domain's SERP position for a keyword
import os
from datetime import datetime, timezone
from urllib.parse import urlparse
import requests
target = "example.com"
parameters = {
"query": "example product",
"gl": "us",
"hl": "en-US",
"location": "Austin,Texas,United States",
"device": "mobile",
}
response = requests.post(
"https://api.prismcrawl.com/v1/google/search",
headers={"x-api-key": os.environ["PRISMCRAWL_API_KEY"]},
json=parameters,
timeout=30,
)
response.raise_for_status()
payload = response.json()
if not payload.get("success"):
raise RuntimeError("Search did not succeed")
content = payload["data"]["content"]
matches = []
for result in content.get("results", []):
host = (urlparse(result["url"]).hostname or "").lower()
if result["type"] == "organic" and (
host == target or host.endswith("." + target)
):
matches.append(result)
best = min(matches, key=lambda item: item["rank"], default=None)
print({
"observed_at": datetime.now(timezone.utc).isoformat(),
"request_id": payload["request_id"],
"engine": "google",
"parameters": parameters,
"status": "found" if best else "not_found_on_checked_page",
"rank": best["rank"] if best else None,
"position": best.get("position") if best else None,
"url": best["url"] if best else None,
"serp_features": content.get("serp_features", []),
})Scale collection without mixing ranking contexts
- Use a queue with bounded concurrency and capped backoff for transient errors
- Keep API failures separate from successful searches with no matching domain
- Store page context instead of assuming every SERP contains ten organic listings
- Deduplicate identical scheduled checks while preserving separate locations and devices
- Budget keywords × engines × locations × devices × checks × pages
- Retain your own observations for long-term charts and exports
Rank tracker API costs and integration
One-time credit purchases start at $5, with no subscription. Rates range from $0.30 to $0.15 per 1,000 successful searches; the lowest rate requires a $1000 purchase. Credits are valid for 90 days. See the SERP API pricing breakdown for package sizes, rate limits, and usage examples.
Invoice payments are welcome for purchases of $100 or more. Visit Invoices to request an invoice.
Check a Bing keyword with the Bing SERP checker guide, model recurring volume in the cost calculator, test a query in the playground, and inspect fields in the API reference. The rank tracker tutorial explains the surrounding application, while the SEO workflow guide connects observations to page decisions. To track AI Overview and Bing AI answer citations alongside rank, follow the TypeScript rank and citation tracker tutorial. To compare providers, see the best rank tracking APIs, priced at 1,000 and 10,000 keywords checked daily.
Frequently asked questions
What is a rank tracker API?
It returns live search results for a keyword in a chosen country, location, language, and device so your software can see where a domain ranks. PrismCrawl returns each result's rank, position, and URL as JSON; your application stores the observations and builds reports.
Can I use it as a SERP rank checker API?
Yes. One request checks one keyword on one engine in one search context. Match your domain against the returned URLs to get its position, and request further pages when you need more depth.
Is a SERP tracking API different from a rank tracking API?
They describe the same data. A SERP tracking API, rank tracking API, SERP position API, or Google rank tracker API returns the live results for a keyword so you can record where each domain appears. PrismCrawl returns the full results page, so the same request also records competitors and SERP features alongside your own position.
How much does API rank tracking cost?
Each successful search uses one credit. For example, 100 keywords checked daily on Google desktop and mobile is 6,000 searches a month, which costs $1.80 at the $0.30 per 1,000 entry rate. The smallest purchase is $5, credits last 90 days, and there is no subscription.
Is PrismCrawl a hosted rank tracker?
PrismCrawl provides the live search API data. Your application manages keyword lists, scheduled checks, historical storage, alerts, and client reports.
Can I track Google and Bing rankings?
Yes. Use the Google Search and Bing Search endpoints with consistent engine-specific targeting. Store the engine and search context with each observation so rankings remain comparable.
What if my domain does not appear?
Record that it was not found within the pages you checked. Keep that state separate from an API failure and from a known numeric rank. Pagination availability and search results can change between checks.
Does request history replace my ranking database?
No. Standard request metadata is retained for 90 days and JSON/source HTML for 30 days. Save observations in your own database for longer trends. With zero_trace enabled, result artifacts are not retained and request history is limited to audit and billing fields.
Is a SERP position the same as Search Console average position?
No. An API check observes a search in a chosen context at a particular time. Search Console aggregates impressions across users and contexts. Use both sources with those differences in mind.
Make your first live search today.
Create an account, get 100 free credits, and test live Google or Bing results. No credit card or subscription required.