Fast Google Maps Scraper & Email Extractor avatar

Fast Google Maps Scraper & Email Extractor

Pricing

$5.00/month + usage

Go to Apify Store
Fast Google Maps Scraper & Email Extractor

Fast Google Maps Scraper & Email Extractor

Extract unlimited B2B leads from Google Maps! Scrapes business names, phones, ratings, and automatically visits their websites to extract verified emails. Includes photo scraping and precise coordinates. No login required. Perfect for fast, automated cold outreach and local marketing

Pricing

$5.00/month + usage

Rating

0.0

(0)

Developer

Scrape Pilot

Scrape Pilot

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

6 days ago

Last modified

Share

πŸ—ΊοΈ Fast Google Maps Scraper & Email Extractor

The most complete Google Maps Scraper on Apify. Extract business name, category, rating, reviews, phone, address, website, email, working hours, photos, and GPS coordinates from any Google Maps search or place URL β€” with built-in email harvesting from business websites. No login. No API key. Bulk-ready.


πŸ“Œ Table of Contents


πŸ” What Is This Actor?

Fast Google Maps Scraper & Email Extractor is a production-grade Apify actor that turns any Google Maps search query or place URL into a clean, structured business dataset β€” complete with contact details, engagement metrics, location data, and photos.

Unlike basic Google Maps scrapers that stop at name and phone number, this actor goes a step further: it visits each business's own website to automatically extract email addresses from contact pages, mailto links, and page text β€” giving you the one field most Google Maps scrapers miss entirely.

Provide search queries like "coffee shops in Austin TX" or direct Google Maps place URLs, and receive back a structured record for every business found β€” ready for CRM import, lead generation, market research, or local SEO analysis.


πŸš€ Why Use This Google Maps Scraper?

FeatureThis ActorBasic ScrapersGoogle Maps APIManual Research
Business name, phone, addressβœ…βœ…βœ…βœ… Slow
Email from business websiteβœ… AutoβŒβŒβœ… Very slow
Rating & reviews countβœ…βš οΈβœ…βŒ
GPS coordinatesβœ…βš οΈβœ…βŒ
Working hoursβœ…βŒβœ… Paid❌
Business photosβœ… Up to 5βŒβœ… Paid❌
Search query supportβœ… Bulkβš οΈβœ…βŒ
Direct place URL supportβœ…βœ…N/A❌
No API key or billingβœ…βœ…βŒ Pay-per-request❌
Contact page crawlingβœ…βŒβŒβŒ

Bottom line: This Google Maps Scraper is the only solution on Apify that combines Maps data extraction with automatic email harvesting from business websites β€” in a single run.


🎯 Use Cases

πŸ† B2B Lead Generation

  • Build targeted prospect lists by scraping Google Maps for businesses in any niche or city
  • Extract business email addresses automatically β€” no manual website visits required
  • Export phone, email, website, and address into your CRM or outreach tool in one run

πŸ“Š Market Research & Competitor Analysis

  • Map the competitive landscape in any city β€” scrape all businesses in a category with ratings and review counts
  • Compare business density, average ratings, and review volume across neighborhoods or cities
  • Identify market gaps by analyzing category coverage and customer engagement data

πŸ—ΊοΈ Local SEO & Directory Building

  • Build local business directories with verified NAP (Name, Address, Phone) data from Google Maps
  • Collect GPS coordinates for mapping and geo-targeting campaigns
  • Audit citation consistency by comparing scraped data against your own listings

πŸ› οΈ CRM & Sales Automation

  • Feed scraped business data directly into Salesforce, HubSpot, or any CRM via Apify integrations
  • Enrich existing contact lists with phone numbers, websites, and emails from Google Maps
  • Automate prospecting workflows with scheduled actor runs targeting new business listings

πŸŽ“ Academic & Urban Research

  • Study business distribution patterns across cities for urban planning or geography research
  • Collect review counts and ratings for consumer behavior studies
  • Build datasets of local businesses for economic mobility or gentrification research

πŸ“° Journalism & Public Interest

  • Map business closures or openings in specific neighborhoods over time
  • Identify clusters of specific business types for investigative reporting
  • Extract contact information for businesses involved in public interest stories

βš™οΈ Input Parameters

