Spartanburg County
Population 380,857 (2025) 808 sq mi
Spartanburg County has recorded 38 tornadoes since 1950, 10th most of 46 counties in South Carolina; the most recent was on December 29, 2024.
Hazard fingerprint Each spoke is this county’s percentile among U.S. counties where that hazard occurs. How it is computed
- Tornado damage paths since 195038
- Tropical cyclone tracks within 100 miles since 1851, wider where stronger32
- Major flood years since 19781
At a glance
The record for Spartanburg County in eight numbers. Each links to its section below.
Tornadoes since 1950
38
10th of 46 in South Carolina
52% more than the typical South Carolina county
DetailsTropical cyclones within 50 mi
13
42nd of 46 in South Carolina
1 at hurricane strength since 1851
DetailsStrongest tornado
F4
May 5, 1989, 15.0 mile path
Strongest tropical cyclone
Cat. 1
Hurricane Hugo, 1989, 30.1 miles away
Tornadoes
About one every 2 years since 1950, 4 of them rated F3/EF3 or stronger.
Strongest
May 5, 1989
F4, 15.0 mile path
700 yards wide; 2 killed along the whole path.
Most recent
Sunday, December 29, 2024
EF0, 1.7 mile path
2 years ago.
Every recorded tornado
| Dec 29, 2024 | EF0 | 1.7 | 0 | 0 |
| Mar 3, 2023 | EF1 | 21.3 | 0 | 0 |
| May 23, 2022 | EF1 | 5.2 | 0 | 0 |
| Apr 10, 2021 | EF0 | 1.1 | 0 | 0 |
| Feb 6, 2020 | EF1 | 10.1 | 0 | 0 |
| Oct 23, 2017 | EF2 | 3.0 | 1 | 0 |
| Oct 23, 2017 | EF1 | 12.7 | 0 | 0 |
| Oct 8, 2017 | EF2 | 22.3 | 0 | 0 |
| Nov 30, 2016 | EF1 | 16.4 | 0 | 0 |
| Jan 5, 2007 | EFU | 0.2 | 0 | 0 |
| Jul 7, 2005 | F0 | 0.2 | 0 | 0 |
| Mar 11, 2000 | F0 | 0.1 | 0 | 0 |
| Jun 6, 1998 | F0 | 1.0 | 0 | 0 |
| Feb 21, 1997 | F2 | 1.0 | 0 | 0 |
| Jul 26, 1996 | F1 | 0.1 | 0 | 0 |
| Oct 22, 1994 | F0 | 2.0 | 0 | 0 |
| Aug 16, 1994 | F1 | 30.0 | 0 | 0 |
| Aug 16, 1994 | F3 | 30.0 | 0 | 0 |
| Mar 27, 1994 | F1 | 18.0 | 0 | 0 |
| Mar 27, 1994 | F1 | 33.0 | 4 | 0 |
| Mar 27, 1994 | F2 | 45.4 | 13 | 0 |
| Apr 28, 1990 | F1 | 6.0 | 4 | 0 |
| Apr 28, 1990 | F0 | 2.0 | 0 | 0 |
| Feb 10, 1990 | F1 | 5.0 | 0 | 0 |
| May 5, 1989 | F4 | 15.0 | 35 | 2 |
| Apr 4, 1989 | F2 | 2.0 | 0 | 0 |
| Aug 17, 1985 | F2 | 9.0 | 39 | 0 |
| May 23, 1980 | F2 | 2.5 | 0 | 0 |
| Dec 5, 1977 | F1 | 0.2 | 0 | 0 |
| Sep 7, 1977 | F1 | 0.3 | 0 | 0 |
| Jun 19, 1976 | F1 | 0.2 | 0 | 0 |
| May 27, 1973 | F3 | 60.2 | 40 | 0 |
| May 18, 1969 | F1 | 0.1 | 0 | 0 |
| Mar 22, 1968 | F1 | 0.5 | 0 | 0 |
| Apr 28, 1964 | F0 | 0.1 | 0 | 0 |
| Apr 28, 1964 | F0 | 0.1 | 0 | 0 |
| Apr 7, 1964 | F1 | 0.2 | 0 | 0 |
| May 10, 1952 | F3 | 22.7 | 4 | 2 |
- Injuries and deaths are for the tornado’s whole path, which may extend beyond the county. Deaths recorded within Spartanburg County: 4.
- Weak tornadoes were under-recorded before Doppler radar coverage became national in the early 1990s, so earlier decades read low. Ratings use the Fujita scale before February 2007 and the Enhanced Fujita scale after.
Storm Prediction Center severe weather database, 1950 to 2025.
Hurricanes and tropical storms
13 passed within 50 miles since 1851; 1 at hurricane strength.
Strongest within 50 miles
September 22, 1989
Hugo, Category 1
30.1 miles at closest approach, winds near 75 mph.
Most recent
September 27, 2024
Helene, Tropical storm
63.6 miles at closest approach.
Every storm within 100 miles
| Helene | 2024 | 63.6 | Tropical storm |
| Debby | 2024 | 82.9 | Subtropical storm |
| Elsa | 2021 | 78.0 | Tropical storm |
| Zeta | 2020 | 45.1 | Tropical storm |
| Nestor | 2019 | 81.4 | Post-tropical |
| Michael | 2018 | 30.0 | Tropical storm |
| Alberto | 2006 | 66.1 | Tropical storm |
| Hugo | 1989 | 30.1 | Category 1 |
| Bob | 1985 | 69.3 | Tropical storm |
| David | 1979 | 62.7 | Tropical storm |
| Alma | 1970 | 95.4 | Tropical storm |
| Unnamed | 1965 | 48.3 | Post-tropical |
| Gracie | 1959 | 21.5 | Tropical storm |
| Able | 1952 | 55.2 | Tropical storm |
| Unnamed | 1949 | 0.0 | Tropical storm |
| Unnamed | 1946 | 51.4 | Post-tropical |
| Unnamed | 1944 | 98.9 | Post-tropical |
| Unnamed | 1935 | 79.1 | Tropical storm |
| Unnamed | 1929 | 80.6 | Post-tropical |
| Unnamed | 1927 | 52.1 | Tropical storm |
| Unnamed | 1916 | 0.0 | Tropical storm |
| Unnamed | 1915 | 27.5 | Tropical storm |
| Unnamed | 1913 | 97.8 | Tropical storm |
| Unnamed | 1912 | 23.4 | Post-tropical |
| Unnamed | 1907 | 3.7 | Post-tropical |
| Unnamed | 1906 | 7.0 | Tropical storm |
| Unnamed | 1902 | 11.8 | Post-tropical |
| Unnamed | 1902 | 76.9 | Tropical storm |
| Unnamed | 1901 | 28.1 | Post-tropical |
| Unnamed | 1893 | 40.3 | Tropical storm |
| Unnamed | 1893 | 55.0 | Category 1 |
| Unnamed | 1889 | 24.5 | Tropical storm |
| Unnamed | 1888 | 86.1 | Tropical storm |
| Unnamed | 1886 | 16.0 | Tropical storm |
| Unnamed | 1885 | 72.8 | Tropical storm |
| Unnamed | 1882 | 0.0 | Tropical storm |
| Unnamed | 1878 | 97.3 | Tropical storm |
| Unnamed | 1877 | 76.8 | Tropical storm |
| Unnamed | 1859 | 9.7 | Tropical storm |
| Unnamed | 1854 | 73.9 | Tropical storm |
| Unnamed | 1852 | 85.9 | Tropical storm |
| Unnamed | 1851 | 84.6 | Tropical storm |
- Tropical storms and hurricanes (34 kt or more, still tropical) at closest approach. Post-tropical remnants with gale-force winds are listed but not counted. Direct: track within 50 miles; near: within 100 miles. Distance is measured to the county boundary for counties and to the city centre for cities, using positions interpolated hourly between HURDAT2 fixes.
National Hurricane Center HURDAT2, 1851 to 2025.
Wildfire and smoke
No large wildfire has been mapped here since satellite mapping began in 1984.
Smoke overhead
Smokiest year
2023: 38 days
Heavy smoke on 4 days in 2023, the most of any year.
Last 10 years
8.8 days a year
Medium or heavy smoke, 2016 to 2025.
2025
11 days
Medium or heavy smoke. 30 so far in 2026.
- A smoke day is a date on which a smoke plume traced by NOAA Hazard Mapping System analysts from satellite imagery covered this place's point (the county's population centre or the city centre). Counts here are of medium or heavy smoke. Since 2018 analysts have often drawn light smoke as one area over most of the continent, so light-smoke counts are not comparable from year to year. The plumes show smoke anywhere in the air above, not air quality at the ground, and smoke hidden by cloud is missed.
NOAA Hazard Mapping System smoke analysis, 2011 to 2026, retrieved October 30, 2026.
Floods and flood insurance
158 federal flood insurance claims since 1978, with $2.6 million paid.
Most claims in one year
2024: 37 claims
$1.3 million paid.
2nd most
2020: 17 claims
$375,000 paid.
3rd most
2005: 16 claims
$148,000 paid.
Claims by ZIP code
| 29302 | 37 | $730,000 |
| 29307 | 26 | $394,000 |
| 29301 | 17 | $471,000 |
| 29316 | 12 | $199,000 |
| 29349 | 11 | $64,000 |
| 29303 | 8 | $58,000 |
| 29369 | 7 | $199,000 |
| 29365 | 6 | $25,000 |
| 29306 | 5 | $31,000 |
| 29323 | 5 | $15,000 |
| 29651 | 5 | $73,000 |
Flood events since 1996
- Flash Flood45
- Flood30
- Heavy Rain13
2 deaths recorded in flood events since 1996.
This product uses the Federal Emergency Management Agency's OpenFEMA API, but is not endorsed by FEMA. The Federal Government or FEMA cannot vouch for the data or analyses derived from these data after the data have been retrieved from the Agency's website(s).
OpenFEMA NFIP Redacted Claims v3, refreshed August 4, 2026. NOAA Storm Events through 2026.
River crests
Most severe crest
June 1, 1903
Pacolet River near Fingerville, 46.00 ft
21.00 feet above the 25.0 ft flood stage; major flooding by today’s categories.
Most recent moderate or major crest
February 7, 2020
Pacolet River above Cowpens, 16.63 ft
Moderate flooding.
River gauges
| Lawsons Fork Creek at Spartanburg | 15.0 | 15.14 ft | 0 |
| Middle Tyger River near Lyman | 24.0 | 7.20 ft | 0 |
| North Pacolet River near Fingerville | 18.0 | 27.13 ft | 3 |
| Pacolet River above Cowpens | 14.0 | 17.10 ft | 0 |
| Pacolet River near Fingerville | 25.0 | 46.00 ft | 1 |
| South Pacolet River near Campobello | 10.0 | 13.03 ft | 0 |
| South Tyger River below Duncan | 17.0 | 16.68 ft | 0 |
- Crests are the highest and the recent crests the National Weather Service lists for each river gauge in the county that has a flood stage, not every flood. Flood categories use each gauge's current flood stages; crests from before levees, dams or channel changes may not be comparable. Crests measured on an old datum are left out of the rankings.
NOAA National Water Prediction Service gauge records, retrieved October 30, 2026.
Drought
In severe drought or worse for 171 of 1,581 months since 1895 (11%); the longest spell lasted 21 months.
171
Months in severe drought or worse since 1895
59
Months in extreme drought
11%
Share of all months, severe or worse
39
Drought reports to the Weather Service since 1996
Lowest reading
October 1954
−6.02, extreme drought
Longest severe spell
21 months
October 2010 to June 2012.
Latest month
September 2026
−2.87, moderate drought
Last severe month: July 2026.
- The Palmer Drought Severity Index is computed by NOAA each month from the county's average temperature and precipitation, relative to the county's own climate. Zero is normal; -3 or lower is severe drought and -4 or lower extreme drought. It describes the long-term balance of moisture, not water supply or crop losses.
NOAA NCEI nClimDiv county Palmer Drought Severity Index, 1895 to September 2026, issued October 6, 2026.
Earthquakes and landslides
3 earthquakes of magnitude 4 or more within 50 miles since 1900; the largest was magnitude 5.2 in 1916.
1
Magnitude 2.5+ inside the county since 1973
13
Magnitude 3+ within 50 miles since 1973
3
Magnitude 4+ within 50 miles since 1900
1
Magnitude 5+ within 50 miles since 1900
Largest within 50 miles
February 21, 1916
Near Asheville, North Carolina; 26.4 miles away.
Most recent, magnitude 3 or more
August 23, 2025
Magnitude 3.0
3 km N of Coronaca, South Carolina; 24.1 miles away.
Every earthquake of magnitude 4 or more within 50 miles
| May 13, 1957 | 4.0 | 41.9 |
| Feb 21, 1916 | 5.2 | 26.4 |
| Jan 1, 1913 | 4.3 | 4.6 |
- Earthquakes of magnitude 2.5 or more in the USGS Comprehensive Catalog since 1900. Within 50 miles means the epicentre lies within 50 miles of the county boundary (or inside the county).
- Small earthquakes were under-recorded before the modern seismic networks of the 1970s and are still missed in remote areas, so early decades read low. Magnitudes are as the catalogue reports them and mix scales (moment, local and body-wave).
USGS ANSS Comprehensive Earthquake Catalog, 1900 to present, retrieved October 30, 2026.
Mapped landslides
1
Landslides mapped, probable or better
1
With a recorded date
1
Source inventory
Mapped by NASA (1).
- Landslides mapped in the USGS compilation of landslide inventories across the United States (version 3.0, 2025), rated probable or better. The compilation joins inventories made by federal and state agencies for different purposes and areas, so the number mapped in a county reflects how closely it has been surveyed as much as how often its slopes fail. An area with few records may simply not have been mapped. Deaths are as recorded in the inventories; a slide listed in two inventories is counted once.
USGS Landslide Inventories across the United States, version 3.0, retrieved October 27, 2026.
Severe weather and other events
1,274 events in the National Weather Service record, 1,039 of them since 1996.
201
Hail reports, 1 inch or larger
16
Hail, 2 inches or larger
471
Damaging gusts, 58 mph+
89
Winter weather events since 1996
3
Heat events since 1996
15
Cold events since 1996
Largest hail
May 2, 1957
4.00 inches
Strongest measured or estimated gust
March 10, 1992
92 mph
More event types since 1996
| Lightning | 34 | 2 |
| Dense fog and smoke | 4 | 0 |
Costliest events since 1996
- Sep 27, 2024Tropical Storm, Northern Spartanburg$25.0 million
National Weather Service narrative
Thousands of trees were blown down, with dozens of trees down on homes, vehicles, and power lines. Frequent gusts up to 70 mph occurred, with occasional gusts of 80 mph. Four fatalities were attributed to falling trees.
- Dec 4, 2002Ice Storm, Spartanburg$12.0 million
National Weather Service narrative
Freezing rain began across upstate South Carolina during the early afternoon of the 4th, and had spread into the eastern piedmont by mid afternoon. Resultant damage due to ice accumulation began during the mid-to-late afternoon. The intensity of the freezing rain increased after midnight, and by dawn on the 5th, devastating ice accumulations of 1/2 to 1 1/2 inches were observed, with the hardest hit areas being along the I-85 corridor, from Anderson, to Greenville-Spartanburg, to Gaffney. Hundreds of thousands lost power, and the outages lasted for as long as 2 weeks in some areas.
- Feb 6, 2020Tornado$10.0 million
National Weather Service narrative
NWS storm survey found the path of an EF1 tornado that began in the west Spartanburg/Clevedale area, near the intersection of Willis Rd and Harvest Brook Way. Damage was primarily limited to downed trees in this residential area, although one tree fell on and damaged a home. Structural damage increased as the tornado moved through the Westgate Mall and Dorman Center areas near the Highway 29/I-26 intersection, with business signs being damaged and roof damage occurring to several homes and apartment buildings just east of Westgate Mall. This same neighborhood was impacted by another EF1 tornado in October 2017. The tornado strengthened as it moved east of this area, along West…
- Sep 27, 2024Tropical Storm, Southern Spartanburg$10.0 million
National Weather Service narrative
Thousands of trees were blown down, with dozens of trees down on homes, vehicles, and power lines. Frequent gusts up to 70 mph occurred, with occasional gusts of 80 mph.
- Aug 20, 1999Hail$9.0 million
National Weather Service narrative
Multicell thunderstorms developed across the Upstate during the afternoon, with a few evolving into long-lived supercells. Damaging straightline winds moved a barn off it's foundation and destroyed some metal buildings near Walhalla. Dime to ping-pong ball size hail was reported from near Stumphouse Mountain to Walhalla as well. Various reports of hail ranging in size from dimes to quarters were reported from Oconee and Anderson counties, into Laurens and Greenville counties. Two supercells developed in western Greenville county and moved east-southeast across Spartanburg county. These severe thunderstorms produced large swaths of golf ball to grapefruit size hail. Numerous cars…
- Jun 14, 2007Thunderstorm Wind$8.0 million
National Weather Service narrative
A large manufacturing building under construction (about 90 percent complete) near the highway 11/I-26 intersection collapsed due to strong winds. Some construction equipment was heavily damaged or destroyed by the collapsing building. Large tree limbs were also blown down nearby.
- May 23, 2014Hail$3.0 million
National Weather Service narrative
Public reported up to golf ball size hail from the west side of Spartanburg to the area around Spartanburg Regional Hospital.
- Aug 14, 1998Flash Flood$2.5 million
National Weather Service narrative
A flash flood developed rapidly late in the evening following 4 to 5 inches of rainfall in a short time. The flash flood affected several creeks from the city of Spartanburg southward to Roebuck, Walnut Grove, and Pauline. The most damage may have occurred along Timms Creek and Lawson Fork Creek. Several roads were washed out, several people required rescue from their homes, a country club experienced severe damage, and a restaurant was destroyed. Most of the severe flooding was in the first 2 hours.
- Jan 2, 1999Ice Storm, Spartanburg$1.5 million
National Weather Service narrative
A shallow cold arctic airmass in place ahead of a developing storm system in the southern Plains set the stage for a significant ice storm for most of the Upstate during the evening of the 2nd. Patchy sleet began during the late morning and became more widespread and heavier during the afternoon - mixing at times with freezing rain. Sleet accumulated to nearly one inch across the foothills before changing to freezing rain in the early evening. Freezing rain continued through the evening, heavy at times and accumulated to damaging levels. Downed trees and power lines caused widespread power outages, totalling 160,000 across the Upstate. Much of the damage to homes was due to ice…
- Aug 10, 2005Flash Flood$1.5 million
National Weather Service narrative
Flash flooding developed along several creeks in the Boiling Springs area, including Shoally Creek. A pond also overflowed. Water entered 10-15 homes in a new subdivision.
- Storm Events records before 1996 cover only tornadoes, thunderstorm wind and hail. Damage figures are as reported by the National Weather Service at the time, not adjusted for inflation.
NOAA NCEI Storm Events Database, 1950 to 2026, issued October 26, 2026.
Weather records
From Greer, 13.2 miles from the county’s population centre, with records from 1962.
- All-time high
- 107°FJul 1, 2012
- All-time low
- −6°FJan 30, 1966
- Warmest night
- 79°FJul 24, 2010
- Coldest day
- 20°FJan 30, 1966
- Wettest day
- 9.32 inAug 26, 1995
- Snowiest day
- 12.0 inJan 7, 1988
- Hottest year
- 2016mean 63.4°F
- Coldest year
- 1976mean 58.1°F
- Wettest year
- 202073.70 in
- Driest year
- 200731.08 in
- Snowiest season
- 17.1 in1971-72
Median first snow
January 15
Earliest: November 11, 1968
Median last snow
February 15
Latest: April 18, 1983
6 of 64 winters had no measurable snow.
Station Greer (USW00003870), 1,069 ft elevation, 13.2 miles from the population centre. Daily records from 1962 to October 26, 2026; 100.0% of days in the last 30 years are complete. Records at a single station can differ from a city’s official threaded record, which may combine several stations.
NOAA NCEI Global Historical Climatology Network Daily.
Federal disaster declarations
25 since 1953. The most recent: Severe Winter Storm, January 23, 2026.
| Jan 23, 2026 | Winter Storm | EM-3632-SC |
| Sep 29, 2024 | Hurricane | DR-4829-SC |
| Sep 26, 2024 | Tropical Storm | EM-3619-SC |
| Aug 5, 2024 | Tropical Storm | EM-3606-SC |
| Aug 31, 2023 | Hurricane | EM-3597-SC |
| Nov 21, 2022 | Hurricane | DR-4677-SC |
| Sep 29, 2022 | Hurricane | EM-3585-SC |
| Mar 27, 2020 | Biological | DR-4492-SC |
| Mar 17, 2020 | Severe Storm | DR-4479-SC |
| Mar 13, 2020 | Biological | EM-3470-SC |
| Sep 1, 2019 | Hurricane | EM-3421-SC |
| Sep 10, 2018 | Hurricane | EM-3400-SC |
| Oct 16, 2017 | Hurricane | DR-4346-SC |
| Sep 7, 2017 | Hurricane | EM-3386-SC |
| Oct 6, 2016 | Hurricane | EM-3378-SC |
| Oct 5, 2015 | Flood | DR-4241-SC |
| Oct 3, 2015 | Severe Storm | EM-3373-SC |
| Feb 12, 2014 | Severe Ice Storm | EM-3369-SC |
| Jan 20, 2006 | Severe Ice Storm | DR-1625-SC |
| Sep 10, 2005 | Hurricane | EM-3233-SC |
| Oct 7, 2004 | Hurricane | DR-1566-SC |
| Jan 8, 2003 | Severe Ice Storm | DR-1451-SC |
| Jan 31, 2000 | Severe Storm | DR-1313-SC |
| Oct 22, 1990 | Flood | DR-881-SC |
| Aug 4, 1977 | Drought | EM-3047-SC |
This product uses the Federal Emergency Management Agency's OpenFEMA API, but is not endorsed by FEMA. The Federal Government or FEMA cannot vouch for the data or analyses derived from these data after the data have been retrieved from the Agency's website(s).
OpenFEMA Disaster Declarations Summaries, retrieved October 30, 2026. Statewide declarations are not listed.
How this compares
Where Spartanburg County stands among 46 counties in South Carolina and 3,143 in the United States.
| Tornadoes since 1950 | 38 | 10 / 46 |
| Tornadoes rated F3/EF3 or stronger | 4 | 4 / 46 |
| Tropical cyclones within 50 mi | 13 | 42 / 46 |
| Hurricane-strength passes within 50 mi | 1 | 38 / 46 |
| Wildfire acres since 1984 | 0 | — |
| Flood insurance claims | 158 | 14 / 46 |
| Flood insurance paid | $2.6 million | 17 / 46 |
| Disaster declarations | 25 | 24 / 46 |
| Flood events since 1996 | 88 | 7 / 46 |
| Hail and wind events since 1996 | 780 | 6 / 46 |
| Winter storm events since 1996 | 89 | 4 / 46 |
| Reported damage since 1996 | $96.7 million | 3 / 46 |
| River crests at major flood stage | 4 | 16 / 46 |
| High tide flooding days a year, last 10 years | 0.0 | — |
| Months in severe drought since 1895 | 171 | 3 / 46 |
| Medium or heavy smoke days a year, last 10 years | 8.8 | 12 / 46 |
| Earthquakes M4+ within 50 mi since 1900 | 3 | 16 / 46 |
| Earthquakes M2.5+ in the county since 1973 | 1 | 14 / 46 |
Neighbouring counties
| Cherokee County | 23 | 16 |
| Greenville County | 39 | 14 |
| Laurens County | 25 | 14 |
| Polk County NC | 4 | 9 |
| Rutherford County NC | 12 | 10 |
| Union County | 22 | 17 |
Sources and vintage
Every number on this page comes from these public records.
- Tornadoes NOAA Storm Prediction Center severe weather database, through 2025.
- Tropical cyclones NOAA National Hurricane Center HURDAT2 (Atlantic; Northeast and Central Pacific), through 2025.
- Wildfire USGS/USFS Monitoring Trends in Burn Severity, through 2026.
- Storm events NOAA NCEI Storm Events Database, through 2026.
- Flood insurance OpenFEMA NFIP Redacted Claims v3, refreshed August 4, 2026.
- Declarations OpenFEMA Disaster Declarations Summaries v2, retrieved October 30, 2026.
- Weather records NOAA NCEI Global Historical Climatology Network Daily, station USW00003870.
- River crests NOAA National Weather Service, National Water Prediction Service river gauges, retrieved October 30, 2026.
- Drought NOAA NCEI nClimDiv county Palmer Drought Severity Index, through September 2026.
- Smoke NOAA NESDIS Hazard Mapping System smoke analysis, retrieved October 30, 2026.
- Landslides USGS Landslide Inventories across the United States, version 3.0 (2025).
- Earthquakes USGS ANSS Comprehensive Earthquake Catalog (ComCat), retrieved October 30, 2026.
Joins, thresholds and known limits are set out in the methodology. Found an error? Report it. Page built October 30, 2026.