PropertyGuru Scraper avatar

PropertyGuru Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
PropertyGuru Scraper

PropertyGuru Scraper

Scrape PropertyGuru real estate listings at scale and extract property prices, locations, types, bedrooms, agent details, descriptions, images, and listing URLs. Ideal for property market research, price analysis, lead generation, real estate data, and investment insights.

Pricing

from $1.00 / 1,000 results

Rating

5.0

(5)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

4

Bookmarked

101

Total users

11

Monthly active users

4 days ago

Last modified

Share

What does PropertyGuru Malaysia and Singapore Property Scraper do?

PropertyGuru Malaysia and Singapore Property Scraper collects public property-for-sale listings from PropertyGuru Malaysia and PropertyGuru Singapore into a structured dataset. Start with a PropertyGuru root URL, sale-results URL, or filtered search URL, then export listing prices, locations, property details, agent information, images, and direct listing links for market research, property analysis, and lead workflows.

It is useful for investors, analysts, agencies, and data teams that need repeatable PropertyGuru listing data without copying individual listings into a spreadsheet. Run it once for a focused area or schedule recurring runs to monitor changes in supply and asking prices.

Why use PropertyGuru Malaysia and Singapore Property Scraper?

  • Build property datasets quickly - Collect sale listings from Malaysia or Singapore in a consistent format for research, reporting, and comparisons.
  • Focus on a market or area - Use a filtered PropertyGuru search URL to collect the properties that match a location or the filters already applied on the website.
  • Compare listing signals - Review price, size, bedrooms, bathrooms, tenure, property type, listing freshness, and agent details in one dataset.
  • Monitor market changes - Schedule regular runs to track asking-price movements, new supply, and listing activity over time.
  • Use data in existing workflows - Download results as JSON, CSV, Excel, or XML, connect them to Google Sheets, or send them to your API and automation tools.

What data can you extract from PropertyGuru?

FieldDescription
listing_idPropertyGuru listing identifier when available
titleListing title or property name
urlDirect link to the property listing
priceDisplayed asking price
price_valueNumeric asking price when published
currencyListing currency, such as MYR or SGD
locationAddress, neighbourhood, district, or region information
bedroomsNumber of bedrooms when available
bathroomsNumber of bathrooms when available
sizePublished property size
property_typeProperty type, such as condominium, apartment, or house
tenureTenure information when published
posted_onListing posted date text
recencyListing freshness label from PropertyGuru
agent_nameListing agent name when available
agent_companyAgency or company name when available
image_urlsAvailable property image URLs
search_urlSearch page used to collect the record

Fields can vary because PropertyGuru does not publish every attribute on every listing.

How to scrape PropertyGuru data

  1. Open PropertyGuru Malaysia or PropertyGuru Singapore and apply the sale filters you need.
  2. Copy the public results-page URL, or use a PropertyGuru root URL to start from the default sale page.
  3. Paste the URL into startUrl, choose the number of properties and pages to collect, then run the Actor.
  4. Review the dataset in Apify and export it or connect it to your downstream workflow.

For small checks, start with 20 properties. Increase the result and page limits after confirming the selected PropertyGuru search page returns the listings you expect.

Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlStringNoPropertyGuru Malaysia sale pageA public PropertyGuru Malaysia or Singapore root URL, sale-results URL, or filtered search URL.
results_wantedIntegerNo20Maximum number of property records to save. Must be at least 1.
max_pagesIntegerNo10Maximum number of PropertyGuru results pages to process. Must be at least 1.
proxyConfigurationObjectNoApify residential proxy configurationOptional connection configuration. The default is suitable for multi-page runs.

Output Data

Each dataset item represents one PropertyGuru property listing and can include the following fields.

FieldTypeDescription
listing_idIntegerPropertyGuru listing identifier
external_idStringPublished external listing reference
titleStringListing title
urlStringDirect property listing URL
priceStringFormatted asking price
price_valueNumberNumeric asking price
currencyStringCurrency code
price_per_areaStringPublished price-per-area text
locationStringAddress or area information
bedroomsStringBedroom count
bathroomsStringBathroom count
sizeStringProperty-size text
property_typeStringPublished property type
tenureStringTenure label when available
listing_typeStringListing category, such as for sale
posted_onStringPosted date text
recencyStringListing freshness label
descriptionStringListing headline or description when available
image_urlStringPrimary property image URL
image_urlsArrayAvailable property image URLs
image_countIntegerNumber of images detected
agent_nameStringAgent name when published
agent_companyStringAgency or company name when published
agent_profile_urlStringAgent profile URL when available
districtStringDistrict information
regionStringRegion information
search_originStringSource PropertyGuru domain
search_urlStringSearch page used for collection
search_pageIntegerResults-page number where the record was found

