Pabau Engage inbox

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

Learn more
HCPCS Code

HCPCS code S0021 – Cefoperazone sodium injection, 1 gram


Code Definition

S0021 is the HCPCS Level II code for injection, cefoperazone sodium, 1 gram. It bills the supply of this third-generation cephalosporin antibiotic, given by IV or IM injection, at one unit per gram. Medicare doesn't pay it, because it's a temporary S-code, so only some commercial and Medicaid plans accept it.

Cefoperazone is also no longer marketed in the United States, which makes a valid NDC harder to supply. The dose is already given by the time the claim goes out. A rejected line leaves the practice chasing payment for stock it has used. Four checks decide whether it pays: payer acceptance, the NDC, the diagnosis pairing and the chart.

Level
S0000-S9999 Temporary national codes (non-Medicare)
Category
S — Temporary national codes for non-Medicare drugs, services and supplies
Status
Active, effective 1 January 2000; not payable by Medicare
Billable
No
Code also known as
Cefobid (brand name for cefoperazone sodium)
Save time. Improve accuracy. Get paid faster.
Automate coding with Pabau

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
Why practices choose Pabau
Save hours every week

Automate repetitive tasks and focus on what matters most—your patients.

Improve accuracy

Reduce coding errors and ensure compliance with the latest regulations.

Get paid faster

Clean claims, fewer denials, and faster reimbursements.

Grow with confidence

Powerful insights and reporting to help your practice thrive.

HIPAA compliant SOC 2 certified GDPR-compliant Trusted by 4,000+ clinics worldwide

Key takeaways

Key takeaways

HCPCS code S0021 reports the supply of injectable cefoperazone sodium, a cephalosporin antibiotic, at one unit per gram.

It is a temporary S-code, so Medicare does not pay it and each commercial or Medicaid plan decides whether to accept it.

Cefoperazone is no longer marketed in the United States, so check the NDC before the dose is given, not after the denial.

Pair S0021 with the ICD-10-CM code for the infection being treated, plus an organism code where the record names one.

Bill the injection or infusion service separately, because S0021 bills only the drug.

HCPCS code S0021 covers the drug alone

HCPCS code S0021 is the Level II code for injection, cefoperazone sodium, 1 gram. It reports the antibiotic itself when a clinician gives it by IV or IM injection. The administration service goes on its own claim line with a CPT code.

Cefoperazone is a third-generation cephalosporin. It was sold in the US as Cefobid and is one of the few cephalosporins with activity against Pseudomonas. S0021 took effect on January 1, 2000, and no HCPCS changes to it are scheduled.

Here’s the code at a glance.

FieldDetail
CodeS0021
DescriptorInjection, cefoperazone sodium, 1 gram
Code setHCPCS Level II, S-series (temporary national codes, non-Medicare)
Unit of service1 unit = 1 gram of cefoperazone sodium
Effective dateJanuary 1, 2000
Medicare statusNot payable by Medicare and not separately priced under Part B
Who accepts itCommercial plans and some state Medicaid programs, plan by plan

One gram equals one unit, and that’s where the math starts

Report one unit of S0021 for every gram you give. A 2-gram dose is two units. Payers differ on partial grams. Check whether a 1.5-gram dose rounds up to two units or goes on the claim as an exact NDC quantity.

Here’s how a single visit looks on the claim. A patient receives 2 grams of cefoperazone as an IV push. The claim carries two lines:

  • S0021 × 2 units: the drug, with its NDC and quantity attached to the same line.
  • CPT 96374: the IV push of a single or initial drug. An IV infusion would use 96365, and an IM injection would use 96372.

S0021 doesn’t cover the diluent, the IV supplies or the clinician’s time. Those either bundle into the administration code or bill under their own codes, depending on the payer. The layout below puts both lines side by side, field by field.

Two-line claim example for 2 grams of cefoperazone by IV push
The drug line carries the units, NDC and diagnosis, while the administration line carries the route and place of service. Codes and conventions as described in this guide.

Which payers will pay an S0021 claim?

Only payers that have chosen to recognize S-codes will pay S0021. Blue Cross Blue Shield plans and other commercial insurers created the S-series for their own use. Medicare never adopted it, and Medicaid programs decide state by state.

PayerAccepts S0021?What to do instead
Commercial plansOften, depending on the planCheck the fee schedule or drug policy before the visit.
Medicaid (fee-for-service)Varies by stateSome states list S-codes on their drug fee schedule, while others require a J-code.
Medicaid managed careVaries by planFollow the plan’s own drug billing manual, which may differ from the state’s.
Medicare Part BNoThe code is invalid for Medicare. Ask your MAC how it wants an unlisted drug reported, commonly with J3490 and the NDC.
Medicare AdvantageVaries by planSome plans follow Medicare coding and reject S-codes outright.

