# Heilbronn (electoral district)

Heilbronn is an electoral constituency (German: Wahlkreis) represented in the Bundestag. It elects one member via first-past-the-post voting. Under the current constituency numbering system, it is designated as constituency 267. It is located in northern Baden-Württemberg, comprising the city of Heilbronn and the northern part of the Landkreis Heilbronn district.
Heilbronn was created for the inaugural 1949 federal election. Since 2017, it has been represented by Alexander Throm of the Christian Democratic Union (CDU).

## Geography

Heilbronn is located in northern Baden-Württemberg. As of the 2021 federal election, it comprises the independent city of Heilbronn and the municipalities of Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot from the Landkreis Heilbronn district.

## History

Heilbronn was created in 1949. In the 1949 election, it was Württemberg-Baden Landesbezirk Württemberg constituency 4 in the numbering system. In the 1953 through 1961 elections, it was number 166. In the 1965 through 1976 elections, it was number 168. In the 1980 through 1998 elections, it was number 171. In the 2002 and 2005 elections, it was number 268. Since the 2009 election, it has been number 267.
Originally, the constituency comprised the independent city of Heilbronn and the district of Landkreis Heilbronn. In the 1976 election, it comprised the city of Heilbronn and the southern part of the Landkreis Heilbronn district. It acquired its current borders in the 1980 election.
| Election | No. | Name | Borders |
| 1949 | 4 | Heilbronn | Heilbronn city Landkreis Heilbronn district |
| 1953 | 166 | Heilbronn | Heilbronn city Landkreis Heilbronn district |
| 1957 | 166 | Heilbronn | Heilbronn city Landkreis Heilbronn district |
| 1961 | 166 | Heilbronn | Heilbronn city Landkreis Heilbronn district |
| 1965 | 168 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only southern parts) |
| 1969 | 168 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only southern parts) |
| 1972 | 168 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only southern parts) |
| 1976 | 168 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only northern parts) |
| 1980 | 171 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 1983 | 171 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 1987 | 171 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 1990 | 171 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 1994 | 171 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 1998 | 171 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2002 | 268 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2005 | 268 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2009 | 267 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2013 | 267 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2017 | 267 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2021 | 267 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |
| 2025 | 267 | Heilbronn | Heilbronn city Landkreis Heilbronn district (only Bad Friedrichshall, Bad Rappenau, Bad Wimpfen, Eberstadt, Ellhofen, Eppingen, Erlenbach, Gemmingen, Gundelsheim, Hardthausen am Kocher, Ittlingen, Jagsthausen, Kirchardt, Langenbrettach, Lehrensteinsfeld, Löwenstein, Massenbachhausen, Möckmühl, Neckarsulm, Neudenau, Neuenstadt am Kocher, Obersulm, Oedheim, Offenau, Roigheim, Schwaigern, Siegelsbach, Untereisesheim, Weinsberg, Widdern, and Wüstenrot municipalities) |

## Members

