CO-96 and PR-96 Denial Code: Non-Covered Charges Explained
Two codes, one reason, and a completely different financial outcome depending on which one shows up on your remittance. CO-96 and PR-96 both mean the same underlying thing: the payer has determined this charge is not covered. What differs is who is left holding the balance, and for a large share of these denials, particularly on Medicare claims, that question was already answered before the claim was ever submitted.
What CO-96 and PR-96 Actually Mean
Both codes share CARC 96, the Claim Adjustment Reason Code defined by X12 as “Non-covered charge(s). At least one Remark Code must be provided. That last clause is not optional flavor text. The standard requires a remark code to accompany 96, because the reason code alone only tells you that something is excluded, not why.
The group code in front of the 96 is what determines the financial outcome:
CO-96 carries the Contractual Obligation prefix. The exclusion is tied to the provider’s agreement with the payer or the payer’s coverage policy, and the balance generally cannot be shifted to the patient.
PR-96 carries the Patient Responsibility prefix. The payer has determined the charge is excluded from coverage, but the patient may be billed for it, typically because the exclusion was known or knowable in advance and the patient was properly informed.
One correction worth making plainly: some content describes CO-96 as meaning a patient’s policy was inactive at the time of service. That is incorrect. An inactive or terminated policy produces a different kind of denial related to eligibility, not a CARC 96 non-covered charge determination. CO-96 and PR-96 specifically mean the service itself, not the patient’s coverage status, was found to be excluded.
The Remark Code Is Not Optional, It Is the Actual Diagnosis
- Because CARC 96 requires a remark code by definition, working a CO-96 or PR-96 denial without reading the remark code means working with half the information. If you are not sure where the remark code sits on the remittance, our guide to reading an EOB and catching its errors walks through the layout. The remark code tells you which of several very different situations you are actually dealing with:
- N130 generally indicates the plan does not cover this type of service, a benefit exclusion built into the policy itself.
- N180 or similar remarks can indicate the item or service did not meet the specific criteria for the category it was billed under, which is a different problem than a flat exclusion and may point to a coding or documentation fix rather than a true non-covered determination.
- N386 commonly points to a National Coverage Determination or Local Coverage Determination issue, meaning Medicare has specific criteria for when this service is covered and the claim didn’t meet them.
- M127 and similar remarks can indicate missing information needed to determine coverage, which again is fixable rather than a hard exclusion.
Two claims can both show CARC 96 and require completely different responses depending on which remark code rides along with it. Skipping straight to “this is non-covered, write it off or bill the patient” without checking the remark code means potentially writing off something that was actually a documentation problem, or billing a patient for something that should have been correctable.
The Part Almost Nobody Explains Well: ABNs and Modifiers
This is where the real leverage sits, and it applies specifically to Medicare and Medicare Advantage claims, though the underlying logic, informing the patient before providing a service that might not be covered, applies more broadly in spirit.
Medicare requires providers to issue an Advance Beneficiary Notice, or ABN, when they believe a service may not be considered medically necessary or otherwise covered, before providing that service. The ABN tells the patient, in advance, that Medicare may deny the claim and that they may be financially responsible if it does. Signing it is what allows the provider to bill the patient if the denial comes through.
Whether that ABN was obtained, and which modifier gets appended to the claim as a result, determines the entire financial outcome:
GA modifier indicates a signed ABN is on file for a service expected to be denied as not reasonable and necessary. If Medicare denies it, the claim typically comes back as PR-96, and the patient can be billed because they were properly informed in advance.
GZ modifier indicates the provider expected a denial but did not obtain a signed ABN. Claims with GZ are expected to deny, and critically, the patient cannot be billed. This is functionally the worst outcome: the service is excluded and the provider absorbs it entirely because the paperwork step was skipped.
GY modifier indicates the service is statutorily excluded from Medicare coverage entirely, meaning no ABN is even required because Medicare never covers this category of service under any circumstances. The patient can generally be billed directly since there was never a coverage question to begin with.
KX modifier indicates the provider is attesting that specific coverage criteria have been met for a service that has defined medical necessity requirements, often used with therapy caps and similar threshold-based coverage rules. It has a different function from the ABN-related modifiers but shows up in the same general non-covered-charge territory.
The practical implication is significant: for a huge share of Medicare-related PR-96 and CO-96 denials, the outcome was locked in at check-in, by whether front desk or clinical staff correctly identified a service as at-risk for denial and obtained a properly signed ABN with the right modifier attached. Working the denial after the fact cannot undo a missing ABN. If GZ is on the claim, the provider already lost that argument before the claim was submitted.
Common Reasons Behind a Genuine Non-Covered Determination
- Statutory exclusions. Certain service categories are excluded from Medicare coverage by law regardless of medical necessity, such as most cosmetic procedures and some categories of routine care.
- Coverage determination criteria not met. Local or National Coverage Determinations specify exact clinical criteria for a service to be covered. A service performed outside those criteria, for the wrong diagnosis, frequency, or clinical indication, gets excluded even though it may be entirely appropriate care.
- Benefit plan exclusions. Commercial plans exclude specific categories of service by design, elective procedures, certain alternative therapies, and similar categories the employer or plan sponsor chose not to cover.
- Frequency or benefit maximums. Some services are covered only up to a defined number of visits or dollar amount per year. Exceeding that limit generates a non-covered determination for the excess.
- Experimental or investigational classification. Payers regularly exclude services or devices they classify as not yet established as standard of care, independent of whether the treating provider considers them appropriate.
What to Actually Do With a CO-96 or PR-96 Denial
1.Read the remark code before doing anything else. It tells you whether this is a true exclusion or a fixable documentation or coding issue.
2. If it’s CO-96, confirm it cannot be shifted to the patient , and post it correctly as a contractual write-off rather than attempting to bill around it.
3. If it’s PR-96 on a Medicare claim, check for the ABN and the modifier used. GA with a signed ABN on file means billing the patient is appropriate. GZ means it is not, and the loss needs to be absorbed and logged as a process failure rather than fought.
4. If the remark code points to a coverage criteria issue rather than a flat exclusion, review the documentation against the relevant coverage determination and consider a corrected claim if the criteria were actually met but not clearly documented.
5. Track GZ modifier volume specifically. A rising number of GZ claims is a direct measure of how often your front-end process is failing to catch at-risk services before they’re performed, and it is one of the more fixable revenue leaks in a practice, because the fix is a workflow change, not an appeal.
6. Build ABN screening into scheduling for known at-risk services. Practices that flag likely non-covered services before the appointment, rather than discovering the issue on the remittance weeks later, convert a chunk of eventual PR-96 write-offs into properly billed patient balances.
Why This Matters More Than a Typical Denial Code
Most denial codes represent something to fix on the claim. CO-96 and PR-96 more often represent something that needed to happen before the claim, at the point the service was scheduled or performed. That makes this pair less about billing team skill and more about front-desk and clinical workflow, which is also why the fix rarely lives in the billing department alone.
CO-96 vs CO-45 vs CO-97
These three codes look similar but mean very different things. CO-45 concerns pricing against a fee schedule you billed above the contracted allowable. CO-97 concerns bundling into an already-paid service the work was part of another procedure already reimbursed. CO-96 and PR-96 mean the service isn’t covered at all, and the prefix decides who absorbs it: CO is your write-off, PR moves to the patient. If sorting these eats your team’s week, Mediflows’ denial management services handle the review, appeal, and follow-up.
FAQ
What does CO-96 denial code mean?
It means the payer determined the billed service is not covered, and because of the CO group code, the balance is a contractual obligation the provider cannot bill to the patient.
What does PR-96 denial code mean?
Same underlying non-covered charge determination, but the PR group code means the balance may be billed to the patient, typically because the exclusion was known in advance and properly disclosed.
Does CO-96 mean my patient's insurance was inactive?
No. That's a common but incorrect claim found in some billing content. CO-96 specifically means the service itself was found non-covered, not that the policy was inactive, which produces a different type of denial.
Why does CARC 96 always come with a remark code?
The X12 standard requires it, because the reason code alone doesn't specify why the charge is non-covered. The remark code identifies whether it's a statutory exclusion, a coverage-criteria mismatch, or a documentation gap, each of which needs a different response.
What is an ABN and why does it matter for PR-96?
An Advance Beneficiary Notice is a form Medicare requires when a provider expects a service might be denied as not medically necessary. A properly signed ABN is generally what allows the provider to bill the patient if the denial comes through.
What's the difference between the GA and GZ modifiers?
GA indicates a signed ABN is on file for an at-risk service, allowing the patient to be billed if denied. GZ indicates no ABN was obtained despite expecting a denial, which generally means the patient cannot be billed and the provider absorbs the cost.
What does the GY modifier mean?
It indicates the service is statutorily excluded from Medicare coverage entirely, so no ABN was required in the first place, and the patient can generally be billed directly
Can a CO-96 or PR-96 denial be appealed?
It depends on the remark code. A true statutory exclusion generally cannot be appealed successfully. A denial where the remark code points to a coverage-criteria or documentation issue may be correctable with a resubmission or appeal supported by proper documentation.




