South Carolina
Forty-six counties on one feed, judges elected by the legislature instead of you, a runoff clock that runs to August 25 — and a Senate seat remade by a death in July.
What happened to the Senate seat?
State deltas
Every state has hair. Here is South Carolina's.
The rules that make this state different from the last one, what each breaks if you assume the national default, and how the engine resolves it.
Supreme Court, Court of Appeals, and circuit judges are elected by joint vote of the General Assembly after commission screening — they never appear on a public ballot. Judicial-race models expecting partisan or retention contests find nothing, while seat inventories that skip legislature-elected judgeships undercount the bench. The only voter-elected judges are county probate judges.
Appellate and circuit seats are modeled as legislature-elected offices with the joint-vote as the selection event; the ballot-visible judiciary is exactly the probate bench, on the midterm cycle.
The statewide results site carries only federal and state contests — county offices live exclusively in 46 per-county sub-feeds, each with its own election ID and a version number that changes on every update. Scrape the state rollup and you'll never see a probate judge or a fire commissioner. And municipal elections aren't reliably there at all — the state's own site says to check locally.
The engine polls the version pointer, walks the settings file to all 46 county feeds each cycle, and keeps a municipal-exceptions list for the towns that publish only to themselves.
Primaries require a majority; the runoff is exactly fourteen days later as its own election with its own feed — and early voting for it lasts two days. Runoff absentee ballots are the primary's ballots with eliminated names struck through. Primaries certify statewide two days after election day. A monthly harvest cadence misses entire elections here.
Runoffs are registered as separate election entities the moment the canvass orders them, harvest is scheduled at E+2 and E+14, and the majority-then-plurality rule pair is encoded per round.
South Carolina registers voters without party. Primary choice happens at the poll table with an oath, party identity exists only as participation history, and the runoff locks you to the party you picked two weeks earlier — though voters who skipped the primary may join. Voter-file pipelines expecting a party field get nothing.
Party is modeled as a dated event stream from primary participation, never a registration attribute, with runoff eligibility computed from the lock-in rule.
Sheriffs, clerks of court, and coroners elect in presidential years; probate judges, auditors, treasurers, and solicitors ride the midterm. Half the courthouse is always absent from any given cycle, and inferring seat expirations from one observed election misdates the other half by two years.
Each office class carries its statutory anchor year — 1948, 1960, 1890 — and expected contests are generated per cycle from those anchors, not from a countywide template.
One of the last states with a straight-ticket option, presented before any contest — and the results files report STRAIGHT PARTY as if it were an office, with vote totals. Schemas without the concept parse a ballot mechanic as a race, and nonpartisan-contest rolloff looks like an anomaly when it's the rule working as designed.
STRAIGHT PARTY is whitelisted as a pseudo-contest attached to ballot mechanics, and undervote analysis on nonpartisan races accounts for the no-selection rule.
Before the 2022 early-voting law, absentee votes appeared as county-lump pseudo-precincts — rows named "Absentee 1" through "Absentee 5" with no geography. From 2022 on, every real precinct carries six vote-type columns instead. One parser cannot read both eras; longitudinal precinct analysis double-counts or orphans the pseudo-rows.
The parser is era-gated at the 2022 general: pseudo-precinct rows are flagged as county-level allocations, never mapped, while modern files sum per-precinct vote-type columns.
School districts cross county lines — Anderson District 2's trustee races appear inside Greenville County's results feed — while hundreds of pre-1975 special purpose districts elect fire, water, and watershed commissioners on November ballots under names no national taxonomy holds. County-keyed matching assigns seats to the wrong government, twice.
Districts are first-class geographies overlaying counties, trustee contests are deduplicated across county feeds, and the special-district registry builds from ballot appearances plus Secretary of State filings.
Federal to fire district
What South Carolina actually elects.
The seats run bottom-heavy here too — and in South Carolina the 2026 ballot holds an open governor, an in-motion Senate seat, and every State House seat, while sheriffs and the State Senate wait for 2028.
Congressional map
Where those seats are.
The 7 congressional districts in force for the 2026 cycle — not necessarily the map this delegation was elected under. South Carolina has not redrawn since the 119th Congress was seated.
| District | Population | Median income |
|---|---|---|
| SC-01 | 776,842 | $89,127 |
| SC-02 | 755,004 | $73,629 |
| SC-03 | 768,137 | $61,412 |
| SC-04 | 767,156 | $72,022 |
| SC-05 | 771,387 | $68,146 |
| SC-06 | 755,258 | $55,985 |
| SC-07 | 779,771 | $58,573 |
County ledger
Forty-six counters, one platform — and a special election counting tonight.
Every county publishes through the state's election-night platform: one rollup feed for state and federal races, forty-six county feeds for everything else. Thirteen of 46 shown; precinct counts pending the state's official inventory.
| County | Feed vehicle | Precincts | Contests | Status | Last read |
|---|---|---|---|---|---|
| Greenville | Vendor app | 151 | 29 | Verified | 1 hr |
| Richland | Vendor app | 149 | 28 | Verified | 1 hr |
| Charleston | Vendor app | 190 | 27 | Verified | 1 hr |
| Horry | Vendor app | 125 | 25 | Verified | 1 hr |
| Spartanburg | Vendor app | 98 | 24 | Verified | 1 hr |
| Lexington | Vendor app | 87 | 23 | Verified | 1 hr |
| York | Vendor app | 66 | 21 | Verified | 1 hr |
| Berkeley | Vendor app | 64 | 20 | Verified | 1 hr |
| Anderson | Vendor app | 80 | 22 | Verified | 1 hr |
| Beaufort | Vendor app | 91 | 21 | Verified | 1 hr |
| Aiken | Vendor app | 83 | 20 | Verified | 1 hr |
| Allendale | Vendor app | 7 | 10 | Verified | 1 hr |
| McCormick | Vendor app | 8 | 10 | Verified | 1 hr |