Google Maps Phone Number Extractor
Pricing
$19.99/month + usage
Google Maps Phone Number Extractor
Google Maps Phone Number Extractor pulls publicly listed business phone numbers from Google Maps listings. Build targeted calling lists by location, category, or rating. Ideal for sales teams and local marketers.
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
Scraper Engine
Maintained by CommunityActor stats
0
Bookmarked
70
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Google Maps Phone Number Extractor ☎️📍
Google Maps Phone Number Extractor collects publicly listed business phone numbers from Google Maps listings. Give it a business category and a country, and it returns a clean, de-duplicated table of numbers together with the listing title, snippet and Maps URL each one came from.
It is built for lead generation, local-market research and territory analysis — anywhere you need a list of businesses in a category you can actually call.
Support and feedback
- Bug reports: Open a ticket in the repository Issues section
- Custom features: Contact our enterprise support team Email: scrapier.io@gmail.com
Extractable Data Table 📊
| Data Type | Description |
|---|---|
| phone_number | Business phone number, normalised to E.164 (+441217714141) |
| title | Title of the Google Maps listing |
| description | Listing snippet (usually name + address + number) |
| url | Direct Google Maps link for the listing |
| keyword | The category you searched |
| country / dial_code | The country filter that was applied |
Key Features 🌟
- ⭐ Country-accurate results — every number is normalised and filtered against the country's dial code, so a
United Kingdom (+44)run never returns a US number - ⭐ Broad query coverage — each keyword is expanded into a family of searches (category, plural, locality and area-code variants) instead of a single query, so you get far more than the first page of results
- ⭐ Automatic de-duplication — the same business is never returned twice, even when several listings mention it
- ⭐ Resilient by design — blocked or timed-out pages are retried on a fresh connection and simply skipped if they stay broken; a run always finishes and always saves what it found
- ⭐ No proxy setup required — the right proxy is selected automatically
How to use 🚀
- ✅ Add one or more business categories to
keywords(for examplerestaurant,hotel,cafe) - ✅ Pick the country whose numbers you want
- ✅ Set maxPhoneNumbers — how many numbers to collect per keyword
- ✅ Start the run
- ✅ Export the dataset as CSV, JSON or Excel
💡 Tip for best yield: common, high-volume local-business categories (restaurant, hotel, cafe, pub, bakery, pizzeria) have far more public Maps listings indexed than narrow B2B terms. Very specific trades in small markets may return only a handful of numbers — that is a limit of what is publicly listed, not a failure of the run.
Use Cases 🎯
🎯 Build calling lists of local businesses by category and country 🎯 Size and map a local market before entering it 🎯 Enrich an existing company list with public contact numbers 🎯 Research competitor density in a region
Legal Guidelines ⚖️
This actor collects only publicly available business contact information — the same details any visitor sees on a public Google Maps listing. No login, no private data, no personal profiles.
⚖️ Use the collected data responsibly and ethically ⚖️ Respect marketing, telemarketing and data-protection laws in your jurisdiction (GDPR, PECR, TCPA, …) ⚖️ Business contact data is not a licence to contact individuals
Input Parameters 🧩
📦 Example Input (JSON)
{"keywords": ["restaurant", "hotel"],"country": "United Kingdom (+44)","maxPhoneNumbers": 100,"platform": "Google-Maps"}
Input Table
| Field | Description |
|---|---|
| keywords | One or more business categories to search |
| country | Country + dial code, chosen from the dropdown (e.g. Germany (+49)) |
| maxPhoneNumbers | Maximum numbers to collect per keyword (1 – 10,000, default 10) |
| platform | Locked to Google-Maps |
| proxyConfiguration | Optional. Leave as-is — the actor picks the right proxy automatically |
Output Format 📤
📝 Example Output (JSON)
[{"platform": "Google Maps","keyword": "restaurant","title": "Restaurants near Druid Rd, Inverness, UK - Google Maps","description": "... St, Inverness IV2 3JN, United Kingdom. + 44 1463 711900. Modern, family-run restaurant and patisserie ...","url": "https://www.google.com/maps/search/Restaurants%20near%20Druid%20Road,%20Inverness/","phone_number": "+441463711900","country": "United Kingdom","dial_code": "+44"}]
Output Table
| Field | Description |
|---|---|
| platform | Always Google Maps |
| keyword | The category that produced this row |
| title | Title of the Maps listing |
| description | Listing snippet the number was read from |
| url | Direct Google Maps link |
| phone_number | E.164-normalised number |
| country | Country name from your input |
| dial_code | Dial code used for normalisation and filtering |
FAQ ❓
How many numbers will I get?
It depends on how many public Maps listings exist for that category and country. Broad categories in large markets return hundreds; niche trades in small markets may return only a few. The run tells you exactly how many it found per keyword.
Why did a run finish with few or no results?
The category/country combination has little publicly indexed Maps content. Try a broader, more common category, or a larger country. The run completes successfully either way — it never fails just because a search was sparse.
Are the numbers de-duplicated?
Yes. Each phone number appears at most once per keyword.
Do I need to configure a proxy?
No. Leave the proxy settings untouched and the actor selects the correct one automatically.