Pricing Algorithms

Building Short Term Rental (STR) Pricing Algorithms 

In the highly competitive vacation rental industry, maximizing revenue and optimizing occupancy rates are crucial for property owners and managers. One effective strategy to achieve these goals is by implementing a dynamic pricing algorithm. There are a few options to proceed, you can either choose an off the shelf provider such as (Beyond, Wheelhouse, Price Labs) or if you are large enough to justify your own algorithm or use case is not solved by the curren providers this article can help. 


By leveraging scraped data from popular platforms like Airbnb and Vrbo, property managers can gain valuable insights into market trends and guest behavior. In this article, we will explore the high-level steps involved in building a pricing algorithm for vacation rentals if you choose to build your own.

Data Collection and Scraping

The first step in building a pricing algorithm is to collect and scrape relevant data from Airbnb and Vrbo--or collection of managers and websites suitable to your portfolio. These platforms provide comprehensive information about property listings, including pricing, availability and booking history. To obtain this data, you can either build your own scraping service and take on the responsibility of maintaining or contract with a STR Data Scraping Company such as Hungry Robots. It's important to ensure that you comply with the terms of service and any legal restrictions when scraping data from these websites.

Data Preprocessing and Cleaning

Once the data is scraped, it needs to be preprocessed and cleaned to ensure accuracy and consistency. This involves removing duplicates, handling missing values and standardizing the data format. Additionally, you may need to normalize certain features, such as property size or number of bedrooms, to make them comparable across different listings. 


Data preprocessing plays a vital role in ensuring the reliability of the algorithm's predictions. If the data is scrape data that is one cleansing project, however, there are lots of novice or hobbyist out there who may never rent their data but list on platforms. Cleaning data is not just for handling scraping. You may see weird prices such as $0 or $1,000,000 but never actually rent or listings pushed live but never actually completed etc. 


Hungry Robots handles much of the data standardization from the scraping side for you. We do provide you everything if you are interested or just the standard format feed. Hungry Robots can also help offer guidance on cleaning and processing data based on your use case and does not pre-process for you as every use case is different. Click here to speak with an expert to learn more! 

The Layers of Pricing Models

Pricing is a blend of art and science, because of this we recommend a suite of models layering on top of each other each with a specific task or optimization goal. 


Pricing Curve Shape

The shape of the pricing curve can be done at the absolute price level or a normalized relative figure that allows you to adjust price overtime and carry a similar seasonal pricing shape. This can be very helpful when pricing where the market may be "wrong." The normalization aspect also allows you to look at many units for different features and normalize for the relativity of pricing. Then one can adjust the shape of the curve based on demand imbalances, length of stay shaping, velocity of bookings or forecasted expectations about the future to what you expect to be the true level. The shaping of the curve allows you to move from the market to where you expect the optimal shape to be. 


Pricing Curve Elevation

This process can be where you add features back in and each combination of features can drive the elevation of the price curve. For example, you already have the shape of the curve from the previous model so adding extra occupants or an extra half bath can be modeled at the elevation step.  


This step it is very important to model your data to understand the multi-variate dependencies that exist for the return on an extra half bath for each occupant, bedroom, location etc. You will want to control for all of the other difference and variables to isolate the impact of each. 


The harder part will be the perceived quality of one home or floor plan over another. You can model expectations over this difference and adjust the elevation later based on demand or simply rely entirely on demand shaping. 

Demand Feedback

There is no "right answer" in pricing so you must constantly adapt with observations and how they compare to expectations. You must also adjust price based on bookings that happen on the calendar as they create gaps between bookings. 


Demand feedback can come in many forms but one of the largest contributors will be pacing. How is the target unit performing over a period from an occupancy perspective. How is it pacing against the market, the CompSet and expectations. You can adjust your pricing level or shape of the curve based off this. If the full calendar is lagging and conversion is lower than expected it may be an elevation adjustment. If certain times of the year are lagging then it could be more about the shape of the curve. There is also the chance that there are macro difference so it is always important to see how the CompSet and market are performing year over year. 


