Why PropData · Architecture note · July 2026

Every other property database decays.
This one compounds.

Licensed data is a photograph. It is accurate the day it is taken and a little less accurate every day after. PropData is a pipeline — 166M+ parcels ingested directly from county assessor and GIS systems, refreshed nightly, scored field by field, and densified by every single search that runs through it.

Day 1 Month 6 Month 18 Usable coverage & accuracy → PropData — nightly + miss-driven Licensed snapshot — refresh, decay, repeat

Illustrative model, not measured benchmark data. The shape is the argument: a resold snapshot is at its best on ingest day and degrades until the next contracted refresh. A pipeline that runs nightly and permanently absorbs every missed lookup moves the other direction.

Author Justin Erickson Read 9 min Updated July 23, 2026 Stack 200+ Cloudflare Workers

The short version

We didn't undercut the incumbents. We built a different machine.

Price is the least interesting difference between PropData and the enterprise property-data platforms, and it is the last thing you should evaluate us on. The interesting difference is structural.

The large vendors license public county assessor records, normalize them in an ETL pipeline, and sell you the output on a contracted refresh schedule. It is a legitimate business and for some workflows it is the correct purchase. But it produces two properties that every one of their customers eventually feels: the dataset is a snapshot, and a miss is permanent. Query an address that isn't in the extract and you get a null. Query it again next month and you get the same null. Nothing about your search made the system better.

PropData was built on the opposite assumption: the database should be denser tomorrow because of what you asked it today. We own the ingest, so we run it nightly. We score every field, so you know what is verified rather than discovering gaps in production. And when a property isn't there yet, the API doesn't shrug — it goes and gets it from the county, scores it, caches it, and keeps it.

166M+

Parcels, own pipeline

Nightly

Parcel refresh cadence

16

Live source layers

20+

Endpoint routes

<50ms

Edge response, global

Architecture

Two ways to build a property database.

Both models start at the same place: a county government publishing public assessor and GIS records. What happens next is the entire difference.

Licensed and resold

The standard model

  1. County publishes public records
  2. Vendor licenses or extracts the data
  3. ETL normalization, vendor-side
  4. Snapshot ships on a contracted cadence
  5. You query the snapshot
  6. Miss returns null — permanently

Accuracy peaks on ingest day.

Owned pipeline

PropData

  1. County publishes public records
  2. We hit the county ArcGIS layer directly
  3. Our ingest workers normalize and upsert
  4. Nightly refresh, per-source crons
  5. You query Supabase through the edge
  6. Miss fires enrichment — coverage kept

Accuracy compounds with usage.

Why "no middleman" is a technical claim, not a slogan

Every layer between the county record and your response is a place where a value can be transformed, dropped, or delayed. Owning the ingest means when a county changes a field name, republishes a layer, or fixes a bad parcel, we can chase it that night — not file a ticket with an upstream vendor and wait for their next release. It also means no third-party redistribution terms sitting on top of what you build.

The Miss Flywheel

The only property database that learns from what it can't answer.

Every other provider treats a missing property as an error state. We treat it as the most valuable signal the API receives: a real developer just told us exactly which gap matters.

Miss detected

The property isn't in the production database yet. Instead of returning a null and forgetting it happened, the pipeline fires immediately.

Source-backed lookup

A live query runs against permitted government data — county ArcGIS assessor layers and verified public records only. Nothing is generated, inferred from a model, or filled in from a third-party aggregator.

Field-level confidence scoring

Parcel ID, market value, annual tax, year built, property type, lot size — each derived deterministically and scored individually. You get told which fields are solid, not handed one undifferentiated record and left to guess.

Edge storage and review queue

Written to Supabase and Cloudflare KV, queued for promotion. The repeat lookup returns in under a second from learned cache.

Coverage compounds

The gap is closed for everyone. The next developer who queries that address gets a hit. Multiply that across every search running through the platform and the database gets denser every day it stays online.

The honest version of this claim

Enrichment is bounded by what a county actually publishes. If a county doesn't put bedroom counts in its public layer, no pipeline on earth conjures them, and any vendor promising otherwise is selling you a model output labeled as a record. What the flywheel guarantees is different and more useful: a miss becomes a documented, source-attributed attempt with scored fields — and where the county publishes it, you keep it permanently.

Included, not add-on

The layers that usually arrive as a separate line item.

Enterprise property platforms tend to sell risk, geospatial, lead, and scoring layers as individually contracted products. These ship inside published PropData tiers.

FEMA National Risk Index 18 hazards

