OnTheMarket.com Scraper avatar

OnTheMarket.com Scraper

Pricing

from $1.20 / 1,000 results

Go to Apify Store
OnTheMarket.com Scraper

OnTheMarket.com Scraper

Scrape OnTheMarket.com, the UK's agent-exclusive property portal. Price, beds, baths, property type, listing agency, GPS and images. With detail fetching: full description, EPC, key features, tenure, nearest stations and floor plans. Sale & rental. No personal contact data.

Pricing

from $1.20 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

4

Total users

1

Monthly active users

14 days ago

Last modified

Share

OnTheMarket.com Scraper

Extract property listings from OnTheMarket.com, the UK's agent-exclusive property portal, for both sale and rental. Get price, address, bedrooms, bathrooms, GPS coordinates, agency and — with detail fetching on — full descriptions, EPC ratings, floor plans, nearest stations and more. No API key required.


Why this scraper?

🎯 Built for UK property

A dedicated OnTheMarket scraper covering sale, rental and new-home listings nationwide. Price parsing and pcm/pw handling are tuned for UK listings in GBP.

📄 Complete listing data

Title, full address, property type, bedrooms, bathrooms, price (text and numeric), tenure, feature bullets and a gallery of images for every listing.

🔎 Deep detail enrichment

Turn on Fetch listing details to add the full property description (HTML, text and Markdown), EPC rating, key features, council tax, ground rent, nearest stations with distances, floor plans, brochures and virtual tours.

📍 Precise location

Latitude and longitude for every listing that carries coordinates, plus the human-readable address and property type.

🏢 Agency identity

Listing agency name, ID and profile URL. No personal contact data is collected.

🔁 Recency and status signals

Filter to listings added in the last 24 hours, 3 days or 7 days, and read added/reduced status, exclusivity, premium and virtual-tour flags on every record.


Input parameters

ParameterTypeDefaultDescription
transactionstringfor-salefor-sale or to-rent.
propertyTypestringpropertyproperty (all), houses, flats, new-homes or land.
locationstringlondonCity, town or area slug, e.g. london, manchester, edinburgh, or a postcode district like se11.
addedToSitestring(empty)Recency filter: 24-hours, 3-days or 7-days. Empty means any time.
minPriceinteger(empty)Minimum price in GBP (monthly pcm for rentals).
maxPriceinteger(empty)Maximum price in GBP (monthly pcm for rentals).
minBedroomsinteger(empty)Minimum number of bedrooms.
maxBedroomsinteger(empty)Maximum number of bedrooms.
radiusinteger(empty)Search radius in miles from the location centre.
fetchDetailsbooleanfalseOpen each listing's detail page to add description, EPC, floor plans and more.
maxItemsinteger5Maximum number of listings to return.
startUrlsarray[]Optional OnTheMarket.com search URLs to scrape directly.

Output schema

Every field below is present on every record. Fields the source does not publish for a given listing are returned as null (or an empty array), never omitted.

Always present

FieldTypeDescription
idstringOnTheMarket listing ID.
urlstringCanonical detail-page URL.
transactionstringsale or rent.
propertyTypestringHuman-readable type, e.g. Flat, Terraced house.
titlestringListing title, e.g. 3 bedroom flat for sale.
addressstringDisplayed address.
countrystringAlways GB.
latitudenumber | nullLatitude, if published.
longitudenumber | nullLongitude, if published.
priceTextstring | nullPrice as displayed, e.g. £475,000 or £4,650 pcm (£1,073 pw).
priceShortstring | nullAbbreviated price, e.g. £475k.
priceAmountnumber | nullNumeric price in GBP (monthly pcm for rentals).
priceCurrencystringAlways GBP.
priceQualifierstring | nulle.g. Guide price, Offers over (null if none).
bedroomsnumber | nullBedroom count (null for land/parking).
bathroomsnumber | nullBathroom count (null if not published).
featuresstring[]Feature bullets from the listing card.
tenurestring | nullTenure, e.g. Leasehold (87 years remaining) (null if not stated).
imagesstring[]Gallery image URLs.
coverImageUrlstring | nullPrimary cover image URL.
imageCountnumber | nullNumber of images (upgraded to full count with fetchDetails).
marketingLabelstring | nullPortal label, e.g. Spotlight Property, 3D tour, Reduced.
postedLabelstring | nullAdded/reduced label, e.g. Added today, Reduced < 7 days.
isExclusivebooleanAgent-exclusive listing.
isRecentlyAddedbooleanRecently added flag.
isPriceReducedbooleanPrice-reduced flag.
isPremiumbooleanPremium/featured placement.
hasVirtualTourbooleanHas a Matterport/virtual tour.
agencyIdstring | nullListing agency ID.
agencyNamestring | nullListing agency name.
agencyProfileUrlstring | nullAgency profile page on OnTheMarket.
sourcestringAlways onthemarket.com.
scrapedAtstringISO timestamp of extraction.
contentHashstring16-char fingerprint of id + price + bedrooms.

With fetchDetails: true

