Apple Maps Scraper - Places, Phones, Hours, Ratings & Photos avatar

Apple Maps Scraper - Places, Phones, Hours, Ratings & Photos

Pricing

from $3.10 / 1,000 places

Go to Apify Store
Apple Maps Scraper - Places, Phones, Hours, Ratings & Photos

Apple Maps Scraper - Places, Phones, Hours, Ratings & Photos

Scrape Apple Maps places by search term and area or by link: phone, website, address, coordinates, category, rating, hours, amenities, photos, reviews. Covers whole cities past the 25-place limit; guides, website emails, monitor mode. $3.10 per 1,000 places, no start fee, no Apple account.

Pricing

from $3.10 / 1,000 places

Rating

0.0

(0)

Developer

Top Api

Top Api

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Share

What does Apple Maps Scraper do?

Apple Maps Scraper extracts business and place data from Apple Maps and turns a search term plus an area, or a list of Apple Maps links, into one structured row per place: name, phone, website, full address, coordinates, category, rating, opening hours, amenities, photos and review snippets. Built for lead-generation teams, local-SEO agencies and market researchers who need Apple Maps listings without copying them by hand.

Apple Maps scraper Β· Apple Maps API alternative Β· Apple Maps business extractor Β· Apple Maps leads

Apple Maps search results for dentists in Austin that Apple Maps Scraper turns into rows

  • Full place record: phone (plus other phones and fax), website, structured address, coordinates, category tree, rating with its source and scale, weekly hours, amenities, photos, review snippets, Apple Maps link.
  • Whole areas, not just one result list: Apple shows 25-55 places per search; when you ask for more, the area is split and searched again until your limit is reached.
  • Search or paste links: terms + a city, address, coordinates or bounding box, or Apple Maps place, search and guide links.
  • Lead flags: unclaimed listing, no website, missing fields and a completeness score on every row, plus optional emails and social profiles from the place's website.
  • No Apple account, cookies or MapKit token: you give a search or a link, nothing else.
  • Monitor mode: run on a schedule and get only places that are new or changed since the last run.
  • Export anywhere: JSON, CSV, Excel, XML; schedules, webhooks, Make, Zapier, n8n, Google Sheets, the Apify API and MCP.

What data can you get from Apple Maps?

🏷️ Name and local-language name☎️ Phone, formatted phone, other phones, fax🌐 Website and website type
πŸ“ Full address, street, city, state, postcode, country🧭 Latitude, longitude, time zoneπŸ—‚οΈ Category, category list and Apple category path
⭐ Rating with source and scale (`rating`), 0-5 value (`ratingOutOf5`)πŸ’¬ Review count and up to 3 review snippetsπŸ’² Price level
πŸ•’ Weekly hours, open now, service hoursβ™Ώ Amenities (Apple Pay, wheelchair access, Wi-Fi…)πŸ“· Photos with caption, author and source
πŸ”— Quick links (order, book, menu)🏒 Claim link and unclaimed flagπŸ“° Editorial notes, awards, guides it appears in
⚑ EV charger connectors and powerπŸš‰ Transit lines, departures and service alertsπŸ₯Ύ Trails at a trailhead with their length
πŸ“§ Emails and social profiles (optional add-on)🚩 Lead tags and listing completeness scoreπŸ”Ž Search term, area and rank that found the place

On two 25-place test runs (dentists in Austin) every row had a phone, a website, a rating, review snippets and opening hours, 96% had amenities and photos, and 64-72% were listings the business has not claimed on Apple Business Connect.

How to scrape Apple Maps with Apple Maps Scraper

  1. Create a free Apify account β€” $5 of monthly credit, no card needed.
  2. Open Apple Maps Scraper and click Try for free.
  3. Type what you are looking for into Search terms (e.g. dentists) and where into Location (e.g. Austin, TX), or paste Apple Maps links.
  4. Set Max places per search and click Start. Places stream into the dataset as they are found.
  5. Open the Storage tab and Export as JSON, CSV or Excel, or let a schedule run it for you.

⬇️ Input

