Data documentation for the Civly listing on the Snowflake Marketplace: what’s in it, how it’s structured, and how to query it once installed.
Civly compiles public records into analytics-ready datasets. This product is parcel ownership with owner mailing addresses, compiled from county assessor and land-record sources. Every parcel carries the owner’s name and normalized name, mailing address, the property’s situs address, sale history with prices, assessed and market values, acreage, property type, and owner-occupied and homestead flags.
Common uses: owner outreach and absentee-owner analysis, market research, land research, and investigative work. Data refreshes weekly, and every record carries source attribution and a refresh date.
| Fact | Detail |
|---|---|
| Total records | 53,998,426 parcels across 25 states |
| Covered states | AZ, AR, CO, CT, DC, FL, GA, IL, IN, MA, ME, MI, MN, MT, NC, ND, NY, OH, PA, TX, UT, VT, WI, WV, WY |
| Trial listing | Complete Vermont and Wyoming records — 717,685 parcels |
| Full dataset | All 25 states, available by subscription |
| Source | County assessor and land records, compiled by Civly |
| Refresh | Weekly |
| Geographic coverage | United States |
| Key matching columns | OWNER_NAME_NORM (normalized owner name), PARCEL_ID, COUNTY_FIPS |
PARCELS.PARCEL_OWNERS_TRIAL (trial) / PARCELS.PARCEL_OWNERS (full)The trial table and the full table share the same 36 columns. Column names are uppercase.
| Column | Type | Description |
|---|---|---|
ID | NUMBER | Civly internal row identifier |
SOURCE | VARCHAR | Source system, e.g. assessor or deed records |
SOURCE_ROW_ID | VARCHAR | Identifier in the source system |
STATE | VARCHAR | Two-letter state code |
SOURCE_LAYER | VARCHAR | Source dataset layer |
SOURCE_URL | VARCHAR | Source dataset URL |
AS_OF | VARCHAR | Source data as-of date |
PARCEL_ID | VARCHAR | Parcel identifier |
COUNTY | VARCHAR | County name |
COUNTY_FIPS | VARCHAR | County FIPS code |
OWNER_NAME | VARCHAR | Primary owner name as filed |
OWNER_NAME_2 | VARCHAR | Secondary owner name as filed |
OWNER_NAME_NORM | VARCHAR | Normalized owner name for matching |
CARE_OF | VARCHAR | Care-of line, where present |
OWNER_STREET | VARCHAR | Owner mailing street address |
OWNER_STREET2 | VARCHAR | Owner mailing street address line 2 |
OWNER_CITY | VARCHAR | Owner mailing city |
OWNER_STATE | VARCHAR | Owner mailing state |
OWNER_ZIP | VARCHAR | Owner mailing ZIP code |
SITUS_ADDRESS | VARCHAR | Property street address |
SITUS_CITY | VARCHAR | Property city |
SITUS_ZIP | VARCHAR | Property ZIP code |
SALE_DATE | DATE | Most recent sale date |
SALE_PRICE | NUMBER | Most recent sale price in USD |
PRIOR_SALE_DATE | DATE | Prior sale date |
PRIOR_SALE_PRICE | NUMBER | Prior sale price in USD |
ASSESSED_VALUE | NUMBER | Assessed value in USD |
MARKET_VALUE | NUMBER | Market value in USD |
LAND_VALUE | NUMBER | Land value component in USD |
IMPROVEMENT_VALUE | NUMBER | Improvement value component in USD |
HOMESTEAD_FLAG | BOOLEAN | Homestead status |
OWNER_OCCUPIED | BOOLEAN | Owner-occupied flag, mailing address matches situs |
ACRES | DOUBLE | Parcel size in acres |
PROPERTY_TYPE | VARCHAR | Property type classification |
CREATED_AT | TIMESTAMP | Civly load timestamp |
UPDATED_AT | TIMESTAMP | Civly load timestamp |
After installing, set your worksheet’s database selector to the installed database and these run as written.
-- Parcel counts by state (trial returns VT and WY) SELECT STATE, COUNT(*) AS PARCELS, SUM(SALE_PRICE) AS SOLD_VALUE FROM PARCELS.PARCEL_OWNERS_TRIAL GROUP BY STATE ORDER BY PARCELS DESC; -- Absentee owners: mailing state differs from parcel state SELECT OWNER_STATE, STATE AS PARCEL_STATE, COUNT(*) AS PARCELS FROM PARCELS.PARCEL_OWNERS_TRIAL WHERE OWNER_STATE IS NOT NULL AND OWNER_STATE <> STATE GROUP BY 1, 2 ORDER BY PARCELS DESC LIMIT 25; -- All parcels owned by a name (use the normalized column) SELECT OWNER_NAME, OWNER_STREET, OWNER_CITY, OWNER_STATE, OWNER_ZIP, SITUS_ADDRESS, SITUS_CITY, SALE_DATE, SALE_PRICE, ACRES FROM PARCELS.PARCEL_OWNERS_TRIAL WHERE OWNER_NAME_NORM = UPPER('Jane Q Public');
Source data is county assessor and land-record data collected from public county sources across the 25 covered states. Civly cleans, normalizes, and standardizes owner names and addresses and stamps every record with its source attribution and refresh date. When you publish analysis based on this dataset, credit the county sources and Civly as compiler.
Questions about this dataset: [email protected]