FieldTypeDescription
summarystring | nullShort property summary.
descriptionHtmlstring | nullFull description as HTML.
descriptionTextstring | nullFull description as plain text.
descriptionMarkdownstring | nullFull description as Markdown.
epcRatingstring | nullEPC rating letter, e.g. C (null if not published).
keyFeaturesstring[]Full key-features list from the detail page.
keyInfoobject[]Structured key info as { title, value }, e.g. Tenure, Council tax, Ground rent.
councilTaxstring | nullCouncil tax information, if published.
groundRentstring | nullGround rent, if published (leasehold).
nearestStationsobject[]Nearest stations as { name, distance, type }.
propertyLabelsstring[]Labels such as Chain-free, Rental development.
floorplanUrlsstring[]Floor-plan image URLs.
brochureUrlsstring[]PDF brochure/particulars URLs.
virtualTourUrlsstring[]Virtual/Matterport tour URLs.
lettingDetailsstring[]Rental terms, e.g. Availability date: 13 Jul 2026, Furnished, Deposit: £3645.

Example record

{
"id": "19656028",
"url": "https://www.onthemarket.com/details/19656028/",
"transaction": "sale",
"propertyType": "Flat",
"title": "3 bedroom flat for sale",
"address": "Opal Street, London",
"country": "GB",
"latitude": 51.490453,
"longitude": -0.106152,
"priceText": "£475,000",
"priceShort": "£475k",
"priceAmount": 475000,
"priceCurrency": "GBP",
"priceQualifier": null,
"bedrooms": 3,
"bathrooms": 1,
"features": ["Three Genuine Double Bedrooms", "Split Level", "Private Balcony"],
"tenure": "Leasehold | 87 yrs left",
"images": ["https://media.onthemarket.com/properties/19656028/1627940909/image-0-480x320.jpg"],
"coverImageUrl": "https://media.onthemarket.com/properties/19656028/1627940909/image-0-480x320.jpg",
"imageCount": 13,
"marketingLabel": "Spotlight Property",
"postedLabel": "Added > 14 days",
"isExclusive": false,
"isRecentlyAdded": false,
"isPriceReduced": false,
"isPremium": true,
"hasVirtualTour": true,
"agencyId": "73425",
"agencyName": "Barnard Marcus - Kennington",
"agencyProfileUrl": "https://www.onthemarket.com/agents/branch/73425/",
"summary": "Three double bedroom split-level purpose built maisonette in good decorative order.",
"descriptionHtml": "<b>SUMMARY</b><br/>Three double bedroom split-level maisonette...",
"descriptionText": "SUMMARY Three double bedroom split-level maisonette...",
"descriptionMarkdown": "**SUMMARY** Three double bedroom split-level maisonette...",
"epcRating": "C",
"keyFeatures": ["Three Genuine Double Bedrooms", "Split Level", "Private Balcony", "Chain Free"],
"keyInfo": [{ "title": "Tenure", "value": "Leasehold | 87 yrs left" }],
"councilTax": null,
"groundRent": null,
"nearestStations": [{ "name": "Kennington Underground", "distance": "0.2mi.", "type": "Tube" }],
"propertyLabels": ["Chain-free"],
"floorplanUrls": ["https://media.onthemarket.com/properties/19656028/1627940909/floor-plan-0-1024x1024.jpg"],
"brochureUrls": ["https://media.onthemarket.com/properties/19656028/1627944338/document-0.pdf"],
"virtualTourUrls": ["https://my.matterport.com/show/?m=q9Ct8RPRueH"],
"lettingDetails": [],
"source": "onthemarket.com",
"scrapedAt": "2026-07-10T09:00:00.000Z",
"contentHash": "a1b2c3d4e5f60718"
}

Examples

Three-bedroom houses for sale in Manchester:

{
"transaction": "for-sale",
"propertyType": "houses",
"location": "manchester",
"minBedrooms": 3,
"maxItems": 50
}

Rentals added in the last 24 hours in London, with full details:

{
"transaction": "to-rent",
"location": "london",
"addedToSite": "24-hours",
"fetchDetails": true,
"maxItems": 100
}

Scrape a specific OnTheMarket search URL directly:

{
"startUrls": [
{ "url": "https://www.onthemarket.com/for-sale/flats/edinburgh/?max-price=400000" }
],
"maxItems": 100
}

Flats up to £500k within 5 miles of a postcode district:

{
"transaction": "for-sale",
"propertyType": "flats",
"location": "se11",
"maxPrice": 500000,
"radius": 5,
"maxItems": 50
}

💰 Pricing

$1.50 per 1,000 results — you only pay for successfully retrieved listings. Failed retries are never charged.

ResultsCost
100~$0.15
1,000~$1.50
10,000~$15.00
100,000~$150.00

Flat-rate alternatives typically charge $30–$100/month regardless of usage.

Use the Max items cap in the input to control your spend exactly.


Performance

Run sizeTypical time
100 resultsunder 1 minute
1,000 results2–4 minutes
10,000 results20–35 minutes

Enabling Fetch listing details adds one request per listing, roughly doubling run time.


Known limitations

  • Salary-style detail fields such as EPC rating, council tax and ground rent are only populated when fetchDetails is enabled, and are null where the agent has not published them.
  • OnTheMarket caps deep pagination, so very large single searches are limited to roughly the first 1,000 results — split large jobs by location or price band.
  • Exact floor area / square footage is not published in the source and is therefore not returned.
  • No personal contact data (agent phone numbers, individual names or logos) is collected, by policy.

Technical details

  • Source: onthemarket.com — UK property listings for sale and rent
  • Coverage: nationwide, filterable by location, radius, price, bedrooms and recency
  • Retry: automatic retry on network errors with exponential backoff

Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl