How To Calculate Airbnb Occupancy Income
Published: 07/07/2025

Overview

Airbnb provides an availability calendar for prospective guests. From an outside perspective, it is not immediately possible to determine whether a property is booked by a guest, or marked unavailable by the host. Individuals may listing their property only for limited time (eg: one weekend), or hosts use Airbnb's automatic limitations to only allow bookings 30 or 90 days ahead of the current date.

In the simplified example below, the listing is booked for one weekend, and then unavailable after 30 days. A basic tool which counts unavailable days would not accurately reflect how far in advance guests can book.

July 2025

MTWTFSS
123456
78910111213
14151617181920
21222324252627
28293031

August 2025

MTWTFSS
123
45678910
11121314151617
18192021222324
25262728293031
In the above example, only the unavailable wekeend is when the property is occupied. The unavailable dates in August are blocked off by the host, and should not be counted as occupied.

Identifying Legitimate Bookings

To determine booked Airbnb listings with a high degree of confidence, Doorstep Analytics applies the following criteria to remove listings from occupancy and income calculations. Note only entire properties are included, all private and hotel rooms are excluded.

90% or more dates are unavailable
The property is only available temporarily, if at all

July 2025

MTWTFSS
123456
78910111213
14151617181920
21222324252627
28293031

August 2025

MTWTFSS
123
45678910
11121314151617
18192021222324
25262728293031
All dates are fully available
This will exclude spam listings from prediction calculations

July 2025

MTWTFSS
123456
78910111213
14151617181920
21222324252627
28293031

August 2025

MTWTFSS
123
45678910
11121314151617
18192021222324
25262728293031
There are two unavailable periods of 16 or more consecutive days
It is possible a listing is very popular, however there would typically be a day or between some rental periods. The listing could plausibly be rented long term, however to avoid false positives and over-estimation, these cases are ignored

July 2025

MTWTFSS
123456
78910111213
14151617181920
21222324252627
28293031

August 2025

MTWTFSS
123
45678910
11121314151617
18192021222324
25262728293031
Booked dates are spread across a two month period
A legitimate calendar is expected to have a rhythm of booked and unbooked days

July 2025

MTWTFSS
123456
78910111213
14151617181920
21222324252627
28293031

August 2025

MTWTFSS
123
45678910
11121314151617
18192021222324
25262728293031

Monitoring Occupancy Changes

The second consideration is that Airbnb availability is taken as a snapshot, on a specific date. In the above examples the snapshot is taken on July 1st, There may be bookings for later in July which happen after this date. Relying on the simple snapshot does not provide a true picture of Airbnb bookings

It is not feasible for Doorstep Analytics to track every listing, every day. Instead, 50,000 listings were randomly selected from locations across the world. These listings were tracked every day for 60 days, to create a near perfect calendar dataset including last minute bookings. This data was then fed into a machine learning model, to predict the likelihood of additional bookings for any given property, based on inputs such as property size, distance from city centre, review score and more.

Using ML to Predict Occupancy

The model itself is imperfect for predicting the number of days rented out for any one listing (the calculated r2 score is 0.42). There are too many unknown inputs affecting a property's likelihood to be booked. However, by aggregating the predictions, the number of days predicted for all listings is within 0.1% of the actual amount. In other words, the total number of bookings the model predicts vs. the number that were actually made, within a 60 prediction window, are within 0.1% of each other. In raw numbers, the predicted number of days booked was 79,314 vs. an actual amount of 79,682.

Using Occupancy to Estimate Income

The number of days the property is rented out can be multiplied by the cost of the Airbnb listing per night. Airbnb allows hosts to apply dynamic pricing to their listings, based on the number of nights the guest is staying. A host may also increase the price when more guests stay. Furthermore, the cost of a stay at the weekend is typically greater than that during the week. This means a "true" price per night does not exist.

Doorstep Analytics tracks weekly pricing data for all listings. To determine a reasonable price, the price per night for variations of 1 to 5 guests over the following 60 days is taken. The average of this is then used as the standard price in calculations. This is not a perfect determination, as pricing data is only provided when the listing is available. There may also be seasonal variations which this method does not account for. In cases where this cannot be determined, the default overview price provided by Airbnb is used.

Comparing Doorsep Analytics' income projections against other reports, we can see the results are broadly aligned:

Doorstep Analytics provides comprehensive vacation rental datasets, tailored analytics reports and industry insights.
Latest Airbnb Data