HCPCS code J0120 – Tetracycline injection
J0120 is the HCPCS Level II code for injection, tetracycline, up to 250 mg. It remains active in the October 2026 CMS HCPCS file.
One billed unit covers up to 250 mg, so a 500 mg dose is two units. No injectable tetracycline is currently marketed in the US, and CMS lists no ASP payment limit for the code. Confirm which drug was given before you bill it.
- Level
- Level II
- Category
- J — Drugs administered other than oral method
- Status
- Active in the October 2026 CMS HCPCS file (no termination date)
- Billable
- No
- Code also known as
- Tetracyclin injection, tetracycline hydrochloride injection
Let Pabau's smart automation suggest the right codes, reduce claim denials, and keep your practice compliant—effortlessly.
- AI-powered code suggestions
- Real-time compliance checks
- Faster claims, fewer denials
Automate repetitive tasks and focus on what matters most—your patients.
Reduce coding errors and ensure compliance with the latest regulations.
Clean claims, fewer denials, and faster reimbursements.
Powerful insights and reporting to help your practice thrive.
HIPAA compliant SOC 2 certified GDPR-compliant Trusted by 4,000+ clinics worldwide
Key takeaways
HCPCS Code J0120 covers injection, tetracycline, up to 250 mg, and is still active in the October 2026 CMS HCPCS file.
One unit covers up to 250 mg, so a 500 mg dose is two units and a 300 mg dose is also two.
Every injectable tetracycline product in the FDA’s approval database is listed as discontinued, so a J0120 claim line is rare.
J0120 has no payment limit in the October 2026 ASP file, so your Medicare contractor prices any claim that uses it.
Before you bill J0120, confirm the drug given was not doxycycline, minocycline, oxytetracycline or amikacin, which each have their own codes.
J0120 descriptor and code status
HCPCS Code J0120 is the Level II code for injection, tetracycline, up to 250 mg per billed unit. Its one descriptor names tetracycline and no other drug.
Some older billing references pair J0120 with amikacin, which is wrong. Amikacin has its own code, J0278.
CMS added J0120 to the code set in 1986 and last changed its record in 2018.
The CMS HCPCS quarterly update page holds the current file, so recheck the status each quarter before you rely on it.
Why J0120 is still active but rarely billed
Tetracycline is a broad-spectrum antibiotic that US practices now give almost entirely by mouth. The injectable form has largely left the market.
The FDA’s Drugs@FDA database lists every tetracycline injection product it holds, including Achromycin and Tetracyn, as discontinued. The CMS crosswalk for October 2026 maps no NDC to J0120 either.
So the code survives in the file, but there is little to bill it for. That changes how you treat a J0120 line when one appears:
- Check the drug first: confirm the clinician gave tetracycline itself, not a newer drug from the same class
- Check the route: oral tetracycline is not a J-code drug, and a self-administered tablet is not billed this way
- Check the product: record the product name, lot and source in the note, since no listed NDC exists to back it up
- Ask the payer: confirm coverage before the dose, because Medicare Part B generally pays only for FDA-approved drugs
The billing mechanics are simple once the code fits. Those checks come down to two questions: was the drug tetracycline, and was it injected? The decision path below routes each drug to the code that bills it.

Billing units for J0120
One unit of J0120 covers up to 250 mg of tetracycline. Payers do not accept fractional units, so any part of a 250 mg block counts as a whole unit.
Record the exact milligrams given in the note, then work out units from that figure. A note that only says “one vial” leaves a reviewer no way to check the units.
How Medicare prices J0120
Medicare pays most Part B drugs from the quarterly average sales price (ASP) file. J0120 does not appear in the October 2026 payment limit file, so there is no national ASP amount to look up.
When a code is missing from that file, the Medicare Administrative Contractor (MAC) sets the payment. Ask your MAC how it prices J0120 before you schedule the dose. Some contractors want the invoice for the drug sent with the claim.
Check the current CMS ASP pricing files each quarter, as a code can be added in a later release. The injection service itself, such as 96372 for an intramuscular injection, is a separate line on the physician fee schedule.
Pro Tip
Keep a note of which quarter’s ASP file you checked for J0120 and what your MAC told you. If a payment looks wrong later, you have the reference point in one place.
Documentation requirements for J0120 claims
Because injectable tetracycline is so rare, a J0120 claim draws more scrutiny than most drug lines. The note has to show exactly what was given and why.
- Drug name: tetracycline, written in full, not a class name such as “tetracycline antibiotic”
- Product details: product name, manufacturer or compounding source, and lot number
- Dose: the exact milligrams given, with each unit covering up to 250 mg
- Route: intravenous or intramuscular
- Date of service: matching the date on the claim
- Medical necessity: why an injection was needed instead of an oral antibiotic
- Provider: the name and NPI of the ordering and administering clinician
A complete superbill carries the code, units, diagnosis and NPI together. That keeps the claim line matched to the record behind it.

