Realtor Email Scraper (Cheap) avatar

Realtor Email Scraper (Cheap)

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Realtor Email Scraper (Cheap)

Realtor Email Scraper (Cheap)

Realtor contact email extractor that fetches agent names, emails, phones, and office details from Realtor.com listings using property IDs or US addresses, returning one flat row per agent.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Data API

Data API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

Realtor Email Scraper

Realtor Email Scraper

Realtor.com shows you the listing agent's name and a contact button, but pulling the actual email, phone, and brokerage for a list of properties means clicking through every page by hand. This scraper skips that. Give it a US address or a Realtor.com listing ID and it returns the listing agent's email, phone, name, license, and brokerage details next to the property's price, beds, baths, and address — one flat row per agent. Mix addresses and IDs in the same run, feed it one property or a few thousand, and pay only for what you scrape.

What you get

Every agent on a listing becomes its own row, with the property details repeated on each row so the dataset stands on its own. A listing with two agents gives you two rows; a listing with no agent still writes a row so nothing is quietly dropped. Three groups of data:

  • Agent contactagentFullName, agentEmailAddress, agentPhoneNumber, agentRole, agentWebsite, agentLicenseId
  • BrokeragebrokerageName, brokerageEmail, brokeragePhone, brokerageCity, brokerageState
  • PropertylookupValue, listingId, streetAddress, cityName, stateCode, postalCode, askingPrice, bedroomCount, bathroomCount, floorAreaSqft, propertyCategory

Quick start

  1. Hit Try for free and open the input form.
  2. Paste your US addresses or numeric listing IDs into Addresses or listing IDs, one per line. Both kinds work together.
  3. Pick a proxy type and set a Results limit if you want to cap the run.
  4. Press Start, then export the results as JSON, CSV, Excel, or XML when it finishes.

How it works

Use cases

  • Listing agent outreach — build mailing lists of agents tied to specific properties for new-listing announcements or open-house invites
  • Mortgage and lender prospecting — reach agents on fresh or price-reduced listings to introduce lending and referral programs
  • CRM enrichment — append verified agent emails and phones to property records, keyed on an address or a listing ID
  • Brokerage research — see which offices list what, where, and at what price across a market
  • Investor sourcing — find the agents behind distressed or reduced listings to open acquisition conversations
  • Vendor and partner marketing — collect agent contacts to pitch software, inspection, staging, or photography services

Input

FieldTypeRequiredDescription
lookupListarray of stringsYesUS property addresses or numeric Realtor.com listing IDs, one per line. Mix both in the same run.
resultsLimitintegerNoHow many properties to handle per run. Use 0 for no cap. Default 0.
requestTimeoutSecondsintegerNoSeconds to wait on each HTTP request before moving on. Default 45.
proxyConfigurationobjectNoProxies that route your requests. Defaults to US; switch to Residential if you hit repeated failures.

Example input

{
"lookupList": [
"1200 Brickell Bay Dr, Miami, FL 33131",
"742 Evergreen Ter, Springfield, IL",
"9087654321"
],
"resultsLimit": 0,
"requestTimeoutSeconds": 45,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyCountry": "US" }
}

Output

You get one row per listing agent. The property fields repeat on every agent row, so a listing with two agents produces two rows that share the same property details. A property that resolves but lists no agent still writes a row with the property data and blank agent fields, and anything that fails to resolve writes a row carrying your original lookup plus an errorMessage.

Example output

{
"lookupValue": "1200 Brickell Bay Dr, Miami, FL 33131",
"listingId": "3055678901",
"streetAddress": "1200 Brickell Bay Dr",
"cityName": "Miami",
"stateCode": "FL",
"postalCode": "33131",
"askingPrice": 1250000,
"bedroomCount": 3,
"bathroomCount": 2,
"floorAreaSqft": 1900,
"propertyCategory": "condo",
"agentFullName": "Carlos Mendez",
"agentEmailAddress": "carlos@miamiproperty.com",
"agentRole": "seller",
"agentPhoneNumber": "3055551234",
"agentWebsite": "https://www.miamiproperty.com",
"agentLicenseId": "FL-334512",
"brokerageName": "Miami Property Group",
"brokerageEmail": "info@miamiproperty.com",
"brokeragePhone": "3055550000",
"brokerageCity": "Miami",
"brokerageState": "FL",
"errorMessage": ""
}

