Google Maps Rank Tracker: Geo-Grid Local SEO
See where a business ranks on Google Maps at every point of a grid around it (3x3 to 9x9) for up to 5 keywords: rank per point, top 3 competitors, average rank and share of local voice. Pay per grid point, no subscription.
Typical uses
- Local SEO agencies: monthly geo-grid reports for each client, at cost per point, scheduled and sent to a spreadsheet or a dashboard.
- Business owners: see the streets where you disappear from the map pack, and who takes your place there.
- Before / after: measure the effect of a Google Business Profile change, new reviews or a new category on the same grid.
- Competitor research: the competitor ranked first at the most points, with its rating and review count.
- AI agents (MCP): "how visible is this dentist in its neighbourhood?" answered with numbers.
Pricing
Pay per use, no subscription, no monthly fee. The price depends on your Apify plan. Apify's free plan includes $5 of usage every month.
| You pay per | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
| Grid point checked One grid point searched on Google Maps for one keyword: the business's rank there (or not ranked) and the top 3 places. Charged only when Google Maps returned places. The business lookup, the summary per keyword, a business not found, points with no place and unreadable answers are free. | $0.01 | $0.008 | $0.007 | $0.006 |
Run it from your code
Get an API token in the Apify Console (Settings → Integrations), then:
curl -X POST \
"https://api.apify.com/v2/acts/plainrows~google-maps-rank-tracker/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{
"business": "Monmouth Coffee Company, Borough, London",
"keywords": [
"coffee shop"
],
"gridSize": "5",
"country": "GB"
}'
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("plainrows/google-maps-rank-tracker").call(run_input={'business': 'Monmouth Coffee Company, Borough, London',
'keywords': ['coffee shop'],
'gridSize': '5',
'country': 'GB'})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row)
Use it in automations and AI agents
- n8n, Make, Zapier: use the official Apify integration and pick the Actor
plainrows/google-maps-rank-tracker. - Track a business's Google Maps rank on a geo-grid every week in Google Sheets (n8n workflow JSON)
- MCP (Claude, Cursor, other AI agents):
https://mcp.apify.com?tools=plainrows/google-maps-rank-tracker
Full documentation, input options and output fields: https://apify.com/plainrows/google-maps-rank-tracker