Rightmove Property Scraper avatar

Rightmove Property Scraper

Pricing

from $0.50 / 1,000 property listings

Go to Apify Store
Rightmove Property Scraper

Rightmove Property Scraper

Scrapes property listings from Rightmove search results โ€” prices, addresses, agents, coordinates, and optional full per-property details.

Pricing

from $0.50 / 1,000 property listings

Rating

0.0

(0)

Developer

Keklik Technologies

Keklik Technologies

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

0.16 hours

Issues response

5 hours ago

Last modified

Share

๐Ÿ  Rightmove Property Scraper

Scrape property listings from Rightmove โ€” the UK's largest property portal โ€” into clean, structured data. Works with every Rightmove search type: property for sale, to rent, new homes, student accommodation, and commercial property. Run your search on rightmove.co.uk, copy the URL, paste it in, and get every listing as JSON/CSV/Excel. Fast, reliable, and built to keep working when the site changes.

๐ŸŽฏ Use cases

  • ๐Ÿ“Š Market research โ€” track asking prices, price per sq ft, and time-on-market by area, postcode, or property type.
  • ๐Ÿฆ Investment sourcing โ€” spot new and reduced listings daily, compare against your yield criteria, and filter by tenure, lease length, or council tax band.
  • ๐Ÿงฒ Lead generation โ€” new listings are buying signals for mortgage brokers, conveyancers, surveyors, and removal firms; agent names and phone numbers are included.
  • ๐Ÿ—๏ธ PropTech & valuation models โ€” feed AVMs and analytics products with fresh listing data, coordinates, and full property attributes.
  • ๐Ÿ”” Competitor monitoring โ€” track which agents list what, where, and at what price.
  • ๐Ÿ“ฐ Research & journalism โ€” housing market studies with reproducible, exportable data.

โš™๏ธ Input

FieldTypeDefaultDescription
startUrlsarrayrequiredRightmove search result URLs
fetchPropertyDetailsbooleanfalseAdd full property details to every listing โ€” description, postcode, council tax, lease, stations, and more (paid add-on, takes longer)
maxResultsintegerallStop after this many unique listings
maxPagesPerUrlintegerallPage cap per search URL (~24 listings/page)
proxyConfigurationobjectApify ProxyDatacenter (default) or your own proxy URLs

Minimal example โ€” all listings from one search:

{
"startUrls": [
{ "url": "https://www.rightmove.co.uk/property-for-sale/find.html?searchLocation=London&useLocationIdentifier=true&locationIdentifier=REGION%5E87490&radius=0.0&channel=BUY&transactionType=BUY&sortType=6" }
]
}

Full example โ€” two searches, complete property details, capped at 500 listings:

{
"startUrls": [
{ "url": "https://www.rightmove.co.uk/property-for-sale/find.html?searchLocation=Manchester&useLocationIdentifier=true&locationIdentifier=REGION%5E904&radius=5.0&channel=BUY&transactionType=BUY&maxPrice=300000&minBedrooms=2" },
{ "url": "https://www.rightmove.co.uk/property-to-rent/find.html?searchLocation=Leeds&useLocationIdentifier=true&locationIdentifier=REGION%5E787&radius=3.0&channel=RENT&transactionType=LETTING" }
],
"fetchPropertyDetails": true,
"maxResults": 500,
"maxPagesPerUrl": 20,
"proxyConfiguration": { "useApifyProxy": true }
}

๐Ÿ“ฆ Output

One dataset item per listing. Real example (with fetchPropertyDetails: true):

