Forsyth County, NC Parcels & GIS Data

Forsyth County, NC parcel data: 170,472 property records with owner names, assessed values, land use, acreage, and addresses. Preview and download.

Land Records publishes Forsyth County, North Carolina parcel data covering 170,472 property records.

This page documents parcel-level coverage for Forsyth County, North Carolina. Each parcel record carries its boundary polygon (GIS geometry) along with attributes such as the parcel ID/APN, owner name and mailing address, situs (property) address, assessed land and improvement values, acreage, land-use and zoning codes, year built, and most recent sale price and date. Exact fill rates for Forsyth County are listed in the attribute-coverage table below. Preview the data in the interactive explorer, or download the complete Forsyth County property dataset.

Forsyth County is a county located in the northwest Piedmont of the U.S. state of North Carolina. As of the 2020 census, the population was 382,590, making it the fourth-most populous county in North Carolina. Its county seat is Winston-Salem.

FIPS 37067

Official county website: http://www.co.forsyth.nc.us

The FIPS code for Forsyth County is 37067.

RockinghamGuilfordDavieDavidsonYadkinSurryStokesForsyth
Hosted Web API$200/mo

Attribute coverage

Forsyth County contains 170,472 parcels in the current dataset. Column coverage is the percentage of those parcels for which the attribute is populated (non-NULL). For the LBCS columns, only real classifications count: the to-be-determined and not-applicable placeholder codes are excluded.

ColumnCoverageRecords populated
lrid100%170,472
parcelid100%170,471
parcelid298.0%167,052
ogparcelid100%170,471
ogparcelid297.8%166,689
parentid<0.1%0
stackid<0.1%0
geoid100%170,472
statefp100%170,472
countyfp100%170,472
countyname100%170,472
cousubfp100%170,472
cousubname100%170,472
tractce100%170,472
tractname100%170,472
taxacctnum<0.1%0
taxyear100%170,472
taxdistrict99.9%170,386
usecode15.3%26,103
usedesc98.2%167,356
zoningcode99.8%170,215
zoningdesc5.0%8,563
numbldgs100%170,472
numunits96.3%164,150
yearbuilt72.5%123,656
numfloors59.9%102,046
bldgsqft69.5%118,517
bedrooms86.0%146,544
halfbaths<0.1%0
fullbaths<0.1%0
imprvalue100%170,450
landvalue100%170,450
agvalue90.2%153,833
totalvalue98.0%167,042
taxacres100%170,417
calcarea100%170,472
saleamt86.0%146,544
saledate85.4%145,642
ownertype99.7%169,974
ownername99.7%169,974
owneraddr99.7%169,960
ownercity99.5%169,639
ownerstate97.3%165,950
ownerzip99.8%170,175
parceladdr99.8%170,138
parcelcity81.4%138,683
parcelstate100%170,472
parcelzip100%170,472
legaldesc92.8%158,270
township<0.1%0
section<0.1%0
qtrsection<0.1%0
range<0.1%0
plssdesc<0.1%0
book85.8%146,229
page<0.1%0
block92.7%158,037
lot92.7%158,037
parceltype0.2%367
accesstype0.3%502
iucnclass0.2%258
placename3.9%6,693
placetype3.9%6,603
firmid100%170,467
firmdate100%170,467
fldzone100%170,467
zonesubty98.8%168,480
staticbfe<0.1%28
elevmin99.9%170,343
elevmax99.9%170,343
elevavg99.9%170,343
fireplaces<0.1%0
heating<0.1%0
heatfuel<0.1%0
cooling<0.1%0
foundation<0.1%0
roofcover<0.1%0
siding<0.1%0
bldgtype<0.1%0
naicscode6.4%10,911
frsid<0.1%0
dfrurl<0.1%0
caapermit<0.1%0
cwapermit<0.1%0
rcrapermit<0.1%0
updated100%170,472
centroidx100%170,472
centroidy100%170,472
surfpointx100%170,472
surfpointy100%170,472
geom100%170,472
extras100%170,472
ownerlist81.8%139,428
placefp79.2%134,985
zoningurl19.2%32,764
lbcsactivity98.2%167,459
lbcsfunction97.6%166,303
lbcstype98.7%168,332
lbcscharacter99.1%168,967
lbcsownership99.7%169,978
sourceurl<0.1%0

Schema mapping

