How it works
One call per keyword, place and device
Send the keyword with a country, a language and a place. The answer lists every organic result with its position and real link, so finding your rank is a short loop in your code.
Every organic result
Position, title and the page's real link, counted on across pages.
Any city or region
Write the place in plain words; we match it to Google's own place name.
Desktop or mobile
Add device=mobile to see the results a phone gets.
What a rank tracker needs
Positions with real links
Each organic result carries its position and the page's real address, never a Google redirect. Ask for up to 10 pages in one request with num_pages; positions count on across pages and each page costs one credit.
{ "organic_results": [ { "position": 1, "title": "10 Best Project Management Software: Get Ahead in 2026", "link": "https://www.websiteplanet.com/project-management-software/", "displayed_link": "https://www.websiteplanet.com › project-management-s...", "source": "Website Planet", "snippet": "#1 monday.com: Our Top-Rated Project Management Software #2 Smartsheet: Best for Data-Heavy Projects 4.8 #3 Teamwork: Best Client Collaboration...", "date": "Dec 16, 2021" }, { "position": 2, "title": "12 Free Project Management Software 2026 (Reviewed)", "link": "https://www.proprofsproject.com/blog/free-project-management-software/", "displayed_link": "https://www.proprofsproject.com › blog › free-project-m...", "source": "ProProfs Project", "snippet": "Three top picks emerged — Asana – Best Free Project Management Software. Jira – Best Free Project Management Software for Agile and Software...", "date": "Jul 17, 2026" } ]}Rankings from any place
Set gl for the country, hl for the language and location for the city. The answer's location_used shows Google's own name for the place it searched from, with the uule code it sent.
curl -G "https://api.scraperdata.com/v1/search" \
-H "X-API-Key: YOUR_API_KEY" \
--data-urlencode "q=emergency plumber" \
-d gl=us \
-d hl=en \
--data-urlencode "location=Austin, Texas" \
-d device=mobileEverything else on the page
Ads, the map pack, top stories, videos, People also ask and the AI Overview come back as their own blocks when Google shows them, so you can see what pushes organic results down.
"ads": [...]
"local_results": [...]
"top_stories": [...]
"inline_videos": [...]
"related_questions": [...]
"related_searches": [...]
"knowledge_graph": [...]
"ai_overview": [...]Thousands of keywords a day
Send each keyword with a pingback_url to queue up to 10,000 searches at once, past your plan's concurrency. We call your URL when each search ends, and GET /v1/tasks/{id} returns the answer for 7 days.
curl -G "https://api.scraperdata.com/v1/search" \
-H "X-API-Key: YOUR_API_KEY" \
--data-urlencode "q=emergency plumber" \
--data-urlencode "location=Austin, Texas" \
--data-urlencode "pingback_url=https://example.com/ping"Frequently asked questions
How do I find my rank for a keyword?
Search the keyword and look for your domain in organic_results. Its position field is your rank on that page; ask for more pages with num_pages to look deeper.
Can I track rankings in a specific city?
Yes. Send location with the city, for example location=Austin, Texas, together with gl. The answer shows the place Google searched from in location_used.
Do mobile and desktop rankings differ?
Often they do. Send device=mobile to get the results Google shows on a phone, and device=desktop (the default) for a computer.
What does a daily check of 1,000 keywords cost?
One credit per results page, so 1,000 keywords checked once a day with one page each is about 30,000 credits a month. The pricing page works out the cost of each plan for your volume.