{
"id": 92299551,
"url": "https://www.rightmove.co.uk/properties/92299551#/?channel=RES_BUY",
"property": {
"type": "Flat",
"description": "3 bedroom flat for sale",
"bedrooms": 3,
"bathrooms": 2,
"size": "1,765 sq. ft.",
"tenure": "LEASEHOLD",
"key_features": []
},
"price": {
"amount": 1250000,
"currency": "GBP",
"qualifier": null,
"display": "ยฃ1,250,000",
"frequency": "not specified"
},
"address": "RIVERDALE ROAD, EAST TWICKENHAM",
"location": {
"latitude": 51.455996,
"longitude": -0.313781
},
"summary": "Stunning luxury apartment, the whole ground floor of a striking Victorian villa, with land including parking, garage and private garden area, less than 10 mins' walk from Richmond Bridge. lovely shared garden, sold newly decorated and re-floored, with NEW long lease... Call now to view. Davi",
"images": {
"count": 14,
"floorplans": 0,
"virtual_tours": 0,
"main": "https://media.rightmove.co.uk:443/dir/crop/10:9-16:9/property-photo/4f91dc4e5/92299551/4f91dc4e5ba247d6039f374a400cd180_max_476x317.jpeg",
"all": [
{ "url": "https://media.rightmove.co.uk:443/dir/crop/10:9-16:9/property-photo/4f91dc4e5/92299551/4f91dc4e5ba247d6039f374a400cd180_max_476x317.jpeg", "caption": null },
{ "url": "https://media.rightmove.co.uk:443/dir/crop/10:9-16:9/property-photo/564152a8e/92299551/564152a8e37d288a1e1dc12fdc1d44db_max_476x317.jpeg", "caption": null }
]
},
"dates": {
"first_listed": "2026-08-22T18:39:56Z",
"last_updated": "2026-08-23T01:14:20Z",
"added_or_reduced": "Added yesterday",
"is_recent": true
},
"listing_update": {
"reason": "new",
"date": "2026-08-22T18:45:13Z"
},
"agent": {
"name": "David McGeachie Sales",
"branch": "David McGeachie Sales, St Margarets, Twickenham",
"phone": "020 3907 9751",
"branch_url": "https://www.rightmove.co.uk/estate-agents/agent/David-McGeachie-Sales/St-Margarets-Twickenham-81106.html",
"logo": "https://media.rightmove.co.uk:443/partner-logo/15698081-PRODUCTS_LOGO-1766064814.jpeg"
},
"tags": {
"label": null,
"featured": true,
"premium": false,
"auction": false,
"commercial": false,
"development": false,
"residential": true,
"students": false,
"online_viewings": false
},
"street_view": true,
"channel": "BUY",
"details": {
"description": "Stunning luxury apartment, approx 1746 square feet, the whole ground floor of a striking Victorian villa c 1865, with land including parking, garage and private garden area, less than 10 mins' walk from Richmond Bridge. sold newly decorated and re-floored, with NEW long lease... Call now to view. David <br /><br />3 bedroom apartment, just fully repainted and re-floored, with approx 1746 square feet including lots of storage<br />Own front door<br />Large shared garden to rear<br />Land to right of the building is included with this apartment - parking, garage and rear garden area<br />We are a local independent agent near to the property.<br /><br />Please call us now to view.<br />David <br /><br />PS Floorplan is in photos. <br /><br />Council Tax Band: F ยฃ3592 2026 (Richmond)<br />Tenure: Leasehold (250 years)<br />Ground Rent: ยฃ0 per year",
"secondary_price": null,
"price_per_sqft": "ยฃ708.22 per sq ft",
"price_numeric": 1250000,
"address_detail": {
"country_code": "GB",
"uk_country": "England",
"outcode": "TW1",
"incode": "2BT"
},
"size_sqft": 1765,
"size_sqm": 164,
"living_costs": {
"council_tax_band": "F",
"council_tax_exempt": false,
"council_tax_included": false,
"annual_ground_rent": 0,
"annual_service_charge": null,
"ground_rent_review_years": null,
"ground_rent_pct_increase": null,
"domestic_rates": 3592
},
"years_remaining_on_lease": 250,
"features": {
"electricity": [],
"broadband": [],
"water": [],
"sewerage": [],
"heating": [],
"accessibility": [],
"parking": [
{ "alias": "garage", "displayText": "Garage" },
{ "alias": "on_street", "displayText": "On street" },
{ "alias": "off_street", "displayText": "Off street" }
],
"garden": [
{ "alias": "private_garden", "displayText": "Private garden" },
{ "alias": "communal_garden", "displayText": "Communal garden" },
{ "alias": "rear_garden", "displayText": "Rear garden" }
],
"risks": {
"floodedInLastFiveYears": false,
"floodDefences": false,
"floodSources": []
},
"obligations": {
"listed": false,
"restrictions": false,
"requiredAccess": false,
"rightsOfWay": false
}
},
"nearest_stations": [
{ "name": "St. Margarets Station", "types": ["NATIONAL_TRAIN"], "distance": 0.29637373323022814, "unit": "miles" },
{ "name": "Richmond Station", "types": ["NATIONAL_TRAIN", "LONDON_UNDERGROUND", "LONDON_OVERGROUND"], "distance": 0.7468213839187418, "unit": "miles" },
{ "name": "Twickenham Station", "types": ["NATIONAL_TRAIN"], "distance": 0.8018574767279193, "unit": "miles" }
],
"epc": [
"https://media.rightmove.co.uk/property-epc/546859c45/92299551/546859c456010ecbdaf58fca6072c1bf.jpeg"
],
"brochures": [
{ "url": "https://mcgeachiemedd.10ninety.co.uk/PublicProperty/DisplayBrochure/302", "caption": "Brochure" }
],
"floorplan_urls": [],
"image_urls": [
"https://media.rightmove.co.uk/property-photo/4f91dc4e5/92299551/4f91dc4e5ba247d6039f374a400cd180.jpeg",
"https://media.rightmove.co.uk/property-photo/564152a8e/92299551/564152a8e37d288a1e1dc12fdc1d44db.jpeg"
],
"virtual_tours": [],
"status": {
"published": true,
"archived": false
},
"shared_ownership": null,
"lettings": null,
"agent_detail": {
"company": "Tenant Finder",
"address": "191 Richmond Road,\r\nTwickenham,\r\nTW1 2NJ",
"profile_url": "https://www.rightmove.co.uk/estate-agents/agent/David-McGeachie-Sales/St-Margarets-Twickenham-81106.html"
}
}
}

