Home / Journal / Car model guides

Car model guides

BMW M3 (E46) engine: which one, problems and replacement

Which engine is in the BMW M3 E46? S54B32: specs, known problems, swaps and replacement prices from 5.345,00 €.

BMW E46 M3 CSL S54B32 Engine 2004, 165,700 km — photo 1

The BMW M3 in the fourth 3 Series generation (E46, built 1997–2006) was built with one engine, the S54B32: a 3.2 L petrol inline-6 with 343 hp.

This guide tells you which engine your M3 has, what goes wrong with it, what a replacement costs from our stock and what else to plan for when you fit one.

  • Generation: fourth 3 Series, 1997–2006
  • Body styles: E46 (saloon, Touring, coupé, convertible, Compact)
  • Engines: S54B32
  • Output: 343 hp
  • Replacement engines in stock: 119 from 5.345,00 €
BMW E46 M3 CSL S54B32 Engine 2006, 160,100 km — photo 1
BMW E46 M3 CSL S54B32 Engine 2006, 160,100 km — 6.645,00 €

Which engine is in your M3?

Engines fitted to the BMW M3 (E46)
Engine codeBuiltPowerTorqueType
S54B322000–2006343 hp365 Nm3.2 L petrol inline-6, naturally aspirated

S54B32 in the M3

The S54B32 was used in the E46 M3, built 2000–2006. It is a 3.2 L naturally aspirated petrol inline-6 with 343 hp and 365 Nm.

Reading the code: S marks an S-series code, reserved for engines developed by BMW M; 54 is the family number; B stands for petrol (from the German Benzin); 32 is the capacity in decilitres, so 3.2 litres.

M3 engines by model year

Which engine the BMW M3 used each year
Model yearEngine
2000S54B32 (343 hp)
2001S54B32 (343 hp)
2002S54B32 (343 hp)
2003S54B32 (343 hp)
2004S54B32 (343 hp)
2005S54B32 (343 hp)
2006S54B32 (343 hp)

The M3 kept the same engine for the whole E46 run, which makes ordering simple: any unit with the same code fits, subject to the gearbox, drive type and sump.

Other cars with the same engine as the M3

A replacement engine does not have to come from another M3. These models left the factory with the same engine code, so a unit from any of them is a candidate donor once the sump, mounts and ancillaries are matched to your car.

S54B32: BMW E85 Z4 M, BMW E86 Z4 M.

How to confirm your engine code

The M3 only used the S54B32, but the exact version can still change with the build date, gearbox and market. Send us the last seven characters of the VIN and we read the engine code from BMW's records, or look for the code stamped on the block. How to find your BMW engine code.

Known M3 engine problems

The S54B32 in the M3 shares the known weak points of the S54 family. Full S54 guide.

Known faultWhat to check
Rod bearingsAsk when the rod bearings were last replaced; an oil analysis helps.
VANOS unitCheck for VANOS codes and ask about upgraded bolts and pump disc.
Valve clearancesAsk for the last adjustment.
Throttle actuatorCheck for throttle fault codes.
Oil consumptionAsk for the consumption log.

Rod bearings. S54 rod bearings wear, particularly on engines used hard with infrequent oil changes. Many owners replace them preventively every 100,000 km.

VANOS unit. The VANOS unit bolts, oil pump disc and hub can fail. Symptoms are rattle, loss of power and fault codes.

Valve clearances. Shims need checking every 30,000 to 50,000 km.

Throttle actuator. The electric throttle actuator can fail, forcing limp mode.

Oil consumption. Some consumption is normal; a sharp increase points to rings or bearings.

Symptoms to watch for on the M3

Rattle for a few seconds after a cold start. The classic sign of a weak timing chain tensioner or stretched chain. It must be checked quickly: a chain that jumps a tooth can bend valves.

Poor low-down torque and uneven idle. VANOS seals or solenoids. The engine may run well at high revs but feel flat and lumpy at low speed.

