Civic KnodeRedistricting
Before entering, you must review and accept the Terms of Service. Acceptance is required on every launch.
By clicking "I Agree" and using Civic Knode (the "Service"), you enter a binding agreement with Christopher Keane d/b/a Civic Knode. If you do not agree, do not use the Service.
You receive a personal, non-exclusive, non-transferable, revocable, free-of-charge license to use the Service on your own devices. The Service is licensed, not sold. All code, design, branding, and compiled data packages remain the exclusive property of Christopher Keane.
You may not copy, share, send, upload, mirror, re-host, sell, sublicense, or otherwise distribute the Service or its files to anyone, whether for payment or for free. Every user must obtain the Service directly from Civic Knode's official website or distribution channel. You may freely share screenshots, maps, exports, and analyses you create — sharing your work is encouraged; sharing the tool is prohibited.
Unauthorized sharing is a material breach of this agreement and copyright infringement. It causes damages — the product would be rendered worthless if freely copied — and exposes you to liability including actual and statutory damages, injunctive relief, and attorneys' fees.
Civic Knode presents statistical estimates and models. Where geographic units are split or recombined, figures are population-weighted approximations, not official counts. The Service is not an official redistricting system and its outputs are not for official use.
The Service is provided "AS IS" without warranties of any kind. To the maximum extent permitted by law, total liability is limited to $10, reflecting that the Service is free.
Contains public data from the U.S. Census Bureau, MIT Election Data + Science Lab, and official election authorities. This product uses Census Bureau data but is not endorsed or certified by the Census Bureau.
Questions, permissions, or takedown requests: Chris.Keane@civicknode.org
The complete Terms of Service and Free Use License Agreement are available from Civic Knode. This summary does not replace them.
Slide the national popular-vote margin either way. Every district moves by the same amount from its real 2024 presidential result, adjusted so each chamber starts at today's seats ✱. 2024 was R+1.5 (the certified national two-party margin).
Model A is a uniform swing; Model B adds a 3-point incumbency cushion. Forecasters' 2026 ratings suggest Model A runs 1 to 3 points high. Seats: Stateside Associates and Ballotpedia, October 2026; Michigan, Minnesota and Mississippi use their 2026 district lines. Alaska's chambers are run by bipartisan coalitions, Minnesota's House is tied, and Nebraska's one chamber is officially nonpartisan.
October 27, 2026 (v11.3)
New: every number can show where it comes from. Hover any number in the info panel, the sidebar, the Control panel or the scorecard (it gets a faint outline) for its source. Click it for the formula with the real inputs filled in, and a link to every source. Each input in a formula can be hovered or clicked in turn. Every section has a ? button for that section's sources.
New: go deeper on any place. At the top of the info panel, Every unit lists every county, precinct or block that was added up, with each one's votes and how they were made, and checks the sum against the number shown. Download data saves it all as CSV or JSON, with the sources, the formulas and the raw data record. This works for counties, precincts, blocks, tracts, ZIP areas, real congressional and legislative districts, states, and districts you draw.
New: the Data sources page lists every dataset with a link to the original, the national vote totals used, and every formula. National baselines now come from official totals on the same two-party basis as the slider: 2016 D+2.2 and 2020 D+4.5 (FEC), 2022 R+2.5 (FEC House totals), 2024 R+1.5 (FEC). 2018 uses the sum of county House votes (D+8.6).
New: seat by seat in the Control panel. Every seat is a dot in a half circle like a chamber floor, ordered from the most Democratic-leaning seat to the most Republican, and labeled (MD6 is Maryland's 6th district; state legislative dots show their district number). Move the slider and the dots change color; seats that just changed hands flash. Nationally you get the U.S. House, U.S. Senate, governors and state legislatures; click a card to jump to it. In a state view, or by clicking a state in the table or on the map, you get that state's two chambers by district, its U.S. House delegation and its senators. Puerto Rico appears when it is admitted. Click any dot for its math.
Fixed: D.C.'s 2024 presidential result. The county results file had only part of the count (36,882 Harris, 2,056 Trump); the app now uses the FEC official result (294,185 Harris, 21,076 Trump). Checked against the FEC, the rest of the county file matches the official national totals within about 11,000 votes (0.01%).
Fixed: Puerto Rico's legislature uses its seats after the 2024 election: House 53 (PNP 36, PPD 13, PIP 3, Proyecto Dignidad 1) and Senate 28 (PNP 19, PPD 5, PIP 2, Proyecto Dignidad 1, one independent), including the seats added under the constitution's minority clause.
October 27, 2026 (v11.2)
Fixed: the 2024 national margin is now the certified result, R+1.5 (Trump 77,302,580, Harris 75,017,613, two-party). Earlier versions used R+1.6, the sum of the precinct files. The national slider, the Control panel and every threshold now measure from R+1.5. Thresholds move by 0.1 point at most.
New: the New states setting can admit Puerto Rico by itself, as well as D.C., or both. Puerto Rico's parties don't line up with D and R, so each of its legislative districts follows its 2024 Resident Commissioner vote: Pablo José Hernández (PPD, who caucuses with Democrats) counts as D, and William Villafañe (PNP, Republican) as R. Margins come from the official precinct returns. Like every chamber, each is adjusted so today's seats (PNP majorities in both) come out at the 2024 national margin, and the at-large seats move with the island-wide vote. Puerto Rico's two senators follow the island-wide vote (PPD +7.9 in 2024). Its legislature is next elected in 2028.
New: Senate scenarios show the whole chamber under the seats-up totals, for example "Senate in January 2027". You can count several cycles at once (2026, 2028 and 2030, or all three) and give each its own shift, such as D+9 in 2026 and D+12 in 2028. The 2030 cycle (Class 1) is added.
Fixed: in presidential scenarios the slider's nation margin is measured from the cycle you pick (2016, 2020 or 2024) and updates as you move it. The tally and each state's hover show the margin with the shift.
October 26, 2026 (v10)
New: hybrid precincts in every state. When you view one state's voting precincts, a precinct stays whole unless the official Census block files put it in more than one district (the 2024 or 2026 congressional lines, or the 2026 state senate and house lines) or it holds more than a tenth of a state house district. Those precincts, about 28,000 of 168,000 nationwide, are drawn as their 2020 Census blocks. Load real districts then reproduces the official maps exactly (Kentucky's congressional map loads at 0.0% deviation), and your own maps can balance to the person. Plans saved before a precinct was split keep working: the precinct turns into its blocks in the same district.
New: the Control panel's New states setting admits the District of Columbia, or the District and Puerto Rico, and redraws every threshold: states needed to call a convention and to ratify, and Senate seats for a majority, cloture and two-thirds. The District's legislature and senators count as Democratic. (Since v11.2, Puerto Rico follows its 2024 Resident Commissioner vote.)
New: a Census Blocks map mode for Kentucky, Maine, Montana, New Hampshire and Vermont. In those states a single voting precinct (often a whole town) can hold more people than a state house district, so precincts are too coarse to draw fair districts. Blocks are the smallest unit the Census counts. Population and race are exact 2020 block counts. Presidential votes are each precinct's real 2020 result spread over its blocks by voting-age population, marked ✱. In this mode, Load real districts places every block in its real congressional, state senate or state house district.
October 26, 2026 (v9)
New: color the map by more measures (the More menu next to Color): population density, turnout, Black, Hispanic, Asian and White shares, bachelor's degrees, median age, homeowners, urban residents, population change since 2010, the shift between any two elections, and the minority share of citizen voters. Works for counties, tracts, precincts, districts and states where the data exists; the key names the source. New: an Isolate button in district popups dims the rest of the map, and a Labels overlay names the units in view. New: Scenarios saves plans under a name in this browser, loads them back, compares two plans side by side (seats, deviation, county splits, efficiency gap, mean-median, units moved) and shows on the map which units differ; saved scenarios travel with Save and Load files. New: a candidate model (Advanced, what-if) with 2 to 6 candidates, county or state skews and education and income tilts, a Candidate leader color mode and shares in every popup. New: a Goal box under the tally. New: the swing slider now works in the President, U.S. Senate and U.S. House scenario modes, with preset presidential scenarios, a Reset picks link and a one-line breakdown under the tally.
Earlier October 26, 2026
Real district maps now load every precinct into its true district, for all 435 congressional districts nationwide or one state at a time. Districts are grouped by state.
New: citizen voting-age population by race for every precinct and district (Census CVAP special tabulation, ACS 2020 to 2024, released January 2026), with a Voting Rights Act check in the scorecard.
New: a rules check for all 50 states in the scorecard (population equality, contiguity, county splits, partisan fairness rules), sourced from state constitutions and statutes via All About Redistricting (redistricting.lls.edu) and NCSL.
New: the U.S. House, U.S. Senate and governors move on the same swing slider as the state legislatures (Control panel). Seat holders checked October 26, 2026 against the House Clerk, Senate and state sources.
New: 2026 and 2024 campaign money for every House and Senate race, from FEC bulk filings (candidate summaries through the pre-general reports and 24/48-hour independent expenditure reports).
New: cities and towns (Census places) and school districts as map overlays, with 2020 Census counts, Vintage 2025 city estimates, and SAIPE 2024 school-age children. County population estimates updated to Vintage 2025.
New: population change from 2010 to 2020 for every county, tract and district (2010 Census blocks moved onto 2020 lines; totals match the 2010 count of 308,745,538 exactly).
New (v8): a scorecard comparison with 1,000 neutral congressional maps per state (computer-drawn with no partisan or racial data). Pick which elections count in the Control panel (2026 to 2030 or every seat), with governors, U.S. Senate seats and U.S. House delegations by state; a scenario slider in every popup; turnout by group; shift arrows and vote bubbles; a compare tool; save the map as a picture; the swing label now uses the national result of the election you pick.
New: search, share links, undo and redo, district lock, a finder for units not yet in a district, keyboard shortcuts (press ?), and browser autosave.
Earlier October 2026: real 2024 precinct results (The New York Times, used with credit for non-commercial purposes), 2026 congressional maps for the nine redrawn states, census-block foundation for precinct demographics, Georgia precinct county fix, two-way legislature slider.
Color by measure. Shares are the group's count divided by the unit's population (2020 Census). Bachelor's share, median age and homeowners come from ACS 2020 to 2024; for precincts those are block-group estimates spread to blocks and summed, marked ✱. Median age for a district or state is the population-weighted average of its units' medians (~). Density divides 2020 population by land area: Census block land for precincts, ACS land for districts, map geometry for counties and tracts. Turnout is total ballots divided by voting-age population, after any turnout adjustments. Population change compares 2010 blocks moved onto 2020 lines with the 2020 count ✱. The shift between two elections is the two-party margin in the second election minus the first. The color range runs from the 5th to the 95th percentile of the units in view, so colors change when you change the view.
Candidate model (what-if ✱). For each unit, a candidate's weight is baseline % x (1 + skew % / 100) x (1 + education tilt x 0.18 x zedu) x (1 + income tilt x 0.18 x zinc), where z is the unit's z-score (how many standard deviations from the mean) of bachelor's share or median household income among the units in view, clamped so no weight falls below 5% of its baseline. Weights are normalized to shares in each unit and multiplied by that unit's total votes in the chosen election (with turnout adjustments) to get votes; region and district totals are the sums. The skew uses the county row where one exists for the unit's county, otherwise the state row. This is an illustration tool, not a projection.
Scenario modes and the swing slider. In the President, U.S. Senate and U.S. House scenario modes, a state or district with no painted pick follows the slider: its baseline margin (the state's result in the cycle's baseline year for president; the 2024 presidential margin, or for 2026 Senate races the seat's calibrated baseline, for senate; the district's margin in the chosen election for House) plus the swing is read as Democratic above +1, Republican below -1 and a tossup between. With the slider at zero and no turnout adjustment, past cycles show the actual results and future cycles the current holders. Painted picks always win. Comparing scenarios matches each district in plan A to the plan B district it shares the most units with, then counts units outside those matches as moved.
Swing model. Each district moves by the same number of margin points from its 2024 presidential result (certified national margin R+1.5). Model A adjusts each chamber so it starts at today's seats; for Congress and governors, seats held by the party that lost them in 2024 start from the holder's last actual race margin. Model B adds a 3-point cushion for incumbents. Senate ties go to the Vice President's party.
CVAP. Census publishes citizen voting-age population by block group. Civic Knode spreads each block group to its 2020 blocks by voting-age population, then adds blocks into precincts and districts with the Census block equivalency files. Totals match Census's national figure within 0.002%; published congressional district figures within 0.6%. Suffolk County, NY is missing 39 block groups in the Census file; those were filled from the county total.
Rules check. A screening guide, not legal advice. Population checks use the largest and smallest district; county splits count counties divided between districts; values the sources do not settle are marked as unconfirmed.
Campaign money. Receipts include candidate loans and transfers between committees. Totals that FEC repeats under a member's old House ID during a statewide run are removed, as are filings over $50 million in one transaction.
Cities and school districts. Census 2025 cartographic boundaries. Places and districts created after 2020 get their 2020 count by adding the 2020 blocks inside them.
Precise where possible, estimated where necessary. Official vote counts only exist for real-world reporting units — counties and precincts. When a map view or a district you draw splits or recombines those units, Civic Knode estimates each piece's share based on how many people live in it. Estimated figures carry a ✱.
Election results are reported by county (and precinct) — not by census tract, ZIP code, or custom lines. When a district follows whole counties, its totals are exact sums of official results. Otherwise Civic Knode apportions votes by population: if 38% of a county's people live inside your district, it is credited with 38% of that county's votes. Population weighting (never land-area weighting) is the same method used by professional redistricting tools.
Precinct partisan figures are real 2020 results (see below). Tract and ZIP partisan figures split each precinct's real votes among the tracts or ZIPs it covers, by the share of the precinct's area inside each one ✱. State legislative district figures are the sum of the real precincts inside each district, assigned from the official district shapefiles; the 2020 figures are exact. Congressional district figures are built the same way, from the real precincts inside each district. 2024 district figures are sums of real 2024 precinct results from The New York Times, assigned to current district lines by precinct location. Alaska, Oklahoma and South Dakota (incomplete precinct data) and Connecticut, Maine, New Hampshire, Rhode Island and Vermont (results reported by town) use the estimate below ✱. Choose Congress: 2026 lines to see the new maps used in the 2026 elections in Alabama, California, Florida, Louisiana, North Carolina, Ohio, Tennessee, Texas and Utah, taken from each state's official plan files. Their figures come from the same real 2020 and 2024 precincts, placed in the new districts by location ✱. 2018 and 2022 use total U.S. House votes as the top-of-ticket measure (every House seat is on the ballot in midterms); presidential years use the presidential vote. Senate Scenarios is a what-if painter: it shows which states have a Senate seat up in each cycle (by Senate class) and lets you paint outcomes — it does not contain Senate race results.
Special cases: Alaska reports results by state election district, so county-equivalent figures there are population-weighted estimates of statewide totals. Connecticut's 2016–2022 county-based results are redistributed onto its new planning regions by population. Indiana did not release usable 2018 county detail, so 2018 Indiana figures are statewide estimates. Precinct boundaries and 2020 presidential precinct votes for all 50 states and DC come from the Voting and Election Science Team (VEST, CC-BY 4.0) — these are REAL reported precinct results, not estimates. For other election years (2016, 2018, 2022, 2024), each precinct's result is estimated by scaling its real 2020 vote pattern to the county's actual totals for that year ✱ — a precinct that voted blue in 2020 stays visibly blue in other years. Precinct population, voting-age population and race are split from census tracts by area share ✱. Puerto Rico has no presidential vote, so its partisan figures use Resident Commissioner (U.S. House delegate) results — the delegate's national party affiliation (PNP's González-Colón: Republican; PPD's Hernández: Democrat) determines the D/R mapping, and island-wide totals are distributed across municipios by population ✱. Guam holds no federal partisan election shown here. Median values (age, income) cannot be summed across units and are shown as approximations (~).
The swing slider moves every unit's margin by the same number of points: D+10 shifts every place 10 points toward Democrats, which is 5 points of two-party share. This is a standard uniform-swing model. A what-if tool, not a forecast. Turnout % = total ballots ÷ voting-age population (2020 Census VAP). The Community classification maps USDA Rural-Urban Continuum Codes: 1 = Urban, 2–3 = Suburban, 4–9 = Rural (Civic Knode's simplification). Income coloring uses ACS median household income. Deviation in the District Builder = how far a district's population is from the ideal equal-population size (region population ÷ number of districts).
About 100% results: in midterm House years (2018, 2022), a county lying entirely inside an uncontested district really can show 100% for one party — that is the official result, marked with a flag , not a data error. Presidential years contain no 0%/100% counties (Civic Knode audits every county in every year for impossible values). 2016 accuracy: county-level 2016 figures are calibrated so every state matches the FEC's certified official totals (fec.gov official results); states needing more than a 5% adjustment (including Alaska, California, New York, Washington and others with late-counted ballots missing from the original compilation) are flagged ✱.
• Boundaries: U.S. Census Bureau Cartographic Boundary Files (2025 vintage; precincts: VEST 2020; ZIPs: 2020 ZCTAs)
• Population, race & voting-age population: 2020 Census P.L. 94-171 Redistricting Data
• Age, income, industry, education: American Community Survey 2020–2024 5-Year Estimates
• County population trend: Census Vintage 2024 Population Estimates
• Presidential results 2016/2020/2024: county results compilation (MIT License)
• 2024 precinct results (district figures): The New York Times, Presidential precinct data for the 2024 general election, used under the NYT non-commercial data agreement
• U.S. House results 2018/2022: MIT Election Data + Science Lab official returns (CC0), aggregated to counties by Civic Knode
• Precinct boundaries and actual 2020 presidential votes, all 50 states and DC: Voting and Election Science Team (VEST), CC-BY 4.0
• Overlays: Census Urban Areas / CBSA / AIANNH / Military installations; USDA ERS Rural-Urban Continuum Codes 2023; Appalachian Regional Commission county list; USGS Watershed Boundary Dataset
U.S. Census Bureau — 2025 Cartographic Boundary Files (states, counties, tracts, 119th Congressional Districts, state legislative districts); 2020 TIGER/Line census blocks for Kentucky, Maine, Montana, New Hampshire and Vermont (Census Blocks mode); 2020 ZCTAs; precinct boundaries from VEST (CC-BY 4.0). Public domain. census.gov/geographies/mapping-files
2020 Census P.L. 94-171 (population, voting-age population, race/ethnicity — exact counts). ACS 2020–2024 5-Year Estimates (age, median age, median income, industry, education — survey estimates with margins of error). Vintage 2024 Population Estimates. This product uses Census Bureau data but is not endorsed or certified by the Census Bureau.
2016/2020/2024 presidential by county: public compilation (MIT License) of official state results. 2018/2022 U.S. House by county: aggregated by Civic Knode from MIT Election Data + Science Lab official precinct returns (CC0). Alaska, Indiana 2018, and Connecticut geography adjustments are estimates — see the ? methodology.
2024 congressional and state legislative district figures are built from precinct-level results collected by The New York Times (github.com/nytimes/presidential-precinct-map-2024). Source: The New York Times. Used for non-commercial purposes under the NYT Computational Use of Data Agreement.
The smallest real election unit is the voting precinct (real 2020 results, VEST), and the smallest real people unit is the census tract. Everything else is built by simple map overlap — coverage share, nothing fancier:
• Tract & ZIP votes: each precinct's real votes are split among the tracts/ZIPs it covers, in proportion to the share of the precinct's area inside each one. A tract covering 30% of a precinct gets 30% of its votes. Every vote is distributed exactly once — statewide totals always match the real results.
• Precinct demographics: population, voting-age population, race and housing are exact 2020 Census block counts, each block placed in the precinct that contains it. Income, education, age and homeownership are ACS 2020–2024 block-group estimates spread to blocks by households or population, then summed (medians are recomputed from income and age brackets) ✱.
• Districts: congressional and state legislative district figures are the sum of the actual precincts inside them (assigned from the official shapefiles). Custom districts you build sum their member units the same way.
• Other years (2016/18/22/24): a unit's real 2020 result is scaled by its county's real swing in that year — so a blue precinct stays blue even in a red county's red year. All figures produced by these methods carry the ✱ flag.
Census Urban Areas, CBSA metro areas, AIANNH tribal areas, military installations; USDA ERS Rural-Urban Continuum Codes 2023 (community type); Appalachian Regional Commission county list; USGS Watershed Boundary Dataset. Public domain.