Usage Examples

Basic Malaysia property extraction

Collect the first 20 sale listings from the default PropertyGuru Malaysia results page.

{
"results_wanted": 20,
"max_pages": 1
}

Kuala Lumpur search results

Collect up to 100 listings from a public PropertyGuru Malaysia search for Kuala Lumpur.

{
"startUrl": "https://www.propertyguru.com.my/property-for-sale?listingType=sale&freetext=Kuala+Lumpur",
"results_wanted": 100,
"max_pages": 5
}

Collect sale listings from a public PropertyGuru Singapore search page.

{
"startUrl": "https://www.propertyguru.com.sg/property-for-sale?listingType=sale&market=residential&freetext=Jurong+East",
"results_wanted": 60,
"max_pages": 3
}

Sample Output

{
"listing_id": 501016902,
"external_id": "501016902",
"title": "Hillview Green",
"url": "https://www.propertyguru.com.sg/listing/for-sale-hillview-green-23177314",
"price": "S$ 2,580,000",
"price_value": 2580000,
"currency": "SGD",
"location": "67 Hume Avenue",
"bedrooms": "3",
"bathrooms": "3",
"size": "1496 sqft",
"property_type": "Condominium",
"tenure": "999-year Leasehold",
"posted_on": "7 Jun 2026",
"recency": "Listed on Jun 07, 2026",
"image_urls": [
"https://sg1-cdn.pgimgs.com/listing/23177314/UPHO.150473566.V800/Hillview-Green-Clementi-Park-Upper-Bukit-Timah-Singapore.jpg"
],
"image_count": 17,
"agent_name": "Heng Heng",
"district": "Clementi Park / Upper Bukit Timah",
"region": "Newton / Bt. Timah (D11, 21)",
"search_origin": "https://www.propertyguru.com.sg",
"search_url": "https://www.propertyguru.com.sg/property-for-sale",
"search_page": 1
}

Tips for Best Results

  • Use public PropertyGuru results pages - Copy the URL after setting the desired sale filters on PropertyGuru. A focused search produces a more useful dataset.
  • Start with a small run - Use 20 properties and one or two pages to check the search URL before running a larger collection.
  • Set both limits deliberately - results_wanted caps saved records, while max_pages controls how deeply the search results are explored.
  • Expect optional fields - Agent data, tenure, images, build year, and property details can be absent when the source listing does not publish them.
  • Refresh recurring research - For market monitoring, schedule repeated runs and compare exports by listing ID, price, location, and recency.
  • Report changed pages - Public pages can change. If a selected URL stops returning expected results, report it through the Actor's Issues tab with the URL and run details.

Integrations

  • Google Sheets - Export PropertyGuru listings for shared analysis and filtering.
  • Webhooks - Send fresh listing records to your application after a run completes.
  • Make or Zapier - Add new property data to CRM, notification, and research workflows.
  • Apify API - Retrieve datasets programmatically for dashboards, valuation tools, or data pipelines.
  • CSV, Excel, JSON, and XML - Download results in a format that suits spreadsheets, reporting, and system imports.

Frequently Asked Questions

Can I export PropertyGuru data to CSV or Excel?

Yes. Apify datasets can be downloaded as CSV, Excel, JSON, XML, and other supported export formats.

Can I collect PropertyGuru Malaysia and Singapore listings?

Yes. Use a public URL from propertyguru.com.my for Malaysia or propertyguru.com.sg for Singapore.

Can I use a filtered PropertyGuru search URL?

Yes. Use the public results-page URL after applying your filters on PropertyGuru. The Actor collects the listings returned by that page.

Why are some listing fields missing?

Some fields can be missing because the source listing does not publish them. Check several records before treating an optional missing value as a problem.

Can I run this Actor on a schedule?

Yes. Create an Apify schedule to refresh PropertyGuru listing data at the interval your monitoring workflow needs.

Collecting public data may be permitted in some situations, but you are responsible for complying with applicable laws, PropertyGuru terms, and privacy obligations.

Support

For issues, feature requests, or custom Actor work, use the Issues tab on the Actor page or contact the developer through Apify.

This Actor is intended for legitimate collection of publicly available PropertyGuru listing data. You are responsible for respecting applicable laws, PropertyGuru terms, privacy requirements, and appropriate data-use practices.