Back in 2018, I had had a growing list of problems with my old BMW 2004 330xi. The car had a slow oil leak, a slow coolant leak, a power steering fluid leak, rips in the boots of both front axle boots, and its front suspension was feeling really shakey. That’s a lot of problems, and the car was 14 years old at the time and its value was quickly dropping. Having all these things repaired would likely cost more than the value of the car, so my options were to either diagnose and do the repairs myself, or find a new car.
Unfortunately I’m a cheap masochist, so I decided to try to do the repairs myself.
I’m writing this ~2.5 years after I completed the project, and don’t remember a lot of details about this project, but here’s what I do remember:
- The oil was leaking from a failed oil pan gasket. Replacing the oil pan gasket meant dropping the oil pan, which meant dropping the front axle support, which mean supporting the engine from above with an engine bar. Working under the car with the engine supported from above was uncomfortable for me, and it took a lot of prep time learning and reviewing the sequences to make sure I was going to be able to execute the work correctly and safely.
- In terms of the coolant leak, I believe the cause was a crack in the expansion tank. I had had previous issues with coolant leaks, and with other plastic / rubber parts in the engine bay deteriorating and failing, so I decided to replace as many of the components of the cooling system as reasonable to reduce the chance of future repairs. I stopped short of replacing the radiator, but replaced the water pump, the upper and lower radiator hoses, the coolant expansion tank, the coolant tank thermostat, and the coolant return host. While I was in the area, I also replaced two belts: the A/C compressor belt and the alternator belt.
- I noticed that the power steering had started to squeak, and that there was fluid on the lines leading to / from the power steering rack. I don’t remember exactly what research I did to decide how to proceed, but ultimately decided to replace the power steering rack and the power steering pressure hose.
- The front suspension was feeling rough, and I had noticed grease leaking from the boots of the CV joints of both front axles. I decided that while I had the car disassembled, I might as well replace the parts that are likely to fail in the future. After all, the time cost of researching and executing these repairs is much higher than the cost of the parts themselves. I purchased a kit that contained tie rod ends, control arms, control arm bushings, control arm ball joints, and sway bar links. Additionally, I purchased new front struts, new front axles, and new engine mounts. All in, it turned into basically a full rebuild of the front suspension.
I used a variety of different online resources to research the various pairs and to prepare a plan of attack. There was no single guide that included all the things I needed to address, so I stitched together bits of information from several sources. The most helpful resource I found was 50sKid’s YouTube channel, which contains tons of high quality videos on common issues that plague E46 BMWs. Here’s a list of links to some resources I used:
- E46 Tie Rod Replacement DIY - e46fanatics.com
- 2002 325xi Oil pan gasket replacement - e46fanatics.com
- Replacing Lower Front Subframe - e46fanatics.com
- BMW E46 3 Series 1999-2005 Oil Pan Gasket Replacement DIY - YouTube Han’s Garage
- BMW E46 Control Arm Replacement - YouTube Han’s Garage
- BMW 330i 325i E46 Oil Pan Gasket Replacement - YouTube 50sKid
- BMW 330i 325i E46 Replace Steering Guibo - YouTube 50sKid
- BMW 330i 325i E46 Front Strut & Rear Shock Replacement - YouTube 50sKid
- Tools That a Beginner Should Buy - YouTube 50sKid
- DIY Transfer Case Oil Change E46 XI models - YouTube Bullshitkorner
Here’s a full list of the parts I replaced and their costs. Pretty crazy to see sheer quantity of new parts put in, and scary to think about how much it would have cost a shop to do the same!
Category | Part Name | Part Number | Vendor | Brand | Price |
---|---|---|---|---|---|
Other | Engine Bar | n/a | Amazon | Dragway Tools | $84.99 |
Other | C-Clip Nut For Front Splash Shield | 07-14-6-981-767-M58 | Pelican Parts | OEM | (2) $3.50 |
Other | Front Emblem | 51-14-8-132-375-M9 | Pelican Parts | OEM | $40.25 |
Other | Battery | n/a | Walmart | EverStart | $155.00 |
Oil Pan | Oil Filter | n/a | Amazon | Mann | $7.08 |
Oil Pan | Oil | n/a | Walmart | Mobil 1 | $30 |
Oil Pan | Oil Pan Gasket | 11131437237 | Pelican Parts | Rein Automotive | $12.25 |
Suspension | Front Left Strut Assembly | 31316759647 | Parts Geek | Bilstein | $102.48 |
Suspension | Front Right Strut Assembly | 31316759648 | Parts Geek | Bilstein | $98.48 |
Suspension | Pinch Bolt for Strut | 31356778832 | Pelican Parts | Bilstein | (2) $18.50 |
Suspension | Tie Rod End Assembly | 18510020-101 | Buy Auto Parts | BuyAutoParts | $26.38 |
Suspension | Tie Rod End Assembly | 18510021-101 | Buy Auto Parts | BuyAutoParts | $44.54 |
Suspension | Front Right Control Arm | 19300744-101 | Buy Auto Parts | BuyAutoParts | $27.84 |
Suspension | Front Left Control Arm | 19300745-101 | Buy Auto Parts | BuyAutoParts | $27.84 |
Suspension | Control Arm Bushings | 19330023-101 | Buy Auto Parts | BuyAutoParts | $28.85 |
Suspension | Front Right Control Arm Ball Joint | 19360039-101 | Buy Auto Parts | BuyAutoParts | $24.87 |
Suspension | Front Left Control Arm Ball Joint | 19360040-101 | Buy Auto Parts | BuyAutoParts | $24.87 |
Suspension | Front Left Sway Bar Link | 19460033-101 | Buy Auto Parts | BuyAutoParts | $24.36 |
Suspension | Front Right Sway Bar Link | 19460034-101 | Buy Auto Parts | BuyAutoParts | $26.38 |
Suspension | Strut Foam Bump Stops | 31302290316 | Pelican Parts | OEM | (2) $39.00 |
Drivetrain | Left Engine Mount | 11812283798 | Parts Geek | Corteco | $49.73 |
Drivetrain | Right Engine Mount | 22116750862 | Parts Geek | Corteco | $66.48 |
Drivetrain | Front Right Axle | 31607505200 | Parts Geek | DDS | $79.73 |
Drivetrain | Front Left Axle | 31607505199 | Parts Geek | DDS | $68.73 |
Cooling System | Coolant Tank Thermostat | 17111437362 | Parts Geek | Atlantic Automotive | $33.73 |
Cooling System | Coolant Return Hose | 11531436410 | Pelican Parts | Rein Automotive | $19.75 |
Cooling System | A/C Compressor Belt | 11-28-7-512-762-M21 | Pelican Parts | Continental | $8.25 |
Cooling System | Alternator Belt | 11-28-7-636-379-M21 | Pelican Parts | Continental | $15.50 |
Cooling System | Water Pump | 11517509985 | Pelican Parts | Saleri | $49.75 |
Cooling System | Lower Radiator Hose | 11531436408 | Pelican Parts | Rein Automotive | $28.25 |
Cooling System | Upper Radiator Hose | 17127510952 | Pelican Parts | Rein Automotive | $31.75 |
Cooling System | Coolant Expansion Tank | 17117573781 | Pelican Parts | Behr | $55.75 |
Power Steering | Power Steering Pressure Hose | 32416751242 | Parts Geek | Rein Automotive | $123.73 |
Power Steering | Power Steering Rack | 32136759815 | Parts Geek | A1 Cardone | $236.98 |
Total | $1,654.57 |
Here’s a gallery of some the pictures I took along the way - I wish I would have documented the project more thoroughly. The final picture shows all the parts I had removed and replaced with labels, and helps put context around the scope of this project. Ultimately, I believe it took me ~3-4 weeks and 40-60 hours to replace. I bet a professional could have completed the job in about half the time, but not much less.