The constituency was first represented by Georg Kohl of the Free Democratic Party (FDP) from 1949 until his death in 1952. He was succeeded by fellow FDP member Adolf Mauk in a by-election. Mauk was re-elected in 1953 federal election. Karl Simpfendörfer of the Christian Democratic Union (CDU) won the constituency in 1957. Helmut Bazille of the Social Democratic Party (SPD) was elected in 1961 and served until 1969, when he was succeeded by fellow SPD member Erhard Eppler from 1969 to 1976. Egon Susset of the CDU was then representative from 1976 to 1998, followed by Thomas Strobl from 1998 to 2017. Alexander Throm was elected in 2017 and re-elected in 2021.
| Election | Member | Party | % |
| 1949 | Georg Kohl | FDP | 28.2 |
| 1952 | Adolf Mauk | FDP | 60.3 |
| 1953 | Adolf Mauk | FDP | 32.6 |
| 1957 | Karl Simpfendörfer | CDU | 35.2 |
| 1961 | Helmut Bazille | SPD | 38.5 |
| 1965 | Helmut Bazille | SPD | 38.1 |
| 1969 | Erhard Eppler | SPD | 46.9 |
| 1972 | Erhard Eppler | SPD | 50.5 |
| 1976 | Egon Susset | CDU | 47.8 |
| 1980 | Egon Susset | CDU | 46.3 |
| 1983 | Egon Susset | CDU | 52.4 |
| 1987 | Egon Susset | CDU | 46.8 |
| 1990 | Egon Susset | CDU | 46.9 |
| 1994 | Egon Susset | CDU | 45.1 |
| 1998 | Thomas Strobl | CDU | 43.8 |
| 2002 | Thomas Strobl | CDU | 49.2 |
| 2005 | Thomas Strobl | CDU | 50.3 |
| 2009 | Thomas Strobl | CDU | 44.2 |
| 2013 | Thomas Strobl | CDU | 51.4 |
| 2017 | Alexander Throm | CDU | 35.3 |
| 2021 | Alexander Throm | CDU | 27.8 |
| 2025 | Alexander Throm | CDU | 35.0 |

## Election results
### 2025 election

Federal election (2025): Heilbronn :
| Notes: | Notes: | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. |
| Party | Party | Candidate | Candidate | Votes | % | ±% | Party votes | % | ±% |
| | CDU | Y Alexander Throm | Y Alexander Throm | 67,516 | 35.0 | 7.2 | 56,936 | 29.4 | 5.5 |
| | AfD | Jürgen Kögel | Jürgen Kögel | 48,360 | 25.1 | 12.3 | 49,239 | 25.5 | 12.3 |
| | SPD | Jens Schäfer | Jens Schäfer | 29,914 | 15.5 | 8.8 | 27,713 | 14.3 | 8.3 |
| | Greens | Jonathan Ebert | Jonathan Ebert | 16,637 | 8.6 | 4.1 | 18,307 | 9.5 | 3.5 |
| | Left | Andreas Mössinger | Andreas Mössinger | 11,484 | 6.0 | 3.6 | 11.923 | 6.2 | 3.3 |
| | FW | Jacqueline Plath | Jacqueline Plath | 4,328 | 2.2 | 0.3 | 2,649 | 1.4 | 0.4 |
| | FDP | Michael Link | Michael Link | 9,853 | 5.1 | 8.6 | 12,027 | 6.2 | 10.0 |
| | dieBasis | Alexander Staengle | Alexander Staengle | 1,915 | 1.0 | 0.9 | 1,003 | 0.5 | 1.1 |
| | Tierschutzpartei | | | | | | 1,977 | 1.0 | 0.1 |
| | PARTEI | | | | | 1.7 | 927 | 0.5 | 0.6 |
| | Team Todenhöfer | | | | | | | | 0.6 |
| | Pirates | | | | | | | | 0.2 |
| | Volt | Patrick Fischer | Patrick Fischer | 1,99 | 1.0 | | 1,239 | 0.6 | 0.3 |
| | ÖDP | | | | | | 370 | 0.2 | 0.1 |
| | Bündnis C | | | | | | 359 | 0.2 | 0.1 |
| | BD | | | | | | 304 | 0.2 | |
| | Humanists | | | | | 0.3 | | | 0.2 |
| | Gesundheitsforschung | | | | | | | | 0.1 |
| | Bürgerbewegung | | | | | | | | 0.5 |
| | BSW | | | | | | 8,391 | 4.3 | |
| | MLPD | Peter Rügner | Peter Rügner | 313 | 0.2 | 0.0 | 86 | 0.0 | 0.0 |
| Informal votes | Informal votes | Informal votes | Informal votes | 1,705 | | | 1,256 | | |
| Total valid votes | Total valid votes | Total valid votes | Total valid votes | 193,001 | | | 193,450 | | |
| Turnout | Turnout | Turnout | Turnout | 194,706 | 81.6 | 5.7 | | | |
| | CDU hold | CDU hold | Majority | | | 7.2 | | | |

