Yandex Search Scraper: Regional Rank Tracker avatar

Yandex Search Scraper: Regional Rank Tracker

Pricing

from $2.00 / 1,000 search result founds

Go to Apify Store
Yandex Search Scraper: Regional Rank Tracker

Yandex Search Scraper: Regional Rank Tracker

Track Yandex rankings city by city. Give it your search terms and a Russian region and get every ranked result as clean rows: position, title, address, domain, description, related searches and the answer block. Eighteen regional markets, up to 250 ranked positions per term. No account needed.

Pricing

from $2.00 / 1,000 search result founds

Rating

0.0

(0)

Developer

Hamza

Hamza

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

15 days ago

Last modified

Categories

Share

Yandex Search Scraper

Track where you rank on Yandex, city by city. Give it a list of search terms and a Russian region, and it returns every result the source ranks for those terms as clean rows: position, title, address, domain, description, related searches and the direct-answer block. Built for SEO teams, agencies and marketplaces working the Russian-language market — no account and no login are needed, just run it.

What you can do with it

  • Track rankings in the cities you actually sell into. Moscow, Saint Petersburg, Novosibirsk and fifteen more regions each return their own ordering, and every row records the region it was answered for.
  • Watch competitors move. Run the same terms on a schedule and see which domains gain and lose positions over time.
  • Audit a whole keyword set at once. Hundreds of search terms in one run, each producing a full table of results.
  • See the whole result surface, not just the ten blue links. Related searches and the direct-answer block come back alongside the ranked results, so you can tell when you have lost the answer box.
  • Find where a market's demand actually goes. Collect the full depth the source ranks for a single term — about 250 positions — and see the long tail of sites competing for it.
  • Feed it straight into a report. One flat table, stable columns, ready for a spreadsheet or a dashboard.

What you get

One row per result. A real row, abridged:

{
"query": "новости города",
"requestedRegionId": 213,
"regionId": 213,
"regionName": "Moscow",
"page": 1,
"type": "organic",
"position": 4,
"positionOnPage": 4,
"title": "Новости Москвы сегодня — последние новости города | Москва 24",
"url": "https://www.m24.ru/news",
"displayUrl": "m24.ru › news",
"domain": "m24.ru",
"snippet": "Последние новости Москвы: происшествия дня, ДТП, транспорт, главные экономические и социальные события города.",
"sitelinks": [],
"collectedAt": "2026-08-17T11:57:05.044Z"
}

Input reference

FieldTypeDefaultWhat it does
querieslist of text— (required)The search terms to look up. Terms written in Russian give the most complete results, because this is the Russian-language search market. Up to 1,000 terms per run.
regionchoiceMoscowThe city or region the search is run for. Rankings differ a lot between Russian cities, so pick the market you sell into. Eighteen choices, from nationwide down to individual cities.
maxResultsPerQuerynumber20How deep to go in the ranked results for each term, up to 250 — which is about as deep as the source ranks a single term. Related searches and the answer block are not counted against this depth: they are one small block each, reported once per search term, and they come back in full beside the ranked rows.
resultTypeschoice listOrganic resultsWhich parts of the result page to keep: organic results, related searches, the answer block — any combination. Related searches and the answer block are reported once per search, from the first result page the run reads that carries them.
parallelSearchesnumber3How many search terms to work through at the same time. Raise it for large jobs.

Output fields

FieldTypeWhat it is
querytextThe search term this row came from.
typetextorganic, related or featured.
positionnumberThe result's rank for this term, counted across result pages. Related searches and the answer block are numbered within their own block, not among the ranked results.
positionOnPagenumberThe result's rank within its own result page.
pagenumberWhich result page it was found on.
titletextThe result's headline.
urltextWhere the result points. Empty for related searches, which are search terms rather than addresses.
displayUrltextThe address as the source prints it under the headline.
domaintextThe result's domain.
snippettextThe description shown under the headline.
sitelinkslistExtra links shown under a result, where the source shows them.
regionIdnumberThe region the result was actually answered for.
regionNametextThat region's name in English, where it is one of the regions on offer.
requestedRegionIdnumberThe region the run asked for, so any difference is visible.
collectedAttextWhen the row was collected, as an ISO timestamp.

Every field is present in every row. A value the source does not publish comes back empty rather than guessed, so your columns stay stable.

Pricing

You pay per event, and there are two:

What you pay forWhen it is charged
Search result foundOnce for every result row written to your table.
Search completedOnce for each search term in each region, when the search has been carried out — including when it legitimately turns up nothing, because that is still a full unit of work. It is not charged when a search could not be completed.

