Property Investors Package · Pay as you go
Property data API for investors.
Comparables, price history, listing event signals, and motivated seller identification. Built for property investors who want to assess deals, source opportunities, and analyse markets — without manual portal research.
Pay as you go: 100 tokens = £1. First top-up matched 100%. 29M properties covered 30 years of listing history 0.5 mile comparables radius 6 event types per property trail
What you get
What investors use it for
One API, multiple investment strategies.
Motivated seller identification Filter listing events by days on market, price reduction count, and status changes. Properties with 90+ DOM, multiple reductions, and a prior withdrawn instruction show the highest seller motivation — identify them before anyone else does.
Comparable evidence for offers Pull the nearest comparable sold prices for any property by UPRN — distance-ranked, with property type, bedrooms, floor area, and sale date. Build your own AVM or justify below-market offers with real evidence.
Price history & market timing 30 years of listing events per property — every price change, status update, and instruction going back to 1995. Use it to understand a property's history before bidding, or to model local market cycles.
🏘️ ·
BTL portfolio analysis
Bulk enrich an entire portfolio — EPC ratings, council tax, flood risk, construction age — in a single pass. Surface listing events on properties you own (landlord exit signals) or target areas with high rental demand and suppressed prices.
⚠️ ·
Property risk assessment
Flood risk, radon, subsidence, landfill proximity, noise, and air quality — all available per UPRN. Know what's hidden behind every opportunity before you commit to a survey.
🏗️ ·
Development opportunity sourcing
Combine planning applications data with price growth and deprivation scores to identify areas early in the gentrification cycle. Layer in listing velocity to spot pockets of undersupply.
The Investor Package — endpoints included
Everything you need to assess a deal, find the next one, and track your portfolio.
| Endpoint | What it returns | Tokens | Availability |
|---|---|---|---|
| /comparables/{uprn}/ | Nearest comparable sold + listed properties, distance-ranked. Arranged per customer rather than sold self-serve; the same evidence is included in the complete property profile. | Enterprise | Request access |
| /property_listings/ | Thirty years of listing history for one property — what it asked, how often that was cut, and whether it sold. Arranged per customer rather than sold self-serve. | Enterprise | Request access |
| /property_sales/ | HMLR sold prices by UPRN | 5 tokens | Every account |
| /properties/{uprn}/ | Beds, baths, floor area, type, tenure, construction age | 1 token | Every account |
| /epc-checker/{uprn}/ | EPC rating, energy score, floor area, assessment date | 1 token | Every account |
| /risks/flood/ | River, surface, coastal, groundwater flood risk bands | 1 token | Every account |
| /risks/radon/ | Radon level indicator | 1 token | Every account |
| /council_tax_band/ | Council tax band | 3 tokens | Every account |
| /planning_applications/ | Planning history — decision, type, dates | 1 token | Every account |
| /deprivation/ | IMD deprivation scores across 10 domains | 1 token | Every account |
| /price_trends/ | Monthly median prices and volatility by postcode | 1 token | Every account |
| /address/find/ | Address search → UPRN | 2 tokens | Every account |
Worked example
Assess a deal in seconds
Pass a UPRN — get back comparables, listing history, EPC, flood risk, council tax, and planning history. Everything you need to decide whether a property is worth pursuing, in one API session.
Run the same logic across a list of 200 off-market targets and you've automated a week of manual research.
import requests, concurrent.futures
UPRN = "100090914832"
H = {"Authorization": "Api-Key YOUR_KEY"}
B = "https://api.homedata.co.uk"
def fetch(path):
return requests.get(f"{B}{path}", headers=H).json()
# Run all deal-assessment calls in parallel
with concurrent.futures.ThreadPoolExecutor() as pool:
futures = {
# comparables: arranged per customer, not self-serve
"comparables": pool.submit(fetch, f"/comparables/{UPRN}/"),
"listings": pool.submit(fetch, f"/property_listings/?uprn={UPRN}"), # arranged per customer
"property": pool.submit(fetch, f"/properties/{UPRN}/"),
"epc": pool.submit(fetch, f"/epc-checker/{UPRN}/"),
"flood": pool.submit(fetch, f"/risks/flood/?uprn={UPRN}"),
"council_tax": pool.submit(fetch, f"/council_tax_band/?uprn={UPRN}"),
"planning": pool.submit(fetch, f"/planning_applications/?uprn={UPRN}"),
}
deal = {k: v.result() for k, v in futures.items()}
# Motivated seller score
listings = deal["listings"].get("results", [])
latest = listings[0] if listings else {}
reductions = latest.get("times_reduced", 0)
days_on_market = latest.get("days_on_market", 0)
print(f"DOM: {days_on_market} days, {reductions} price reductions")
# → DOM: 127 days, 3 price reductions
const UPRN = '100090914832';
const headers = { 'Authorization': 'Api-Key YOUR_KEY' };
const BASE = 'https://api.homedata.co.uk';
const fetch = (path) =>
globalThis.fetch(`${BASE}${path}`, { headers }).then(r => r.json());
// Run deal-assessment calls in parallel
const [comparables, listings, property, epc, flood, councilTax, planning] =
await Promise.all([
// comparables: arranged per customer, not self-serve
fetch(`/comparables/${UPRN}/`),
// listing history: arranged per customer, not self-serve
fetch(`/property_listings/?uprn=${UPRN}`),
fetch(`/properties/${UPRN}/`),
fetch(`/epc-checker/${UPRN}/`),
fetch(`/risks/flood/?uprn=${UPRN}`),
fetch(`/council_tax_band/?uprn=${UPRN}`),
fetch(`/planning_applications/?uprn=${UPRN}`),
]);
// Motivated seller scoring
const latest = listings.results?.[0] ?? {};
const reductions = latest.times_reduced ?? 0;
console.log(`DOM: ${latest.days_on_market ?? 0} days, ${reductions} reductions`);
// → DOM: 127 days, 3 reductions
# Comparables — comparable sold prices within 0.5 miles # comparables are arranged per customer, not self-serve curl -H 'Authorization: Api-Key YOUR_KEY' \ 'https://api.homedata.co.uk/comparables/100090914832/' # Listing history — what it asked, how often that was cut, and whether it sold curl -H 'Authorization: Api-Key YOUR_KEY' \ 'https://api.homedata.co.uk/property_listings/?uprn=100090914832' # arranged per customer # Property characteristics (beds, type, floor area) curl -H 'Authorization: Api-Key YOUR_KEY' \ 'https://api.homedata.co.uk/properties/100090914832/' # EPC rating + energy score curl -H 'Authorization: Api-Key YOUR_KEY' \ 'https://api.homedata.co.uk/epc-checker/100090914832/' # Flood risk (river, surface, coastal, groundwater) curl -H 'Authorization: Api-Key YOUR_KEY' \ 'https://api.homedata.co.uk/risks/flood/?uprn=100090914832'
→ Comparables — sold evidence within 0.5 miles for offer support
→ Listing events — how long has it been on? How many reductions?
→ EPC + construction age — refurbishment cost proxies
→ Flood + planning — risks and opportunities in one call
Motivated seller signals — how to read the data
Homedata tracks listing events back to 1995 via Home.co.uk . Each property's event trail tells a story. Here's how investors read it.
Long DOM 60–90 days on market
Seller may be open to negotiation. Market may be pricing them above actual value. Worth contacting before competitors do.
Multiple reductions 2+ price reductions
Each reduction is a data point about seller motivation. Three reductions + 90+ DOM is one of the strongest motivated seller indicators in the market.
Withdrawn and re-listed Status change: withdrawn → active
Failed sale or decision to re-market. Seller has already been through one transaction process. Often willing to accept less to avoid repeating it.
Long DOM, no reductions Over-priced, not motivated
Seller still holding their price. May come good eventually — worth monitoring, not prioritising.
Recent instruction, clean price Under 30 days, no reductions
Standard market listing. Focus elsewhere unless below-market opportunity.
Pricing
Pricing
Pay as you go with one-off top-ups of any amount from £20, or add tokens every month when you're ready to run at scale. A monthly subscription earns up to 75% bonus tokens — change the amount or stop any time.
Pay as you go
100 tokens = £1Every endpoint · First top-up matched 100%
- Address lookup
- Property characteristics
- EPC ratings
- Council tax
Monthly
£50 a month5,500 tokens a month
+10% bonus tokens · Every endpoint
- Same full endpoint access as every account
- Flood risk + environmental
- Planning applications
- Deprivation index
- Price trends
Monthly
£250 a month30,000 tokens a month
+20% bonus tokens · Every endpoint
- Same full endpoint access as every account
- Complete property profile (50 tokens)
- Higher volume for bulk runs
- Crime, schools and amenities
What property data does Homedata provide for investors?
The Investor Package gives you property characteristics (beds, baths, floor area, tenure, construction age), EPC ratings, flood risk, planning applications, and deprivation scores — all via a single REST API. 30 years of listing event history and comparable sold prices (nearest sales by UPRN) are arranged per customer rather than sold self-serve. Identify motivated sellers, assess deals, and analyse markets without manual portal research.
How do I identify motivated sellers using the API?
Query listing events filtered by long days-on-market, price reductions, and status changes. A property with 90+ days on market, two or more price reductions, and a prior withdrawn instruction is a strong motivated seller signal. The /property_listings/ endpoint returns thirty years of listing history for a property — what it asked, how often that was cut, and whether it sold; it is arranged per customer rather than sold self-serve.
Does the comparables API return sold prices near my target property?
Yes. The /comparables/{uprn}/ endpoint is arranged per customer rather than sold self-serve, and returns the nearest sold and listed properties ordered by geographic distance — with sold price, property type, bedrooms, floor area, and days on market. Built on PostGIS spatial search within a 0.5 mile radius.
How much does the property investor API package cost?
Most endpoints cost 1 token; address find/postcode 2, retrieve 5, the complete property profile 50. 100 tokens = £1, bought as prepaid top-ups that never expire, and your first is matched 100%. Every account reaches every self-serve endpoint at its published weight, and there are no tiers. Comparables are an enterprise dataset, arranged per customer rather than priced per call. No contracts, nothing to cancel.
Can I use this API for BTL portfolio analysis?
Yes. Bulk UPRN lookups give you property characteristics, EPC ratings, council tax bands, and flood risk across your portfolio in one pass. Price trend data by postcode lets you benchmark rental yields and capital growth by area. Listing history, arranged per customer rather than sold self-serve, surfaces properties in your portfolio that are listed by their owner — a landlord exit signal.
Do I need to provide UPRNs or can I search by address?
Both. Use /address/find/?q= to search by address string or postcode — it returns matching properties with UPRNs. Then use each UPRN to pull property-level data. Two API calls to go from address string to full enrichment.
How far back does the listing event history go?
30 years — back to 1995. The history is sourced from Home.co.uk , which has been tracking UK listing events since before Rightmove launched. You can see every time a property came to market, was reduced, was withdrawn, or completed.
Can I do bulk lookups for portfolio screening?
Yes — there's no batch endpoint, but you can process lists of UPRNs in parallel with concurrent requests. See the Python example above.
Does the comparables endpoint include off-market sales?
Yes — the comparables endpoint pulls from HMLR completed transactions, so it includes off-market sales that never appeared on portals. It also returns active listings for live market context.
Is Scotland included?
Core coverage is England and Wales. HMLR title and sold price data is England and Wales only (Scotland uses the Registers of Scotland). Listing events, addresses, and EPC have partial Scotland coverage. Full Scotland support is on the roadmap.
Can I use the letter campaign service with my Homedata searches?
Yes — Homedata's letter drop service lets you turn any property search (long-DOM motivated sellers, new listings in a postcode, recent completions) into a physical letter campaign. Contact [email protected] for a quote.
Start building today.
Pay as you go, 100 tokens = £1, first top-up matched. Get your key and test with real data.