39 min read

> "CPT tells the payer what you did. HCPCS Level II tells them what you used, what you gave, and what

Prerequisites

  • 13
  • 17
  • 19

Learning Objectives

  • Explain what HCPCS Level II exists for and who maintains it.
  • Identify the letter families and what each covers.
  • Compute J-code units from a descriptor's dosage and an administered dose.
  • Apply the JW and JZ modifiers correctly and state what each asserts.
  • Describe DMEPOS billing and the documentation it requires.
  • Explain why G-codes exist and give a worked example.
  • Report an NDC alongside a HCPCS code and convert the quantity.
  • Decide between a CPT and a HCPCS code when both exist.
  • Recognize supplies that are never separately payable.
  • Report an unclassified drug code with the information the code does not carry.
  • Name the four distinct reasons a valid code does not pay.

Chapter 20: HCPCS Level II: Supplies, Equipment, Drugs, and the Codes CPT Doesn't Cover

"CPT tells the payer what you did. HCPCS Level II tells them what you used, what you gave, and what the patient took home." — constructed

Overview

Part III was three hundred pages of what a professional did.

This part is about everything that decides whether the claim gets paid — the things you used, the edits that check the combination, the policies that decide whether the service was needed, and the arithmetic that produces the dollar amount.

Chapter 20 is the second code set, and it exists because the first one has a gap.

CPT describes procedures and services. It does not describe an ambulance ride, a wheelchair, forty milligrams of a specific drug, a surgical tray, a knee brace, or a screening colonoscopy for a Medicare beneficiary who is not at high risk.

Somebody had to code those. HCPCS Level II is where they live.

Account 10-4471 has one line from this chapter, and it is the smallest and most misunderstood line on the claim: J1030, methylprednisolone acetate, 40 mg — \$18.00 charged, \$6.28 allowed. Every concept in this chapter is visible in it.

In this chapter, you will learn to:

  • Say what HCPCS Level II is for and who maintains it
  • Identify the letter families
  • Compute J-code units — the single most consequential arithmetic in this chapter
  • Apply JW and JZ, and say what each asserts
  • Describe DMEPOS billing and what it requires
  • Explain why G-codes exist
  • Report an NDC and convert its quantity
  • Choose between a CPT and a HCPCS code
  • Recognize supplies that are never separately payable

20.1 What HCPCS Level II is for

HCPCS — the Healthcare Common Procedure Coding System — has two levels.

Level I is CPT. Procedures and services, maintained by the American Medical Association, copyrighted, and the subject of Part III.

Level II is everything else — products, supplies, drugs, equipment, and services not described in CPT. Maintained by CMS, and published free.

That last fact matters more than it sounds. Chapter 13 §13.1 explained what follows from CPT being a copyrighted work sold rather than distributed. HCPCS Level II is the opposite: the complete code set, its quarterly updates, and its associated files are downloadable at no cost from CMS. A coder with no budget can hold the entire Level II code set.

The structure

Every HCPCS Level II code is one letter followed by four digits. The letter identifies the family.

Permanent codes are maintained through a public quarterly process with a formal application procedure. Temporary codes — several letter families are entirely temporary — allow CMS and other payers to establish a code quickly when a permanent one does not yet exist. A temporary code may become permanent, or may be replaced by a CPT code, or may simply persist for years.

⚠️ Where Claims Die

HCPCS Level II updates QUARTERLY, and most organizations handle code updates annually.

CPT's major update is annual — January 1 — and it is the one every practice has a process for. Level II changes four times a year, and drug codes in particular are added, revised, and terminated on that cycle.

The failure is a terminated code still in a charge master. It denies on the first claim of the new quarter, the denial is worked as a one-off, and it recurs on every subsequent claim until someone connects them. Chapter 6 §6.4 said most organizations treat code updates as a data problem; this is the code set where treating it as a data problem is not enough, because the data changes on a cycle nobody has calendared.

The fix is a quarterly calendar entry, and it is genuinely that simple.


20.2 The letter families, one line each

You do not memorize these. You learn the shape well enough to know where to look.

Family What lives there
A Transportation (ambulance), medical and surgical supplies, some administrative and investigational items
B Enteral and parenteral therapy
C Codes used in the hospital outpatient prospective payment system
E Durable medical equipment — wheelchairs, hospital beds, oxygen equipment, walkers
G Procedures and services Medicare needed a code for and CPT does not supply
H Behavioral health and substance abuse treatment services, largely state-defined
J DRUGS, other than those taken by mouth — injectables, infusions, chemotherapy, immunosuppressives
K Temporary codes for durable medical equipment
L Orthotics and prosthetics
M Medical services, screening, and certain quality measures
P Pathology and laboratory services
Q Temporary codes for a wide range of items and services
R Diagnostic radiology services, largely portable
S Temporary national codes established by non-Medicare payers
T Codes established for state Medicaid agencies
V Vision and hearing services