Which modifiers apply to J0120?
Modifiers on a J0120 line describe drug wastage or the coverage expectation. Use only the ones that match the situation.
JZ and JW only apply when the drug came from a single-dose container. Confirm how your product was supplied, then follow your MAC’s current guidance.
Related tetracycline-class and neighboring J-codes
Most claims that land on J0120 by mistake belong under another code. Oxytetracycline bills under J2460 in units of up to 50 mg, and minocycline under J2265 per milligram. The table lists the codes coders most often confuse with J0120.
Other aminoglycosides have their own codes too. Gentamicin is J1580 and tobramycin is J3260, each billed per unit of up to 80 mg.
J3490, for unclassified drugs, is not a fallback for tetracycline. J0120 is the specific code, so use it only when tetracycline itself was given.
Common J0120 claim denials and how to avoid them
J0120 denials usually start with the code choice or the note. The denial codes reference explains each returned reason code.
Pro Tip
If J0120 shows up in your claims history at all, pull those encounters and check the drug name in each note. A J0120 line on a doxycycline or amikacin dose is a coding error, not a coverage problem.
How Pabau keeps rare drug codes matched to the note
A rare code like J0120 is easy to pick by mistake. The note names one drug, and the claim codes another. Nobody spots it until the denial arrives.
In Pabau, the treatment note and the invoice sit in the same patient record. Your billing team can read the drug and dose the clinician recorded before choosing the code. Pabau’s claims management for practices then sends the insurance claim and tracks what comes back.
The outcome is fewer lines coded from memory, and a quicker answer when a payer asks what was given.
Keep every drug claim matched to the treatment note
Pabau keeps treatment notes, invoices and insurance claims in one patient record. Your billing team codes from what was documented, not from memory.

Conclusion
J0120 is a valid code with almost no product left to bill under it. The units and modifiers are simple, so the code choice carries most of the risk.
When J0120 appears on a claim, treat it as a prompt to check the note. Most of the time, the drug given has a code of its own. Book a demo to see how Pabau keeps the treatment note and the claim line in step.
Continue your research
Billing the tetracycline-class drug that is still on the market? HCPCS Code J2460 covers oxytetracycline injection, its units and its pricing.
Was the antibiotic amikacin? HCPCS Code J0278 explains how to bill amikacin sulfate in 100 mg units.
Want fewer drug-line rejections overall? Clean claim best practices walks through what every claim needs before it reaches the payer.
Tracking denials across your billing workflow? Denial management in healthcare covers how to categorize and resolve them.
Frequently asked questions
What does HCPCS Code J0120 cover?
HCPCS Code J0120 covers injection, tetracycline, up to 250 mg per billed unit. It is a HCPCS Level II J-code for tetracycline given by injection. It does not cover amikacin, which is J0278.
Is J0120 still a valid HCPCS code?
Yes. J0120 is active in the October 2026 CMS HCPCS file and has no termination date. Recheck the quarterly file before billing, as codes can change.
How many units of J0120 do I bill?
Bill one unit for each 250 mg or part of 250 mg given. A 250 mg dose is one unit, and a 300 mg or 500 mg dose is two units.
What is the Medicare payment rate for J0120?
J0120 has no payment limit in the October 2026 ASP file. Your Medicare Administrative Contractor sets the payment, so ask it before you bill.
Is J0120 the code for amikacin?
No. Amikacin sulfate injection is J0278, billed per 100 mg. J0120 is tetracycline only, and older references that link it to amikacin are wrong.



