Realtor.com Scraper — Real Estate Agent Leads, Emails & Phones avatar

Realtor.com Scraper — Real Estate Agent Leads, Emails & Phones

Pricing

from $45.00 / 1,000 enriched listings

Go to Apify Store
Realtor.com Scraper — Real Estate Agent Leads, Emails & Phones

Realtor.com Scraper — Real Estate Agent Leads, Emails & Phones

Realtor.com scraper for real estate agent leads — listing agent email, phone, and brokerage plus full property data (price, beds, baths, taxes, price history). Search by ZIP code, property ID, or URL. Lead generation ready. No API key, no run-start fee.

Pricing

from $45.00 / 1,000 enriched listings

Rating

0.0

(0)

Developer

Jura Moshkov

Jura Moshkov

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

17 hours ago

Last modified

Share

Realtor.com Scraper — Property Listings + Agent Contacts

Realtor.com scraper that returns property listings + agent contacts in one flat row per property. Search by ZIP code, property ID, or a Realtor.com URL and get the full listing (price, beds, baths, taxes, price history, photos, coordinates) plus the listing agent's email, phone, and brokerage attached to it — ready for real estate lead generation, agent prospecting, and CRM enrichment.

It is built for lead generation, sales prospecting, and AI agents. A few things set it apart from the many Realtor.com and Zillow scrapers that only return property data:

  • Agent contact in every row. Not just the listing — the agent's email, office and cell phone, license, brokerage, and profile URL, so each row is a contactable lead rather than a map pin.
  • Agent-native. It runs as a tool through the Apify MCP server, so an AI agent can discover it, fill the input straight from the schema, and run it inside a workflow.
  • Pay only for results. No run-start fee. You are billed per successfully enriched property, so a run that returns nothing costs nothing.
  • Reliable by design. It runs on a stable real-estate data API, not a headless browser, so Realtor.com layout or anti-bot changes do not silently break your scheduled runs.

What is a Realtor.com scraper?

It is a tool that queries Realtor.com the way you would — a ZIP code, a specific listing, or a search URL you paste — and returns each matching property as a structured record. A plain listing page shows you the price, beds, and baths. This actor goes one step further and resolves the listing agent's contact details (email, phone, brokerage, license) onto the same row, so the export is an outreach-ready real estate lead list, not just a property feed.

Looking for a real estate agent leads scraper, a Realtor.com property scraper, or realtor email addresses by ZIP code? This one actor does all three in a single run.

What you get per property

One property comes back as one flat row with property fields and agent/lead fields together.

Property fields:

FieldTypeDescription
propertyIdstringRealtor.com property / listing ID.
urlstringListing URL.
statusstringListing status (e.g. for_sale).
pricenumberListing price.
currencystringCurrency, usually USD.
bedsnumberBedrooms.
bathsnumberBathrooms.
sqftnumberInterior square footage.
lotSqftnumberLot size in square feet.
yearBuiltnumberYear built.
propertyTypestringProperty type (e.g. single_family, condos).
streetAddress / city / state / zipstringAddress parts.
latitude / longitudenumberCoordinates.
hoaFeenumberHOA fee when available.
propertyTaxnumberProperty tax when available.
estimateValuenumberEstimated value when available.
rentEstimatenumberRent estimate when available.
daysOnMarketnumberDays on market.
priceHistoryarrayPrice history entries {date, price, event}.
photoUrlsarrayListing photo URLs.
schoolsarrayNearby schools when available.
listedDatestringListing date (ISO).

Agent / lead fields:

FieldTypeDescription
agentNamestringListing agent name.
agentEmailstringAgent email. Masked on the free tier.
agentEmailMaskedbooleanWhether agentEmail is masked.
agentPhonestringAgent office phone.
agentCellPhonestringAgent cell phone when available.
agentLicenseNumberstringAgent license / NRDS ID when available.
brokerNamestringBrokerage name.
brokerPhonestringBrokerage phone when available.
agentProfileUrlstringAgent profile URL.
agentEmailSourcestringHow the email was resolved.

Meta fields: mode, searchZip, sourceUrl, scrapedAt (ISO), and error (null on success).

Example output row

{
"mode": "zipSearch",
"propertyId": "8760921655",
"url": "https://www.realtor.com/realestateandhomes-detail/2009-Fortview-Rd_Austin_TX_78704_M87609-21655",
"status": "for_sale",
"price": 365000,
"currency": "USD",
"beds": 3,
"baths": 2,
"sqft": 1128,
"lotSqft": 8316,
"yearBuilt": 1953,
"propertyType": "single_family",
"streetAddress": "2009 Fortview Rd",
"city": "Austin",
"state": "TX",
"zip": "78704",
"latitude": 30.231288,
"longitude": -97.788758,
"hoaFee": 0,
"daysOnMarket": null,
"priceHistory": [],
"photoUrls": ["http://ap.rdcpix.com/....jpg"],
"listedDate": "2026-07-15T15:25:40.000Z",
"agentName": "Rosie Hayer",
"agentEmail": "rosie@512hayergroup.com",
"agentEmailMasked": false,
"agentPhone": "5128433374",
"agentCellPhone": null,
"brokerName": "Rivet Real Estate",
"agentProfileUrl": "http://www.512austinhomes.com/",
"agentEmailSource": "provider",
"searchZip": "78704",
"sourceUrl": null,
"scrapedAt": "2026-07-17T13:05:45.270Z",
"error": null
}

