Skip to content
    ↑↓ to choose · Enter to open

    · 13 min read

    Rightmove Property Scraper: 29 Data Fields per Record (2026)

    By CrawlerBros Engineering Team

    Each record carries 29 output fields, including listingId, price, address, latitude, longitude, agentPhone, and imageUrls across UK property listings. Results cost $2.00 per 1,000 on Apify's free plan, which includes $5.00 of monthly usage. You can search properties for sale, pull rental listings, or pass search URLs directly. This scraper is built for real estate analysts, property investors, and lead generation teams. It is not for anyone who needs private property owner contact details or official land registry title deeds, which the records do not include.

    Try it before you read further. Apify's free plan includes $5.00 of usage every month with no credit card, enough for up to 2,500 results at $0.002 each before platform usage. Open Rightmove Property Scraper on Apify and run the prefilled example.

    How reliable is Rightmove Property Scraper in production?

    Across the last 30 days of public runs on the Apify platform, Rightmove Property Scraper recorded 54 runs with the following outcomes.

    Outcome Runs Share
    Succeeded 54 100.0%
    Failed 0 0.0%
    Aborted by the user 0 0.0%
    Timed out 0 0.0%
    Total 54 100.0%

    No run failed or timed out in the last 30 days. Keep a retry and an alert on scheduled runs all the same: a clean month is a record, not a guarantee.

    What does it cost to run Rightmove Property Scraper?

    Each result costs $0.002 on Apify's free plan, which is $2.00 per 1,000 results. Starting a run is charged separately at $0.005 per GB of Actor memory. Apify also bills the platform usage each run consumes, at the rates of your Apify plan, on top of these charges.

    Apify plan Per result Per 1,000 results
    FREE $0.002 $2.00
    BRONZE $0.00167 $1.67
    SILVER $0.00133 $1.33
    GOLD $0.001 $1.00
    PLATINUM $0.001 $1.00
    DIAMOND $0.001 $1.00

    Worked example: collecting 10,000 results costs $20.00 in result charges before run-start fees and platform usage. No run failed or timed out in the last 30 days, so the list price is a fair budget; keep a retry in place all the same.

    Dataset volume is the primary cost factor, dictated by maxItems. Setting higher maxItems limits on broad location queries increases total items written and raises your charges. Keep maxItems set to 5 or 10 on your first run to check your setup before running wider queries.

    How do you run Rightmove Property Scraper from the API?

    The schema marks 1 of its 13 controls as required: mode. Every value in the payload below comes from the published schema's own prefills, which means you can paste it, swap the token, and get a real result.

    Call the synchronous endpoint to start a run and receive dataset items in one request:

    curl -X POST "https://api.apify.com/v2/acts/crawlerbros~rightmove-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"mode":"forSale"}'
    

    The same run from Python, using the official client:

    from apify_client import ApifyClient
    
    client = ApifyClient("<YOUR_APIFY_TOKEN>")
    
    run_input = {
      "mode": "forSale"
    }
    
    run = client.actor("crawlerbros~rightmove-scraper").call(run_input=run_input)
    
    for item in client.dataset(run["defaultDatasetId"]).iterate_items():
        print(item)
    

    And from Node.js:

    import { ApifyClient } from 'apify-client'
    
    const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' })
    
    const input = {
      "mode": "forSale"
    }
    
    const run = await client.actor('crawlerbros~rightmove-scraper').call(input)
    const { items } = await client.dataset(run.defaultDatasetId).listItems()
    console.log(items)
    

    That endpoint blocks until the run completes. Fine while you are testing a handful of records, risky once a run takes minutes: a dropped connection loses the response even though the run itself finished. Switch to an asynchronous start with polling or a webhook before you schedule anything.

    Which Rightmove Property Scraper inputs matter, and which can you skip?

    The mode control determines how the scraper searches, taking forSale, toRent, or byUrl. When mode is set to forSale or toRent, location sets the target area; when set to byUrl, startUrls takes the target search page links. On your first execution, leave optional controls like propertyType, minPrice, and maxPrice blank to avoid over-filtering.

    • mode (string): Scraping mode: search properties for sale, to rent, or fetch a specific listing page URL. Default: "forSale".
    • location (string): City, town, or region name (e.g. London, Manchester, Leeds). Used in modes forSale and toRent. Default: "London".
    • startUrls (array): One or more Rightmove search or listing page URLs. Used in mode byUrl. Default: [].
    • propertyType (string): Restrict results to a specific property type. Leave blank for all types. Default: "".
    • minPrice (integer): Minimum property price in GBP. Leave blank for no minimum.
    • maxPrice (integer): Maximum property price in GBP. Leave blank for no maximum.
    • minBedrooms (integer): Minimum number of bedrooms. Default: 0.
    • maxBedrooms (integer): Maximum number of bedrooms. Leave blank for no maximum.
    • radius (string): Search radius around the location in miles. Default: "0.0".
    • sortBy (string): Sort order for results. Default: "2".
    • includeSSTC (boolean): Include properties that are Sold Subject To Contract (SSTC) or Let Agreed. Default: false.
    • newHomesOnly (boolean): Only return new-build / new-home properties. Default: false.

    The other 1 controls, with their defaults, are listed in the input schema on Rightmove Property Scraper on Apify.

    Fixed-choice controls: mode accepts forSale (search properties for sale), toRent (search rental properties), byUrl (fetch a Rightmove listing or search page URL); propertyType accepts "" (Any type), detached, semi-detached, terraced, flat (Flat / apartment), bungalow, land, park home; radius accepts 12 values (default 0.0), including 0.0 (This area only), 0.25 (0.25 miles), 0.5 (0.5 miles), 1.0 (1 mile); sortBy accepts 2 (Most recent), 1 (Highest price), 6 (Lowest price), 10 (Most relevant), 4 (Oldest listing).

    What does Rightmove Property Scraper return?

    Returned dataset records provide structured details for yield calculations, property valuations, and agency lead generation, including updateReason codes and agentPhone numbers. They do not contain historical land boundary maps or direct private home owner contact details.

    • listingId: Rightmove property ID
    • url: Full URL to the property listing
    • title: Property summary / description snippet
    • address: Display address (e.g. "Cart Lane, London, E4")
    • price: Price as integer (GBP or per-month for rentals)
    • priceText: Formatted price string (e.g. "£580,000")
    • currency: Currency code ("GBP")
    • priceFrequency: Price period for rentals (e.g. "monthly")
    • bedrooms: Number of bedrooms
    • bathrooms: Number of bathrooms
    • propertyType: Property subtype (e.g. "Apartment", "Detached")
    • tenure: Tenure (e.g. "Leasehold", "Share Of Freehold")
    • displaySize: Floor area if available (e.g. "786 sq. ft.")
    • latitude: Geographic latitude
    • longitude: Geographic longitude
    • agentName: Estate agent / branch trading name
    • branchName: Branch display name
    • agentPhone: Agent contact telephone
    • agentUrl: Agent branch page URL
    • imageUrls: Array of property image URLs (up to 15)
    • keyFeatures: Bullet-point features from the listing
    • listedDate: Date the listing first appeared on Rightmove
    • lastUpdatedDate: Date of the most recent listing update
    • updateReason: Why the listing was updated (e.g. "price_reduced")
    • addedOrReduced: Summary of when added or price reduced
    • transactionType: "buy" or "rent"
    • isPremiumListing: Whether this is a premium listing
    • countryCode: Country code ("GB")
    • scrapedAt: ISO 8601 timestamp of when the record was scraped

    These are the documented fields. Optional ones can be empty on a given record, so measure how often each field your deliverable depends on is populated across a real sample before automating the handoff.

    How do you build the workflow end to end?

    Open Rightmove Property Scraper and work through these in order. Each step ends with something to check, so a bad configuration surfaces on a small run rather than a scheduled one.

    1. Set mode to forSale or toRent when searching by area, or set mode to byUrl if passing target links directly.
    2. Enter a valid UK city name into location when operating in location-based modes.
    3. Add target Rightmove listing or search page links to startUrls when mode is set to byUrl.
    4. Configure maxItems to a small number like 5 on your initial attempt to verify output fields before scaling up.
    5. Run the Actor and inspect the dataset to confirm listingId, price, address, and agentName are present and populated.
    6. Verify that latitude, longitude, and imageUrls carry expected values for mapping and media workflows.
    7. Expand maxItems to your desired extraction volume up to 2000 once your schema checks pass.

    How do you apply it? Three worked playbooks

    These are Rightmove Property Scraper's own documented use cases, each worked through as an operating pattern rather than a description.

    Use case 1: Property market research

    Outcome: Track pricing trends across UK cities

    Configure: Set mode to forSale, location to Manchester, sortBy to 2, and maxItems to 2000.

    Working method: Execute an initial run for your target location to collect active property prices and listing dates. Run the query on a recurring schedule, matching records on listingId to calculate price adjustments over time.

    Deliverable: A structured dataset containing property prices, listing dates, and update reasons across your designated search area.

    Stop condition: Stop if the dataset returns zero items for a verified location string.

    Use case 2: Investment analysis

    Outcome: Compare yields in different postcodes

    Configure: Set mode to byUrl, startUrls to ["https://www.rightmove.co.uk/property-to-rent/London.html"], and maxItems to 500.

    Working method: Pull rental listings via startUrls to extract monthly prices, bedroom counts, and displaySize metrics. Compare these rental figures against purchase prices for identical postcodes to compute yield estimates.

    Deliverable: A dataset mapping rental prices against property purchase prices grouped by postcode.

    Stop condition: Stop if any URL in startUrls returns an unparseable response.

    Use case 3: Lead generation

    Outcome: Find recently listed or price-reduced properties

    Configure: Set mode to forSale, location to Birmingham, sortBy to 2, includeSSTC to false, and maxItems to 100.

    Working method: Run daily extractions sorted by most recent listings to capture new entries. Filter output rows by updateReason and addedOrReduced to isolate fresh market additions and price reductions.

    Deliverable: An actionable lead file containing fresh or price-reduced listings with agentName, agentPhone, url, and price.

    Stop condition: Stop if agentPhone is completely blank across all records in the batch.

    What breaks, and how do you design around it?

    • Over the last 30 days, 0.0% of public runs failed and 0.0% timed out. Build retries and alerting around those rates rather than assuming every run completes.

    Rightmove paginates search results in groups of 24 listings. When querying large urban areas, split your searches into smaller sub-locations or narrow price ranges using minPrice and maxPrice to capture complete sets. If you hit your maxItems limit, divide the workload into multiple targeted runs.

    When should you not use Rightmove Property Scraper?

    Do not use this Actor if you need property data from other UK real estate portals or international markets. If your pipeline requires listings specifically from Zoopla, use Zoopla UK Property Scraper instead. If you need coverage across OnTheMarket listings, use OnTheMarket Property Listings Scraper. For properties in France, switch to SeLoger French Real Estate Scraper.

    What should you check before trusting the output?

    • Verify that listingId is present and non-null on every returned row.
    • Confirm that price returns an integer greater than zero.
    • Check that address contains a populated display address string.
    • Stop the scheduled run if listingId is missing across returned dataset items.
    • Flag records where agentPhone is empty if you require direct agency telephone numbers.

    None of this proves a record is correct. It gives a scheduled Rightmove Property Scraper run defined points where it should stop instead of quietly passing bad data downstream.

    Frequently asked questions

    How much does it cost to scrape Rightmove listings?

    Results cost $0.002 each, which equals $2.00 per 1,000 results on Apify's free plan. Platform usage fees billed by Apify apply separately to each run.

    Can I search for properties in specific postcodes?

    Yes. Set mode to byUrl and supply a Rightmove search URL containing your desired postcode in the startUrls array.

    Does the dataset contain phone numbers for estate agents?

    Yes.

    How are price drops tracked in the output?

    The output populates updateReason, addedOrReduced, and lastUpdatedDate, allowing you to isolate listings that have experienced price reductions.

    How reliable is this scraper for automated schedules?

    In the last 30 days, 54 of 54 runs succeeded with zero failures or timeouts, achieving a 100.0% success rate.

    Where to go next

    When you are ready to run it, open Rightmove Property Scraper on Apify; the free plan covers up to 2,500 results a month.

    Start with the Rightmove Property Scraper Actor page for the current input schema, pricing tier, and run history.

    It is part of the Real Estate Scrapers, which puts every related Actor on one page with its price and run history.

    If you are comparing approaches rather than committing to one Actor, these category pages list every option we publish:

    Other Actors we maintain for related data:

    Related guides:

    Resources

    • Actor documentation, input schema, and pricing: verified against the published Actor on 2026-09-26.

    • Actor last updated by its maintainers on 2026-06-11.

    • Run outcome figures cover the 30 day public window ending 2026-09-26.

    • Rightmove Property Scraper on Apify

    Featured actors

    Rightmove Property Scraper

    Scrape Rightmove - UK's largest property portal. Search properties for sale, to rent, or fetch any listing page by URL. Returns price, bedrooms, bathrooms, address, agent, images, and more.

    Run on Apify ↗