Where people are actually staying

Every other number on this site describes supply — what is listed, at what rate, with what rating. This page is the only one that measures demand, and it does it the one way this data allows: a review appears when somebody has been and gone, so counting reviews that accumulated between the earlier scrape and the later one approximates where stays actually happened. Redfin, Realtor and Zillow have no equivalent — a for-sale listing table can tell you what is on the market, never what sold.

Tracked in both
Gained reviews
New reviews
≈ completed stays
Per tracked listing
the closest thing to occupancy
Median gain
among listings that gained any
Cities ranked
25+ tracked listings each

Which cities got booked

New reviews per listing tracked in both scrapes — not raw review totals, which would just rank cities by size

No listings match these filters

What kind of place gets booked

The same measure, by stay type

No listings match these filters

The listings that actually got stayed in

Ranked by reviews gained over the window

No listings match these filters

What a review is and is not

The honest limits of using review counts as a demand signal

A review is not a booking. Most stays are never reviewed, and the ones that are lag the stay by days. So the counts here are a floor on activity, not a measure of it, and the ratio between review and stay is assumed constant across listings when it certainly is not.
It is nonetheless clean. Unlike the badge field, which the later crawl captured on 25% of rows against 75% in the earlier one, review counts are present on both sides for essentially every matched listing and move in one direction. That is what makes this measurable at all, and it is why the movers section compares price and reviews but not badges.
Only matched listings count. The two crawls searched different areas, so most listings appear in only one of them. A listing missing from the later scrape tells you the crawler did not look for it — not that nobody stayed. Everything on this page is computed over the intersection.