ParameterTypeDescription
πŸ” What to scrape
searchQueriesListWhat to look for, e.g. dentists, coffee shop, EV charging station. A term can carry its own place (dentists austin tx). API callers may also pass {"query": "…", "location": "…", "maxResults": 30} objects.
location / locationsText / ListCity, neighborhood, postcode, address, state or country, e.g. Austin, TX, Shibuya, Tokyo, 78701.
latitude, longitude, radiusKmNumberSearch around an exact point; radius default 5 km.
boundingBoxJSONAn exact area: {"northLat": 30.37, "eastLng": -97.64, "southLat": 30.17, "westLng": -97.84}.
startUrls, placeUrls, searchUrls, guideUrlsListApple Maps place links (?place-id=I…, ?auid=…), bare place ids, search links (/search?query=…&center=…&span=…), guide links (/guides?curated=…), address links and maps.apple short links.
🎯 Filters (applied by Apple Maps)
countryCodeTextCountry Apple ranks for. Default US.
languageTextNames, categories and addresses in this language. Default en-US.
sortBySelectrelevance (default), distance or rating.
openNowBooleanOnly places open at run time, in their own time zone.
togglesListApple's own filter bar, e.g. ACCEPTS_APPLE_PAY, WHEELCHAIR_ACCESSIBLE.
βœ‚οΈ Refine results
minRatingSelect3, 3.5, 4 or 4.5 stars (Apple's 0-100 scores are converted).
hasPhone, hasWebsite, hasEmailBooleanKeep only places with a phone, a website or an email.
skipClosedPlaces, categoryFilterWords, openAtBoolean / List / TextLeave out closed places, keep only some categories, keep places open at a given time.
βž• Extra data
includeNearbyPlacesBooleanAlso collect the matching places Apple shows as dots around each search.
includeGuidesBooleanAlso return the Apple Maps guides each search shows β€” guide event.
maxPhotosIntegerPhotos per place. Default 5.
enrichContacts, maxWebsitePagesBoolean / IntegerRead each place's website for emails and social profiles β€” contact-details event.
πŸ” Monitoring
monitorMode, monitorChanges, monitorStoreNameBoolean / TextOnly places not delivered before, plus changed ones with their previous rating, review count, hours, phone and website and the list of what changed.
πŸ“¦ Output
maxResultsIntegerPlaces per search term per area. Default 50; 0 = everything the area gives.
maxItems, maxRunSeconds, compactInteger / BooleanTotal cap, time limit, core fields only for AI agents.
πŸ—ΊοΈ Area coverage
adaptiveGrid, cellSizeMeters, minCellSizeMeters, saturationThreshold, maxGridDepth, maxCellsHow a big area is split once Apple's answer is full.
queryExpansionsJSONExtra spellings searched with a term, e.g. {"cafe": ["coffee shop"]}; places are de-duplicated across variants.
βš™οΈ Advanced
proxyConfiguration, maxConcurrencyDirect requests by default; the run moves to the Apify proxy if Apple refuses or answers very slowly, then to RESIDENTIAL if the proxy keeps failing.

Input JSON

{
"searchQueries": ["dentists", "orthodontist"],
"location": "Austin, TX",
"maxResults": 200,
"hasPhone": true,
"minRating": "4"
}

Put only the business type in the search term

Do: searchQueries: ["coffee shop"] with location: "Brooklyn, NY". Don't: a one-word term in another language on its own β€” Apple Maps sometimes reads it as a place name (on a test, ramen with a Japanese locale matched a village called Ramen). Use the term buyers would type in that country (ラーパン) or add a category word; places Apple returns far outside your area are dropped and never charged.

Ask for more than 55 when you want the whole area

One Apple Maps answer holds 25 places for a neighborhood-sized view and 55 for a city-sized one. Set maxResults higher (or 0) and Apple Maps Scraper keeps splitting the area into quarters while the answers are full. Split by city or neighborhood with locations when you want the rows grouped by area.

⬆️ Output

Every place becomes one dataset item. Here is the table view of a run for dentists in Austin, TX:

Apple Maps Scraper output table with Apple Maps places

The first row of that run, shortened:

{
"placeId": "17417784224305572481",
"placeIdHex": "IF1B86677F822EA81",
"name": "Forest Family Dentistry - Burnet",
"displayCategory": "General Dentist",
"categories": ["General Dentist", "Dentistry", "Dental Clinic", "Dentist", "Orthodontist", "Cosmetic Dentist"],
"phone": "+15128989036",
"phoneFormatted": "+1 (512) 898-9036",
"website": "https://www.forestfamily.com/locations/burnet",
"address": { "full": "5531 Burnet Rd, Austin, TX 78756, United States", "street": "5531 Burnet Rd", "city": "Austin", "stateCode": "TX", "postalCode": "78756", "countryCode": "US" },
"latitude": 30.3315041,
"longitude": -97.7398574,
"timezone": "America/Chicago",
"rating": { "provider": "Yelp", "ratingType": "USER_RATING", "score": 4.7, "maxScore": 5, "reviewCount": 33 },
"ratingOutOf5": 4.7,
"openingHoursText": "Sun Closed; Mon 08:30-17:30; Tue-Thu 07:30-19:30; Fri 08:30-17:30; Sat 09:00-14:00",
"isClaimable": true,
"opportunityTags": ["unclaimed-listing"],
"listingCompletenessScore": 86,
"appleUrl": "https://maps.apple.com/place?auid=17417784224305572481",
"searchQuery": "dentists",
"searchLocation": "Austin, TX",
"searchRank": 1
}

Fields

FieldTypeWhat it isFill on the 25-place tests
placeId / placeIdHexstringApple's place id (muid) and its I… form100%
name, displayCategory, categoriesstring / arrayName and Apple's categories100%
phone, phoneFormatted, altPhonesstring / arrayE.164 phone, display phone, other numbers100% / 100% / 40-52%
website, websiteTypestringWebsite and whether it is the business's own100%
addressobjectFull and structured address100%
latitude, longitude, location, timezonenumber / stringCoordinates and time zone100%
rating, ratingOutOf5, reviewCountobject / numberRating with source and scale, 0-5 value, count100%
reviewsarrayUp to 3 review snippets (text, rating, date, source link)100%
hours, openNow, openingHoursTextobject / boolean / stringWeekly hours, open at run time100%
amenitiesarrayAmenities Apple lists96%
photos, coverPhotoarray / objectPhoto URLs with caption, author, source, date96% / 12-16%
description, editorial, accolades, featuredInstring / arrayAbout text, editorial notes, awards, guides12% / where Apple has them
quickLinks, actionDataarrayOrder, book, menu links4%
claimUrl, isClaimablestring / booleanClaim link; true = not claimed yet100% / 64-72% true
hasPhone, hasWebsite, missingFields, listingCompletenessScore, opportunityTagsLead flags computed from the row100%
evCharger, transit, trails, venue, capacity, localNameCategory-specific detail (chargers, stations, trailheads, malls, stadiums, non-English names)where the place has it
emails, primaryBusinessEmail, emailEvidence, socialsWebsite contacts (add-on)where found
searchQuery, searchLocation, matchedLocation, searchRank, sourceGuideWhat found the place and where it ranked100% for searches
monitorStatus, previousStatsstring / objectMonitor mode: new or changed; a changed place gets its previous rating, review count, hours status, opening hours, phone and website, and changedFieldsmonitor runs

Guide rows (with Include guides) carry type: "guide", guideId, title, publisher, placeCount, url and appleUrl.

How can I use Apple Maps data?

  • 🎯 Sales and lead-generation teams β€” build call lists of local businesses with a phone, a website and a rating, filtered by category and area.
  • 🏒 Local-SEO and listing agencies β€” find businesses whose Apple Maps listing is unclaimed, has no website or misses hours and photos (opportunityTags, listingCompletenessScore).
  • πŸ“Š Market researchers β€” count and map competitors per neighborhood with categories, ratings and price levels.
  • πŸ—ΊοΈ Data and GIS teams β€” coordinates, structured addresses and time zones for every place in a city.
  • πŸ” Monitoring β€” run weekly to catch new businesses in an area and changes to ratings, hours, phones and websites.
  • πŸ€– AI agents β€” call it over MCP with compact: true to answer "find 20 vegan restaurants in Lisbon open now".

How much does it cost to scrape Apple Maps?

Apple Maps Scraper is pay-per-result: $3.10 per 1,000 places ($0.0031 per place), no start fee.

PlacesCost
10$0.031
100$0.31
1,000$3.10
10,000$31.00

Optional add-ons: website contacts $0.0014 per place where the website gave at least one email or social profile (nothing when none is found); guide rows $0.0028 per guide. Photos, review snippets, hours and amenities are included in the place price. Filtered-out places are not stored and not billed. Set a maximum spend on the run and it stops when the limit is reached; the places delivered so far are kept.

There is nothing else to pay: Apify platform usage is included in these prices. On the default 1,024 MB a 25-place search took 3-4 seconds on two test runs; larger searches take one more Apple answer for each split area.

Integrations, API, scheduling & MCP

  • Schedules: run Apple Maps Scraper daily or weekly from the Schedules tab; with monitorMode each run returns only new or changed places.
  • Webhooks: call a URL when a run finishes to push places to your CRM, Slack or a sheet.
  • No-code: Make, Zapier, n8n, Google Sheets, Airtable and Slack via Apify integrations.
  • API: start runs and read datasets from Node.js or Python with apify-client β€” code on the API tab.
  • MCP / AI agents: connect Claude, Cursor or any MCP client through the MCP tab.

More local-business scrapers

⭐ Google Maps Reviews ScraperπŸ’¬ Yelp Reviews ScraperπŸ“ Google Geocoding Scraper
πŸ“§ Instagram Email Scraper🌐 Website Content CrawlerπŸ“ˆ SimilarWeb Scraper
πŸ“° Facebook Page Posts Scraper🏨 Booking.com Hotels Scraper🧭 All TopApi actors

Limits & empty runs

  • Results per answer: Apple Maps returns 25 places for a neighborhood-sized view and 55 for a city-sized one; larger maxResults values split the area into quarters and search each again (more answers, a longer run).
  • Reviews: Apple shows up to 3 review snippets per place to visitors; full review histories are not available.
  • Ratings: US places mostly carry Yelp ratings on a 0-5 scale; elsewhere Apple's own 0-100 scores are common. ratingOutOf5 puts both on one scale.
  • Links: a share link that points to a street address with no business on it, and personal guides, are reported in RUN_SUMMARY and not charged.
  • Empty dataset: no matching places in the area, a filter that removed everything, or a term Apple read as a place name. RUN_SUMMARY says which. Nothing is charged.

FAQ

How many places can Apple Maps Scraper collect in one run?

As many as the area has. One Apple Maps answer holds 25-55 places; Apple Maps Scraper splits the area until maxResults is reached.

Can I run Apple Maps Scraper on a schedule to get new places automatically?

Yes. Save your input as a task, open Schedules, pick the cadence and turn on monitorMode. Each run returns only places not delivered before, plus places whose rating, review count, opening hours, phone or website changed. A changed place carries previousStats: the previous rating, review count, hours status, opening hours, phone and website, plus changedFields naming what changed.

Can I integrate Apple Maps Scraper with other apps?

Yes β€” Make, Zapier, n8n, Google Sheets, Slack and more via Apify integrations, or webhooks when a run finishes.

Can I use Apple Maps Scraper with the Apify API?

Yes. Use apify-client for Node.js or Python; the API tab has ready-to-paste code.

Can I use Apple Maps Scraper through an MCP server?

Yes. Open the MCP tab, connect your MCP client and ask for Apple Maps places in plain language. Turn on compact for shorter rows.

Do I need an Apple account, cookies or a MapKit token for Apple Maps Scraper?

No. No login, no cookies, no token. You give search terms and an area, or Apple Maps links.

Does Apple Maps Scraper return emails?

Apple Maps lists phones and websites but no emails. Turn on Website contacts and Apple Maps Scraper reads each place's website for emails and social profiles, with the page each email was found on. On four small test runs (dentists, plumbers, bakeries and florists in Austin), 11 of the 14 places with their own website gave a social profile or an email, 6 of them an email.

Can Apple Maps Scraper scrape places outside the US?

Yes. Set countryCode and language (for example DE and de-DE); names, categories and addresses come back in that language and Apple ranks results for that country.

Why did my Apple Maps Scraper run return no results?

The area had no matching places, a filter removed them, or Apple read the term as a place name. RUN_SUMMARY lists each search with its reason. Nothing is charged for an empty run.

Apple Maps Scraper collects data Apple Maps shows publicly to any visitor and does not log in. You are responsible for complying with Apple's terms and the rules that apply where you work.

Your feedback

We keep improving Apple Maps Scraper. Missing a field or found a bug? Open an issue on the Issues tab.