Pabau Engage inbox

Pabau Engage is here — every patient conversation in one inbox.

Learn more
Book a demo Book a demo
Billing Codes

HCPCS code J0171: Epinephrine injection billing guide

Key takeaways

Key takeaways

HCPCS code J0171 described Injection, Adrenalin, epinephrine, 0.1 mg. It was the J-code for epinephrine given in office and outpatient settings.

J0171 was a valid, payable code from January 1, 2011 through June 30, 2025. CMS deactivated it effective July 1, 2025, so the date of service decides which code you use.

J0165 is the primary replacement code. Four manufacturer-specific codes sit alongside it: J0166 (BPI), J0167 (Hospira), J0168 (International Medication Systems), and J0169 (Adrenalin).

Medicare reimbursed J0171 under the Average Sales Price (ASP) + 6% methodology. Rates change quarterly, so confirm them in the CMS ASP pricing file.

Pabau’s claims management software supports injectable J-code billing workflows, including modifier tracking and documentation for buy-and-bill claims.

HCPCS code J0171 was the billing code for Injection, Adrenalin, epinephrine, 0.1 mg. Specifically, one unit equals 0.1 mg of the drug administered. CMS deleted the code effective July 1, 2025 and replaced it with J0165 through J0169. As a result, the date of service now decides which code a claim carries.

This guide covers the crosswalk, the Medicare reimbursement basis, and the ICD-10 codes that support medical necessity. It also sets out the modifier rules, NDC reporting, and the buy-and-bill workflow behind an epinephrine claim.

Found our content helpful?

HCPCS code J0171: definition, description, and code status

The official Centers for Medicare & Medicaid Services (CMS) descriptor for HCPCS code J0171 is: Injection, Adrenalin, epinephrine, 0.1 mg. Specifically, each unit billed equals 0.1 mg of epinephrine. The drug named in the descriptor is Adrenalin, the brand-name formulation of epinephrine. Depending on payer policy, the code covered the generic molecule rather than that brand exclusively.

J0171 is classified under HCPCS Level II, the national coding standard administered by CMS for drugs and biologicals billed to Medicare and Medicaid. In general, J-codes fall within the J0000-J9999 range and are assigned to drugs administered by injection or infusion in a physician office or outpatient facility.

Field Detail
HCPCS code J0171
Full descriptor Injection, Adrenalin, epinephrine, 0.1 mg
Code type HCPCS Level II – J-code (drug injection)
Billing unit Per 0.1 mg administered
Code status Deleted – deactivated effective July 1, 2025
Valid date range January 1, 2011 through June 30, 2025 (last valid date of service)
Replacement codes J0165, J0166, J0167, J0168, J0169 – all effective July 1, 2025
Type of service Drug (injectable)
Coverage Medicare Part B; Medicaid (with NDC reporting); commercial payers per individual policy

Important status note: J0171 is no longer a billable code. Specifically, CMS deactivated it in the July 2025 HCPCS quarterly update, making June 30, 2025 the last valid date of service.

The CGS Medicare July 2025 HCPCS update lists J0171, for example, among the discontinued codes. The American Academy of Pediatrics Pediatric Coding Newsletter (September 2025) confirms the replacement. J0165 takes over from J0171 for brand-name epinephrine and for products rated therapeutically equivalent to brand-name Adrenalin.

When CMS deletes a HCPCS code, coders need to know which code takes its place. For that reason, submitting a deleted code on a Medicare claim results in an automatic rejection. J0171 has successors in one direction and a predecessor in the other, and the two get mixed up often enough to be worth separating clearly.

Looking backward: J0170 (Injection, Adrenalin, epinephrine, up to 1 ml ampule) was deleted with a last valid date of service of December 31, 2010. J0171 is the code that replaced it, shifting the billing unit from an ampule to 0.1 mg. As a result, J0170 is not a current or adjacent code, and it should never appear on a claim today.

The 2023 change that gets misread: On January 1, 2023, CMS added J0173 for Belcher Pharmaceuticals epinephrine. Its descriptor read “not therapeutically equivalent to J0171”, which created a source-specific companion code. However, it did not delete J0171. Nonetheless, that code stayed active and payable for another two and a half years.

Looking forward: The July 2025 HCPCS quarterly update deleted both J0171 and J0173 effective July 1, 2025. In their place, CMS created J0165 plus four manufacturer-specific codes for products the FDA has not rated as therapeutically equivalent to the reference product.

