Zoopla Scraper avatar

Zoopla Scraper

Pricing

Pay per usage

Go to Apify Store
Zoopla Scraper

Zoopla Scraper

Extract property listings, sales history, and rental data from Zoopla, the UK's leading real estate platform. Perfect for detailed market analysis and investment insights. To ensure seamless extraction and prevent blocking, the use of residential proxies is strongly recommended.

Pricing

Pay per usage

Rating

5.0

(1)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

0

Bookmarked

8

Total users

4

Monthly active users

9 days ago

Last modified

Share

Zoopla Property Scraper

Extract comprehensive Zoopla property listing data at scale for research, monitoring, and analysis. Collect rich listing details including pricing, property features, listing metadata, and agent information in a clean structured dataset. Built for teams that need reliable UK property intelligence without manual copy-paste work.

Features

  • Rich property records — Collect detailed listing data including pricing, features, branch details, and listing links.
  • Clean output format — Returns sanitized records with no null fields for easier downstream processing.
  • Pagination coverage — Automatically moves through search result pages based on your target result count.
  • Multi-URL support — Run one search URL or multiple search URLs in a single job.
  • UK proxy-ready — Designed for reliable collection with UK residential proxy setup.
  • Analysis-friendly fields — Includes normalized values such as priceValue, beds, baths, and receptions.

Use Cases

Property Market Research

Track property supply, asking prices, and listing characteristics across areas. Build datasets for market trend analysis and reporting.

Investment Sourcing

Collect and compare listings to identify opportunities by location, size, and property type. Support faster screening and shortlist creation.

Competitor Monitoring

Monitor listing presentation, pricing movements, and branch activity in targeted regions. Use data snapshots for regular intelligence reviews.

Lead Enrichment

Capture listing-level context and branch details for outreach workflows. Combine results with your internal CRM or BI tools.

Data Pipelines and Dashboards

Feed clean listing data into analytics systems for recurring reports. Export to spreadsheet tools or automate to warehouse pipelines.


Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlStringNohttps://www.zoopla.co.uk/for-sale/property/london/?q=London&search_source=home&recent_search=trueSingle Zoopla search URL to scrape.
startUrlsArrayNoOptional list of multiple Zoopla search URLs.
results_wantedIntegerNo20Maximum number of listings to collect.
proxyConfigurationObjectNoUK residential presetProxy configuration for reliable collection.

Output Data

Each dataset item contains a cleaned property listing record.

FieldTypeDescription
listingIdStringUnique Zoopla listing identifier.
titleStringListing title.
addressStringProperty address text.
postalCodeStringExtracted UK postcode when available.
propertyTypeStringProperty type label from listing data.
priceStringFormatted listing price text.
priceUnformattedNumberRaw numeric price from listing data.
priceValueNumberNormalized numeric price for analysis.
priceCurrencyStringCurrency code.
bedsNumberBedrooms count when available.
bathsNumberBathrooms count when available.
receptionsNumberReception/rooms count when available.
summaryDescriptionStringListing summary text.
urlStringListing detail URL.
detailUrlStringListing detail URL (explicit field).
contactUrlStringListing contact page URL.
branchObjectBranch details including name and phone.
branchDetailsUrlStringBranch profile URL.
tagsArrayListing tags (for example tenure/chain status).
featuresArrayStructured feature badges from listing data.
galleryArrayGallery image identifiers.
imageObjectMain image metadata and responsive variants.
searchContextObjectRun context such as page number and source URL.
searchResultsMetaObjectSearch-level metadata for the listing page.
paginationObjectPagination metadata for the source page.
flagsObjectSearch flags returned with results.
scrapedAtStringISO timestamp for extraction time.

Usage Examples

Basic Extraction

Collect listings from one search URL.

{
"startUrl": "https://www.zoopla.co.uk/for-sale/property/london/?q=London&search_source=home&recent_search=true",
"results_wanted": 20,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"countryCode": "GB"
}
}

Multiple Search URLs

Collect listings from several target locations in one run.

