State Planner

South Carolina · November 2, 2026

Housing Units Permitted by County, 2020-2025

This is a real answer State Planner produced from South Carolina’s public data.

Ask this question, or one like it, in State Planner now. Sign up to try every feature free for 7 days, no card needed, and the question will be waiting in your new chat to change or send.

Ask this in State Planner →
  1. South Carolina Building Permit Data: How Many Building Permits Were Issued by County, 2020-2025?


    Housing units authorized by building permits in South Carolina, 2020–2025

    These figures come from the Census Bureau's Building Permits Survey, using its estimates, which fill in for permit offices that didn't report. The survey doesn't count permits themselves. It counts the new privately owned housing units (and the buildings they're in) that permits authorized. A permit authorizes construction. It isn't a start or a completion, and some permitted units are never built. The survey leaves out manufactured homes, renovations and public housing.

    Statewide total: about 274,500 housing units in roughly 238,700 buildings were authorized from 2020 through 2025. About 86% were single-family homes.

    YearUnitsSingle-family5+ unit buildingsBuildings
    202042,34036,2265,71836,657
    202150,68043,2646,95843,756
    202246,03837,9067,31738,571
    202342,47437,1634,08637,988
    202447,07240,5585,50341,287
    202545,86239,8975,18140,460

    SC housing units permitted by year and building size⬇ CSV⬇ Image

    The chart stacks each year's units by building size. Single-family homes make up most of every year. The peak was 2021, at 50,700 units. Units in buildings of five or more peaked in 2022 (7,300) and fell to about 4,100 in 2023.

    Housing Units Permitted by County, 2020-2025Housing Units Permitted by County, 2020-2025⬇ Image

    Map legend: each county is shaded by its total units permitted from 2020 to 2025: darkest navy for 15,000 or more, then 5,000–14,999, 1,000–4,999 and 300–999, and nearly white for under 300. Click a county to see its single-family and multi-unit split and its 2025 figure.

    Housing units permitted by county, 2020–2025

    County202020212022202320242025TotalSingle-family2+ unit bldgs
    Horry5,4196,9707,0716,5137,3316,51139,81538,7181,097
    Greenville6,1227,9644,7384,7745,5754,94734,12028,6565,464
    Charleston4,2733,8634,5534,5584,1533,39224,79216,5918,201
    Spartanburg2,8763,6142,5962,8673,1293,98619,06818,765303
    Richland1,7813,2633,4392,8433,4693,38218,17712,8395,338
    Berkeley2,9673,1213,2362,9043,1692,29917,69612,4225,274
    York2,5553,2712,7202,2892,5132,64615,99413,4452,549
    Lexington2,3962,6921,8161,8151,7582,00612,48311,956527
    Beaufort2,2872,8271,9041,6341,6381,21911,5099,2592,250
    Aiken1,1451,6441,7191,4722,5001,95910,4398,6431,796
    Anderson1,5691,4251,5311,4011,2551,4938,6747,1581,516
    Dorchester1,3641,2981,7021,1111,1921,5968,2637,820443
    Jasper6908711,0471,3201,4081,8587,1946,494700
    Pickens8571,0301,6581,0871,4249467,0025,3671,635
    Lancaster1,4581,4451,0726999971,1106,7816,73150
    Oconee4246438336126487533,9133,85360
    Florence6306236265366666973,7783,267511
    Kershaw4947534136614745093,3042,998306
    Georgetown6226654693553273772,8152,419396
    Laurens1861853174226218692,6002,53169
    Sumter3333884023813863582,2481,998250
    Cherokee1741731862702392861,3281,203125
    Edgefield2191942372381811941,2631,24023
    Greenwood136282261621933101,2441,21529
    Chester82781141642693101,0171,0170
    Darlington1341431332011952051,011910101
    Newberry1421521931801551609829739
    Abbeville10814812115714515783677660
    Chesterfield14613410517014711781979722
    McCormick1171651511151411198088080
    Union31424856101373651367284
    Clarendon7584100921141145795772
    Orangeburg7490908310110754551134
    Saluda121118634752614624620
    Marion8170777376714484480
    Fairfield7255667691744344340
    Colleton40737166487337135912
    Dillon3442444241412442440
    Williamsburg3339383734352162160
    Calhoun8072348381241240
    Barnwell174312117311211174
    Lee1181717182293930
    Hampton2011810101776760
    Bamberg156691124715912
    Marlboro012776638380
    Allendale22246420200

    What stands out

    • Horry County had the most units permitted every year except 2020 and 2021, when Greenville led. Its six-year total was about 39,800, and 97% of them were single-family.
    • Greenville, Charleston, Spartanburg, Richland, Berkeley and York follow. Together with Horry, these seven counties account for about 69% of all units in the state.
    • Charleston had the most units in buildings of two or more (8,200). Richland, Berkeley and Greenville each had more than 5,000.
    • Jasper, Laurens, Chester and Union permitted steadily more units each year, and in 2025 each was at two to twelve times its 2020 level. In Union, 2025 alone accounts for 373 of its 651 units.

    These are the Bureau's final annual figures, and 2025 is the latest year loaded. I can also show permits per 1,000 residents, construction value (in nominal dollars), or the figures for individual city and town permit offices.

