Rightmove Scraper (Cheap)
Pricing
from $3.99 / 1,000 results
Rightmove Scraper (Cheap)
Rightmove scraper that extracts UK property listings from any search URL, giving investors, agents, and analysts structured data including prices, addresses, bedrooms, agent details, and coordinates.
Pricing
from $3.99 / 1,000 results
Rating
0.0
(0)
Developer
Data API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 hours ago
Last modified
Categories
Share
Rightmove Listings Scraper

Rightmove holds the UK's biggest pool of for-sale and to-rent listings, but clicking through it page by page is slow and there is no export button. This scraper turns any Rightmove search into clean, structured rows. Set your filters on the site, copy the link, and the scraper reads the data Rightmove embeds in each results page: address, price, bedrooms, the estate agent, map coordinates, photos, and more. Run one search link or a whole batch, and pull back as much or as little as you need.
What you get
Every property on your search becomes one row with the same set of columns, so the output drops straight into a spreadsheet or database. Fields the listing does not expose come back empty rather than disappearing, which keeps your table tidy. The data splits into a few groups:
- Identity and link —
listingId,listingUrl,originUrl - Location —
displayAddress,geoLat,geoLng - Price —
priceText,priceValue,priceNote - Property facts —
homeType,bedroomCount,bathroomCount,listingSummary,listingChange,marketStatus - Media —
photoLinks,floorplanLink - Agent —
agencyName,agencyAddress - Run metadata —
collectedAt
Quick start
- Run a search on rightmove.co.uk with the filters you want, then copy the link from the address bar.
- Hit Try for free and open the input form.
- Paste that link into Single search link, or drop several links into Multiple search links.
- Set Listings per link to cap each search, and pick a proxy type.
- Press Start, then export the rows as JSON, CSV, Excel, or XML once the run finishes.