Oil pressure warning or bearing noise at high revs. On M engines, a warning at high revs can be the first sign of bearing wear. Check the oil level and stop driving hard until it is diagnosed.

Looking after the M3 engine

  • Oil: 10W-60 synthetic as BMW specifies, about 5.5 litres.
  • Service interval: Oil every 10,000 km or yearly; rod bearings preventively around 100,000 km.
  • Timing drive: Duplex chain at the front driving both camshafts.
  • Workshop notes: Fit new rod bearings and upgraded VANOS parts when installing a used S54. It is easier with the engine out.

Buying a used engine for the M3: checklist

  1. Warranty terms in writing. Read what the warranty covers, how long it runs and what fitting conditions apply. Most warranties require a qualified workshop, new fluids and filters, and replacement of the cooling parts that caused the original failure.
  2. Sump, oil pickup and drive variants. Rear-drive, xDrive and front-drive cars can use different sumps, oil pickups and engine mounts even with the same engine code. Check that the sump matches your subframe and front axle.
  3. Photographs from every side. Good suppliers photograph the actual engine you will receive. Look for the block stamp, the sump, the timing cover and any broken brackets or connectors in the pictures.
  4. List of what is fitted. Engines are sold with different ancillaries: some have the turbo, injectors, manifolds, alternator and starter, others are long blocks. Agree the list in writing so you know which parts must come from your old engine.
  5. Compression or leak-down figures. Even compression across all cylinders tells you more than mileage. Ask for the figures, not just a pass or fail, and compare the highest and lowest readings: a spread above 10 to 15 percent deserves a question.
  6. Timing chain noise. Listen for a rattle at the front of the engine for the first seconds after a cold start. On an engine that cannot be run, look at the chain guides through the oil filler or with the valve cover off.
  7. VANOS operation. Rough idle, a rattle from the front of the head and a loss of torque at low revs point to VANOS seals or solenoids. These are serviceable parts and are easier to renew with the engine out.
  8. Double VANOS units and solenoids. Ask for the adaptation values or fault history if the engine was running. Solenoids are inexpensive and are often replaced as a matter of course on a used engine.
  9. Bearing and valve clearance history. M engines are built to tighter tolerances. Ask for the last rod bearing replacement and valve clearance check, and consider an oil analysis if the engine can be run.

BMW M3 replacement engine cost

We currently hold 119 M3 engine engines. The cheapest is 5.345,00 €, the most expensive 13.549,00 €, and half of them cost less than 8.016,00 €.

Prices depend on the exact version, the donor's mileage, how complete the engine is and the demand for that code. Higher-output versions, low mileage and dressed engines with turbo, injectors and ancillaries cost more; long blocks and higher mileage cost less.

M3 engine prices by model year

Model yearsUnitsFromMedianTo
2000–2004715.345,00 €7.710,00 €9.678,00 €
2005–2009446.369,00 €8.104,00 €9.612,00 €

Engines from 2000–2004 have a median of 7.710,00 €, while units from 2005–2009 sit at 8.104,00 €. Newer engines usually cost more because they come from younger donor cars with lower mileage and later updates.

M3 engine prices by mileage

Donor mileageUnitsFromMedian
under 50,000 km166.369,00 €7.261,00 €
50,000 to 100,000 km276.593,00 €7.810,00 €
100,000 to 150,000 km356.526,00 €7.998,00 €
over 150,000 km366.532,00 €8.248,00 €

Mileage matters less than history on a well-maintained BMW engine, but it is a useful guide. A low-mileage unit from a younger car gives you more life for a modest premium.

60 of these come from E46 donor cars, priced from 5.345,00 € to 13.521,00 €. An engine from the same body is the most direct swap because the sump, mounts and ancillaries already match.

On top of the engine, budget for the workshop's labour and the parts that are best replaced while the engine is out: engine mounts, the rear main seal, cooling parts, a clutch or converter seal, fluids and filters.

Replacement engines in stock for the M3

