Realtor.com Agents Scraper — Real Estate Agent Leads avatar

Realtor.com Agents Scraper — Real Estate Agent Leads

Pricing

from $4.00 / 1,000 agent results

Go to Apify Store
Realtor.com Agents Scraper — Real Estate Agent Leads

Realtor.com Agents Scraper — Real Estate Agent Leads

Scrape Realtor.com agents by US city, ZIP or URL for real estate agent leads: brokerage, rating, reviews, 12-month sales, phone. About USD 5 per 1,000 agents.

Pricing

from $4.00 / 1,000 agent results

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Security

Limited permissions

Share

Realtor.com Agents Scraper builds real estate agent lead lists from Realtor.com's public agent directory by US city, state, ZIP code or directory URL: name, brokerage, rating, review and testimonial counts, sales in the last 12 months, price range, recent markets, photo and profile link, plus optional public phone, website and office address. It is built for mortgage, title, insurance and proptech sales teams, brokerage recruiters and market researchers, and it costs about USD 5.00 per 1,000 agents on the Free tier.

Runs are fast: the default 25-agent run for Austin, TX finished in about 6 seconds.

What real estate agent data does it return?

Each dataset row is one unique agent. Optional values are null and optional lists are empty arrays, so the shape never changes between runs.

FieldWhat it contains
agentId, name, profileUrl, photoUrlRealtor.com agent ID, display name, profile link and photo
brokerageBrokerage or office name
rating, reviewCount, testimonialCountRealtor.com rating (1–5), public review and testimonial counts
salesLast12MonthsSales count shown for the last 12 months
priceRangeMin, priceRangeMax, priceRangeTextPrice band of the agent's sales, as numbers and as displayed
recentSalesLocationsCities of recent sales shown on the directory card
phone, website, officeAddressPublic contacts, filled when profile enrichment is on
languages, specialties, serviceAreasProfile enrichment fields
emailReserved; normally null because Realtor.com does not expose agent emails here
locationQuery, sourceUrl, scrapedAtInput that found the agent, directory page and UTC time

An OUTPUT record in the run's key-value store reports the status (SUCCEEDED, PARTIAL, EMPTY or FAILED), agents saved, charged events, blocked requests and warnings.

How do I get a list of realtors in a city or ZIP code?

Put US cities with state codes, or five-digit ZIP codes, in locations. Or paste Realtor.com agent-directory URLs in startUrls, which replace locations when present. Pages are followed automatically and agents are deduplicated by ID across pages and locations.

InputDefaultBounds and notes
locations["Austin, TX"]Up to 50 entries such as Miami, FL or 90210
startUrls[]Up to 50 https://www.realtor.com/realestateagents/... directory URLs, for example .../New-York_NY
maxResults251–5,000 agents per run; also your agent-charge cap
includeProfileDetailsfalseOne extra request per agent for phone, website, address, languages, specialties and service areas
maxConcurrency61–12 parallel profile requests during enrichment

Several markets in one run:

{
"locations": ["Miami, FL", "Dallas, TX", "90210"],
"maxResults": 300,
"includeProfileDetails": false
}

A directory URL with profile enrichment:

{
"startUrls": [{ "url": "https://www.realtor.com/realestateagents/New-York_NY" }],
"maxResults": 100,
"includeProfileDetails": true
}

Output example

[
{
"agentId": "56d6a6bbde071e010063fdf1",
"name": "Agent name",
"profileUrl": "https://www.realtor.com/realestateagents/56d6a6bbde071e010063fdf1",
"brokerage": "Spyglass Realty",
"phone": null,
"email": null,
"rating": 5,
"reviewCount": 15,
"testimonialCount": 35,
"salesLast12Months": 34,
"priceRangeMin": 212500,
"priceRangeMax": 850000,
"priceRangeText": "$212.5K - $850K",
"recentSalesLocations": ["Round Rock, TX", "Austin, TX"],
"locationQuery": "Austin, TX",
"sourceUrl": "https://www.realtor.com/realestateagents/Austin_TX",
"scrapedAt": "2026-10-26T07:38:54.474Z"
},
{
"agentId": "56a649a10fa417010073f11b",
"name": "Agent name",
"brokerage": "Team West Real Estate",
"rating": 5,
"reviewCount": 11,
"testimonialCount": 62,
"salesLast12Months": 11,
"priceRangeText": "$325K - $462K",
"recentSalesLocations": ["Hutto, TX", "Pflugerville, TX"],
"locationQuery": "Austin, TX"
}
]