Output fields

FieldTypeDescription
lookupValuestringThe address or listing ID exactly as you entered it.
listingIdstringThe numeric Realtor.com listing ID your input resolved to.
streetAddressstringFull street address of the property.
cityNamestringCity the property sits in.
stateCodestringTwo-letter state code, such as TX, FL, or CA.
postalCodestringZIP or postal code of the property.
askingPricenumberPrice the property is currently listed at.
bedroomCountnumberNumber of bedrooms.
bathroomCountnumberNumber of bathrooms.
floorAreaSqftnumberInterior floor area in square feet.
propertyCategorystringProperty kind, such as single_family, condo, or multi_family.
agentFullNamestringFull name of the listing agent.
agentEmailAddressstringPublic email address for the agent.
agentRolestringThe agent's role on this listing, such as seller or buyer.
agentPhoneNumberstringDirect phone number for the agent.
agentWebsitestringWebsite URL for the agent or brokerage.
agentLicenseIdstringState license number held by the agent.
brokerageNamestringName of the brokerage office.
brokerageEmailstringPublic email address for the brokerage office.
brokeragePhonestringPhone number for the brokerage office.
brokerageCitystringCity the brokerage office is based in.
brokerageStatestringState code of the brokerage office.
errorMessagestringSet when a property could not be fetched; empty on success.

Tips for best results

  • Keep proxies on US. Realtor.com leans heavily toward US traffic, so the input ships with apifyProxyCountry: "US". If a large batch throws frequent failures, switch the proxy to Residential.
  • Mix addresses and IDs freely. A plain address like "123 Main St, Austin TX" and a numeric ID like "9087654321" both work in the same lookupList. The actor decides which is which on its own.
  • Watch the errorMessage field. Any row with a non-empty errorMessage means that input did not resolve. Filter those out, then re-run them in a smaller batch.
  • Cap test runs. Set resultsLimit to a small number while you confirm the output fits your pipeline, then drop it back to 0 for the full list.
  • Pipe it straight into your tools. When a run finishes, the Apify Google Sheets integration or a webhook can push agent contacts into HubSpot, Mailchimp, Airtable, or your outreach platform.

How can I use Realtor.com agent data?

How can I use the Realtor Email Scraper to build a list of listing agents in a market? Paste a batch of addresses or Realtor.com listing IDs for the area you care about and each one comes back with the listing agent's email, phone, name, and brokerage next to the property's price and location. Group the rows by city or ZIP to see which agents and offices are active where, and you have a ready contact list for outreach.

How can I find a real estate agent's email from a property address? Drop a single US address into lookupList. The scraper resolves it to a Realtor.com listing, reads the advertiser data, and returns the agent's public email, direct phone, license, and brokerage in one row — no Realtor.com login or API key needed.

How can I enrich my CRM with Realtor.com agent contacts at scale? Already have a list of addresses or listing IDs? Set resultsLimit to 0 and feed the whole list. Every property returns one row per agent with verified contact fields, so you can match results back to your records on the lookupValue and append fresh agent emails and phone numbers in bulk.

How do I export the scraped Realtor.com data to CSV or Google Sheets? After a run finishes, open the dataset and export to CSV, JSON, or Excel in one click, or connect the Apify Google Sheets integration to send agent contacts straight into a sheet your team already works from.

Our actors are ethical and do not extract any private user data, such as email addresses or private contact information. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.

Support

Questions, feature requests, or a field you'd like added? Reach out at data.apify@proton.me and we'll get back to you.