Real estate
Rightmove Scraper — UK Property Listings
Scrape UK property listings from Rightmove (for-sale or to-rent) — price, address, bedrooms, agent phone, floor plan, EPC, photos, full description — export to JSON or CSV. A Rightmove data scraper that enriches from each detail page, going beyond the public search payload.
Free Apify credit covers a first run. No credit card to try.
What this Actor scrapes
Rightmove is the UK's largest property portal and publishes no public API. This Actor is your Rightmove scraper: search by location, filter by price, bedrooms, or listing type (for-sale or to-rent), and optionally enrich each result with detail-page data — agent phone, full description, floor plan URL, and EPC graph image. Built on curl-cffi with browser TLS impersonation; every request looks like a real browser visit from a UK residential IP.
Rightmove's site actively resists automated access. We run the gauntlet so you get clean rows.
What we handle for you
- 🛡️ Browser fingerprint rotation —
curl-cffireplays real Chrome / Firefox / Safari TLS handshakes so every request looks like a real browser, not a script. - 🌐 Residential proxy rotation via Apify Proxy — a fresh UK exit IP on every session, automatically swapped whenever the target pushes back.
- 🔁 Retries with exponential backoff on
408 / 429 / 5xx— up to 5 attempts per page withRetry-Afterhonoured. - 🧱 Rate-limit-aware pacing — we slow down when Rightmove signals overload instead of hammering until banned.
- 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, stable property IDs, ready for JSON / CSV / Excel export.
- 💰 Pay-Per-Event pricing — you only pay for rows that land in your dataset. No data, no charge.
Use cases
- Property-market analytics — track price-per-square-foot trends across UK postcodes over time.
- Buyer alerting — daily diff for new sub-£500k 2-bed flats in your target postcode.
- Landlord intelligence — aggregate
to-rentrows by postcode to estimate rental yields across a portfolio. - Agent prospecting — build a directory of UK estate agents using
agent_name+agent_phonefrom each listing. - Floor-plan + EPC enrichment — detail-page data that cheaper competitors miss entirely: full description, floor plan URL, and EPC graph image.
- UK property data API substitute — Rightmove's official data access is restricted to registered agents. This Actor gives PropTech founders a clean postcode-property-data feed without a partner contract.
Input
Paste this into the Apify Console, or send it as the run input over the API. Proxy settings are on by default; you rarely need to touch them.
| Field | Type | Required | What it does |
|---|---|---|---|
searchLocation | string | yes | Free-form UK location — city (London), district, postcode prefix (SW1A), or region. Resolved via Rightmove's typeahead to a region/outcode identifier. |
listingType | string | no | Which Rightmove channel to scrape. |
radiusMiles | string | no | Distance around the centroid of the resolved location. |
maxPriceGbp | integer | no | Upper price filter. Total £ for for-sale; £ per month for to-rent. Leave empty for no cap. |
minBedrooms | integer | no | Minimum number of bedrooms. Leave empty for no floor. |
maxProperties | integer | no | Hard cap on dataset rows. Rightmove's own search caps at ~1000 results per query. |
enrichDetails | boolean | no | Fetch each property's detail page for full description, floor plan URL, EPC graph URL, and full agent phone. Doubles the request count. |
{
"searchLocation": "London",
"listingType": "for-sale",
"maxProperties": 5,
"enrichDetails": true,
"proxyConfiguration": {
"useApifyProxy": true
}
} Output
One row per result, schema-validated before it is written. Export JSON, CSV, Excel or XML from the run, or read it over the API.
property_idproperty_urladdresspostcodelatitudelongitudeprice_gbpprice_qualifierprice_frequencylisting_typeproperty_typeproperty_type_fullbedroomsbathroomssqfttenure
{
"property_id": "167180126",
"property_url": "https://www.rightmove.co.uk/properties/167180126",
"address": "Gainsford Road, Walthamstow",
"postcode": "E17 6ZL",
"latitude": 51.587363,
"longitude": -0.027555,
"price_gbp": 300000,
"price_qualifier": "Offers in Excess of",
"listing_type": "for-sale",
"property_type": "Apartment",
"bedrooms": 1,
"bathrooms": 1,
"sqft": 443,
"agent_name": "haart, Walthamstow",
"agent_phone": "020 3910 6244",
"floor_plan_url": "https://media.rightmove.co.uk/property-floorplan/.../...jpeg",
"epc_graph_url": "https://media.rightmove.co.uk/property-epc/.../...png"
} Pricing
| Event | Price | When |
|---|---|---|
| Actor start | $0.20 | Once per run, covers warm-up and proxy session setup. |
| Result row emitted | $0.0020 | Per result written to the dataset. |
You pay only for results that land. Cap any run with maxTotalChargeUsd. See pricing & billing for worked examples.
FAQ
What is the Rightmove scraper?
Is there an official Rightmove API?
Can I export Rightmove data to a spreadsheet?
What is postcode property data and does this include it?
enrichDetails is enabled the Actor fetches each listing's detail page and returns the full postcode (e.g. SW1A 1AA), latitude/longitude, and floor area — everything you need for postcode-level property data analysis.Does this work for rentals?
listingType to to-rent. price_gbp is then £ per month and price_frequency reads monthly.Is detail enrichment optional?
enrichDetails to false to halve the request count. You still get price, address, bedrooms, photos, lat/long, and agent name from the search payload — just no floor plan, EPC image, or full description.Does it cover Zoopla or OnTheMarket?
zoopla-uk-property Actor would be needed for those.Why isn't the EPC rating letter populated?
epc_graph_url; use Tesseract OCR if you need the letter extracted from the image.Ready to run it?
Open the listing on Apify, paste the input above, and watch rows land. If it ever breaks, it is our problem before it is yours.
Related Actors