Condos and villas for sale in Thailand, ranked by gross yield on all-in acquisition cost — with occupancy and nightly rates measured from Airbnb calendars, and the net figure after costs and tax on every card. Prices in USD.
Under Thailand’s Hotel Act, letting for under 30 days without a hotel licence is technically an offence; in practice much Phuket and Koh Samui stock operates through licensed buildings, branded-residence programmes or managed estates. Brixfox never claims a Thai listing is licensed for short-term letting — every listing carries the warning and you must verify the building’s position before underwriting. Ownership matters as much as yield: foreign buyers hold condos inside the 49% foreign quota, or villas on a 30-year leasehold or through a Thai company. Prices are USD end to end; coordinates are approximate.
Regulation overview only, not legal advice — verify with a local lawyer before purchase.

Koh Samui · 6 bed · 1980 m² build · 1298 m² land

Koh Samui · 2 bed

Mueang Phuket • Phuket · 4 bed · 317 m² build · 480 m² land

Koh Samui · 3 bed

Koh Samui · 5 bed

Koh Samui · 5 bed

Koh Phangan · 3 bed

Koh Phangan · 3 bed

Mueang Phuket • Phuket · 4 bed · 170 m² build · 154 m² land

Koh Samui · 3 bed · 160 m² build

Koh Samui · 4 bed · 300 m² build · 595 m² land

Koh Samui · 5 bed

Koh Samui · 2 bed

Koh Phangan · 2 bed · 176 m² land
Thalang • Phuket · 5 bed · 420 m² build · 1600 m² land

Koh Samui · 5 bed · 430 m² build · 1036 m² land

Koh Samui · 2 bed

Koh Samui · 3 bed

Koh Phangan · 4 bed

Kathu • Phuket · 5 bed · 357 m² build

Mueang Phuket • Phuket · 2 bed · 60 m² build

Koh Samui · 3 bed · 125 m² build · 530 m² land

Koh Samui · 3 bed

Koh Samui · 4 bed
Gross yield is modelled from the comparable Airbnbs around each property at its bedroom count, or from the property’s own calendar where its Airbnb listing has been photo-matched. Occupancy and ADR are measured from calendar diffs. Net yield on each card is after management, running costs and non-resident tax; it unlocks with a free account, as on every listings page. Listings with an implausible stored yield are withheld, not ranked.