Rightmove UK Scraper at a glance
Rightmove UK Scraper is a ready-to-run Apify actor from abotapi for collecting automation data. Its documented output includes channel, listing id, sold uuid, price and last sold (£), which you can export as JSON, CSV or Excel or read through the Apify API. It costs $1.80 per 1,000 results on the Apify Free plan and from $1.00 on paid plans, with smaller per-run or optional feature charges listed on Apify.
- Runs on
- Apify cloud: console, API, schedules and integrations
- Data type
- Automation, Real Estate, Developer Tools
- Pricing
- $1.80 per 1,000 results (Free plan), from $1.00 on paid plans
- Output
- Documented below · JSON, CSV, Excel
- Inputs
- 28 options
Fast, reliable Rightmove.co.uk scraper for UK properties for sale, rent and sold-price records. Search by location or property URL and extract 80+ structured fields per listing. Ideal for property research, price comparisons, rental analysis and real estate market intelligence.
What Rightmove UK Scraper can do
- Five channels, one actor. For-sale (BUY), to-rent (RENT), sold-price history (SOLD), new homes (new) and student lettings (student) all come from the same input. Rival-style names such as sale, rent and new_homes are accepted too.
- Two ways to find data. Build a search from a location plus filters, or paste any Rightmove URL: a search page, a single property page, or a sold-price area page.
- 80+ fields on demand. Turn on full detail scraping for the complete description, key features, council tax band, ground rent, service charge, EPC graphs, nearest stations and airports, broadband speed, floorplans, remaining lease years, and full agent contact details.
- Server-side filters that really narrow the result set. Price, bedrooms, property type, radius, sort order, furnished status, added-within-days, and the Let Agreed / Sold STC toggles are applied on Rightmove's own servers, not filtered away client-side.
- Incremental and monitoring modes for recurring runs. Schedule it and get only new listings, or rows labelled NEW, UPDATED, REAPPEARED or EXPIRED; unchanged listings are not returned or billed.
- Pay only for what you fetch. Every returned record is billed once, and the deep detail fields are billed only for the records that were actually enriched.
Choose what to collect
These inputs let you configure Rightmove UK Scraper - Properties, Prices, Sales & Rentals. Open the actor on Apify to enter your values and review the current options.
| Input | What it controls |
|---|---|
modestring | How to find properties: build a search from a location + filters, or paste direct Rightmove URLs. |
channelstring | What to scrape: properties for sale, to rent, new homes, student accommodation, or sold-price history by area. 'sale', 'rent' and 'new_homes' are accepted as aliases of BUY, RENT and new. |
locationsarray | Location names, areas, or postcodes. Each is resolved automatically, e.g. 'London', 'Manchester', 'SW19', 'Wimbledon'. |
minPriceinteger | Minimum price filter (BUY/RENT). For RENT this is the monthly (pcm) amount. |
maxPriceinteger | Maximum price filter (BUY/RENT). For RENT this is the monthly (pcm) amount. |
minBedroomsinteger | Minimum bedrooms (BUY/RENT). |
maxBedroomsinteger | Maximum bedrooms (BUY/RENT). |
Show 21 more inputs
| Input | What it controls |
|---|---|
propertyTypesarray | Filter by property type (sale, rent, new homes, student). Options: houses, flats, bungalows, land, detached, semi-detached, terraced, park-home (or park_home). student_halls has no native filter: use channel Student accommodation instead. |
radiusstring | Expand the search around the location. E.g. 0.25, 0.5, 1.0, 3.0, 5.0, 10.0. Default 0 (this area only). |
sortTypestring | Result ordering. Newest listed, oldest listed, lowest price, or highest price first. |
furnishedstring | Rent and student channels only: furnished, part furnished or unfurnished lets. |
maxDaysSinceAddedstring | Only listings added to Rightmove within the last 1, 3, 7 or 14 days. |
searchstring | Single location text (town, city, postcode or region). Used only when Locations is empty. |
endPageinteger | Alias of Max pages, used only when Max pages is not set. |
sortstring | Alias of Sort order, used only when Sort order is left on default. |
includeLetAgreedboolean | Include 'Let Agreed' properties in rental searches. |
includeSSTCboolean | Include 'Sold STC' / 'Under Offer' properties in sale searches. |
startUrlsarray | Direct Rightmove URLs to scrape. |
maxItemsinteger | Maximum number of records to return. Set 0 for unlimited (capped by Rightmove's ~1000-result deep-pagination limit per search). The number of pages walked is governed by 'Max pages per search'. |
maxPagesinteger | Maximum result pages to walk per location (24 listings/page). Default 1 (first page only) keeps runs small and predictable; raise it to scrape deeper (Rightmove caps deep pagination at ~42 pages). |
includeDetailsboolean | Fetch each property's detail page for 40+ extra fields (full description, key features, council tax band, ground rent, service charge, EPC, nearest stations/airports, broadband, floorplans, lease years, agent address). Off = faster & cheaper (search cards only). |
resumeFromRunIdstring | Paste a previous run ID or dataset ID to continue a large pull without returning or charging for listings already collected there. For recurring monitoring of the same search, use Incremental mode instead. A resumed run never marks listings EXPIRED. |
incrementalModeboolean | Track listings between runs of the same search. Each returned row gets changeType NEW, UPDATED (with changedFields), REAPPEARED or EXPIRED. Unchanged listings are not returned. EXPIRED rows are only produced after a run that walked the whole result set (not with a maxItems/maxPages cut-off, a pasted page-2+ link or a single property link). Replaces Monitoring mode when both are on. |
monitoringModeboolean | Only return listings not seen in previous runs of this actor. Useful for tracking newly-added properties. |
ignoreFieldsForChangesarray | Output field names (nested paths like agent.logo allowed) that must not count as a change in incremental mode. The relative 'added/reduced' badge, scrape time and distance are always ignored. The fields stay in the output. |
mcpConnectorsarray | Optionally send the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize a connector once under Apify → Settings → Integrations, then select it here. The connector receives a condensed, human-readable summary per item (title + key fields), not the full JSON; the complete record stays in the dataset. Leave empty to skip. Supported: Notion (https://mcp.notion.com/mcp), Linear (https://mcp.linear.app/sse), Airtable (https://mcp.airtable.com/mcp), Apify (https://mcp.apify.com). |
notionParentPageUrlstring | URL (or id) of the Notion page under which item pages are created. Required to enable the Notion export; ignored by other connectors. |
maxNotifyListingsinteger | Cap on items written to each connector per run. Does not affect the dataset. |
Fields in the output
The documented dataset includes the fields below. Availability can depend on the source page and selected mode.
channelChannel (text)idListing ID (text)uuidSold UUID (text)displayPricePrice (text)lastSoldPriceLast sold (£) (number)lastSoldDateSold date (text)bedroomsBeds (number)bathroomsBaths (number)propertyTypeSold type (text)propertySubTypeListing type (text)displayAddressListing address (text)addressSold address (text)Show 30 more fields
postcodePostcode (text)agentNameAgent (text)transactionCount# sales (number)urlListing URL (link)detailUrlSold URL (link)changeTypechangeTypechangedFieldschangedFieldsagentCompanyNameCompany (text)agentPhonePhone (text)agentDisplayAddressAgent address (text)agentLogoLogo (link)descriptiondescription (text)keyFeatureskeyFeatures (array)tenureTypetenureType (text)councilTaxBandcouncilTaxBand (text)annualGroundRentannualGroundRent (number)annualServiceChargeannualServiceCharge (number)sizeSqFtsizeSqFt (number)latitudelatitude (number)longitudelongitude (number)nearestStationsnearestStations (array)imagesimages (array)floorplansfloorplans (array)epcGraphsepcGraphs (array)furnishTypefurnishType (text)letAvailableDateletAvailableDate (text)depositdeposit (number)detailScrapeddetailScraped (boolean)firstSeenAtfirstSeenAt (text)lastSeenAtlastSeenAt (text)Example output
An example from this actor’s documentation. Values are illustrative; this is not a fresh live result.
{
"id": 158234567,
"channel": "BUY",
"url": "https://www.rightmove.co.uk/properties/158234567",
"transactionType": "SALE",
"displayPrice": "£325,000",
"price": 325000,
"currency": "GBP",
"bedrooms": 1,
"bathrooms": 1,
"propertySubType": "Flat",
"displayAddress": "Example Road, London, SW1A",
"outcode": "SW1A",
"incode": "1AA",
"postcode": "SW1A 1AA",
"latitude": 51.5,
"longitude": -0.12,
"description": "<p>Offering approximately 381 sq.ft of well-presented accommodation ...</p>",
"keyFeatures": [
"Share of Freehold",
"Modern One Bedroom Apartment"
],
"sizeSqFt": 381,
"tenureType": "SHARE_OF_FREEHOLD",
"yearsRemainingOnLease": 118,
"councilTaxBand": "C",
"annualGroundRent": 250,
"annualServiceCharge": 1071,
"nearestStations": [
{
"name": "Example Station",
"distance": 0.11,
"unit": "miles"
}
],
"epcGraphs": [
"https://media.rightmove.co.uk/property-epc/example.png"
],
"floorplans": [
"https://media.rightmove.co.uk/property-floorplan/example.png"
],
"images": [
"https://media.rightmove.co.uk/example.jpeg"
],
"agentName": "Example Estate Agents, London",
"agentCompanyName": "Example Estate Agents Ltd",
"agentDisplayAddress": "1 Example Street, London, EC1A 1BB",
"agentPhone": "020 0000 0000",
"detailScraped": true
}Ways to use this data
- Property market research: track asking prices, price reductions and new listings across an area or postcode over time.
- Lead generation for agents and services: collect agent names, companies and phone numbers from active listings for outreach.
- Sold-price and comparable analysis: pull historical sold prices by postcode or area to value a property or a portfolio.
- Relocation and house-hunting tools: feed for-sale and to-rent listings, with full detail, into your own search app or alert bot.
- Portfolio and rent-roll monitoring: run monitoring mode on a schedule to catch newly listed properties as soon as they appear.
Before you run
Start with a small input and check the resulting records against your expected fields. Source content and actor options can change; the current Apify listing is the reference for availability and pricing.
Questions about this actor
What data does Rightmove UK Scraper return?
The documented output for Rightmove UK Scraper includes channel, listing id, sold uuid, price, last sold (£), sold date, beds and baths. Availability of each field depends on the source page and the selected mode.
How much does Rightmove UK Scraper cost?
It costs $1.80 per 1,000 results on the Apify Free plan and from $1.00 on paid plans, with smaller per-run or optional feature charges listed on Apify. The Apify listing shows the current rate for every plan.
Can I get only new listings on a schedule?
Yes. Schedule the actor from the Schedules tab and turn on Incremental mode (labels every change) or Monitoring mode (new listings only). Each run then remembers every property it has already returned for that exact search, and only returns ones it hasn't seen before.
Why did my search only return 24 properties?
For BUY and RENT searches, Max pages per search defaults to 1, a single results page of 24 listings, per location. Raise it (up to 42) to walk further into the result list, and set Max items to fit the total you want. This limit does not apply to SOLD mode, which is bounded only by Max items.
Why did my run return zero properties instead of an error?
If a location cannot be resolved, or the site refuses every request for that search, the run finishes normally with an empty dataset and a short explanation in its run summary, rather than throwing an error. Check the run's summary output (requests, blocks, pages fetched) to tell "no matches for this filter" apart from "the site blocked every request", and try again if requests were blocked.
Does pasting a single property link always fetch the full detail page?
Yes. A direct property URL in URL mode always returns the deep field set, and is billed as detail enrichment, regardless of the Scrape full property details toggle, since there is nothing to enrich beyond the page itself. That toggle applies to search results, whether from a location or a pasted search URL; it has no effect on SOLD mode.
