Airbnb Scraper: Listings, Prices & Occupancy Calendar
Pricing
from $6.00 / 1,000 listing scrapeds
Airbnb Scraper: Listings, Prices & Occupancy Calendar
Scrape Airbnb listings for any location: GPS, price (ADR), rating, reviews, room type, images. Plus the availability calendar per listing to estimate occupancy (30/60/90 days). No browser. For short-term-rental market research, comps and revenue estimation.
Pricing
from $6.00 / 1,000 listing scrapeds
Rating
0.0
(0)
Developer
Walid
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Airbnb Scraper — Listings, Prices & Occupancy Calendar
Scrape Airbnb listings for any location and read each one's availability calendar to estimate occupancy. Get GPS, price (ADR), rating, reviews, room type, images and 30/60/90-day occupancy. No browser.
⭐ Bookmark this actor to keep it on top of your Apify dashboard.
What is the Airbnb Scraper?
The Airbnb Scraper turns any Airbnb search into clean JSON or CSV, and goes one step further than a plain listing scraper: it reads each listing's availability calendar and turns it into an occupancy estimate. Search a city and get every listing with its coordinates, nightly price, rating, review count, room type and photos; enable occupancy and each listing also comes back with the share of the next 30, 60 and 90 days that are already booked. It reads Airbnb's own page data and calendar API directly, so there is no browser to run.
That makes this Airbnb scraper a real source for short-term-rental market research, revenue and occupancy estimation, comps for real-estate underwriting, and pricing intelligence, none of which Airbnb's site exposes as an API.
Use cases
- STR revenue estimation: Combine nightly ADR with estimated occupancy to model annual revenue for a market or a single listing.
- Real-estate comps: Pull every short-term rental around a location (GPS-based) to benchmark what a property could earn on Airbnb.
- Occupancy tracking: Re-run daily to watch how a market's availability tightens or loosens over time.
- Pricing intelligence: Track ADR by room type, capacity and area to price your own listing competitively.
- Investor deal-finding: Feed ADR × occupancy into a scoring model to rank properties by projected yield.
Input
Search a location (add dates for exact nightly prices), or paste an Airbnb search URL. Set includeOccupancy to add the calendar-based occupancy per listing.
{"mode": "search","location": "Marrakech, Morocco","adults": 2,"priceMax": 200,"currency": "EUR","includeOccupancy": true,"occupancyMonths": 6,"maxResults": 54,"proxyConfig": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
For specific listings, use mode: "calendar" with listingIds (numeric IDs or room URLs) to get occupancy only.
Output
Each listing is one record. With occupancy enabled, an occupancy block is attached.
{"listing_id": "1719517144651443946","name": "Cinema & Mini-bar | Gueliz","room_summary": "1 bedroom · 1 bed · 1 bath","latitude": 31.6383,"longitude": -8.0187,"rating": 5.0,"reviews_count": 4,"price_value": 195,"price_qualifier": "total","occupancy": { "occupancy_30d": 0.29, "occupancy_60d": 0.68, "occupancy_90d": 0.52, "days_booked": 40, "min_nights": 3 },"url": "https://www.airbnb.com/rooms/1719517144651443946"}
Pricing
This actor uses PAY_PER_EVENT: you are charged per listing returned (listing-scraped) and per availability calendar scanned (occupancy-scanned). No charge for failed runs, so you only pay for the data you keep.
Automate & schedule
Occupancy is a moving target, so schedule the Airbnb scraper to run daily and store each snapshot: comparing availability day over day is what turns raw calendars into a reliable occupancy signal. Wire it to Google Sheets, a database or a webhook via Apify integrations to build your own occupancy and ADR history. Set it once and let the series build.
FAQ
Is there an official Airbnb API? Not a public one for listing or calendar data. Scraping the site is the practical way to get Airbnb listings, prices and availability programmatically, which is what this actor does.
How is occupancy calculated? From the listing's availability calendar: the share of upcoming nights (30/60/90 days) that are not available to book. Run it daily and track the deltas for the most accurate signal, a single snapshot is a good first approximation.
Can it return the exact GPS location? Yes, search results include each listing's coordinates, which is what you need for radius-based comps.
How do I get occupancy for one specific listing? Use mode: "calendar" and pass the room URL or numeric listing ID in listingIds.
Do I need a proxy? Yes for anything beyond a few requests, Airbnb rate-limits datacenter IPs, so residential is the default. You can also pass your own via customProxyUrl.
What are the best alternatives to AirDNA or Mashvisor? Those are finished analytics products; this actor gives you the raw ADR + occupancy data to build the same models yourself at a fraction of the cost.
⭐ Found this useful? Bookmark it — Apify ranks actors by bookmarks, and it keeps the actor visible for you.