99.co Property Scraper — Singapore Listings, Agents & KPIs
Pricing
from $2.00 / 1,000 property extracteds
99.co Property Scraper — Singapore Listings, Agents & KPIs
Extract 99.co Singapore real estate data: sale and rent listings by location, MRT, district, coordinates, polygon or URL. Get price, PSF, floor area, tenure, project analysis, floor plans, agent contacts and built-in market KPIs. Clean structured JSON plus HTML report.
Pricing
from $2.00 / 1,000 property extracteds
Rating
0.0
(0)
Developer
SIÁN OÜ
Maintained by CommunityActor stats
1
Bookmarked
4
Total users
3
Monthly active users
3 days ago
Last modified
Categories
Share
99.co Property Scraper — Singapore Listings, Agents & Market KPIs 🏠
Pull 99.co Singapore real estate into clean, structured data. Scrape for-sale AND rental listings by location, MRT, district, coordinates, custom polygon, or a 99.co search URL — and get back complete records with price, price-per-square-foot (PSF), floor area, tenure, bedrooms/bathrooms, geo coordinates, photos and the listing agent's contacts. Add optional listing-detail enrichment (project analysis, floor plans, similar listings) and mine the 28,000+ Singapore agent directory for lead generation.
Built-in market KPIs (median price, median PSF, district/type/tenure breakdowns) and an HTML report ship with every run.
🔎 What is the 99.co Property Scraper — and when should you use it?
The 99.co Property Scraper turns Singapore property listings and agent profiles from 99.co into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. No account, no portal API key, no browser automation to maintain.
Use it when you need: Singapore sale and rent listings with price, price per square foot (PSF), floor area in sqft and sqm, bedrooms, bathrooms, tenure, completion year, district, postal code, coordinates and photos. The listing agent's phone, WhatsApp and CEA licence come attached to each row. Every run also computes median price and median PSF by district, property type and tenure, and a separate agents mode returns the Singapore agent directory with agency, transaction counts and contact details.
Use something else when: you need a different Asian market. Use FazWaz Thailand Property Scraper for Thai sale and rent listings across Phuket, Bangkok and the rest of the country. Use SUUMO Property Scraper for Japanese rent and sale listings with layout, building age and station access. This actor covers Singapore only.
🤖 Use with AI agents
Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/99co-property-scraper
Your agent can pay for its own runs. This Actor is eligible for agentic payments, so an agent can discover it, run it and settle the bill over x402 (USDC on Base) or Skyfire — without an Apify account or API token of its own. Billing is the same either way: per successful row, never for errors.
Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:
I want Singapore property data from 99.co using the Apify Actor `sian.agency/99co-property-scraper`.Use it when I need: Singapore sale and rent listings with price, price per square foot (PSF), floor area in sqft and sqm, bedrooms, bathrooms, tenure, completion year, district, postal code, coordinates and photos. The listing agent's phone, WhatsApp and CEA licence come attached to each row. Every run also computes median price and median PSF by district, property type and tenure, and a separate agents mode returns the Singapore agent directory with agency, transaction counts and contact details.Don't use it when: you need a different Asian market — use fazwaz-property-scraper or suumo-property-scraper instead.How to call it: pick a `searchMode` — `location` (free-text place, MRT station, district or project), `coordinates` (`latitude` + `longitude` + `radius` in metres), `polygon` (a custom map area), `url` (paste a 99.co search-results URL) or `agents` (the Singapore agent directory); set `listingType` to `sale`, `rent` or `both`; narrow with `propertyType`, `propertySegment`, `bedrooms`, `minPrice`/`maxPrice`, `minFloorArea`/`maxFloorArea` or `tenure`; and switch on `enrichListings` for project analysis, floor plans and similar listings.Start with this input:{"searchMode": "location","listingType": "sale","location": "Orchard","propertyType": "condo","maxResults": 60}Ask me which Singapore location, MRT station or district, and whether you want sale listings, rent listings or the agent directory, then run the Actor and summarise the results as a table.
Things you can ask your agent for:
- Pull condos for sale within 2 km of Orchard MRT and rank them by price per square foot.
- Compare median PSF across District 9, 10 and 15 for freehold condos.
- Build a contact list of ERA agents in Singapore with their CEA licence numbers.
Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/99co-property-scraper.md.
✨ Why this actor
- Every way to search — free-text location, coordinate + radius, custom-drawn polygon, a 99.co search URL, or the agent directory.
- Geo search no one else offers — coordinate-radius and polygon search for map-driven sourcing.
- Sale + rent in one run — pull one side or both (
listingType: both). - Listing-detail enrichment — project analysis (facilities, nearest MRT/schools/malls), floor plans, and up to 20 similar listings per home.
- Agent lead-gen — Singapore agents with agency, CEA license, phone/WhatsApp, transaction counts and verified flag; optional full-profile enrichment.
- Market KPIs built in — median price, median PSF, district / property-type / tenure breakdowns, plus an HTML report.
- Pay only for keeps — charged per deduplicated result row, not per page or per query.
🚀 Quick start
- Pick a Search Mode (
location,coordinates,polygon,url, oragents). - For property modes, set Listing Type (
sale,rent, orboth). - Provide the mode's input (e.g.
location: "Orchard"). - Optionally add filters (property type, beds/baths, price, floor area, tenure) and turn on enrichment (PAID).
- Run — results stream to the dataset, KPIs and an HTML report to the key-value store.
{"searchMode": "location","listingType": "sale","location": "Orchard","propertyType": "condo","minPrice": 1000000,"maxResults": 60}
🧭 Search modes
| Mode | Input | Returns |
|---|---|---|
location | location (district / MRT / zone / project / street) | property listings |
coordinates | latitude, longitude, radius (m) | property listings |
polygon | polygon (lat,lng lat,lng …, ≥3 vertices) | property listings |
url | searchUrl (a 99.co search-results URL) | property listings |
agents | agentQuery (name / agency, optional) | agent directory rows |
⚙️ Input parameters
| Field | Type | Applies to | Description |
|---|---|---|---|
searchMode | string | all | location / coordinates / polygon / url / agents. |
listingType | string | property modes | sale / rent / both (both is PAID). |
location / locations | string / array | location mode | Free-text SG location(s). Bulk array is PAID. |
latitude / longitude / radius | number | coordinates mode | Search centre and radius in metres (100–30000). |
polygon | string | polygon mode | lat,lng lat,lng … (≥3 vertices), GeoJSON, or an encoded polyline. |
searchUrl / searchUrls | string / array | url mode | 99.co search-results URL(s). Bulk array is PAID. |
agentQuery | string | agents mode | Agent name or agency keyword (optional). |
maxResults | integer | all | Cap on rows per query (FREE capped at 25/run). |
propertyType, propertySegment, bedrooms, bathrooms, minPrice, maxPrice, minFloorArea, maxFloorArea, tenure | mixed | property modes | Optional server-side filters. |
enrichListings | boolean | property modes | Full detail per listing (PAID). |
enrichAgents | boolean | agents mode | Full profile per agent (PAID). |
📤 Output
Each property row includes:
| Field | Description |
|---|---|
propertyId | Unique 99.co listing ID |
listingType | sale or rent |
listingTitle, projectName | Title and project/development name |
propertyType, subType, propertySegment | Category, sub-type, segment |
address | Address lines, street, postal code, district |
pricing | price, priceFormatted, psf, psfFormatted, currency |
specs | Bedrooms, bathrooms, floor area (sqft/sqm), tenure, completion year |
location | Latitude / longitude |
media | Photo count, floor-plan count, thumbnail, photo URLs |
agent | Listing agent name, phone, WhatsApp, license |
url | Listing URL on 99.co |
detail | (Optional, PAID) Project analysis, floor plans, similar listings |
Agent rows include agentId, name, agency, license, phone, whatsappLink, profileUrl, totalListings, totalTransactions, isVerified, and an optional enriched detail profile.
A report.html with market or agent-directory KPIs is written to the key-value store.
❓ FAQ
How many results per run? FREE: 25 rows per run. PAID: unlimited, with auto-pagination up to the search's full result set.
What's in the enriched detail? Project analysis (facilities, nearest MRT/schools/malls with walking time, live sale/rent listing counts), floor plans, and up to 20 comparable listings.
Do you support commercial property? Yes — set propertySegment: commercial to unlock the commercial property types and filters.
⚠️ Trademark Disclaimer
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by 99.co or 99 Group. The name "99.co" is used solely in a descriptive sense to identify the public data source the Actor reads from. All trademarks, service marks, and trade names referenced in this Actor or its documentation are the property of their respective owners.
⚖️ Legal
Only publicly available data is extracted. You are responsible for how you use the output and for complying with 99.co's terms and applicable laws.