These rows are truncated from the default run on 2026-10-26 (run L9E8SBhieurtkIk46, 25 agents, 25 agent events) with agent names replaced by a placeholder. In fast mode phone, website and officeAddress are null; turn on includeProfileDetails to fill them where Realtor.com publishes them.

When should I use this Realtor.com agent scraper?

Use it to:

  • Build territory lead lists of agents for mortgage, title, insurance, staging, photography or software sales.
  • Rank agents by production, reviews, testimonials and price band before outreach or recruiting.
  • Map brokerage presence across cities and ZIP codes, and re-run on a schedule to track changes.

Do not use it for:

  • Property listings, prices or photos of homes: this Actor returns agents only.
  • Agent email addresses: email is normally null. For an email-focused list, see Realtor Leads Scraper.
  • UAE brokers: use Dubizzle Scraper in brokers mode.
  • Private MLS data, consumer contacts or anything behind a login.

How much does it cost?

You pay per agent saved plus one start fee per run. Platform usage is included.

EventFreeBronzeSilverGold, Platinum, Diamond
Agent result (per agent)USD 0.005001USD 0.004875USD 0.00475USD 0.004
Actor start (per run)USD 0.006251USD 0.006094USD 0.005938USD 0.005

The start fee is charged once per started GB of allocated memory; the default run used 512 MB and paid one.

Worked totals on the Free tier:

  • The default 25 agents: USD 0.006251 + 25 × USD 0.005001 = about USD 0.13.
  • 1,000 agents: USD 0.006251 + 1,000 × USD 0.005001 = about USD 5.01.

Profile enrichment adds requests but no extra event. Each agent is charged once, after its row is saved, and the run stops when maxResults, Apify's maximum paid items, or your maximum total charge is reached. The status message's dollar figures assume a flat USD 0.005 per agent; your actual charge follows the tier table above (USD 0.005001 on Free, less on paid tiers).

How reliable is it?

The Actor reads Realtor.com's own agent-search data directly, without a browser, using bounded retries. A location that Realtor.com cannot match is skipped with a warning, and a run where nothing matches ends as EMPTY. If the agent search itself fails for every location, the run fails with a clear message instead of reporting an empty success. Not every agent publishes every field, so enriched fields can still be null.

Use it from an AI assistant

Realtor.com Agents Scraper works from Claude, ChatGPT, Cursor or any MCP client through Apify's MCP server. Add https://mcp.apify.com/?tools=muhammadafzal/fast-realtor-agents-api-scraper to your client, then ask, for example: "Find 50 real estate agents in ZIP code 78704 with their brokerages and last-12-month sales, sorted by sales."

Run it with the Apify API

JavaScript (apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('muhammadafzal/fast-realtor-agents-api-scraper').call({
locations: ['Austin, TX'],
maxResults: 100,
includeProfileDetails: false,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python (apify-client 3.x):

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("muhammadafzal/fast-realtor-agents-api-scraper").call(run_input={
"locations": ["Austin, TX"],
"maxResults": 100,
"includeProfileDetails": False,
})
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item)

FAQ

Can I get realtor phone numbers?

Yes, where Realtor.com publishes them. Set includeProfileDetails to true; phone, website and officeAddress are then filled from each agent's public profile.

Does it return realtor email addresses?

Normally no. Realtor.com does not expose agent emails through this data, so email stays null.

Can I search by ZIP code?

Yes. Put five-digit ZIP codes in locations, alone or mixed with cities such as Dallas, TX.

How many agents can one run collect?

Up to 5,000 across all locations, limited by how many agents Realtor.com lists for those places.

Does it scrape Realtor.com property listings?

No. It returns agent records only.

Do I need a Realtor.com account or proxy?

No. The Actor reads public directory data and needs no login, cookies or proxy settings.

Agent records are public professional data, but they still identify people. Follow Realtor.com's terms, anti-spam and telemarketing rules (such as CAN-SPAM and TCPA), and privacy law when you contact agents. This Actor collects public directory data only, does not bypass access controls, and is not affiliated with Realtor.com.

Last verified: 2026-10-27