DwellSignal
Honest revenue math

When we refuse to show a number

Indio, California served a $417,000 median revenue built from two houses. Here is the gate that stopped it, what it withheld across the country, and why a blank beats a wrong figure.

$417,000the median revenue two houses produced before the gate stopped it

An outside reviewer looked at our page for Indio, California and did the arithmetic we should have done first. The page said a typical entire home earns $417,000 a year at 57% occupancy on a $480 nightly rate. Multiply the rate by the occupancy by 365 and you get about $100,000. The three numbers could not describe the same place.

They did not. The $417,000 was the median of two houses.

What happened

Indio has 917 entire-home listings in our dataset. Every one carries an observed nightly rate. Only two carried an occupancy estimate, because our occupancy model covered one ZIP in the Coachella Valley, and those two were luxury homes in it, renting for $928 and $3,100 a night. A median over two values is the mean of the pair: $417,000. Our rollup served it as Indio's typical revenue, and our gross-yield and rent-multiple figures inherited it.

That is not a modelling error. It is the absence of a rule.

The rule now

Two gates sit in front of every revenue figure we serve, at every grain from metro to neighborhood.

  1. Sample size. A revenue median needs at least eight distinct listings with an estimate. Below that, no number is served. Indio has two, so Indio shows none.
  2. Reconciliation. Where a median is served, it must sit within half to twice the product of the nightly rate, the occupancy, and 365. A median outside that band means the estimated listings are not the market, and the number is withheld with the reason attached.

The reason is served with the page, not hidden in a log. Indio now reads: nightly rates pool at $480 with modeled occupancy near 57%; annual revenue is not available yet, because only 2 of 917 listings carry a revenue estimate and 8 are needed.

What it withheld

Running the gate across the country moved a lot of pages from a number to a reason.

Grain Served Withheld, too few estimates Withheld, irreconcilable
Metros 1,845 159 5
Sub-markets 4,363 3,715 1

Forty percent of sub-markets lost their revenue figure. That is the honest state of the data today, and it is the number we would rather publish than the figure it replaced.

Why the industry does not do this

The peer-reviewed literature is thin but blunt. Agarwal, Koch and McNab measured a leading vendor's per-listing data against industry definitions and found occupancy overstated by 60%, nightly rate by 78%, and revenue per available night by 179%. The same vendor reconciles to Airbnb's own filings within about one percent. Both are true at once, because the errors are definitional: which nights count as available, which listings count as active. A national total can be right while every local number is inflated.

The fix is not a better model. It is a published denominator, a sample size on every figure, and a willingness to show nothing.

What we are doing about coverage

Withholding is necessary and not sufficient. The lever is occupancy measured per listing from our own calendar snapshots, not modeled per ZIP. We hold two or more calendar snapshots for 362,633 listings and are building the booking pace for each, then the booking curve that turns pace into an annual figure. As that lands, sub-markets come back from "withheld" to "measured", one sample at a time, with the count on the page.

Every number here is produced by the same rules the product uses and is withheld where the sample cannot carry it. The definitions live in the methodology.
Newsletter

Movers, rule changes, and the numbers behind them

One email a week. Withheld figures included.