// Adds dimensions UUID, Author and Topic into GA4
Saturday, August 8, 2026
30 C
Singapore

Singapore’s private home prices expected to increase by 0-3% next year

SINGAPORE: Singapore’s private home prices are expected to increase modestly by 0-3% in 2025, driven by a surge in new launches, according to the Singapore Business Review.

CGS International (CGSI) reported that developers expect 8,200-8,300 residential units to be launched in the first half of 2025, with new private home sales projected to reach 6,000-7,000 units for the year.

Developers are currently trading at a 58% discount to revalued net asset value (RNAV) and 0.52 times their forecasted price-to-book value (P/BV) for 2024, well below their 10-year average.

Developers who are more focused on residential properties will likely benefit as home sales pick up. However, CGSI warned that a tempered rate cut outlook could limit significant growth in share prices in the short term.

The lower interest rate environment in Singapore could increase interest in residential property.

CGSI maintained a neutral stance on the sector, picking CapitaLand Investment (CLI) as its top choice, followed by UOL. For smaller companies, CGSI preferred property broker PROP. /TISG

Read also: Why 1-room HDB prices are reaching record highs

Featured image by Depositphotos (for illustration purposes only)

- Advertisement -

Hot this week

Woman fears introducing BF who studies at a ‘low-tier school’ to her family: ‘We’re from 2 different worlds’

A woman says she's avoided introducing her boyfriend to her parents for two years because she's convinced they'll judge him for his background and never accept their relationship.

SCDF extinguishes Hougang recycling bin fire; cigarette butt suspected

Residents were startled after a recycling bin caught fire in Hougang, leaving burnt recyclables scattered across the ground.

Popular Categories

document.addEventListener("DOMContentLoaded", () => { const trigger = document.getElementById("ads-trigger"); if ('IntersectionObserver' in window && trigger) { const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { lazyLoader(); // You should define lazyLoader() elsewhere or inline here observer.unobserve(entry.target); // Run once } }); }, { rootMargin: '800px', threshold: 0.1 }); observer.observe(trigger); } else { // Fallback setTimeout(lazyLoader, 3000); } });
// //
Enable Notifications OK No thanks