Airbnb Scraper: Listings, Prices, Occupancy & Revenue
Pricing
from $3.00 / 1,000 results
Airbnb Scraper: Listings, Prices, Occupancy & Revenue
Every Airbnb listing in a city with prices, ratings, host & amenities, plus 12-month availability, estimated occupancy and annual revenue per listing. Market summary per area and competitor tracking. Gets past the ~300-result limit. CSV, Excel, JSON, API.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Francesco Ayrton Davoli
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a month ago
Last modified
Categories
Security
Limited permissionsShare
Extract every Airbnb listing in a city or area with prices, ratings, photos and, uniquely, 12-month availability, estimated occupancy and estimated annual revenue for each listing. Built for short-term-rental investors, hosts, property managers and analysts who need an affordable alternative to AirDNA-style market data.
- 🗺️ Whole-city coverage: Airbnb shows at most ~300 results per map view. This Actor detects truncated areas and splits them automatically, so you get all listings, not just the first pages.
- 💶 Prices: price per night, stay total, cleaning fee, service fee, discounts (exact for your dates when check-in/out are set).
- 📅 Availability & occupancy: free nights in the next 30/90/365 days, estimated occupancy, next available date, typical minimum stay.
- 📈 Estimated annual revenue per listing (price per night × estimated occupied nights).
- 📊 Market summary per location: median price per night and quartiles, median price by number of bedrooms, average occupancy, median and top-quartile annual revenue, share of Superhosts and Guest Favourites.
- 🔁 Competitor tracking: schedule it on the same area and get price change (€ and %), availability change and new listings since the previous run.
- 🏠 Listing details (from each listing page): property type ("Entire villa in Monopoli"), guests, bedrooms, beds, baths, review count, the 6 rating categories (cleanliness, accuracy, check-in, communication, location, value), host name, years hosting, response rate, verified/Superhost, host-level rating and reviews, full amenities list (50+ items) with quick flags (pool, A/C, sea view, hot tub, free parking, wifi, kitchen, washer, pets allowed), full description.
- ⭐ Rating, reviews, Guest Favourite and Superhost flags, coordinates, up to 10 photos.
- 🔎 Search by location name ("Bari, Italy", "Trastevere, Rome") or paste Airbnb search URLs with your filters.
- ⚡ Fast and cheap: direct calls to Airbnb's web API, no browser.
Use cases
| Who | What for |
|---|---|
| STR investors | Compare occupancy and revenue across neighbourhoods before buying |
| Hosts & property managers | Track competitor prices and availability, set your rates |
| Real estate agents | Show buyers the rental potential of an area |
| Analysts, journalists, city councils | Measure short-term-rental supply and pressure on housing |
Input
| Field | Description |
|---|---|
locations | List of places, e.g. ["Monopoli, Italy", "Polignano a Mare"] |
startUrls | Airbnb search URLs (filters and map area are kept) |
checkIn, checkOut | Optional dates for exact prices |
adults, roomType, minBedrooms, priceMin, priceMax | Optional filters |
currency | EUR, USD, GBP, CHF |
includeDetails | Listing page details: type, rooms, review count, rating categories, host, amenities (default on) |
includeCalendar | Availability & occupancy metrics (default on) |
maxItems | 0 = all listings in the area |
trackChanges, trackingId | Compare with the previous run of the same tracked search |
Output example
{"id": "53817392","url": "https://www.airbnb.com/rooms/53817392","name": "Trullo with pool near Monopoli","title": "Home in Monopoli","rating": 4.92,"reviewsCount": 137,"isGuestFavorite": true,"isSuperhost": false,"currency": "EUR","pricePerNight": 120,"priceTotal": 600,"nights": 5,"cleaningFee": 50,"availableNights30": 6,"availableNights90": 31,"estimatedOccupancy90": 0.656,"estimatedOccupancy365": 0.48,"estimatedAnnualRevenue": 21024,"nextAvailableDate": "2026-10-19","minNightsTypical": 2,"propertyType": "Entire home in Monopoli, Italy","guests": 4,"bedrooms": 2,"beds": 3,"bathrooms": 1,"ratingCleanliness": 4.95,"ratingLocation": 4.81,"hostName": "Paolo","hostYearsHosting": 4.2,"hostResponseRate": 90,"amenitiesCount": 57,"hasPool": false,"hasAirConditioning": true,"petsAllowed": true,"lat": 40.95,"lng": 17.30,"thumbnail": "https://a0.muscache.com/im/pictures/...","searchLocation": "Monopoli, Italy"}
Market summary
Saved in the run's key-value store as MARKET_SUMMARY (link in the Output tab), one object per location:
{"location": "Monopoli, Italy","listings": 812,"currency": "EUR","pricePerNightMedian": 107.5,"pricePerNightP25": 82,"pricePerNightP75": 150,"medianPricePerNightByBedrooms": {"0": 70, "1": 88, "2": 120, "3": 185, "4+": 290},"avgEstimatedOccupancy90": 0.58,"estimatedAnnualRevenueMedian": 18400,"estimatedAnnualRevenueP75": 27100,"avgRating": 4.84,"shareGuestFavorite": 0.41,"shareSuperhost": 0.33}
How occupancy is estimated
Airbnb's calendar marks each future night as available or not. Unavailable nights are either booked or blocked by the host, and Airbnb doesn't distinguish them, so estimatedOccupancy* is an upper-bound estimate. It's most reliable for active listings (recent reviews, Guest Favourite). estimatedAnnualRevenue uses the current price per night; prices vary by season, so treat it as an indication, and set check-in/out dates for exact prices.
Tips
- Results are saved progressively: if a run hits its timeout, everything found so far is already in the dataset.
- A whole city with details and calendars can take 10–30 minutes: set the run timeout to 1 hour (default).
- Start with
maxItems: 20to preview, then set 0 for the whole area. - Turn off
includeDetailsandincludeCalendarif you only need prices and ratings: runs are several times faster and cheaper. - Track competitors: enable
trackChanges, set atrackingId(e.g.monopoli-sea-view) and schedule the run daily or weekly.
Responsible use
The Actor collects publicly visible listing data only (no guest data, no host contact details). You are responsible for complying with applicable laws (including GDPR) and Airbnb's terms in how you use the data.