The Problem
The raw Airbnb dataset is rich but messy: mixed date formats, missing prices, inconsistent neighbourhood labels, and reviews that span years without clean activity signals. The goal was to turn that into an interactive dashboard that answered three questions a host or market analyst actually needs:
- What does pricing look like across neighbourhoods and room types?
- Which hosts are performing well, and what patterns do they share?
- How does occupancy (estimated via review frequency) correlate with price?
Data Preparation
I ran the cleaning pipeline in Python (Pandas) before loading into Power BI. Key steps:
- Removed listings with no reviews in the last 12 months as "inactive."
- Imputed missing prices using the neighbourhood and room-type median.
- Standardised neighbourhood group labels (four boroughs, city-wide rollup).
- Created a derived "occupancy score" from reviews-per-month and availability_365.
- Flagged "super-hosts" using listing count and review volume thresholds.
Dashboard Structure
The dashboard has four linked pages:
- Overview: market-level KPIs, average price, median occupancy, total active listings.
- Pricing Map: heat-map by neighbourhood with room-type filter. Drill through to listing detail.
- Host Analysis: ranked list of top hosts by estimated revenue, review score, and listing count.
- Occupancy Trends: occupancy score over time by room type and borough, with a year-over-year comparison.
Stack
Key Findings
Entire-home listings in Manhattan command a 2.3x price premium over private rooms, but private rooms in Brooklyn show a higher estimated occupancy rate (72% vs 61% for entire homes), suggesting hosts accept lower price-per-night for higher utilisation. Super-host accounts (top 8% by volume) generate a disproportionate share of estimated revenue, averaging 4.1x the bookings of single-listing hosts.
Outcome
The dashboard was used as a capstone BI project demonstrating end-to-end data analysis: Python cleaning, DAX modelling, and Power BI storytelling. It demonstrates the full pipeline from raw public data to an interactive, decision-ready visual layer.