{
"queries": [
"dentists in Chicago IL",
"Italian restaurants Manhattan NY"
],
"urls": [
"https://www.google.com/maps/place/ExampleBusiness/@40.7128,-74.0060,17z"
],
"max_results": 10,
"scrape_email": true,
"scrape_photos": true
}
ParameterTypeDefaultDescription
queriesarray or string[]Google Maps search queries β€” e.g. "plumbers in Dallas TX". Newline-separated string also accepted
urlsarray or string[]Direct Google Maps place URLs to scrape individual businesses
max_resultsinteger10Maximum businesses to scrape per search query
scrape_emailbooleantrueVisit each business website to extract email addresses
scrape_photosbooleantrueCollect up to 5 business photos from Google Maps

Tip: You can combine queries and urls in the same run. All inputs are processed together and results merged into a single output dataset.


πŸ“‹ Output Fields

Every record from this Google Maps Scraper includes:

FieldTypeDescriptionExample
namestringBusiness name"Joe's Coffee Roasters"
categorystringBusiness category from Google Maps"Coffee shop"
ratingstringAverage star rating"4.7"
reviews_countintegerTotal number of reviews1842
addressstringFull street address"123 Main St, Austin, TX 78701"
phonestringBusiness phone number"+1 512-555-0199"
websitestringBusiness website URL"https://joescoffee.com"
emailstringPrimary email (extracted from website)"hello@joescoffee.com"
emailsarrayAll emails found (if multiple)["hello@...", "orders@..."]
hoursstringWorking hours summary"Mon–Fri 7am–6pm, Sat 8am–5pm"
latitudefloatGPS latitude coordinate30.2672
longitudefloatGPS longitude coordinate-97.7431
photosarrayUp to 5 high-quality photo URLs (800Γ—600)["https://lh3.googleusercontent.com/..."]
maps_urlstringFinal resolved Google Maps URL"https://www.google.com/maps/place/..."
source_urlstringOriginal URL provided as input"https://www.google.com/maps/..."

πŸ“¦ Example Input & Output

Input:

{
"queries": ["specialty coffee shops Austin TX"],
"max_results": 3,
"scrape_email": true,
"scrape_photos": true
}

Output (one record):

{
"name": "Joe's Coffee Roasters",
"category": "Coffee shop",
"rating": "4.7",
"reviews_count": 1842,
"address": "123 Main St, Austin, TX 78701",
"phone": "+1 512-555-0199",
"website": "https://joescoffee.com",
"email": "hello@joescoffee.com",
"emails": ["hello@joescoffee.com", "orders@joescoffee.com"],
"hours": "Mon–Fri 7am–6pm, Sat 8am–5pm, Sun 9am–3pm",
"latitude": 30.2672,
"longitude": -97.7431,
"photos": [
"https://lh3.googleusercontent.com/.../photo1=w800-h600",
"https://lh3.googleusercontent.com/.../photo2=w800-h600"
],
"maps_url": "https://www.google.com/maps/place/Joes+Coffee/@30.2672,-97.7431,17z",
"source_url": "https://www.google.com/maps/place/Joes+Coffee/@30.2672,-97.7431,17z"
}

πŸ“§ Email Extraction Feature

The built-in email extractor is what sets this Google Maps Scraper apart. When scrape_email is enabled, the actor automatically visits each business's website and searches for email addresses in three passes:

Pass 1 β€” mailto: links Scans the homepage for mailto: hyperlinks β€” the most reliable source of intentionally published contact emails.

Pass 2 β€” Page text scan Searches all visible page text for email patterns using regex, filtering out common false positives (image filenames, tracking pixels, asset URLs).

Pass 3 β€” Contact page crawl If no email is found on the homepage, the actor automatically tries /contact, /contact-us, and /about subpages before giving up.

Output: Up to 3 emails per business are stored. The best candidate is promoted to email (primary), with all found addresses in the emails array.

⚠️ Email extraction adds ~10–15 seconds per business. Disable scrape_email for faster runs when only contact details and location data are needed.


πŸ“· Photo Scraping Feature

When scrape_photos is enabled, the actor collects up to 5 high-quality business photos from Google Maps.

Photos are returned as direct googleusercontent.com URLs at 800Γ—600 resolution β€” ready for display in directories, CRM cards, or marketing materials. Thumbnails found on the listing page are automatically upscaled to the highest available resolution before being saved.

Disable scrape_photos to significantly speed up runs when photos are not needed.


βš™οΈ How It Works

Step 1 β€” Input Routing

Search queries are converted into Google Maps search URLs (/maps/search/...). Direct place URLs are scraped individually. Both modes use the same extraction pipeline.

Step 2 β€” Search Result Collection

For search queries, the actor scrolls the results panel to load all listings, then collects all /maps/place/ URLs up to max_results. Each URL is queued for individual place scraping.

