Reviewed September 27, 2026

CPT code for Solu-Medrol 125 mg: 96374 IV push, 96372 IM, and J2919 × 25

Last reviewed: September 27, 2026 · Source: AMA CPT manual, NCCI Policy Manual 2026 · Methodology

Build this claim: pick the drug and dose, get the codes, units and modifiers.

Code this visit

Free claim calculator · Medicare basis

Solu-Medrol 125 mg by IV push alone in a physician office. J2919 bills per 5 mg, so 125 mg is 25 units; a standalone push is one 96374:

LineDescriptionUnitsModMedicare allowed
J2919Solu-Medrol (1 unit = 5 mg)25JZ$6.38
96374IV push, initial1$37.74
Medicare-basis total$44.12

Any drug in the catalog, NDC lines, JW/JZ — free. A payer’s policy and your contracted rate come with the free 30-day trial.

Quick Answer

CPT code for Solu-Medrol 125 mg: 96374 IV push, 96372 IM, and J2919 × 25

A 125 mg Solu-Medrol (methylprednisolone sodium succinate) dose bills as J2919 × 25 — J2919 is defined at 5 mg per unit, not per mg, and not on the older 40 mg or 125 mg codes some cheat sheets still show. The administration code follows how it was given: a slow IV push is 96374; an intramuscular injection is 96372; an infusion of 16 minutes or more (typical for 500 mg and above) is 96365. Given as a premedication before a chemo or biologic infusion, Solu-Medrol is neither of the visit’s initial codes — it’s the add-on 96375, reported once for each additional pushed drug.

Route decides the code — and Solu-Medrol isn’t chemo

Methylprednisolone sodium succinate is a corticosteroid, not an antineoplastic, so it never bills through the 96401-96549 chemotherapy family regardless of why it’s being given — CareCost Estimate’s Solu-Medrol reference flags this explicitly because billing 96413 on a Solu-Medrol line is one of the most common errors on oncology premed claims. The administration code instead follows the route and the documented time, the same as any other non-chemo drug in the 96360-96379 family:

How it was givenCode
Slow IV push, the drug’s own administration and nothing else on the claim96374
Intramuscular injection96372
IV infusion, 16 minutes or more documented (typical for 500 mg and up)96365 (+96366 for additional hours)
Pushed as an additional drug after another initial administration (chemo or non-chemo)96375

A push and an infusion are distinguished by the minutes actually charted, not by the dose in the syringe — a 125 mg dose given as a genuine slow push over several minutes is 96374; the same 125 mg run in over 20 minutes with documented start and stop times is 96365. Higher doses (500 mg, 1 g) are far more often infused, which is why the drug’s hero copy on this site describes 96365 for the larger MS-pulse and transplant-rejection doses and 96374 for the smaller premedication doses — but the minutes on the chart are what actually control the code, not the mg in the vial.

J2919 = 5 mg per unit, replacing the codes some cheat sheets still print

HCPCS retired the old methylprednisolone sodium succinate codes — J2920 (up to 40 mg) and J2930 (up to 125 mg) — effective March 31, 2024, and consolidated billing into J2919 at 5 mg per unit, effective April 1, 2024. A claim line still carrying J2920 or J2930 denies today as an invalid, deleted code, which is exactly the trap in cheat sheets and old superbills that never got updated. The unit math is mg ÷ 5:

DoseJ2919 units
40 mg8
125 mg25
1 g200

The Medically Unlikely Edit for J2919 is 5,400 units per date of service on the practitioner table (MAI 3, Date of Service Edit: Clinical) — 27,000 mg, generous enough to cover the highest labeled pulse-dose regimens without tripping the edit on a legitimate claim.

Premedication before a chemo or biologic infusion

NCCI limits an encounter to one initial administration code, and Solu-Medrol pushed ahead of another drug’s infusion almost never gets to be it:

“CPT codes 96360, 96365, 96374, 96409, and 96413 describe ‘initial’ service codes. For a patient encounter, only one ‘initial’ service code may be reported unless it is medically reasonable and necessary that the drug or substance administrations occur at separate intravenous access sites. To report 2 different ‘initial’ service codes, use National Correct Coding Initiative (NCCI) Procedure-to-Procedure (PTP)-associated modifiers.” — NCCI Ch. XI §B.2

Push Solu-Medrol ahead of a chemotherapy infusion and the chemo drug’s 96413 is the visit’s initial code; the steroid push is 96375, an add-on, not a second 96374. Push it ahead of a non-chemo biologic infusion — an infliximab or similar drug billed on 96365 — and the same logic applies: 96365 is the initial code, and the Solu-Medrol push is still 96375, because the hierarchy cares about which administration is first and highest-ranked on the encounter, not which drug is the “main event” clinically. 96374 only survives as the code when Solu-Medrol’s push is the sole or first administration of the day.

Zero waste from a 125 mg Act-O-Vial

The 125 mg Act-O-Vial is labeled a single-dose container, so the JW/JZ labeling test applies to it — even though J2919 itself is not on CMS’s JW/JZ Modifier Policy HCPCS Codes list, so the claim edit that rejects a missing modifier is not enforced on this code. A fully administered 125 mg dose — nothing held back, nothing discarded — still carries modifier JZ on the J2919 line, attesting that zero drug was discarded. A partial dose drawn from a larger single-dose vial (500 mg, 1 g, 2 g) and not fully used reports the discarded remainder on its own line with JW; per Pub. 100-04 Ch. 17 §40, once a JW line exists, the line for the amount actually administered carries no modifier at all, not JZ and not JW. Neither modifier applies if the vial pulled is a multiple-dose container.

