If you’re looking to become an Airbnb host, you’re probably wondering how much you can expect to earn. One way of estimating this is to find the average occupancy rate for specific locations over the next year, accounting for seasons, special events, etc…
While Airbnb makes all of this occupancy and pricing data available via its website & app, it doesn’t allow an easy way to aggregate and analyze all this data to get a pulse on the market.
We’ll walk through how to get a day-by-day breakdown of the next year of availability & pricing for individual Airbnb listings, this way you can calculate the future occupancy rate to get an idea of how much you can expect to earn as an Airbnb host.
1. Get Airbnb Listing IDs
To start, we’ll need to build a list of Airbnb listing IDs we’re interested in. You can get them from the URL of a page, e.g.
https://www.airbnb.com/rooms/432044 has the Listing ID of
However, we suggest using the Airbnb Listings endpoint so you can run targeted searches for specific cities and get a list of IDs. Once you run the endpoint for a specific location search, you’ll be able to copy the Listing IDs from the output.
2. Get Day-by-Day Future Availability & Pricing
Once we have a Listing ID, we can plug that into the Airbnb Availability endpoint to get a day-by-day summary of all future availability and pricing one year out from the current date (this corresponds to the Airbnb calendar feature, which shows you all the days to 1 year into the future with if the listing is booked or not).
To get the future availability and occupancy rate, just head to the endpoint and paste in the Listing ID you’re interested in:
This endpoint gives back the day-by-day breakdown for future pricing and availability. You can view this data in JSON, however to calculate the occupancy rate, we suggest converting the response data to CSV format so you can do some basic spreadsheet operations in Excel or Google Sheets.
Once you open the spreadsheet, you’ll notice the following columns of interest:
calendar_months.days.date- The date of future availability & pricing
calendar_months.days.available_for_checkin- Is this date available for checkin (FALSE means it’s booked, lowering the occupancy rate)
calendar_months.days.price.native_adjusted_price- Estimated price for one night at the future data
calendar_months.days.price.native_currency- Currency of the price estimate
You can then determine the future occupancy rate for this listing by counting how many dates are not available (booked) divided by the total number of available dates. You can also estimate how much money the listing will earn over the next year by adding up the prices for every day the listing is not available for booking (meaning it’s occupied).
Of course, this data is only relevant for the future and doesn’t cover the past (actual) occupancy rates. If you need this information, you can periodically fetch this data and aggregate the numbers and rates for only the next week out for example to track immediate availability metrics, which are less likely to change compared to availability dates a year out.