Realtor.com Agents Scraper - Profiles & Contact Data avatar

Realtor.com Agents Scraper - Profiles & Contact Data

Pricing

from $2.20 / 1,000 results

Go to Apify Store
Realtor.com Agents Scraper - Profiles & Contact Data

Realtor.com Agents Scraper - Profiles & Contact Data

Scrape Realtor.com agents by US city or ZIP. Extract real estate agent phones, emails, ratings, sales stats, brokerage, languages, and served areas. A Realtor.com agent API alternative for Excel, CSV, or JSON.

Pricing

from $2.20 / 1,000 results

Rating

0.0

(0)

Developer

kane liu

kane liu

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

2

Monthly active users

2 days ago

Last modified

Share

Realtor.com Agents Scraper — Profiles & Contact Data

Scrape Realtor.com real estate agent profiles by US city or ZIP — then download structured agent contact data as Excel, CSV, or JSON.

Architecture: thin Apify Actor → realtor-com-agents Cloud Run worker (HTTPS + API key).
Worker URL is config (WORKER_BASE_URL), not hardcoded-only — migrate the worker by updating Actor env without a code change. Set WORKER_PROVIDES_PROXY=1 when the worker supplies its own PROXY_URL.

This Actor is a practical Realtor.com agent API alternative for lead generation, brokerage research, and market outreach. Enter a location such as Austin, TX or a ZIP like 78701, and get agent rows with phones, office/broker, ratings, sales stats, languages, specializations, and served areas when present on the profile.

  • Search real estate agents on Realtor.com
  • Resolve city or ZIP via Realtor.com geo suggest (tx_austin marketing area or postal code)
  • Optionally enrich each agent with the AgentBranding profile (phones, MLS, office address)
  • Filter by agent name, Realtor member flag, and price band
  • Export to Excel / CSV / JSON, or connect Make, n8n, Zapier, Python, or MCP
  • Pay per event — Actor start + each Dataset agent; no subscription

Need a dedicated scraper for one website?

This Actor is the general tool for protected public pages. If you already have one specific site and a field list, a dedicated scraper is faster and more stable: listing + detail, your export format, delivered to your Apify account or as a standalone runnable client.

I confirm the tier before you pay. The clock starts after that confirmation.

Start here: Submit a custom scraper request

Starter $50Dedicated $100Hard target $200–999
Site1 simple anti-bot public site1 medium anti-bot public siteCloudflare / aggressive anti-bot / custom parser
ScopeFull listing + detail fieldsListing + detail + pagination, your field listAgreed fields, repeatable runs
DeliveryCSV/JSON · Apify Actor or standalone runnable client (script/CLI)Same, plus a sample run and short instructionsFeasibility first, then build
Time24 hours after we confirm the URL is in scope48 hours after confirmationQuoted after feasibility
Fixes30 days for small public-layout changes30 daysScoped in the quote

Hard-target sites are not a 100% uptime promise. You get a dedicated parser that can be re-run on the agreed fields. If the URL is not feasible, you get a refund or pay an assessment fee only — you will know before the build starts.

Not in Starter/Dedicated: login-walled data, native APK / Windows installer / full web apps, or two-year maintenance. Those are a separate quote.


What does the Realtor.com Agents Scraper do?

It turns a US city or ZIP agent search on Realtor.com into a clean Apify Dataset of agent profiles.

Under the hood, the Actor mints an Apify RESIDENTIAL proxy (US, sticky per location) and calls a dedicated Cloud Run worker, which:

  1. Resolves your location through Realtor.com geo suggest
  2. Runs the search_agents GraphQL query for matching profiles
  3. Optionally fetches AgentBranding enrichment for phones, office, MLS, and specializations
  4. Returns normalized records the Actor writes to the Dataset

Apify RESIDENTIAL proxy is required on cloud runs (prefilled). Direct/datacenter traffic is often blocked.


What data can you extract from Realtor.com agents?

Data pointIncluded
Agent name & profile URL
Phone(s)
Office / broker name
Ratings & review counts
For-sale / recently sold stats
Languages & specializations
Served areas
License number / state
MLS memberships
Avatar, website, social links
Bio / designations

Every Dataset row also includes scrapedAt and source = realtor.com. A RUN_SUMMARY record in the key-value store reports counts and warnings.


What you can do with it

1. Build a Realtor.com agent lead list for a city

Enter a city like Austin, TX, set max results, and export names, phones, offices, and profile URLs for outreach or CRM import.

2. Scrape agents by ZIP code

Use a ZIP such as 78701 when you need a tighter local market than a full city marketing area.

3. Enrich agent contact and brokerage details

Keep Enrich profiles enabled to pull AgentBranding fields (phones, office address, MLS, specializations) on top of search stubs.

4. Filter by name, member status, or price band

