Skip to content

Every enquiry is answered in writing with the current price list and documents — no calls unless you ask for one.

Pronoia

Cart

Your cart is empty.

Investment maths

Bali Villa ROI: A Transparent Calculator for ADR, Occupancy and Costs

A practical underwriting worksheet for Bali villa buyers, with consistent ADR and occupancy formulas, blank low/base/high inputs, full cost deductions, and a clear split between cash yield and appreciation.

Pronoia Editorial Team Published 6 min read
Private pool at a completed two-bedroom Pronoia villa

A buyer needs to know whether a villa’s projected income survives realistic occupancy, operating costs and personal use. A quoted yield cannot answer that unless its revenue denominator, cost basis and investment basis are visible.

Start with a model you can audit. Keep every input blank until it is supported by operating history, a contract, a current quotation or a clearly labelled assumption. Low, base and high cases should reflect different inputs, not three unexplained return percentages.

Start with available nights, occupancy and ADR

For a villa rented as one unit, use villa nights throughout. If rooms are sold separately, use room nights throughout. Mixing those units will distort both occupancy and ADR.

The core definitions are:

ADR = accommodation revenue / sold nights
Occupancy = sold nights / available nights
Sold nights = available nights x occupancy
Gross room revenue = available nights x occupancy x ADR

ADR means accommodation revenue divided by sold room nights. Keep taxes, food, transport and other non-accommodation income outside ADR unless the reporting source expressly includes them. If it does, reconcile the difference before using the figure.

Occupancy must use the same available-night denominator as the revenue model. A forecast using one definition and an operating report using another is not comparable.

Keep the occupancy denominator honest

Calculate rental inventory before applying occupancy:

Available nights = calendar nights
                 - owner-blocked nights
                 - planned maintenance closures
                 - other nights unavailable for sale

Owner-blocked nights reduce usable inventory and revenue capacity. They can also make reported occupancy look stronger because the denominator is smaller. Record them separately rather than burying them within a general availability adjustment.

Official statistics: BPS-Statistics Indonesia publishes classified hotel room occupancy rates for Bali. This is useful context, but it is hotel data, not a forecast for a particular villa. Location, unit type, opening date, distribution, rate strategy and inventory treatment can all differ. The broader Bali property market data guide explains how to separate market context from asset-level underwriting.

Build low, base and high cases from disclosed inputs

Use the same formulas in every column. Change only assumptions you can explain. Low does not automatically mean the lowest ADR and occupancy imaginable, and high should not mean the sales target. Each case needs a stated evidence basis.

Model lineFormula or evidence basisLowBaseHigh
Calendar nightsExact forecast period_________
Owner-blocked nightsOwner’s intended dates_________
Other unavailable nightsMaintenance and documented closures_________
Available nightsCalendar less blocked and unavailable nights_________
OccupancySold nights / available nights___%___%___%
Sold nightsAvailable nights x occupancy_________
ADRAccommodation revenue / sold nights_________
Gross room revenueSold nights x ADR_________
Channel and collection costsActual booking mix and contracted fee basis_________
Management feeContracted rate x stated revenue basis_________
Fixed operating costsDocumented annual budget_________
Variable operating costsSold nights or stays x unit cost_________
Maintenance reserveStated basis and assumption_________
TaxApplicable basis and documented treatment_________
Net owner cash flowRevenue less all lines above_________
Total cash investedDisclosed owner cash basis_________
Cash yieldNet owner cash flow / total cash invested___%___%___%

Use one currency and one period. If inputs include or exclude tax differently, normalize them before calculating.

Deduct costs on their actual bases

A reliable model does not apply every percentage to gross revenue. Channel commission may apply only to channel-generated bookings. Payment costs may apply to a different booking mix. A management fee might be calculated on gross room revenue, collected revenue or another contractually defined base.

A practical sequence is:

Gross room revenue
- channel commissions and collection costs
- management fees
- fixed operating costs
- variable operating costs
- maintenance reserve
- applicable tax
= net owner cash flow before financing

Fixed operating costs continue when occupancy falls. Variable costs usually respond to sold nights, stays or guest count, depending on the item. Maintenance reserve is cash set aside for future work, not proof that actual maintenance will equal the allowance. The villa ownership cost guide can be used to check whether categories are missing.

Do not insert a generic tax percentage. Record the applicable tax, what it is assessed on, who collects it, and whether it is already included in any revenue or cost line. Financing should also sit below pre-finance cash flow, so buyers using different debt structures can compare the underlying operation.

Operator-reported: Pronoia states that qualified buyers receive an illustrative financial model based on disclosed assumptions through its villa ownership information. The model helps test assumptions; it does not establish the result. Current project-specific definitions and terms should be matched to the relevant documents and the ownership page.

Model owner use without double counting

There are two valid presentations. Choose one.

  1. Inventory method: subtract owner-blocked dates before calculating available nights. Revenue then reflects reduced rentable inventory.
  2. Commercial baseline method: model full commercial availability, then show the estimated net income forgone on owner-use dates as a separate owner-use effect.

Do not use both methods in the same result. That would deduct owner use twice.

The effect is date-sensitive. Blocking a night with little expected demand is different from blocking a date expected to sell at a higher rate. For the commercial baseline method, estimate forgone room revenue using the expected sale probability and date-specific ADR, then subtract costs avoided because no rental occurred. Add cleaning, utilities or other costs created by the owner’s stay where applicable.

Separate annual cash yield from appreciation

Cash yield measures operating cash generation:

Cash yield = annual net owner cash flow / total owner cash invested

Define both sides. State whether cash flow is before or after financing, and whether invested cash includes acquisition payments, setup, furnishing and transaction costs borne by the owner. A yield with an incomplete denominator is overstated.

Appreciation is a separate outcome based on a future sale value that is unknown today. Keep any appreciation case outside annual operating yield and disclose assumed holding period, future value, selling costs, taxes and ownership-term effects. Do not add forecast appreciation to annual cash flow and label the result ROI without showing the calculation.

Audit the result before comparing villas

Before relying on any low, base or high output, check that:

  • sold nights reconcile to available nights and occupancy;
  • ADR contains accommodation revenue only, or exceptions are disclosed;
  • owner blocks and closure dates are visible;
  • channel and management charges use their contractual bases;
  • fixed costs remain in the low-occupancy case;
  • reserve, tax and financing are separate lines;
  • the modeled villa category matches the operator’s actual inventory presentation, such as Pronoia’s published rental listings;
  • management responsibilities match the contract, using these villa management questions as a review aid; and
  • cash yield is reported separately from appreciation.

If the model cannot show the source, basis and sensitivity of its occupancy, ADR and largest cost inputs, treat the displayed return as unverified rather than filling the gaps with a market average.

Sources

  1. Room occupancy rates of classified hotels in Bali BPS-Statistics Indonesia Bali Province · Accessed August 31, 2026
  2. Villa ownership and financial model Pronoia · Accessed August 31, 2026
  3. Rent a Pronoia villa Pronoia · Accessed August 31, 2026

General information only. Property, legal and tax decisions require independent Indonesian professional advice.

Pronoia · Jimbaran

Check the project against the guide

Request the current documents, prices and terms in writing, then review them with your own adviser.

Request the villa pack

Pronoia journal