Here is a selection of M3 engines currently on our shelves, photographed in the yard. Click any of them for the full photographs, mileage and specification.

BMW E46 M3 CSL S54B32 Engine 2006, 80,600 km — 9.258,00 €, reduced from 9.950,00 €. It comes from a 2006 donor car with 80,600 km, and 30 units are available. Ask the desk for compression figures or extra photographs before you order.

BMW E46 M3 S54B32 Engine 2004, 174,700 km — 7.387,00 €, reduced from 8.400,00 €. It comes from a 2004 donor car with 174,700 km, and 8 units are available. We can confirm fitment against your VIN the same day.

BMW E46 M3 S54B32 Engine 2004 — 5.345,00 €, reduced from 6.000,00 €. It comes from a 2004 donor car, and 24 units are available. Ask the desk for compression figures or extra photographs before you order.

BMW E46 M3 S54B32 Engine 2000, 45,900 km — 6.652,00 €, reduced from 7.450,00 €. It comes from a 2000 donor car with 45,900 km, and 6 units are available. We can confirm fitment against your VIN the same day.

BMW E46 M3 S54B32 Engine 2001, 127,700 km — 7.106,00 €, reduced from 7.800,00 €. It comes from a 2001 donor car with 127,700 km, and 6 units are available. The listing shows every side of the engine and the fitted parts.

BMW E46 M3 CSL S54B32 Engine 2001, 18,700 km — 6.507,00 €, reduced from 7.450,00 €. It comes from a 2001 donor car with 18,700 km, and 16 units are available. The listing shows every side of the engine and the fitted parts.

BMW E46 M3 CSL S54B32 Engine 2007, 87,300 km — 7.348,00 €, reduced from 8.100,00 €. It comes from a 2007 donor car with 87,300 km, and 21 units are available. We can confirm fitment against your VIN the same day.

BMW E46 M3 S54B32 Engine 2007, 152,000 km — 7.060,00 €, reduced from 8.250,00 €. It comes from a 2007 donor car with 152,000 km, and 25 units are available. The listing shows every side of the engine and the fitted parts.

BMW E46 M3 CSL S54B32 Engine 2003, 177,700 km — 8.891,00 €, reduced from 9.950,00 €. It comes from a 2003 donor car with 177,700 km, and 17 units are available. The listing shows every side of the engine and the fitted parts.

BMW E46 M3 CSL S54B32 Engine 2002, 95,700 km — 7.130,00 €, reduced from 8.000,00 €. It comes from a 2002 donor car with 95,700 km, and 15 units are available. Ask the desk for compression figures or extra photographs before you order.

BMW E46 M3 S54B32 Engine 2002, 133,600 km — 9.621,00 €, reduced from 10.800,00 €. It comes from a 2002 donor car with 133,600 km, and 6 units are available. The listing shows every side of the engine and the fitted parts.

BMW E46 M3 CSL S54B32 Engine 2002, 106,500 km — 7.401,00 €, reduced from 8.200,00 €. It comes from a 2002 donor car with 106,500 km, and 15 units are available. The listing shows every side of the engine and the fitted parts.

Will it fit my M3?

Fitting a replacement engine in the M3

  1. Inspect or replace the timing chain parts. Look at the guides and tensioner. On high-mileage engines, replacing them now costs far less than doing it later.
  2. Reset VANOS adaptations. Clear the VANOS adaptations so the ECU learns the camshaft positions of the new engine.
  3. Fill with the right oil and prime it. Fill with new oil of the correct specification and a new filter. Crank with the fuel and ignition disabled until oil pressure builds.
  4. Coding and adaptations. On modern BMWs, the engine ECU must be matched to the car's immobiliser (CAS, FEM or BDC). Reset adaptations, register the battery and clear faults with diagnostic software.
  5. First start and leak check. Start the engine, let it idle and watch oil pressure, temperature and fault codes. Check for leaks and bleed the cooling system.
  6. First 1,000 km. Drive gently for the first few hundred kilometres, vary the engine speed and avoid full load. Change the oil and filter after about 1,000 km to remove any assembly debris.