Narrow results with agentName, isRealtor, and optional minPrice / maxPrice before saving rows.

5. Feed agent data into automations

Schedule the Actor and send the Dataset to Sheets, Slack, CRM, Make, n8n, Zapier, or an AI agent via Apify MCP / API.


How to scrape Realtor.com agents (no code required)

  1. Click Try for free
  2. Enter a location (Austin, TX or 78701)
  3. Optionally set agent name filter, max results, and enrich toggle
  4. Keep Apify RESIDENTIAL proxy enabled
  5. Click Start — open the Dataset tab when the run finishes

Start with maxResults: 5–10 to verify the market, then scale up.

Free Apify plan limits (set by this Actor's developer)

LimitFree Apify planPaid Apify plan
Runs of this Actor10 runs totalUnlimited
Agents per run (maxResults)Up to 500Up to 500

These caps are enforced by the Actor developer (not Apify platform errors). When you hit the 10-run limit, the run finishes gracefully with a clear status message asking you to upgrade.


Pricing — how much does it cost to scrape Realtor.com agents?

Pay per event. No subscription.

EventPriceWhen charged
apify-actor-start$0.005When a normal run starts (scaled by allocated memory GB)
apify-default-dataset-item (result)$2.50 / 1,000 ($0.0025 each)Each agent written to the default Dataset

User pays platform usage costs: Yes — compute, residential proxy, and other platform usage are billed to the user in addition to event charges.

Example product charges (events only):

ScenarioApprox. event charge
Canary: 10 agents$0.005 + 10 × $0.0025 = $0.030
City scan: 100 agents$0.005 + $0.25 = $0.255
Cap run: 500 agents$0.005 + $1.25 = $1.255

Platform usage (especially residential proxy) is separate and depends on run duration and memory.

Free Apify plan: up to 10 runs of this Actor and 500 agents per run. Upgrade to a paid Apify plan for unlimited runs. (Limits set by the Actor developer.)


Input

FieldDescription
locationCity and state or ZIP, e.g. Austin, TX / 78701
agentNameOptional name filter
maxResults1–500 (default 20); free users capped at 500/run + 10 runs total
isRealtorRestrict to Realtor.com members
minPrice / maxPriceOptional USD price-band filters
enrichProfilesFetch AgentBranding details (default true)
proxyConfigurationApify RESIDENTIAL always used; country follows search location

Open the Input tab in Console for the full form and tooltips.


Output example

You can download the Dataset as JSON, CSV, Excel, or HTML.

{
"agentId": "5678",
"name": "Jane Smith",
"profileUrl": "https://www.realtor.com/realestateagents/jane-smith_austin_tx_5678",
"phone": "5125550100",
"officeName": "Example Realty",
"brokerName": "Example Brokerage",
"averageRating": 4.8,
"reviewsCount": 42,
"forSaleCount": 12,
"recentlySoldCount": 28,
"languages": ["English", "Spanish"],
"specializations": ["Buyer's Agent", "Listing Agent"],
"licenseNumber": "123456",
"source": "realtor.com",
"scrapedAt": "2026-07-17T00:00:00+00:00"
}

Core fields include contact (phone, phones, officePhones), brokerage (officeName, brokerName), ratings, listing stats, servedAreas, languages, specializations, license/MLS, and profileUrl.


Lead / contact fields

Every enriched agent row carries a standardized lead-completeness block so you can build outreach lists without guessing which fields exist. These fields are populated from the Realtor.com Agent Detail / Profile page (AgentBranding GraphQL) when enrichProfiles is enabled (default true). Search-only rows (enrichment off) carry leadSource: "search" and thinner contact data.

FieldTypeMeaningSource surface
phones[{value, type}]Agent phone numbers (office/mobile). Already visible on the profile — no click-reveal needed. Sample: (303) 771-9400 (office).Detail Profile
emails[{value, type}]Agent contact emails. Not exposed by Realtor.com — see Honest limitations. Always [] with leadAbsences.emails.— (闸门锁)
address{street, unit, locality, region, postalCode, country, full}Office/street address. unit = suite/门牌 (e.g. Suite 110); street = street line (e.g. 13812 Research Blvd.); full = assembled single-line address. Already visible.Detail Profile
geo{lat, lng}Latitude/longitude. Not provided by Realtor.com agent profiles — see Honest limitations. Always null with leadAbsences.geo.— (未验证)
person{name, role}Agent contact person. name = full agent name (e.g. THOMAS C ULLRICH); role = Real Estate Agent.Detail Profile + SRP
org{name, id}Office / brokerage. name = office or broker name (e.g. Team West Real Estate); id = Realtor.com office ID when available.Detail Profile + SRP
web{website, socials[]}website = agent personal website URL; socials = social profile links (Facebook, Instagram, LinkedIn, X, TikTok, YouTube).Detail Profile
leadSourceenumWhere the lead fields came from: search (SRP stub) or detail (AgentBranding enrichment).derived
leadRevealenumHow contact was obtained: visible (already on the page, no click-reveal). Realtor.com agent phones and addresses are already visible.derived
leadAbsencesobjectWhy a lead sub-field is missing. Keys are field names; values are reasons: 闸门锁 (login/lead-form gate), 未验证 (not available on the site).derived

Why phones and address are the core leads: Realtor.com agent profiles display office phone numbers and the full office street address (including suite/门牌) directly on the Detail page — no click-to-reveal, no login wall. These are the primary contact channels for agent outreach.


Reveal cost

Realtor.com agent contact data is already visible on the Agent Detail / Profile page. There is no click-reveal control, no overlay, and no XHR-after-click for phones or addresses.

  • Enrichment cost: enrichProfiles: true (default) adds one AgentBranding GraphQL call per agent on top of the search query. This is the only extra request — it fetches phones, office address, social links, license, and MLS in a single response.
  • Proxy / rate-limit impact: Enrichment doubles the per-agent request count (search + detail). With Apify RESIDENTIAL proxy, this is typically 2 requests per agent. No browser rendering is needed — the worker uses HTTP + GraphQL directly.
  • No click-reveal: Phones and addresses are served in the AgentBranding JSON response; no page interaction or JavaScript execution is required to reveal them.
  • Run duration: Dominated by the number of agents × 2 requests. A 100-agent city scan typically completes in under a minute.

Honest limitations

These lead fields are not available on Realtor.com and the Actor does not fabricate them. Missing fields are always explained in leadAbsences:

FieldReasonleadAbsences value
emailsRealtor.com does not expose agent email addresses. The profile has a "Contact" lead form that sends a message to the agent, but the agent's email is never shown. The Actor does not submit this form.闸门锁 (lead-form gate)
geo (lat/lng)Realtor.com agent profiles provide the office address as structured text but do not include latitude or longitude coordinates.未验证 (not available on site)

Other notes:

  • Search-only rows (when enrichProfiles: false) carry leadSource: "search" and do not include phones, address, or social links — only the agent name, office name, and profile URL from the SRP. Enable enrichment for full contact data.
  • Intent-filtered SRP (seller) is marked 未验证 in the coverage matrix and is not part of the default smoke path.
  • The Actor covers US only (realtor.com). No international markets.

Live View / Standby endpoints

When Standby / Live View is enabled, the Actor exposes a small OpenAPI surface for readiness and discovery:

EndpointPurpose
GET /Readiness / service info (Apify probe)
GET /healthHealth check
GET /input-exampleLow-cost example input
GET /openapi.jsonDeployed OpenAPI document

Scraping still runs through a normal Actor run — Live View does not scrape Realtor.com by itself.


Connect from code

Actor ID: lentic_clockss/realtor-com-agents-scraper

from apify_client import ApifyClient
client = ApifyClient("<APIFY_TOKEN>")
run = client.actor("lentic_clockss/realtor-com-agents-scraper").call(
run_input={
"location": "Austin, TX",
"maxResults": 10,
"enrichProfiles": True,
"proxyConfiguration": {
"useApifyProxy": True,
"apifyProxyGroups": ["RESIDENTIAL"],
},
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("name"), item.get("phone"), item.get("profileUrl"))

Use the same Actor ID in Make, n8n, Zapier, or Apify MCP for AI-agent workflows.


FAQ

Why am I limited to 10 runs / 500 agents on the free plan?

Those limits are set by this Actor's developer for free Apify plan users (not an Apify platform bug). Upgrade to a paid Apify plan for unlimited runs of this Actor. Event pricing (PPE) is separate from these free-tier caps.

Is there a free Realtor.com agent API?

Realtor.com does not offer a simple public agent-directory API for bulk export. This Actor gives you structured agent profiles through Apify runs, Dataset exports, and integrations.

Can I scrape agents by ZIP as well as city?

Yes. Pass a 5-digit US ZIP (e.g. 78701) or a City, ST string. The Actor resolves both through Realtor.com geo suggest.

Why is a residential proxy required?

Realtor.com blocks many datacenter and direct IPs. Apify RESIDENTIAL is required for reliable cloud runs.

Does enrichProfiles cost more?

Enrichment uses extra GraphQL profile calls and may use more proxy/compute, but event pricing still charges only Actor start + each Dataset item. Platform usage is billed separately when enabled.

Can I schedule daily Realtor.com agent scrapes?

Yes. Create an Apify schedule with the same input and send the Dataset to Sheets, Slack, a CRM, or your pipeline.

Use this Actor for legitimate research and outreach only. Respect Realtor.com terms of use and applicable law. Results may include publicly displayed professional contact information; do not use personal data without a lawful basis.


Browse all Actors: apify.com/lentic_clockss