Airbnb Scraper & API: Every Listing, Rates and Occupancy
Pricing
from $0.60 / 1,000 listings
Airbnb Scraper & API: Every Listing, Rates and Occupancy
Every listing in a city, nightly rates and occupancy for hosts and investors. No login required. Pay per listing delivered.
Pricing
from $0.60 / 1,000 listings
Rating
5.0
(1)
Developer
Brainfoods Studio
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
2
Monthly active users
3 days ago
Last modified
Categories
Security
Limited permissionsShare
Airbnb Market Scraper
Yes, we're late to the party. The Store already has Airbnb scrapers. We built one more for a simple reason: when you want to know about a city's short-let market, the usual scrapers cap out at 240 listings per search and leave you guessing about the rest. This one keeps searching until the whole area is covered, gives you complete market inventory, and measures forward occupancy across upcoming windows.
Airbnb Market Scraper gives you every listing in a whole city or neighbourhood from Airbnb: listing ID, name, property type, bedrooms, bathrooms, ratings, reviews, nightly rates, total prices, and coordinates. For hosts and investors, it measures forward occupancy ("booked or blocked" share) across future dates and produces a full market report with rate percentiles and top zones.
No login · No Airbnb account · From $0.60 per 1,000 listings · Complete city inventory & occupancy
What does Airbnb Market Scraper do?
- Covers the whole area. It partitions the map and keeps searching until Airbnb has nothing new to show for the area, reaching over 98% of total listings.
- Tells you how complete it is. A free coverage row per area says how many boxes were searched, how many listings were found, Airbnb's own stated total, and the exact coverage percentage.
- Measures forward occupancy. Specify upcoming date windows to measure how many listings are booked or blocked vs available, broken down by zone, property type, and bedroom count.
- Nightly rate spread. Captures nightly rates, stay totals, and discount labels (such as early-booking discounts).
- Optional listing details. Enrich listings with superhost status, room type, guest capacity, amenities, and cancellation policy by reading listing pages.
- Market summary report. An area report per city with rate percentiles (25th, median, 75th), rating distributions, guest-favourite shares, and top zones.
- Market numbers only mode. Deliver only occupancy and area report rows, not one row per listing. Every listing in the area is still searched and counted, paying a small fee per listing searched instead of the listing price.
- Free rows. Coverage, summary, and error rows are completely free.
Who is it for?
- Short-let hosts checking competing listings, rate trends, and seasonal occupancy in their neighbourhood.
- Real estate investors looking for high-occupancy zones and revenue potential before buying or leasing property.
- Property managers benchmarking pricing and tracking market demand across property sizes.
- Market analysts and AI agents needing structured, deduplicated listing datasets with complete coverage guarantees.
Use cases
| You want | What to set |
|---|---|
| Every listing in a city | Locations Austin, TX, Max listings 50000 |
| Rates for specific travel dates | Check-in 2026-12-11, Check-out 2026-12-13 |
| Forward occupancy for the next month | Occupancy windows 4, Window nights 2 |
| Deep listing amenities & superhost data | Include listing details true |
| Neighbourhood market report | Locations Austin, TX, Include area report true |
| Track a market every week | Market numbers only (no listing rows) true, Occupancy windows 4, Include area report true |
| An exact custom boundary | Custom area: GeoJSON, centre and radius, or bounding box |
How it finds your area
You type a place name. Google Maps decides which place you mean, so city and neighbourhood names match accurately.
- Cities are searched to their municipal boundary.
- Neighbourhoods without a published boundary are searched within a radius around their centre.
- Need an exact shape? Provide a Custom area with GeoJSON, a centre and radius, or a bounding box.
- The run log confirms the resolved boundary and area size in km².
What we measured
Live runs of this actor on Apify Proxy (datacenter), November 2026.
| Run | Result |
|---|---|
| Input form prefill (Austin, TX, max 50 listings) | about 30 seconds |
| Lisbon, every listing | 13,797 listings, 98.6% of what Airbnb lists in the area, in 12 minutes |
| Austin, every listing, plus 2 occupancy windows and the area report | 7,172 listings in 11 minutes; 79% and 69% booked or blocked for the next two weekends |
| Austin market numbers only (no listing rows), plus 2 occupancy windows and the area report | 7,121 listings searched and counted in 14 minutes; 80% and 69% booked or blocked |
| Austin market numbers | median $209 a night (middle half $140–$344); homes 85% booked or blocked that weekend, apartments 75%, rooms 60% |
| Errors and blocks across these runs | none |
A whole city takes minutes rather than seconds because it covers every street systematically. The status line shows live progress as it searches.
How to use it
- Type one or more Locations (for example,
Austin, TX). - If you want prices for specific dates, set Check-in date and Check-out date. To measure forward occupancy or collect total active inventory, leave dates empty.
- If measuring occupancy, set Occupancy windows (e.g.
2or4). - Set Max listings and optional flags (Include listing details, Include area report).
- Run the actor and download results as JSON, CSV, or Excel.
Input example
{"locations": ["Austin, TX"],"occupancyWindows": 2,"windowNights": 2,"includeAreaReport": true,"maxListings": 10000}
Use it from an AI agent
Call it from the Apify API or MCP server. Every row has a type (listing, occupancy, area-report, coverage, summary, or error), so an agent can read the coverage row to verify completeness before analysing listing and occupancy rows.
What you get
| Row type | What's in it | Cost |
|---|---|---|
listing | Listing ID, URL, name, title, property type, coordinates, zone, bedrooms, beds, bathrooms, rating, reviews count, nightly rate, total price, original price, discount labels, guest favourite badge, photo URL, and optional details | per listing delivered |
occupancy | Window check-in, window check-out, inventory count, available count, booked-or-blocked share, plus breakdown by zone, property type, and bedroom count | per window measured |
area-report | Listing count, nightly rate percentiles (p25, p50, p75) overall and by type/bedrooms/zone, rating spread, new listing share, guest favourite share, and mean booked share | per area |
coverage | Boxes searched, boxes split, requests, listings found, stated total, and coverage percentage | free |
summary | Listings delivered, areas searched, details read, windows measured, charges, and stop reason | free |
error | Any location that could not be resolved or network/block issues | free |
Pricing
You pay only for listings delivered (or, in market numbers only mode, a smaller fee per listing searched) and the market reports you ask for.
| Event | Free plan | Bronze | Silver | Gold and up | Notes |
|---|---|---|---|---|---|
listing | $1.50 per 1,000 | $1.10 per 1,000 | $0.80 per 1,000 | $0.60 per 1,000 | per 1,000 listings delivered |
listing-searched | $0.40 per 1,000 | $0.30 per 1,000 | $0.20 per 1,000 | $0.15 per 1,000 | per 1,000 listings searched in market mode |
listing-details | $1.00 per 1,000 | $0.80 per 1,000 | $0.60 per 1,000 | $0.50 per 1,000 | only with Include listing details, per 1,000 listing pages read |
occupancy-window | $0.40 | $0.30 | $0.25 | $0.20 | per area and window measured |
area-report | $1.00 | $0.80 | $0.60 | $0.50 | per area market summary report |
- Charged only after rows are delivered (in market mode, once the search finishes). Coverage, summary, and error rows are always free.
- Never exceeds your spending limit. If the spending limit is reached, the search stops and delivers whatever has been found so far.
What typical runs cost on the Free plan
- Austin every listing + report + 4 windows ≈ $13.36
- Austin market numbers weekly ≈ $5.47 a run ($21.88 a month)
- Every Lisbon listing ≈ $20.70
- One neighbourhood of 600 listings with details, report and 4 windows ≈ $4.10
FAQ
Do I need an account or an API key?
No. The actor reads public Airbnb search results the same way a desktop browser does. No login, session cookies, or API keys are required.
Why "booked or blocked"?
When a listing is unavailable on Airbnb, it can be because a guest booked it or because the host blocked the calendar (for personal use, repairs, or minimum stay rules). Public searches cannot distinguish between the two, so the honest label is "booked or blocked".
How do I know the list is complete?
Read the coverage row in your dataset. It compares the number of listings found against Airbnb's own stated total for the searched area and gives you the exact coverage percentage (typically 98%+).
Does it collect personal data?
No host names, guest names or review texts are collected, only public listing facts and prices.
Legal note
This actor collects publicly available listings and rates. You're responsible for how you use the data, including local rules on data use and personal data.
More from Brainfoods Studio
- Google Maps Places Scraper
- Google Trends Scraper
- Google News Scraper
- Google Ads Transparency Scraper
- Google Play Scraper
Support
Found a bug or missing a metric? Open an issue on the actor's Issues tab. We're the new kids here, so we read every one and usually reply within a day.