Input modes

The mode field decides what to scrape. Every mode returns the same flat row shape.

ModeUse it toRequires
zipSearchDiscover all listings + agents in a ZIP code (the main mode)zipCodes
propertyIdsEnrich a known list of Realtor.com property IDspropertyIds
urlScrape any Realtor.com search or listing URL you pastestartUrls

Search by ZIP code (main mode):

{
"mode": "zipSearch",
"zipCodes": ["78704"],
"listingStatus": "forSale",
"minPrice": 300000,
"maxPrice": 900000,
"beds": 3,
"maxResults": 100
}

Enrich known property IDs:

{
"mode": "propertyIds",
"propertyIds": ["8760921655", "7960640248"],
"maxResults": 2
}

Scrape a Realtor.com URL:

{
"mode": "url",
"startUrls": ["https://www.realtor.com/realestateandhomes-search/78704"],
"listingStatus": "forSale",
"maxResults": 100
}

Optional filters (minPrice, maxPrice, beds, baths) narrow zipSearch and url runs. listingStatus picks between forSale, forRent, and sold. maxResults caps enriched properties per run (up to 1000). requestDelayMs (advanced) adds a delay between requests for very large runs.

How much does it cost?

No run-start fee. You are charged only for successfully enriched properties. A run that returns no property costs nothing.

Apify planPrice per enriched propertyAgent email
Free$0.07Masked (j***@e***.com)
Bronze$0.06Full
Silver$0.05Full
Gold$0.045Full
Platinum$0.04Full
Diamond$0.04Full

Free-plan runs are capped at 15 enriched properties and mask the agent email. Phones, license, brokerage, and all property data are always returned in full, on every plan. Upgrade your Apify plan for full agent emails and uncapped runs.

Example: 500 real estate agent leads on the Bronze plan is about 500 × $0.06 = $30.

How do I use it with an AI agent (MCP)?

This actor is available as a tool through the Apify MCP server. An agent can call it by name with a plain input and fill every field straight from the schema, because each input field carries a description:

{ "mode": "zipSearch", "zipCodes": ["78704"], "listingStatus": "forSale", "maxResults": 20 }

The output is one flat JSON object per property with no nested structures to unwrap, which is exactly what an agent needs to read a lead, decide, and act without extra parsing.

How do I get real estate agent leads by ZIP code?

Use zipSearch mode with one or more zipCodes. Each search returns the listings in that ZIP with the listing agent's name, email, phone, cell phone, and brokerage attached. Add more ZIP codes to widen coverage, and export agentEmail, agentPhone, agentCellPhone, and brokerName to CSV or Google Sheets to build a real estate lead list you can import straight into a CRM. Free-plan runs mask the email; any paid Apify plan returns the full realtor email address.

The actor returns publicly available listing and agent data that Realtor.com already publishes. It does not log in, access private data, or bypass paywalls. As with any data tool, you are responsible for how you use the results: respect Realtor.com's terms of service, and follow marketing and privacy law in your market (for example CAN-SPAM and TCPA for outreach in the US, GDPR where it applies), including getting consent for cold outreach and honouring opt-outs. Treat the agent contact fields as B2B professional contacts, not consumer personal data.

Why is it reliable?

It is built on a stable real-estate data API rather than a headless browser scraper, so it is not broken by Realtor.com page-layout or anti-bot changes the way page-scraping actors are. Requests are retried automatically on transient errors, and a monthly-quota error stops the run cleanly instead of burning more requests on retries that cannot recover. Each search paginates against the provider's verified page cap, so large ZIP pulls come back complete. That combination is what makes it safe to put on a daily schedule or inside an automated agent pipeline: it keeps returning structured data instead of silently failing.

Use cases

  • Real estate lead generation — build lists of contactable listing agents by ZIP, city, or state.
  • Agent prospecting and recruiting — reach agents with their email, phone, brokerage, and the live listing they represent as context for the first message.
  • Real estate market research — price, property type, location, and days-on-market analysis at scale.
  • CRM and spreadsheet enrichment — push Realtor.com property and agent data into your sales stack.
  • Investor and comp research — pull price, tax, HOA, estimate, rent estimate, and price history for properties in a target ZIP.

Examples

  • All for-sale homes and their listing agents in a ZIP: zipSearch with zipCodes: ["78704"].
  • Three-bed homes between $300k and $900k in a ZIP: add minPrice, maxPrice, and beds filters.
  • A specific set of listings you already have IDs for: propertyIds mode.
  • Everything behind a Realtor.com search you built in the browser: url mode with startUrls.
  • For-rent listings instead of for-sale: set listingStatus to forRent.

Scheduling and integrations

Run it on a schedule (for example a daily new-listing pull per ZIP), or connect the dataset to Google Sheets, HubSpot, Make, Zapier, and webhooks through Apify integrations to keep your real estate lead list fresh automatically. No API key setup is needed — set your input and run.

Notes on coverage

  • United States listings only.
  • Agent email is found where available. Not every listing exposes an agent email through the provider; when it is missing the field is null while phones, brokerage, and property data still come back. Treat agentEmail as "found where available" rather than a guaranteed field on every row.
  • Optional fields depend on the source. estimateValue, rentEstimate, propertyTax, hoaFee, schools, and priceHistory are populated when Realtor.com carries them for that property and are null or empty otherwise.
  • Free plan preview. Free-plan runs are capped at 15 properties and mask the email so you can inspect the exact output shape before upgrading.