Rightmove Scraper โ UK Property Listings Data
Pricing
from $1.50 / 1,000 results
Rightmove Scraper โ UK Property Listings Data
Scrape property listings from Rightmove, the UK's largest property portal โ sales and rentals. Clean typed JSON: price in GBP, weekly rents normalized to pcm, bedrooms, bathrooms, agent contacts, coordinates.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 days ago
Last modified
Categories
Share
Scrape property listings from Rightmove (rightmove.co.uk) โ the UK's largest property portal โ for both sales and rentals, and get clean, typed JSON: price as a number in GBP, weekly rents normalized to per-calendar-month, bedrooms/bathrooms, agent name and phone, coordinates, and the date each listing was added or reduced. No HTML parsing on your side.
What it does
- Crawls Rightmove search-result pages (24 listings per page request โ fast and cheap; no detail-page fetches in v1).
- Reads the structured JSON embedded in each page (
__NEXT_DATA__) instead of brittle CSS selectors โ markup redesigns don't break extraction. - Normalizes every value:
"ยฃ425,000"โ425000,"ยฃ295 pw"โ1278.33pcm,"Offers Over"โoffers_over,"POA"โnullprice +poaqualifier,"Reduced on 06/05/2026"โ2026-05-06. - Searches by plain UK place names (resolved through Rightmove's own location service) or accepts any Rightmove search URL you paste in.
- Typical uses: price tracking and comps, rental-yield analysis, lead generation from agent contacts, market dashboards, ML datasets, alerting on new listings in an area.
Input
| Field | Type | Default | Description |
|---|---|---|---|
searchUrls | array of strings | โ | Full rightmove.co.uk search-result URLs (/property-for-sale/find.html or /property-to-rent/find.html). When set, the fields below are ignored; sale vs. rent is detected per URL. |
locations | array of strings | ["Manchester"] | Plain UK place names ("Leeds", "Bristol", "SW1A") โ resolved automatically. |
listingType | string | "sale" | "sale" or "rent". |
propertyTypes | array | โ | Optional filter: detached, semi-detached, terraced, flat, bungalow, land, park-home, private-halls. |
minPrice / maxPrice | integer | โ | Optional GBP bounds (sale: total price; rent: pcm). |
includeSoldSTC | boolean | false | Include Sold STC / Let Agreed listings. |
maxResults | integer | 100 | Hard cap per run (max 10,000). Free-plan users are capped at 50. |
proxyConfiguration | object | Apify datacenter proxy | Datacenter proxy works well for Rightmove. |
Example input:
{"locations":["Manchester"],"listingType":"sale","maxResults":100}
Output sample
One dataset item per listing:
{"id":"88964910","display_address":"Manchester Property Investment, Manchester City Centre, M1","price_gbp":375000,"price_qualifier":"offers_in_region_of","listing_type":"sale","rent_period":null,"property_type":"Apartment","bedrooms":3,"bathrooms":3,"size_sqft":null,"agent_name":"RW Invest, Manchester","agent_phone":"0161 524 4934","added_or_reduced":"2026-05-06","latitude":53.4794,"longitude":-2.2453,"detail_url":"https://www.rightmove.co.uk/properties/88964910#/?channel=RES_BUY","image_count":11,"scraped_at":"2026-06-12T10:00:00.000Z"}
Field notes: price_gbp is the asking price for sales and the normalized
monthly rent for rentals (weekly rents are converted at ร52โ12;
rent_period is always "pcm" for rentals). price_gbp is null for POA
(price-on-application) listings โ check price_qualifier. size_sqft,
bedrooms, bathrooms, agent_phone, coordinates are null when Rightmove
doesn't list them. Featured/premium listings that Rightmove repeats on the page
are deduplicated โ you are never charged twice for the same property.
Pricing & free-tier policy
This Actor uses pay-per-event pricing:
| Event | Price | When charged |
|---|---|---|
Actor start (apify-actor-start) | $0.005 | Automatically by Apify, once per run (per GB of memory) |
Property listing (apify-default-dataset-item) | $1.50 / 1,000 items | Automatically by Apify, per default-dataset item |
You only pay for listings that pass output-schema validation โ malformed rows are never charged. Set Maximum cost per run in Apify Console to cap spend; the Actor stops gracefully at the limit and keeps everything scraped so far.
Free tier โ stated plainly: users on the Apify free plan get up to 50 listings per run. The run still finishes successfully with a clear status message when the cap is reached. Any paid Apify plan unlocks the full 10,000-listings-per-run limit.
Limitations
- Search-result pages only (v1). Fields shown only on detail pages (full description, floorplans, EPC, tenure, price per sq ft, station distances) are not included yet.
- ~1,000 results per query โ a Rightmove platform cap (42 pages ร 24).
To collect more, add more
locationsor split a city into narrower searches (the Actor handles multiple queries in one run). - Politeness by design: pages are fetched sequentially with a randomized 2โ5 s delay through rotating datacenter proxies.
- Data is scraped from public, logged-out Rightmove pages; listings change
constantly, so treat results as a snapshot (
scraped_atis on every row).
Support
Found an issue or need a field added? Open an issue on the Actor page and it will usually be handled within a few days.