(Image arrays shortened here for readability โ€” the scraper returns all of them.)

Export as JSON, CSV, Excel, or XML from the dataset. Nested fields flatten to dot notation (price.amount, property.bedrooms) in tabular exports.

๐Ÿ—‚๏ธ Data fields

Core

FieldDescription
๐Ÿ†” idRightmove property ID
๐Ÿ”— urlListing URL
๐Ÿ“ addressDisplay address
๐Ÿ“ summaryShort listing summary
๐Ÿ“ก channelBUY or RENT
๐Ÿ‘๏ธ street_viewStreet View available

๐Ÿ  property

FieldDescription
typeProperty subtype (Flat, Detached, Terracedโ€ฆ)
descriptionFull type description ("3 bedroom flat for sale")
bedrooms / bathroomsRoom counts
sizeDisplay size, when the agent provides one
tenureFREEHOLD, LEASEHOLD, โ€ฆ
key_featuresAgent's bullet-point highlights

๐Ÿ’ฐ price

FieldDescription
amountNumeric price
currencyCurrency code (GBP)
qualifier"Offers in Excess of", "Guide Price", โ€ฆ
displayFormatted price ("ยฃ1,250,000")
frequencyFor rentals: monthly/weekly

๐Ÿ—บ๏ธ location ยท ๐Ÿ–ผ๏ธ images ยท ๐Ÿ“… dates

FieldDescription
location.latitude / longitudeCoordinates
images.count / floorplans / virtual_toursMedia counts
images.mainMain photo URL
images.all[]All photos with captions
dates.first_listedFirst visible date
dates.last_updatedLast update date
dates.added_or_reduced"Added yesterday", "Reduced onโ€ฆ"
listing_update.reasonnew, price_reduced, โ€ฆ