{
"startUrls": [
"https://www.zoopla.co.uk/for-sale/property/london/?q=London&search_source=home&recent_search=true",
"https://www.zoopla.co.uk/for-sale/property/manchester/?q=Manchester&search_source=home&recent_search=true"
],
"results_wanted": 80,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"countryCode": "GB"
}
}

Higher-Volume Collection

Increase the listing cap for broader monitoring.

{
"startUrl": "https://www.zoopla.co.uk/for-sale/property/birmingham/?q=Birmingham&search_source=home&recent_search=true",
"results_wanted": 250,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"countryCode": "GB"
}
}

Sample Output

{
"listingId": "72405744",
"title": "3 bed semi-detached house for sale",
"address": "Redway Drive, Twickenham TW2",
"postalCode": "TW2",
"propertyType": "semi_detached",
"price": "£850,000",
"priceUnformatted": 850000,
"priceValue": 850000,
"priceCurrency": "GBP",
"beds": 3,
"baths": 1,
"receptions": 2,
"summaryDescription": "A three-bedroom semi-detached family home with two reception rooms, garage, and a generous driveway...",
"url": "https://www.zoopla.co.uk/for-sale/details/72405744/",
"detailUrl": "https://www.zoopla.co.uk/for-sale/details/72405744/",
"contactUrl": "https://www.zoopla.co.uk/for-sale/contact/72405744/",
"branch": {
"branchId": 67453,
"name": "Yopa",
"phone": "01322 584475"
},
"branchDetailsUrl": "https://www.zoopla.co.uk/find-agents/branch/yopa-hinckley-67453/",
"listingType": "featured",
"scrapedAt": "2026-02-17T10:15:12.000Z"
}

Tips for Best Results

Use Strong Search URLs

  • Start from valid Zoopla search result pages.
  • Keep URL filters aligned to your exact use case.
  • Validate each URL manually before long runs.

Scale Gradually

  • Start with a smaller results_wanted for validation.
  • Increase volume after confirming field quality.
  • Split very large jobs across multiple runs.

Keep Proxy Settings Consistent

  • Use UK residential proxy settings for stable access.
  • Avoid switching proxy profiles mid-workflow.
  • Re-run failed jobs with the same proxy strategy.

Build Repeatable Monitoring

  • Schedule runs at regular intervals.
  • Store snapshots by run date for trend analysis.
  • Compare normalized fields such as priceValue over time.

Proxy Configuration

Recommended proxy setup:

{
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"countryCode": "GB"
}
}

If UK residential proxies are not available in your account, the actor automatically falls back to alternative proxy strategies so runs can continue.


Integrations

Connect your dataset with:

  • Google Sheets — Share and review listing data with non-technical stakeholders.
  • Airtable — Build searchable listing databases and internal workflows.
  • Looker Studio / BI tools — Visualize market movements and trends.
  • Webhooks — Push fresh records into your own systems automatically.
  • Make — Automate enrichment and notification workflows.
  • Zapier — Trigger actions when new listings match your criteria.

Export Formats

  • JSON — Best for APIs, apps, and pipelines.
  • CSV — Best for quick analysis in spreadsheets.
  • Excel — Best for business reporting and sharing.
  • XML — Best for systems requiring XML ingestion.

Frequently Asked Questions

How many listings can I collect in one run?

You can set the results_wanted value based on your needs. Start smaller for testing, then increase for production runs.

Can I run multiple location searches at once?

Yes. Use startUrls to pass multiple Zoopla search URLs and collect data in one actor run.

Will the output include empty or null fields?

No. Output records are cleaned to remove null values automatically.

Are coordinates and impressions included?

No. Coordinate-related fields and impression arrays are removed from output records.

Why are some optional fields missing on certain listings?

Some listings do not publish every attribute. The actor returns only available non-null values.

Can I schedule this actor to run daily?

Yes. Use Apify schedules to run hourly, daily, or at any custom interval.

Which proxy setup should I use?

UK residential proxy configuration is recommended for best reliability.


Support

For issues or feature requests, open a ticket through the Apify Console actor page.

Resources


This actor is intended for legitimate data collection and analysis workflows. You are responsible for complying with website terms, local regulations, and data-use requirements in your jurisdiction.