Wildfire, flood, hurricane, tornado, earthquake, hail, heat wave, drought, winter weather and more — county-level, per-capita annualized loss percentiles so you aren't comparing Maricopa to rural Kansas unfairly.

/v1/neighborhood

FEMA flood hazard zone

National Flood Hazard Layer zone per property — A, AE, X — so mandatory-insurance exposure is visible at the parcel, not the county.

/v1/property?enrich=full

Community safety score

Composite A–F grade built from NCES school data across 100K+ schools, Census ACS poverty and unemployment, social vulnerability, and crime signals.

/v1/neighborhood

Opportunity Zone + USDA flags

Every ZIP flagged for federal OZ designation and USDA rural loan eligibility. Two filters that change deal structure before underwriting starts.

/v1/zip-intel

Parcel geometry

GeoJSON boundary, centroid, and bounding box where county GIS coverage is configured — plus point-in-polygon coordinate matching when a geocoded pin disagrees with the situs address.

/v1/parcel-geometry · /v1/property/by-location

Comparable sales engine

Ranked comps scored on price, square footage, recency, and bedroom count, computed against the owned parcel database rather than licensed from a third party.

/v1/comps

Delta feeds

Changed property and pre-foreclosure records since any timestamp, with cursor pagination — so you sync what moved instead of re-pulling the world.

/v1/property/delta · /v1/preforeclosure/delta

Computed investor flags

Equity estimation, absentee-owner detection (mailing ZIP ≠ situs ZIP), and vacant-land flags derived at query time instead of sold as an analytics upgrade.

/v1/property

AI-native access MCP

An OAuth-protected MCP connector lets supported ChatGPT and Claude workflows call live PropData tools with a subscriber's own key. A public changelog endpoint makes updates programmatically trackable.

/v1/changelog · propdata-mcp

Provenance rule

PropData's parcel layer is built from government public records — county assessor and GIS systems, Census, HUD, HMDA, FEMA, FHFA, and FRED — with clearly labeled market layers from published research sources. Provenance is stated per response through source attribution, because a data layer you can't explain to a compliance reviewer is a data layer you can't ship in a regulated workflow.

Where the difference actually shows up

Capability, not price.

The rows below are the ones that change what you can build. Where a vendor does not publish a figure, this table says so rather than estimating one — the pricing and cadence of enterprise contracts are not public, and inventing numbers would make everything else here less trustworthy.

Capability comparison · vendor-published material · July 2026
Capability PropData RentCast ATTOM Cotality (CoreLogic)
How the data gets to you
Parcel data origin Own ingest, direct from county ArcGIS / assessor Aggregated property records Licensed and aggregated Licensed and aggregated
Refresh cadence for parcels Nightly 500K+ updates processed daily (vendor stated) Not universally published Varies by product
Behavior on a missing property Live source-backed enrichment, then cached permanently Returns empty Returns empty Returns empty
Field-level confidence scoring Yes, per field, with source attribution Not published Not published Not published
Coverage metadata exposed in API Yes — /v1/property/coverage
What you can call
Coordinate-to-parcel (point-in-polygon) Yes — /v1/property/by-location Coordinates within records Lat/lng queries + boundaries Geospatial and structure products
Parcel geometry as GeoJSON Included where configured Product / package dependent Product dependent
FEMA hazard + flood zone layers Included — 18 hazards + NFHL zone Environmental risk products Climate and catastrophe products
Safety, schools, OZ / USDA flags Included Not a published category Not a published category
Skip trace + pre-foreclosure Included endpoints Separate products Separate products
Delta feeds since timestamp Property + pre-foreclosure Package dependent Enterprise delivery
How you buy it
Time to first authenticated call Minutes — self-serve, key issued instantly Self-serve Quote / packaging Demo and sales process
Published pricing $79 / $199 / $499 / $1,499 Published self-serve tiers Custom quote Product-specific quote
Direct access to the engineer who built it Yes — Enterprise tier

Where the incumbents are still the right answer

If your workflow depends on 50-year mortgage and transaction history, title-grade deed chains, bulk or warehouse delivery, enterprise redistribution rights, or regulated valuation and catastrophe models with institutional governance behind them, buy the enterprise contract. That is real capability we do not sell, and we would rather you hear it here than discover it after integration. Everything on this page is about the workflows where that machinery is overhead rather than value.

Pricing

Published, flat, and cancelable.

Not because cheap is the strategy — because a price you can read on a page is a form of respect for the person integrating. Annual plans save 15%+ and lock your rate for twelve months.

Starter

$79

