Airbnb Professional Host Scraper
Pricing
$39.99/month + usage
Airbnb Professional Host Scraper
Extract professional Airbnb host business contacts for B2B lead generation. Get verified company emails, phone numbers, names, addresses and registration details (RCS, SIRET). Search by city, listing URLs or host profile across 55+ Airbnb markets. Built for real estate agencies and sales teams.
Pricing
$39.99/month + usage
Rating
5.0
(1)
Developer
SilentFlow
Actor stats
1
Bookmarked
9
Total users
5
Monthly active users
6 hours ago
Last modified
Categories
Share
Turn Airbnb into a B2B lead database. Extract verified business emails, phone numbers, company names, and registration details from professional Airbnb hosts across 55+ markets. In minutes, not days.
How it works

β¨ Why use this scraper?
Spending hours scrolling Airbnb looking for property managers? Copy-pasting host details one by one? Getting incomplete data from other scrapers?
- π§ Verified business contacts in every result. Company email, phone, address, and registration numbers (RCS, SIRET, SIREN) extracted directly from Airbnb listing pages.
- π’ Professional hosts separated from individuals. Each result includes a host type classification and contact quality score (email_and_phone, email_only, phone_only).
- π 55+ Airbnb markets worldwide. Company detection adapts to local business formats: FR (SAS/SARL/SCI), ES (SL/SRL), EN (LLC/LTD), DE (GmbH/AG), IT (SRL/SPA), and more.
- π One row per host, not per listing. Deduplication merges multiple listings from the same host into a single lead row with the best contact info.
- β‘ Three flexible input modes. Search by city, paste listing URLs, or scrape a host profile page. Combine multiple cities in one run.
π― Use cases
| Team | What they build |
|---|---|
| Real estate agencies | Prospect list of professional Airbnb hosts to pitch property management services |
| B2B sales teams | Qualified leads with verified emails for outreach campaigns targeting short-term rental operators |
| Market researchers | Map of professional vs. individual hosts by city, with company types and listing counts |
| Proptech startups | Database of property managers for partnership or acquisition opportunities |
| Tourism boards | Census of commercial hosts and their registration compliance in a given region |
π₯ Input parameters
What to Scrape
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | string | city | City Search, Listing URL(s), or Host Profile |
city | string[] | - | Cities or regions to search (one per line) |
listingUrls | array | - | Airbnb listing URLs to enrich |
hostProfileUrl | string | - | Host profile URL to scrape |
locale | string | fr | Market / language (55+ options). Determines the Airbnb domain and company detection rules |
Result Limit
| Parameter | Type | Default | Description |
|---|---|---|---|
maxPages | integer | 3 | Pages per city (~18 listings/page). Set to 0 for no limit |
deduplicateHosts | boolean | true | Collapse multiple listings per host into one row |
π Output data
{"listingId": "1234567","name": "Charming studio in Vieux Lyon","url": "https://www.airbnb.fr/rooms/1234567","companyName": "Lyon Apparts SAS","companyEmail": "contact@lyon-apparts.fr","companyPhone": "+33 4 78 12 34 56","companyAddress": "12 Rue de la Republique, 69002 Lyon","companyRCS": "RCS Lyon 831 626 353","companySiret": "83162635300039","companySiren": "831626353","hostName": "Lyon Apparts","hostType": "professional","contactStatus": "email_and_phone","isProHost": true,"isSuperhost": true,"yearsHosting": 5,"city": "Lyon","neighborhood": "Vieux Lyon, Auvergne-Rhone-Alpes","latitude": 45.7623,"longitude": 4.8271,"rating": 4.92,"numberOfReviews": 187,"roomType": "Entire home/apt","pricePerNight": "85 EUR","photos": ["https://a0.muscache.com/..."],"scrapedAt": "2026-04-01T12:00:00Z"}
ποΈ Data fields
| Category | Fields |
|---|---|
| Business contacts | companyName, companyEmail, companyPhone, companyAddress |
| Registration | companyRCS, companySiret, companySiren, companyRegister, companyType |
| Host info | hostName, hostId, hostType, isProHost, isSuperhost, yearsHosting, hostProfileUrl |
| Contact quality | contactStatus (email_and_phone, email_only, phone_only, no_contact), emailDomain, contactFirstName, contactLastName |
| Location | city, neighborhood, searchCity, latitude, longitude |
| Performance | rating, numberOfReviews, badges, hasGuestFavorite |
| Listing | listingId, name, url, description, roomType |
| Pricing | price, pricePerNight, priceFull, taxes, priceTotal, pricePerNightValue, numberOfNights |
| Media | photos, mainPhoto |
| Dedup | listingCount, listingUrls (when deduplication is enabled) |
| Meta | scrapedAt |
π Examples
Find professional hosts in Lyon
{"mode": "city","city": ["Lyon"],"locale": "fr","maxPages": 3}
Scan multiple Spanish cities
{"mode": "city","city": ["Barcelona", "Madrid", "Valencia"],"locale": "es","maxPages": 5,"deduplicateHosts": true}
Enrich a list of Airbnb URLs
{"mode": "bulkUrls","listingUrls": ["https://www.airbnb.fr/rooms/12345678","https://www.airbnb.es/rooms/87654321"],"locale": "fr"}
Get all listings from a specific host
{"mode": "hostProfileUrl","hostProfileUrl": "https://www.airbnb.fr/users/show/12345678","locale": "fr"}
π» Integrations
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("silentflow/airbnb-professional-host-scraper").call(run_input={"mode": "city","city": ["Lyon"],"locale": "fr","maxPages": 3})for host in client.dataset(run["defaultDatasetId"]).iterate_items():if host.get("isProHost"):print(f"{host['companyName']}: {host.get('companyEmail', 'N/A')}")
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('silentflow/airbnb-professional-host-scraper').call({mode: 'city',city: ['Barcelona'],locale: 'es',maxPages: 5});const { items } = await client.dataset(run.defaultDatasetId).listItems();const proHosts = items.filter(i => i.isProHost);console.log(`Found ${proHosts.length} professional hosts`);
π Performance & limits
| Metric | Value |
|---|---|
| Listings per page | ~18 |
| Enrichment speed | ~2-4 listings/second |
| Supported markets | 55+ |
| Data fields per result | 40+ |
| Company detection | 7 countries (FR, ES, EN, DE, IT, PT, NL) |
π‘ Tips for best results
- Start with 2-3 pages per city. Each page returns ~18 listings. Scale up once you confirm the data matches your needs.
- Enable deduplication for outreach. One row per host means cleaner lead lists. Disable it only for market-level analysis.
- Match the locale to your target market. Use
frfor France,esfor Spain,enfor UK/US. This controls which Airbnb domain is scraped and how companies are detected. - Use bulkUrls mode for targeted enrichment. If you already have a list of Airbnb URLs, paste them directly instead of running a full city search.
- Large cities can have 50+ pages. Paris, London, Barcelona have thousands of listings. Limit with maxPages to keep runs focused.
β FAQ
Q: How does pro host detection work? A: The scraper reads the host type classification and "Professional Host Details" section on each listing page. Only hosts with verified business registrations are flagged as professional.
Q: Why are some pro hosts missing emails or phones? A: Not all professional hosts provide all contact fields to Airbnb. The scraper extracts everything available on the page.
Q: What does contactStatus mean?
A: It tells you what contact info was found: email_and_phone (both), email_only, phone_only, or no_contact (professional host but no direct contact available).
Q: Can I scrape any Airbnb market? A: Yes. 55+ locales are supported. Company detection (legal entity parsing) is available for FR, ES, EN, DE, IT, PT, and NL markets.
Q: What happens with deduplication enabled? A: Multiple listings from the same host are merged into one row. The result keeps the best contact info found across all their listings, plus a listing count and URLs list.
π¬ Support
Need something this scraper does not do yet? We ship features fast.
- Feature requests go straight to our backlog
- Enterprise needs? We do custom integrations
Check out our other scrapers: SilentFlow on Apify