How I track competitors on Google Maps with Outscraper

Outscraper as the Google truth layer for a national shop directory: places snapshots, one-time review texts, Directory Insights screens, first-run vs weekly cost, disclosed referral.
Directory Insights scoreboard — tracked Google shops in Mexico
Open source · MIT
Agentic Company
Agents crawl, summarize, draft assets, and prepare publish/sync. You approve anything public, paid, or irreversible.
View on GitHub →

I used to do competitor research the way everyone does it: open Google Maps, type a city, scroll, open ten listings, lose the tab, start over in the next city. That is not research. That is a walk.

What I wanted was a directory I could keep — every mobility shop we care about in México, their Google rating, how fast reviews are arriving, which chains are opening branches, and what customers actually complain about. Then one screen that turns that into where the market is, not a pile of CSVs.

The data source is Outscraper (that link is a referral — I earn a bonus if you sign up through it). The screen is what I call Directory Insights. This post is the plain version of how we wired it, what the first pull cost, and what it costs to keep it fresh.

The same pattern — agents crawl, you approve anything paid or public — is in the open Agentic Company playbook. First post in this series: Agentic Company — turning a wish into a scheduled job.

The wish (say this once)

Pull Google Maps places and reviews for the shops we track. Snapshot ratings and review counts on a cadence. Do not download every review text every week. Show me growth, geography, chains, and themes. Ask before spending on a new text crawl.

That sentence is the product.

What Outscraper actually is

Outscraper is a pay-as-you-go Google Maps API. You send a search (a shop name + city, or a category + metro). You get back structured place data: name, address, rating, review count, Google place id.

A place lookup is cheap. A review-text lookup is where the bill lives.

Public pricing (as of this writing, on Outscraper’s pricing page):

  • First 500 places and 500 reviews per month are free.
  • After that, $3 per 1,000 records until you pass 100,000 in the month.
  • After 100,000, $1 per 1,000.

We did not buy email or phone enrichment. For competitor tracking you need ratings, counts, and (once) review texts. Contact scraping is a different job and it stacks extra dollars.

How we use it

1. Build the list. We already had a directory of México mobility / ortopedia shops from public registries and websites. Outscraper is not the first source — it is the Google truth layer on top.

2. Places-only refresh. For each tracked shop we ask Maps: current stars and current review count. We save a snapshot. Two snapshots = you can see who is growing.

3. Review texts (once, then deltas). We pulled the actual review wording once, so we can chart themes (service, product, price, delivery). We do not re-download the whole library every Sunday. New texts only when I confirm, newest-first, stop when we hit a review we already have.

4. Directory Insights. That data lands on one operator page: counts, implied category volume, a México map, growth bars, chains, metros, and theme charts.

The expensive step is #3. Treat it like buying a library, not like running a weekly report.

What Directory Insights looks like

These are real screenshots from the Insights screen. The dollar figures in the volume model are implied category estimates from public Google listings (you can change ticket size and review rate on the page). They are not our company sales.

Directory Insights KPI cards: tracked shops, Google reviews, chains, sites with brands
The scoreboard: 1,346 tracked shops, 45,902 Google reviews on those listings, 128 chains. Directory Insights, built on Outscraper place data.
Directory Insights quality cards: relevant sites, flagged irrelevant, fetch failures
Not every Google hit is a competitor. We flag off-niche sites (mattress shops, for example) and count pages that failed to fetch.
Estimated market volume by Mexican metro from Google review velocity
Implied category volume from review velocity. Default knobs: $2,000 MXN average ticket and a 10% Google-review rate. Change the knobs; the ranking of metros is the useful part. This is a model, not an audit.
Bar chart of shops with the largest increase in Google reviews
Who is growing: change in Google review count between snapshots. One listing adding hundreds of reviews while peers add dozens is a signal — go look.
Map of Mexico with bubbles for tracked shops sized by Google review count
Each bubble is a tracked Google listing. Size and color follow review count. You see the obvious metros, and you see the empty states.
Chart of review themes: service, product, assortment, price, delivery, facilities
What customers talk about, from crawled review texts. Service / atención dwarfs everything. Delivery is the only theme where likes and dislikes sit closer together. No customer names in this view.
Bar chart of multi-location brands ranked by number of locations
Chains vs independents: multi-location brands ranked by branches we detected. Useful when a “competitor” is actually a 40-door chain.
Bar chart of tracked shops by metro area, Mexico City first
Where the shops sit. Mexico City metro first, then a large “unlocated” bucket, then Guadalajara, Veracruz, Monterrey.

What the first pull cost

We logged this as estimated API spend (Outscraper’s $3 / 1,000 rate × records). Day one was 19 July 2026.

What we pulled Rough $
Places-only snapshot for ~1,200 tracked México shops (rating + review count, no texts) ~$2.10
Full Google review texts for the tracked set (~17,700 reviews) ~$53
Small extras (chain lookups, a retry) ~$3–$6
Day-one total about $61

The library of review texts is the line item. The snapshot that lets you watch growth is pocket change.

A later discovery pass (grid-searching metros for shops we did not already have) added on the order of ~$25 across Maps queries. That is optional coverage, not the weekly job.

What it costs to keep it updated

This is the part I wish someone had written down for me.

Weekly (designed job): places-only refresh — stars and review counts. At ~1,000–1,300 shops and $3 / 1,000 places, plan about $2–$3 per week. You get growth deltas. You do not pay for texts you already stored.

Review texts after that: $0 until you approve a crawl. Then $3 per 1,000 new reviews. If fifty shops each picked up twenty new reviews, that is ~1,000 texts → about $3. If you re-download the whole ~18,000-review library every month, you will recreate the $53 bill for no reason.

Monthly freebie: Outscraper’s first 500 places and 500 reviews. Fine for a test city. Not enough for a national directory.

Do not do: enrich emails and phones “while you’re there.” That is a different product and a different invoice.

Hard gate we use: the weekly email estimates the $ to fetch new texts and waits. No silent paid crawl.

How you can copy this

  1. Create an Outscraper account. If this write-up saved you an afternoon, use the referral link: outscraper.com/refer… — I get a bonus; you get the same product.
  2. Start with one metro and places-only. Confirm the rows look like real shops.
  3. Save snapshots (date, rating, review_count, place_id). Growth needs two dates.
  4. Pull review texts once. Store each review id so the next run can stop early.
  5. Chart what you actually decide with: top growing shops, metros, a couple of themes. A 40-column export is not a strategy.
  6. Put a dollar cap on any job that calls the Reviews API.

Official pricing: outscraper.com/pricing.

Why this belongs in this series

The job is boring on purpose. Maps does not care about your strategy deck. An agent can refresh places every Sunday, draft a “who grew” memo, and stop. You decide whether a $3 text crawl is worth it this week.

That is the same pattern as the first post: wish → recipe → scheduled job → human OK. The recipes live in Agentic Company on GitHub.

Closing

Competitor tracking on Google is not a mystery. It is a places API, a reviews API, and the discipline to not re-buy the library every week.

First bill: about $61 (almost all review texts). Keep-alive: about $2–$3 a week for counts, plus a few dollars when you choose to fetch new wording.

If you want to try Outscraper, here is my referral link again: Sign up via Outscraper.

Open source · MIT
Agentic Company
Agents crawl, summarize, draft assets, and prepare publish/sync. You approve anything public, paid, or irreversible.
View on GitHub →
Facebook
Twitter
LinkedIn
Pinterest

Posts