Code Descriptor Status Relationship to J0171
J0170 Injection, Adrenalin, epinephrine, up to 1 ml ampule Deleted – last valid date of service December 31, 2010 Predecessor. J0171 replaced it on January 1, 2011
J0171 Injection, Adrenalin, epinephrine, 0.1 mg Deleted – last valid date of service June 30, 2025 The code covered on this page
J0173 Injection, epinephrine (belcher), not therapeutically equivalent to J0171, 0.1 mg Deleted – last valid date of service June 30, 2025 Source-specific companion code added January 1, 2023 and deleted alongside J0171
J0165 Injection, epinephrine, not otherwise specified, 0.1 mg Active – effective July 1, 2025 Primary crosswalk target for brand-name epinephrine and therapeutically equivalent products
J0166 Injection, epinephrine (bpi), not therapeutically equivalent to J0165, 0.1 mg Active – effective July 1, 2025 Single-source code for the BPI product
J0167 Injection, epinephrine (hospira), not therapeutically equivalent to J0165, 0.1 mg Active – effective July 1, 2025 Single-source code for the Hospira product
J0168 Injection, epinephrine (international medication systems), not therapeutically equivalent to J0165, 0.1 mg Active – effective July 1, 2025 Single-source code for the International Medication Systems product
J0169 Injection, epinephrine (adrenalin), not therapeutically equivalent to J0165, 0.1 mg Active – effective July 1, 2025 Single-source code for the Adrenalin-labeled product

How to pick between J0165 and J0166 through J0169: The manufacturer-specific codes exist for a reason. Because of this, the FDA has not rated those products as therapeutically equivalent in the Orange Book, which makes each one a single-source product.

Instead, match the code to the labeler on the vial you administered, not to the drug class. When the product is brand-name Adrenalin or a therapeutically equivalent generic, J0165 is the code.

Confirm the code’s status in the CMS HCPCS quarterly update file before you submit. The chart below runs the two decisions in order, starting with the date of service.

Decision chart for choosing the correct epinephrine J-code by date
The date of service splits the claim into one of two code sets, and only then does the labeler matter. Codes and dates from the CMS July 2025 HCPCS quarterly update.

Medicare reimbursement rates for J0171

Medicare Part B reimburses HCPCS J-codes for injectable drugs using the Average Sales Price (ASP) methodology. The standard formula is ASP + 6% for drugs administered in a non-facility setting (physician office). By contrast, facility settings (hospital outpatient departments) typically use a different rate under the Outpatient Prospective Payment System (OPPS).

The same methodology now applies to J0165 through J0169. In particular, each of those codes carries its own ASP entry, because each one covers a different labeler.

Pabau billing screen showing drug charges recorded against a patient record
Pabau’s billing records the drug, dose, and units against the treatment note, so an epinephrine claim carries the figures the coder needs.
Setting Reimbursement basis How to verify the current rate
Non-facility (physician office) ASP + 6% per 0.1 mg unit CMS ASP Drug Pricing Files (updated quarterly)
Facility (hospital outpatient) OPPS packaged or separately payable APC rate CMS OPPS Addendum B (annual)
Medicaid State-specific fee schedule; may follow ASP or WAC State Medicaid agency drug pricing schedule

Rate volatility caveat: ASP-based rates change quarterly, so a dollar figure quoted without its quarter and year dates quickly. Pull the current rate from the CMS ASP Drug Pricing Files for the quarter covering the date of service.

The Physician Fee Schedule lookup tool does not carry Part B drug payment limits, so it is the wrong source for a J-code rate.

Pro Tip

Bookmark the CMS ASP Drug Pricing quarterly release page and set a calendar reminder for the first week of January, April, July, and October. Each update can shift epinephrine reimbursement by a few cents per unit – small per claim, significant across a high-volume allergy or pediatric practice.

ICD-10 diagnosis codes used with J0171

First, every J-code claim requires a supporting ICD-10-CM diagnosis code to establish medical necessity. For HCPCS code J0171, the most clinically appropriate codes cluster around anaphylaxis, severe allergic reactions, and allergy-related conditions. As a result, payers cross-reference the HCPCS code against the diagnosis code – a mismatch is one of the most common reasons epinephrine injection claims are denied.

ICD-10-CM code Description Clinical context
T78.2XXA Anaphylactic shock, unspecified, initial encounter Primary diagnosis for acute anaphylactic event requiring epinephrine
T78.00XA Anaphylactic reaction due to unspecified food Food-triggered anaphylaxis, cause not specified
T78.01XA Anaphylactic reaction due to peanuts Peanut allergy anaphylaxis – common pediatric presentation
T78.09XA Anaphylactic reaction due to other food Specified food allergen other than peanuts
T78.1XXA Other adverse food reactions, NEC Food allergy without full anaphylaxis
Z88.0 Allergy status to penicillin History-based code; pair when allergy testing precedes injection
L50.0 Allergic urticaria Severe urticaria requiring epinephrine in office setting