Four things worth carrying out of that table.

J is drugs, and it is the family you will use most in almost any outpatient setting.

E, K, and L are what the patient takes home, and they carry a documentation regime unlike anything else in this book — §20.5.

G is Medicare's own vocabulary for services CPT does not describe the way Medicare needs — §20.6.

And S codes are explicitly not Medicare's. They were established by non-Medicare payers, and Medicare does not recognize them. Reporting an S code to Medicare is reporting a code the payer does not have.

Ambulance, and the modifier that is two answers

The A family contains ambulance transport, and it carries a convention that exists nowhere else in either code set and that is worth seeing once.

An ambulance claim carries a TWO-CHARACTER modifier in which the FIRST character is the ORIGIN and the SECOND is the DESTINATION.

   Each character is a place:

     H  hospital            R  residence
     N  skilled nursing     S  scene of an accident
        facility            P  physician's office
     D  diagnostic or
        therapeutic site    E  residential/domiciliary/custodial facility
     I  site of transfer
        between ambulances  X  intermediate stop at a destination
                               covered by the codes above

   So:   RH  =  residence  →  hospital
         SH  =  scene      →  hospital
         HN  =  hospital   →  skilled nursing facility

The transport is one code. Where it started and ended is the modifier.

Why this matters beyond ambulance billing: it is the clearest demonstration in the book that a modifier is a fact, not a payment lever. Chapter 14 §14.1 opened with that idea and it has been true of every modifier since. Here it is unmistakable — nobody can pretend RH is a billing preference.

And origin and destination decide coverage, because ambulance benefits turn on where the patient went and why. A transport is not covered because an ambulance was used. It is covered because transport was necessary between two specific kinds of places.


20.3 J-codes: the drug, the dose in the descriptor, and the units

This is the most consequential section in the chapter, and it turns on one sentence.

THE DOSAGE IS IN THE DESCRIPTOR. THE UNITS ARE THE ARITHMETIC.

A J-code does not mean "this drug." It means a specific quantity of this drug.

   J1030   Injection, methylprednisolone acetate, 40 MG
                                                  ▲▲▲▲▲
                          THAT is the unit. Not the vial.
                          Not the injection. Not the patient.

To report a J-code you perform a division:

   UNITS  =  DOSE ADMINISTERED  ÷  DOSAGE IN THE DESCRIPTOR

🧮 Run the Numbers

Methylprednisolone acetate: one drug, two dosage descriptors.

The code set contains, among others:

  • J1030 — injection, methylprednisolone acetate, 40 mg
  • J1040 — injection, methylprednisolone acetate, 80 mg

Now code four scenarios.

Dose given Correct reporting Why
40 mg J1030 × 1 40 ÷ 40 = 1
80 mg J1040 × 1 a code for exactly this dose exists — use it
120 mg J1040 × 1 + J1030 × 1, or J1030 × 3 80 + 40; payer policy may prefer one form
20 mg J1030 × 1 you cannot report a fraction of a unit — see below

The 20 mg case is the one that generates arguments. A 40 mg descriptor billed for a 20 mg dose reports one unit, because units are whole numbers and there is no smaller code. What happened to the other 20 mg is §20.4's question, and it has its own modifier.

And the 80 mg case is the error coders actually make: reporting J1030 × 2 when J1040 × 1 exists. Both arithmetically describe 80 mg. Payer policy generally requires the code that matches the dose, and reporting two units of a smaller code where a larger one exists is a pattern edits look for.

When no J-code describes the drug

New drugs arrive faster than codes do, and the code set handles this with unclassified or not otherwise classified drug codes — a small number of codes meaning, in effect, "a drug for which no specific code exists."

An unclassified drug code carries NO information. The claim must supply what the code does not.

Three requirements, and payers enforce all three:

The drug name, the dose administered, and the route must appear in the claim's narrative field. A claim with an unclassified code and an empty narrative is a claim that says "we gave a drug."

The NDC is generally required, not optional — §20.8 — because for an unclassified code the NDC is the only thing identifying the actual product.

And the units are frequently reported as one, with the real quantity described in the narrative, because there is no dosage in the descriptor to divide by. Payer policy varies and it is published.

Two operational facts about unclassified codes:

They price manually. A claim with an unclassified drug code is reviewed by a person, which is slow and which makes the narrative genuinely load-bearing rather than decorative.

And they should be temporary. When a specific code is established — which happens quarterly — the unclassified code becomes wrong. A practice still reporting an unclassified code six months after a specific one exists is producing manual-review claims for no reason, and §20.1's quarterly calendar entry is what catches it.

The two directions of the units error

Too few units — reporting one unit of a 40 mg code for a 200 mg dose. A five-fold underpayment, paid, invisible, forever. Chapter 14's Case Study 2, one more time.

Too many units — reporting units as though the descriptor were "per mg" or "per vial." A substantial overpayment, and one that Chapter 21's medically unlikely edits are specifically built to catch, which means it will be caught, and the question is only when.

