Yandex Maps Scraper: Places & Reviews (privacy-safe) avatar

Yandex Maps Scraper: Places & Reviews (privacy-safe)

Pricing

from $1.50 / 1,000 places

Go to Apify Store
Yandex Maps Scraper: Places & Reviews (privacy-safe)

Yandex Maps Scraper: Places & Reviews (privacy-safe)

Unofficial Yandex Maps scraper, no login. Search places by query and city, coordinates or bounding box, or paste place URLs. Address, coordinates, phones, website, hours, rating, features and reviews with owner replies. No reviewer names, IDs or avatars.

Pricing

from $1.50 / 1,000 places

Rating

0.0

(0)

Developer

Kyungmin Lee

Kyungmin Lee

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

What does Yandex Maps Scraper: Places & Reviews do?

Yandex Maps Scraper: Places & Reviews collects public business listings and reviews from Yandex Maps (Яндекс Карты), the main map and local search service in Russia and much of the CIS, without a Yandex account, API key or browser. It is an unofficial tool and is not affiliated with, endorsed by or sponsored by Yandex.

In one run you can:

  • Search places by query — e.g. кофейня, стоматология, hotel — in a city (55 major cities built in, any other city looked up on Yandex Maps), around coordinates, or strictly inside a bounding box.
  • Look up specific places by Yandex Maps URL (yandex.ru/maps/org/…, yandex.com, yandex.com.tr, yandex.kz and other domains), share link (yandex.ru/maps/-/…) or numeric organisation ID.
  • Get the place data the business publishes: name, categories, address and postcode, coordinates, phones, website and social links, opening hours (text and structured), rating, rating and review counts, nearest metro, chain, verified-owner flag, "Good Place" award, price examples, amenities (features) and Yandex's review topic sentiment (reviewAspects: e.g. "Coffee — 381 mentions, 314 positive").
  • Collect reviews with star rating, text, publication date, likes and the business owner's reply — in relevance, newest, highest or lowest order, with star and date filters.
  • Choose the language of categories, addresses and hours: Russian, English, Turkish, Ukrainian, Kazakh or Uzbek.

Privacy by design: reviewer names, user IDs, avatars, profile links, "local expert" levels and photo author credits are never collected. When an owner's reply (or the review itself) contains the reviewer's own name, it is replaced with [name], and e-mail addresses and phone numbers in review texts and replies are masked. Most other Yandex Maps scrapers export reviewer identities; this one does not.

Why use this Yandex Maps scraper?

  • Lead generation and market research — list every clinic, café or car service in a city or a map rectangle, with phones, websites, hours and coordinates.
  • Reputation monitoring — schedule a run for your own locations with reviewSort: newest and reviewsSince, and get only the reviews published since the last run.
  • Competitor and review analytics — compare ratings, review counts and Yandex's positive/negative topic mentions, or feed review texts into dashboards and AI summaries.
  • Local SEO — track where a business ranks for a query (searchRank).
  • Safer data handling — no personal data about reviewers to store, secure or delete.

Places and reviews come from one Actor and one dataset, so you don't need to chain separate tools.

How to scrape Yandex Maps places and reviews

  1. Enter one or more Search queries and a City — or coordinates, or a bounding box. You can also (or instead) paste Place URLs or IDs.
  2. Set Max places per query (1–500).
  3. Set Max reviews per place (0 = no reviews, up to 600) and the Review order. Optionally add star filters or a "published on or after" date.
  4. Click Start and download the results as JSON, CSV, Excel or via the API.

The Actor reads the same public pages and page data the Yandex Maps website loads for an anonymous visitor. It does not log in and never solves captchas. It sends about one request every 1–2 seconds with random jitter, uses Apify Proxy (datacenter is enough), moves to a new proxy session every 25 requests and immediately when Yandex shows a block or captcha page, and benches that session. Anything that fails after retries is logged and never charged.

Speed: one search page returns 25 places (about 500 places in 1.5 minutes); one review request returns 50 reviews (600 reviews of one place in about 20 seconds).

Input

FieldDescription
searchQueriesQueries as typed into Yandex Maps. Russian terms are the most complete in Russia/CIS.
cityCity in English or Russian (Moscow, Санкт-Петербург, Almaty, Istanbul…) or a Yandex region path like 213/moscow. Unknown names are looked up on Yandex Maps.
maxPlacesPerQuery1–500 places per query (default 20).
placeUrlsOrganisation URLs, share links or numeric IDs.
latitude, longitude, zoomSearch around a point instead of a city.
boundingBoxlat,lon,lat,lon of two opposite corners; places outside are skipped and not charged.
maxReviewsPerPlace0–600 reviews per place (default 0).
reviewSortrelevance (Yandex default), newest, highest, lowest.
minReviewRating, maxReviewRatingKeep only reviews with these stars (1–5).
reviewsSinceKeep only reviews published on or after this date.
includeReviewPhotoUrlsAdd URLs of review photos (off by default).
languageru (default), en, tr, uk, kk, uz.
proxyConfigurationApify Proxy settings (on by default).

Example:

{
"searchQueries": ["стоматология", "кофейня"],
"city": "Kazan",
"maxPlacesPerQuery": 100,
"maxReviewsPerPlace": 20,
"reviewSort": "newest",
"language": "en"
}

Output

All results go to one dataset. Every item has a type:

  • place — one item per organisation, with the query and searchRank that found it, or the inputUrl you entered. A place found by several queries is saved and charged only once per run.
  • review — one item per review, linked to its place by placeId, placeName and placeUrl. Reviews follow their place item.