This list covers the most frequently paired codes but is not exhaustive. Even so, individual payers may require specific ICD-10 codes to satisfy medical necessity criteria. Our ICD-10-CM code lookup carries the full descriptor for each code, which is worth checking before the claim goes out.

Modifiers for J0171 epinephrine injection claims

Overall, modifiers tell the payer how and where the drug was administered. Using the wrong modifier – or omitting one when required – is the second most common cause of J-code denials after diagnosis mismatch. The following modifiers apply to HCPCS code J0171 and its successor codes.

Modifier Description When to use
JA Administered intravenously IV push administration of epinephrine
JB Administered other than intravenously Subcutaneous or intramuscular administration (most common for epinephrine)
JW Drug amount discarded and not administered On the separate line reporting discarded units from a single-dose vial
JZ Zero drug amount discarded When the full contents of a single-dose vial were administered
25 Significant, separately identifiable E&M service When an evaluation and management visit occurs on the same day as the injection
59 Distinct procedural service When multiple injection services are billed on the same date and unbundling is appropriate

JA vs JB: Epinephrine for anaphylaxis is almost always administered subcutaneously or intramuscularly (modifier JB). In contrast, IV epinephrine is reserved for severe refractory anaphylaxis in hospital settings.

Applying JA to an intramuscular injection in a physician office is a documentation error that can trigger a payer audit. Even so, modifier requirements may vary by payer – always check MAC guidance or the specific payer’s local coverage determination (LCD) before submitting.

JW and JZ on single-dose epinephrine vials

CMS requires a wastage modifier on separately payable Part B drugs supplied in single-dose containers. Specifically, JW reports the discarded amount on its own claim line, while JZ attests that no drug was discarded. The requirement took effect on claims from July 1, 2023, and CMS began denying non-compliant lines that October.

Presentation is what decides whether the rule applies. Adrenalin ships as a 1 mL single-dose vial and as a 30 mL multiple-dose vial. As a result, only the single-dose presentation falls under the JW and JZ policy. Multiple-dose vials are excluded.

Check which one your practice stocks before you append either modifier, because applying JZ to a multiple-dose vial line is its own error.

  • Full vial administered: Report the administered units on one line with JZ appended. No second line is needed.
  • Partial vial administered: Report the administered units on one line, then report the discarded units on a second line with JW appended.
  • Document the waste: Record the discarded amount, the reason, and a witness where your policy requires one. The claim line and the clinical note have to agree.
  • Carry the rule forward: The same JW and JZ logic applies to J0165 through J0169. Moving to manufacturer-specific codes did not change the wastage policy.

Billing J0171 in non-facility vs facility settings

The billing path for epinephrine injections differs significantly between a physician’s office and a hospital outpatient department. As a result, getting this distinction wrong affects both the reimbursement amount and the supporting documentation requirements.

Factor Non-facility (office) Facility (hospital outpatient)
Claim form CMS-1500 (professional) UB-04 (institutional)
Reimbursement basis ASP + 6% (Medicare Part B) OPPS APC rate (may be packaged)
Who bills the drug Physician practice (buy-and-bill) Facility bills separately; physician bills professional component only
NDC required Required by Medicaid; confirm for Medicare by MAC Required per facility billing rules
Primary modifier JB (subcutaneous/IM) in most cases JA (IV) when applicable; follow facility protocol

In the non-facility setting, the physician practice absorbs the acquisition cost of the drug and recovers it through the J-code reimbursement. In other words, that is buy-and-bill in one sentence, and thin documentation is what costs the practice money.

A clean claim here needs precise unit calculation, the correct modifier, and the NDC captured at the point of administration. In short, the clean claim requirements apply to every J-code line you submit.

How buy-and-bill works for epinephrine

Buy-and-bill is the standard in-office drug billing model for injectable HCPCS codes. The physician practice purchases the drug directly from a wholesaler or distributor and administers it to the patient. In turn, it then bills the payer using the relevant J-code, recovering the acquisition cost plus the allowable reimbursement.

  1. Purchase: First, the practice acquires epinephrine from an authorized pharmaceutical wholesaler. Retain invoices and lot number documentation – these support both NDC reporting and audit defense.
  2. Administer: Next, the clinician administers the injection. Document the route (subcutaneous, IM, or IV), dose in mg, and administration time in the clinical note.
  3. Calculate units: J0171 was billed per 0.1 mg, and J0165 through J0169 use the same 0.1 mg unit. If 0.3 mg is administered, bill 3 units. For that reason, over-reporting units is an OIG audit trigger.
  4. Select the HCPCS code: For a date of service on or after July 1, 2025, use J0165 or the manufacturer-specific code that matches the vial. Append the route modifier (JA or JB) and the wastage modifier (JW or JZ) where the presentation calls for it.
  5. Report the NDC: Medicaid requires NDC reporting alongside the HCPCS code. The format is: qualifier (N4) + 11-digit NDC + unit count. Confirm Medicare MAC requirements for your jurisdiction.
  6. Submit the claim: Finally, file on CMS-1500 for professional claims. Check the units, the modifiers, and the NDC on the line before it leaves the practice.