The full fitting and first-start procedure.

M3 engine questions

Will the S54B32 engine fit my BMW E46 M3 CSL?

Yes, if your BMW E46 M3 CSL was built with the S54B32. BMW used this 3.2 liter (3,246 cc) petrol engine with 252 kW (343 HP) in the E46 M3 CSL from about 2000 to 2008.

In our records the S54B32 is the engine for the E46 M3 CSL, which makes the match simple. Still, check the code on your old engine or send us your VIN.

Also tell us if your E46 has a manual or an automatic gearbox. The flywheel or the flex plate and some sensors depend on it.

Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

How much is a replacement S54B32 engine for a BMW E46 M3 CSL?

A used S54B32 for the BMW E46 M3 CSL costs from about 6.350 € to 9.700 € in our yard. The price depends on the year, the mileage and the parts that come with the engine.

Shipping is a flat 249 € per order. It is added once at checkout and printed on the invoice, so there is no extra fee later. Inside the EU there is no import duty. Outside the EU, the receiver pays local duty and VAT.

A replacement engine is often much cheaper than rebuilding a damaged one, and much faster. The S54B32 you buy is photographed and checked in Hamburg before it is listed.

Eligible engines come with a 12 months warranty from the delivery date. It covers internal mechanical failure under normal use and correct fitting by a qualified mechanic or workshop. Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

Will the S54B32 engine fit my BMW E46 M3?

Yes, if your BMW E46 M3 was built with the S54B32. BMW used this 3.2 liter (3,246 cc) petrol engine with 252 kW (343 HP) in the E46 M3 from about 2000 to 2008.

In our records the S54B32 is the engine for the E46 M3, which makes the match simple. Still, check the code on your old engine or send us your VIN.

Also tell us if your E46 has a manual or an automatic gearbox. The flywheel or the flex plate and some sensors depend on it.

Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

BMW E46 M3 S54B32 Engine 2008, 153,600 km — photo 1
BMW E46 M3 S54B32 Engine 2008, 153,600 km — 8.471,00 €

How much is a replacement S54B32 engine for a BMW E46 M3?

A used S54B32 for the BMW E46 M3 costs from about 6.350 € to 9.700 € in our yard. The price depends on the year, the mileage and the parts that come with the engine.

Shipping is a flat 249 € per order. It is added once at checkout and printed on the invoice, so there is no extra fee later. Inside the EU there is no import duty. Outside the EU, the receiver pays local duty and VAT.

A replacement engine is often much cheaper than rebuilding a damaged one, and much faster. The S54B32 you buy is photographed and checked in Hamburg before it is listed.

Eligible engines come with a 12 months warranty from the delivery date. It covers internal mechanical failure under normal use and correct fitting by a qualified mechanic or workshop. Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

What should I replace when I fit a used S54B32 engine?

A used engine lasts longest when it starts life in your car with fresh fluids and new seals. Fit a new oil filter and fresh oil of the grade BMW lists for this engine, and refill the coolant with the correct BMW antifreeze mix. Check the spark plugs and the ignition coils, and make sure the fuel lines are clean and tight before you crank the engine. Change the drive belt, the thermostat and the water pump seals if they look tired, because they are cheap while the engine is out.

Look at the engine mounts and the clutch or the torque converter while the engine is out. Old mounts can crack a new engine's brackets, and a worn clutch is much easier to change now.

Before the first start, turn the engine over without fuel until the oil pressure light goes out. Then let it idle, check for leaks, and drive gently for the first few hundred kilometres.

The warranty asks for fitting by a qualified mechanic and the correct oil, coolant and filters. Keep your receipts in case you ever need to make a claim.

See all S54 Engines · Search S54B32 in the shop

Does a used S54B32 engine come with a warranty?

Yes. Eligible engines come with a 12 months warranty from the delivery date. It covers internal mechanical failure under normal use and correct fitting by a qualified mechanic or workshop.

