Elections / 2004 · President · NC
North Carolina — 2004 presidential election
Recent presidential results
state2004 presidential electionNorth Carolina · PresidentBushR+12.4
How it voted
Share of the 2004 vote
| George W. Bush ✓Republican | 56.0% | 1,961,166 |
|---|---|---|
| John KerryDemocratic | 43.6% | 1,525,849 |
| OtherAll other candidates | 0.4% | 13,992 |
2004presidential margin
D+60R+60
100 counties, each filled by 2004 D-vs-R margin. Hover any county for its result.
North Carolina cast 15 electoral votes this cycle.
County-level results (100 counties) — table
| County | Winner | Margin |
|---|---|---|
| Alamance County, NC | Republican | R+23.3 |
| Alexander County, NC | Republican | R+40.4 |
| Alleghany County, NC | Republican | R+19.9 |
| Anson County, NC | Democratic | D+17.5 |
| Ashe County, NC | Republican | R+23.8 |
| Avery County, NC | Republican | R+51.5 |
| Beaufort County, NC | Republican | R+27.7 |
| Bertie County, NC | Democratic | D+23.4 |
| Bladen County, NC | Republican | R+0.5 |
| Brunswick County, NC | Republican | R+21.1 |
| Buncombe County, NC | Republican | R+0.6 |
| Burke County, NC | Republican | R+23.4 |
| Cabarrus County, NC | Republican | R+34.5 |
| Caldwell County, NC | Republican | R+35.7 |
| Camden County, NC | Republican | R+29.8 |
| Carteret County, NC | Republican | R+39.0 |
| Caswell County, NC | Republican | R+3.5 |
| Catawba County, NC | Republican | R+35.3 |
| Chatham County, NC | Democratic | D+0.02 |
| Cherokee County, NC | Republican | R+34.7 |
| Chowan County, NC | Republican | R+10.4 |
| Clay County, NC | Republican | R+32.5 |
| Cleveland County, NC | Republican | R+23.0 |
| Columbus County, NC | Republican | R+2.0 |
| Craven County, NC | Republican | R+25.3 |
| Cumberland County, NC | Republican | R+3.5 |
| Currituck County, NC | Republican | R+34.6 |
| Dare County, NC | Republican | R+20.6 |
| Davidson County, NC | Republican | R+41.8 |
| Davie County, NC | Republican | R+48.8 |
| Duplin County, NC | Republican | R+16.2 |
| Durham County, NC | Democratic | D+36.4 |
| Edgecombe County, NC | Democratic | D+22.4 |
| Forsyth County, NC | Republican | R+8.6 |
| Franklin County, NC | Republican | R+10.8 |
| Gaston County, NC | Republican | R+36.1 |
| Gates County, NC | Democratic | D+4.9 |
| Graham County, NC | Republican | R+35.6 |
| Granville County, NC | Republican | R+2.3 |
| Greene County, NC | Republican | R+17.5 |
| Guilford County, NC | Democratic | D+0.9 |
| Halifax County, NC | Democratic | D+17.5 |
| Harnett County, NC | Republican | R+28.7 |
| Haywood County, NC | Republican | R+12.8 |
| Henderson County, NC | Republican | R+30.1 |
| Hertford County, NC | Democratic | D+27.0 |
| Hoke County, NC | Democratic | D+4.8 |
| Hyde County, NC | Republican | R+8.2 |
| Iredell County, NC | Republican | R+36.2 |
| Jackson County, NC | Republican | R+4.3 |
| Johnston County, NC | Republican | R+36.1 |
| Jones County, NC | Republican | R+15.8 |
| Lee County, NC | Republican | R+21.4 |
| Lenoir County, NC | Republican | R+11.8 |
| Lincoln County, NC | Republican | R+35.9 |
| Macon County, NC | Republican | R+26.4 |
| Madison County, NC | Republican | R+9.9 |
| Martin County, NC | Republican | R+2.2 |
| McDowell County, NC | Republican | R+32.9 |
| Mecklenburg County, NC | Democratic | D+3.6 |
| Mitchell County, NC | Republican | R+46.2 |
| Montgomery County, NC | Republican | R+14.2 |
| Moore County, NC | Republican | R+29.1 |
| Nash County, NC | Republican | R+16.5 |
| New Hanover County, NC | Republican | R+12.0 |
| Northampton County, NC | Democratic | D+27.5 |
| Onslow County, NC | Republican | R+39.3 |
| Orange County, NC | Democratic | D+34.5 |
| Pamlico County, NC | Republican | R+22.3 |
| Pasquotank County, NC | Democratic | D+2.7 |
| Pender County, NC | Republican | R+17.8 |
| Perquimans County, NC | Republican | R+20.0 |
| Person County, NC | Republican | R+18.2 |
| Pitt County, NC | Republican | R+6.8 |
| Polk County, NC | Republican | R+15.0 |
| Randolph County, NC | Republican | R+48.7 |
| Richmond County, NC | Democratic | D+4.2 |
| Robeson County, NC | Democratic | D+5.8 |
| Rockingham County, NC | Republican | R+22.5 |
| Rowan County, NC | Republican | R+35.1 |
| Rutherford County, NC | Republican | R+33.1 |
| Sampson County, NC | Republican | R+13.2 |
| Scotland County, NC | Democratic | D+10.8 |
| Stanly County, NC | Republican | R+39.8 |
| Stokes County, NC | Republican | R+40.3 |
| Surry County, NC | Republican | R+35.7 |
| Swain County, NC | Republican | R+3.4 |
| Transylvania County, NC | Republican | R+21.1 |
| Tyrrell County, NC | Republican | R+7.8 |
| Union County, NC | Republican | R+40.7 |
| Vance County, NC | Democratic | D+12.0 |
| Wake County, NC | Republican | R+2.1 |
| Warren County, NC | Democratic | D+29.0 |
| Washington County, NC | Democratic | D+8.9 |
| Watauga County, NC | Republican | R+5.9 |
| Wayne County, NC | Republican | R+24.5 |
| Wilkes County, NC | Republican | R+41.7 |
| Wilson County, NC | Republican | R+6.7 |
| Yadkin County, NC | Republican | R+54.6 |
| Yancey County, NC | Republican | R+5.4 |
complete certified result
North Carolina candidate results
Top three shown first · expand for every reported candidate and write-in category
Source: MIT Election Data + Science Lab — U.S. President 1976–2024 state candidate returns
Nominees: John Kerry (D) · George W. Bush (R)
North Carolina's presidential margins
1892–2024, the 2004 contest in context
| Year | Margin (D minus R) |
|---|---|
| 1892 | +11.6% |
| 1896 | +5.8% |
| 1900 | +8.5% |
| 1904 | +20.1% |
| 1908 | +8.7% |
| 1912 | +47.3% |
| 1916 | +16.4% |
| 1920 | +13.5% |
| 1924 | +19.4% |
| 1928 | −9.9% |
| 1932 | +40.6% |
| 1936 | +46.8% |
| 1940 | +48.1% |
| 1944 | +33.4% |
| 1948 | +25.3% |
| 1952 | +7.8% |
| 1956 | +1.3% |
| 1960 | +4.2% |
| 1964 | +12.3% |
| 1968 | −10.3% |
| 1972 | −40.6% |
| 1976 | +11.0% |
| 1980 | −2.1% |
| 1984 | −24.0% |
| 1988 | −16.3% |
| 1992 | −0.8% |
| 1996 | −4.7% |
| 2000 | −12.8% |
| 2004 | −12.4% |
| 2008 | +0.3% |
| 2012 | −2.0% |
| 2016 | −3.7% |
| 2020 | −1.3% |
| 2024 | −3.2% |
County-by-county results — 100 counties
| County | Won | Margin | Democratic | Republican | Total |
|---|---|---|---|---|---|
| Alamance County | R | 20,686 | 33,302 | 54,175 | |
| Alexander County | R | 4,618 | 10,928 | 15,600 | |
| Alleghany County | R | 1,922 | 2,883 | 4,827 | |
| Anson County | D | 5,413 | 3,796 | 9,225 | |
| Ashe County | R | 4,477 | 7,292 | 11,823 | |
| Avery County | R | 1,805 | 5,678 | 7,524 | |
| Beaufort County | R | 7,025 | 12,432 | 19,522 | |
| Bertie County | D | 4,938 | 3,057 | 8,032 | |
| Bladen County | R | 6,109 | 6,174 | 12,313 | |
| Brunswick County | R | 14,903 | 22,925 | 37,977 | |
| Buncombe County | R | 51,868 | 52,491 | 105,013 | |
| Burke County | R | 11,728 | 18,922 | 30,762 | |
| Cabarrus County | R | 19,803 | 40,780 | 60,824 | |
| Caldwell County | R | 9,999 | 21,186 | 31,348 | |
| Camden County | R | 1,339 | 2,480 | 3,830 | |
| Carteret County | R | 7,732 | 17,716 | 25,575 | |
| Caswell County | R | 4,539 | 4,868 | 9,437 | |
| Catawba County | R | 18,858 | 39,602 | 58,688 | |
| Chatham County | D | 12,897 | 12,892 | 25,922 | |
| Cherokee County | R | 3,635 | 7,517 | 11,199 | |
| Chowan County | R | 2,406 | 2,967 | 5,386 | |
| Clay County | R | 1,628 | 3,209 | 4,866 | |
| Cleveland County | R | 14,215 | 22,750 | 37,079 | |
| Columbus County | R | 10,343 | 10,773 | 21,191 | |
| Craven County | R | 14,019 | 23,575 | 37,756 | |
| Cumberland County | R | 45,788 | 49,139 | 95,226 | |
| Currituck County | R | 2,909 | 6,013 | 8,976 | |
| Dare County | R | 6,136 | 9,345 | 15,548 | |
| Davidson County | R | 17,191 | 42,075 | 59,496 | |
| Davie County | R | 4,233 | 12,372 | 16,680 | |
| Duplin County | R | 6,923 | 9,611 | 16,583 | |
| Durham County | D | 74,524 | 34,614 | 109,651 | |
| Edgecombe County | D | 12,877 | 8,163 | 21,079 | |
| Forsyth County | R | 63,340 | 75,294 | 139,125 | |
| Franklin County | R | 9,286 | 11,540 | 20,918 | |
| Gaston County | R | 20,254 | 43,252 | 63,755 | |
| Gates County | D | 2,121 | 1,924 | 4,053 | |
| Graham County | R | 1,272 | 2,693 | 3,987 | |
| Granville County | R | 9,057 | 9,491 | 18,601 | |
| Greene County | R | 2,665 | 3,800 | 6,472 | |
| Guilford County | D | 100,042 | 98,254 | 199,314 | |
| Halifax County | D | 11,528 | 8,088 | 19,647 | |
| Harnett County | R | 11,563 | 20,922 | 32,571 | |
| Haywood County | R | 11,237 | 14,545 | 25,932 | |
| Henderson County | R | 15,003 | 28,025 | 43,234 | |
| Hertford County | D | 5,141 | 2,942 | 8,132 | |
| Hoke County | D | 5,794 | 5,257 | 11,088 | |
| Hyde County | R | 1,048 | 1,235 | 2,293 | |
| Iredell County | R | 18,065 | 38,675 | 56,973 | |
| Jackson County | R | 6,737 | 7,351 | 14,174 | |
| Johnston County | R | 17,266 | 36,903 | 54,357 | |
| Jones County | R | 1,893 | 2,607 | 4,513 | |
| Lee County | R | 7,657 | 11,834 | 19,543 | |
| Lenoir County | R | 10,207 | 12,939 | 23,179 | |
| Lincoln County | R | 9,434 | 20,052 | 29,579 | |
| Macon County | R | 5,489 | 9,448 | 15,024 | |
| Madison County | R | 4,234 | 5,175 | 9,463 | |
| Martin County | R | 5,102 | 5,334 | 10,452 | |
| McDowell County | R | 5,330 | 10,590 | 16,002 | |
| Mecklenburg County | D | 166,828 | 155,084 | 323,102 | |
| Mitchell County | R | 2,080 | 5,686 | 7,798 | |
| Montgomery County | R | 4,313 | 5,745 | 10,080 | |
| Moore County | R | 13,555 | 24,714 | 38,382 | |
| Nash County | R | 15,693 | 21,902 | 37,673 | |
| New Hanover County | R | 35,572 | 45,351 | 81,247 | |
| Northampton County | D | 5,584 | 3,176 | 8,770 | |
| Onslow County | R | 11,250 | 25,890 | 37,277 | |
| Orange County | D | 42,910 | 20,771 | 64,153 | |
| Pamlico County | R | 2,335 | 3,679 | 6,038 | |
| Pasquotank County | D | 6,984 | 6,609 | 13,648 | |
| Pender County | R | 6,999 | 10,037 | 17,085 | |
| Perquimans County | R | 1,971 | 2,965 | 4,958 | |
| Person County | R | 6,198 | 8,973 | 15,214 | |
| Pitt County | R | 24,924 | 28,590 | 53,643 | |
| Polk County | R | 3,787 | 5,140 | 9,021 | |
| Randolph County | R | 12,966 | 37,771 | 50,910 | |
| Richmond County | D | 8,383 | 7,709 | 16,145 | |
| Robeson County | D | 17,868 | 15,909 | 33,871 | |
| Rockingham County | R | 14,430 | 22,840 | 37,388 | |
| Rowan County | R | 16,735 | 34,915 | 51,867 | |
| Rutherford County | R | 8,184 | 16,343 | 24,658 | |
| Sampson County | R | 9,649 | 12,600 | 22,288 | |
| Scotland County | D | 6,386 | 5,141 | 11,547 | |
| Stanly County | R | 7,650 | 17,814 | 25,553 | |
| Stokes County | R | 5,767 | 13,583 | 19,414 | |
| Surry County | R | 8,304 | 17,587 | 25,992 | |
| Swain County | R | 2,419 | 2,593 | 5,044 | |
| Transylvania County | R | 6,097 | 9,386 | 15,588 | |
| Tyrrell County | R | 731 | 855 | 1,590 | |
| Union County | R | 17,974 | 42,820 | 61,001 | |
| Vance County | D | 8,762 | 6,884 | 15,677 | |
| Wake County | R | 169,909 | 177,324 | 348,844 | |
| Warren County | D | 5,171 | 2,840 | 8,027 | |
| Washington County | D | 2,969 | 2,484 | 5,471 | |
| Watauga County | R | 11,232 | 12,659 | 24,050 | |
| Wayne County | R | 15,076 | 24,883 | 40,046 | |
| Wilkes County | R | 7,862 | 19,197 | 27,154 | |
| Wilson County | R | 14,206 | 16,264 | 30,535 | |
| Yadkin County | R | 3,451 | 11,816 | 15,313 | |
| Yancey County | R | 4,434 | 4,940 | 9,431 |
Same ballot, 2004NC
Source. MIT Election Data + Science Lab — 2004 presidential returns · official county-level results. Real returns — nothing estimated.