Yandex Maps Reviews Scraper API | Парсер отзывов Яндекс Карт
Pricing
from $1.49 / 1,000 reviews
Yandex Maps Reviews Scraper API | Парсер отзывов Яндекс Карт
Scrape Yandex Maps reviews (отзывы Яндекс Карт) for any place: star rating, full text, date, the business reply, photos and the author's display name, with the place name, address and rating on every row. Sort, date filter, optional search. No login. Pay per review.
Pricing
from $1.49 / 1,000 reviews
Rating
0.0
(0)
Developer
The Mine Works
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
15 days ago
Last modified
Categories
Share
From The Mine Works, makers of Threads Scraper and B2B Leads Finder, with over 140,000 runs across 170+ public actors.
Export the reviews of any Yandex Maps place (отзывы Яндекс Карт) to JSON, CSV or Excel: the star rating, the full text, the date, the business's reply, the photos and the reviewer's display name, with the place's name, address, rating and coordinates on every row. Paste place links or business ids, or let a search find the places first. One CSV answers both "what do people say" and "about which branch".
Why choose this actor?
- 600 reviews from 3 places in 26 seconds. On 1 Oct 2026 a run over three Moscow restaurants at 200 reviews each finished in 26 seconds from 14 requests, every one answered on the first attempt. No Yandex account, no cookies of yours and no browser to wait for.
- Past Yandex's 600 review wall on busy places. Yandex serves at most 600 reviews in any one sort order. Ask for more and the actor also reads the other three orders and drops the overlap: on 29 Sep 2026 that gave 1,726 unique reviews of one Moscow restaurant in 132 seconds. A review found twice is delivered and charged once.
- From $1.49 per 1,000 reviews, plus a flat $0.005 per run. Reviews older than your date filter, places Yandex does not know, duplicates, refused pages and the information rows are never charged.
Part of The Mine Works Marketing, SEO and reviews family: Facebook Ad Library Scraper, Similarweb Scraper, Google Ads Transparency Scraper, Google News Scraper, Trustpilot Reviews Scraper, Google Trends Scraper.
Try it in one minute
Paste this into the JSON tab of the input page and press Start. It returns the 10 newest reviews of one Moscow restaurant in a few seconds.
{"startUrls": ["https://yandex.ru/maps/org/tanuki/1036014863/"],"maxReviewsPerPlace": 10,"sort": "newest"}
Give places in startUrls, one per line, in any of these forms: a place link copied from the address bar on yandex.ru, yandex.com, yandex.kz or another Yandex domain (/maps/org/<name>/<id>/, with or without /reviews/), a link with oid= in it, a short link such as yandex.ru/maps/-/..., or just the numeric business id (1036014863). Or leave startUrls empty and type a searchQuery such as стоматология with a city, and the actor finds the places first. You can use both in one run.
Apify's free plan includes $5 of credit every month, which covers about 2,000 reviews at this actor's price.
Copy to your AI assistant
themineworks/yandex-maps-reviews-scraper-api on Apify. It exports the public reviews of Yandex Maps places (rating, full text, date, business reply, photo links, reviewer display name) with the place's name, address, rating and coordinates on every row. Call ApifyClient("TOKEN").actor("themineworks/yandex-maps-reviews-scraper-api").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: startUrls (array of Yandex Maps place links or numeric business ids) or searchQuery (string). Optional: city (default "moscow", one of moscow, spb, novosibirsk, yekaterinburg, kazan, nizhny, chelyabinsk, samara, rostov, ufa, krasnoyarsk, minsk, almaty, astana; used only with searchQuery), maxPlaces (default 10, 1 to 100), maxReviewsPerPlace (default 100, 0 means all it can reach, up to 5000), sort ("relevance" default, "newest", "lowest", "highest"), reviewsStartDate (a date such as "2026-01-01" or a window such as "30 days"). Rows with a _type field are information rows, not reviews. Full spec: GET https://api.apify.com/v2/acts/themineworks~yandex-maps-reviews-scraper-api/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations?fpr=ymnoit&utm_source=apify-readme&utm_medium=referral
Key features
- 30 fields on a review row: 12 about the place (name, address, city, country, categories, rating, counts, coordinates, link) and 18 about the review (id, stars, full text, date, language, display name, likes, dislikes, photos, videos, business reply and its date, pinned flag, sort order, position, input and collection time).
- 4 sort orders: relevance (as on Yandex Maps), newest, lowest rating first or highest rating first. Lowest first is the quickest way to read complaints.
- A date filter that stops early. With
reviewsStartDateset, reviews are read newest first and reading stops at the first older review, so older reviews are neither fetched nor charged. - Up to 500 places per run, read 3 at a time, and up to 5,000 reviews per place. The same place given twice is read once.
- Optional search in 14 cities: Moscow, Saint Petersburg, Novosibirsk, Yekaterinburg, Kazan, Nizhny Novgorod, Chelyabinsk, Samara, Rostov-on-Don, Ufa, Krasnoyarsk, Minsk, Almaty and Astana. It adds up to 100 places, nearest the city center first.
- A run summary for every place in the key-value record
OUTPUT:ok,not_found,no_reviews,none_in_date_window,robots_disallowed,blocked,duplicateorskipped, with the review count Yandex shows and the sort orders read.
How to use it
Basic: one place
{"startUrls": ["https://yandex.ru/maps/org/tanuki/1036014863/"],"maxReviewsPerPlace": 100}
Several places at once
{"startUrls": ["https://yandex.ru/maps/org/tanuki/1036014863/","1018907821","https://yandex.com/maps/org/-/1133929046/reviews/"],"maxReviewsPerPlace": 200}
This is the input of our 1 Oct 2026 proof run: 600 reviews in 26 seconds. maxReviewsPerPlace applies to each place on its own, so three places at 200 gives up to 600 rows.
Weekly new reviews of your own branches
{"startUrls": ["1036014863", "1018907821"],"reviewsStartDate": "7 days","maxReviewsPerPlace": 0}
Save this as a task and schedule it every Monday morning, for example with the cron 0 8 * * 1. Each run reads newest first and stops at the first review older than a week, so you get the week's new reviews and pay only for those, plus the $0.005 run fee. On 29 Sep 2026 a 30 day window over three Moscow restaurants returned 666 reviews in 111 seconds.
Read a competitor's complaints
{"startUrls": ["1018907821"],"sort": "lowest","maxReviewsPerPlace": 100}
One and two star reviews come first. Read business_reply next to each one to see how, and how fast, the business answers criticism (business_reply_date minus date).
Compare the dentists nearest the center of Kazan
{"searchQuery": "стоматология","city": "kazan","maxPlaces": 10,"maxReviewsPerPlace": 50}
The search walks the map outward from the city center and adds places nearest the center first. input on each row reads search: стоматология (<place name>), so you can group rows by clinic.
As many reviews as possible from one busy place
{"startUrls": ["1036014863"],"maxReviewsPerPlace": 0}
0 means all the actor can reach, up to 5,000. A place with 600 reviews or fewer is read completely in one order. Above that the four orders overlap, so the total is less than 2,400: our test place with 11,727 reviews on Yandex gave 1,726 unique reviews.
Start from businesses you already have
If you collected businesses with our Yandex Maps Scraper, paste their business_id values into startUrls. The ids are the same, so a list of every cafe in a district becomes a review export in one more run.
Input parameters
| Parameter | Type | Default | What it does |
|---|---|---|---|
startUrls | array of strings | none | Places, one per line: a place link on any Yandex domain, a link with oid=, a short link (yandex.ru/maps/-/...) or the numeric business id. Up to 500 per run; the same place twice is read once. Leave it empty if you use searchQuery. |
searchQuery | string | none | Optional. A search such as кафе, стоматология or car wash. The actor finds places in city first, then reads their reviews. Works together with startUrls. |
city | string, one of 14 | moscow | City for the search: moscow, spb, novosibirsk, yekaterinburg, kazan, nizhny, chelyabinsk, samara, rostov, ufa, krasnoyarsk, minsk, almaty, astana. Only used with searchQuery. |
maxPlaces | integer, 1 to 100 | 10 | How many places the search may add, nearest the city center first. |
maxReviewsPerPlace | integer, 0 to 5,000 | 100 | Most reviews per place. 0 means all the actor can reach (up to 5,000). Above 600 the other sort orders are read too and duplicates dropped. |
sort | string | relevance | relevance (as on Yandex Maps), newest, lowest or highest rating first. |
reviewsStartDate | string | none | Only reviews since a date (2026-01-01) or within a window (30 days, 6 months, 1 year). Reviews are then read newest first, whatever sort says, and reading stops at the first older review. |
The input form in Apify Console starts with the Tanuki restaurant link and 50 reviews per place filled in. Runs started through the API or an AI assistant get only what you send, plus the defaults above. A run with neither startUrls nor searchQuery stops at once with an information row that says so.
What data do you get?
One row per review. Fields Yandex leaves empty for a review are left out of that row rather than sent as null; photo_urls is an empty list when the review has no photos.
The place (repeated on each of its reviews): place_id (the Yandex business id), place_name, place_url, place_address, place_city, place_country, place_latitude, place_longitude, place_categories, and place_rating with place_rating_count and place_review_count as Yandex counts them.
The review: review_id, rating (1 to 5 stars), text in full, date (ISO 8601, UTC) and language as Yandex detected it.
The reviewer: author_name, the display name exactly as Yandex shows it. Nothing else about the reviewer is collected: no profile id, no avatar, no level.
Reactions and media: likes, dislikes, photos_count, photo_urls (links to the largest size) and videos_count.
The business's answer: business_reply and business_reply_date, when the business has answered in public.
Where the row came from: is_pinned, sort_order (the order the review was read in), position in that order, input (the line or search the place came from) and scraped_at.
Information rows: every run that delivers reviews ends with one _type: "info" row, and a run that delivers none adds one that says why. They are never charged. Filter on _type to keep only reviews.
What we saw in the 600 rows of our 1 Oct 2026 run, so you can plan for it:
business_replywas present on 571 of 600 rows. These three restaurants answer almost every review; other places may answer far less.photo_urlshad at least one link on 310 rows and was empty on 290.author_namewas missing on 1 row, where Yandex showed no name.languagewasruon 590 rows andunknownon 10.- In relevance order, 500 of the 600 reviews were five stars. Use
sort: "lowest"when you need the complaints.
Stable fields for automations
These 15 fields were present in every one of the 600 rows we sampled on 1 Oct 2026, and in the 30 rows of our 29 Sep platform run. Their names will not change, so a Sheet, Zap, Make scenario or n8n flow can map to them safely.
| Field | What it is |
|---|---|
review_id | Yandex's review id. Use it as the unique key. |
place_id | Yandex business id of the place |
place_name | Name of the place |
place_address | Full address as Yandex shows it |
place_city | City of the place |
place_rating | Average rating of the place |
place_review_count | Written reviews Yandex counts for the place |
place_url | Link to the place on Yandex Maps |
rating | Stars given in this review, 1 to 5 |
text | Full review text |
date | Review date, ISO 8601 in UTC (the edit date if the author edited it) |
photos_count | Photos attached to the review |
sort_order | relevance, newest, lowest or highest |
input | The input line or search the place came from |
scraped_at | When the row was collected, ISO 8601 in UTC |
Output examples
Real rows from our test runs. Long texts are shortened and marked with "...".
A review with photos and a reply (1 Oct 2026, relevance order, shown in full apart from the text)
{"place_id": "1133929046","place_name": "Армения","place_address": "Москва, Тверской бульвар, 28/17","place_city": "Москва","place_country": "Россия","place_categories": ["Ресторан", "банкетный зал", "кафе"],"place_rating": 4.4,"place_rating_count": 2106,"place_review_count": 939,"place_latitude": 55.764117,"place_longitude": 37.60532,"place_url": "https://yandex.ru/maps/org/armenia/1133929046/","review_id": "QNivjOSHgo_4bbA4lxHcwRRlZ7BpBfn","rating": 5,"text": "Мое любимое место в Москве! Неприлично дерзко расположен в самом сердце столицы на пересечении самых топовых исторических мест!...","date": "2026-07-11T18:21:06.015Z","language": "ru","author_name": "Aleksandra","likes": 2,"dislikes": 2,"photos_count": 2,"photo_urls": ["https://avatars.mds.yandex.net/get-altay/20299570/2a0000019f5265faea3148b9ac217144f110/XXXL","https://avatars.mds.yandex.net/get-altay/20420873/2a0000019f5266123773a815fbba4b81b5a5/XXXL"],"videos_count": 0,"business_reply": "Спасибо за прекрасный отзыв! Будем ждать вас вновь!","business_reply_date": "2026-07-12T09:51:30.966Z","is_pinned": false,"sort_order": "relevance","position": 1,"input": "https://yandex.com/maps/org/-/1133929046/reviews/","scraped_at": "2026-10-01T13:29:57.058Z"}
A two star review and the business's answer (1 Oct 2026, place fields trimmed)
{"place_id": "1018907821","place_name": "Кафе Пушкинъ","place_rating": 4.9,"place_review_count": 6051,"review_id": "bJjTe19yv-G_J4FNAEPyeJxK2b-HBzKcC","rating": 2,"text": "Решила посетить данное заведение в рамках делового обеда, чтоб составить впечатление. Понравилась только атмосфера и интерьеры, всё остальное было плохо...","date": "2026-06-02T12:21:24.882Z","author_name": "Тамара Я.","photos_count": 2,"business_reply": "Тамара, добрый день! \nБлагодарим за такую подробную обратную связь! Обязательно поработаем над теми ошибками, что Вы указали в своем отзыве!\n","business_reply_date": "2026-06-08T23:04:13.977Z","sort_order": "relevance","position": 28,"input": "1018907821"}
A row found by a search, lowest rating first (29 Sep 2026, стоматология in Kazan, place fields trimmed)
{"place_id": "137241302033","place_name": "Стоматология Хаят смайл","place_address": "Республика Татарстан (Татарстан), Казань, улица Галактионова, 3","place_categories": ["Стоматологическая клиника", "детская стоматология"],"place_rating": 5,"place_review_count": 624,"rating": 1,"text": "Некомпетентная работа сотрудников!! То ли это администраторы, то ли сотрудники колл-центра, если он есть...","date": "2026-06-03T06:05:28.679Z","language": "ru","photos_count": 0,"photo_urls": [],"sort_order": "lowest","position": 1,"input": "search: стоматология (Стоматология Хаят смайл)"}
The reviewer's name is left out of this sample on purpose; the actor returns it.
The information row at the end of a run (1 Oct 2026, never charged)
{"_type": "info","delivered": 600,"message": "600 Yandex Maps reviews delivered. This row is informational: it is never billed.","schedule_tip": "Want this refreshed automatically? Apify Console -> this Actor -> Schedules -> Add schedule -> pick how often (e.g. daily) -> Save. It reruns with the same input on autopilot, no code required.","review_tip": "Found this useful? A quick Store review helps other buyers find it: https://apify.com/themineworks/yandex-maps-reviews-scraper-api?fpr=ymnoit&utm_source=apify-readme&utm_medium=referral#reviews","scraped_at": "2026-10-01T13:30:10.538Z"}
One place's entry in the OUTPUT summary (1 Oct 2026; this is the key-value record, not a dataset row)
{"input": "1018907821","place_id": "1018907821","status": "ok","stop_reason": "reached maxReviewsPerPlace (200)","place_name": "Кафе Пушкинъ","reviews_on_site": 6051,"orders_read": ["relevance"],"page_attempts": 1,"api_attempts": 3,"api_pages": 4,"reopens": 0,"delivered": 200,"duplicates_skipped": 0,"outside_date_window": 0,"last_error": null}
Pricing
Pay per event: you are charged for each review saved to your dataset, plus a flat fee once per run. The review price drops as your Apify plan goes up.
| Event | Free plan | Bronze (Starter) | Silver (Scale) | Gold and above (Business) |
|---|---|---|---|---|
review-scraped, per review | $0.00249 | $0.00219 | $0.00189 | $0.00149 |
| Per 1,000 reviews | $2.49 | $2.19 | $1.89 | $1.49 |
run-start, per run | $0.005 | $0.005 | $0.005 | $0.005 |
- Start fee: a flat $0.005 per run, charged once when the run starts, whatever memory you choose. It is our own
run-startevent, not Apify's per GB start charge, so a bigger memory setting does not raise it. - Never charged: places Yandex does not know, links robots.txt asks crawlers to leave alone, short links that cannot be resolved, reviews older than your date filter, the same review found twice (even when two sort orders return it), pages Yandex refused, and the information rows.
- Included at no extra cost: the place details on every row, the search, the date filter and the proxies are included. You pay nothing for platform compute on top of these prices.
- Spending cap: if you set a maximum cost per run in Apify, the actor stops adding reviews once that budget is used, so you never receive rows past your cap.
- No price change is scheduled. These prices have applied since 30 Sep 2026. The Pricing tab always shows the rate for your own plan; if this table and the Pricing tab ever disagree, the Pricing tab is right.
Worked examples on the Free plan: 100 reviews cost $0.249 plus $0.005, about $0.25; 1,000 reviews cost $2.495. On Gold, the same 1,000 reviews cost $1.495.
FAQ
What is Yandex Maps? Yandex Maps (Яндекс Карты) is the main map and local business directory in Russia, also widely used in Belarus and Kazakhstan. Its place pages carry star ratings and written reviews, often with photos and a public answer from the business.
How many reviews can I get per place? Up to 5,000 per place and 500 places per run. Yandex serves at most 600 reviews in any one sort order (12 pages of 50). When you ask for more and the place has more, the actor reads the other three orders and drops the overlap. A place with 600 reviews or fewer is read completely.
How fresh is the data?
Each run reads Yandex Maps live when it starts. There is no cache. date is the date Yandex shows on the review; if the author edited the review, it is the date of the edit.
Do I need a Yandex account, cookies or an API key? No. The actor reads the place page as an anonymous visitor, then asks for further pages of reviews the way the page itself does when you scroll, on the same visitor session. You only need an Apify account.
Do I need a proxy? No setting is needed. The actor goes through Apify datacenter proxies on its own, and the proxy cost is included in the price. On 1 Oct 2026 all 14 requests of our proof run were answered on the first attempt, with no captcha.
Can it search places by itself?
Yes, in the 14 cities of the city list. The search walks the map outward from the city center and adds up to 100 places, nearest the center first. For places elsewhere, or in a city not on the list, paste their links.
What happens with a wrong link, a closed place or a place without reviews?
The run carries on with the other places. Each place gets a status in the OUTPUT summary (not_found, no_reviews, none_in_date_window, robots_disallowed, blocked or duplicate) and nothing is charged for it. Lines that are not a Yandex place link or id are skipped with a warning in the log.
What if I give no places and no search? The run stops at once with an information row saying what to add. No review is charged, but the flat $0.005 start fee still applies, so check the input before scheduling it.
What if Yandex refuses pages? A place page is tried up to 3 times, each on a new session, and a place is reopened on a fresh session up to 2 times when its review calls keep failing. If Yandex refuses every page, the run ends with an information row saying so and nothing is charged for reviews. Reviews already delivered stay in your dataset. A run also stops cleanly before its timeout (one hour by default) and keeps everything delivered so far.
Can I run it on a schedule?
Yes. Save your input as a task, then add a schedule in Apify Console under Schedules, for example every Monday at 08:00. With reviewsStartDate set to 7 days, a weekly schedule gives you each week's new reviews. Each scheduled run is billed like a manual one; the schedule itself costs nothing.
Which formats can I export?
JSON, CSV, Excel, XML, RSS or HTML from the run's Storage tab, or through the Apify API. In CSV and Excel, list fields such as photo_urls are split into numbered columns (photo_urls/0, photo_urls/1 and so on).
Can I use it from Claude, ChatGPT or another AI assistant?
Yes. Connect Apify's MCP server at https://mcp.apify.com/?tools=themineworks/yandex-maps-reviews-scraper-api, or paste the block in "Copy to your AI assistant" above into your assistant.
Is it legal to scrape Yandex Maps reviews? The actor reads only public reviews that anyone can see without an account, keeps to what robots.txt allows (read fresh at the start of every run, and checked again on every redirect), and collects nothing about reviewers beyond the display name shown next to the review. Review text can still contain personal data. You are responsible for how you store and use it, including Yandex's terms and data protection law such as GDPR, CCPA and Russia's 152-FZ. This is general information, not legal advice.
Integrations
- Google Sheets: send each run's reviews to a sheet with Apify's Google Sheets integration.
- Make, Zapier and n8n: start a run and read the reviews with the official Apify modules and nodes, for example to post every new one star review to a team chat.
- Webhooks: have Apify call your URL when a run finishes, then fetch the dataset.
- API: start runs and read results over HTTP, or with the Python and JavaScript clients.
- MCP clients: Claude, ChatGPT, Cursor and other MCP clients can call the actor through
https://mcp.apify.com.
More from The Mine Works
Marketing, SEO and reviews
- Facebook Ad Library Scraper
- Similarweb Scraper
- Google Ads Transparency Scraper
- Google News Scraper
- Trustpilot Reviews Scraper
- Google Trends Scraper
- Semrush Scraper
- App Review Monitor
- Trustpilot Business Search
- TripAdvisor Reviews Scraper
- Username Checker
- Backlink Building Agent
Social media and video
Leads and business directories
Real estate
Science, health and government data
Jobs and hiring
E-commerce and marketplaces
Company and business data
Food and local services
Developer and AI tools
More tools
Support
Found a bug or need a field we do not return? Open an issue in the Issues tab. Want a review site or map we do not cover yet? Email dmineworks@gmail.com.
Yandex Maps Reviews Scraper turns any Yandex Maps place, or a search in 14 cities, into review rows with the place details attached, sorted and date filtered as you choose, from $1.49 per 1,000 reviews.