### 2021 election

Federal election (2021): Heilbronn :
| Notes: | Notes: | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. |
| Party | Party | Candidate | Candidate | Votes | % | ±% | Party votes | % | ±% |
| | CDU | Y Alexander Throm | Y Alexander Throm | 50,299 | 27.8 | 7.5 | 43,325 | 23.9 | 8.1 |
| | SPD | Josip Juratovic | Josip Juratovic | 43,887 | 24.3 | 1.1 | 40,961 | 22.6 | 4.9 |
| | FDP | Michael Georg Link | Michael Georg Link | 24,748 | 13.7 | 4.1 | 29,386 | 16.2 | 3.2 |
| | AfD | Franziska Gminder | Franziska Gminder | 23,093 | 12.8 | 2.8 | 23,828 | 13.2 | 3.3 |
| | Greens | Isabell Steidel | Isabell Steidel | 23,018 | 12.7 | 4.6 | 23,476 | 13.0 | 2.6 |
| | FW | Uwe Basler | Uwe Basler | 4,595 | 2.5 | 1.5 | 3,278 | 1.8 | 1.1 |
| | Left | Konrad Wanner | Konrad Wanner | 4,237 | 2.3 | 2.3 | 5,137 | 2.8 | 2.9 |
| | dieBasis | Dirk Piper | Dirk Piper | 3,354 | 1.9 | | 2,857 | 1.6 | |
| | Tierschutzpartei | | | | | | 2,076 | 1.1 | 0.5 |
| | PARTEI | Milena Götz | Milena Götz | 2,988 | 1.7 | 0.5 | 2,041 | 1.1 | 0.3 |
| | Team Todenhöfer | | | | | | 1,145 | 0.6 | |
| | Pirates | | | | | | 605 | 0.3 | 0.1 |
| | Volt | | | | | | 529 | 0.3 | |
| | ÖDP | | | | | | 527 | 0.3 | 0.1 |
| | Bündnis C | | | | | | 437 | 0.2 | |
| | NPD | | | | | | 314 | 0.2 | 0.3 |
| | Humanists | Markus Schneider | Markus Schneider | 497 | 0.3 | | 272 | 0.1 | |
| | Gesundheitsforschung | | | | | | 250 | 0.1 | |
| | Bürgerbewegung | | | | | | 217 | 0.1 | |
| | DiB | | | | | | 140 | 0.1 | 0.0 |
| | MLPD | Peter Rügner | Peter Rügner | 225 | 0.1 | 0.0 | 106 | 0.1 | 0.0 |
| | Bündnis 21 | | | | | | 73 | 0.0 | |
| | LKR | | | | | | 46 | 0.0 | |
| | DKP | | | | | | 28 | 0.0 | 0.0 |
| Informal votes | Informal votes | Informal votes | Informal votes | 1,863 | | | 1,749 | | |
| Total valid votes | Total valid votes | Total valid votes | Total valid votes | 180,941 | | | 181,055 | | |
| Turnout | Turnout | Turnout | Turnout | 182,804 | 75.9 | 0.7 | | | |
| | CDU hold | CDU hold | Majority | 6,412 | 3.5 | 8.6 | | | |

### 2017 election