📋 Read the Chart

Source: procedure note and medication administration entry Encounter: office, joint injection What it says:

"…a 100 mg single-dose vial of the agent was opened. 60 mg was administered intra-articularly. The remainder was discarded."

What it means: three separate numbers, and each one does a different job.

  • 60 mg administered → divide by the descriptor's dosage to get the units on the drug line
  • 40 mg discarded → the JW line's units
  • 100 mg → the check: the two lines must add up to the container

What to do about it: report the drug line with the administered units, a JW line with the discarded units, and confirm the arithmetic closes. Do not report JZ — something was discarded, and JZ asserts that nothing was.

Now change one word. If the note says a multi-dose vial, there is no waste line at all — the remainder is available for another patient, and reporting JW would assert a discard that did not happen.

Where it appears: every office that injects anything, every day. And the three numbers are present only because someone wrote the vial size down, which is not clinically necessary and is entirely necessary for the claim.

🎓 Exam Watch

J-code units are on every certification exam and the arithmetic is always the same.

Read the descriptor for the dosage. Divide the dose given. Report whole units.

Three traps that travel with it:

A "per 10 mg" descriptor and a 100 mg dose is 10 units, not 1. Candidates who see a familiar drug name stop reading at the comma.

A code exists for the exact dose administered. Use it rather than multiplying a smaller one.

And the dose is not the vial. A 100 mg vial from which 60 mg was administered is 60 mg administered, and the remaining 40 mg is a waste question, not a units question.


What a drug line is actually worth

Drugs are not priced like procedures, and it is worth knowing why before Chapter 23 explains how procedures are priced.

Medicare generally pays for separately payable Part B drugs based on the drug's AVERAGE SALES PRICE, plus a percentage add-on — commonly described as ASP plus six percent, subject to statutory adjustments.

Three consequences.

The allowed amount tracks the market and changes quarterly. Average sales price is reported by manufacturers and republished on a quarterly file. A drug's allowed amount this quarter is not necessarily its allowed amount next quarter, which is unlike anything in the physician fee schedule.

The add-on is a percentage of the drug's price, which means the payment for handling an inexpensive drug is small in absolute terms. This is a structural fact with real consequences for practices that administer low-cost drugs, and it is the reason drug administration is a thin-margin activity even when the drug itself is expensive.

And the practice's acquisition cost is its own problem. A practice that buys a drug for more than the allowed amount loses money on every administration, and nothing in the claim process will tell it. Chapter 28 §28.8's underpayment comparison is the mechanism, and drugs are the category where practices most often discover they have been buying above what they are paid.

For Account 10-4471, J1030's allowed amount is \$6.28** against an \$18.00 charge. That gap is not a contractual discount in the ordinary sense** — it is a charge set by the practice against an allowed amount set by a published quarterly file. Chapter 23 §23.7 explains where the \$18.00 came from.


20.4 Waste, JW, and JZ

The 20 mg question from §20.3, answered.

A drug supplied in a single-dose container frequently does not match the dose a patient needs. A 40 mg vial for a 30 mg dose leaves 10 mg that cannot be used for anyone else and must be discarded.

JWdrug amount DISCARDED and not administered to any patient. Reported on a separate line, with the units representing the discarded amount.

JZZERO drug amount discarded. An affirmative statement that nothing was wasted.

Both are attestations, and the second one is the interesting one.

Why JZ exists

JW alone created an ambiguity. A claim with no JW line could mean nothing was wasted or nobody bothered to report the waste — and those are very different facts that looked identical on a claim.

JZ resolves it by requiring the negative to be stated. Now a claim says one of two things:

   J-code line + JW line ....... "we discarded this much"
   J-code line + JZ ............ "we discarded nothing"
   J-code line + neither ....... an INCOMPLETE claim

This is a documented negative — the same device Chapter 17 §17.7 identified in "no imaging guidance used", and the same one that decides, under Chapter 12 §12.2's rules, whether a diagnosis belongs to the injury chapter at all. The difference is that JZ is mandatory, which is what happens when a documented negative turns out to be load-bearing enough that the payer stops hoping for it.

Three rules

JW and JZ apply to single-dose containers. Multi-dose vials, by definition, hold doses for more than one patient, and the unused portion is not waste.

The waste must be documented in the medical record, not merely on the claim. The claim is the assertion; the record is the evidence — Chapter 5 §5.4, one more time.

And the units on the two lines must add up to the container. A 40 mg single-dose vial administered at 30 mg is J1030 with the administered units and a JW line for the discarded amount, and the two together account for the whole container. A claim where they do not is arithmetically wrong on its face.

🔍 Check Your Understanding

A 100 mg single-dose vial is opened. 75 mg is administered. The code's descriptor is "per 25 mg."

What goes on the claim?

Answer: Two lines.

