SYSTEM all green source privateproperty.co.za queue 14,892 pages p99 latency 184ms dataflirt.com · scraper/privateproperty-co.za
RUN . 18 active pipelines . privateproperty.co.za live

South African property data,
structured at scale.

We extract residential and commercial property listings, agent profiles, price histories, and neighbourhood metrics from PrivateProperty. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Listings extracted
218K /run
Price updates
42K /week
Agent profiles
12K /run
Active pipelines
18
Uptime
99.94%
Data Dictionary

Every field we extract from privateproperty.co.za

Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.

Complete list of extractable fields for Property Listings (Sale) objects from privateproperty.co.za. All fields typed and schema-versioned.

property_idtitlepriceproperty_typebedroomsbathroomsgarageserf_sizefloor_sizedescriptionaddresssuburbcityprovincelisting_dateagent_idimage_urls
property_listings (sale)
● 200 OK
"property_id": "T4829104",
"title": "3 Bedroom House for sale in Sandton",
"price": 3450000,
"property_type": "House",
"bedrooms": 3,
"bathrooms": 2.5,
"suburb": "Bryanston",
"city": "Sandton"
# property_idtitlepriceproperty_typebedroomsbathrooms
1
2
3

Complete list of extractable fields for Rental Properties objects from privateproperty.co.za. All fields typed and schema-versioned.

property_idtitlemonthly_rentdeposit_requiredavailable_datelease_termpet_friendlyfurnishedbedroomsbathroomsaddresssuburbagent_id
rental_properties
● 200 OK
"property_id": "R928174",
"monthly_rent": 18500,
"deposit_required": 18500,
"pet_friendly": true,
"furnished": false,
"suburb": "Rondebosch",
"available_date": "2026-01-01"
# property_idtitlemonthly_rentdeposit_requiredavailable_datelease_term
1
2
3

Complete list of extractable fields for Agent Profiles objects from privateproperty.co.za. All fields typed and schema-versioned.

agent_idnameagency_nameagency_branchcontact_numberactive_listings_countsold_properties_countagent_urlprofile_image_urlareas_covered
agent_profiles
● 200 OK
"agent_id": "A49201",
"name": "Sarah Jenkins",
"agency_name": "Pam Golding Properties",
"contact_number": "+27 82 555 0192",
"active_listings_count": 24,
"areas_covered": "['Sandton', 'Rosebank']"
# agent_idnameagency_nameagency_branchcontact_numberactive_listings_count
1
2
3

Complete list of extractable fields for Commercial Listings objects from privateproperty.co.za. All fields typed and schema-versioned.

property_idtitlepriceproperty_typegross_lettable_areaprice_per_sqmzoningparking_baysaddresssuburbdescriptionagent_id
commercial_listings
● 200 OK
"property_id": "C882910",
"property_type": "Office Space",
"gross_lettable_area": 450,
"price_per_sqm": 180,
"zoning": "Commercial",
"parking_bays": 12,
"suburb": "Century City"
# property_idtitlepriceproperty_typegross_lettable_areaprice_per_sqm
1
2
3

Complete list of extractable fields for Developments & Estates objects from privateproperty.co.za. All fields typed and schema-versioned.

development_idnamedeveloper_namephasetotal_unitsunits_availableprice_fromprice_toproperty_typescompletion_dateaddressamenities
developments_& estates
● 200 OK
"development_id": "D29104",
"name": "Waterfall Equestrian Estate",
"developer_name": "Century Property Developments",
"price_from": 4500000,
"total_units": 120,
"units_available": 14,
"amenities": "['Security', 'Clubhouse', 'Gym']"
# development_idnamedeveloper_namephasetotal_unitsunits_available
1
2
3

Capabilities

Extract the entire South African property market

Our PrivateProperty scraper navigates complex location hierarchies, dynamic map interfaces, and paginated search results to deliver structured real estate data.

Full Property Metadata

Extract bedrooms, bathrooms, erf sizes, floor sizes, levies, rates, and detailed property descriptions for every listing.

Precise Location Taxonomy

Capture the exact location hierarchy from province down to municipality, city, suburb, and street address.

Agent & Agency Intelligence

Link properties to specific agents and agencies. Track listing volumes and market share by brokerage.

Price & Rental Tracking

Monitor asking prices, rental rates, deposits, and price reductions over time across specific neighbourhoods.

Commercial & Farm Data

Extract specialized fields for commercial real estate and agricultural properties, including zoning and gross lettable area.

New Developments

Track unit availability, phase releases, and pricing tiers for new residential developments and estates.

Media Extraction

Capture high-resolution image URLs, floor plan links, and virtual tour endpoints for property valuation models.

Scheduled Diffing

Run daily or weekly pipelines that only deliver new listings, price changes, or delisted properties to reduce storage costs.

Advanced Filtering

Target extractions by specific criteria like pet-friendly rentals, properties with boreholes, or specific security features.

// engagement pipeline

From target suburbs to warehouse records

Brief in. Clean data out.

Define Scope
d 0

Provide target provinces, suburbs, property types, or specific agency URLs. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Scrapy crawlers, proxy rotation, session management, and JavaScript rendering for privateproperty.co.za.

Validation & QA
d 4–6

Schema validation, null-rate checks, and location taxonomy verification before full launch.

Delivery
ongoing

JSON, CSV, or Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.

Under the hood

Overcoming PrivateProperty extraction challenges

Property portals deploy aggressive rate limiting. Here is how we maintain steady pipelines for South African real estate data.