Reimbursement varies just as much as acceptance. Because Medicare publishes no rate, each commercial plan sets its own allowable, often as a percentage of average wholesale price. Get the rate in writing if you give this drug often.

The NDC is the hardest part of this claim

Most payers that accept S0021 also want the National Drug Code for the vial you used. That creates a specific problem with cefoperazone. The drug is no longer marketed in the United States, so an older NDC may be inactive in the FDA directory.

If your stock is imported, compounded or left over from an old supply, confirm the NDC with the payer before the dose. A claim with an inactive or foreign product number usually rejects at the clearinghouse.

When the NDC is valid, report it in the standard format:

  • 11 digits in 5-4-2 format: pad the shorter segment with a leading zero, and send it without dashes on an electronic claim.
  • N4 qualifier: on the 837P, the NDC sits in loop 2410. On a paper CMS-1500, it goes in the shaded area of box 24.
  • Unit qualifier and quantity: report the NDC units, such as UN for each vial, next to the HCPCS units.

HCPCS units and NDC units often differ. Two units of S0021 might equal two 1-gram vials, or one 2-gram vial reported as a single NDC unit. Mismatched quantities are a common reason for an edit.

Pair S0021 with the infection you’re treating

The diagnosis on an S0021 line should name the infection the antibiotic treats. Cefoperazone was labeled for respiratory, intra-abdominal, skin, urinary and gynecologic infections, plus bacterial septicemia. Code the condition first, then add the organism where the record identifies one.

ICD-10-CM codeDescriptorWhen it fits
J15.1Pneumonia due to PseudomonasCulture-confirmed Pseudomonas pneumonia
A41.52Sepsis due to PseudomonasSepticemia with Pseudomonas identified
K65.0Generalized (acute) peritonitisIntra-abdominal infection documented as peritonitis
N39.0Urinary tract infection, site not specifiedUTI without a documented site, coded with an organism code
N73.9Female pelvic inflammatory disease, unspecifiedPelvic infection without further detail in the record
B96.5Pseudomonas (aeruginosa) (mallei) (pseudomallei) as the cause of diseases classified elsewhereSecondary code naming the organism behind a condition such as N39.0

Use the most specific code the documentation supports. Check each code against the current fiscal year in the CDC ICD-10-CM browser tool before you submit.

Five questions the chart has to answer

A payer that questions an S0021 claim will ask for the medication record. It should answer five questions without anyone having to phone the clinician:

  1. Why this drug? The diagnosis, any culture results, and why cefoperazone was chosen over a more common cephalosporin.
  2. How much? The dose in grams, which must match the units on the claim.
  3. How was it given? The route, the start and stop times for an infusion, and who gave it.
  4. Which product? The NDC, lot number and expiry date from the vial.
  5. What was wasted? Any discarded amount from a single-dose vial, if the payer’s policy asks for it.

Keep the physician order on file as well. Without a signed order, the drug line is hard to defend on audit even when the rest of the claim is clean.

Run this checklist before the claim leaves

Most S0021 problems can be caught at the front desk or the billing queue. Work through these checks in order:

  • Confirm the payer accepts S-codes, or find out which drug code it wants instead.
  • Check whether the plan needs prior authorization for the drug or the infusion.
  • Verify that the NDC on the vial is active and accepted by the payer.
  • Match HCPCS units to grams given, and NDC units to vials or milliliters used.
  • Link the drug line to the infection diagnosis, not a screening or history code.
  • Add the administration code on its own line with the same date of service.
  • Make sure the place of service matches where the dose was given, such as POS 11 for an office.

For a wider view of what payers check before they adjudicate, see our guide to the clean claim. Building the drug fields into your superbill also saves the biller from retyping them.

Codes that sit close to S0021 but mean something else

Two kinds of mix-up cause trouble here. One is a keying error with the neighboring S-codes. The other is reaching for a similar-sounding cephalosporin code.

CodeDescriptorWhy it gets confused with S0021
S0020Injection, bupivicaine hydrochloride, 30 mlThe code one digit below. It’s a local anesthetic, not an antibiotic (deleted July 1, 2023, and billed as J0665 today).
S0023Injection, cimetidine hydrochloride, 300 mgA nearby S-code for an H2 blocker. Another easy keying slip.
J0694Injection, cefoxitin sodium, 1 gramA look-alike drug name with the same 1-gram unit. Cefoxitin is a different, second-generation cephalosporin.
J0713Injection, ceftazidime, per 500 mgAnother third-generation cephalosporin with Pseudomonas activity, often given instead. Note the 500 mg unit.
J3490Unclassified drugsMedicare contractors may want this code, with the NDC and drug name, when no specific J-code exists.

