CARB-Legal Mods for California Miatas
Under CVC §27156, any aftermarket part that touches emissions needs a CARB EO number to be street-legal. Since 2021, “Modified Software” can trigger a fail. Always keep EO PDFs handy in your Miata’s glovebox.

California’s anti-tampering rule (CVC §27156) is the big one: if a part touches the emissions system and it isn’t exactly stock, it needs a CARB Executive Order (EO) to be legal on public roads. No EO means it’s illegal to sell, install, or use on the street. During a Smog Check, inspectors do a visual and look for an Aftermarket Parts Label (APL) or EO number on or near the part, then cross-check it. If the label’s missing or the application doesn’t match your year/engine, that can fail the visual. You can look up EOs on CARB’s portals; download the PDF and keep it on your phone or in the glovebox.
What the test checks depends on year. Model year 2000 and newer Miatas use the OBD-based OIS test; 1996–1999 typically see the BAR-97 lane with tailpipe/visual/functional checks. For readiness, 2000+ gasoline cars are allowed one incomplete monitor, and it has to be EVAP, while 1996–1999 can have one incomplete monitor of any type. Since July 1, 2019, 2010+ vehicles fail if a permanent DTC (PDTC) is present unless you’ve met the specific warm-up and mileage exceptions. Software also matters now: since July 19, 2021, the system flags “Modified Software,” so only stock or CARB-approved calibrations pass. Finally, exhaust noise is its own thing, cat-backs don’t need EOs, but they must meet the 95 dB(A) limit when tested by a Referee using the current SAE J1492 procedure.
How to mod (and still pass)
Choose parts with EOs for your exact car. When you search, match the model year, the engine’s test group/EFN, and even the transmission if the EO calls it out. An EO for an NB doesn’t automatically cover an NA, NC, or ND.

Follow the EO’s install conditions. EOs often specify details, hose ratings like SAE J30R9, exact sensor locations, or “no ECU reflash” requirements. If you deviate, you’ve effectively voided the exemption.
Label and paperwork. Mount the APL/EO sticker where a tech can see it. If your sticker’s gone, most manufacturers will issue a replacement. Keep the EO PDF handy to speed up any questions.
Do a proper post-install drive cycle. Don’t clear codes right before testing. Drive enough to set monitors (EVAP may be incomplete on 2000+), and make sure there are no PDTCs on 2010+ cars.
Smog day strategy. Bring your EO numbers, choose an OIS station for 2000+, and if you get flagged for visual, software, or noise, book a Referee. The process starts with a virtual pre-screen and then an on-site inspection if needed.
CARB-legal examples by generation
NA (1990–1997). A known-good example is the Racing Beat exhaust header with EO D-450-2. If you want boost, the Moss Motors Mazda supercharger kit under EO D-453-7 covers various early Miata applications; check the EO for the exact years and engine configurations. Cat-backs are fine without an EO because they’re emissions-neutral, but they still have to stay at or under 95 dB(A).

NB (1999–2005). The K&N Typhoon 69-6000 intake carries EO D-269-37 for the NB when configured per the EO. For superchargers, the Moss Motors kit remains covered by D-453-7 on certain 1990–2003 cars, and the Fast Forward/Jackson Racing MP62 kit carries EO D-617 for specified 1.8-liter years. Always confirm your exact model year and engine.
NC (2006–2015). Many direct-fit, “California grade” catalysts and manicat assemblies from Car Sound/MagnaFlow are covered under the D-193-xxx EO series, verify the exact part number and application. The headline item here is forced induction: Flyin’ Miata’s NC turbo kit is legal under EO D-601-6 for specified 2006–2015 applications.
ND (2016–2023). Edelbrock’s E-Force supercharger for the ND1 (2016–2018) is covered by EO D-215-95 when installed as specified. As of today for ND2 (2019+), there isn’t a widely available CARB-EO forced-induction kit, so stick to EO’d intakes and exhaust components and be mindful of the modified-software check.
What will fail you

The quickest way to a fail is any emissions-related part with no matching EO for your exact year/test group, think intakes, headers, turbos or superchargers, and throttle bodies. Catless mid-pipes and non-CARB cats are also an immediate problem; California requires aftermarket cats to match a specific EO and vehicle application. Non-approved ECU tunes will trigger the modified-software fail until you return to stock or an EO-approved calibration. Even seemingly small changes like PCV reroutes or catch-cans can be an issue without an EO if they change emissions plumbing. For 2010+ cars, a PDTC will tank the test even if the MIL is off, and any exhaust that measures over 95 dB(A) won’t pass a Referee noise test until it’s quieted down.
Your quick legal-mod checklist
Search the EO for your exact Miata and save the PDF. Install exactly as the EO instructs, down to hose ratings and sensor positions, and don’t add tuning unless the EO says it’s allowed. Make sure the APL/EO label is visible, replace it if it’s missing. Drive the car long enough to set monitors before testing and avoid last-minute code clears. Bring your EO paperwork to the station; if there’s a disagreement, schedule a Referee to settle it.
Handy references for your article
Point readers to CARB’s aftermarket parts overview and EO lookup portals so they can confirm coverage themselves. Add the Bureau of Automotive Repair’s Smog Check pages for how inspections work, plus the OBD standards that explain readiness, permanent codes, and the modified-software rule. Include the Referee program page for appointments and their noise-testing process, and, if you want to get extra nerdy, the California regulation that spells out the readiness-monitor exceptions.
EO-number starter list by mod
If you want a quick sidebar, you can summarize the most useful EOs this way: Racing Beat NA header (D-450-2), K&N Typhoon NB 69-6000 intake (D-269-37), Moss Motors supercharger for select NA/NB years (D-453-7), Fast Forward/Jackson Racing MP62 supercharger for specific NB 1.8L applications (D-617), Car Sound/MagnaFlow direct-fit cats in the D-193-xxx series for NC (verify part), Flyin’ Miata NC turbo kit (D-601-6), and Edelbrock ND1 supercharger (D-215-95). Each of these still requires you to match the EO’s exact vehicle list and follow the installation notes.
Smog-day pro tips
Print the page of the EO that actually lists your model year and engine and highlight it, that’s the fastest way to get a nod from a busy tech. If your APL fell off, contact the manufacturer ahead of time for a replacement label, and bring the EO PDF plus the part number on your phone. For exhaust citations, a Referee noise test using SAE J1492 is the clean way to prove you’re at or under 95 dB(A) and get the ticket cleared.