80% of the time, a check engine light is a easy fix. Sometimes the repair is cheaper than the diagnostic the shop charges. If your vehicle was made after 1999, you have a system called ODB2. Which stands for on board diagnostics version 2, All cars with OBD2 use the same diagnostic plug in. Here will walk through everything you need and how to diagnosis your vehicle yourself.
Step one. Order the diagnostic tool below or one similar.
ODB2 Scan ToolStep Two. Plug scan into ODB port. This port lives under the dash on the drivers side on most all vehicles. It looks like the photo below.

Step Four. Using websites like google, reddit, Safari, and Facebook. Enter the code in. For Example. Say your scan tool Said ” P0304 – Cylinder 4 Misfire”. Google P0304 – Cylinder 4 Misfire on 2003 BMW 328i (put in your vehicle). You would find E46forum.com saying to start with Spark plugs. Using the help other other people with the same experience, Same car, Same solutions. Find and order parts. It is as simple as that