Subaru Engine Codes Explained


Subaru is one of the Fuji Heavy Industries automobile manufacturing divisions in Japan. It is the second-largest automobile production unit in the world. The majority of the people know it because of its all-wheel drive-terrain layouts and boxer engine layout, mostly used in cars above 1500 cc.

Subaru Engine Codes Meanings

Subaru engine codes differ as they include four or five character codes used for identification purposes:

E: E is the first letter that stands for the engine

Second Letter: engine family is the second letter. For example, in the image below, the family is J:

Check engine code Subaru

Third and Fourth Digits: The next two digits represent the engine’s displacement. The displacement of the engine in the image above is 25.

Last Optional Character: The last optional character, which happens to be fifth is an identifier that marks revisions. The revisions, in this case, may include turbo, Fuel Injection, DOHC, etc.


1.  The Subaru EK Subaru Engine Codes

The first engine code is the Subaru EK engine with two cylinders. It was mostly used between 1958 up to 1989. However, the series had a two-stroke cycle. The following are examples of two strokes Subaru EK series.

Subaru engine codes ej

  1. There is air-cooled, which consists of:

EK31 series with the following codes:

EK31 It’s used in Sambar and Subaru 360. Subaru 360 was used in 1958-1968 while Sambar was used in 1961-1970.

EK51 was found in Japan and North America, where it was used in the Subaru 450 (MAIA).

EK32 was used in the 360 Young SS and Subaru 360 in 1968-70.

EK33 was used in the Subaru Sambar, 1970–1973 and Subaru R-2, 1969–1971.

There is also water-cooled which consists of:

EK34 code used in the Subaru R-2 1971 Oct -1972 July, Subaru Sambar 1973 Feb-1976 Feb and Subaru Rex 1972.07-1973.10.

There are also EK Four-strokes that include:

They are water-cooled and include:

 EK21 is used in the Subaru Sambar Feb 1976-May 1976 and Subaru Rex K22 from 1973 to Oct–1976 May.

EK22 is used in the Subaru Sambar 5 from 1976.05 until 1977.03 and Subaru Rex 1976.05–1977.05.

EK23 was used in the Subaru Sambar 1977–1990 and Subaru Rex from 1977.05–1989.

EK23ThreeValve used in the Subaru Sambar 1989–1990 Subaru Rex Viki from 1986 to 1989.

EK23 ThreeValve Supercharger used in the Subaru Rex Supercharger (1988–1989). EK23 Turbo used in the Subaru Rex Combi (1983–1986).

EK42 is used in the Sambar/700 and Subaru Rex. EK23 ThreeValve Turbo used in the Subaru Rex VX (1986–1989).

 2. The Subaru EF Subaru Engine Codes

The other Subaru engine is Subaru EF. It is has a three-cylinder, liquid-cooled, and four strokes.

The engine is also fitted with SOHC. It appeared at the time when ENO5 was replacing EK.

Subaru Engine Identification

Subaru EF engine codes are EF10 and EF12, all fitted with two valves per cylinder. They are all used by Subaru Justy.

3. The Subaru EA Subaru Engine Codes

The third Subaru engine is a Subaru EA engine. It is a four-cylinder engine that is also believed to be liquid-cooled.

 However, it is also parallel opposed to boxer four-strokes. The engine was used up to 1994 in most models. They include EA52, EA61, EA62, EA63, EA71, EA81, EA81T, EA82, and EA82T.

4. The Subaru EE Subaru Engine Codes

The fourth Subaru engine is the Subaru EE engine. It also introduced the first boxer with engine-consuming diesel in 2007 at the Geneva auto show in a passenger car.

Subaru EE Subaru Engine Codes

The engine is 2.0L DOHC designated the EEE20. The engine has 1998 cc total displacement from a square 86 mm multiplied by 86 mm.

The engine also uses five main bearings. Denso is the one that manufactures the common rail solenoid injector. The injector operates at 180 MPa (26,000 psi).

EE20 was the engine’s code Fuji Heavy Industries (FHI) had like three years until it concluded the marquee that needed a diesel engine to compete in Europe.

