Realtor.com Agent Scraper avatar

Realtor.com Agent Scraper

Pricing

from $3.99 / 1,000 results

Go to Apify Store
Realtor.com Agent Scraper

Realtor.com Agent Scraper

🏑 Realtor.com Agent Scraper extracts real estate agent profiles from Realtor.comβ€”names, specialties, contact details, and more. ⚑ Speedy data collection for lead gen, market research, and sales outreach. Save time, grow your pipeline! πŸš€πŸ“ˆ

Pricing

from $3.99 / 1,000 results

Rating

0.0

(0)

Developer

ScraperForge

ScraperForge

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

5 days ago

Last modified

Share

Realtor.com Agent Scraper β€” Real Estate Agent Contacts, Sales Volume & Service Areas by ZIP

Extract real estate agent profiles from Realtor.com by ZIP code. Each agent comes back with name and agent type, office and mobile phone numbers, e-mail, website, brokerage, listing and sold counts, review count, service areas, serviced ZIP codes and profile photo.

Enter ZIP codes, choose how to rank the results, and get a contact-ready agent list for any US market.


What is Realtor.com Agent Scraper?

Realtor.com's Find a Realtor directory is where agents publish their contact details specifically so buyers, sellers and partners can reach them β€” and it is one of the few places where an agent's actual production numbers are visible alongside their phone number.

This Actor turns that directory into structured data. You give it ZIP codes; it walks the agent listings for each one and returns full profiles, streaming rows into your dataset as they are collected.

Because it works ZIP by ZIP, you can define a territory precisely β€” a single postcode, a metro area, or a whole state expressed as a list.


What data can you extract?

GroupFields
πŸ‘€ Identityagent_name (name and agent type combined), agent_photo
☎️ Contactoffice_phone, mobile_phones, email, website
🏒 Brokerageoffice_company_name, company_website
πŸ“Š Productionlisting_count, sold_count
⭐ Reputationreview_count
πŸ“ Coverageareas_serviced, zip_codes_serviced

Why teams scrape Realtor.com agents

For recruiting agents to a brokerage

sold_count is the field that matters. Recruiting is about production, and a list ranked by closed sales β€” with a mobile number attached β€” is a working pipeline rather than a directory.

For proptech and SaaS sales

Agents are the buyers for CRMs, marketing tools, photography, virtual staging and lead services. listing_count separates active agents from dormant licences, which is the single most useful qualification filter in this market.

For referral networks

Agents need trusted partners in cities where they do not operate. areas_serviced and zip_codes_serviced let you find genuine local specialists rather than agents who merely list a metro area.

For mortgage and title professionals

Agents drive referrals for lending and closing services. Targeting by ZIP and production volume puts you in front of the ones actually transacting.

For market research

Agent density, average review counts and production distribution by ZIP describe how competitive a local market is β€” useful before entering it.

For investors

High-volume agents in a target ZIP are the people who see inventory first. Their contact details are the entry point to off-market conversations.


How to scrape Realtor.com agents step by step

  1. Decide your territory and collect the ZIP codes that cover it.
  2. Paste them into Zip Codes β€” bulk input is supported.
  3. Set Max Items Per Zip Code. Start at 10–25 to check output quality, then scale.
  4. Choose a Sort Order β€” MOST_SALES for production, RATINGS_REVIEWS for reputation.
  5. Click Start, then export the Output tab as CSV, Excel or JSON.

⬇️ Input

Example input

{
"zipCodes": ["07101", "07102", "07103"],
"maxItemsPerZipcode": 50,
"sortOrder": "MOST_SALES"
}

Input reference

