Skip to content

PropertyGuru Scraper

Try for free

Scrape PropertyGuru Singapore and Malaysia: condos, HDB flats, landed homes and more for sale or rent with price, psf, beds, baths, size, address, coordinates, MRT and schools nearby, photos, description, project details and agent name, phone, licence and agency.

🏠 PropertyGuru Scraper

Scrape PropertyGuru Singapore (propertyguru.com.sg) and PropertyGuru Malaysia (propertyguru.com.my) into clean, spreadsheet-ready rows: condos, HDB flats, landed homes, land and Malaysian commercial property for sale or rent. Each row has the price, price per sqft, beds, baths, size, full address, GPS coordinates, nearby MRT/LRT stations and schools, photos, floor plans, description and project details, plus the agent's name, phone number, licence number and agency. No login and no browser needed.

✨ Why use PropertyGuru Scraper?

  • ⚡ Fast: plain HTTP with parallel pages. Small jobs finish in seconds and 1,000 listings with full details take a few minutes.
  • 🇸🇬🇲🇾 Two countries, one actor: paste Singapore and Malaysia URLs side by side, or pick a market and search by location.
  • 📞 Agent contacts included: phone number, CEA / REN licence, agency name and licence, job title, profile link and verification badge.
  • 🗺️ Precise location: district and region codes, postcode, street, latitude/longitude, the nearest MRT/LRT stations with walking time, and up to 10 nearby schools.
  • 🔎 Flexible input: paste any PropertyGuru search, listing or project URL, or type locations such as D09, Tampines, Kuala Lumpur or Mont Kiara and set filters.
  • 🛡️ Reliable: handles PropertyGuru's Cloudflare protection, retries blocked pages, and uses residential proxies pinned to Singapore or Malaysia to match each site.

🎯 Use cases

  • 📈 Price monitoring: track asking prices, rents and price psf per condo project, HDB estate or district over time.
  • 🤝 Lead generation: build lists of active agents and agencies in a district or township, with phone numbers and licence numbers.
  • 🏗️ Market research: compare supply by property type, size, tenure and TOP or completion year, and follow developer launches.
  • 🧮 Investment analysis: work out rental yields per project by scraping its sale and rent units (project URLs return both).
  • 🗺️ Mapping and GIS: plot listings with coordinates, MRT distances and nearby schools.
  • 🤖 Data feeds: schedule daily runs with Posted within and push fresh listings to your CRM, BI tool or database through the API.

🚀 How to use

  1. Open propertyguru.com.sg or propertyguru.com.my, search with the filters you want and copy the URL. Or skip this step and type locations into Locations to search.
  2. Paste one or more URLs into PropertyGuru URLs. Search pages, listing pages and project pages all work.
  3. Set Max listings (0 = no limit). For location searches, also pick the market and the filters: sale or rent, property type, price, bedrooms, size, tenure and more.
  4. Leave Open each listing page on to get phones, coordinates, descriptions and schools, or turn it off for a faster, cheaper run.
  5. Click Start, then download the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldWhat it does
startUrlsPropertyGuru SG or MY search URLs (any filters), listing URLs, or project URLs (all sale and rent units in the project).
locationsSingapore: district codes (D09) or names, or any neighbourhood, HDB estate, MRT station or condo name. Malaysia: state names (Kuala Lumpur, Selangor, Penang) or any area, township or project.
maxItemsMaximum listings across all inputs (default 20, 0 = no limit).
listingTypesale or rent (for location searches).
marketSG or MY: the site used for location and filter-only searches.
propertyTypecondo, condominium, apartment, executive-condo, hdb, landed, terraced-house, semi-detached-house, detached-house, bungalow, good-class-bungalow, cluster-house, townhouse, serviced-residence, flat, land, commercial, office, shop, industrial, agricultural-land.
minPrice / maxPricePrice range in SGD or MYR (monthly rent for rentals).
minBedrooms / maxBedrooms / minBathroomsRoom filters (0 bedrooms = studio).
minSize / maxSizeFloor area in sqft.
keyword, furnishing, tenure, postedWithinDays, sortExtra filters and sort order.
includeDetailsOpen each listing page for the phone, coordinates, description, schools, unit features, floor plans and dates (default on).
proxyConfigurationProxy settings. Residential (default) is pinned to the listing's country; datacenter IPs get Cloudflare challenges, so a datacenter run moves to residential by itself.
{
  "startUrls": [{ "url": "https://www.propertyguru.com.sg/property-for-sale?listingType=sale&propertyTypeGroup=N&locale=en" }],
  "locations": ["D15", "Bishan"],
  "market": "SG",
  "listingType": "rent",
  "propertyType": "condo",
  "minPrice": 3000,
  "maxPrice": 6000,
  "minBedrooms": 2,
  "maxItems": 500,
  "includeDetails": true
}

📤 Output

One row per listing. Main fields:

