Airbnb Availability Calendar Scraper avatar

Airbnb Availability Calendar Scraper

Pricing

from $3.00 / 1,000 listing with its calendars

Go to Apify Store
Airbnb Availability Calendar Scraper

Airbnb Availability Calendar Scraper

Day-by-day availability of any Airbnb listing for up to 12 months: open and booked days, check-in and check-out rules, minimum and maximum nights, an occupancy rate estimate, and the price for your dates. Paste links or ids. Export to JSON, CSV or Excel, or via API. No login.

Pricing

from $3.00 / 1,000 listing with its calendars

Rating

0.0

(0)

Developer

Steady Scrape

Steady Scrape

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

What does Airbnb Availability Calendar Scraper do?

Airbnb Availability Calendar Scraper reads the availability calendar of any Airbnb listing, day by day, for up to 12 months: which days are open, which are booked or blocked, whether check-in and check-out are allowed each day, and the minimum and maximum nights. Every listing also comes with an occupancy summary (open days, booked or blocked days, their share, the first open date) and the listing's own data — title, rating, host, amenities, photos, coordinates. Give it dates and you also get the price of that stay.

Paste as many listing links as you want in one run. It talks to the same API Airbnb's own site uses: no login, no browser, no proxies.

Why use it?

  • 📈 Estimate occupancy — the share of booked or blocked days over the coming months, per listing, for investors and short-term rental analysts.
  • 🏘️ Benchmark your competitors — how full the listings around yours are, and from when they open up.
  • 🧮 Revenue management — minimum stays and check-in rules per day, to align your own calendar and pricing.
  • 🔔 Monitor availability — schedule it daily and see days get booked; compare runs to spot when demand picks up.
  • 🤖 Feed dashboards, sheets and AI agents — JSON, CSV or Excel, or straight into Google Sheets, Slack or Make through Apify integrations.

Features

  • ✅ Many listings per run — links (https://www.airbnb.com/rooms/11337562, any Airbnb domain) or just the numbers; repeats are read once.
  • ✅ Up to 12 months in one row per listing, starting from the current month.
  • ✅ Per day: available, availableForCheckIn, availableForCheckOut, minNights, maxNights.
  • ✅ Occupancy summary from today: days, open days, booked or blocked days, their share, the first open date, and the shortest stay accepted.
  • ✅ Optional price for your dates: total with fees, nightly rate, and whether the stay can be booked.
  • ✅ The listing too: title, type, rating, reviews, Superhost, host profile, amenities, rules, cancellation policy, photos, coordinates.
  • ✅ Fair billing — one charge per listing, whatever the number of months. A link to a listing that no longer exists is reported and not charged. No start fee.

How to scrape Airbnb availability calendars

  1. Click Try for free.
  2. Paste listing links (one per line) or listing numbers.
  3. Choose how many months to read (12 by default).
  4. Optionally set check-in and check-out to also get the price of that stay.
  5. Click Start and download the rows as JSON, CSV or Excel. To monitor, add a schedule.

Input example

{
"listingUrls": ["https://www.airbnb.com/rooms/29048719", "https://www.airbnb.com/rooms/32976368"],
"calendarMonths": 12,
"currency": "EUR"
}

Output example

One item per listing (the calendar and the listing details shortened here):

{
"id": "29048719",
"url": "https://www.airbnb.com/rooms/29048719",
"title": "Chiado River View",
"placeType": "Condo in Lisbon",
"rating": 4.84,
"reviewsCount": 217,
"isSuperhost": true,
"bedrooms": 1,
"beds": 1,
"bathrooms": 1,
"latitude": 38.7086,
"longitude": -9.1427,
"price": null,
"minNights": 2,
"calendarSummary": {
"from": "2026-10-04",
"to": "2026-11-30",
"days": 58,
"availableDays": 34,
"unavailableDays": 24,
"unavailableShare": 0.414,
"firstAvailableDate": "2026-10-05"
},
"calendar": [
{ "date": "2026-10-05", "available": true, "availableForCheckIn": false, "availableForCheckOut": false, "minNights": 2, "maxNights": 90 },
{ "date": "2026-10-06", "available": false, "availableForCheckIn": false, "availableForCheckOut": false, "minNights": 2, "maxNights": 90 }
],
"details": { "propertyType": "Entire condo", "host": { "name": "Ricardo", "isSuperhost": true, "rating": 4.82, "yearsHosting": 8 }, "cancellationPolicy": null, "canInstantBook": true },
"scrapedAt": "2026-10-04T20:07:33.383Z"
}

Output fields

fieldmeaning
calendarEvery day from the first of the current month: date, available, availableForCheckIn, availableForCheckOut, minNights, maxNights.
calendarSummaryThe days from today on: from, to, days, availableDays, unavailableDays, unavailableShare (rounded to 3 decimals), firstAvailableDate (null if nothing is open).
minNightsThe shortest stay accepted on any open day.
priceWith dates: the total for that stay with fees, perNight, nights; null without dates or when the stay cannot be booked.
id, url, title, placeType, rating, reviewsCount, isSuperhost, isGuestFavorite, bedrooms, beds, bathrooms, latitude, longitude, photosThe listing as its page shows it.
detailsThe rest of the listing page: description, amenities, host, house rules, safety, cancellation policy, category ratings, review tags, photos with captions.
searchLocationThe link or number you gave.

The run's SUMMARY record lists any link that was not found or refused; those are not charged.

Limits and tips

  • Booked and blocked look the same: Airbnb's calendar says a day is unavailable, not why. A host who blocks days shows them as unavailable, so unavailableShare is an upper bound of occupancy.
  • Days before today in the current month come as unavailable; the summary starts counting today (UTC).
  • Each listing is two requests (its page and its calendar), whatever the number of months.
  • Want every listing of a city instead of known ones? Use Airbnb Scraper with Availability calendar months: same data, found by place or search link.

This Actor reads only data Airbnb shows publicly to anyone, without logging in, and does not collect personal data beyond what hosts publish on their listings. Scraping public data is generally legal; still, make sure your use complies with Airbnb's terms and the laws that apply to you, and use it responsibly. Read Apify's legality of web scraping guide.

Your feedback

Missing something? Open an issue on the Issues tab: issues are answered, and the Actor is checked against the live site so it keeps working when Airbnb changes.