If the order says cefoxitin or ceftazidime, bill that drug’s J-code. S0021 is correct only when cefoperazone itself was given.

A keying slip causes the same problem. A claim sent with S0020 reports bupivacaine, a local anesthetic. CMS deleted that code effective June 30, 2023.

Why S0021 claims come back denied

Most denials on this code trace back to one of four causes, and each has a quick fix. The remittance flags every one with a claim adjustment reason code, or CARC. Our rundown of the top 20 CARC codes covers the ones not listed here.

  • The payer doesn’t recognize S-codes. Expect a rejection or CARC 181, which flags a code that is invalid for the date of service. Rebill with the code the payer names in its drug policy.
  • The NDC is missing or inactive. The line fails with CARC 16 for missing information. Correct the NDC and quantity, then resubmit.
  • The diagnosis doesn’t support the drug. CARC 11 means the diagnosis is inconsistent with the service. Link the infection code, not a symptom or history code.
  • The drug isn’t a covered benefit. CARC 96 or 204 signals a non-covered charge. Check whether the plan covers the drug under a pharmacy benefit instead.

Track which cause you see most. A pattern tied to one payer usually points to a setup issue, not a coding error. Our guide to denial management in healthcare covers how to work those patterns.

How Pabau keeps S0021 claim data complete

Drug claims fail on small details. A missing NDC, a unit count that doesn’t match the dose, or a diagnosis left off the line can each send S0021 back. Retyping the same fields for every visit is where those slips creep in.

Pabau, the practice management and billing platform we build, fills the CMS-1500 from the patient record. The HCPCS code attached to the service lands on the charge line, and diagnosis slots draw from the recorded problem list. A built-in code library lets billers look up S0021 and its neighbors without leaving the claim.

Pabau also checks that required claim fields are complete before the claim can be sent. For US practices, Pabau’s claims management software submits through Claim.MD, runs eligibility checks and posts remittances when they arrive. When a payer rejects an S0021 line, your team sees it on the remittance and can fix the NDC or code before resubmitting.

Pabau checkout screen showing a completed payment and an insurer-billed invoice
Pabau’s checkout ties each invoice to the patient’s insurer, so the drug and administration lines reach the claim without retyping.

Send complete drug claims the first time

Pabau pre-fills claims from the patient record and checks required fields before submission, so S0021 lines go out with the details payers ask for.

Pabau claims management dashboard

Conclusion

S0021 is a rare code, and that is its main risk. Few billers see it often enough to remember which payers accept it. Because the drug is no longer marketed in the US, the NDC step can stop a claim before any payer reviews it.

Treat every S0021 dose as a claim to plan before the injection, not after. Confirm the payer’s code, check the NDC and write the dose in grams. If a payer won’t take S0021, bill the code it names, and keep your billing compliance records consistent.

Book a demo to see how Pabau helps your team send complete drug claims and track them to payment.

Continue your research

Continue your research

Want fewer rejections at the clearinghouse? Clean claim submission explains what payers check before a claim reaches adjudication.

Chasing the same denial every month? Denial management in healthcare shows how to track, appeal and prevent repeat denials.

Retyping drug codes on every visit? Superbill documentation covers how to capture HCPCS codes, NDCs and diagnoses in one step.

Billing Medicare for a drug with no J-code? HCPCS code J3490 explains how the unclassified drug code works.

Not sure the plan needs approval first? Prior authorization process walks through when payers ask for approval and how to request it before the dose.

Frequently asked questions

What is HCPCS code S0021?

S0021 is the HCPCS Level II code for injection, cefoperazone sodium, 1 gram. It reports the drug supply for this cephalosporin antibiotic, at one unit per gram.

Does Medicare pay for S0021?

No. S0021 is a temporary S-code that is not payable by Medicare. Ask your Medicare contractor how it wants the drug reported, which is commonly J3490 with the NDC.

How many units of S0021 do I bill for a 2-gram dose?

Bill two units, because one unit equals 1 gram. Report the administration separately, for example with CPT 96374 for an IV push.

Does S0021 need an NDC?

Most payers that accept S0021 require one. Cefoperazone is no longer marketed in the US, so confirm the NDC is active before the dose is given.

Which diagnosis codes go with S0021?

Use the code for the infection being treated, such as J15.1 for Pseudomonas pneumonia. Add an organism code like B96.5 where the condition code calls for it.

Avatar photo
Monika Lazarevska
Content Writer

Monika Lazarevska writes content for owners and healthcare professionals who want clear, no-fluff content that actually helps them run their practice better. With a background in storytelling and SEO, she knows how to make even the driest topics worth reading. Off the clock, you'll find her in a café somewhere in Europe, probably with a good book and an even better coffee.
×