Auto Dealer Lead Scraper — Verified Emails
Pricing
from $50.00 / 1,000 enriched auto dealer leads
Auto Dealer Lead Scraper — Verified Emails
Scrape auto dealer & car dealership contacts from Google Maps with verified emails & phones. Real-time data from dealer websites. Export to HubSpot, Salesforce, or CSV. Built for automotive SaaS sales & parts vendors.
Pricing
from $50.00 / 1,000 enriched auto dealer leads
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Auto Dealer Lead Scraper — Verified Emails
A Google Maps-focused lead generation scraper for automotive businesses that discovers and returns structured, CRM-ready dealership contact data. The Actor queries Google Maps (via Playwright), paginates through local results for specified locations, visits each business website to extract contact emails using pattern-matching, and verifies email deliverability with DNS MX checks and SMTP handshakes. It also captures phone numbers, website URLs, business category and address, star ratings and review counts, hours, and social profile links (Facebook, Instagram, LinkedIn, Twitter/X). Results are deduplicated, normalized, and exported in full JSON or formats mapped for HubSpot and Salesforce import, enabling hyperlocal and multi-location prospecting with verified email enrichment.
Use cases
- Automotive lead generation for vendors selling F&I products, dealer software, or service contracts.
- Building hyper-local car dealer marketing lists for agencies and OEM regional teams.
- Finding dealer contacts for recruitment (general managers, sales managers, service directors).
- Competitor and territory research to map dealership coverage in a metro area.
- B2B prospecting for parts distributors, auto body shops, and aftermarket vendors ahead of trade shows or territory launches.
- Targeted lists for RV dealers, motorcycle dealers, used car lots, auto body shops, and auto parts stores.
How it works
- Search Google Maps — The actor navigates to Google Maps, searches for the specified business type in the target location, and scrolls through results to collect all listings.
- Extract listing data — For each listing, it captures the business name, category, address, phone, website, rating, review count, hours, coordinates, and Google Maps URL.
- Enrich from website — The actor visits each dealer's website (homepage + contact/about pages) to extract email addresses and social media links using pattern matching and DOM analysis.
- Verify email deliverability — Each email is checked using DNS MX record lookup and an SMTP handshake to confirm the mailbox exists and can receive mail, reducing bounce rates.
- Format and export — Results are deduplicated, normalized, and pushed to the dataset in your chosen format (full JSON, HubSpot CSV import, or Salesforce import).
Input parameters
| Parameter | Type | Default | Required | Description |
|---|---|---|---|---|
businessType | string | "Car Dealership" | Yes | Type of automotive business to search for. Options: Car Dealership, Used Car Dealer, Auto Body Shop, Auto Parts Store, Motorcycle Dealer, RV Dealer, Custom. |
location | string | "Houston, TX" | Yes | City, state, ZIP, or metro area to search within. |
searchQuery | string | "car dealerships in Houston, TX" | No | Raw Google Maps query — only used when businessType is set to Custom. |
maxResults | integer | 50 | No | Maximum number of leads to collect. Set to 3 for a quick test, 50-200 for production. |
enrichEmails | boolean | true | No | Visit each dealer website to extract email addresses from contact/about pages. |
verifyEmails | boolean | true | No | Verify email deliverability via DNS MX + SMTP handshake. Only applies when enrichEmails is enabled. |
enrichSocials | boolean | true | No | Scan dealer websites for Facebook, Instagram, LinkedIn, and Twitter/X links. |
outputFormat | string | "full" | No | Output structure: full (all fields), hubspot (HubSpot CSV import columns), salesforce (Salesforce import columns). |
proxyUrl | string | "" | No | Custom HTTP proxy URL (format: http://user:pass@host:port). Leave empty to use Apify's residential proxies. |
Output data
Each record in the dataset contains:
| Field | Type | Description |
|---|---|---|
business_name | string | Dealership or business name |
business_type | string | The search business type used |
phone | string|null | Phone number from Google Maps |
email | string|null | Email extracted from dealer website |
email_verified | boolean|null | Whether email passed DNS MX + SMTP verification |
website | string|null | Dealer website URL |
address | string|null | Full street address |
rating | number|null | Google Maps star rating (1-5) |
review_count | integer|null | Total Google reviews |
category | string|null | Google Maps business category |
hours | string|null | Operating hours summary |
facebook | string|null | Facebook page URL |
instagram | string|null | Instagram profile URL |
linkedin | string|null | LinkedIn company page URL |
twitter | string|null | Twitter/X profile URL |
google_maps_url | string|null | Direct Google Maps listing link |
place_id | string|null | Google Place ID |
latitude | number|null | GPS latitude |
longitude | number|null | GPS longitude |
scraped_at | string | ISO 8601 timestamp of extraction |
source_url | string | Google Maps search URL used |
Sample output
{"business_name": "ABC Honda of Houston","business_type": "Car Dealership","phone": "(713) 555-0100","email": "sales@abchonda.com","email_verified": true,"website": "https://www.abchonda.com","address": "12345 Gulf Fwy, Houston, TX 77002","rating": 4.5,"review_count": 127,"category": "Honda dealer","hours": "Mon-Sat 9:00 AM - 7:00 PM","facebook": "https://facebook.com/abchonda","instagram": "https://instagram.com/abchonda","linkedin": "https://linkedin.com/company/abc-honda","twitter": null,"google_maps_url": "https://www.google.com/maps/place/ABC+Honda/@29.7604,-95.3698,17z","place_id": "ChIJb5xK7wLQIYURxjM","latitude": 29.7604,"longitude": -95.3698,"scraped_at": "2026-06-24T12:00:00.000Z","source_url": "https://www.google.com/maps/search/car%20dealership%20in%20Houston%2C%20TX"}
Pricing
This actor uses pay-per-event pricing: $0.05 per enriched auto dealer lead.
Cost examples
| Leads | Cost |
|---|---|
| 10 leads | $0.50 |
| 50 leads | $2.50 |
| 100 leads | $5.00 |
| 200 leads | $10.00 |
You only pay for successfully enriched leads. If the actor fails to collect a lead, you are not charged.
Code examples
Run the actor via API
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('USERNAME/auto-dealer-lead-scraper').call({businessType: 'Car Dealership',location: 'Dallas, TX',maxResults: 50,enrichEmails: true,verifyEmails: true,enrichSocials: true,outputFormat: 'hubspot',});const dataset = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${dataset.items.length} dealer leads`);
Run via Apify CLI
$apify run --input='{"businessType":"Used Car Dealer","location":"Miami, FL","maxResults":25}'
Schedule a daily run
apify schedule create --actor USERNAME/auto-dealer-lead-scraper \--cron "0 8 * * 1" \--input '{"businessType":"Car Dealership","location":"Houston, TX","maxResults":50}'
FAQ
Why do some leads have no email?
Not all dealerships list an email on their website. Some use contact forms instead. The actor scans the homepage, contact page, and about page — if no email is found, the email field will be null. You are not charged for leads without enrichment data beyond the Google Maps listing.
How accurate is email verification?
The actor performs a two-step check: (1) DNS MX record lookup to confirm the domain accepts email, and (2) an SMTP handshake to verify the specific mailbox exists. This catches most invalid emails, but some mail servers reject SMTP probes for security reasons — a small number of valid emails may show as unverified.
Can I search multiple locations?
Run the actor once per location. For territory-wide prospecting, run sequential searches for each city or ZIP code in your target area.
What's the difference between output formats?
- Full — All fields in the actor's native schema. Best for API integrations and custom processing.
- HubSpot Import — Column names mapped to HubSpot's CSV import format. Download the dataset as CSV and upload directly to HubSpot.
- Salesforce Import — Column names mapped to Salesforce's data import format. Download as CSV and use Salesforce Data Import.
Does it work for non-US dealerships?
Yes. Google Maps returns results globally. The search query is built from the business type and location you provide. For non-US locations, use the Custom business type and write your own query.
Technical details
- Crawler: PlaywrightCrawler with stealth mode and randomized viewports for anti-bot evasion
- Proxy: Apify residential proxies by default, or custom proxy URL supported
- Email verification: DNS MX lookup + SMTP RCPT TO handshake (8-second timeout per email)
- Deduplication: Results are deduplicated by business name within each run
- Resource blocking: Images, fonts, media, and tracking scripts are blocked for faster crawling
- Session pool: Up to 5 browser sessions with rotation to avoid rate limiting
Limitations
- Google Maps may return fewer results than
maxResultsfor small or rural areas - Some dealer websites block automated access — email extraction may fail for those
- Email verification adds ~1 minute to the run time
- Google Maps CSS selectors change occasionally — the actor uses multiple fallback selectors
Export scraped data, run the scraper via API, schedule and monitor runs, or integrate with other tools using the Apify platform.