Local Rank and Map Pack Tracker

v1.0.0$0.055/rank checkSignal Detection

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

bash
npx @mambalabsdev/mcp-local-rank-map-pack-tracker

Every 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

keywordsarrayrequired

Keywords. Search terms to check, one per line, for example plumber or emergency plumber. Up to 500 keyword and location pairs per run.

locationsarrayrequired

Locations. 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_domainstringoptional

Your domain. The website to find in the organic results and on the map listings, for example weplumbatx.com. Subdomains count as a match.

business_namestringoptional

Business 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.

countrystringoptional

Country. Two letter country code for the Google market and the proxy exit, for example US, GB, CA, AU, DE.

languagestringoptional

Language. Interface language for Google, for example en, de, fr.

organic_depthintegeroptional

Organic 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_finderbooleanoptional

Check 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_keystringoptional

Schedule 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_usdstringoptional

Max charge per run (USD). The run stops before a rank check would take the total charge past this amount.

Output schema

json
{
  "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

$0.055per rank check

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.