The 2004 2. divisjon season was the third highest football (soccer) league for men in Norway.
26 games were played in 4 groups, with 3 points given for wins and 1 for draws. Tønsberg, Follo, Løv-Ham and Alta were promoted to the First Division. Number twelve, thirteen and fourteen were relegated to the 3. divisjon. The winning teams from each of the 24 groups in the 3. divisjon each faced a winning team from another group in a playoff match, resulting in 12 playoff winners which were promoted to the 2. divisjon.
League tables
Group 1
| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Promotion or relegation |
|---|
| 1 | FK Tønsberg (P) | 26 | 20 | 2 | 4 | 70 | 21 | +49 | 62 | Promotion to First Division |
| 2 | Sarpsborg Sparta | 26 | 16 | 4 | 6 | 63 | 38 | +25 | 52 | |
| 3 | Tollnes | 26 | 16 | 2 | 8 | 68 | 42 | +26 | 50 |
| 4 | Kvik Halden | 26 | 12 | 8 | 6 | 70 | 40 | +30 | 44 |
| 5 | Stabæk 2 (R) | 26 | 12 | 2 | 12 | 54 | 59 | −5 | 38 | Relegation to Third Division |
| 6 | Ørn-Horten | 26 | 11 | 4 | 11 | 52 | 65 | −13 | 37 | |
| 7 | Frigg | 26 | 10 | 6 | 10 | 50 | 34 | +16 | 36 |
| 8 | Larvik Fotball | 26 | 10 | 5 | 11 | 31 | 37 | −6 | 35 |
| 9 | Kjelsås | 26 | 9 | 7 | 10 | 38 | 39 | −1 | 34 |
| 10 | Odd Grenland 2 | 26 | 9 | 5 | 12 | 48 | 49 | −1 | 32 |
| 11 | Sprint-Jeløy | 26 | 8 | 5 | 13 | 52 | 68 | −16 | 29 |
| 12 | Mercantile | 26 | 7 | 7 | 12 | 36 | 55 | −19 | 28 |
| 13 | Arendal (R) | 26 | 6 | 3 | 17 | 31 | 67 | −36 | 21 | Relegation to Third Division |
| 14 | Donn (R) | 26 | 3 | 6 | 17 | 29 | 78 | −49 | 15 |
Group 2
| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Promotion or relegation |
|---|
| 1 | Follo (P) | 26 | 16 | 6 | 4 | 57 | 22 | +35 | 54 | Promotion to First Division |
| 2 | Lørenskog | 26 | 13 | 9 | 4 | 66 | 40 | +26 | 48 | |
| 3 | Lillestrøm 2 | 26 | 13 | 8 | 5 | 72 | 37 | +35 | 47 |
| 4 | Ullensaker/Kisa | 26 | 14 | 3 | 9 | 56 | 48 | +8 | 45 |
| 5 | Gjøvik-Lyn | 26 | 11 | 8 | 7 | 55 | 40 | +15 | 41 |
| 6 | Nybergsund | 26 | 10 | 9 | 7 | 43 | 35 | +8 | 39 |
| 7 | Oslo Øst | 26 | 10 | 4 | 12 | 45 | 48 | −3 | 34 |
| 8 | Drøbak/Frogn | 26 | 7 | 12 | 7 | 48 | 44 | +4 | 33 |
| 9 | Jotun Årdalstangen | 26 | 9 | 6 | 11 | 45 | 49 | −4 | 33 |
| 10 | Eidsvold Turn | 26 | 9 | 5 | 12 | 38 | 53 | −15 | 32 |
| 11 | Molde 2 | 26 | 6 | 11 | 9 | 52 | 60 | −8 | 29 |
| 12 | Nidelv (R) | 26 | 7 | 6 | 13 | 45 | 71 | −26 | 27 | Relegation to Third Division |
| 13 | Elverum (R) | 26 | 3 | 8 | 15 | 27 | 74 | −47 | 17 |
| 14 | Skjetten (R) | 26 | 3 | 7 | 16 | 37 | 65 | −28 | 16 |
Group 3
| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Promotion or relegation |
|---|
| 1 | Løv-Ham (P) | 26 | 22 | 3 | 1 | 86 | 27 | +59 | 69 | Promotion to First Division |
| 2 | Bærum | 26 | 17 | 2 | 7 | 75 | 31 | +44 | 53 | |
| 3 | Åsane | 26 | 13 | 3 | 10 | 52 | 37 | +15 | 42 |
| 4 | Viking 2 | 26 | 12 | 4 | 10 | 43 | 37 | +6 | 40 |
| 5 | Fyllingen | 26 | 12 | 2 | 12 | 56 | 59 | −3 | 38 |
| 6 | Fana | 26 | 10 | 8 | 8 | 48 | 57 | −9 | 38 |
| 7 | Klepp | 26 | 10 | 6 | 10 | 43 | 49 | −6 | 36 |
| 8 | Sandnes Ulf | 26 | 10 | 4 | 12 | 38 | 47 | −9 | 34 |
| 9 | Hovding | 26 | 10 | 3 | 13 | 46 | 54 | −8 | 33 |
| 10 | Ålgård | 26 | 9 | 3 | 14 | 37 | 57 | −20 | 30 |
| 11 | Brann 2 | 26 | 7 | 8 | 11 | 52 | 69 | −17 | 29 |
| 12 | Vidar (R) | 26 | 7 | 6 | 13 | 35 | 51 | −16 | 27 | Relegation to Third Division |
| 13 | Volda (R) | 26 | 8 | 1 | 17 | 39 | 59 | −20 | 25 |
| 14 | Norheimsund (R) | 26 | 6 | 5 | 15 | 34 | 50 | −16 | 23 |
Group 4
| Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Promotion or relegation |
|---|
| 1 | Alta (P) | 26 | 21 | 0 | 5 | 95 | 21 | +74 | 63 | Promotion to First Division |
| 2 | Levanger | 26 | 17 | 6 | 3 | 89 | 34 | +55 | 57 | |
| 3 | Strindheim | 26 | 18 | 3 | 5 | 98 | 45 | +53 | 57 |
| 4 | Mo | 26 | 15 | 5 | 6 | 51 | 30 | +21 | 50 |
| 5 | Byåsen | 26 | 12 | 4 | 10 | 48 | 45 | +3 | 40 |
| 6 | Harstad | 26 | 12 | 3 | 11 | 66 | 62 | +4 | 39 |
| 7 | Skarp | 26 | 11 | 3 | 12 | 44 | 40 | +4 | 36 |
| 8 | Steinkjer | 26 | 10 | 4 | 12 | 65 | 52 | +13 | 34 |
| 9 | Kolstad | 26 | 10 | 3 | 13 | 51 | 59 | −8 | 33 |
| 10 | Lofoten | 26 | 10 | 2 | 14 | 50 | 66 | −16 | 32 |
| 11 | Rosenborg 2 | 26 | 9 | 3 | 14 | 44 | 61 | −17 | 30 |
| 12 | Vesterålen (R) | 26 | 5 | 5 | 16 | 32 | 74 | −42 | 20 | Relegation to Third Division |
| 13 | Salangen (R) | 26 | 5 | 4 | 17 | 45 | 110 | −65 | 19 |
| 14 | Narvik (R) | 26 | 2 | 5 | 19 | 27 | 106 | −79 | 11 |
Top goalscorers
- 34 goals: Sweden Simon Sjöfors, Kvik Halden
- 32 goals: Norway Vegard Alstad Sunde, Levanger
- 24 goals: Norway Johan Nås, Lørenskog
- 23 goals: Norway Armin Sistek, Odd Grenland 2 Norway Jørn Holmen, Steinkjer Norway Jørn Hansen, Alta Norway Kim Nysted, Bærum
- 21 goals: Norway Lars Petter Hansen, Tønsberg
- 20 goals: Norway Ørjan Låstad, Åsane Norway Vegard Olsen, Strindheim
- 19 goals: Norway Morten Romsdalen, Tollnes Norway Oddmund Vaagsholm, Follo
Promotion playoff