Layers

  • …
    • …
    • …
    • …
    • …
    • …

Click anything on the map for its details.

The transcript below the answer shows every query it ran. Shapefiles of every layer, at full detail, can be downloaded in State Planner: sign up to ask your own question and export any map.

Ask your own question about South Carolina

Send takes you to sign up (every feature free for 7 days, no card needed), or to sign in if you have an account. Your question will be waiting in your new chat.

Transcript

What follows is the transcript of this chat as State Planner generated it. It is here to show how the answer above was arrived at: every query State Planner ran, what each one returned, and where the data came from.

transcript.md

↑ Contents

State Planner chat · https://stateplanner.com

  • State: South Carolina (SC)
  • Started: November 2, 2026, 4:43 PM UTC
  • Runtime: 45 sec
  • Status: completed
Prompt

South Carolina Building Permit Data: How Many Building Permits Were Issued by County, 2020-2025?

Model: Anthropic: Claude Opus 5.5 (anthropic/claude-opus-5.5, via openrouter)

Response

Housing units authorized by building permits in South Carolina, 2020–2025

These figures come from the Census Bureau's Building Permits Survey, using its estimates, which fill in for permit offices that didn't report. The survey doesn't count permits themselves. It counts the new privately owned housing units (and the buildings they're in) that permits authorized. A permit authorizes construction. It isn't a start or a completion, and some permitted units are never built. The survey leaves out manufactured homes, renovations and public housing.

Statewide total: about 274,500 housing units in roughly 238,700 buildings were authorized from 2020 through 2025. About 86% were single-family homes.

YearUnitsSingle-family5+ unit buildingsBuildings
202042,34036,2265,71836,657
202150,68043,2646,95843,756
202246,03837,9067,31738,571
202342,47437,1634,08637,988
202447,07240,5585,50341,287
202545,86239,8975,18140,460

SC housing units permitted by year and building size

The chart stacks each year's units by building size. Single-family homes make up most of every year. The peak was 2021, at 50,700 units. Units in buildings of five or more peaked in 2022 (7,300) and fell to about 4,100 in 2023.

Housing Units Permitted by County, 2020-2025

Map legend: each county is shaded by its total units permitted from 2020 to 2025: darkest navy for 15,000 or more, then 5,000–14,999, 1,000–4,999 and 300–999, and nearly white for under 300. Click a county to see its single-family and multi-unit split and its 2025 figure.

Housing units permitted by county, 2020–2025

County202020212022202320242025TotalSingle-family2+ unit bldgs
Horry5,4196,9707,0716,5137,3316,51139,81538,7181,097
Greenville6,1227,9644,7384,7745,5754,94734,12028,6565,464
Charleston4,2733,8634,5534,5584,1533,39224,79216,5918,201
Spartanburg2,8763,6142,5962,8673,1293,98619,06818,765303
Richland1,7813,2633,4392,8433,4693,38218,17712,8395,338
Berkeley2,9673,1213,2362,9043,1692,29917,69612,4225,274
York2,5553,2712,7202,2892,5132,64615,99413,4452,549
Lexington2,3962,6921,8161,8151,7582,00612,48311,956527
Beaufort2,2872,8271,9041,6341,6381,21911,5099,2592,250
Aiken1,1451,6441,7191,4722,5001,95910,4398,6431,796
Anderson1,5691,4251,5311,4011,2551,4938,6747,1581,516
Dorchester1,3641,2981,7021,1111,1921,5968,2637,820443
Jasper6908711,0471,3201,4081,8587,1946,494700
Pickens8571,0301,6581,0871,4249467,0025,3671,635
Lancaster1,4581,4451,0726999971,1106,7816,73150
Oconee4246438336126487533,9133,85360
Florence6306236265366666973,7783,267511
Kershaw4947534136614745093,3042,998306
Georgetown6226654693553273772,8152,419396
Laurens1861853174226218692,6002,53169
Sumter3333884023813863582,2481,998250
Cherokee1741731862702392861,3281,203125
Edgefield2191942372381811941,2631,24023
Greenwood136282261621933101,2441,21529
Chester82781141642693101,0171,0170
Darlington1341431332011952051,011910101
Newberry1421521931801551609829739
Abbeville10814812115714515783677660
Chesterfield14613410517014711781979722
McCormick1171651511151411198088080
Union31424856101373651367284
Clarendon7584100921141145795772
Orangeburg7490908310110754551134
Saluda121118634752614624620
Marion8170777376714484480
Fairfield7255667691744344340
Colleton40737166487337135912
Dillon3442444241412442440
Williamsburg3339383734352162160
Calhoun8072348381241240
Barnwell174312117311211174
Lee1181717182293930
Hampton2011810101776760
Bamberg156691124715912
Marlboro012776638380
Allendale22246420200
What stands out
  • Horry County had the most units permitted every year except 2020 and 2021, when Greenville led. Its six-year total was about 39,800, and 97% of them were single-family.
  • Greenville, Charleston, Spartanburg, Richland, Berkeley and York follow. Together with Horry, these seven counties account for about 69% of all units in the state.
  • Charleston had the most units in buildings of two or more (8,200). Richland, Berkeley and Greenville each had more than 5,000.
  • Jasper, Laurens, Chester and Union permitted steadily more units each year, and in 2025 each was at two to twelve times its 2020 level. In Union, 2025 alone accounts for 373 of its 651 units.