ICD-10: match the diagnosis to why the steroid was given

Solu-Medrol’s indication list is broad, and payers deny on a diagnosis that just says “steroid administration.” Code the condition being treated: G35.A–G35.D by MS type (G35.D if unspecified) for an MS exacerbation, J45.x (severity-specific) for an asthma exacerbation, J44.1 for a COPD exacerbation, T86.x (organ-specific, e.g. T86.11 kidney, T86.21 heart) for transplant rejection, and, when the push is treating a drug reaction rather than premedicating against one, T88.6XXA plus the specific T36–T50 adverse-effect code for the drug that caused it, or T78.2XXA (anaphylactic shock, unspecified) when the triggering agent isn’t identified. A premedication dose ahead of a chemo or biologic infusion is coded to the condition the infusion itself is treating, not to a generic steroid code.

Two worked claims

Solu-Medrol 125 mg IV push, standaloneJ2919office, POS 11
Documented
Methylprednisolone 125 mg IV push over several minutes for a severe asthma exacerbation (J45.41). No infusion, no other administration that day.
Administration
A push, and the only administration of the encounter — 96374, once
Drug
125 mg ÷ 5 mg = 25 units, fully given from one single-dose Act-O-Vial
One push code, one drug line, zero waste.
J2919 × 25 · JZ
96374 × 1
Solu-Medrol 125 mg premed, then infliximab infusionJ2919 · J1745infusion suite
Documented
Methylprednisolone 125 mg IV push at 09:58 for premedication, then infliximab (5 mg/kg, 80 kg patient = 400 mg, four 100 mg single-dose vials with nothing discarded) infused 10:05–11:40 (95 minutes) for Crohn’s disease (K50.90).
Initial service
The infliximab infusion outranks the steroid push, and 95 minutes is more than 30 minutes past the first hour — 96365, plus 96366 × 1 for the additional hour
Infliximab dose
400 mg ÷ 10 mg per unit = 40 units (J1745 is per 10 mg); four vials fully given, so the line carries JZ
Solu-Medrol push
An additional drug pushed ahead of the day’s initial infusion — 96375, not 96374
The infusion is the initial code; the premed push is the add-on.
J2919 × 25 · JZ
J1745 × 40 · JZ
96365 × 1
96366 × 1
96375 × 1

Priced lines for the standalone push, Medicare basis, are in the Code this visit tool on the IV push page.

Checklist

Bill it this way when…

  • J2919 units are calculated as administered mg ÷ 5, never mg directly
  • 96374 is used only when Solu-Medrol’s push is the encounter’s sole or first administration
  • A push ahead of another drug’s infusion (chemo or non-chemo) is billed as add-on 96375, not a second initial code
  • The J2919 line carries JZ when a single-dose vial or Act-O-Vial was fully administered

Do not when…

  • J2920 or J2930 on a current claim — both are deleted, invalid HCPCS codes
  • 96413 billed on the Solu-Medrol line because it was given for an oncology visit — it is not chemotherapy
  • Units billed as mg instead of mg ÷ 5 (a 125 mg dose is 25 units, not 125)
  • A generic “steroid administration” diagnosis in place of the condition actually being treated

Frequently asked questions

What is the CPT code for Solu-Medrol 125 mg?

The administration code depends on how it was given: 96374 for a slow IV push (the visit’s only or first administration), 96372 for an intramuscular injection, or 96375 if it was pushed as an additional drug after another infusion’s initial code. The drug itself is J2919 × 25, since J2919 bills at 5 mg per unit.

Why does my superbill still show J2920 or J2930 for Solu-Medrol?

Those codes were deleted effective March 31, 2024, when HCPCS consolidated methylprednisolone sodium succinate billing into J2919 (effective April 1, 2024) at 5 mg per unit. A claim line carrying J2920 or J2930 now denies as an invalid code. Update the superbill to J2919 and recalculate units as mg ÷ 5 rather than reusing the old per-40-mg or per-125-mg unit counts.

Is Solu-Medrol billed with 96413 when it’s given before chemotherapy?

No. Solu-Medrol is a corticosteroid, not chemotherapy, regardless of the clinical context. The chemo drug takes 96413 as the encounter’s initial code; the Solu-Medrol premedication push is reported as the add-on 96375, not as a second 96413 or as 96374.

What ICD-10 code goes with a Solu-Medrol 125 mg injection?

There is no single correct code — it depends on why the steroid was given: G35.A–G35.D by MS type (G35.D if unspecified) for an MS exacerbation, J45.x for asthma, J44.1 for COPD, T86.x for transplant rejection, or T88.6XXA plus the T36–T50 adverse-effect code for a drug reaction (T78.2XXA if the agent is unknown). A premedication dose is coded to the condition the following infusion is treating, not to a generic steroid-administration code.

Sources

Quoted passages are reproduced from the cited federal publications; everything else is our reading of them. The methodology by which we resolve source disagreements is described in the Methodology.

Editorial review & sourcing
Reviewed by
Erin Rose, CareCost Estimate founder
Methodology
Every rule on this page is quoted or cited from the current NCCI Policy Manual, the AMA CPT manual or the Medicare Claims Processing Manual, and cited inline. See our methodology and editorial policy.
Last reviewed
September 27, 2026
Update triggers
Annual NCCI Policy Manual revision, quarterly NCCI edit file changes, AMA CPT annual revision, MAC article on the codes discussed, reader-reported correction.
Independence
CareCost Estimate accepts no compensation from drug manufacturers, payers, or PBMs. Full statement on the Advertising Disclosure.
Spotted an error?
Email editorial@carecostestimate.com. Confirmed corrections normally ship within five business days and are recorded in the public change log.