The administered line: 75 ÷ 25 = 3 units. The JW line: 25 mg discarded ÷ 25 = 1 unit. Check: 3 + 1 = 4 units = 100 mg = the container.

No JZ, because something was discarded.

Now three variations, in order of how often they are missed:

A multi-dose vial instead. One line, 3 units, and JZ — there is no waste from a multi-dose vial, and the affirmative attestation is what the claim needs.

The whole 100 mg administered. One line, 4 units, JZ. Nothing discarded.

And the descriptor is "per 100 mg" instead. 75 mg administered is 1 unit — you cannot report a fraction — and the discarded 25 mg cannot be separately expressed either. This is a real limitation of the system rather than a coding puzzle, and the correct answer is one unit with JZ or JW per the payer's policy for sub-unit doses. Students who invent a fractional unit have solved a problem the code set does not have a solution for.

⚖️ Compliance Check

Drug billing is enforced on three specific patterns, and all three are arithmetic rather than judgment.

Waste reported that did not occur. A JW line is an assertion that a specific quantity was discarded. Reporting waste from multi-dose vials, or reporting the full remainder of every vial regardless of what happened, is a claim about a physical fact — and vial sizes, doses, and purchase records are all documentary.

Units that do not correspond to the dose. Chapter 21's medically unlikely edits catch the gross cases automatically. The cases that survive the edits are found by comparing units billed to drug purchased, which any payer with claims data and any organization with an inventory system can do.

And NDCs that do not match what was administered — reporting a product the practice did not have in stock on that date.

What makes this category different from most of this book is that the evidence is not in the medical record. It is in purchasing records, inventory, and vial sizes. A coder cannot verify it and should not be asked to. What a coder can do is refuse to compute waste from a formula — "we always bill the rest of the vial" is a formula, and §20.4 exists because formulas are not observations.

🗂️ The Encounter — J1030 on Account 10-4471

Line 3: J1030, one unit. \$18.00 charged, \$6.28 allowed.

The arithmetic. Figure 4.2's procedure note documents methylprednisolone acetate 40 mg. J1030's descriptor is 40 mg. 40 ÷ 40 = 1 unit. Straightforward — and it is straightforward only because the note states the dose. A note saying "steroid injected" supports no units at all.

The waste question. The note documents 40 mg administered from what the practice's supply record would show as a single-dose container. 40 mg supplied, 40 mg given, nothing discarded — which means JZ, the zero-waste attestation, and not JW.

Is JZ on the claim? The claim as coded on Day 1 carries J1030 with no modifier.

That is a documentation gap of exactly the kind this book keeps finding — not a coding error in the ordinary sense, and not an overpayment, but an incomplete assertion. The claim says how much was given and says nothing about whether anything was discarded, and the whole point of §20.4 is that silence is no longer an acceptable answer to that question.

What a coder does about it: append JZ, because the record supports it. What a coder does not do: append JW to capture a few dollars of waste that did not occur.

And the lidocaine — still not on the claim. Chapter 17 §17.2 established why: local anesthesia is inside the surgical package for 20610, and this chapter does not change that. A drug being codeable in HCPCS Level II does not make it separately payable. J-codes describe drugs; the surgical package decides whether this one is reportable, and it is not.


20.5 DMEPOS and the codes that follow the patient home

DMEPOS — durable medical equipment, prosthetics, orthotics, and supplies — is a category with its own suppliers, its own enrollment, its own fee schedules, and a documentation regime unlike anything else in this book.

Most coders will never bill it. Everyone should understand why it is different.

What makes something durable medical equipment

The classic test, in substance: the item can withstand repeated use, is primarily and customarily used to serve a medical purpose, is generally not useful in the absence of illness or injury, and is appropriate for use in the home.

Each clause excludes something. Disposables fail the first. Comfort items fail the third. Equipment that only makes sense in a facility fails the fourth.

The documentation

DMEPOS is documentation-first in a way nothing else in this book is. The claim is nearly a formality; the order and the medical record are the service.

A written order — with the beneficiary's name, the item, the prescribing practitioner, the practitioner's identifier, and the order date — generally must be in the supplier's possession before the claim is submitted, and the specific requirements vary by item category.

The medical record must independently support the need — and this is the trap. The order is not evidence of medical necessity; it is evidence that an order was written. The record must show why the patient needs the item, and audits of this category consistently find orders in file and nothing in the record behind them.

Some items require additional documentation — a face-to-face encounter within a defined period, or a certificate of medical necessity, or a written order prior to delivery. The requirements are item-specific and they are published.

And suppliers enroll separately, hold their own supplier numbers, and are subject to their own standards. A physician practice that dispenses a brace has become a supplier, with everything that implies, and practices frequently discover this after the fact.

Rental, purchase, and the modifiers that say which

Durable medical equipment is frequently rented rather than purchased, and the claim has to say which. Three modifiers carry it:

NU new equipment, purchased
UE used equipment, purchased
RR rental

