Land Registry Price Paid UK avatar

Land Registry Price Paid UK

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Land Registry Price Paid UK

Land Registry Price Paid UK

Scrapes the UK HM Land Registry Price Paid Data. Search by address, postcode, town or street and filter by date range, price, property type, and estate type. Covers residential property sales in England and Wales from 1995 onwards.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

No-Code Venture

No-Code Venture

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

5 days ago

Last modified

Share

An Apify Actor that scrapes UK HM Land Registry Price Paid Data. Search for residential property sale prices in England and Wales by address, postcode, town, or street, with optional filters for date range, price, property type, estate type, and new-build status.

Data covers over 24 million transactions dating back to January 1995, updated monthly.

What it does

  • Look up sold prices by exact address (postcode + building number)
  • Search by area (town, street, or district)
  • Filter by date range, price range, property type, and estate type
  • Optionally restrict to new-build properties only
  • Handles pagination to retrieve large result sets

Input

Address

At least one of street or town must be provided. Postcode alone is not supported as it causes server-side timeouts — use it as an additional narrowing filter alongside street or buildingName.

FieldTypeDescriptionDefault
postcodestringUK postcode (e.g. SW1A 1AA). Case-insensitive.
buildingNamestringHouse number or building name (PAON). Combined with postcode for exact property.
unitNamestringFlat or unit number (SAON). Use with buildingName to pinpoint a specific flat.
streetstringStreet name. Case-insensitive.
localitystringLocality (not always present in the data).
townstringTown or city name. Case-insensitive.
districtstringDistrict (not always present in the data).
countystringCounty (not always present in the data).

Filters

FieldTypeOptions / FormatDefault
dateFromstringYYYY-MM-DD — earliest transaction date. Data available from 1995-01-01.
dateTostringYYYY-MM-DD — latest transaction date.
minPriceintegerMinimum sale price in GBP (inclusive).
maxPriceintegerMaximum sale price in GBP (inclusive).
propertyTypesarraydetached, semi-detached, terraced, flat-maisonette, otherPropertyType[] (all)
estateTypestringfreehold or leasehold. Leave empty for both.
newBuildarray"true" (new builds), "false" (not new build). Leave empty for all.[] (all)

Performance

FieldTypeDescriptionDefault
maxResultsintegerTotal maximum records to fetch across all pages. Set to 0 for no limit. Use with caution on broad queries.1000
maxConcurrencyintegerMaximum parallel requests.5
maxRequestsPerMinuteintegerRate limit cap. Lower if getting 429 errors.120
proxyConfigurationobjectApify proxy settings.disabled

Pagination

FieldTypeDescriptionDefault
enablePaginationbooleanFetch results across multiple pages using OFFSET. Each page fires a separate request and billing event.false
pageSizeintegerRecords per request when pagination is enabled. Has no effect when pagination is disabled. Keep between 10–500 for best results.100

When pagination is disabled, maxResults maps directly to the SPARQL LIMIT — one request, one page.

When pagination is enabled, each request fetches up to pageSize records. The last page is automatically trimmed so the total never exceeds maxResults. Pages continue until fewer than pageSize records are returned (no more data) or maxResults is reached.


Example — exact property lookup

{
"buildingName": "129",
"street": "HARBOUR ROAD",
"postcode": "BD6 3QX"
}

Example — all sales on a street

{
"street": "DOWNING STREET",
"town": "LONDON"
}

Example — area search with filters and pagination

{
"town": "MANCHESTER",
"dateFrom": "2020-01-01",
"dateTo": "2024-12-31",
"propertyTypes": ["semi-detached", "terraced"],
"estateType": "freehold",
"minPrice": 100000,
"maxPrice": 400000,
"maxResults": 5000,
"enablePagination": true,
"pageSize": 200
}

Example — new builds only in an area

{
"town": "LONDON",
"newBuild": ["true"],
"dateFrom": "2018-01-01"
}

Output

The dataset stores one JSON object per transaction, ordered by transaction date descending.

{
"transactionId": "237B17FE-B9CF-22AC-E063-4804A8C0EA3A",
"transaction": {
"price": 285000,
"date": "2024-05-10",
"propertyType": "semi-detached",
"estateType": "freehold",
"newBuild": false
},
"address": {
"unitName": null,
"buildingName": "129",
"street": "HARBOUR ROAD",
"locality": "WIBSEY",
"town": "BRADFORD",
"district": "BRADFORD",
"county": "WEST YORKSHIRE",
"postcode": "BD6 3QX"
}
}

Top level

FieldTypeDescription
transactionIdstringUnique transaction GUID assigned by Land Registry

transaction object

FieldTypeDescription
pricenumberSale price in GBP
datestringTransaction date (YYYY-MM-DD)
propertyTypestringdetached, semi-detached, terraced, flat-maisonette, otherPropertyType
estateTypestringfreehold or leasehold
newBuildbooleanWhether the property was a new build at time of sale

address object

FieldTypeDescription
unitNamestringFlat / unit number (SAON, may be null)
buildingNamestringHouse number or building name (PAON)
streetstringStreet name
localitystringLocality (may be null)
townstringTown or city
districtstringDistrict (may be null)
countystringCounty (may be null)
postcodestringUK postcode

Pay Per Event Billing

This Actor uses Apify's Pay Per Event pricing — you only pay for what actually runs.

EventCharged byDescription
apify-actor-startApify (auto)Once per run start
apify-default-dataset-itemApify (auto)Once per result record pushed
land-registry-queryCustomOnce per SPARQL query fired (including pagination pages)
retry-eventCustomOnce per retry on a failed request
event-proxyCustomOnce per run when using Apify Proxy (no group)
event-proxy-groupCustomOnce per run when using a proxy group (e.g. RESIDENTIAL)

You can cap total spend in the Apify Console when starting a run via Max total charge (USD) or Max paid dataset items.


Data source

Data is sourced from the HM Land Registry Price Paid Data, published under the Open Government Licence v3.0.

  • Covers residential property sales in England and Wales only
  • Updated monthly, with records from January 1995 onwards
  • Based on data collected at the time of registration — may not reflect the most recent information

Additional licensing terms apply when re-publishing address data. See the HM Land Registry website for details.

Resources