Estimated reading time: 6 minutes
Updated: September 2026
Every remittance a payer sends back carries claim adjustment reason codes (CARCs) that explain why a line was paid less than billed, or not paid at all. A handful of them account for most of what an independent practice sees: CO-45, CO-97, CO-16, and a short list of others. Some are normal contractual write-offs, some are fixable claim errors, and some are true denials that need an appeal — and treating them all the same is how practices lose money quietly. Here is what each code means, which category it falls into, and what to do about it.
First, the Group Code Tells You Who Owes the Difference
Each adjustment has a two-letter group code in front of the number. CO (contractual obligation) means the difference is between you and the payer — the patient cannot be billed for it. PR (patient responsibility) means the patient owes it: deductible, coinsurance, or copay. OA (other adjustment) and PI (payer-initiated reduction) are less common and usually need a closer look. The same reason number can appear under different group codes, and the group code changes who you bill, so read both halves. Remark codes (RARCs) often accompany a CARC with the specific detail — CO-16 in particular is almost meaningless without its remark code.
CO-45: Charge Exceeds the Fee Schedule or Contracted Rate
What it means: you billed more than the payer’s allowed amount for that service, and the difference is written off under your contract. Category: normal contractual adjustment — expected on nearly every in-network claim. What to do: nothing on the individual claim; it is not a denial and the patient can’t be billed for it. What CO-45 should trigger is a periodic check: if the write-off is larger than your contracted rate implies, the payer may be adjudicating against the wrong fee schedule or the wrong contract, which is worth a call. Loading your payer fee schedules into your billing system makes the comparison automatic instead of a spreadsheet exercise.
CO-97: Payment Included in Another Service Already Adjudicated
What it means: the payer considers this service bundled into another procedure on the same date — typically an NCCI edit or a global-period rule. Category: sometimes correct, sometimes fixable. What to do: check whether the services are genuinely bundled. If they were separate and distinct — a different site, session, or reason — a modifier such as 59 or the more specific X-modifiers (XE, XS, XP, XU) may be appropriate, and the claim can be corrected and resubmitted with documentation to support it. If the bundling is correct, write it off. Appending a modifier without documentation to support it is the fastest way to turn a denial into an audit finding.
CO-16: Claim Lacks Information or Has a Submission Error
What it means: the claim couldn’t be adjudicated because something was missing or invalid — a wrong NPI, a missing modifier, an invalid diagnosis pointer, a missing referring provider, an incorrect place of service. Category: fixable, and preventable. What to do: read the remark code — it tells you which field. Correct the claim and resubmit it as a corrected claim, inside the payer’s corrected-claim window. Because CO-16 is a data error rather than a coverage decision, it’s the code that claim scrubbing exists to prevent: a scrubber that checks NPIs, modifiers, diagnosis pointers, and place-of-service rules before submission stops most CO-16s from ever leaving the office.
The Rest of the Short List
- CO-4 — the procedure code is inconsistent with the modifier used, or a required modifier is missing. Fixable: correct the modifier and resubmit.
- CO-11 — the diagnosis is inconsistent with the procedure. Fixable if the documentation supports a more specific diagnosis; otherwise a write-off.
- CO-18 — exact duplicate claim or service. Usually means the original is already in process; check status before doing anything.
- CO-22 — coverage may be provided by another payer per coordination of benefits. Fix the primary/secondary order and rebill; eligibility checks catch this before the visit.
- CO-29 — the time limit for filing has expired. Rarely reversible; the cure is a filing-deadline tracker per payer.
- CO-50 — not deemed medically necessary by the payer. Appealable with clinical documentation; often tied to a diagnosis that doesn’t support the service.
- CO-96 / PR-96 — non-covered charge. Under PR the patient can be billed (with a signed waiver where required); under CO, it’s a write-off.
- CO-109 — claim not covered by this payer; send it to the correct one. Common with Medicare Advantage plans billed as traditional Medicare.
- CO-151 — payment adjusted because the frequency of services exceeds what’s allowed. Check the payer’s frequency limits for that code.
- CO-197 — precertification or authorization absent. Appeal only if authorization existed; otherwise a write-off and a process fix.
- PR-1, PR-2, PR-3 — deductible, coinsurance, copay. Not denials: bill the patient.
A Denial Workflow That Actually Recovers Money
Sort every adjustment into one of four buckets the moment the ERA posts: expected write-off (CO-45 at the contracted rate, correct CO-97 bundling), correct and resubmit (CO-16, CO-4, CO-11, CO-22, CO-109), appeal (CO-50, CO-197 with authorization, CO-97 with documentation), and bill the patient (the PR codes). The two numbers to watch monthly are your first-pass acceptance rate and your denial rate by reason code; a rising CO-16 count is a front-end problem, a rising CO-50 count is a documentation problem, and a rising CO-29 count means someone stopped tracking deadlines. Corrected claims have their own filing windows, so the resubmit bucket needs dates on it.
Where an Integrated EHR Changes the Math
Most of the fixable codes above are prevented, not fixed, when billing runs inside the same system as the chart. Real-time eligibility checks before the visit head off CO-22 and CO-109. Claim scrubbing against payer rules before submission catches the CO-16 and CO-4 errors while the claim is still in the office. Electronic remittance advice that posts automatically maps every CARC and RARC to the claim and the patient account, so the four-bucket sort happens as the money lands instead of in a weekly pile. That is how DocVilla’s billing is built: an EHR with integrated medical billing — eligibility, scrubbing, one-click claim filing, ERA posting, and a denial workflow in the same platform as scheduling and charting, on per-provider plans. If you’re running a separate EHR and a separate billing system and reconciling denials between them, that’s the gap worth closing; DocVilla is rated 4.9/5 from 178 reviews across Capterra, Software Advice, and GetApp, and a live demo can walk a denied claim through the workflow end to end.
Frequently Asked Questions About Denial Codes
Is CO-45 a denial?
No. CO-45 is a contractual adjustment — the difference between your charge and the payer’s allowed amount — and it appears on most in-network claims. It only signals a problem when the write-off doesn’t match your contracted rate.
Can I bill the patient for a CO adjustment?
No. CO means contractual obligation, which sits between the practice and the payer. Only PR (patient responsibility) adjustments can be billed to the patient.
How do I fix a CO-16 denial?
Read the remark code to find the missing or invalid field, correct it, and resubmit as a corrected claim within the payer’s corrected-claim window. Claim scrubbing before submission prevents most CO-16s.
When is a modifier appropriate for CO-97?
Only when the services were genuinely separate and distinct and the documentation supports it. Modifier 59 or the X-modifiers unbundle appropriately; adding one to a correctly bundled pair invites an audit.
What is a good denial rate?
Well-run independent practices keep initial denials in the mid-single digits as a percentage of claims. The trend by reason code matters more than the number — it tells you which part of the workflow to fix.