These are the Bureau's final annual figures, and 2025 is the latest year loaded. I can also show permits per 1,000 residents, construction value (in nominal dollars), or the figures for individual city and town permit offices.

Chart Queries
SC housing units permitted by year and building size
   SELECT YEAR::text AS "Year",
          t.k AS "Building size",
          t.v AS "Units"
     FROM (
             SELECT YEAR,
                    sum(units_1) a,
                    sum(units_2 + units_3_4) b,
                    sum(units_5plus) c
               FROM sc_bps_county_permits
              WHERE YEAR BETWEEN 2020 AND 2025
           GROUP BY YEAR
          ) s
    CROSS JOIN LATERAL (
             VALUES ('Single-family', a),
                    ('2-4 units', b),
                    ('5+ units', c)
          ) t(k, v)
 ORDER BY YEAR

charts/turn-1-statewide-by-year.csv

Picture: charts/turn-1-statewide-by-year.png

Exploratory Queries
Query 1 — Check years available and statewide totals 2020 onward.
   SELECT YEAR,
          count(*) n,
          sum(units_total) units,
          sum(units_1) sf,
          sum(units_5plus) mf5,
          sum(bldgs_total) bldgs
     FROM sc_bps_county_permits
    WHERE YEAR >= 2020
 GROUP BY YEAR
 ORDER BY YEAR
yearnunitssfmf5bldgs
2020464234036226571836657
2021465068043264695843756
2022464603837906731738571
2023464247437163408637988
2024464707240558550341287
2025464586239897518140460

data/turn-1-query-1.csv

Query 2 — Housing units permitted by county and year, 2020-2025.
   SELECT c.name county,
          sum(units_total) FILTER (
              WHERE YEAR = 2020
          ) y2020,
          sum(units_total) FILTER (
              WHERE YEAR = 2021
          ) y2021,
          sum(units_total) FILTER (
              WHERE YEAR = 2022
          ) y2022,
          sum(units_total) FILTER (
              WHERE YEAR = 2023
          ) y2023,
          sum(units_total) FILTER (
              WHERE YEAR = 2024
          ) y2024,
          sum(units_total) FILTER (
              WHERE YEAR = 2025
          ) y2025,
          sum(units_total) total,
          sum(units_1) sf,
          sum(units_2 + units_3_4 + units_5plus) mf
     FROM sc_bps_county_permits p
     JOIN sc_census_counties c ON c.geoid = p.geoid
    WHERE YEAR BETWEEN 2020 AND 2025
 GROUP BY c.name
 ORDER BY total DESC
countyy2020y2021y2022y2023y2024y2025totalsfmf
Horry County54196970707165137331651139815387181097
Greenville County61227964473847745575494734120286565464
Charleston County42733863455345584153339224792165918201
Spartanburg County2876361425962867312939861906818765303
Richland County17813263343928433469338218177128395338
Berkeley County29673121323629043169229917696124225274
York County25553271272022892513264615994134452549
Lexington County2396269218161815175820061248311956527
Beaufort County2287282719041634163812191150992592250
Aiken County1145164417191472250019591043986431796
Anderson County156914251531140112551493867471581516
Dorchester County13641298170211111192159682637820443
Jasper County690871104713201408185871946494700
Pickens County8571030165810871424946700253671635
Lancaster County14581445107269999711106781673150
Oconee County4246438336126487533913385360
Florence County63062362653666669737783267511
Kershaw County49475341366147450933042998306
Georgetown County62266546935532737728152419396
Laurens County1861853174226218692600253169
Sumter County33338840238138635822481998250
Cherokee County17417318627023928613281203125
Edgefield County2191942372381811941263124023
Greenwood County136282261621933101244121529
Chester County8278114164269310101710170