Federal election (2017): Heilbronn :
| Notes: | Notes: | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. |
| Party | Party | Candidate | Candidate | Votes | % | ±% | Party votes | % | ±% |
| | CDU | Alexander Throm | Alexander Throm | 64,591 | 35.3 | 16.1 | 58,755 | 32.1 | 13.7 |
| | SPD | Josip Juratovic | Josip Juratovic | 42,455 | 23.2 | 3.9 | 32,489 | 17.7 | 4.4 |
| | AfD | Jürgen Kögel | Jürgen Kögel | 28,575 | 15.6 | | 30,089 | 16.4 | 11.0 |
| | FDP | Michael Georg Link | Michael Georg Link | 17,566 | 9.6 | 6.0 | 23,872 | 13.0 | 6.7 |
| | Greens | Thomas Fick | Thomas Fick | 14,920 | 8.1 | 0.7 | 19,016 | 10.4 | 1.8 |
| | Left | Konrad Wanner | Konrad Wanner | 8,448 | 4.6 | 0.2 | 10,520 | 5.7 | 1.0 |
| | PARTEI | Niclas Keicher | Niclas Keicher | 2,167 | 1.2 | | 1,530 | 0.8 | |
| | FW | Alfred Burkhardt | Alfred Burkhardt | 1,896 | 1.0 | | 1,281 | 0.7 | 0.2 |
| | Tierschutzpartei | | | | | | 1,236 | 0.7 | 0.1 |
| | NPD | | | | | | 835 | 0.5 | 1.1 |
| | ÖDP | Bernhard Keil | Bernhard Keil | 1,210 | 0.7 | 0.2 | 758 | 0.4 | 0.0 |
| | Pirates | | | | | | 728 | 0.4 | 1.8 |
| | DM | | | | | | 470 | 0.3 | |
| | Tierschutzallianz | | | | | | 442 | 0.2 | |
| | Independent | Werner Marquardt | Werner Marquardt | 405 | 0.2 | | | | |
| | Independent | Eduard Martin | Eduard Martin | 327 | 0.2 | | | | |
| | Menschliche Welt | | | | | | 271 | 0.1 | |
| | V-Partei³ | | | | | | 226 | 0.1 | |
| | DiB | | | | | | 222 | 0.1 | |
| | BGE | | | | | | 200 | 0.1 | |
| | MLPD | Rita Renner | Rita Renner | 302 | 0.2 | 0.1 | 181 | 0.1 | 0.0 |
| | DIE RECHTE | Sascha Krolzig | Sascha Krolzig | 248 | 0.1 | | 141 | 0.1 | |
| | DKP | | | | | | 24 | 0.0 | |
| Informal votes | Informal votes | Informal votes | Informal votes | 2,595 | | | 2,419 | | |
| Total valid votes | Total valid votes | Total valid votes | Total valid votes | 183,110 | | | 183,286 | | |
| Turnout | Turnout | Turnout | Turnout | 185,705 | 76.6 | 4.7 | | | |
| | CDU hold | CDU hold | Majority | 22,136 | 12.1 | 12.2 | | | |

### 2013 election

Federal election (2013): Heilbronn :
| Notes: | Notes: | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. |
| Party | Party | Candidate | Candidate | Votes | % | ±% | Party votes | % | ±% |
| | CDU | Y Thomas Strobl | Y Thomas Strobl | 87,777 | 51.4 | 7.1 | 78,544 | 45.8 | 10.9 |
| | SPD | Josip Juratovic | Josip Juratovic | 46,231 | 27.1 | 2.0 | 37,933 | 22.1 | 0.9 |
| | Greens | Ulrich Schneider | Ulrich Schneider | 12,771 | 7.5 | 1.3 | 14,662 | 8.5 | 1.6 |
| | Left | Heinz Deininger | Heinz Deininger | 7,554 | 4.4 | 2.0 | 8,138 | 4.7 | 2.6 |
| | FDP | Michael Georg Link | Michael Georg Link | 6,178 | 3.6 | 8.4 | 10,927 | 6.4 | 12.8 |
| | AfD | | | | | | 9,271 | 5.4 | |
| | Pirates | Remy Patzelt | Remy Patzelt | 4,599 | 2.7 | | 3,789 | 2.2 | 0.3 |
| | NPD | Matthias Brodbeck | Matthias Brodbeck | 3,905 | 2.3 | 0.1 | 2,672 | 1.6 | 0.0 |
| | Tierschutzpartei | | | | | | 1,250 | 0.7 | 0.0 |
| | FW | | | | | | 771 | 0.4 | |
| | ÖDP | Guido Klamt | Guido Klamt | 1,469 | 0.9 | 0.1 | 731 | 0.4 | 0.2 |
| | REP | | | | | | 715 | 0.4 | 0.7 |
| | RENTNER | | | | | | 544 | 0.3 | |
| | PBC | | | | | | 432 | 0.3 | 0.3 |
| | BIG | | | | | | 322 | 0.2 | |
| | Volksabstimmung | | | | | | 308 | 0.2 | 0.0 |
| | PRO | | | | | | 261 | 0.2 | |
| | Party of Reason | | | | | | 166 | 0.1 | |
| | MLPD | Peter Rügner | Peter Rügner | 403 | 0.2 | 0.0 | 126 | 0.1 | 0.0 |
| | BüSo | | | | | | 28 | 0.0 | 0.0 |
| Informal votes | Informal votes | Informal votes | Informal votes | 2,885 | | | 2,182 | | |
| Total valid votes | Total valid votes | Total valid votes | Total valid votes | 170,887 | | | 171,590 | | |
| Turnout | Turnout | Turnout | Turnout | 173,772 | 71.9 | 1.8 | | | |
| | CDU hold | CDU hold | Majority | 41,546 | 24.3 | 5.1 | | | |

