Skip to content

DDproperty Scraper

Try for free

Scrape DDproperty.com, Thailand's largest property portal: condos, houses, land and commercial listings for sale or rent with price, beds, baths, size, location, coordinates, photos, description, facilities, project and agent name, phone and agency.

🏠 DDproperty Scraper

Scrape DDproperty.com, Thailand's largest property portal, into clean spreadsheet-ready rows: condos, houses, townhouses, land and commercial space for sale or rent, with price, beds, baths, size, full address, GPS coordinates, photos, description, facilities, project details and the agent's name, phone number, LINE ID and agency. No login, no browser: 1,000 listings with full details took under 2 minutes in our tests.

✨ Why use DDproperty Scraper?

  • ⚡ Fast — 1,000 listings with full details in about 105 seconds in our tests; search-card mode is even faster.
  • 📞 Agent contacts included — phone number, LINE ID, agency, profile link and verification badge for each listing.
  • 🗺️ Precise location — province, district, sub-district with official codes, postcode, latitude/longitude and the nearest BTS/MRT stations with walking distance.
  • 🔎 Flexible input — paste any DDproperty search, listing or condo project URL, or just type locations like Bangkok, Phuket, Watthana or Sukhumvit and set filters.
  • 🛡️ Reliable — handles DDproperty's Cloudflare protection automatically, retries blocked pages and switches to Thai residential proxies by itself if needed.
  • 💸 Cheap — pay per listing, no monthly fee.

🎯 Use cases

  • 📈 Price monitoring — track asking prices and rents per condo project, district or BTS station over time.
  • 🤝 Lead generation — build lists of active agents and agencies in Bangkok, Phuket, Pattaya or Chiang Mai with their phone and LINE contacts.
  • 🏗️ Market research — compare supply by property type, size, tenure and completion year; spot new launches from developers.
  • 🧮 Investment analysis — compute price per sqm and rental yields for specific condo projects (sale and rent listings of the same project).
  • 🗺️ Mapping and GIS — plot listings with coordinates and transit distances.
  • 🤖 Data feeds — schedule daily runs and push fresh listings to your CRM, BI tool or database through the API.

🚀 How to use

  1. Open ddproperty.com/en, run a search with the filters you want and copy the URL. Or skip this and type locations into Locations to search.
  2. Paste one or more URLs into DDproperty URLs (search pages, listing pages or condo project pages all work).
  3. Set Max listings (0 = no limit) and, for location searches, the filters (sale or rent, property type, price, bedrooms, size and more).
  4. Keep Open each listing page on to get phones, coordinates and descriptions, or turn it off for a faster, lighter run.
  5. Click Start and download the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldWhat it does
startUrlsDDproperty search URLs (any filters, region, district, BTS/MRT or project search), listing URLs, or project URLs (/en/project/..., returns all sale and rent units in the project).
locationsProvince, district or sub-district names (Bangkok, Phuket, Pattaya, Hua Hin, Watthana, Khlong Toei ...) or location codes like TH10. Other text runs as a keyword search (Sukhumvit, Thonglor, a project or road).
maxItemsMaximum listings across all inputs (default 20, 0 = no limit).
listingTypesale or rent (for location searches).
propertyTypecondo, house, semi-detached-house, townhouse, villa, apartment, land, shophouse, office-space, retail-space, warehouse, business.
minPrice / maxPricePrice range in THB (monthly rent for rentals).
minBedrooms / maxBedrooms / minBathroomsRoom filters (0 bedrooms = studio).
minSize / maxSizeFloor area in sqm.
keyword, furnishing, tenure, newProjectsOnly, sortExtra filters and sort order.
includeDetailsOpen each listing page for phone, coordinates, description, facilities, all photos and dates (default on).
proxyConfigurationProxy settings. Datacenter works; the run moves to Thai residential proxies by itself if it gets blocked.
{
  "startUrls": [{ "url": "https://www.ddproperty.com/en/property-for-sale/in-bangkok-th10" }],
  "locations": ["Phuket", "Sukhumvit"],
  "listingType": "rent",
  "propertyType": "condo",
  "minPrice": 20000,
  "maxPrice": 60000,
  "minBedrooms": 1,
  "maxItems": 500,
  "includeDetails": true
}

📤 Output

One row per listing. Main fields:

FieldDescription
id, url, title, headlineListing ID, link, title and the agent's headline
listingType, propertyType, propertyTypeGroupSale or rent, and the property type
price, priceFormatted, currency, pricePerSqm, priceTypeAsking price or monthly rent in THB
bedrooms, isStudio, bathrooms, floorAreaSqm, landAreaSqm, landAreaSize and rooms
tenure, furnishing, floorLevel, parkingSpotsUnit details
address, street, postalCode, subDistrict, district, province (+ codes)Location
latitude, longitude, nearestTransit, nearbyStationsCoordinates and BTS/MRT stations
description, features, facilities, photos, photoCount, videoUrlsContent and media
agentName, agentPhone, agentPhones, agentLineId, agentVerified, agentProfileUrl, agencyNameAgent and agency
projectName, projectId, developer, completionYear, totalUnits, isNewProjectCondo / housing project
postedAt, updatedAt, firstPostedAt, expiresAt, listedText, statusDates (UTC) and status

Example (trimmed; agent details replaced with fictional ones):

{
  "id": 500648081,
  "url": "https://www.ddproperty.com/en/property/metro-luxe-ratchada-bangkok-for-rent-500648081",
  "title": "Metro Luxe Ratchada, Bangkok",
  "projectName": "Metro Luxe Ratchada",
  "listingType": "rent",
  "propertyType": "Condo",
  "price": 13000,
  "priceFormatted": "฿13,000 /mo",
  "currency": "THB",
  "pricePerSqm": "฿448.28 / sqm",
  "bedrooms": 1,
  "bathrooms": 1,
  "floorAreaSqm": 29,
  "furnishing": "Partially Furnished",
  "address": "461 Ratchadaphisek Road, Din Daeng, Bangkok",
  "postalCode": "10400",
  "district": "Din Daeng",
  "province": "Bangkok",
  "latitude": 13.784105,
  "longitude": 100.573093,
  "nearestTransit": "BL18 Huai Khwang MRT (1160 m)",
  "facilities": ["Car park", "CCTV", "Fitness corner", "Jacuzzi", "Jogging track"],
  "photos": ["https://th1-cdn.pgimgs.com/listing/500648081/UPHO.140140608.V800/Metro-Luxe-Ratchada-Din-Daeng-Thailand.jpg"],
  "photoCount": 7,
  "agentName": "Example Realty Co.",
  "agentPhone": "+66812345678",
  "agentLineId": "@examplerealty",
  "agencyName": "Example Realty Co.",
  "developer": "Property Perfect",
  "completionYear": 2017,
  "totalUnits": 535,
  "postedAt": "2026-10-15T09:57:04Z",
  "expiresAt": "2026-11-16T09:57:04Z"
}

💰 Pricing

You pay $1.40 per 1,000 listings ($0.0014 per listing), with listing details included at no extra charge. There is no start fee and no monthly rental. Platform usage (compute and proxy traffic) is billed separately and is small: a 1,000-listing run with full details used about $0.06 of usage on datacenter proxies, so 1,000 listings ≈ $1.46 in total. If DDproperty blocks the datacenter exits and the run moves to residential proxies, usage is roughly $0.20 per 1,000 listings instead.

❓ FAQ

Is it legal to scrape DDproperty? The actor only collects publicly visible listing data, the same as any visitor sees. Personal data such as agents' phone numbers is subject to data protection laws (for example Thailand's PDPA); make sure you have a lawful basis for how you use it.

Do I need a DDproperty account, cookies or my own proxy? No. The actor needs no login. It uses the platform proxy and handles DDproperty's Cloudflare protection on its own.

How many listings can I get? As many as the search has. DDproperty serves every page of a search (for example about 67,000 Bangkok listings for sale), and the actor walks all of them up to your Max listings. Duplicate listings across pages and inputs are removed.

Why is a field empty? Fields are filled only when DDproperty shows them. Developer new-launch listings often have no fixed price or agent phone, land has no bedrooms, and phone, coordinates and description need Open each listing page turned on.

Can I schedule it or use it from code? Yes. Schedule runs in the console, or start runs and read the dataset through the API in any language.

Thai-language links? Paste them as they are. The actor reads the English version of the same page so text fields come back in English (descriptions stay in the language the agent wrote them in).

⚠️ Limits

  • Thailand's DDproperty.com only (not PropertyGuru Singapore/Malaysia or other sites).
  • Agent profile pages and the agent directory are not scraped as their own rows; agent details come with each listing.
  • Descriptions are returned in the language the agent wrote (often Thai).
  • Multiple property types in one location search are not supported; run one type per run or paste a site URL.

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.