And rental is not open-ended. Several categories operate under a capped rental arrangement: the item is rented for a defined number of months, after which ownership generally transfers to the beneficiary or the arrangement converts. Oxygen equipment operates under its own rules, different again.

Two consequences for a coder or biller:

The rental month must be tracked, because the payment and the arrangement change over the course of it. This is a calendar problem, not a coding problem, and organizations that treat it as a coding problem lose track of caps.

And continued medical need must generally be documented over time — not once, at the beginning. An item rented for a year is a claim made twelve times, and the record has to support it each time.

Competitive bidding applies to certain items in certain areas: only contracted suppliers may furnish those items to beneficiaries in those areas. A supplier without a contract cannot bill them, regardless of how correct the claim is. It is another instance of the pattern §20.10 ends on: a code existing is not the same as a code being payable, and here it is not even the same as being allowed to furnish the item.

⚖️ Compliance Check

DMEPOS carries the highest documented improper payment rates of any category in this book, and the finding is almost always the same: the item was delivered, the order existed, and the medical record did not support the need.

That is not fraud in most cases. It is a clinician who believed the item was appropriate and did not write down why, in a category where the rules require that they write down why.

The lesson generalizes. Everywhere else in this book, documentation supports a code. Here, documentation IS the qualification — and an item can be genuinely needed, genuinely delivered, and entirely unpayable because the record does not contain the specific facts the policy requires.

Which is why the remedy is never "document more." It is: read the policy for this item, find the list of facts it requires, and put that list in front of the clinician. Chapter 22 makes the same argument about coverage policies generally, and it is the single most transferable idea in Part IV.


20.6 G-codes and the Medicare-only vocabulary

G-codes exist because CMS needed a code that CPT does not supply, or does not supply in the form CMS needs.

Three reasons a G-code gets created, and understanding them makes the family navigable rather than arbitrary:

CPT has no code for the service. A Medicare-specific benefit — the annual wellness visit, for example — exists as a benefit before it exists as a CPT code, and needs to be reportable.

CPT has a code and Medicare needs a different one. Chapter 15 §15.9's G2212 is the worked example: CPT created 99417 for prolonged services with one threshold; CMS adopted a different threshold and created its own code to carry it. The service is the same. The rule is not.

Or Medicare needs to distinguish something CPT does not. Screening colonoscopy is the clean example — G0105 for a beneficiary at high risk and G0121 for one who is not — a distinction that is about coverage rather than about the procedure, and therefore not one CPT would make.

G-codes are a moving target, deliberately

A G-code is frequently a placeholder for a decision that has not settled. Several patterns recur:

A G-code becomes a CPT code. A service Medicare needed to pay for before CPT described it eventually gets a CPT code, and the G-code is terminated. A charge master still carrying the G-code denies immediately.

A G-code persists alongside a CPT code indefinitely — G2212 and 99417 are the standing example, and there is no sign of either one going away, because they encode two different rules rather than two descriptions of one service.

And G-codes get created for measurement rather than for payment. Several G-code families have existed to report quality measures, functional status, or care-management activities — reported at zero or nominal payment, purely to capture data. Some were later retired when the measurement program changed.

The practical consequence: G-codes are the family most likely to be terminated out from under a charge master, which is §20.1's quarterly-update warning with a specific address. If you audit one letter family against the current file each quarter, audit G.

And this connects to Chapter 3. Medicare's benefit structure, statutory definitions, and coverage rules are the reason G-codes exist at all. A G-code is what it looks like when a payer's rules and a code set's descriptions do not line up — and the more specific a payer's rules, the more of its own vocabulary it needs.

🔢 Code It

Screening colonoscopy, two beneficiaries, two codes.

A Medicare beneficiary at average risk: G0121. A Medicare beneficiary at high risk: G0105.

The procedure is identical. The scope, the prep, the time, the physician's work — all the same. What differs is the coverage rule, because screening frequency limitations differ by risk status, and the code is how the claim tells the payer which rule applies.

Now the same procedure for a commercial patient, whose plan uses CPT: a CPT screening colonoscopy code.

Same procedure. Three codes. The right one depends on who is paying — which is Chapter 16 §16.5's consultation problem in a different family, and by now it should be a familiar shape rather than a surprise.

And Account 22-9107 is the complication: a screening that becomes therapeutic. Chapter 18 §18.2 established the coding; Chapter 34 §34.11 still owns the money.


20.7 Q, S, and T codes

Three temporary families, three different reasons for existing.

Q codes are temporary national codes for a broad range of items and services — drugs, biologicals, casting supplies, certain services — established when a permanent code does not exist or while one is being considered. Chapter 17 §17.8's casting materials are Q codes, and they are the example most coders meet first.

S codes were established by non-Medicare payers — historically the Blue Cross Blue Shield Association and the Health Insurance Association of America — to report drugs, services, and supplies for which no national code exists. Medicare does not recognize them.

T codes were established for state Medicaid agencies, for services Medicaid programs need to report and for which no permanent national code exists. Medicare does not recognize them either.