On the inventory side of things, if someone books next week this means there are not today plus 365 different possible stay lengths that could be booked but only stays less than 7 days, current prices will need to be adjusted based on the new probability of booking. Or if a grouping of days it booked on either side then the probability of booking will drop and so should pricing and the minimum stay required. You will have to take these gaps and bookings into consideration to understand what type of demand is left to fulfill. 


You would also want to look at Length of Stay and adjust the mid week versus weekend pricing or Length of Stay discounting to encourage the right sized bookings. This should be evaluated both on a seasonal perspective and a lead time perspective. 

Feature Selection and Engineering

After cleaning the data, it's essential to identify the most relevant features that can influence pricing. Common features include location, property type, amenities, seasonality, and historical booking patterns. Feature engineering techniques can be applied to create new variables or derive meaningful insights from existing ones. Using machine learning can help you to identify which features make sense to focus on in model selection or combinations of features together as many may be geo specific or even geo-seasonally specific. It is important to think like a guest while looking through features to help focus on causation over correlation to avoid building a model that is "right" but does not make sense on the consumer side. 

Model Selection

Choosing an appropriate model is crucial for accurate pricing predictions. Various machine learning algorithms can be considered, such as linear regression, decision trees, random forests, or even more advanced techniques like gradient boosting or neural networks--or ensemble models. The choice of model depends on the complexity of the data and the accuracy desired. It is recommended to experiment with multiple models to determine which one performs best for your specific dataset for the specific model layer and level of human interaction with the algorithm.

Model Training and Validation

Split the dataset into training and validation sets to train and evaluate the chosen pricing model. The training set is used to optimize the model's parameters and learn the underlying patterns in the data. The validation set helps assess the model's performance and generalization ability. Cross-validation techniques can also be employed to further validate the model's robustness. 


You can use the validation set as a grading set, for example did the test model have higher pricing regret (model would of predicted lower than what sold) than another model or does the test model result in lower mid weeks for periods of shorter lengths of stays (a positive). 

Model Deployment and Monitoring

Once the pricing algorithm is trained and validated, it can be deployed to generate pricing recommendations for new listings or existing properties. It's crucial to regularly monitor the algorithm's performance and retrain it periodically to incorporate new data and adapt to changing market conditions. Continuous evaluation and improvement are necessary to ensure the accuracy and effectiveness of the pricing algorithm.


For the first release phase we recommend prices to "accepted" to go live, so there is a human review of outputs. As your revenue manager and team gains confidence in the outputs you can move "acceptance" to be on rates outside of a range. Again as confidence increases you can grant the algorithm more leash eventually moving to a notification system that notifies you about changes of certain thresholds or confidence. 


When you get to this step it is important to have monitoring build before algorithms are running in the wild. You will want to be able to visualize what changes are happening, what is outside the norm, how are your major KPIs changing, what human interaction/overrides are happening etc. Eventually the model can learn from human overrides provided you share with it a disposition reason, you would want it to learn from reasonable overrides but may want to exclude customer service overrides or owner requests for example.

Integration and Automation

To streamline the pricing process, consider integrating the algorithm with your property management system or booking platform. With the acceptance and confidence levels discussed above. This allows for seamless updates of pricing recommendations and automated adjustments based on changes in market dynamics. Integration also enables real-time monitoring and reporting, giving property managers greater control over their rental revenue.


With the automation in mind it is important to make sure your model can build and distribute to what your PMS can handle. If you overly complicate the pricing algorithm the PMS might not be able to keep up. For example, not all PMS can handle itinerary based pricing where each permutation of available dates has a different price. 

Conclusion

Building a pricing algorithm for STRs using scraped data requires a systematic approach that involves data collection, preprocessing, feature engineering, model selection, training, monitoring and deployment. By leveraging the insights gained from these steps, property managers can make data-driven pricing decisions that maximize revenue and occupancy rates. However, it's important to continuously evaluate and improve the algorithm to ensure its effectiveness in an ever-changing market. 


Every solid building starts with a strong foundation so do your homework on methods to capture data via your own scraping methods or partnering with a reputable scraping company that understands your use case. At Hungry Robots we have been scraping OTA data since 2012 and building STR data products. We can help you understand data nuances, get the widest coverage of data and even share ideas on building STR data products.