FieldDescription
id, url, marketListing ID, link and country (SG / MY).
title, headline, projectName, descriptionListing title, agent headline, project and full description.
listingType, propertyType, propertyTypeGroup, hdbTypeSale or rent, type (e.g. Condominium, HDB Flat 4A, Terraced House).
price, priceFormatted, currency, priceType, pricePerSqftAsking price or monthly rent, SGD or MYR, negotiable flag and price psf.
bedrooms, bathrooms, floorAreaSqft, floorAreaSqm, landAreaSqft, landAreaSqmSize and rooms.
tenure, furnishing, floorLevel, tenancyStatus, unitFeatures, facilitiesUnit and project details.
address, street, postalCode, district, districtCode, region, regionCode, latitude, longitudeLocation.
nearestTransit, nearbyStations, nearbySchoolsNearest MRT/LRT stations and schools with distances.
photos, photoCount, floorPlans, videoUrls, thumbnailMedia.
agentName, agentPhone, agentPhones, agentLicense, agentJobTitle, agentVerified, agentProfileUrlAgent.
agencyName, agencyLicense, agencyId, listerTypeAgency.
developer, completionYear, totalUnits, projectStatus, projectUrl, projectDescriptionProject facts (TOP year in Singapore).
postedAt, updatedAt, firstPostedAt, expiresAt, listedText, statusDates and status.

Example (trimmed; people and phone numbers are fictional):

{
  "id": 500207545,
  "url": "https://www.propertyguru.com.sg/listing/for-sale-concourse-skyline-500207545",
  "market": "SG",
  "title": "Concourse Skyline",
  "listingType": "sale",
  "propertyType": "Condominium",
  "price": 2950000,
  "priceFormatted": "S$ 2,950,000",
  "currency": "SGD",
  "priceType": "Negotiable",
  "pricePerSqft": 1768.59,
  "bedrooms": 4,
  "bathrooms": 4,
  "floorAreaSqft": 1668,
  "floorAreaSqm": 155.0,
  "tenure": "99-year Leasehold",
  "furnishing": "Partially Furnished",
  "address": "300 Beach Road, Beach Road / Bugis / Rochor",
  "postalCode": "199555",
  "district": "Beach Road / Bugis / Rochor",
  "districtCode": "D07",
  "region": "City & South West (D01-08)",
  "latitude": 1.300603,
  "longitude": 103.861821,
  "nearestTransit": "CC5 Nicoll Highway MRT Station (340 m)",
  "nearbySchools": [{ "name": "Stamford Primary School", "type": "PRIMARY SCHOOL", "distanceKm": 0.9, "walkMinutes": 12 }],
  "facilities": ["Clubhouse", "Gymnasium room", "Lap pool"],
  "photoCount": 9,
  "agentName": "Jane Tan",
  "agentPhone": "+6590000000",
  "agentLicense": "R000000A",
  "agencyName": "ERA REALTY NETWORK PTE LTD",
  "agencyLicense": "L3002382K",
  "developer": "Hong Fok Land Ltd",
  "completionYear": 2014,
  "totalUnits": 360,
  "postedAt": "2026-10-15T23:35:09Z"
}

💰 Pricing

You pay per listing saved: $1.50 per 1,000 listings, plus $0.50 per 1,000 listings that are enriched from their listing page (phone, coordinates, description, schools). With details on, that's $2.00 per 1,000 listings; with details off, $1.50. Platform usage (compute and residential proxy traffic) is billed separately and is small.

Worked example: 1,000 listings with full details cost about $2.00 in listing fees plus a few cents of usage.

❓ FAQ

Is it legal to scrape PropertyGuru? The actor collects publicly visible listing data only, without logging in. You are responsible for using the data in line with PropertyGuru's terms and data protection laws such as Singapore's PDPA and Malaysia's PDPA, especially for agent contact details.

Do I need an account, cookies or my own proxy? No. The actor works without login and uses the platform's residential proxies in Singapore or Malaysia by default (PropertyGuru challenges datacenter IPs).

How many listings can I get? As many as the search has. PropertyGuru shows 20 listings per page and the actor walks through every page. Use several URLs or locations for very large exports.

Why is a field empty? Agents fill listings differently: some don't add floor plans, floor level or furnishing, and HDB or landed listings have no project facts. Rows saved with Open each listing page off contain search-card data only.

Can I sort by newest? In Malaysia, yes. PropertyGuru Singapore blocks automated access to its "Newest" sort, so Singapore searches run in Recommended order. Use Posted within (3, 7, 14 or 31 days) to get fresh listings.

Can I schedule it or use the API? Yes. Schedule runs in the console, or start them through the API and read the dataset as JSON, CSV or Excel.

⚠️ Limits

  • Covers PropertyGuru Singapore and Malaysia. Singapore commercial property lives on a separate site (CommercialGuru) and is not covered.
  • No agent directory rows, transaction history or price-history charts.
  • Singapore searches can't use the "Newest" sort (see the FAQ).
  • PropertyGuru serves only the first 19 result pages (380 listings) of one search to automated clients. Bigger searches are split into price ranges automatically, so results come in price-range order instead of the site's order, and listings without a price can be missed in those split searches.
  • Location names that are not a Singapore district or Malaysian state run through the site's keyword search, so results follow PropertyGuru's own matching.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.