### 2009 election

Federal election (2009): Heilbronn :
| Notes: | Notes: | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. | Blue background denotes the winner of the electorate vote. Pink background denotes a candidate elected from their party list. Yellow background denotes an electorate win by a list member, or other incumbent. A Y or N denotes status of any incumbent, win or lose respectively. |
| Party | Party | Candidate | Candidate | Votes | % | ±% | Party votes | % | ±% |
| | CDU | Y Thomas Strobl | Y Thomas Strobl | 73,308 | 44.2 | 6.1 | 57,889 | 34.8 | 4.7 |
| | SPD | Josip Juratovic | Josip Juratovic | 41,484 | 25.0 | 8.6 | 35,331 | 21.3 | 11.1 |
| | FDP | Michael Georg Link | Michael Georg Link | 19,924 | 12.0 | 7.6 | 31,932 | 19.2 | 7.6 |
| | Greens | Ulrich Schneider | Ulrich Schneider | 14,594 | 8.8 | 3.2 | 16,917 | 10.2 | 2.7 |
| | Left | Hasso Ehinger | Hasso Ehinger | 10,693 | 6.5 | 3.1 | 12,256 | 7.4 | 3.5 |
| | Pirates | | | | | | 3,246 | 2.0 | |
| | NPD | Alexander Scholl | Alexander Scholl | 3,657 | 2.2 | 0.1 | 2,622 | 1.6 | 0.1 |
| | REP | | | | | | 1,853 | 1.1 | 0.3 |
| | Tierschutzpartei | | | | | | 1,131 | 0.7 | |
| | ÖDP | Rainer Graf | Rainer Graf | 1,656 | 1.0 | | 1,040 | 0.6 | |
| | PBC | | | | | | 912 | 0.5 | 0.0 |
| | Volksabstimmung | | | | | | 358 | 0.2 | |
| | DIE VIOLETTEN | | | | | | 264 | 0.2 | |
| | MLPD | Peter Rügner | Peter Rügner | 372 | 0.2 | 0.1 | 186 | 0.1 | 0.0 |
| | DVU | | | | | | 160 | 0.1 | |
| | BüSo | | | | | | 70 | 0.0 | 0.0 |
| | ADM | | | | | | 62 | 0.0 | |
| Informal votes | Informal votes | Informal votes | Informal votes | 3,239 | | | 2,698 | | |
| Total valid votes | Total valid votes | Total valid votes | Total valid votes | 165,688 | | | 166,229 | | |
| Turnout | Turnout | Turnout | Turnout | 168,927 | 70.1 | 7.1 | | | |
| | CDU hold | CDU hold | Majority | 31,824 | 19.2 | 2.5 | | | |