2003–04 Borussia Dortmund season

During the 2003–04 German football season, Borussia Dortmund competed in the Bundesliga.

Season summary
Dortmund failed to qualify for the Champions League group stage, and followed that up with a disappointing sixth-place finish in the Bundesliga. The club's poor form was mainly a result of playmaker Tomáš Rosický's absence through virtually half of the season. The poor form led to the dismissal of coach Matthias Sammer, while the club's economy got ever more strained.

First-team squad

 * Squad at end of season

Matches

 * Schalke 04-Borussia Dortmund 2–2
 * 1–0 Hamit Altıntop ⚽ 40'
 * 2–0 Hamit Altıntop ⚽ 58'
 * 2–1 Flávio Conceição ⚽ 66'
 * 2–2 Márcio Amoroso ⚽ 90'
 * Borussia Dortmund-Wolfsburg 4–0
 * 1–0 Tomáš Rosický ⚽ 25'
 * 2–0 Tomáš Rosický ⚽ 51'
 * 3–0 Márcio Amoroso ⚽ 74'
 * 4–0 Jan Koller ⚽ 87'
 * Borussia Dortmund-1860 Munich 3–1
 * 1–0 Márcio Amoroso ⚽ 46'
 * 2–0 Márcio Amoroso ⚽ 56' (pen.)
 * 3–0 Jan Koller ⚽ 61'
 * 3–1 Francis Kioyo ⚽ 87'
 * Köln-Borussia Dortmund 1–0
 * 1–0 Dirk Lottner ⚽ 57'
 * Borussia Dortmund-Werder Bremen 2–1
 * 1–0 Ewerthon ⚽ 17'
 * 1–1 Krisztián Lisztes ⚽ 41'
 * 2–1 Valérien Ismaël ⚽ 70' (o.g.)
 * Stuttgart-Borussia Dortmund 1–0
 * 1–0 Kevin Kurányi ⚽ 67'
 * Borussia Dortmund-Freiburg 1–0
 * 1–0 Ewerthon ⚽ 68'
 * Eintracht Frankfurt-Borussia Dortmund 0–1
 * 0–1 Giuseppe Reina ⚽ 10'
 * Borussia Dortmund-Hannover 6–2
 * 1–0 Ewerthon ⚽ 35'
 * 2–0 Lars Ricken ⚽ 42'
 * 3–0 Sebastian Kehl ⚽ 56'
 * 3–1 Vinícius ⚽ 58'
 * 4–1 Jan Koller ⚽ 64'
 * 5–1 Ewerthon ⚽ 73'
 * 6–1 Ewerthon ⚽ 75'
 * 6–2 Denis Wolf ⚽ 85'
 * Bochum-Borussia Dortmund 3–0
 * 1–0 Vahid Hashemian ⚽ 7'
 * 2–0 Vahid Hashemian ⚽ 57'
 * 3–0 Sunday Oliseh ⚽ 79'
 * Borussia Dortmund-Hamburg 3–2
 * 0–1 David Jarolím ⚽ 14'
 * 0–2 Bernardo Romeo ⚽ 60'
 * 1–2 Jan Koller ⚽ 64'
 * 2–2 Jan Koller ⚽ 66' (pen.)
 * 3–2 Ewerthon ⚽ 69'
 * Bayern Munich-Borussia Dortmund 4–1
 * 1–0 Michael Ballack ⚽ 27'
 * 1–1 Jan Koller ⚽ 49'
 * 2–1 Willy Sagnol ⚽ 50'
 * 3–1 Hasan Salihamidžić ⚽ 72'
 * 4–1 Claudio Pizarro ⚽ 90'
 * Borussia Dortmund-Bayer Leverkusen 2–2
 * 1–0 Salvatore Gambino ⚽ 29'
 * 2–0 Salvatore Gambino ⚽ 32'
 * 2–1 Oliver Neuville ⚽ 35'
 * 2–2 Marko Babić ⚽ 77'
 * Hansa Rostock-Borussia Dortmund 2–1
 * 1–0 Martin Max ⚽ 54'
 * 1–1 Ewerthon ⚽ 66'
 * 2–1 Martin Max ⚽ 87'
 * Borussia Dortmund-Hertha Berlin 1–1
 * 1–0 Leandro ⚽ 69' (pen.)
 * 1–1 Alexander Madlung ⚽ 79'
 * Mönchengladbach-Borussia Dortmund 2–1
 * 1–0 Igor Demo ⚽ 11'
 * 1–1 Jan Koller ⚽ 12'
 * 2–1 Slađan Ašanin ⚽ 83'
 * Borussia Dortmund-Kaiserslautern 1–1
 * 1–0 Jan Koller ⚽ 45'
 * 1–1 Lincoln ⚽ 76'
 * Borussia Dortmund-Schalke 04 0–1
 * 0–1 Ebbe Sand ⚽ 89'
 * Wolfsburg-Borussia Dortmund 2–4
 * 1–0 Martin Petrov ⚽ 36'
 * 1–1 Niclas Jensen ⚽ 42'
 * 1–2 Jan Koller ⚽ 45'
 * 1–3 Torsten Frings ⚽ 53'
 * 1–4 Lars Ricken ⚽ 78'
 * 2–4 Fernando Baiano ⚽ 88'
 * 1860 Munich-Borussia Dortmund 0–2
 * 0–1 Ewerthon ⚽ 41' (pen.)
 * 0–2 Ewerthon ⚽ 59'
 * Borussia Dortmund-Köln 1–0
 * 1–0 Ewerthon ⚽ 26'
 * Werder Bremen-Borussia Dortmund 2–0
 * 1–0 Valérien Ismaël ⚽ 56'
 * 2–0 Aílton ⚽ 85'
 * Borussia Dortmund-Stuuttgart 0–2
 * 0–1 Alexander Hleb ⚽ 6'
 * 0–2 Horst Heldt ⚽ 81' (pen.)
 * Freiburg-Borussia Dortmund 2–2
 * 1–0 Roda Antar ⚽ 17'
 * 1–1 Dedê ⚽ 45'
 * 1–2 Lars Hermel ⚽ 58' (o.g.)
 * 2–2 Levan Tskitishvili ⚽ 67'
 * Borussia Dortmund-Eintracht Frankfurt 2–0
 * 1–0 Ewerthon ⚽ 24'
 * 2–0 Jan Koller ⚽ 80'
 * Hannover-Borussia Dortmund 1–1
 * 0–1 Torsten Frings ⚽ 13'
 * 1–1 Thomas Christiansen ⚽ 83' (pen.)
 * Borussia Dortmund-Bochum 4–1
 * 1–0 Jan Koller ⚽ 9'
 * 1–1 Peter Madsen ⚽ 14'
 * 2–1 Salvatore Gambino ⚽ 30'
 * 3–1 Torsten Frings ⚽ 45'
 * 4–1 Ewerthon ⚽ 53' (pen.)
 * Hamburg-Borussia Dortmund 0–2
 * 0–1 Torsten Frings ⚽ 8'
 * 0–2 Jan Koller ⚽ 28'
 * Borussia Dortmund-Bayern Munich 2–0
 * 1–0 Ewerthon ⚽ 55'
 * 2–0 Christian Wörns ⚽ 61'
 * Bayer Leverkusen-Borussia Dortmund 3–0
 * 1–0 Marko Babić ⚽ 6'
 * 2–0 França ⚽ 22'
 * 3–0 Dimitar Berbatov ⚽ 54' (pen.)
 * Borussia Dortmund-Hansa Rostock 4–1
 * 1–0 Ahmed Reda Madouni ⚽ 11'
 * 2–0 Ewerthon ⚽ 35'
 * 3–0 Jan Koller ⚽ 38'
 * 3–1 Martin Max ⚽ 66'
 * 4–1 David Odonkor ⚽ 75'
 * Hertha Berlin-Borussia Dortmund 6–2
 * 1–0 Sebastian Kehl ⚽ 7' (o.g.)
 * 2–0 Marcelinho ⚽ 20'
 * 3–0 Fredi Bobič ⚽ 37'
 * 3–1 Ewerthon ⚽ 52'
 * 4–1 Artur Wichniarek ⚽ 58'
 * 4–2 Ewerthon ⚽ 80'
 * 5–2 Andreas Neuendorf ⚽ 86'
 * 6–2 Nando Rafael ⚽ 90'
 * Borussia Dortmund-Mönchengladbach 3–1
 * 0–1 Ivo Ulich ⚽ 10'
 * 1–1 Ewerthon ⚽ 15'
 * 2–1 Dedê ⚽ 45'
 * 3–1 Jan Koller ⚽ 83'
 * Kaiserslautern-Borussia Dortmund 1–1
 * 1–0 Vratislav Lokvenc ⚽ 6'
 * 1–1 Jan Koller ⚽ 71'

First round

 * Dortmund 2-1 Austria Wien
 * Austria Wein 0-1 Dortmund

Second round

 * Dortmund 2-2 Sochaux
 * Sochaux 4-0 Dortmund

Bundesliga

 * 🇧🇷 Ewerthon 16
 * 🇨🇿 Jan Koller 16
 * 🇩🇪 Torsten Frings 4
 * 🇧🇷 Márcio Amoroso 4
 * 🇮🇹 Salvatore Gambino