How to Scrape Competitor Reviews in 2 Minutes and Build Audience Research From Them · Trace Logo's
12 min read 11

How to Scrape Competitor Reviews in 2 Minutes and Build Audience Research From Them

The client says: "our advantage is quality and a personal approach." That turns into a headline half the market already uses, and the landing page underperforms. The source is what fails here: the advantages were written down from the client, while someone else pays for the product.

The wording that actually sells sits in the open, inside your competitors' reviews. There people describe in their own words what they feared before ordering, what they compared, why they left their previous supplier and what ended up mattering. A headline built from that phrasing lands, because the reader wrote it themselves.

The catch is volume. A review's value depends on how many different people repeat the same thought. One person complaining about deadlines is an anecdote. Forty out of eight hundred complaining about deadlines is 5% of the audience and a ready‑made hero section. Frequency can only be counted across the whole set, which is why audience research runs into a dull task: getting eight hundred reviews off someone else's page.

Why screenshotting reviews produces weak research

The usual process looks like this: a marketer opens a competitor's card on Yandex Maps, reads the first few screens, screenshots whatever stands out and drops the images into a folder. An hour later there are forty screenshots, and a dozen quotes make it into the client document.

Those dozen quotes then become the basis of the positioning. They were picked for how vivid the wording was, and nobody counted frequency, because there was nothing to count across: nobody read all eight hundred. So a pain mentioned three times goes into the hero section while the one appearing in every fifth review stays invisible.

The second loss is search. A screenshot can't be searched by word, and the most valuable parts of a review are found exactly that way — through trigger phrases: "I was afraid", "I thought that", "I used to buy", "I expected", "the only thing". Each of those marks an objection, a fear or a comparison with a previous supplier, which is the entire point of the exercise. A folder of images gives you none of it.

So the first step is turning reviews into text that Ctrl+F can work with. Copy‑paste is the obvious way, and that's where it gets frustrating.

Why a review list refuses to copy in full

Platforms render long lists with virtual scrolling. Only the cards currently on screen live in the page markup, plus a small buffer above and below; everything scrolled past is removed from the document. The browser copies that markup, so "select all" grabs two dozen cards — the rest physically aren't on the page at that moment.

The second limit is collapsed text. A long review is clipped at the "More" button, and the clipboard gets exactly what's visible. Until that button is clicked, the full text isn't in the markup. That hurts twice over: long reviews are the useful ones, where a person lays out the whole selection story, while short five‑star notes are useless for research.

The third problem appears during manual scrolling: cards get re‑rendered, so a single review easily lands in the document twice. At eight hundred rows duplicates surface when you start counting and "unhappy about deadlines" turns out to be 60 instead of 43, taking the whole 5% conclusion down with it.

Official routes don't close the task either. The Yandex Business dashboard shows your organization and stays silent about the one next door, while the neighbours are precisely who you care about. Avito has an API with a "Ratings and reviews" section, but keys are issued for your own seller account and another seller stays out of reach. A homegrown Python scraper survives until the platform's next redesign, turning a one‑off job into a side project with proxies and captchas.

Meanwhile the browser has already drawn every review you need on your screen. Taking them from there makes sense.

How to scrape a competitor's reviews in two minutes

The extension works inside the open tab: it scrolls the list for you, expands collapsed texts, drops duplicates and saves the result to a file. No API keys, no proxies, no developer.

Reviews Exporter is a Chrome extension that does this on three platforms: an organization's reviews on Yandex Maps, a seller's reviews on Avito and the comments on a channel post in Telegram Web. A "Collect reviews" button appears next to the list, the page scrolls itself, and at the end you press "Download file".

A minute to install
  1. Download the archive from the extension page and unpack it into a permanent folder.
  2. Open chrome://extensions in Chrome and turn on "Developer mode" in the top right corner.
  3. Click "Load unpacked" and pick the unpacked folder.
  4. Open a competitor's card on Yandex Maps, a seller's reviews page on Avito or a post's discussion thread in Telegram Web, then press the collect button.

The output is one Markdown file: a header with the numbers, then every review in order, numbered, with its date and score.

code
# Отзывы

- **Организация:** Мебель на заказ «Пример»
- **Собрано отзывов:** 812
- **Средний рейтинг:** 4.62/5

### Распределение по оценкам

- 5★: 640
- 4★: 92
- 3★: 38
- 2★: 17
- 1★: 25

---

## 1. Мария

- **Дата:** 12 июня 2026
- **Оценка:** 5/5
- **Реакции:** 👍 3

Долго выбирала между тремя мастерскими, боялась, что кухню привезут без…

The header answers "where do I start reading". One- and two‑star reviews carry the longest texts: a satisfied customer writes "thanks, all great", while someone who was let down lays out the entire story — the comparison, the expectations, the list of what mattered to them. In the example above that's 42 reviews out of 812, and they yield more raw material for offers than the six hundred five‑star ones.

From there the file opens in any editor, ideally in two windows: the text in one, the client document in the other.

What to look for: seven categories and their trigger phrases

People don't state their needs in ready‑made formulas, so scanning goes by markers. Each category below has its own characteristic words, and the file gets combed by them.

Praise for the product. The feature or result people pay for: "the fronts still look new after two years", "fitted perfectly, no gaps". This is where concrete promises come from instead of "quality".