Use the Places and Reviews views in the Output tab, or filter on type. A SUMMARY record in the key-value store lists counts, failed inputs, skipped duplicates and request statistics.

Place example (shortened):

{
"type": "place", "query": "coffee", "searchRank": 1, "placeId": "69353267050",
"name": "Surf Coffee x Flow", "categories": ["Coffee shop"],
"address": "Strastnoy Boulevard, 8А", "locality": "Moscow", "postalCode": "107031",
"latitude": 55.766219, "longitude": 37.610433,
"rating": 4.9, "ratingCount": 1260, "reviewCount": 664,
"phones": ["+7 (993) 337-56-86"], "websites": ["https://surfcoffee.ru/"],
"workingHours": "Mon-Fri 8:00 AM–11:00 PM; Sat,Sun 10:00 AM–11:00 PM",
"openingHours": [{"day": "Mon", "hours": ["08:00-23:00"]}, {"day": "Sat", "hours": ["10:00-23:00"]}],
"nearestMetro": "Pushkinskaya", "nearestMetroDistanceM": 156, "chainName": "Surf Coffee",
"features": {"wi_fi": true, "coffee_to_go": true, "payment_method": ["cash", "payment by card", "QR code"]},
"reviewAspects": [{"aspect": "Coffee", "mentions": 381, "positive": 314, "neutral": 16, "negative": 51}],
"url": "https://yandex.com/maps/org/surf_coffee_x_flow/69353267050/"
}

Review example (shortened):

{
"type": "review", "placeId": "69353267050", "placeName": "Surf Coffee x Flow",
"reviewId": "a1B2c3D4e5F6g7H8i9J0kLmNoPqRsT-u", "rating": 5,
"text": "Очень вежливые бариста, напитки готовятся быстро…", "language": "ru",
"publishedAt": "2026-08-22T20:03:30.133Z", "likes": 1, "photoCount": 1,
"ownerReply": "[name], добрый день! Спасибо за такой подробный отзыв…",
"ownerReplyAt": "2026-08-27T12:43:05.577Z", "reviewSort": "relevance"
}

Data fields

Place: query, searchRank, placeId, name, shortName, url, categories, address, fullAddress, postalCode, country, locality, street, house, latitude, longitude, rating, ratingCount, reviewCount, phones, websites (tracking parameters removed), socialLinks, workingHours (as Yandex writes it), openingHours (Monday first, 24-hour HH:MM-HH:MM), isOpenNow and openStatusText (at scrape time), status (Yandex's business status, e.g. open), chainName, nearestMetro, nearestMetroDistanceM, hasVerifiedOwner, goodPlaceAward, isPromoted (paid priority placement), photoCount, priceExamples, features, reviewAspects, inputUrl, language, scrapedAt.

Review: placeId, placeName, placeUrl, reviewId, rating (1–5, null when the review has no stars), text, language (of the text), publishedAt (date published or last edited, UTC), likes, dislikes, photoCount, videoCount, ownerReply, ownerReplyAt, photoUrls (optional), reviewSort, scrapedAt.

Not collected: reviewer name, user or public ID, avatar, profile link, expert level, photo author credits.

Pricing

This Actor uses pay per event — you pay only for items that were saved:

EventProposed priceWhat it covers
place$1.50 per 1,000 places ($0.0015 each)One place item with all its fields
review$0.50 per 1,000 reviews ($0.0005 each)One review item

The prices shown on the Actor's Store page are the ones that apply. Failed searches, unknown places, blocked requests, duplicates, places outside your bounding box and reviews removed by your filters are never charged. The run's maximum charge is checked before every batch, so the Actor stops cleanly when your limit is reached.

Example: 500 cafés with 20 reviews each = 500 × $0.0015 + 10,000 × $0.0005 = $5.75.

Tips

  • More places: Yandex returns 25 places per page and widens the area on later pages. For dense, complete coverage, split a city into several bounding boxes or use narrower queries (кофейня, кофе с собой, кондитерская).
  • New reviews only: schedule the Actor with your place URLs, reviewSort: newest and reviewsSince set to the last run date. With "newest" the Actor stops reading as soon as it reaches older reviews; with other orders it has to read further to find them.
  • Complaints only: reviewSort: lowest with maxReviewRating: 2.
  • Language: Russian gives the most complete categories and addresses in Russia and the CIS; English and Turkish transliterate addresses. Business names and review texts are never translated. Use openingHours for clean 24-hour times.
  • Without a city, coordinates or bounding box, put the city into the query itself (кофейня Казань).

FAQ

Is this an official Yandex API? No. It is an unofficial scraper of publicly visible Yandex Maps data and is not affiliated with Yandex. Yandex can change its website at any time; the Actor is maintained, but results may briefly break after such changes.

Do I need a Yandex account or API key? No. Nothing is logged in and no cookies or tokens of yours are used.

Why at most 600 reviews per place? Yandex Maps itself shows only about the first 600 reviews of any organisation, in every sort order. Use different orders (newest, lowest, highest) to reach different reviews.

Why are reviewer names missing? On purpose. Review text is public, but this Actor does not collect who wrote it, so you can analyse feedback without handling reviewers' personal data. Please do not use the text to identify or contact reviewers.

Why does workingHours mix Russian with AM/PM? Yandex formats that text for the visitor's location. The structured openingHours field always uses 24-hour times.

Can I get all photos of a place? Not yet — the place's photoCount and optional review photo URLs are included. Open an issue if you need more.