The practical rule: know which of these your payers accept, and never send an S or T code to Medicare. It is a code the payer does not have, and the denial is not appealable, because there is nothing to appeal to.


20.8 The NDC-to-HCPCS problem

A J-code is not the only identifier a drug has. Every drug product in the United States also carries an NDC — a National Drug Code — which identifies the labeler, the product, and the package size.

Many payers, and most state Medicaid programs, require the NDC on the claim in addition to the HCPCS code, and this creates a genuinely awkward conversion.

   THE TWO IDENTIFIERS DESCRIBE DIFFERENT THINGS

   HCPCS J-code ..... a DOSAGE of a drug ................ "40 mg"
   NDC .............. a PRODUCT in a PACKAGE ............ "this
                      manufacturer's 40 mg/mL, 1 mL vial,
                      in a carton of 25"

The claim requires both, and it requires a quantity for each — in different units.

The NDC quantity is reported in its own unit of measure, identified by a qualifier: milliliters, units, grams, each. The HCPCS units are the §20.3 arithmetic. They will frequently be different numbers describing the same administration, and that is correct.

Three rules that prevent most NDC denials:

The NDC must be the one actually administered. Not the one usually stocked. A change of manufacturer changes the NDC, and a claim carrying last quarter's NDC for this quarter's vial is reporting a product that was not given.

The format matters. NDCs appear on packaging in several formats and payers generally require a specific one, commonly an 11-digit form with leading zeros inserted in the appropriate segment. The conversion is mechanical and it is where most rejections come from.

And the unit-of-measure qualifier must match the product. A drug supplied in milliliters reported with a "unit" qualifier will deny, and the denial reason will not say so clearly.

⚠️ Where Claims Die

NDC rejections are high-volume, mechanical, and almost entirely preventable — and they are the clearest example in this book of a problem that belongs in a system rather than in a person.

Four causes:

The format. NDCs are printed in several segment formats and payers generally require one specific form with leading zeros inserted in the right segment. A human doing this conversion by hand will get it wrong at a predictable rate, and the rate does not improve with experience.

A stale NDC. The practice changed suppliers, the manufacturer changed, and the charge master still carries the old product. The claim reports a product that was not administered — which is not a formatting problem, it is a factual one.

A mismatched qualifier. Milliliters reported as units, or the reverse.

And a quantity computed from the wrong identifier — the HCPCS units copied into the NDC quantity field, which are different numbers describing the same administration and only coincidentally equal.

The fix is not training. It is storing the correctly formatted NDC, its unit of measure, and its conversion factor against the charge master line, so that the claim assembles them rather than a person retyping them. Every organization that has done this has stopped having the problem.


20.9 When CPT and HCPCS both have a code

Sometimes both code sets describe the same thing. Which one you report is a payer question, and it has a default.

For Medicare, when a HCPCS Level II code describes the service more specifically, or exists precisely because Medicare needed it, the HCPCS code is generally the correct one.

For payers that do not recognize the HCPCS code, the CPT code is.

Three worked examples from this book:

Situation Medicare Commercial
Prolonged outpatient E/M (Ch. 15 §15.9) G2212 99417
Screening colonoscopy, average risk G0121 CPT screening code
A service with an S code not payable possibly the S code

The habit that makes this manageable: when you find two codes describing one service, ask who is paying before you ask which is better. There is no universally correct answer and looking for one wastes time.

Why this is harder than it sounds operationally

The rule is simple. Implementing it is not, because a practice bills many payers from one charge master and one coding workflow.

Three ways organizations handle it, in ascending order of how well they work:

By memory. A coder knows that Medicare gets the G-code. This works until the coder is on vacation, and it produces a steady low-level error rate nobody can trace.

By a rule in the claim system. The charge master carries both codes, and a payer-specific rule substitutes the correct one at claim generation. This works well and it is what most organizations should do.

By separate charge master entries with payer-specific mappings. More maintenance, more control, and the approach large organizations converge on.

What does not work is picking one and hoping. A practice that reports 99417 to everyone is wrong for Medicare; a practice that reports G2212 to everyone is wrong for everyone else. There is no default that is right more than half the time, which is unusual — most coding ambiguities have a safe choice, and this one does not.

And this is the shape of Part IV. Chapter 21's edits, Chapter 22's coverage policies, and Chapter 23's fee schedules are all payer-specific in exactly this way. Part III taught you what the codes mean. Part IV is about the fact that meaning is not enough.


20.10 Supplies that are never separately payable

The chapter's last rule, and it saves a great deal of futile billing.

Supplies and materials that are USUAL for a procedure are included in that procedure's payment.

Chapter 17 §17.1 said this about the surgical package. This is the same rule from the supply side, and it reaches beyond surgery.

