The Problem With Fragmented Data
Four Vendors. Four Schemas.
Four Normalization Pipelines.
The data your models need to understand a property exists — it's just scattered across different vendors with different schemas, different update cadences, and no common property identifier. Joining it is a data engineering problem, not a business problem.
Until now.Without the join
Every Question Costs Weeks
One vendor for permits. Another for valuation. A third for renovation cost. A fourth for condition. Each has a different schema. None share a common property ID. Your data team builds the join. Every time. For every property. At scale this breaks.
With Kukun
One Call. Everything Joined.
Permits, Condition Score, AVM, Renovation Cost & After-Renovation Value, Contractor History, System Lifecycle Forecast, Investment Outlook, Market Intelligence, and the Property Record, joined on any U.S. address in a single API call. Just one schema. One authentication. One bill.
Live Example — Real Data · All Nine Primitives
One Address. One Call.
All Nine Primitives Returned.
This is real Kukun data for a single residential property. Every field below came from a single API call.
10109 Lindelaan Dr, Tampa, FL 33618
Single Family Residence
Built 1972
4,046 sq ft
Hillsborough County
Property Record
3 bd / 3 ba 4,046 sq ft
Owner-occupied · Pool · Brick exterior · Carport (3 spaces)
PICO™ Condition Score
611/850
Property condition scalar blending recently replaced systems (roof, HVAC, windows) against aging interior finishes (kitchen, flooring, paint) — near the neighborhood benchmark of 649.
AVM — Permit-Enriched
$1,170,661
Range: $942K–$1.66M. Assessed value: $574K. Florida assessment caps hold the assessed figure well below market; the AVM reprices to current market plus the permitted improvements.
Investment Outlook (KIO)
+2.55% 5-yr growth
Forecast value in 5 years: $1,200,461. Tampa-St. Pete MSA average: 2.69%. National average: 2.08%.
Renovation Cost & After-Renovation Value
$46,200 roof (2024)
Actual permit-declared cost, plus the after-renovation value it adds — calibrated across 146 categories at ZIP-code resolution (Tampa prices, not national averages).
Market Intelligence
Tampa-St. Pete CBSA 45300
MSA-level demand and risk signals. Benchmark any property against its metro, county, and state. ZIP 33618 growth: 2.55% vs FL average 1.0%.
Contractor History
3 licensed contractors on record
Quality Roofing Inc · JD Air Solutions LLC · Carrollwood Window & Door — each linked to this property by permit, with license number, trade, and status.
Permits — Full History (4 on record)
Sub-permit enrichment surfaces ~40% moremajor residential activity than raw municipal feeds — work recorded at the contractor level that never appears in the public permit roll.
Roof Replacement
Remove existing roofing. Repair and re-nail decking. Install new underlayment and asphalt shingles. Modified bitumen system over flat roof areas.
HVAC Changeout
AC system replacement.
Window Replacement (8 windows)
Replace 8 windows size for size.
Front Entry Addition
New construction — front entry addition.
System Lifecycle Forecast — Remaining Useful Life
Foundation
46 yrs
Roof
24 yrs
Kitchen
6 yrs
Windows
22 yrs
HVAC
16 yrs
Flooring
4 yrs
Interior paint
4 yrs
Exterior paint
3 yrs
What This Means For Your Models
The Join is What Makes The Data Modelable
Individual datasets answer individual questions. Joined data — on a common property identifier, with a common update cadence and a common schema — is what your models can actually ingest.
One schema. No reconciliation
Every primitive uses the same property identifier. Permits join to condition scores join to AVM join to lifecycle. No cross-vendor ID mapping, no date-alignment gymnastics.
Algorithm-ready taxonomy
The same 27 permit labels apply across all 5,600+ jurisdictions. "Roof replacement" in Hillsborough County is the same label as in Los Angeles County. No custom parsing before model ingestion.
Absence is a signal, not a null
A property with no HVAC permit in 20 years in a high-coverage jurisdiction is a risk signal. Every absence answer includes the permit label checked, the date window, and the jurisdiction source.
Algorithm-Ready vs. Human-Readable
Structured For Machines. Not For Reports.
There's a meaningful difference between data a person can read and data a model can ingest. Kukun is built for the latter.
What Most Property Data Looks Like
Permit descriptions in free text: “re-roof w/ 30yr arch shingles” — must be parsed before use.
Different field names and structures per jurisdiction — normalization required per market.
No metadata on absence — a null could mean no activity or no coverage. Impossible to distinguish.
Multiple vendor schemas to join — your data team writes the glue code.
Schema changes break downstream models silently.
What Kukun Returns
27 standardized permit labels across all 5,600+ jurisdictions — ingest directly into feature pipelines.
Single schema for all nine primitives, all markets, all property types.
Every absence answer includes label checked, date window, and jurisdiction source — models know what they’re seeing.
One join, done inside Kukun — your models receive a complete property record.
Integration
One API Call.
Nine Primitives.
This is what the join looks like in practice — the response shape your models actually receive.
Get /v1/property/details — response (abbreviated)
Ready to Stop Stitching?
API access, enterprise licensing, and MCP server configuration available now.
Talk to us about your use case.