Local Rank and Map Pack Tracker
Last updated October 22, 2026
Track where a business ranks on Google for each keyword and location: organic position, map pack position, and local finder position (top 20), searched from the location itself. Rating, reviews, top competitors, and change since the last run. No API key.
Install
npx @mambalabsdev/mcp-local-rank-map-pack-trackerEvery tool here also runs hosted, with no install at all, through Apify's MCP endpoint.
Features
- Track where a business ranks on Google for each keyword and location: organic position, map pack position, and local finder position (top 20), searched from the location itself.
- Rating, reviews, top competitors, and change since the last run.
- No API key.
- Pay per event: Rank check at $0.055.
- Pay per event: Extra Google page at $0.018.
Input
keywordsarrayrequiredKeywords. Search terms to check, one per line, for example plumber or emergency plumber. Up to 500 keyword and location pairs per run.
locationsarrayrequiredLocations. Where the search is made from, one per line: a place name such as Austin, Texas, United States, or coordinates such as 30.2672,-97.7431. Each place name is looked up once on OpenStreetMap.
target_domainstringoptionalYour domain. The website to find in the organic results and on the map listings, for example weplumbatx.com. Subdomains count as a match.
business_namestringoptionalBusiness name. The name on your Google Business Profile, for example We Plumb LLC. Used to find you on the map when your listing shows no website or a different one.
countrystringoptionalCountry. Two letter country code for the Google market and the proxy exit, for example US, GB, CA, AU, DE.
languagestringoptionalLanguage. Interface language for Google, for example en, de, fr.
organic_depthintegeroptionalOrganic positions to check. How deep to look for your domain in the organic results: 10, 20, 30, or 50. Each 10 is one Google page; the run stops paging once your domain is found.
include_local_finderbooleanoptionalCheck the local finder. When your business is not in the 3 result map pack, open the local finder (the full map list, top 20) to find its position there.
state_keystringoptionalSchedule name (for change tracking). Give a name to keep positions between runs. Each row then carries the previous positions and the change. Use one name per schedule.
max_charge_usdstringoptionalMax charge per run (USD). The run stops before a rank check would take the total charge past this amount.
Output schema
{
"input_key": "string",
"keyword": "string",
"location": "string",
"location_resolved": "string",
"latitude": "number",
"longitude": "number",
"country": "string",
"language": "string",
"target_domain": "string",
"business_name": "string",
"organic_position": "null",
"organic_url": "null",
"organic_title": "null",
"organic_depth_checked": "integer",
"organic_results_found": "integer",
"local_pack_present": "boolean",
"local_pack_position": "integer",
"local_finder_position": "integer",
"local_finder_checked": "integer",
"local_match_method": "string",
"local_business_name": "string",
"local_website": "string",
"local_rating": "number",
"local_review_count": "integer",
"local_category": "string",
"local_phone": "string",
"local_address": "null",
"top_organic_domains": "array",
"top_local_businesses": "array",
"previous_organic_position": "null",
"previous_local_position": "null",
"organic_change": "null",
"local_change": "null",
"previous_checked_at": "null",
"serp_requests": "integer",
"google_pages": "integer",
"row_status": "string",
"error_reason": "null",
"billable_events_json": "string",
"checked_at": "string"
}Pricing
Pay-per-event billing on the Apify platform. You are charged only when the actor returns a result. No subscription, no seat license.
Free-tier Apify accounts include monthly free compute. Upgrade for higher concurrency and volume.