Never separately payable, in general:

  • Local anesthesia for a procedure that includes it — Account 10-4471's lidocaine
  • Usual dressings, sutures, and drapes
  • The surgical tray, in most circumstances — A4550 exists, and it is a classic example of a code that exists and is generally not payable
  • Routine supplies consumed in the course of an office visit

Sometimes separately payable, and worth checking:

  • Casting and splinting materials — Chapter 17 §17.8, Q codes
  • Drugs, which are supplies but are not "usual materials"
  • Implants and devices, depending on the setting and the payment methodology
  • Items dispensed to the patient for use at home — §20.5

Four reasons a valid code does not pay

"A code exists" and "a code pays" are independent facts, and by the end of Part IV you will have met four distinct reasons for the gap. It is worth naming them together now, because coders reliably conflate them and each has a different remedy.

Reason Example What to do
Bundled into another service A4550 · local anesthesia in a package Remove the charge. Nothing to appeal
Not a benefit at all a statutorily excluded item Notice and liability modifiers — Ch. 14 §14.11, Ch. 22 §22.9
Not recognized by this payer an S code sent to Medicare Use the code that payer has
Not medically necessary as documented a covered service without support Chapter 22 — this is the only one where the record can change the answer

The first three are settled before the claim goes out. Only the fourth is arguable, and coders routinely appeal the first three as though they were the fourth — which is how a billing office spends a year writing letters about a surgical tray.

Before you appeal anything, ask which of the four you are in. It is the fastest triage in the book and Chapter 29 §29.5 builds a work queue around it.

📞 On the Phone

"You're billing us for a surgical tray."

The caller is probably right, and the interesting part is why the line is there at all.

A4550 exists. It is a real, current, correctly formatted HCPCS Level II code that accurately describes a surgical tray. It is also, under most payment methodologies, not separately payable, because the tray is a usual supply included in the procedure's payment.

A code existing is not the same as a code being payable. That sentence is worth more than anything else in this section, and it is the source of a specific kind of futile work: a charge master line that generates a denial on every claim, forever, because someone once found a code that matched the item.

What works: "You're right that it's not separately payable under this contract — I'll get that line removed from the charge. Can you confirm whether it's excluded across the board or only for facility claims?"

What does not work: appealing it. There is nothing to appeal. The code is correct and the payment policy is that it is bundled, and those two facts coexist comfortably.

And then go find out how many other lines like it are in your charge master. Chapter 23 §23.9 is about charge master maintenance, and this is what it finds.


Summary

HCPCS Level II is the second level of the coding system — products, supplies, drugs, equipment, and services CPT does not describe. Maintained by CMS and published FREE, unlike CPT. One letter plus four digits. Permanent and temporary codes. Updates QUARTERLY, which is the update cycle most organizations do not have calendared.

The families: A transportation and supplies · B enteral/parenteral · C OPPS · E durable medical equipment · G Medicare's own vocabulary · H behavioral health · J DRUGS · K temporary DME · L orthotics and prosthetics · M · P · Q temporary · R · S non-Medicare payers · T state Medicaid · V vision and hearing.

THE DOSAGE IS IN THE DESCRIPTOR. UNITS = DOSE ÷ DESCRIPTOR DOSAGE.

Use the code that matches the dose where one exists. Too few units is an invisible underpayment; too many is what Chapter 21's medically unlikely edits are built to catch.

JW reports drug discarded; JZ reports zero discarded. Both are attestations, JZ exists because silence was ambiguous, they apply to single-dose containers, the waste must be in the record, and the two lines must account for the whole container.

DMEPOS is documentation-first. The written order must generally be in the supplier's possession before billing, the medical record must independently support the need — an order is not evidence of necessity — and some items require a face-to-face encounter or a certificate of medical necessity. A practice that dispenses equipment has become a supplier.

G-codes exist because CPT has no code, or because Medicare needs a different rule (G2212), or because Medicare needs a distinction CPT would not make (G0105 / G0121).

Ambulance claims carry a two-character modifier in which the first character is the ORIGIN and the second the DESTINATION — the clearest demonstration in the book that a modifier is a fact, not a payment lever.

Unclassified drug codes carry no information, so the claim must: state the drug name, dose, and route in the narrative, supply the NDC, and follow the payer's units convention. They price manually, and they should be temporary — when a specific code is established, the unclassified code becomes wrong.

DME rental versus purchase: NU new purchase · UE used purchase · RR rental. Capped rental categories run a defined number of months; the rental month must be tracked and continued need documented over time. Competitive bidding limits who may furnish certain items at all.

G-codes are the family most likely to be terminated out from under a charge master. If you audit one letter family quarterly, audit G.

Q, S, and T are temporary. Medicare does not recognize S or T codes.

The NDC identifies a PRODUCT IN A PACKAGE; the J-code identifies a DOSAGE. Both are required by many payers, with different quantities in different units of measure, and the NDC must be the one actually administered, in the required format, with a matching qualifier.

When both code sets have a code, ask who is paying before asking which is better.