The warranty does not cover damage from wrong fitting, overheating, low oil, wrong fluids or fuel, engines that were opened or modified without our approval, or labour and towing costs.

To claim, send us your order number, a short description of the problem, photos or a video, and a mechanic's report if we ask for one. If the claim is approved, we repair, replace or refund the engine.

Keep the receipts for the fitting, the oil and the filters. They make any claim quick and simple.

See all S54 Engines · Search S54B32 in the shop

Which cars use the BMW S54B32 engine?

BMW fitted the S54B32 to the BMW E46 M3, BMW E46 M3 CSL, BMW E85 Z4 M and BMW E86 Z4 M Coupe. These cars were built with this engine from about 2000 to 2008.

The badge on the boot is not enough to be sure. The same model name can hide two different engines, for example after a facelift or a change in emission rules. Always read the engine code stamped on the block, or look it up with your VIN.

The S54B32 is the only S54 version we list, which makes it easy to pick, but the wiring and the engine computer still need to match your car.

Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

Are there other versions of the BMW S54B32?

In our yard the S54B32 is the only listed version of the S54 family. It makes 252 kW (343 HP) and 365 Nm, and was built from 2000 to 2008.

Engines in one family share a basic block, but the turbo, the injection, the sensors and the engine computer can differ. A higher power version often has different pistons, a bigger turbo or a different fuel system.

This is why we ask for the exact code. Fitting a different version can work, but the wiring, the software and sometimes the gearbox must be changed to match.

Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

How much is a replacement S54B32 engine for a BMW E46 M3?

A used S54B32 for the BMW E46 M3 costs from about 6.350 € to 9.700 € in our yard. The price depends on the year, the mileage and the parts that come with the engine.

Shipping is a flat 249 € per order. It is added once at checkout and printed on the invoice, so there is no extra fee later. Inside the EU there is no import duty. Outside the EU, the receiver pays local duty and VAT.

A replacement engine is often much cheaper than rebuilding a damaged one, and much faster. The S54B32 you buy is photographed and checked in Hamburg before it is listed.

Eligible engines come with a 12 months warranty from the delivery date. It covers internal mechanical failure under normal use and correct fitting by a qualified mechanic or workshop. Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

BMW E46 M3 CSL S54B32 Engine 2003, 177,700 km — photo 1
BMW E46 M3 CSL S54B32 Engine 2003, 177,700 km — 8.891,00 €

How much is a replacement S54B32 engine for a BMW E46 M3 CSL?

A used S54B32 for the BMW E46 M3 CSL costs from about 6.350 € to 9.700 € in our yard. The price depends on the year, the mileage and the parts that come with the engine.

Shipping is a flat 249 € per order. It is added once at checkout and printed on the invoice, so there is no extra fee later. Inside the EU there is no import duty. Outside the EU, the receiver pays local duty and VAT.

A replacement engine is often much cheaper than rebuilding a damaged one, and much faster. The S54B32 you buy is photographed and checked in Hamburg before it is listed.

Eligible engines come with a 12 months warranty from the delivery date. It covers internal mechanical failure under normal use and correct fitting by a qualified mechanic or workshop. Not sure? Send us your VIN and your gearbox code. We match the engine family, the year window and the parts on the engine before anything is reserved, and the check is free.

See all S54 Engines · Search S54B32 in the shop

Delivery, warranty and payment

Before an M3 engine leaves our Hamburg yard it is drained of oil and coolant, every opening is sealed, and it is strapped to a pallet and wrapped. We send photographs of the packed unit and the tracking details.

Delivery is door to door and included in the price. Most European addresses receive the engine within five to ten working days; Germany and its neighbours are usually faster.

Every engine carries a 12-month warranty on eligible internal failure when a qualified workshop fits it with new fluids and filters. Payment is by card, bank transfer or crypto; your invoice is emailed as soon as you order.

All E46 engines · S54 engine guide · BMW M3 engines for sale · Send us your VIN