Google Maps Monitor — Only What Changed Since Your Last Run avatar

Google Maps Monitor — Only What Changed Since Your Last Run

Pricing

from $30.00 / 1,000 change detecteds

Go to Apify Store
Google Maps Monitor — Only What Changed Since Your Last Run

Google Maps Monitor — Only What Changed Since Your Last Run

Watch a Google Maps territory and get back only what is new or changed — rating moves, review growth, new businesses, renames, relocations, hours and contact changes — with the previous values attached. Unchanged businesses are re-checked free and never billed.

Pricing

from $30.00 / 1,000 change detecteds

Rating

0.0

(0)

Developer

Tomas Lebedinskas

Tomas Lebedinskas

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Most Google Maps scrapers hand you the same 500 businesses every time you run them, and charge you for all 500. You then diff them yourself to find the six that actually moved.

This one remembers. Point it at a territory, run it whenever you like, and it returns only what is new or changed — with the previous values attached, so you can see the move. Businesses that did not change deliver nothing and cost $0.20 per 1,000 to re-check, against $1.50–$4.00 per 1,000 to scrape them again from scratch.

Maintained by Godberry Studios. Questions, a field you need, or something behaving oddly? Email hello@godberrystudios.com — the developer replies, usually within one business day.


What it does

  1. Scans the Google Maps searches you give it — "restaurants in Berlin", "dentists, Austin TX".
  2. Compares what it finds against what it showed you last time.
  3. Returns only the differences, and bills only for those.

First run is a baseline. Everything is new the first time, so it prices like an ordinary leads scrape. From the second run on, you are paying for signal instead of volume.

What counts as a change

FieldWhy you care
ratingReputation moving up or down
reviewCountMomentum — who is suddenly getting reviewed
nameRebrand, or a franchise changing hands
categoryA business repositioning itself
addressRelocation
hoursReduced hours often precede a closure
phone, websiteContact details appearing or changing

Each returned row carries changeType (new or changed), changedFields, previousValues, and lastSeenAt.

What is deliberately NOT a change: a field that merely goes missing. Google renders sparser result cards at random, and treating a vanished phone number as a change would manufacture fake changes every run — and bill you for them. Only a move to a known value counts.

Pricing

Every business in a run lands in exactly one of three buckets, so nothing is ever billed twice:

EventPriceWhen
Business re-checked$0.0002We looked, it was identical. Nothing is delivered — you are covering the sweep
Business added$0.002A business enters your watchlist — every business on the baseline run, plus genuinely new ones later
Change detected$0.03A business you already watch actually changed

Duplicates across overlapping searches are collapsed and charged once.

A typical week — 500 businesses watched, 10 of them changed — costs about $0.40. Re-scraping those same 500 places with a conventional Maps Actor is $0.75–$2.00, and you still have to diff them yourself to find the 10 that moved.

A quiet week — 500 watched, nothing changed — costs $0.10. You are paying two-tenths of a cent per business to know that nothing moved.

Why re-checks are not free

An earlier draft of this Actor billed only for changes. It was a nicer sentence and a broken business: checking 500 businesses costs real compute whether or not any of them moved, so a perfectly quiet run — the product doing its job — would have run at a loss, and the price per change needed to cover it depended on your churn rate rather than on anything we control.

$0.0002 is roughly what the sweep actually costs. It is priced to be honest, not to make money on the businesses that stayed put.

The cost cap is in dollars, not rows

maxCostUsd is a hard ceiling on what a single run can charge you. Most Actors cap the number of results, which does nothing to protect you when a territory changes more than expected.

Anything held back by the cap is not recorded as seen, so the next run offers it again. Nothing is silently dropped.

The sweep is reserved against the cap first, since by the time results are counted the scanning has already happened. If your cap is too small to even cover re-checking the territory, the run says so and tells you what it would take.

Keeping a monitor stable

The Actor compares each run to the previous one, so consistency matters:

  • Keep monitorId the same between runs. It names the watchlist and its memory. Use one per territory — berlin-restaurants, lisbon-cafes — and they stay independent. Changing it starts a fresh baseline.
  • Keep the searches the same. Changing them changes what is being watched.
  • Keep language and countryCode the same. Switching language changes how names and hours are written, which reads as a change.

Input

{
"searchQueries": ["restaurants in Berlin"],
"monitorId": "berlin-restaurants",
"maxCostUsd": "5.00",
"maxResultsPerSearch": 50,
"language": "en",
"countryCode": "de",
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Good uses

  • Territory watch for local-services sales — new businesses opening in your patch, weekly, without re-reading the whole list.
  • Reputation tracking across competitors — rating and review-count moves for a set of rivals.
  • Franchise and multi-location monitoring — catch a renamed, relocated or quietly-closing location.
  • Lead-list hygiene — keep an existing CRM list current instead of re-importing thousands of unchanged rows.

Honest limits

  • Google caps a single Maps search at roughly 120 results. Narrow by city or neighbourhood for fuller coverage of dense categories.
  • Change detection is only as good as what Google shows on the result card. If Google stops displaying a field, we cannot see it move.
  • The first run has nothing to compare against, so everything is new. That is expected, and it is priced as a normal scrape rather than as changes.
  • Defaults to Apify's datacenter proxy, which is included on paid plans. We tested it on 5 of 5 territories (Berlin, Austin, Manchester, Rome, Sydney) and it returned results identical to residential at about a fifth of the cost. If a territory does start getting blocked, switch Residential on in the proxy input — it is billed per GB.
  • phone is read from the result card, which is where Google puts it — bundled into the same line as the opening hours. We split them apart, so a card that renders without the phone does not masquerade as an hours change. website is not on the search card at all, so it is watched but will never fire in this mode.