Usual supplies are included in the procedure. A code existing is not the same as a code being payable — A4550 is the standing example — and there are four distinct reasons a valid code does not pay: bundled · not a benefit · not recognized by this payer · not medically necessary as documented. Only the last is arguable, and appealing the first three is how a billing office spends a year writing letters about a surgical tray.

Account 10-4471's J1030 is one unit (40 ÷ 40), should carry JZ, and the lidocaine is still not on the claim because the surgical package includes it — a drug being codeable does not make it separately payable.


Key Terms

HCPCS Level II — the code set covering products, supplies, drugs, equipment, and services not described in CPT. Maintained by CMS and published free. (Ch.20)

Permanent code — a HCPCS Level II code maintained through the public quarterly process. (Ch.20)

Temporary code — a code established quickly by CMS or another payer where no permanent code exists; may become permanent, be replaced, or persist. (Ch.20)

J-code — a HCPCS Level II code for a drug other than one taken by mouth, whose descriptor specifies a dosage. (Ch.20)

Dosage-based reporting — the practice of selecting units by dividing the dose administered by the dosage stated in the code's descriptor. (Ch.20)

Units of service — the whole-number quantity reported on a claim line. (Ch.20)

Average sales price (ASP) — the manufacturer-reported price on which Medicare's payment for separately payable Part B drugs is generally based, plus a percentage add-on, republished quarterly. (Ch.20)

JW modifier — drug amount discarded and not administered to any patient, reported on a separate line with the discarded units. (Ch.20)

JZ modifier — zero drug amount discarded; an affirmative attestation that nothing was wasted. (Ch.20)

Single-dose vial — a container intended for one patient, whose unused remainder is waste. (Ch.20)

DMEPOS — durable medical equipment, prosthetics, orthotics, and supplies. (Ch.20)

Standard written order — the order that must generally be in a supplier's possession before a DMEPOS claim is submitted. (Ch.20)

Certificate of medical necessity — additional documentation required for certain DMEPOS items. (Ch.20)

G-code — a HCPCS Level II code established because CPT has no code, because Medicare requires a different rule, or because Medicare requires a distinction CPT does not make. (Ch.20)

Q-code — a temporary national code for a broad range of items and services, including casting supplies. (Ch.20)

S-code — a temporary national code established by non-Medicare payers. Not recognized by Medicare. (Ch.20)

T-code — a code established for state Medicaid agencies. Not recognized by Medicare. (Ch.20)

NDC — National Drug Code; identifies the labeler, product, and package size of a drug product. (Ch.20)

NDC-to-HCPCS conversion — the reporting of both identifiers on one claim line with different quantities in different units of measure. (Ch.20)

Incident-to supply — a supply usual to a procedure or visit and included in its payment rather than separately reportable. (Ch.20)

Origin and destination modifier — the two-character ambulance modifier whose first character identifies where the transport began and whose second identifies where it ended. (Ch.20)

Unclassified drug code — a code meaning "a drug for which no specific code exists," requiring the drug name, dose, and route in the claim narrative and generally the NDC; priced manually. (Ch.20)

NU / UE / RR — modifiers identifying durable medical equipment as new purchased, used purchased, or rented. (Ch.20)

Capped rental — a rental arrangement running a defined number of months, after which ownership generally transfers or the arrangement converts. (Ch.20)


Spaced Review

  1. Who maintains HCPCS Level II, and what does that mean for what it costs you? Contrast with Chapter 13 §13.1.

  2. How often does HCPCS Level II update, and what failure does the mismatch with an annual update process produce?

  3. A drug's descriptor reads "per 10 mg" and 100 mg was administered. How many units?

  4. A 40 mg single-dose vial is used to administer 30 mg. What goes on the claim, and what must the two lines add up to?

  5. What does JZ assert, and why does it exist? Name two other documented negatives from earlier chapters.

  6. (Chapter 17) Account 10-4471's note documents 3 mL of 1% lidocaine. J-codes describe drugs. Why is it not on the claim?

  7. A DMEPOS audit finds a valid written order in the supplier's file and repays the claim anyway. What was missing, and what is the general lesson?

  8. (Chapter 15) Why does G2212 exist when 99417 already did?

  9. A4550 is a valid, current HCPCS Level II code. Explain why billing it usually produces a denial that should not be appealed.

  10. Name the four distinct reasons a valid code does not pay. Which is the only one where the medical record can change the answer?

  11. Separately payable Part B drugs are generally paid based on what, plus what? Name two consequences, one of which is invisible to a practice until someone compares payments to acquisition cost.

  12. An ambulance claim carries the modifier RH. What does each character mean, and why is this the clearest illustration in the book of what a modifier is?

  13. A drug has no specific J-code. Name the three things the claim must supply that the code does not, and say why an unclassified code should be temporary.

  14. Durable medical equipment is supplied under a capped rental arrangement. Name the two things that must be tracked over the months, and say which one is a calendar problem rather than a coding one.