25 out of 46 are listed here.

data/turn-1-query-2.csv

Map Layer Queries
Units permitted 2020-2025 — colored by "cls": 15,000+ units (#08306b), 5,000-14,999 (#2171b5), 1,000-4,999 (#6baed6), 300-999 (#c6dbef), Under 300 (#f7fbff)
   SELECT c.geom,
          c.name AS "County",
          s.total AS "Units permitted 2020-2025",
          s.sf AS "Single-family units",
          s.mf AS "Units in 2+ unit buildings",
          s.y2025 AS "Units 2025",
          CASE
                    WHEN s.total >= 15000 THEN 'a'
                    WHEN s.total >= 5000 THEN 'b'
                    WHEN s.total >= 1000 THEN 'c'
                    WHEN s.total >= 300 THEN 'd'
                    ELSE 'e'
          END AS cls
     FROM sc_census_counties c
     JOIN (
             SELECT geoid,
                    sum(units_total) total,
                    sum(units_1) sf,
                    sum(units_2 + units_3_4 + units_5plus) mf,
                    sum(units_total) FILTER (
                        WHERE YEAR = 2025
                    ) y2025
               FROM sc_bps_county_permits
              WHERE YEAR BETWEEN 2020 AND 2025
           GROUP BY geoid
          ) s ON s.geoid = c.geoid

Picture: maps/turn-1-permits-by-county.png

Used Data Sets

data/turn-1-query-1.csv

↑ Contents
yearnunitssfmf5bldgs
2020464234036226571836657
2021465068043264695843756
2022464603837906731738571
2023464247437163408637988
2024464707240558550341287
2025464586239897518140460

6 rows.

data/turn-1-query-2.csv

↑ Contents
countyy2020y2021y2022y2023y2024y2025totalsfmf
Horry County54196970707165137331651139815387181097
Greenville County61227964473847745575494734120286565464
Charleston County42733863455345584153339224792165918201
Spartanburg County2876361425962867312939861906818765303
Richland County17813263343928433469338218177128395338
Berkeley County29673121323629043169229917696124225274
York County25553271272022892513264615994134452549
Lexington County2396269218161815175820061248311956527
Beaufort County2287282719041634163812191150992592250
Aiken County1145164417191472250019591043986431796
Anderson County156914251531140112551493867471581516
Dorchester County13641298170211111192159682637820443
Jasper County690871104713201408185871946494700
Pickens County8571030165810871424946700253671635
Lancaster County14581445107269999711106781673150
Oconee County4246438336126487533913385360
Florence County63062362653666669737783267511
Kershaw County49475341366147450933042998306
Georgetown County62266546935532737728152419396
Laurens County1861853174226218692600253169
Sumter County33338840238138635822481998250
Cherokee County17417318627023928613281203125
Edgefield County2191942372381811941263124023
Greenwood County136282261621933101244121529
Chester County8278114164269310101710170
Darlington County1341431332011952051011910101
Newberry County1421521931801551609829739
Abbeville County10814812115714515783677660
Chesterfield County14613410517014711781979722
McCormick County1171651511151411198088080
Union County31424856101373651367284
Clarendon County7584100921141145795772
Orangeburg County7490908310110754551134
Saluda County121118634752614624620
Marion County8170777376714484480
Fairfield County7255667691744344340
Colleton County40737166487337135912
Dillon County3442444241412442440
Williamsburg County3339383734352162160
Calhoun County8072348381241240
Barnwell County174312117311211174
Lee County1181717182293930
Hampton County2011810101776760
Bamberg County156691124715912
Marlboro County012776638380
Allendale County22246420200

46 rows.

charts/turn-1-statewide-by-year.csv

↑ Contents
YearBuilding sizeUnits
2020Single-family36226
20202-4 units396
20205+ units5718
2021Single-family43264
20212-4 units458
20215+ units6958
2022Single-family37906
20222-4 units815
20225+ units7317
2023Single-family37163
20232-4 units1225
20235+ units4086
2024Single-family40558
20242-4 units1011
20245+ units5503
2025Single-family39897
20252-4 units784
20255+ units5181

18 rows.

provenance/sc_bps_county_permits.md

↑ Contents

Provenance: sc_bps_county_permits

This file describes how the rows in PostgreSQL table sc_bps_county_permits were obtained from an external source: where they were fetched and how fields were renamed and typed. Field meanings are in the mapping table below.

Identity
  • Table: sc_bps_county_permits
  • Family: BPS
  • Display name: Building Permits by County
  • Source URL: https://www2.census.gov/econ/bps/County/ (co<year>a.txt, 1990 on)
  • Geometry (source / stored): none / none
  • Update cycle: Yearly (each May)
Pipeline

The Building Permits Survey publishes one national county file per year, the annual summary (a), comma-delimited text with a two-row header. Every year from 1990 is loaded; the newest year is the one before the current, once the Bureau has published it. Each year's file is downloaded whole and kept; the sync keeps South Carolina's rows (FIPS State 45) and checks each file's survey date names its year (2024, or 9099 in the 1990s files).

A county listed twice in one year (the 2014 and 2015 files repeat four Alaska boroughs and one Maryland county under a second name with the same estimates) keeps the row with more reported units; two rows with different estimates fail the sync. The monthly and year-to-date files are not loaded.

Changed from the source: cut to South Carolina; reshaped to one row per county per year; the three totals added; the region, division and survey-date columns dropped.

No licence terms: a work of the U.S. Government, credited to the U.S. Census Bureau.

Field → column mapping
Source fieldColumnTypeDescription
FIPS State, FIPS CountygeoidtextTwo digits and three, joined
County NamenametextTrailing spaces trimmed
Survey Dateyeartext → integerChecked against the file's year
1-unit Bldgs, Units, Valuebldgs_1, units_1, value_1integerEstimates with imputation
2-units Bldgs, Units, Valuebldgs_2, units_2, value_2integer
3-4 units Bldgs, Units, Valuebldgs_3_4, units_3_4, value_3_4integer
5+ units Bldgs, Units, Valuebldgs_5plus, units_5plus, value_5plusinteger
1-unit rep … 5+ units reprep_bldgs_1 … rep_value_5plusintegerReported only
(computed)bldgs_total, units_total, value_totalThe four estimate sizes added
Region Code, Division Code(dropped)

provenance/sc_census_counties.md

↑ Contents

Provenance: sc_census_counties

This file describes how the rows in PostgreSQL table sc_census_counties were obtained from an external source: where they were fetched and how fields were renamed and typed. Field meanings are in the mapping table below.

Identity
Pipeline

Two Census Bureau sources, joined on the county's 5-digit FIPS code:

  • Boundaries: TIGERweb tigerWMS_Current layer 82 ("Counties"), where=STATE='45', GeoJSON, outSR=4326, keyset-paged on GEOID.
  • CFS areas: sheet CFSAreas of the 2022 Commodity Flow Survey county list, the South Carolina rows (ST = 45). Only the 2022 columns are kept.

The two must name the same counties, or the sync fails. FAF's sc_faf_county_xwalk is built from this table: each county's cfs_geoid is the CFS22_ID of one FAF6 zone.

Field → column mapping
Source fieldColumnTypeDescription
TIGER GEOIDgeoidvarchar(5)state + county FIPS
TIGER GEOID, last 3county_fipsvarchar(3)county FIPS
TIGER NAMEnamevarchar(60)e.g. Greenville County
CFS CFS22_AREAcfs_areavarchar(5)CSA/MSA code, or 99999
CFS CFS22_TYPEcfs_area_typevarchar(1)C, M or R
CFS CFS22_NAME, whitespace collapsedcfs_area_namevarchar(120)the workbook pads some names with doubled and trailing spaces
CFS CFS22_GEOIDcfs_geoidvarchar(19)e.g. E330000US4527300000
TIGER AREALANDaland_m2bigintsquare meters
TIGER AREAWATERawater_m2bigintsquare meters
TIGER INTPTLATintptlatdouble precisioninternal point
TIGER INTPTLONintptlondouble precisioninternal point
geometrygeomgeometry(MultiPolygon, 4326)ST_Multi(ST_GeomFromGeoJSON)
Geometry
  • SRID 4326 (WGS84). GIST index on geom.
Change detection

The Census sync's check compares the layer's vintage ("January 1, 2026 vintage") and South Carolina's row count, and the county list's Last-Modified and length. A change to either marks Census stale, and the next Census sync rebuilds this table, then FAF's crosswalk.

Attribution

US Census Bureau. TIGER products are free to use with acknowledgement of the U.S. Census Bureau as the source; the CFS county list states no terms.

© 2026 State Planner