๐Ÿข agent ยท ๐Ÿท๏ธ tags

FieldDescription
agent.name / branch / phoneAgent contact details
agent.branch_url / logoAgent page and brand logo
tags.featured / premiumPaid placement flags
tags.auction / commercial / development / residential / studentsListing category flags
tags.online_viewingsOnline viewings offered

โž• details (with fetchPropertyDetails: true)

FieldDescription
๐Ÿ“„ descriptionFull listing description
๐Ÿ“ฎ address_detailPostcode (outcode/incode), UK country
๐Ÿ“ size_sqft / size_sqmFloor area
๐Ÿ’ท price_per_sqft / secondary_price / price_numericExtra price data
๐Ÿ›๏ธ living_costsCouncil tax band, service charge, ground rent, domestic rates
๐Ÿ“œ years_remaining_on_leaseLease length remaining
๐Ÿ”Œ featuresParking, garden, heating, accessibility, flood risks, obligations
๐Ÿš‰ nearest_stations[]Nearby stations with distances
โšก epc[]EPC certificate images
๐Ÿ“Ž brochures[] / floorplan_urls[]Documents and floorplans
๐Ÿ“ท image_urls[]Full-resolution photo URLs
๐ŸŽฅ virtual_tours[]Virtual tour links
๐Ÿท๏ธ statusPublished/archived flags
๐Ÿค shared_ownershipOwnership %, rent (shared-ownership listings)
๐Ÿ”‘ lettingsDeposit, let type, furnishing, available date (rentals)
๐Ÿข agent_detailAgent company name, address, profile URL

๐Ÿ”Œ Run via API

Everything the scraper does is available programmatically โ€” run it from your own code, on a schedule, or inside a pipeline. Get your API token from Apify Console โ†’ Settings โ†’ API & Integrations.

cURL โ€” start a run and get results in one call (best for smaller runs):

curl -X POST "https://api.apify.com/v2/acts/kekliktech~rightmove-scraper/run-sync-get-dataset-items?token=<YOUR_API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"startUrls": [{ "url": "https://www.rightmove.co.uk/property-for-sale/find.html?searchLocation=London&useLocationIdentifier=true&locationIdentifier=REGION%5E87490&radius=0.0&channel=BUY&transactionType=BUY" }],
"maxResults": 100
}'

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("kekliktech/rightmove-scraper").call(run_input={
"startUrls": [{"url": "https://www.rightmove.co.uk/property-for-sale/find.html?searchLocation=London&useLocationIdentifier=true&locationIdentifier=REGION%5E87490&radius=0.0&channel=BUY&transactionType=BUY"}],
"fetchPropertyDetails": True,
"maxResults": 100,
})
for listing in client.dataset(run["defaultDatasetId"]).iterate_items():
print(listing["address"], listing["price"]["display"])

Node.js (npm install apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('kekliktech/rightmove-scraper').call({
startUrls: [{ url: 'https://www.rightmove.co.uk/property-for-sale/find.html?searchLocation=London&useLocationIdentifier=true&locationIdentifier=REGION%5E87490&radius=0.0&channel=BUY&transactionType=BUY' }],
maxResults: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

For long runs, start the run asynchronously (POST /v2/acts/kekliktech~rightmove-scraper/runs) and fetch the dataset when it finishes โ€” or add a webhook in the Integrations tab to get notified. The API button at the top of this page has the full endpoint reference, and you can schedule recurring runs with Apify Schedules. AI agents can also call this actor through Apify's MCP server.

โš ๏ธ Limits

Rightmove serves at most 1,008 listings per search (42 pages) โ€” this is a Rightmove cap, not a scraper limit. To collect more from a large area, split the search into narrower ones (by price band, property type, or smaller radius) and pass all the URLs in startUrls. Duplicates are removed automatically.

๐Ÿ’ฌ Support

Questions, issues, or a field you need that isn't here?