10,000 requests / mo

  • All 20+ endpoint routes
  • 166M+ parcel lookup
  • Market, rent, comps, geocoding
  • Neighborhood + FEMA layers
  • Parcel geometry where configured

Builder · most integrated

$199

50,000 requests / mo

  • Everything in Starter
  • enrich=full unlocked
  • Flood, tax, equity, investment score
  • Historical data + coordinate workflows
  • Priority support · 3 API keys

Scale

$499

250,000 requests / mo

  • Everything in Builder
  • Full batch operations
  • Email + Slack support, 4-hour
  • 10 API keys · 99.0% uptime SLA

Enterprise

$1,499

Unlimited requests

  • Everything in Scale
  • Direct Supabase access
  • White-label rights · 99.9% SLA
  • Custom source and coverage review
  • Direct founder access

Direct plans are Starter / Builder / Scale / Enterprise. RapidAPI marketplace plans map to Basic / Pro / Ultra / Mega with matching request tiers. Qualified teams can request a capped evaluation key for a documented integration or county-coverage test.

Questions

What developers ask first.

What makes PropData different from ATTOM, CoreLogic, or RentCast?

Architecture. Most platforms license county assessor records, run an ETL pipeline, and resell a static snapshot — so a failed lookup returns null forever and the dataset ages between refreshes. PropData owns the ingest directly from county ArcGIS and assessor systems, refreshes nightly, scores every field for confidence, and fires a live source-backed lookup when a property is missing. That miss becomes permanent coverage for every future request.

What is the Miss Flywheel?

PropData's self-enriching pipeline. When a property isn't in the production database, the API doesn't return null — it queries permitted government sources live, derives fields deterministically, scores each one for confidence, writes to Supabase and Cloudflare KV, and queues it for promotion. The repeat lookup returns in under a second, and the coverage gap stays closed for every future caller.

How often is the data refreshed?

Parcel ingest runs nightly. Market layers run on source-specific crons — HUD weekly, ZORI and Realtor monthly, FRED weekly. Enterprise vendors generally don't publish a single universal cadence because it varies by product and contract, so ask any provider for their per-dataset refresh schedule in writing. Refresh frequency is where stale-data complaints originate.

Do you license your parcel data from a third party?

No. Parcel records come directly from county assessor and GIS systems — the same public government source larger vendors license and resell. No aggregator sits between your call and the county record, which means no upstream licensing fees, no third-party redistribution terms on what you build, and no aggregation errors introduced by a middleman.

What does field-level confidence scoring actually give me?

Each derived field carries its own confidence indicator and source attribution instead of arriving as one undifferentiated record. Coverage metadata is exposed through the API, so you can see what's verified for a county before you ship — rather than finding the gaps when a customer does.

Does 166 million parcels mean every field is populated?

No, and no provider in this category can honestly claim otherwise — assessor depth varies because counties publish different fields. What differs is the behavior on a gap: PropData exposes coverage metadata, scores confidence per field, and runs enrichment instead of returning a silent null. Test your specific counties before committing any provider to production.

Can AI agents call PropData directly?

Yes. An OAuth-protected MCP connector lets supported ChatGPT and Claude workflows call live PropData tools — property lookup, market data, rent estimates, comps, neighborhood, parcel geometry, coordinate lookup — using the subscriber's own API key. The public /v1/changelog endpoint also makes platform updates programmatically trackable.

How fast can I start?

Self-serve signup with keys provisioned instantly. No sales call, no procurement cycle, no annual minimum on monthly plans. Starter is $79/month for 10,000 requests and monthly plans cancel anytime.

Closing

Built by one person, on purpose.

PropData runs on 200+ Cloudflare Workers with a Supabase canonical store and KV edge cache, serving under 50ms globally. Every ingestion worker runs its own cron. There is no monolith and there is no committee between a county fixing a record and that fix reaching your response.

That is also the honest limitation: this is infrastructure built and operated directly rather than sold through a channel. If what you need is a procurement relationship with a Fortune 500 vendor, that exists and it isn't us. If what you need is a property data layer that gets better every night and answers to a person who can change it, that's the entire thesis.

Written by

Justin Erickson

Founder & CEO · PropTechUSA.ai · PropData. Built the parcel ingest, enrichment pipeline, API, and MCP layer end to end. Self-taught, bootstrapped, and still the person who answers the email.

Run it against your own markets

Don't take the architecture on faith. Query it.

Pick the counties you actually care about, run the same addresses, parcel IDs, ZIPs and coordinates you'd run in production, and compare match rate, field completeness, provenance, and latency. That test is the only comparison that matters.