pipeline-monitor · privateproperty.co.za · live ● active
// fingerprinting
Identity rotation
TLS fingerprintrandomised
User-agentrotated
IP poolresidential
Challenges blocked0
// pagination
Page coverage
48,291 pages queued running
// observability
Pipeline health
99.9%
uptime
142ms
p99 lat
0.3%
null rate
2
alerts
Anti-bot layer
South African residential proxies

Property portals rate-limit aggressive datacenter IPs. We route requests through residential proxies located in South Africa, matching local user behaviour to maintain uninterrupted extraction.

JavaScript rendering
Handling dynamic maps and galleries

PrivateProperty relies heavily on client-side rendering for maps, image galleries, and contact reveals. We use Playwright to execute JavaScript and hydrate the DOM before extraction.

Location taxonomy
Normalised geographic data

Real estate data is useless without accurate location mapping. We normalise the complex province-to-suburb hierarchy to ensure consistent reporting across all records.

Change detection
Tracking market velocity

We maintain a hash index of active listings. Subsequent runs only push diffs, allowing you to accurately track days-on-market, price reductions, and inventory turnover.

Monitoring
Pipeline observability

Every run emits structured logs. We alert on null-rate spikes in critical fields like price or erf size, ensuring your downstream valuation models receive complete data.

Applications

Who uses PrivateProperty data

Teams across industries use privateproperty.co.za data to build competitive products and smarter operations.

01
Automated Valuation Models

PropTech companies train AVMs using historical asking prices, erf sizes, and property features across specific South African suburbs.

02
Investment Analysis

REITs and private investors track gross rental yields by comparing asking prices against active rental listings in target nodes.

03
Agency Market Share

Real estate brokerages monitor competitor listing volumes, agent headcounts, and time-on-market metrics to optimise their strategies.

04
Retail Catchment Planning

Retailers analyse residential development pipelines and housing density trends to select optimal locations for new stores.

05
Mortgage Lead Generation

Financial institutions track new development announcements and high-velocity suburbs to target their home loan marketing.

06
Market Trend Reporting

Analysts publish quarterly reports on South African property trends, driven by structured data on inventory levels and asking prices.

Why DataFlirt

"PrivateProperty holds the most comprehensive record of South African real estate transactions and active listings, but extracting it requires navigating complex location taxonomies and dynamic rendering."

Most data engineering teams underestimate the complexity of scraping property portals. Extracting reliable data from PrivateProperty requires handling infinite scroll pagination, dynamic JavaScript payloads for property features, and residential proxies to avoid rate limits. DataFlirt manages this infrastructure so you can focus on building your valuation models and market analytics.

Technical Spec

PrivateProperty scraper technical specifications

Everything supported by our privateproperty.co.za scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Playwright sessions for dynamic maps and image galleries
Supported
Residential proxies
ZA-based IP pools to prevent rate limiting and blocks
Supported
Location taxonomy mapping
Structured extraction of province, city, and suburb hierarchies
Supported
Historical price tracking
Hash-based diffing to monitor price drops and listing duration
Supported
Agent contact extraction
Extraction of visible agent phone numbers and agency details
Supported
Webhook delivery
HTTP POST per listing for real-time alert systems
Supported
User saved searches
Requires authenticated user accounts and private dashboard access
Partial
Direct message inquiries
Submission of lead forms to agents via the platform
Partial
Infrastructure

Infrastructure powering the extraction

Open-source tooling on proven cloud infra — no vendor lock-in, full observability.

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright Stack

Scrapy handles crawl orchestration and deduplication. Playwright handles JavaScript rendering for property maps and galleries.

Residential Proxy Infrastructure

We maintain pools of residential ISP proxies across South Africa. Rotation happens per-request to avoid rate limiting.

Cloud-Native Orchestration

Pipelines run on AWS Lambda and ECS. Airflow handles scheduling and dependency management. All state stored in Postgres.

Output & Delivery

Your data, your destination

Data delivered to where your team already works — no new tooling required.

JSON
Newline-delimited or nested schema
CSV
Flat file with typed columns
XLS
Excel format for business analysts
Parquet
Columnar format for BigQuery and Snowflake
AWS S3
Direct bucket delivery
Webhook
HTTP POST per record for real-time processing
API
REST endpoints to query your extracted data
PostgreSQL
Direct upsert into your existing database schema
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About privateproperty.co.za scraping, legality, and pipeline operations.

Ask us directly →
Is scraping PrivateProperty legal?

Scraping publicly available property listings is generally permissible for non-personal data. DataFlirt extracts only public real estate details, prices, and agency information. We do not extract private user data or circumvent authentication walls. Clients should review local regulations and platform terms of service.

How do you handle rate limits on property portals?

We use South African residential ISP proxies and request timing modelled on human behaviour. This distributes the load and prevents the IP blocking commonly experienced with datacenter proxies.

Can you extract data for specific provinces only?

Yes. We can configure the pipeline to target specific provinces, municipalities, or even individual suburbs based on your requirements.

How fresh is the property data?

We can configure pipelines to run daily, weekly, or monthly. Daily runs capture new listings and price updates within 24 hours of them appearing on the platform.

Can you track properties that have been sold or delisted?

Yes. By running regular full-site or suburb-level sweeps, we identify listings that are no longer active, allowing you to calculate days-on-market and inventory turnover.

What is the minimum engagement size?

Our minimum engagement typically covers a defined set of suburbs or property types with weekly delivery. Contact us with your specific target locations for a scoped quote.

$ dataflirt scope --new-project --source=privateproperty.co.za ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a one-off export of Gauteng commercial listings or a daily feed of residential properties across South Africa, we build and operate the infrastructure. Tell us what you need.

hello@dataflirt.com · Bengaluru · IST · typical reply < 4h
Services

Data Extraction for Every Industry

View All Services →