Overall, buy-and-bill claims are subject to OIG monitoring. The risk areas are unit miscalculation, using a deleted code, and missing NDC numbers on Medicaid claims. Describe the process factually in documentation and ensure the claimed units match the administered dose exactly.

NDC reporting on epinephrine claims

In practice, the National Drug Code, known as the NDC, is where Medicaid claims for epinephrine fail most often. Federal policy under the Deficit Reduction Act of 2005 mandates NDC reporting on all Medicaid claims for covered outpatient drugs. However, Medicare requirements differ by MAC jurisdiction.

  • NDC format: Qualifier “N4” + 11-digit NDC (5-4-2 format, zero-padded) + unit qualifier + quantity. Example: N4 49999012501 ML 0.3
  • Source the NDC from: The product packaging of the specific lot administered – not a generic NDC for the drug class.
  • Medicaid: NDC reporting is mandatory. Omission results in claim denial. Confirm state-specific format requirements with your state Medicaid agency.
  • Medicare: NDC reporting on CMS-1500 claims is not universally mandated for Medicare Part B, but some MACs issue local guidance requiring it. Check your MAC’s bulletin for current requirements.
  • Commercial payers: Requirements vary. Review each payer’s billing guidelines annually – some commercial plans adopted Medicaid-style NDC requirements independently.

Capturing the NDC belongs in the point-of-care workflow rather than the billing workflow. By the time a coder prepares the claim, the NDC should already sit in the administration record. The 837 electronic claim format carries NDC data in the LIN, CTP, and REF segments. Confirm your billing system supports those segments before you submit electronically to Medicaid.

Payer-specific guidelines for J0171

Medicare Part B policy provides the national framework, but commercial payers and Medicare Administrative Contractors can overlay local rules. Three areas generate the most payer-specific variation for epinephrine injection billing.

  • Prior authorization: Most Medicare Part B epinephrine claims do not require prior authorization for acute anaphylaxis. However, some commercial plans require PA for non-emergency epinephrine use (such as allergy immunotherapy rescue doses). Verify PA status before elective encounters.
  • Local Coverage Determinations (LCDs): MACs can issue LCDs that specify acceptable ICD-10 codes, documentation requirements, and coverage limitations for J-code drugs in their jurisdiction. Check your MAC’s policy for epinephrine-related LCDs.
  • Commercial plan formulary: Some commercial plans limit J-code reimbursement to specific epinephrine formulations or require the generic (rather than Adrenalin brand). Check the plan’s drug formulary and J-code payment policy.

Overall, track J-code denials by payer, by denial reason code, and by the modifier used. In turn, the pattern tells you which payer rule is triggering the rejection, and what to correct before you resubmit.

Pro Tip

Request your MAC’s current Jurisdiction Summary annually. Most MACs publish an online portal with searchable LCDs and articles. Search for ‘epinephrine’ or ‘J0171’ – if an LCD exists, it will list covered ICD-10 codes and documentation requirements specific to your billing region.

What changed in 2025, and what to watch in 2026

The July 2025 HCPCS quarterly update is the change that matters for this code. In short, CMS deactivated J0171 effective July 1, 2025 and moved epinephrine onto a manufacturer-specific code set.

A claim for a date of service on or before June 30, 2025 still uses J0171. In contrast, a claim from July 1, 2025 forward uses J0165, or the single-source code that matches the product.

  • July 2025 HCPCS cycle: J0171 and J0173 were both discontinued with a last valid date of service of June 30, 2025. J0165, J0166, J0167, J0168, and J0169 were added effective July 1, 2025.
  • Split-year 2025 claims: Practices that treated patients on both sides of that date carry two code sets for the same drug in one calendar year. Audit your 2025 charges against the date of service before you close the year.
  • Late and corrected 2025 claims: Medicare’s timely filing limit runs one calendar year from the date of service. A June 2025 encounter could still be filed or corrected into mid-2026, and those lines correctly carry J0171.
  • 2026 HCPCS cycle: Check the CMS HCPCS quarterly update in January 2026 for descriptor revisions to J0165 through J0169 or for any new single-source additions.
  • Commercial payer updates: Commercial payers update their own fee schedules and J-code policies annually, often effective January 1. Confirm that each plan has loaded the new epinephrine codes before you bill them.