FieldTypeDefaultDescription
zipCodesarrayβ€” (required)ZIP codes to scrape agents from, e.g. ["07101", "00501"]. Bulk input supported β€” one entry per ZIP.
maxItemsPerZipcodeinteger10Maximum agents extracted per ZIP code.
sortOrderstringRELEVANT_AGENTSHow Realtor.com ranks the results: RELEVANT_AGENTS, RATINGS_REVIEWS, MOST_SALES, MOST_RECENT_ACTIVITY, TESTIMONIALS_RECOMMENDATIONS.
proxyConfigurationobjectno proxyStarts with no proxy. If Realtor.com blocks a request, the Actor falls back to datacenter and then residential with 3 retries, and sticks with residential for the rest of the run once it escalates.

Sort order is a real targeting lever, not cosmetic. MOST_SALES gives you producers, RATINGS_REVIEWS gives you agents with social proof, and MOST_RECENT_ACTIVITY gives you the ones transacting right now.


⬆️ Output

Example output

{
"agent_name": "Jordan Example, Agent",
"email": "jordan@examplerealty.com",
"website": "https://jordanexample.com",
"office_phone": "(973) 555-0142",
"mobile_phones": "(973) 555-0188",
"office_company_name": "Example Realty Group",
"company_website": "https://examplerealty.com",
"listing_count": 14,
"sold_count": 128,
"review_count": 42,
"areas_serviced": "Newark, NJ; Harrison, NJ; Kearny, NJ",
"zip_codes_serviced": "07101, 07102, 07029, 07032",
"agent_photo": "https://ap.rdcpix.com/…/agent-photo.jpg"
}

Illustrative values β€” a live run returns current Realtor.com data.


Usage recipes

Recruit top producers in a metro

{
"zipCodes": ["07101", "07102", "07103", "07104", "07105"],
"maxItemsPerZipcode": 50,
"sortOrder": "MOST_SALES"
}

Export and sort by sold_count descending. Filter for rows where mobile_phones is present β€” those are directly reachable.

Find active agents for a SaaS pitch

Run with MOST_RECENT_ACTIVITY, then keep rows where listing_count is above zero. Agents with live inventory have an immediate need for marketing tools; agents with none do not.

Build a referral network for one city

{
"zipCodes": ["94102", "94103", "94110"],
"maxItemsPerZipcode": 100,
"sortOrder": "RATINGS_REVIEWS"
}

Cross-check zip_codes_serviced to confirm an agent genuinely covers the neighbourhood, rather than just appearing in its search results.

Territory coverage analysis

Run every ZIP in your target region with a modest cap, then count agents per ZIP. Sparse ZIPs are underserved markets; dense ones are competitive.

E-mail-first outreach list

Filter the export for rows where email is not empty and sold_count clears your threshold. That combination is a small, high-quality list.


How does this compare to Realtor.com's official API?

Realtor.com does not offer a public, self-serve API for agent directory data. Its data products are commercial and partner-oriented, and MLS-derived information is governed by separate licensing agreements that restrict redistribution.

This Actor reads the public agent directory β€” profiles that agents publish deliberately to be found, including the contact details they want prospects to use. It needs no key, no approval and no MLS relationship. If you need licensed MLS listing data, that is a different product and route entirely.


