Bayut Broker Directory Extractor
Pricing
from $3.99 / 1,000 results
Bayut Broker Directory Extractor
Bayut broker directory extractor that pulls real estate agent profiles from Bayut.com, with contact details, agency info, TruBroker status, and listing counts across UAE cities.
Pricing
from $3.99 / 1,000 results
Rating
0.0
(0)
Developer
Kawsar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract verified real estate agent profiles from Bayut.com's UAE broker directory — at scale, across multiple locations, in one run.
Bayut is the UAE's largest property portal, with over 30,000 registered brokers listed across Dubai, Abu Dhabi, Sharjah, and other emirates. This actor pulls structured broker data from any Bayut /brokers/ directory page: names, direct contact numbers, emails, WhatsApp, agency affiliations, TruBroker badge status, active listing counts, specializations, languages spoken, and professional bios.
Point it at one URL or twenty, set how many brokers you need per location, and let it run. No coding required, no API keys to manage on your end.
Why use this actor?
The Bayut broker directory is one of the most complete, up-to-date databases of licensed UAE real estate agents available publicly. Every listing agent on Bayut is registered with RERA (Real Estate Regulatory Authority), and many carry verifiable BRN numbers. That makes this data useful for more than just scraping — it is a starting point for lead qualification, competitor analysis, and market mapping.
Manual collection from the directory is not practical.
What data does this actor extract?
Each broker record contains:
| Field | Description |
|---|---|
externalID | Bayut's unique broker identifier |
name | Full name |
slug | URL identifier |
profileUrl | Link to the broker's Bayut profile page |
email | Direct contact email |
phone | Office phone number |
mobile | Mobile phone number |
whatsapp | WhatsApp contact number |
agencyName | Affiliated real estate agency |
agencySlug | Agency URL identifier |
isTruBroker | Holds Bayut's TruBroker verified badge |
isHighlyResponsive | Holds the Highly Responsive badge |
isQualityLister | Holds the Quality Lister badge |
hasBRN | Has a RERA Broker Registration Number |
specialities | Specialization codes (e.g. residential_sales, off_plan_sales) |
languages | Languages spoken |
adsCount | Total active property listings |
saleCount | Properties currently listed for sale |
rentCount | Properties currently listed for rent |
truBrokerRanking | Numerical TruBroker performance ranking |
photoUrl | Profile photo URL |
activeInEmirate | Primary emirate of activity |
bio | Professional biography |
locationUrl | The directory URL this broker was scraped from |
scrapedAt | ISO 8601 timestamp |
Use cases
- Lead generation for real estate tech companies: build contact lists of active brokers across specific districts to run CRM outreach or advertising campaigns
- Agency benchmarking: compare listing volumes, badge rates, and specializations across agencies operating in a given area
- Market mapping: identify which brokers are most active in a neighborhood — useful for investors evaluating agent density before a purchase decision
- Data enrichment pipelines: join broker profiles with property listing data to map agent-to-listing relationships at scale
- Competitive intelligence: track how many verified TruBrokers operate in a target district, or how agency market share shifts over time
- Recruitment tools: find high-performing brokers (by listing count or badge status) for headhunting or partnership outreach
- Academic research: dataset-level analysis of the UAE brokerage market, language diversity among agents, or specialization trends
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
locationUrls | string list | Dubai broker page | One or more Bayut /brokers/ directory URLs. Add one per line in the UI. |
maxItemsPerUrl | integer | 40 | Max broker profiles to extract per URL. Each page has 40 brokers; set higher to paginate. |
requestTimeoutSecs | integer | 30 | Per-request timeout in seconds. |
Single location example
{"locationUrls": ["https://www.bayut.com/brokers/dubai/"],"maxItemsPerUrl": 40}
Multi-location example
{"locationUrls": ["https://www.bayut.com/brokers/dubai/","https://www.bayut.com/brokers/abu-dhabi/","https://www.bayut.com/brokers/sharjah/","https://www.bayut.com/brokers/dubai/business-bay/","https://www.bayut.com/brokers/dubai/jumeirah-village-circle-jvc/"],"maxItemsPerUrl": 80}
Supported URL formats
Any Bayut broker directory page works as input:
https://www.bayut.com/brokers/dubai/https://www.bayut.com/brokers/abu-dhabi/https://www.bayut.com/brokers/sharjah/https://www.bayut.com/brokers/ajman/https://www.bayut.com/brokers/ras-al-khaimah/https://www.bayut.com/brokers/dubai/business-bay/https://www.bayut.com/brokers/dubai/jumeirah-village-circle-jvc/https://www.bayut.com/brokers/dubai/downtown-dubai/https://www.bayut.com/brokers/dubai/palm-jumeirah/https://www.bayut.com/brokers/dubai/dubai-marina/https://www.bayut.com/brokers/dubai/dubai-hills-estate/
District-level pages work the same as city-level pages and have their own pagination.
Output
Sample record:
{"externalID": "2354093","name": "Kieran Sheehan","slug": "kieran-sheehan-2354093","profileUrl": "https://www.bayut.com/agent/kieran-sheehan-2354093/","email": "kieran.sheehan@bhomes.com","phone": "+97144090905","mobile": "+97144090909","whatsapp": "+971545695868","agencyName": "Betterhomes - Motor City","agencySlug": "betterhomes-motor-city-11027","isTruBroker": true,"isHighlyResponsive": true,"isQualityLister": false,"hasBRN": false,"specialities": ["residential_sales", "off_plan_sales"],"languages": ["en"],"adsCount": 19,"saleCount": 12,"rentCount": 7,"truBrokerRanking": 162,"photoUrl": "https://static.bayut.com/images/agents/...","activeInEmirate": "Dubai","bio": "Kieran is an accomplished real estate professional with a proven track record...","locationUrl": "https://www.bayut.com/brokers/dubai/","scrapedAt": "2026-09-28T10:15:30.123456+00:00"}
How it works
- Takes one or more Bayut
/brokers/directory URLs as input - Fetches each page through built-in bypass infrastructure that handles Bayut's bot protection layer
- Parses the server-embedded state JSON from the rendered page — no third-party search APIs are called
- Extracts 40 broker records per page and paginates automatically using the
/page-N/URL pattern - Repeats for each input URL, stopping when
maxItemsPerUrlis reached - Pushes all structured records to the Apify dataset in real time
The actor does not use a browser. Each request is a single HTTP fetch through the bypass layer, which keeps runs fast and cost-effective.
Scale and performance
| Metric | Value |
|---|---|
| Brokers per page | 40 |
| Abu Dhabi total brokers | 3,000+ |
| Typical page fetch time | 10–20 seconds |
| Max items per URL | 1,000 |
For large-scale collection (thousands of brokers across multiple cities), run the actor multiple times or increase maxItemsPerUrl. Results accumulate in the same dataset across runs.
Understanding Bayut broker badges
Bayut awards performance badges to agents who meet specific criteria. These are captured in the output:
| Badge | Field | Criteria |
|---|---|---|
| TruBroker | isTruBroker | Awarded to agents who are highly responsive AND advertise genuine, verified properties |
| Quality Lister | isQualityLister | Awarded to agents with authentic, accurate property listings |
| Highly Responsive | isHighlyResponsive | Awarded to agents who respond quickly to buyer and renter inquiries |
The truBrokerRanking score is a numerical value — lower is better. Agents ranked under 100 are among the top performers on the platform.
FAQ
Do I need a Bayut account to run this actor? No. The actor scrapes the public-facing broker directory, which is accessible without login.
How often does Bayut update broker data? Badge status, listing counts, and contact information change as agents add listings and earn or lose badges. For up-to-date data, re-run the actor weekly or monthly.
Can I filter by TruBroker status or specialization?
Not at the input level — the actor collects all brokers for a given directory page. Filter by isTruBroker, specialities, or languages in the dataset after collection, or use Apify's dataset filtering options.
Does the actor scrape individual broker profile pages? No. It extracts all available data from the directory listing. Profile pages contain the same contact data but no additional structured fields that aren't already in the directory.
What happens if a URL is invalid? The actor logs a warning, skips that URL, and continues with the remaining ones. The run completes as long as at least one valid URL is provided.
Integrations
Connect Bayut Broker Directory Extractor with other tools using Apify integrations:
- Google Sheets: push broker profiles directly into a spreadsheet for review or CRM import
- Make / Zapier: trigger workflows when new broker data is ready — push to a CRM, send a Slack alert, or update a database
- Airbyte: stream broker data into a data warehouse for ongoing analysis
- Webhooks: call any endpoint when a run completes