Praise for the service. How the customer was treated: response speed, a rescheduled delivery, a weekend site visit. Look for "delivered", "answered", "called back". Material for the how‑we‑work block.

Complaints. Your competitor's pain and your headline. The markers are plain: "deadlines", "had to wait", "they redid it". Each frequent complaint unfolds into a statement about you: "deadline in the contract, with a penalty for every day of delay".

Objections. What stopped people from deciding. Look for "I thought that", "I doubted", "it seemed like". Every objection found is a line in the site's FAQ.

Fears. Rooted in past experience: "I was afraid that", "the previous ones", "we got burned before". Answered with a guarantee, a photo report or a case from practice.

Decision criteria. What people compared before buying: "I chose between", "unlike", "the others had". A ready‑made structure for a comparison block and a hint about which parameters are worth listing at all.

The previous supplier. Why they left a competitor and why they came: "we used to order", "we switched from", "before that we bought". The most valuable material for positioning, because the customer names the difference themselves.

The mechanics are simple: search by one category's markers, move the quotes you find into the document, count how many times each thought appears. This is where the file pays for itself — searching eight hundred reviews takes minutes, while reading them by hand takes two evenings.

How quotes become headlines and blocks

Raw quotes don't sell to the client on their own, so interpretation comes next, and it follows one rule: a frequent complaint about a competitor becomes an affirmative promise, a frequent objection becomes a question with an answer, a frequent decision criterion becomes a comparison parameter.

In practice it looks like this. A furniture maker's file has 47 reviews mentioning deadlines, 31 of which complain about a pushed date. So the hero section gets "A kitchen in 30 working days. The date is in the contract, with 1% off the price for every day of delay" instead of "quality custom furniture". The promise is specific, backed by a process, and it closes a pain you measured.

Then 19 reviews containing "was afraid" produce the guarantees block: people feared the measurements wouldn't match the alcove. The answer is a free site visit and a signed drawing before production starts. Another 24 reviews with "chose between" show that people compare front materials and warranty length, so those two parameters belong in the comparison table, even when the client would rather talk about others.

Collect every competitor you can reach instead of one: ten to fifteen cards in a niche is a couple of hours of work and several thousand reviews at the input. Volume changes the picture qualitatively. A complaint repeating across all fifteen marks an industry‑wide pain, and the hero section closes it. A complaint the neighbours get and your client doesn't goes into the positioning block. Praise the neighbours receive and your client never mentions becomes a question for the next call: "do you do this too?" — and usually they do, they just never told anyone.

When the reviews run out: where else the wording lives

Maps and review sites cover consumer demand, though plenty of niches come up empty there. Then the source becomes comments in Telegram: under a competitor's post or an industry channel, people argue, ask questions and share experience in the same categories as reviews, only more freely. The extension collects the whole discussion thread along with the post text, date, views and reactions in the header, and marks attachments in comments as separate lines.

For B2B this is often the only available source: an equipment supplier won't have eight hundred reviews on Maps, yet a post in a professional channel will have thirty comments full of concrete objections from procurement. People write there exactly what they'd write in a review.

A ready‑made prompt: fifteen files in, a report out

Fifteen files of a thousand reviews each are unreadable by hand, full stop. A language model helps here, with one caveat: it counts and groups well, and interprets poorly.

Upload every collected file at once to Claude — it carries fifteen of them in one conversation without losing them halfway through. ChatGPT handles it too, it just drifts into summarizing instead of counting more often on long files. The prompt is worth taking whole:

code
Изучи и проанализируй все отзывы из файлов

Дай мне:

1. Самые частотные комментарии — топ 5-10 фраз, которые встречаются чаще всего — укажи какое количество раз они встречались

2. Список того, на что люди чаще жалуются — топ 10-15 пунктов

3. Список того, за что люди благодарят и чем довольны — топ 10-15 пунктов

4. Напиши, что ещё полезного увидел в отзывах — инсайты

Every item there earns its place. The first delivers the frequency the whole collection was for: the model counts repetitions and names a number, and that number takes a second to verify by searching the file. The second and third split those repetitions into pains and praise, which is to say into headlines and the how‑we‑work block. The fourth catches whatever fell outside the seven categories, and that's usually where an unexpected argument for the client comes from.

Demanding the count is the key part. Without it the model answers in generalities like "many customers mention slow delivery", and you land right back in the situation that makes screenshots useless.

Draw the conclusions about offers yourself. A model proposes averaged phrasing that reads smoothly and sells worse than a live customer sentence. For the same reason, don't hand it the headlines: the whole power of this method is speaking in your audience's words, and readers spot AI‑generated text faster than you'd expect.

The limits

Reviews are published openly, and collecting them for analysis is fine. But the file carries author names, so it stays inside the team instead of travelling to shared chats, and it never becomes a mailing list of review authors. Anonymize quotes before they go into a client presentation.

Where to start today

Take the project you're working on right now. Find ten to fifteen competitors on Yandex Maps or Avito, collect a file from each card and read the one- and two‑star reviews first. That step alone surfaces a dozen phrasings that appear on no site in the niche.

Then run the files through the seven categories, count the frequencies and move everything appearing more than five times into the client document. That document also sells your work: the client sees numbers and quotes instead of "we analysed the target audience".

Install the extension and collect your first file today — a card takes a couple of minutes, while gathering the arguments for a hero section usually takes a week.

Logo and emoji library Download SVG/PNG free and export to Figma
Open catalog