Integrate and automate

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_API_TOKEN>")
run = client.actor("scraperforge/realtor-com-agent-scraper").call(run_input={
"zipCodes": ["07101", "07102"],
"maxItemsPerZipcode": 50,
"sortOrder": "MOST_SALES",
})
for agent in client.dataset(run["defaultDatasetId"]).iterate_items():
print(agent["agent_name"], "| sold:", agent["sold_count"],
"| listings:", agent["listing_count"], "|", agent.get("mobile_phones"))

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_API_TOKEN>' });
const run = await client.actor('scraperforge/realtor-com-agent-scraper').call({
zipCodes: ['07101'],
maxItemsPerZipcode: 50,
sortOrder: 'MOST_SALES',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

REST API

curl -X POST "https://api.apify.com/v2/acts/scraperforge~realtor-com-agent-scraper/runs?token=<YOUR_APIFY_API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"zipCodes":["07101"],"maxItemsPerZipcode":50,"sortOrder":"MOST_SALES"}'

n8n, Make, Zapier and AI agents

Call the Actor from n8n, Make, Zapier or an MCP-capable agent to push new agents straight into your CRM as territories are added.

Schedules and webhooks

Attach a Schedule to refresh a territory monthly, and use webhooks or the Google Sheets / Airtable / Slack integrations to route leads to the right salesperson.


Pricing and what you are charged for

Pay-per-event: a small Actor-start charge plus a charge per agent row delivered to your dataset. You pay for agents, not run time.

Cost control: maxItemsPerZipcode multiplies across your ZIP list β€” 40 ZIPs at 50 agents each is 2,000 rows. Start with a handful of ZIPs, confirm the sort order gives you the right kind of agent, then expand.

Current rates are on the Pricing tab of this Actor's page, and Apify shows an estimate before and during every run.


Limits, reliability and blocking

  • maxItemsPerZipcode is per ZIP, so a large ZIP list multiplies your row count quickly.
  • Coverage follows the directory. Agents who have not built out a Realtor.com profile will have sparse fields, and not every agent publishes an e-mail address or mobile number.
  • listing_count and sold_count are as published by Realtor.com, and reflect activity attributed to that profile β€” treat them as strong indicators rather than audited figures.
  • areas_serviced and zip_codes_serviced are self-declared by the agent, so an agent may claim broad coverage. Cross-check against the ZIP that produced the row.
  • Proxy escalation is sticky. Once the Actor moves to residential after a block, it stays there for the remaining requests rather than re-testing a failing route.
  • US-focused. Realtor.com is a US directory, so ZIP codes are the natural geography.
  • Default run options are 4 GB memory and a 1-hour timeout; raise the timeout for long ZIP lists.

This Actor collects publicly available professional contact information β€” details agents publish on a public directory precisely so that clients and partners can contact them. It does not log in, submit enquiries, or access private or MLS-licensed data.

Names, phone numbers and e-mail addresses are still personal data under CCPA/CPRA, GDPR (for any EU-based individuals) and comparable laws. Before outreach: establish a lawful basis, identify yourself clearly, provide a working opt-out and honour it, check do-not-call registries before phoning, and comply with CAN-SPAM for e-mail. US real-estate professionals are also subject to their own solicitation rules, and licensed agents may be on DNC lists despite publishing a number. You are responsible for ensuring your use complies with Realtor.com's terms and applicable law.


❓ Frequently asked questions

Do I need a Realtor.com account?

No. The Actor reads the public agent directory without credentials.

Can I search by city instead of ZIP?

The Actor targets ZIP codes, which is more precise. Convert a city into its ZIP list and pass them all in one run.

Which sort order should I use?

MOST_SALES for recruiting and production-based targeting, RATINGS_REVIEWS for reputation-led outreach, MOST_RECENT_ACTIVITY to find agents transacting right now.

Do I get mobile numbers?

Yes, in mobile_phones, when the agent publishes one. Office numbers are in office_phone. Not every profile has both.

Are e-mail addresses included?

Yes when published β€” but many agents route contact through a form instead, so expect blanks and filter accordingly.

What is the difference between listing_count and sold_count?

listing_count is current active inventory (a proxy for present activity); sold_count is closed transactions (a proxy for overall production).

Can I verify an agent really covers a neighbourhood?

Check zip_codes_serviced against the ZIP that produced the row. The field is self-declared, so treat broad claims with mild scepticism.

Do I need a proxy?

Not to start. The Actor escalates automatically to datacenter and then residential when blocked.

Which export format should I use?

CSV or Excel β€” the rows are flat and drop directly into a CRM importer.


Browse the full collection on the ScraperForge profile.


πŸ’¬ Feedback

Need extra fields, city-level targeting, or a custom real-estate lead pipeline? Open an issue on the Issues tab of this Actor.