Rightmove Property Scraper
parseforge/rightmove-property-scraper
Real estateAgentsAutomation
Scrape property listings from Rightmove for sale or rent. Returns price, bedrooms, address, description, photos, floor plans, and agent details per listing.
- Total users
- 11
- Monthly active
- 2
- Total runs
- 277
- Bookmarked
- 1
- Rating
- 5.0 (1)
- Last modified
- 12 days ago
Overview
Rightmove Property Scraper
Scrape property listings from Rightmove for sale or rent, up to a million per run. Every property comes with its price, bedrooms, location, description, and agent details. No login or API key. Export to CSV, JSON, Excel, or XML.
Rightmove is the UK's largest property portal, but its official data feeds are limited and require agreements. This Actor reads the public search results directly, filtered by price, bedrooms, property type, radius, and recency, and returns each listing in one fixed schema.
| Who uses it | What they scrape Rightmove for |
|---|---|
| Property investors | Which areas have the most reduced or newly listed properties this week |
| Estate agents | Monitor competitor listings and pricing trends in their target postcode |
| Market researchers | Build datasets on UK housing supply, price distribution, and time on market |
| Home movers | Get notified of properties matching their exact criteria without manual browsing |
What it does
This Actor collects property listings from Rightmove by search URL or filter parameters, and returns each one as a flat row with price, address, description, and agent info.
- ๐ Search by URL: Paste any Rightmove search URL and the Actor follows the pagination.
- โ๏ธ Filter mode: Set location, channel (buy/rent), price range, bedrooms, radius, property types, and recency without a URL.
- ๐ Recency filter: Only collect properties added in the last 1, 3, 7, or 14 days.
- ๐ Sort options: Most Recent, Highest Price, Lowest Price, Most Reduced, or Featured.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with Rightmove data
๐ Track price reductions and new listings.
A property investor runs the Actor daily on a set of postcodes to spot newly reduced or listed properties before other buyers.
๐ก Compare rental yields across UK cities.
A market researcher collects rent and sale prices for the same area to calculate yield and identify the best investment locations.
๐ Monitor competitor estate agents.
An agency runs the Actor weekly on their target postcodes to see which agents list the most properties and at what price points.
๐ Automate property alerts.
A home buyer sets up a scheduled run with their exact criteria and receives a fresh dataset each morning to review new matches.
Why choose this scraper
| What you get | |
|---|---|
| Price and deposit | Current price, currency, and deposit amount if renting |
| Location details | Full address, latitude, longitude, and a map URL |
| Property specs | Number of bedrooms, bathrooms, property type, and floor area |
| Description and images | Full listing description, photo URLs, and floor plan links |
| Agent info | Agent name, phone, and logo URL |
| Listing metadata | Date added, listing ID, URL, and whether it is Sold STC |
How it compares
No other Store actor targets Rightmove the same way, so the honest comparison is with the alternatives teams actually weigh.
| Rightmove Property Scraper | Build it in-house | By hand | |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When Rightmove changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |
Configure the run
Drive the Actor from a Rightmove search URL or from individual filter fields, and filters run as each listing is read so only matches reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{
"maxItems": 10,
"locationIdentifier": "REGION^87490",
"channel": "BUY",
"sortType": "6"
}
A larger pull:
{
"maxItems": 200,
"locationIdentifier": "REGION^87490",
"channel": "BUY",
"sortType": "6"
}
Pricing
Pay-per-result: $0.02934 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $2.93 |
| 1,000 results | $29.34 |
| 10,000 results | $293.40 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the Rightmove Property Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to Rightmove through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/rightmove-property-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check that your Start URL is a valid Rightmove search URL, or that your filter fields are not conflicting. For example, a radius of 0 with no location may return nothing.
The Actor returns fewer properties than maxItems.
Rightmove limits search results to about 1,000 pages (roughly 25,000 properties). If your filters are narrow, the total available may be less than maxItems.
Can I use both Start URL and filters together?
No, the input schema says use one or the other. If you provide a Start URL, the filters are ignored.
The price field shows 0 for some listings.
Some properties, especially commercial or land, may not display a price on the listing page. Those entries will have price set to 0.
How do I scrape a specific postcode?
Use a Start URL from a Rightmove search for that postcode, or use the locationIdentifier from that URL in filter mode.
FAQ
| Question | Answer |
|---|---|
| Do I need a Rightmove account or API key? | No. The Actor reads public search results directly, so no login or API key is required. |
| Can I scrape properties for sale and to rent in the same run? | No, each run is either for sale (BUY) or to rent (RENT). Run the Actor twice with different channel settings to get both. |
| What does the Location Identifier mean and how do I find it? | It is a code like REGION^87490 that Rightmove uses internally. The easiest way is to use a Start URL instead, which already contains the location. |
| How many properties can I scrape per run? | Up to 1,000,000 properties per run. The maxItems field controls the limit. |
| Does the Actor handle pagination automatically? | Yes, it follows the next-page links on Rightmove until it reaches the maxItems limit or the end of results. |
| Can I filter by property type like flat or house? | Yes, use the propertyTypes field to select one or more types. Leave it empty for all types. |
| What does 'Include Sold STC' mean? | Sold STC means Sold Subject To Contract. Enabling this includes properties that have an accepted offer but are not yet completed. |
| What sort orders are available? | Most Recent, Highest Price, Lowest Price, Most Reduced, and Featured. The default is Most Recent. |
| Can I scrape properties from a specific agent? | Not directly via filters, but you can use a Start URL from that agent's Rightmove page. |
| Does the Actor return floor plans and photos? | Yes, it returns URLs to all photos and floor plans listed on the property page. |
Related actors
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Rightmove plc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
Input
| Field | Type | What it does | Default |
|---|---|---|---|
| startUrl | string | Rightmove search URL. Use this OR the filters below (not both). | not set |
| maxItems | integer | How many properties to collect per run. | 10 |
| keywords | string | Text query for listing descriptions, for example garden, parking, or chain free. | not set |
| locationIdentifier | string | Optional. Use this in filter mode. Copy it from a Rightmove URL (example: locationIdentifier=REGION^87490). If unsure, use Start URL. | REGION^87490 |
| channel | string (2 options) | Choose whether to collect properties for sale or to rent. | BUY |
| minPrice | integer | Minimum property price in GBP. | not set |
| maxPrice | integer | Maximum property price in GBP. | not set |
| minBedrooms | integer | Minimum number of bedrooms. | not set |
| maxBedrooms | integer | Maximum number of bedrooms. | not set |
| radius | number | Radius around the location. Common values: 0, 1, 3, 5, 10, 20. | 0 |
| propertyTypes | array | Filter by property type list. Leave empty for all types. | not set |
| maxDaysSinceAdded | integer | Only include properties added in the last 1, 3, 7, or 14 days. | not set |
| includeSSTC | boolean | Include properties marked as Sold Subject To Contract. | false |
| sortType | string (5 options) | How to sort result listings. | 6 |
Pricing
from $21.99 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| Actor Start | Charged once when the run starts. | $0.005 |
| Result Item | Charged once per result collected. | $0.02199 to $0.02934 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
API
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~rightmove-property-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"helloWorld": 123
}' Examples
Input that runs as-is.
{
"helloWorld": 123
} Reviews
Rated 5.0 out of 5 across 1 review. Read them on Apify.
Issues
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