Step 3 β€” Place Data Extraction

Each business page is loaded and data is extracted via targeted CSS selectors: name, category, rating, review count, address, phone, website, and hours. GPS coordinates are parsed directly from the Maps URL.

Step 4 β€” Email Harvesting

If scrape_email is enabled and a website URL was found, a separate browser tab visits the site, scans for emails in three passes (homepage β†’ page text β†’ contact subpages), and returns up to 3 addresses.

Step 5 β€” Photo Collection

If scrape_photos is enabled, the actor collects thumbnail image URLs from the listing and upgrades them to 800Γ—600 resolution versions.

Step 6 β€” Output

All records are pushed to the Apify dataset in real time as each business is processed. The final dataset is also saved as a key-value store entry.


⚑ Performance & Limits

ModeCountEstimated Time
Single place URL1~15–30 seconds
Search query (no email/photos)10~2–3 minutes
Search query (email + photos ON)10~5–8 minutes
Multi-query batch5 queries Γ— 10~25–40 minutes

Speed tips:

  • Set scrape_email: false to cut per-business time in half
  • Set scrape_photos: false for fastest possible runs
  • Use direct urls input instead of queries when you already have place URLs

Reliability features:

  • Per-business error isolation β€” one failed place never stops the batch
  • Automatic wait between requests to avoid rate limiting
  • Bot-detection bypass via stealth browser configuration

❓ FAQ

Q: Does this actor require a Google Maps API key? A: No. This Google Maps Scraper uses a real browser to load Google Maps pages directly β€” no API key or billing account needed.

Q: Why is email null for some businesses? A: Not all businesses have a website, and not all websites publish an email address. If no email is found after checking the homepage and contact subpages, the field returns null. Setting scrape_email: false skips this step entirely for speed.

Q: How many results can I get per search query? A: Set max_results to control how many businesses are scraped per query. There is no hard cap β€” the actor scrolls the results panel to load as many listings as available up to your limit.

Q: Can I scrape a specific business by URL? A: Yes. Paste any Google Maps place URL into the urls field and the actor scrapes that business directly, with no search step required.

Q: Why are GPS coordinates sometimes missing? A: Coordinates are extracted from the Google Maps URL after the page resolves. For a small number of listings, Google Maps may not embed coordinates in the URL β€” this results in null latitude/longitude.

Q: Can I export results to a CSV or Excel file? A: Yes. Apify datasets can be exported to CSV, JSON, Excel, and more from the Apify Console dataset view after the run completes.

Q: How do I avoid being blocked by Google? A: The actor uses stealth browser settings (Chrome user-agent, webdriver property suppressed, realistic locale and timezone) with randomized wait times between requests. For high-volume runs (100+ businesses), consider adding residential proxy.


πŸ“œ Changelog

v2.0.0 (Current)

  • βœ… Email extractor: 3-pass harvesting (mailto β†’ page text β†’ contact subpages)
  • βœ… Photo scraping: up to 5 photos per business at 800Γ—600 resolution
  • βœ… GPS coordinate extraction from resolved Maps URL
  • βœ… Working hours extraction
  • βœ… scrape_email and scrape_photos toggle flags for speed control
  • βœ… Direct place URL input support alongside search queries
  • βœ… Stealth browser configuration (webdriver suppressed, realistic locale)
  • βœ… Per-business error isolation β€” batch never stops on a single failure
  • βœ… Real-time dataset push as each business is processed

v1.0.0

  • Initial release with basic name, phone, address, rating, and website extraction

This actor accesses publicly visible business information on Google Maps in the same way a regular user browses the platform.

Please note:

  • Use extracted data only for lawful purposes β€” lead generation, research, directory building, and journalism are common legitimate uses
  • Do not use this Google Maps Scraper to spam, harass, or send unsolicited bulk communications to extracted contacts
  • Respect Google's Terms of Service β€” do not use this tool at volumes that constitute systematic data mining in violation of platform rules
  • Email addresses extracted from business websites are publicly published contact details β€” always comply with applicable anti-spam laws (CAN-SPAM, GDPR, CASL) when using them for outreach
  • The actor developer is not responsible for how extracted data is used

🀝 Support & Feedback

  • Bug report? Open a GitHub issue or contact us via the Apify actor page
  • Feature request? Post in the Apify Community forum
  • Works great? Please leave a ⭐ review on the Apify Store!

Built with ❀️ on Apify · Powered by Playwright
The fastest Google Maps Scraper with built-in email extraction β€” no API key, no login, bulk-ready