EE20 was sold to the European market, where it was fitted to Legacy (sedan and wagon) and Outback cars. After slight modification, it was also used in Impreza and Forester models.

5. The Subaru EJ Subaru Engine Codes

The fifth one is the Subaru EJ engine introduced back in 1989. It is currently used in Legacy vehicles. Subaru EJ was launched to replace the EA engines.

The engine was designed from scratch using four valves per cylinder and five main crankshaft bearings. The engine can be either one timing belt or DOHC or SOHC. However, it is right to note that the fifth digit describes the engine without even seeing it.

Subaru Engine Code

They include the following codes: EJ15, EJ16, EJ18, EJ20, EJ22, EJ25, and EJ30. The EJ15 code was used in the Subaru Impreza from 1990 to 2003. Also, used the EJ16 in 1993-2006. The EJ18 was used by JDM Subaru legacy and Subaru Impreza and Euro in 1993-1996.

EJ20 is available in Europe, Australia, and Japan and is used on most models. The EJ22 was used in Subaru Legacy and Subaru Impreza in 1989-2001.

However, the EJ25 code has been used in most models of Subaru from 1995 to the present. The EJ30 is believed to be one of the unique limited engines Subaru may ever have.

1. The Subaru EL Subaru Engine Codes

The sixth engine is the Subaru EL engine and has codes that show its type. Subaru EL is the one that replaced the EJ15.

The JDM Subaru Impreza 1.5R uses an EL engine. Since the model was produced in 2006, the engine is still used today.

The engine shares many components with engine EJ like the EJ25 crankshaft. The engine also has DOHC cylinder heads.

2. The Subaru EN Subaru Engine Codes

The seventh Subaru engine code is found on the Subaru EN engine. The Subaru EN inline-four engine replaced the straight-two EK series engine in 1988.

The straight-two engine was initially was well known as an air-cooled engine; hence, there was a need for a modification to be a water-cooled engine.

All Kei trucks and Kei cars currently use EN engines produced by Subaru.

Test Modes

    • With neither test connector connected and the key ON(not running), the codes will display codes related to starting and driving.
    • Historic codes will be displayed with only the “Read Memory” connector connected.
    • A technician can perform dynamic tests with only the “Test Mode” connector connected.
  • The last mode is for clearing codes.(See Clearing Codes)

Reading Trouble Codes

The codes are displayed as pulses of the LED mounted on the module. Long pulses (1.2 seconds) indicate tens, and short pulses (.2 seconds) indicate ones. 1.8-second pauses separate .3 second pauses, and codes separate pulses. NOTE: on 89 MPFI models, the Oxygen Monitor light and ECU are mounted under the rear package shelf and are only accessible from the trunk. Later models, the Check engine lamp and O2 monitor lamp, flash the code(s) corresponding to the faulty part. The long segment (1.2 sec on) indicates a “ten”, and the short segment (0.2 sec on) signifies a “one”.

  • 90 models – Trouble codes on the Justy are viewed on the Oxygen Monitor light, all other models, the codes can be viewed on either the Oxygen Monitor light or the MIL (check engine light).
  • 95 Impreza and Legacy models have OBD2 systems and require a scanner, but some basic codes can be retrieved using the flashing MIL method.

Clearing Codes

Codes will only clear when the faulty system or circuit has been repaired. After making the repairs, codes can be cleared by connecting two pairs of connectors, the “Self-diagnostic” connectors, and the “Read Memory” connectors, usually to the right of the diagnostic connectors.

  • Start with a warmed-up engine
  • Turn off the engine
  • Connect both pairs of connectors
  • Finally, start the engine
  • This should clear the codes.


As you can see, there are many Subaru engine codes. Subaru is not relenting, producing more powerful engines with unique codes. It is committed to ensuring that it gives its customers the best of the best. Subaru engine codes play a significant role in defining the type of engine a vehicle can replace or use. Lastly, the automakers need to know every engine code and where to be fitted.


Please enter your comment!
Please enter your name here