Zillow Agents Finder & Reviews Scraper
Pricing
from $2.99 / 1,000 results
Zillow Agents Finder & Reviews Scraper
Zillow Agents Finder & Reviews Scraper extracts Zillow agent profiles and reviews, including agent names, brokerages, ratings, review counts, customer feedback, phone numbers, service areas, and profile URLs. Ideal for lead generation, market research, and competitor analysis.
Pricing
from $2.99 / 1,000 results
Rating
0.0
(0)
Developer
SimpleAPI
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
Zillow Agents Scraper — Ratings, Reviews and Contact Data
Zillow Agents Finder & Reviews Scraper finds real estate agents and mortgage lenders on Zillow — by profile URL, screen name, name, or a location-based directory search — and pulls each agent's real individual customer reviews (reviewer, star rating, text, date, sub-ratings, agent response) into a linked dataset. It's built for brokerages vetting agents, agents benchmarking their own reviews against competitors, and lead-generation teams sourcing contact data by specialty and location.
What is Zillow Agents Finder & Reviews Scraper?
Zillow Agents Finder & Reviews Scraper is an Apify Actor that searches Zillow's agent or lender directory, or looks up specific profiles directly, and optionally pulls each one's real individual customer reviews. Key capabilities:
- Search agents or lenders by profile URL,
@screenName, free-text name, or a pure location-based directory crawl - Filter the agents directory by specialty, language, top-agent flag, and buyer/seller focus
- Get full agent profile detail — sales stats, licenses, service areas, contact info, bio — or a lighter compact card
- Fetch real individual customer reviews per agent (reviewer name, rating, text, date, sub-ratings, agent response), linked back to the agent
- Get computed rating tier and review velocity, honestly null when the underlying data isn't available
- Optional AI sentiment/theme tagging on review text and agent bios, using your own AI provider key
What data can I extract with Zillow Agents Finder & Reviews Scraper?
| Field | Example Value | Use Case |
|---|---|---|
name / business / screenName | "Jane Doe" / "REMAX Edge" / "@janedoe_realtor" | Identify the agent or lender |
rating / reviews | 4.9 / {"count": 128} | Core reputation signals |
ratingTier | "Elite" | Computed tier: Elite (4.8+), Strong (4.3-4.79), Standard (<4.3) |
reviewVelocity | 12.8 | Reviews per year of experience — a reputation-momentum signal |
phone / email / address | contact fields | Direct contact data (full detail mode) |
serviceAreas / licenses / salesStats | area list / license data / sales stats object | Deeper agent qualification data (full detail mode) |
aboutMe / languages / specialties | bio text / language list / specialty list | Positioning and fit signals |
reviewerName / rating / reviewText / date | "John Smith" / 5 / "Great experience!" / "2026-06-01" | Individual review data (child rows) |
subRatings / agentResponse | {"communication": 5, "negotiation": 5} / agent's reply text | Deeper review context |
aiSentiment / aiThemes | "positive" / ["responsive", "knowledgeable"] | Optional LLM-based review/bio tagging |
Honest derived metrics — never fabricated when data is missing
ratingTier buckets an agent's real rating into Elite (4.8+), Strong (4.3-4.79), or Standard (below 4.3) — and is left null for agents with zero reviews, never assigned a default tier. reviewVelocity is computed as review count divided by years of experience, giving a reputation-momentum signal beyond raw review count — but it's honestly null when years-of-experience isn't a known value for that agent, never estimated. Both are computed at zero extra request cost from data already fetched.
Real individual reviews, linked to their agent
fetchIndividualReviews (on by default) fetches each agent's real /reviews subtab and emits one row per genuine customer review — not a duplicate profile-summary card, which is what a plain review-count scraper would give you. Each review row links back to its agent via parentId, and reviews are also mirrored to a separate linked child dataset for convenience. This costs one extra request per agent.
Why not build this yourself?
Zillow has no public developer API for third-party access to its agent/lender directory or review data at all — this isn't a rate-limited or partner-gated API, it simply doesn't exist for general developers. Building an equivalent tool yourself means handling Zillow's directory pagination, correctly distinguishing the agents versus lenders pipelines (which have genuinely different field shapes), and building the rating-tier/review-velocity derived metrics with honest null-handling. All of that is already implemented in this Actor's source.
How to use data extracted from Zillow?
Brokerage and team vetting
Search agents in your target market with topAgentsOnly and agentSpecialty set to your recruiting focus, using ratingTier/reviewVelocity to shortlist candidates worth a closer look before outreach.
Competitive benchmarking for agents
Pull your own profile alongside competitor agents in the same location to compare rating/reviewVelocity/individual review sentiment, informing where your own reputation stands in the local market.
Lead generation and referral partnerships
Search mortgage lenders by location with lenderSortBy: "rating" to build a shortlist of well-reviewed lending partners for a referral relationship.
AI agents and automated pipelines
An agent can call this Actor to pre-screen real estate agents before triggering a recruiting or partnership workflow, filtering on ratingTier and aiSentiment (when enabled) across individual reviews to flag only the strongest candidates.
🔼 Input sample
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
targets | No | array | Profile URLs, @screenNames, names, or empty for pure location search | ["@REMAX EDGE"] |
searchMode | No | string (enum) | agents (default) or lenders | "agents" |
searchLocation | No | string | Geo seed for directory search; required unless targets are direct profiles | "New York" (default) |
maxAgentProfiles | No | integer (0-10,000) | Max profiles returned across all queries; 0 = unlimited | 20 (default) |
includeFullProfileDetail | No | boolean | Full profile detail vs. compact card | — |
agentSpecialty / agentLanguage | No | string (enum) | Single specialty/language filter (agents only) | "luxury-homes", "spanish" |
topAgentsOnly / buyerFocusedAgents / sellerFocusedAgents | No | boolean | Directory flag filters (agents only) | false (defaults) |
fetchIndividualReviews | No | boolean | Fetch real individual reviews per agent | true (default) |
maxReviewsPerAgent | No | integer (0-500) | Cap on review rows per agent; 0 = unlimited | 10 (default) |
includeDerivedMetrics | No | boolean | Compute ratingTier/reviewVelocity | true (default) |
enableAiReviewTagging | No | boolean | LLM sentiment/theme tagging on reviews and bios | false (default) |
aiModel | No | string (enum) | AI provider/model for tagging | "claude-haiku-4-5" (default) |
aiApiKey | No | string (secret) | Your own AI provider API key | "(your API key)" |
lenderSortBy | No | string (enum) | Lender directory sort order (lenders only) | "rating" |
lenderFieldSelection | No | array | Field allowlist for lender records; empty = all fields | ["companyName", "rating"] |
proxyConfiguration | No | object | Auto-escalates direct → datacenter → residential on blocks | {"useApifyProxy": true} |
{"searchMode": "agents","searchLocation": "New York","maxAgentProfiles": 50,"topAgentsOnly": true,"fetchIndividualReviews": true}
Common pitfall: maxAgentProfiles caps agent/lender profiles, not individual reviews — a run with 50 agents and maxReviewsPerAgent: 10 can produce up to 500 additional review rows, uncapped by the profile limit.
🔽 Output sample
Output is typed, normalized JSON with agent/lender profile rows and linked individual review rows (exportable as JSON, CSV, or Excel).
{"type": "agent","isChild": false,"name": "Jane Doe","business": "REMAX Edge","screenName": "@janedoe_realtor","url": "https://www.zillow.com/profile/janedoe_realtor","rating": 4.9,"ratingTier": "Elite","reviews": {"count": 128},"reviewVelocity": 12.8,"location": "New York, NY","phone": "(212) 555-0100","scrapedAt": "2026-07-26T14:02:11Z"}
Individual review rows carry parentId, reviewerName, rating, reviewText, date, subRatings, agentResponse, and (when enabled) aiSentiment/aiThemes. Full profile detail mode adds email, phones, address, serviceAreas, licenses, salesStats, aboutMe, languages, specialties, and yearsOfExperience. Lender records carry nmlsLicense and other lender-specific fields.
How do you filter and target specific agents?
searchMode is the category axis — agents versus mortgage lenders, each with genuinely different filter sets. agentSpecialty/agentLanguage/topAgentsOnly/buyerFocusedAgents/sellerFocusedAgents are the real quality/relevance filters for agents; lenderSortBy/lenderFieldSelection serve the same role for lenders. searchLocation is the scope-precision control for directory search. Volume is controlled by maxAgentProfiles (profiles) and maxReviewsPerAgent (reviews per profile) independently.
{ "searchMode": "agents", "searchLocation": "Los Angeles, CA", "agentSpecialty": "luxury-homes", "topAgentsOnly": true }
{ "searchMode": "lenders", "searchLocation": "Chicago, IL", "lenderSortBy": "rating", "lenderFieldSelection": ["companyName", "rating", "phone"] }
{ "targets": ["@REMAX EDGE"], "fetchIndividualReviews": true, "maxReviewsPerAgent": 50, "enableAiReviewTagging": true }
▶️ Want to try other property/real-estate scrapers?
| Scraper Name | What it extracts |
|---|---|
| Zillow Search Scraper: Investment Analyzer | Property listings with investment-analysis metrics |
| Airbnb Scraper: Host Full Listings | Comparable property-listing data for Airbnb |
| Airbnb Occupancy & Rate Analytics Scraper | Comparable occupancy-based analytics for Airbnb |
| Google Hotels Scraper — Hotels, Nearby Attractions and Location Data | Comparable property-listing data for hotels |
| LinkedIn Company About Scraper With Firmographic Enrichment | Comparable business-profile enrichment for LinkedIn |
| Instagram Profile Scraper & Account Privacy Checker | Comparable profile-verification data for Instagram |
How to extract Zillow data programmatically
Every run is a standard Apify Actor call — one API request with your token, JSON input, JSON results back.
Python example
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_API_TOKEN>")run_input = {"searchMode": "agents","searchLocation": "New York","maxAgentProfiles": 50,"topAgentsOnly": True,}run = client.actor("<YOUR_USERNAME>/zillow-agents-finder-reviews-scraper").call(run_input=run_input)for row in client.dataset(run["defaultDatasetId"]).iterate_items():if row.get("type") == "agent":print(row["name"], row["rating"], row["ratingTier"])
Export to spreadsheets or CRM
Export the dataset directly as CSV or Excel, then map name/phone/email to your CRM's contact fields and ratingTier/reviewVelocity to a scoring column for recruiting or partnership prioritization.
Is it legal to scrape Zillow agent and reviewer data?
Agent contact details, customer reviewer names, and review text are personal data, so GDPR and CCPA obligations apply to storing and using this data. Public Zillow agent/lender profiles and reviews are visible to any logged-out visitor, but downstream storage of individual reviewers' identities and content should follow applicable data-protection rules. Consult legal counsel for commercial applications involving bulk storage of personal data.
❓ FAQ
What does ratingTier actually mean?
A computed bucket from the agent's real rating: Elite (4.8+), Strong (4.3-4.79), Standard (below 4.3). Agents with zero reviews get null, never a default tier.
How is reviewVelocity calculated?
Review count divided by years of experience — a reputation-momentum signal. It's honestly null when years-of-experience isn't a known, real value for that agent, never estimated.
Are the individual reviews genuinely real customer reviews?
Yes — fetched from each agent's real /reviews subtab, not a duplicate of the profile-summary review count. Each review row includes the reviewer's name, real star rating, review text, date, and sub-ratings.
How many reviews can I get per agent?
maxReviewsPerAgent (0-500, default 10) caps this; 0 collects all reviews available on the page.
Do I need a Zillow account to use this?
No — the Actor reads Zillow's public agent, lender, and review pages, requiring no login.
Does Zillow Agents Finder & Reviews Scraper work with Claude, ChatGPT, and AI agent frameworks?
It has no dedicated MCP server registration in this Actor's current setup, but it is callable as a standard Apify API endpoint by any agent framework that can make an authenticated HTTP request and parse JSON.
How does this compare to other Zillow agent scrapers?
No independently verifiable competitor listing could be confirmed at the time of writing, so no specific comparison is made here. This Actor's distinguishing feature is genuine individual-review extraction linked to each agent, plus honest derived metrics that never fabricate a value when the underlying data is missing.
Can I search for mortgage lenders instead of agents?
Yes — set searchMode to lenders; the agent-specific filters (agentSpecialty, topAgentsOnly, etc.) are ignored in this mode, and lenderSortBy/lenderFieldSelection apply instead.
Conclusion
Zillow Agents Finder & Reviews Scraper turns a location or profile search into structured agent/lender data plus real, linked individual customer reviews — honest derived metrics that never fabricate a value when data is missing. It's built for brokerages, agents, and lead-generation teams who need genuine reputation data, not a summary card. Start a run with your target location or profiles to get agents, lenders, and reviews back in one pass.