Use cases
- Property investors — track new listings and price drops across target postcodes without refreshing the site
- Estate agents — watch competitor stock, asking prices, and time-on-market in your patch
- Proptech teams — feed a steady stream of fresh listing data into valuation or alert tools
- Mortgage and finance — pull asking-price benchmarks by area for affordability models
- Relocation services — gather and compare available homes for clients moving to a new region
- Market analysts — measure supply, pricing, and property mix across whole towns or regions
Input
| Field | Type | Required | Description |
|---|---|---|---|
queryUrl | string | One of queryUrl or searchPages | A single Rightmove search link copied from your browser. Use this for a quick one-off run. |
searchPages | array of strings | One of queryUrl or searchPages | A list of Rightmove search links, one per line. Results merge into one dataset, each row tagged with its originUrl. |
resultsLimit | integer | No | Listings to collect per search link. Default 50; hard ceiling 1000. |
runTimeoutSeconds | integer | No | Total time budget for the run in seconds. The scraper stops and keeps partial results when it runs out. Default 360. |
pageTimeoutSeconds | integer | No | Seconds to wait on a single page download before moving on. Default 45; raise it on residential proxies. |
proxyConfiguration | object | No | Proxies used for requests. Datacenter default suits most runs; switch to Residential if Rightmove blocks requests. |
Example input
{"searchPages": ["https://www.rightmove.co.uk/property-for-sale/find.html?locationIdentifier=REGION%5E274&sortType=6","https://www.rightmove.co.uk/property-for-sale/find.html?locationIdentifier=REGION%5E93929&sortType=6"],"resultsLimit": 50,"runTimeoutSeconds": 360,"pageTimeoutSeconds": 45,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "GB"}}
Output
Each listing on your search returns one row. Every field is always present, and values Rightmove does not publish come back as null, so the dataset stays rectangular and easy to load.
Example output
{"listingId": "154872063","listingUrl": "https://www.rightmove.co.uk/properties/154872063","displayAddress": "Maple Grove, Headingley, Leeds, LS6","priceText": "£350,000","priceValue": 350000,"priceNote": "Guide Price","homeType": "Semi-Detached","bedroomCount": 3,"bathroomCount": 2,"listingSummary": "A well-presented three-bedroom semi-detached home close to local schools and amenities.","agencyName": "Bramley & Co Estate Agents","agencyAddress": "12 High Street, Leeds, LS6","photoLinks": ["https://media.rightmove.co.uk/dir/154872063_01.jpeg","https://media.rightmove.co.uk/dir/154872063_02.jpeg"],"floorplanLink": "https://media.rightmove.co.uk/dir/154872063_FLP_00.jpeg","geoLat": 53.819,"geoLng": -1.581,"listingChange": "Reduced 3 days ago","marketStatus": "available","collectedAt": "2026-06-30T12:00:00.000000+00:00","originUrl": "https://www.rightmove.co.uk/property-for-sale/find.html?locationIdentifier=REGION%5E274&sortType=6"}
Output fields
| Field | Type | Description |
|---|---|---|
listingId | string | Rightmove's own identifier for the property |
listingUrl | string | Direct link to the property page on rightmove.co.uk |
displayAddress | string | Address shown on the listing card |
priceText | string | Price exactly as printed, e.g. '£350,000' |
priceValue | number | Plain numeric price with the currency symbol removed |
priceNote | string | Wording attached to the price, e.g. 'Guide price', 'Offers over' |
homeType | string | Kind of dwelling, e.g. Detached, Semi-detached, Flat |
bedroomCount | integer | Number of bedrooms |
bathroomCount | integer | Number of bathrooms |
listingSummary | string | Short blurb the agent wrote for the listing |
agencyName | string | Estate agent or branch handling the property |
agencyAddress | string | Branch address of the estate agent |
photoLinks | array | Every property photo URL from the listing |
floorplanLink | string | URL of the floorplan image when one is published |
geoLat | number | Map latitude of the property |
geoLng | number | Map longitude of the property |
listingChange | string | When the listing went live or last dropped in price |
marketStatus | string | Where the listing sits, e.g. 'available', 'sold STC', 'let agreed' |
collectedAt | string | ISO 8601 timestamp of when the row was captured |
originUrl | string | The Rightmove search link this row came from |
Tips for best results
- Trial a small run first. Set
resultsLimitto 20 and check the columns line up with your pipeline before you scale to hundreds. - Sort your search before copying the link. Pick "Newest listed" or "Lowest price" on Rightmove and that order carries through to your rows.
- Switch to Residential (GB) when blocked. Datacenter clears most searches; residential helps if you hit repeated blocks or empty pages.
- Give long batches room. Several links with a high
resultsLimitneed a biggerrunTimeoutSeconds, or the run stops early with partial data. - Raise
pageTimeoutSecondsto ~60 on residential proxies or during busy periods so slow pages still load.
How can I use Rightmove property data?
How can I use the Rightmove Listings Scraper to track a local property market?
Build a Rightmove search for your area, copy the link, and run it on a schedule. Each run returns every listing with its price, priceNote, bedrooms, and listingChange, so you can watch new stock appear and prices move over time without scrolling the site by hand.
How can I export Rightmove listings to a spreadsheet or CSV? Paste one or more search links, start the run, and download the dataset as CSV, Excel, JSON, or XML. You get one row per property with address, price, agent, and coordinates already split into columns — no copy-paste from the website.
How can I scrape Rightmove search results for several towns at once?
Add a search link for each town to Multiple search links. The scraper runs them one after another and tags every row with its originUrl, so you can pull a multi-area property dataset in a single run and filter it back apart later.
How can I get map coordinates for Rightmove properties?
Every row includes geoLat and geoLng read straight from the listing, alongside the displayAddress. That lets you plot listings on a map, cluster them by neighbourhood, or join them to other geographic data for research.
Is it legal to scrape data?
Our actors are ethical and do not extract any private user data, such as email addresses or private contact information. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.
However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
You can also read Apify's blog post on the legality of web scraping.
Support
Questions, feature requests, or a field you'd like added? Reach out at data.apify@proton.me and we'll get back to you.