How source columns from the acquired Forsyth County GIS layers map into the harmonized entity schemas and assemble into the published parcel table, alongside supplemented fields (elevation, flood zone) and deterministic columns.

Schema mapping — Forsyth County, North Carolina (37067) 2 entities · most recent acquisition per entity · generated 2026-10-10 direct column transformed (expression) geometry extras json supplemented determined ALL ENTITIES → FINAL PARCEL SCHEMA Harmonized entity columns assemble into publish.parcel_layer — matched by column name. Supplemented fields show their fill rate in this county. SOURCE COLUMNS HARMONIZED ENTITIES PUBLISH.PARCEL_LAYER PARCEL parno altparno parusecode parusecd2 parusedesc parusedsc2 struct structyear improvval landval parval recareatx recareano gisacres saledate ownname ownfrst ownlast ownname2 mailadd maddpref maddrno maddstname maddstr maddstsuf maddsttyp mcity mstate mzip siteadd saddpref saddno saddstname saddstr saddstsuf saddsttyp scity sstate stname szip legdecfull revisedate geom cntyname munit sunit multistruc saledatetx parvaltype owntype sourceref sourcedate sourcedatx subdivisio nparno cntyfips stfips stcntyfips gnisid sourceagnt transfdate revdatetx reviseyear mapref subowntype subsurfown structno presentval st_area_shape_ st_perimeter_shape_ parcelid parcelid2 usecode usedesc numbldgs yearbuilt imprvalue landvalue totalvalue taxacres saledate ownername owneraddr ownercity ownerstate ownerzip parceladdr parcelcity parcelstate parcelzip legaldesc updated geom taxdistrict extras ZONING zoning_district geom 2 cols ⇢ zoningcode geom extras determined · ground truth 100% lrid 100% geoid 100% statefp 100% countyfp 100% countyname 100% cousubfp 100% cousubname 100% tractce 100% tractname 100% taxyear geom · derived from geometry geom dem.us_1m · USGS 1m DEM 100% elevmin 100% elevmax 100% elevavg s_fld_haz_ar · FEMA NFHL 100% fldzone 98.8% zonesubty 0.0% staticbfe 100% firmdate 100% firmid supplemented · derived / other pipelines 96.3% numunits 59.9% numfloors 69.5% bldgsqft 86.0% bedrooms 90.2% agvalue 86.0% saleamt 85.8% book 92.7% block 92.7% lot 81.8% ownerlist 79.2% placefp 98.2% lbcsactivity 97.6% lbcsfunction 98.7% lbcstype 99.1% lbcscharacter 100% lbcsownership lrid parcelid parcelid2 ogparcelid ogparcelid2 geoid statefp countyfp countyname cousubfp cousubname tractce tractname taxyear taxdistrict usecode usedesc zoningcode numbldgs numunits yearbuilt numfloors bldgsqft bedrooms imprvalue landvalue agvalue totalvalue taxacres calcarea saleamt saledate ownertype ownername owneraddr ownercity ownerstate ownerzip parceladdr parcelcity parcelstate parcelzip legaldesc book block lot firmid firmdate fldzone zonesubty staticbfe elevmin elevmax elevavg updated centroidx centroidy surfpointx surfpointy geom extras ownerlist placefp lbcsactivity lbcsfunction lbcstype lbcscharacter lbcsownership publish.parcel_layer columns not fed by these sources (33) — empty or below 50% fill in this county parentid, stackid, taxacctnum, zoningdesc, halfbaths, fullbaths, township, section, qtrsection, range, plssdesc, page, parceltype, accesstype iucnclass, placename, placetype, fireplaces, heating, heatfuel, cooling, foundation, roofcover, siding, bldgtype, naicscode, frsid, dfrurl caapermit, cwapermit, rcrapermit, zoningurl, sourceurl PARCEL 25 mapped · 21 transformed · 30 unmapped (NULL) SOURCE COLUMNS HARMONIZED → PARCEL parno altparno parusecode parusecd2 parusedesc parusedsc2 struct structyear improvval landval parval recareatx recareano gisacres saledate ownname ownfrst ownlast ownname2 mailadd maddpref maddrno maddstname maddstr maddstsuf maddsttyp mcity mstate mzip siteadd saddpref saddno saddstname saddstr saddstsuf saddsttyp scity sstate stname szip legdecfull revisedate geom cntyname munit sunit multistruc saledatetx parvaltype owntype sourceref sourcedate sourcedatx subdivisio nparno cntyfips stfips stcntyfips gnisid sourceagnt transfdate revdatetx reviseyear mapref subowntype subsurfown structno presentval st_area_shape_ st_perimeter_shape_ parcelid NULLIF(TRIM(parno), '')::text parcelid2 NULLIF(TRIM(altparno), '')::text usecode COALESCE( NULLIF(TRIM(parusecode), '')::text, NULLIF(TRIM(parus… usedesc COALESCE( NULLIF(TRIM(parusedesc), '')::text, NULLIF(TRIM(parus… numbldgs CASE WHEN UPPER(TRIM(struct)) = 'Y' THEN '1'::text WHEN UPPER(T… yearbuilt NULLIF(structyear, 0)::text imprvalue landvalue totalvalue taxacres COALESCE( NULLIF(TRIM(recareatx), '')::text, CASE WHEN recarean… saledate CASE WHEN saledate IS NOT NULL AND saledate > 0 THEN to_timesta… ownername NULLIF(TRIM(concat_ws('; ', COALESCE( NULLIF(TRIM(ownname), '')… owneraddr COALESCE( NULLIF(TRIM(mailadd), '')::text, NULLIF(TRIM(concat_w… ownercity NULLIF(TRIM(mcity), '')::text ownerstate NULLIF(TRIM(mstate), '')::text ownerzip NULLIF(TRIM(mzip), '')::text parceladdr COALESCE( NULLIF(TRIM(siteadd), '')::text, NULLIF(TRIM(concat_w… parcelcity NULLIF(TRIM(scity), '')::text parcelstate COALESCE( NULLIF(TRIM(sstate), '')::text, NULLIF(TRIM(stname), … parcelzip NULLIF(TRIM(szip), '')::text legaldesc NULLIF(TRIM(legdecfull), '')::text updated CASE WHEN revisedate IS NOT NULL AND revisedate > 0 THEN to_tim… geom taxdistrict NULLIF(TRIM(cntyname), '')::text extras (json_build_object( 'munit', munit::text, 'sunit', sunit::text,… not present in source — filled with NULL (30) taxacctnum, taxyear, zoningcode, zoningdesc, numunits, numfloors, bldgsqft, bedrooms, halfbaths, fullbaths, agvalue, saleamt, township, section qtrsection, range, plssdesc, book, page, block, lot, sourceurl, parentid, heatfuel, fireplaces, heating, cooling, foundation, roofcover, siding ZONING 2 mapped · 2 kept in extras · 7 unmapped (NULL) SOURCE COLUMNS HARMONIZED → ZONING zoning_district geom zoningcode geom extras · 2 source columns preserved as json zoning_jurisdiction, acres extras not present in source — filled with NULL (7) zoningdesc, zoningtype, ordinance, setbacks, restrictions, notes, sourceurl

Neighboring counties

Parcel data for counties bordering Forsyth County:

Frequently asked questions

Where can I find Forsyth County, NC parcel and GIS data?

Land Records publishes a Forsyth County, NC parcel dataset in which every parcel carries its boundary polygon (GIS geometry) along with ownership, assessed value, land use, acreage, and sale history. Preview it in the interactive explorer on this page, or download the full Forsyth County, NC dataset as a GeoPackage or CSV.

How many parcels are in Forsyth County, NC?

The current dataset contains 170,472 parcel records for Forsyth County, NC, each with its boundary geometry and assessor attributes.

What is the FIPS code for Forsyth County, NC?

The FIPS code for Forsyth County, NC is 37067.

What information does each Forsyth County, NC parcel record include?

Each Forsyth County, NC parcel record includes the parcel ID/APN, owner name and mailing address, situs (property) address, assessed land and improvement values, acreage, land-use and zoning codes, year built, and the most recent sale price and date — plus the parcel boundary polygon. Per-attribute fill rates are listed in the coverage table on this page.

Is Forsyth County, NC parcel data free?

You can preview Forsyth County, NC parcels for free in the interactive explorer. The complete dataset is available as a one-time download or through the nationwide parcel web service; see the download options on this page for current pricing.

Does Forsyth County, NC have an official GIS or property records website?

Yes — the official Forsyth County, NC government website is linked in the county details above. Land Records standardizes Forsyth County, NC assessor and recorder records into a single nationwide parcel schema with GIS boundary geometry.

On this page