4.3 HCPCS Level II codes
Key Takeaways
- HCPCS has two levels: Level I is CPT (AMA), and Level II is the alphanumeric national code set maintained by CMS.
- A HCPCS Level II code is one letter (A–V) followed by four digits, such as E0114, J1885, or A0428.
- Level II reports items CPT does not cover well: supplies, durable medical equipment (DME), drugs administered by injection (J-codes), and ambulance services.
- J-codes report drugs given other than by mouth and require correct units matched to the dosage administered.
- HCPCS modifiers are alphanumeric (e.g., -RT/-LT, -GA for an ABN on file, -NU for new equipment) and can be reported alongside CPT codes.
The two levels of HCPCS
HCPCS stands for the Healthcare Common Procedure Coding System (pronounced "hick-picks"). It has two levels, and confusing them is a common exam trap:
- Level I is CPT — the five-digit numeric codes maintained by the AMA, covered in sections 4.1 and 4.2.
- Level II is the national alphanumeric code set maintained by the Centers for Medicare & Medicaid Services (CMS). It exists to report products, supplies, and services that CPT does not describe well.
Because CMS maintains Level II, these codes are especially important for Medicare and Medicaid claims, though most commercial payers accept them too.
Structure of a Level II code
A HCPCS Level II code is one letter (A–V) followed by four digits — for example, E0114 (crutches), J1885 (injectable ketorolac), or A0428 (basic life support ambulance). The opening letter signals the category, so a coder can often tell at a glance what type of item a code represents. Like CPT, Level II codes accept two-character modifiers to add detail.
What the letter categories cover
| Letter | Category | Examples |
|---|---|---|
| A | Transportation, medical/surgical supplies | Ambulance, dressings, syringes |
| B | Enteral and parenteral therapy | Tube-feeding supplies |
| E | Durable medical equipment (DME) | Wheelchairs, walkers, hospital beds |
| G | Temporary procedures/professional services | Medicare-specific services |
| J | Drugs administered other than oral | Injectable and infused drugs |
| K | Temporary codes for DME | DME items pending permanent codes |
| L | Orthotics and prosthetics | Braces, artificial limbs |
| Q | Temporary codes | Miscellaneous CMS-assigned items |
| V | Vision and hearing services | Eyeglasses, hearing aids |
When to use HCPCS Level II instead of CPT
The guiding rule: CPT reports the procedure or service; HCPCS Level II reports the supply, equipment, drug, or transport that goes with it. Some common decision points:
- Supplies and DME — a wheelchair, walker, or nebulizer is coded with an E-code, not a CPT code.
- Injectable and infused drugs — the administration (giving the injection) is a CPT code, but the drug itself is a J-code. For example, CPT reports the injection procedure while J1885 reports the ketorolac that was injected.
- Ambulance — transport is reported with A-codes plus origin/destination modifiers.
- Medicare-required services — G- and Q-codes capture services CMS needs that have no CPT equivalent.
When both a CPT and a HCPCS code could describe the same service, payer rules decide. Many Medicare contractors require the HCPCS Level II code; always follow the payer's guidance.
Permanent versus temporary codes
Not every Level II code is permanent. National permanent codes are approved by the HCPCS workgroup and appear across the alphabet (A, E, J, L, and so on). Temporary codes — including many G-codes (professional services Medicare needs), K-codes (DME awaiting a permanent code), and Q-codes (miscellaneous CMS items) — let CMS respond quickly to a new drug or device without waiting for the annual cycle. A temporary code may later be replaced by a permanent one, so the coder must confirm a code is still active rather than rely on memory. C-codes are another temporary set used mainly in the hospital outpatient (OPPS) setting, which a physician-office biller will encounter less often.
J-codes and drug units
J-codes are among the most error-prone codes in billing. Each J-code descriptor specifies a dosage amount, and the coder reports units that match how much drug was actually given. If a J-code represents 15 mg and the physician administered 30 mg, the coder bills two units, not one. Mismatched units are a frequent cause of denials and audits, so the dose in the medical record must be reconciled with the code descriptor and the units field on the claim.
HCPCS modifiers
HCPCS Level II includes its own alphanumeric modifiers, which may be reported on either HCPCS or CPT codes. High-yield examples include:
| Modifier | Meaning |
|---|---|
| -LT / -RT | Left side / right side of the body |
| -GA | Waiver of liability on file — an ABN (Advance Beneficiary Notice) was signed |
| -GY | Item or service is statutorily excluded from the benefit |
| -GZ | Item expected to be denied; no ABN was obtained |
| -NU | New equipment |
| -RR | Rental of equipment |
| -E1–E4 | Specific eyelids (upper/lower, right/left) |
The ABN modifiers (-GA, -GY, -GZ) are frequently tested because they signal to Medicare whether the patient was warned in writing that a service might not be covered.
Maintenance and updates
CMS updates HCPCS Level II regularly. Permanent national codes are revised annually, but temporary codes (such as many G, K, and Q codes) can be added or changed quarterly to keep pace with new drugs and devices. Because of this faster cycle, coders should check for HCPCS updates more often than the once-a-year CPT and ICD-10-CM revisions. Always confirm a Level II code is still active before submitting a claim, and match every supply, drug, and piece of equipment to the correct alphanumeric code.
Which statement about HCPCS is correct?
A provider administers an injectable drug in the office. How are the drug and its administration typically coded?
A J-code descriptor represents 15 mg of a drug, and the physician administered 30 mg. How many units should be billed?