Worked example. 100 search terms, 20 results each, one region: 2,000 result rows plus 100 completed searches. Nothing else is charged: retrying a search that came back incomplete costs you nothing, and a search that fails is not billed.

Limits & what this actor cannot do

  • There is no single true ranking, and this actor does not pretend there is one. Yandex serves slightly different orderings to different visitors and changes them continuously. Two collections minutes apart commonly agree on eight or nine of the top ten sites but not on their exact order. Treat a position as the rank in the market and at the moment it was collected in, and compare trends over several collections rather than trusting a single number.
  • The source publishes a limited number of results for any one search — about 250 ranked positions per term per region — so very broad terms return what it makes available rather than an unlimited list. It also repeats some addresses across its own result pages, and those are reported once, so a term taken to full depth typically yields around 200 rows rather than 250.
  • Paid placements are not collected and are not offered. The entry this actor reads does not serve them for these searches at all, so an "ads" column could only ever say "none" — which reads like a finding and is not one. Rather than sell an answer that is structurally impossible to get right, the type is not on the menu.
  • The answer block and related searches appear only on the searches that carry them, and their presence varies in two separate ways. It varies from one result page to the next: measured live, the same search served a page one with no related strip and a page three with nine. And it varies between one reading of the very same page and the next — a question that plainly has a direct answer served the answer block on three of six consecutive readings of an identical search. Each is therefore reported once per search, from the first page this run happens to read that carries it — the row records which page that was. No extra page is read to hunt for one, so a search collected to a depth of one page reports only what that page carried, and re-running the same job can legitimately return an answer block one time and not the next. If you need one for a specific question, run that search on its own and expect to repeat it.
  • There is no date on a result. The source does not publish when a page was written or last updated, so no such column is offered.
  • There is no total-results figure, and none is invented. The actor reports what it actually collected.
  • It reports where pages rank, not how often people search for them. No search-volume figure exists on this surface and none is estimated.
  • Regions are limited to the ones that genuinely change the results. Eighteen Russian markets are offered, each confirmed to return its own local sites. Regions outside Russia are not offered, because selecting one would return a Russian ranking under another country's name.
  • If the source answers for a different region than the one selected, the row says so: it records the region it was answered for as well as the one asked for, and the run summary counts it.
  • There are no star ratings or review counts, and no such columns are offered. This was measured rather than assumed: across twelve live result pages chosen because they are exactly the commercial searches that would carry ratings if anything did — pizza, hotels, laptops, phones, fridges, dentists, sushi, coffee shops, restaurants, car repair — not one ordinary result carried a rating widget. The only ratings this entry publishes belong to the business cards in its map panel, which are organisations rather than web pages and are covered properly by the Yandex Maps actors. Putting them in a ranking table would mix shops into a column of web positions, so they are not collected here and no empty column is left behind pretending they might be.
  • If the same address appears on more than one result page for the same term, it is reported once, at the first rank the source gave it.
  • A search the source refuses to complete is reported as a failed search, never as "no results found." The run summary counts searches with results, searches that genuinely found nothing, and searches that failed as three separate numbers, and incomplete answers are detected and retried automatically before anything is reported.
  • It reports only what the source publishes to the public. It does not sign in, sees nothing behind a login, and cannot reveal anything the source keeps private.
  • Speed depends on the size of the job and on the source's own response times. No fixed throughput is promised.
  • The source's terms govern automated access. You are responsible for using the data lawfully and in line with those terms, and for handling any personal data in line with applicable privacy law — including GDPR and Russian personal data law where they apply.

FAQ

Do I need an account on the source site? No. Nothing is signed in to and nothing is set up on your side.

Does it need my login or password? No. It never asks for credentials of any kind, for the source site or anywhere else.

Can I schedule it? Yes. Schedule the same term list daily or weekly and you get a ranking history you can chart. That is the intended way to use it.

Will the positions match exactly what I see in my browser? Usually close, rarely identical. Yandex personalises and experiments constantly, so the set of sites is stable while the exact order moves. Compare across several collections rather than reading one position as an absolute truth.

Why did one of my search terms come back with nothing? One of three things happened, and the run summary counts them separately so you can always tell which: the source genuinely found nothing for it, the source answered normally but carried none of the result types you selected (for example you asked only for related searches and that search does not print any), or the search could not be completed at all. A term that failed is never reported as a term with no results.

Can I track cities outside Russia? No. Only regions that were confirmed to return their own local results are offered, and those are Russian. Offering a region that quietly returns Moscow's ranking would be worse than not offering it.

Can I collect more than 250 results for one term? No, and no actor can: about 250 positions is what the source ranks for a single search. For more coverage, run more terms rather than deeper ones.