Zoopla Sold Properties Scraper
Pricing
Pay per usage
Zoopla Sold Properties Scraper
Scrape Zoopla.co.uk to crawl millions of off market real estate properties from United Kingdom. Our real estate scraper also lets you monitor specific listing for sold properties. You can provide multiple off market search result listings to scrape/monitor.
Pricing
Pay per usage
Rating
4.8
(6)
Developer
Dhrumil Bhankhar
Maintained by CommunityActor stats
2
Bookmarked
44
Total users
0
Monthly active users
7 days ago
Last modified
Categories
Share
🏡 What is Zoopla Real Estate Sold Properties Scraper?
This Zoopla sold properties Scraper will enable you scrape any sold listing from zoopla.co.uk/.
You can simply take your listing url from browser and enter it into this actor. This actor will crawl through all pages of particular listing and generate dataset for you.
Listing url is something you get when you perform the search on zoopla site https://www.zoopla.co.uk/house-prices Example listing urls :
- https://www.zoopla.co.uk/house-prices/london/
- https://www.zoopla.co.uk/house-prices/nw3/?new_homes=include&q=NW3&identifier=london&view_type=list
- https://www.zoopla.co.uk/house-prices/nw3/?new_homes=include&q=NW3&identifier=london&view_type=list&numMonths=6
You can apply any filter and use the url after filder as well.
🚪 What can this Zoopla Sold Properties Scraper do?
📈 Extract Zoopla off market data listings on Zoopla
👀 This actor is not just scraper but also has monitoring capability. You can turn on monitoring mode and it will give you only newly sold properties compared to your previous scrapes.
📩 This actor also helps you to identify zoopla estimate for particular property
⬇️ Download Zoopla real estate data in Excel, CSV, JSON, and other formats
📚 How do I start scraping with this scraper?
- Register for your free Apify account here
- You don't need to provide your credit card details for free acount. Just click on "Get Started" button on above link and complete the registration only.
- Free account comes with reasonable credits to try out this actor. This actor also comes with free trial of 3 days without any commitment/upfront charge.
- Run this actor and verify the scraped data. Apify has huge integration possibilities. You can download the data or push the data into any 3rd party platform directly.
🌳 What Zoopla data can I extract using this tool?
| 📝 | 📝 |
|---|---|
| Listing UPRN | Full Address |
| Listing URL | Category |
| Postal Code | Outcode |
| Bathrooms | Bedrooms |
| Floor Area | Living Rooms |
| Tenure | Property Type |
| Latitude | Longitude |
| Energy Rating | Rent Estimate |
| Sale Estimate | Historic Listings |
| Historic Sales | Data Source |
⬇️ Input
For simple usecase, you just need to provide browser url of zoopla off market search result page & that's all. You can leave other fields as they are to be sensible defaults.
Input example
{"listUrls": [{"url": "https://www.zoopla.co.uk/house-prices/sw1w-0ny/?new_homes=include&view_type=list"}],"fullPropertyDetails": false,"monitoringMode": false,"threads" : 3}
Understading monitoring mode :
-
monitoringMode: This open when turned on will only scrape newly found off market property listings compared to previously scraped properties by this actor. It's important to turn off fullScrape setting if you are using this mode. If you keep fullScrape on, it will re-scrape complete listing again. -
threads: Number of parallel threads to run for scraping -
fullPropertyDetails: If unchecked, it will provide full information about each property.
⬆️ Output
The scraped data is stored in the dataset of each run. The data can be viewed or downloaded in many popular formats, such as JSON, CSV, Excel, XML, RSS, and HTML.
Output example
The result for scraping a single property like this:
{"url": "https://www.zoopla.co.uk/property/uprn/100022746879/","uprn": "100022746879","fullAddress": "Flat 57, Belgravia Court, 33 Ebury Street, London, SW1W 0NY","postcode": "SW1W 0NY","country": "England","outcode": "SW1W","latitude": 51.4953741,"longitude": -0.1473962,"bathrooms": null,"bedrooms": null,"floorAreaSqM": 76,"livingRooms": null,"tenure": "Leasehold","propertyType": "Flat/Maisonette","currentEnergyRating": "C","rentEstimate": {"lowerPrice": 3600,"currentPrice": 4050,"upperPrice": 4550},"saleEstimate": {"lowerPrice": 1056000,"currentPrice": 1111000,"upperPrice": 1167000,"confidenceLevel": "HIGH","valueChange": {"numericChange": -164000,"percentageChange": -12.862745098039216,"saleDate": "2020-12-11"},"ingestedAt": "2024-02-08T11:30:32.529Z"},"historicListings": [{"date": "2019-02-15","price": 1000000}],"historicSales": [{"date": "2020-12-11","price": 1275000,"percentageChange": 27.500000000000004,"numericChange": 275000},{"date": "2020-10-16","price": 1000000,"percentageChange": 269.68576709796673,"numericChange": 729500},{"date": "1998-08-20","price": 270500,"percentageChange": null,"numericChange": null}],"soldPricesDataSource": "landRegistry"}
💰 Pricing Model & Usage Logic
This actor uses a pay-per-event billing model, where you're charged based on the number of properties you scrape. The pricing is tiered to reward higher volume usage.
Tiered Pricing Structure:
| Tier | Usage Range | Price per 1K Properties |
|---|---|---|
| Starter | 0 - 25K properties | $4.00/1K |
| Growth | 25K - 50K properties | $3.50/1K |
| Scale | 50K - 200K properties | $3.00/1K |
| Enterprise | 200K+ properties | $2.50/1K |
📊 Cost Per 1K Units – How Billing Works
The pricing is calculated in batches of 1,000 units. This means:
- Initial Charge: When you start the actor, it reserves and charges you for 1K units (1,000 properties or their equivalent based on multipliers).
- Continuous Usage: You can continue scraping in the same run or across multiple runs. As long as your usage stays within that 1K batch, no additional charges are applied.
- Next Batch: Only when you exhaust the 1K quota, the system charges you for the next 1K batch. This billing cycle repeats for every 1K units consumed.
- Pay-As-You-Go: You only pay for the batches you actually use. If you scrape 1,500 properties in total (across runs), you'll be charged for 2 batches (2K units).
Example Timeline:
- Start run #1 → Charged for 1K units (can scrape up to 1,000 properties)
- Scrape 800 properties in run #1 (200 units remaining in current 1K batch)
- Start run #2 → Use the remaining 200 units + 100 from next 1K batch → Charged for 2nd 1K batch
- Continue in run #3 → Still within the 2K batch until you exceed it
- When you exceed 2K total → Automatically charged for 3rd 1K batch
This ensures predictable billing in discrete 1K chunks, making it easier to manage your usage and costs.
Example Cost Calculations:
- Scraping 10,000 properties: 10,000 ÷ 1,000 × $4.00 = $40
- Scraping 30,000 properties: First 25K @ $4/1K = $100, remaining 5K @ $3.5/1K = $17.50 = $117.50
- Scraping 100,000 properties: 25K @ $4 + 25K @ $3.5 + 50K @ $3 = $100 + $87.50 + $150 = $337.50
⚡ Additional Usage Parameters (Multipliers & Penalties)
The actor may apply additional usage multipliers based on your input settings. These do not add to your base cost directly but increase how quickly your monthly quota is consumed.
Feature Multipliers:
-
🧠 Memory Usage: Base memory is 2 GB (2048 MB). If you run the actor with more than 2 GB of memory, you will be charged an additional usage multiplier. For example, running at 4 GB (2 GB above base) will add 1x multiplier, and running at 6 GB (4 GB above base) will add 2x multiplier.
-
🌐 Residential Proxy Usage: If you use a residential proxy, an additional 5x usage multiplier will apply due to the higher cost and complexity of residential proxy traffic.
-
🔄 Monitoring Mode: Enabling
monitoringModeadds a 4.0x multiplier, as it requires additional logic and storage for incremental scraping and state tracking. -
📄 Full Property Details: Enabling
fullPropertyDetailsadds a 4.0x multiplier. This requires fetching and processing individual property pages for extended information.
Example with Multipliers:
- 5,000 properties with fullPropertyDetails + monitoringMode: 5,000 × (1 + 4.0 + 4.0) = 45,000 units
- Cost: 45,000 ÷ 1,000 × $4.00 = $180
💡 Cost Optimization Tips:
- Base Usage: Run at 2 GB memory (the default and recommended setting) to avoid memory multipliers.
- Batch Operations: Scrape larger batches to reach higher tiers faster, which offers better per-property pricing.
- Selective Monitoring: Use monitoring mode only when you need incremental updates, as it adds a 4.0x multiplier.
- Subscription Requirements: A minimum charge of $1 USD per run is required to maintain your subscription.
❓Limitations
Since Zoopla allows only 1000 properties per listing/search result, you might want to break down your listing urls into smaller area if it has more than 1K results. Good News is that even if multiple list urls contains overlapping results, they will get deduplicated within same run data.
🤝 Related Actors
- Rightmove Scraper: Scrape sale/rent listings from rightmove.co.uk.
- Zoopla Scraper: Scrape property sale/rent listings, prices, and details from Zoopla.
- OnTheMarket Scraper : Scrape property sale/rent listings, prices, and details from OnTheMarket.
- Rightmove Full Address & House Number Finder: Find full addresses and house numbers for Rightmove listings.
- Rightmove Land Registry Full Address & House Number Finder: Get full address and house number using Land Registry data for Rightmove properties.
- Rightmove EPC Full Address Finder: Find EPC and full address details for Rightmove listings.
- Rightmove Commercial Scraper: Scrape commercial property listings from Rightmove.
- Rightmove Sold House Properties Scraper: Scrape sold house price data from Rightmove.
- Rightmove Agents Scraper: Extract agent and agency details from Rightmove.
- Zoopla Commercial Properties Scraper: Scrape commercial property listings from Zoopla.
🙋♀️ For custom solutions
In case you need some custom solution, you can contact me : dhrumil@techvasu.com
Or learn more about me on github : https://github.com/dhrumil4u360