For historical claims or audits involving J0171, confirm the date of service falls on or before June 30, 2025. As a result, claims submitted with J0171 for a later date of service will be rejected by Medicare. The American Academy of Pediatrics flagged the change as landing hardest on pediatric and allergy practices, which are the settings that bill epinephrine most often.

How Pabau keeps a code change from reaching the claim

In practice, a mid-year code deletion like this one usually surfaces in the remittance file. The coder keeps a personal spreadsheet of J-code changes, and the charge master is updated whenever someone remembers. The July claims come back rejected before anyone notices that J0171 stopped being valid on the last day of June.

By contrast, practice management software like Pabau keeps the administered dose and the billed claim in step. Specifically, the drug, dose, route, lot number, and NDC are captured in the treatment record at the point of administration. As a result, nobody reconstructs them from memory a week later.

Charge codes live in one shared library, so updating the epinephrine entry once updates it for every user. Our software for injectable practices then carries that stored data onto the claim. It tracks what comes back by payer and by denial reason, so you can see which rule is costing you money.

The outcome is that a HCPCS change becomes a single scheduled edit instead of a quarter of rework. Even so, your coding team still decides which code applies. The system makes sure that decision is applied consistently, and that the documentation supporting it stays attached to the encounter.

Streamline injectable J-code billing with Pabau

Pabau’s claims management tools help practices track modifier requirements, document buy-and-bill workflows, and submit cleaner claims – reducing denials on HCPCS J-code submissions.

Pabau claims management dashboard

Conclusion

J0171 is now a historical code, and that is the practical point of this page. A claim for a date of service through June 30, 2025 still carries it. A date of service from July 1, 2025 onward does not.

The harder habit to build is the second decision. Epinephrine is no longer one code with one rate, so the labeler on the vial now changes the line you bill. As a result, that turns stock and charge capture into a billing question rather than a purely clinical one.

Practices that record the product at the point of administration make that call correctly every time. By contrast, practices that reconstruct it a week later are guessing, and the guesses show up in the remittance file.

Set a reminder for the CMS quarterly update in January, April, July, and October, and a deletion like this one stops being a surprise. To see how a shared charge library and claim tracking work in your billing workflow, book a demo.

Continue your research

Continue your research

Need to understand how clearinghouse submissions work for J-codes? Medical claims clearinghouse guide explains how electronic claims move from practice to payer and where J-code data is validated.

Want to reduce claim rejections before they happen? Clean claim requirements covers the data elements every J-code claim needs to pass the first payer edit.

Looking for guidance on revenue cycle management for injectable practices? Revenue cycle management overview walks through the full billing loop from charge capture to payment posting.

Frequently asked questions

What is HCPCS code J0171 used for?

HCPCS code J0171 was the billing code for Injection, Adrenalin, epinephrine, 0.1 mg. Specifically, practices used it to bill Medicare, Medicaid, and commercial payers for epinephrine given in an office or outpatient setting. Each unit billed corresponds to 0.1 mg administered. However, the code was deactivated on July 1, 2025, so it applies only to dates of service through June 30, 2025.

Has J0171 been deleted or replaced?

Yes. J0171 was deleted in the July 2025 HCPCS quarterly update, with June 30, 2025 as its last valid date of service. In its place, CMS replaced it with J0165, which covers brand-name epinephrine and therapeutically equivalent products. In addition, four manufacturer-specific codes sit alongside it: J0166 for BPI, J0167 for Hospira, J0168 for International Medication Systems, and J0169 for the Adrenalin-labeled product.

What ICD-10 code pairs with J0171 for anaphylaxis?

T78.2XXA (Anaphylactic shock, unspecified, initial encounter) is the primary ICD-10-CM code paired with J0171 for acute anaphylaxis. Notably, the same pairing carries over to J0165 through J0169. In addition, food-triggered anaphylaxis uses the T78.00-T78.09 range depending on the allergen. Always verify that the selected ICD-10 code meets the payer’s medical necessity criteria.

When is NDC reporting required with J0171?

NDC reporting is mandatory for all Medicaid claims involving covered outpatient drugs, including epinephrine. For Medicare Part B, requirements vary by MAC jurisdiction, so check your MAC’s current guidance. Report the NDC in N4 qualifier format, using the 11-digit NDC from the packaging of the specific lot administered. The NDC also tells you which of the successor codes applies.

Found our content helpful?
×