Revbot logoRevbot
← All insights

2 November 2026

Average Daily Rate for Hotels: The ADR Formula, How to Read It, and When It Misleads

The average daily rate hotel teams report every morning is one of the most quoted numbers in the industry, and one of the easiest to misread. Average daily rate (ADR) tells you the average price paid for each room you sold. It does not tell you how many rooms you sold, how many stayed empty, or what it cost to sell them. This guide covers the formula, a worked example and how to read ADR alongside other numbers.

The ADR formula

ADR = room revenue ÷ rooms sold

Use room revenue only. Leave out breakfast, spa and transfers, unless they are part of a package you have decided to count. Divide by rooms sold, not rooms available.

Complimentary and house-use rooms are usually left out, so they do not pull the average down. Whatever you decide, keep the method the same every month so comparisons stay fair.

A worked example

Take a hypothetical 40-room hotel on one night:

  • Rooms sold: 30
  • Room revenue: Rp 45,000,000
  • ADR = 45,000,000 ÷ 30 = Rp 1,500,000

Occupancy that night is 30 ÷ 40 = 75%. RevPAR (revenue per available room) is 45,000,000 ÷ 40 = Rp 1,125,000. That is the same as ADR × occupancy.

When a higher ADR is not good news

Now take the same hotel on another night, also hypothetical:

  • Rooms sold: 20
  • Room revenue: Rp 36,000,000
  • ADR = Rp 1,800,000

ADR rose by Rp 300,000. But room revenue fell by Rp 9,000,000, occupancy dropped to 50% and RevPAR fell to Rp 900,000. When a higher ADR comes with many more empty rooms, the rate may have been set above what the market would pay on that date.

The opposite also happens. A lower ADR with much higher occupancy can bring in more room revenue. This is why ADR should never be read alone.

Read ADR with these three numbers

  1. Occupancy. Was the ADR achieved with a full house or a half-empty one?
  2. RevPAR. It combines rate and occupancy into one number per available room.
  3. Net ADR. This is room revenue after commission. ADR earned mostly through high-commission channels is worth less than the same ADR earned direct.

For Bali hotels, it also helps to read ADR by room type and by segment. Average rate can rise simply because more villas and fewer standard rooms were sold, with no change in pricing at all.

What moves ADR

  • Rate changes: the obvious cause.
  • Room mix: selling more higher-category rooms raises ADR even if no price changed.
  • Channel mix: different channels may carry different rate plans and discounts.
  • Length of stay: long-stay discounts lower ADR but can fill gaps.
  • Booking timing: early bookings made at lower rates pull down the average for that date.
  • Packages: if inclusions are counted in room revenue, ADR looks higher.

When ADR moves, check which of these explains it before you change a price.

Using ADR in a daily routine

ADR is most useful for future dates, not only past ones. Look at the average rate on the books for a date four weeks out, next to pickup and competitor rates. This shows whether you are filling at the right price or selling too cheaply too early.

A revenue management system runs this check for every date. It reads what is on the books, compares pace and market rates, and adjusts rates within the floor and ceiling you set. You can explore this on Revbot's free 7-day demo account, which runs on Sanur Bay Resort, a demo hotel with realistic sample data.

Checklist: average daily rate

  • Calculate ADR from room revenue and rooms sold only.
  • Decide how to treat complimentary rooms and packages, and keep it consistent.
  • Always read ADR next to occupancy and RevPAR.
  • Track net ADR after commission, by channel.
  • Split ADR by room type and segment before drawing conclusions.
  • When ADR moves, check room mix and channel mix before changing prices.
  • Review ADR on the books for future dates, not only last month.

Keep reading

See what Revbot does with a hotel's data, every day.

A free 7-day demo on a demo hotel with realistic data.

Get a free 7-day demo