An election was held on November 6, 2018, to elect all 120 members to North Carolina's House of Representatives. The election coincided with the elections for other offices, including U.S. House of Representatives and State Senate. The primary election was held on May 8, 2018, with a runoff on June 26, 2018.
Republicans retained control of the House, despite losing the popular vote, but lost their three-fifths supermajority after a net loss of nine seats (compared to the results of the 2016 elections), winning 65 seats compared to 55 seats for the Democrats.
â - Incumbent not seeking re-election
Incumbent Republican Bob Steinburg had represented the 1st district since 2013. Steinburg retired to run for the 1st district in the State Senate. Republican Ed Goodwin won the open seat.
Incumbent Republican Larry Yarborough had represented the 2nd district since 2015.
Incumbent Republican Michael Speciale had represented the 3rd district since 2013.
Incumbent Republican Jimmy Dixon had represented the 4th district since 2011.
Incumbent Democratic Howard Hunter III had represented the 5th district since 2015.
Incumbent Republican Beverly Boswell lost the Republican primary to Bobby Hanig. Hanig won the general election.
Incumbent Democrat Bobbie Richardson had represented the 7th district since 2013. Richardson was defeated for re-election by Republican Lisa Stone Barnes.
Incumbent Republican Susan Martin had represented the 8th district since 2013. Martin did not seek re-election. Democrat Kandie Smith won the open seat.
Incumbent Republican Greg Murphy had represented the 9th district since 2015.
Incumbent Republican Majority Leader John Bell had represented the 10th district since 2013.
Incumbent Democrat Duane Hall had represented the 11th district since 2013. Hall lost re-nomination to fellow Democrat Allison Dahle. Dahle won the open seat.
Incumbent Democrat George Graham had represented the 12th district since 2013. He was defeated for re-election by Republican Chris Humphrey.
Incumbent Republican Pat McElraft had represented the 13th district since 2007.
Incumbent Republican George Cleveland had represented the 14th district since 2005.
Incumbent Republican Phil Shepard had represented the 15th district since 2011.
Incumbent Republican Bob Muller had represented the 16th district since 2017. Muller did not seek re-election. Republican Carson Smith won the open seat.
Incumbent Republican Frank Iler had represented the 17th district since 2009.
Incumbent Democrat Deb Butler had represented the 18th district since 2017.
Incumbent Republican Ted Davis Jr. had represented the 19th district since 2012.
Incumbent Republican Holly Grange had represented the 20th district since 2016.
Incumbent Democrat Larry Bell had represented the 21st district and its predecessors since 2001. Bell did not seek re-election and was succeeded by Raymond Smith Jr.
Incumbent Republican William Brisson had represented the 22nd district since 2007. In 2017, Brisson switched from the Democratic to Republican Party.
Incumbent Democrat Shelly Willingham had represented the 23rd district since 2015.
Incumbent Democrat Jean Farmer-Butterfield had represented the 24th district since 2003.
Incumbent Republican Jeff Collins had represented the 25th district since 2011. He did not seek re-election. Democrat James Gailliard won the open seat.
Incumbent Republican Donna McDowell White had represented the 26th district since 2017.
Incumbent Democrat Michael Wray had represented the 27th district since 2005.
Incumbent Republican Larry Strickland had represented the 28th district since 2017.
Incumbent Democrat MaryAnn Black had represented the 29th district since 2017.
Incumbent Democrat Marcia Morey had represented the 30th district since 2017.
Incumbent Democrat Mickey Michaux had represented the 31st district and its predecessors since 1983. Michaux did not seek re-election and was succeeded by Democrat Zack Forde-Hawkins.
Incumbent Democrat Terry Garrison had represented the 32nd district since 2017.
Incumbent Democrat Rosa Gill had represented the 33rd district since 2009.
Incumbent Democrat Grier Martin had represented the 34th district since 2013.
Incumbent Republican Chris Malone had represented the 35th district since 2013. Malone lost re-election to Democrat Terence Everitt.
Incumbent Republican Nelson Dollar had represented the 36th district since 2005. Dollar lost re-election to Democrat Julie von Haefen.
Incumbent Republican John Adcock had represented the 37th district since 2018. Adcock lost re-election to Democrat Sydney Batch.
Incumbent Democrat Yvonne Lewis Holley had represented the 38th district since 2013.
Incumbent Democratic Minority Leader Darren Jackson had represented the 39th district since 2009.
Incumbent Democrat Joe John had represented the 40th district since 2017.
Incumbent Democrat Gale Adcock had represented the 41st district since 2015.
Incumbent Democrat Marvin Lucas had represented the 42nd district since 2001.
Incumbent Democrat Elmer Floyd had represented the 43rd district since 2009.
Incumbent Democrat Billy Richardson had represented the 44th district since 2015.
Incumbent Republican John Szoka had represented the 45th district since 2013.
Incumbent Republican Brenden Jones had represented the 46th district since 2017.
Incumbent Democrat Charles Graham had represented the 47th district since 2011.
Incumbent Democrat Garland Pierce had represented the 48th district since 2005.
Incumbent Democrat Cynthia Ball had represented the 49th district since 2017.
Incumbent Democrat Graig Meyer had represented the 50th district since 2013.
Incumbent Republican John Sauls had represented the 51st district since 2017.
Incumbent Republican Jamie Boles had represented the 52nd district since 2009.
Incumbent Republican David Lewis had represented the 53rd district since 2003.
Incumbent Democrat Robert Reives had represented the 54th district since 2014.
Incumbent Republican Mark Brody had represented the 55th district since 2013.
Incumbent Democrat Verla Insko had represented the 56th district since 1997.
The new 57th district is an open seat in Guilford County which is expected to favor Democrats. Ashton Clemmons won the open seat.
Incumbent Democrat Amos Quick had represented the 58th district since 2017.
Incumbent Republican Jon Hardister had represented the 59th district since 2013.
Incumbent Democrat Cecil Brockman had represented the 60th district since 2015.
The new 61st district overlaps with much of the former 57th district. Incumbent Democrat Pricey Harrison, who had represented the 57th district since 2005, successfully sought re-election here.
The new 62nd district includes the homes of incumbent Republicans John Blust, who had represented the 62nd District since 2001, and John Faircloth, who had represented the 61st district since 2011. Blust retired while Faircloth successfully sought re-election here.
Incumbent Republican Stephen Ross had represented the 63rd district since 2013.
Incumbent Republican Dennis Riddell had represented the 64th district since 2013.
Incumbent Republican Bert Jones had represented the 65th district since 2011. Jones did not seek re-election. Republican Jerry Carter was elected to succeed him.
Incumbent Democrat Ken Goodman had represented the 66th district since 2011.
Incumbent Republican Justin Burr had represented the 67th district since 2009. Burr lost the Republican primary to Wayne Sasser. Sasser won the general election.
Incumbent Republican Craig Horn had represented the 68th district since 2011.
Incumbent Republican Dean Arp had represented the 69th district since 2013.
Incumbent Republican Pat Hurley had represented the 70th district since 2007.
Incumbent Democrat Evelyn Terry had represented the 71st district since 2013.
Incumbent Democrat Derwin Montgomery had represented the 72nd district since 2018.
Incumbent Republican Lee Zachary had represented the 73rd district since 2015.
Incumbent Republican Debra Conrad had represented the 74th district since 2013.
Incumbent Republican Donny Lambeth had represented the 75th district since 2013.
The new 76th district includes the homes of incumbent Republicans Carl Ford, who had represented the 76th District since 2013, and Harry Warren, who had represented the 77th district since 2011. Ford successfully sought election to State Senate District 33 while Warren successfully sought re-election here.
The new 77th district overlaps with much of the former 79th district. Incumbent Republican Julia Craven Howard, who had represented the 79th district and its predecessors since 1989, successfully sought re-election here.
Incumbent Republican Allen McNeill had represented the 78th district since 2012.
Following 2018 Redistricting, a new 79th district was created. The new district contains Beaufort and Craven counties and is expected to favor Republicans. Keith Kidwell won the open seat.
Incumbent Republican Sam Watford, who had represented the 80th district since 2015, ran for the State Senate. He was succeeded by Republican Steve Jarvis.
Incumbent Republican Larry Potts had represented the 81st district since 2017.
The new 82nd district overlaps with much of the former 83rd district. Incumbent Republican Linda Johnson, who had represented the 83rd district and its predecessors since 2001, was re-elected here.
The new 83rd district overlaps with much of the former 82nd district. Incumbent Republican Larry Pittman, who had represented the 82nd district since 2011, was re-elected here.
Incumbent Republican Rena Turner had represented the 84th district since 2013.
Incumbent Republican Josh Dobson had represented the 85th district since 2013.
Incumbent Republican Hugh Blackwell had represented the 86th district since 2009.
Incumbent Republican Destin Hall had represented the 87th district since 2017.
Incumbent Democrat Mary Belk had represented the 88th district since 2017.
Incumbent Republican Mitchell Setzer had represented the 89th district and its predecessors since 1999.
Incumbent Republican Sarah Stevens had represented the 90th district since 2009.
Incumbent Republican Kyle Hall had represented the 91st district since 2015.
Incumbent Democrat Chaz Beasley had represented the 92nd district since 2017.
Incumbent Republican Jonathan Jordan had represented the 93rd district since 2011. Jordan was defeated for re-election by Democrat Carl Ray Russell.
Incumbent Republican Jeffrey Elmore had represented the 94th district since 2013.
Incumbent Republican John Fraley had represented the 95th district since 2015.
Incumbent Republican Jay Adams had represented the 96th district since 2015.
Incumbent Republican Jason Saine had represented the 97th district since 2011.
Incumbent Republican John Bradford had represented the 98th district since 2015. Bradford was defeated for re-election by Democrat Christy Clark.
Incumbent Democrat Rodney Moore had represented the 99th district since 2011. Moore lost re-nomination to fellow Democrat Nasif Majeed. Majeed won the general election.
Incumbent Democrat John Autry had represented the 100th district since 2017.
Incumbent Democrat Beverly Earle had represented the 101st district and its predecessors since 1995. Earl did not seek re-election. Democrat Carolyn Logan won the open seat.
Incumbent Democrat Becky Carney had represented the 102nd district since 2003.
Incumbent Republican Bill Brawley had represented the 103rd district since 2011. Brawley lost re-election to Democrat Rachel Hunt.
Incumbent Republican Andy Dulin had represented the 104th district since 2017. Dulin lost re-election to Democrat Brandon Lofton.
Incumbent Republican Scott Stone had represented the 105th district since 2016. Stone was defeated for re-election by Democrat Wesley Harris.
Incumbent Democrat Carla Cunningham had represented the 106th district since 2013.
Incumbent Democrat Kelly Alexander had represented the 107th District since 2009.
Incumbent Republican John Torbett had represented the 108th district since 2011.
Incumbent Republican Dana Bumgardner had represented the 109th district since 2013.
Incumbent Republican Kelly Hastings had represented the 110th district since 2011.
Incumbent Republican Speaker of the House Tim Moore had represented the 111th district since 2003.
Incumbent Republican David Rogers had represented the 112th district since 2016.
Incumbent Republican Cody Henson had represented the 113th district since 2017.
Incumbent Democrat Susan Fisher had represented the 114th district since 2004.
Incumbent Democrat John Ager had represented the 115th district since 2015.
Incumbent Democrat Brian Turner had represented the 116th district since 2015.
Incumbent Republican Chuck McGrady had represented the 117th district since 2011.
Incumbent Republican Michele Presnell had represented the 118th district since 2013.
Incumbent Republican Mike Clampitt had represented the 119th district since 2017. In a rematch of the 2016 election, Clampitt was defeated by Democrat Joe Sam Queen.
Incumbent Republican Kevin Corbin had represented the 120th district since 2017.