CO-22, CO-45, CO-97 — Common Denial Codes Explained

Every denial on your remit comes back with a CARC code attached. If your team can read those codes correctly, you fix denials in minutes. If they can’t, every denial turns into a 20-minute investigation.

RB
Ravenswood Billing Team
· · 10 min read

Claim Adjustment Reason Codes — CARC codes — are how payers tell you why they didn’t pay a claim the way you billed it. They show up on every 835 ERA, paired with a Remittance Advice Remark Code (RARC) that adds context. Most billers learn the codes that hit their practice the most and ignore the rest. That works until the payer mix shifts or a new procedure starts getting denied for an unfamiliar reason, and suddenly the work queue is full of denials no one knows how to action.

This article walks through the six CARC codes that show up most often on small and mid-sized practice remits: CO-22, CO-45, CO-97, CO-16, CO-29, and CO-50. For each one we cover what it actually means, why it happens, and the specific resolution steps we use when we work through a client’s existing claim backlog. The goal isn’t just to recognize the code — it’s to know which denials are recoverable from your current book of claims, what the fix looks like, and what working them is worth. If you need to look up a code that isn’t in this list, the CARC code lookup on this site has the full reference.

How CARC Codes Work

A CARC code on its own is just a number. The number is paired with a two-letter group code that tells you who is responsible for the unpaid balance. The group code is the most important part of the puzzle, because it determines whether you can bill the patient, write off the balance, or appeal.

  • CO — Contractual Obligation. The provider is responsible for the difference. You can’t bill the patient, and in most cases you can’t recover the money unless the denial was an error. This is the most common group code on a remit.
  • PR — Patient Responsibility. The patient owes the balance — deductible, copay, coinsurance, non-covered service. You bill the patient.
  • OA — Other Adjustment. A neutral category for adjustments that don’t fit cleanly elsewhere — coordination-of-benefits transfers, payer-to-payer balances, and similar.
  • PI — Payer-Initiated Reduction. The payer reduced the payment based on their own policy and the provider can’t bill the patient. Less common than the others but worth knowing.

Once you have the group code and the reason code, you have a directional answer about what to do next. The codes below are all CO codes — meaning the practice eats the difference unless you can fix the underlying issue or appeal.

CO-22 — This Care May Be Covered by Another Payer

CO-22 is a coordination-of-benefits denial. The payer is telling you another insurance plan may be primary, and they won’t pay until that’s sorted out. You’ll see CO-22 most often on patients with both commercial insurance and Medicare, on patients with active workers’ comp claims, and on dependents who have coverage under both parents.

The denial usually means one of three things: the payer’s COB record is out of date, the patient gave you the wrong primary, or there genuinely is another payer that should be billed first. Don’t resubmit the same claim to the same payer — you’ll just get the same denial.

What to do: Call the patient and confirm all active coverage. If you find a primary you didn’t know about, bill that one first and submit to the original payer as secondary with the primary EOB attached. If the patient confirms there is no other coverage, have them call the payer to update their COB record — the practice usually can’t do this directly. Once COB is corrected on the payer’s side, resubmit. Track these as “COB pending” in your work queue so they don’t age past timely filing while you wait for the patient to call.

CO-45 — Charge Exceeds Fee Schedule or Maximum Allowable

CO-45 is the most common adjustment on any remit. It’s not really a denial — it’s the payer telling you the difference between what you billed and what your contract allows. If you billed $200 for a code with a $120 contracted rate, you’ll see a CO-45 adjustment of $80. The payer pays the contracted amount; the practice writes off the difference.

You’ll see CO-45 on virtually every paid claim. The reason it’s worth understanding is that occasionally the adjustment is wrong, and catching that is real money. Common causes of an incorrect CO-45 are an outdated fee schedule on the payer’s side, a contract amendment that didn’t propagate, or the claim being adjudicated against a non-par fee schedule when the provider is in-network.

What to do: Don’t fight every CO-45 — the math is right on the vast majority. Do spot-check the allowable amount against your contracted rate for high-dollar codes (90837, 99214, anesthesia codes, surgery codes). When you find an underpayment, file a corrected-claim or pricing-dispute request with the payer and reference the contracted rate. Underpayment recovery is usually the highest-margin denial work a practice can do because the claim is otherwise clean — you’re just collecting what you’re owed.

CO-97 — Service or Procedure Is Bundled Into Another

CO-97 means the payer considers the procedure inclusive to another procedure already paid on the same claim or for the same date of service. If you billed a level-4 office visit and a procedure together, and the payer considers the E/M bundled into the procedure’s global period, the E/M will deny CO-97.

CO-97 is usually a modifier-25 or modifier-59 problem. Either you didn’t append the modifier and you should have, or you appended it without the documentation to support it. Less commonly, it’s a National Correct Coding Initiative (NCCI) edit that you’re not going to win regardless of modifier.

What to do: Pull the documentation. If the documented service genuinely was a separately identifiable E/M (or distinct procedural service), append modifier 25 (for E/M) or modifier 59 (for procedures) and submit a corrected claim. If the documentation doesn’t support a separate service, accept the denial — appealing without documentation is how practices get flagged for audit. Track CO-97 denials by provider; if one provider is generating them at a higher rate than peers, that’s a documentation or coding training issue, not a billing issue.

CO-16 — Claim/Service Lacks Information or Has Submission Error

CO-16 is a catch-all for “something on the claim is missing or wrong, look at the RARC for specifics.” The CARC alone doesn’t tell you what to fix — you have to read the paired RARC code and remark text. Common pairings include MA130 (claim contains incomplete or invalid information), N4 (missing/incomplete/invalid prior authorization number), and M51 (missing/incomplete/invalid procedure code).

The volume of CO-16 denials is a leading indicator of how clean the front end of your billing process is. High CO-16 rates usually point to a registration, eligibility, or coding gap rather than a one-off mistake.

What to do: Read the RARC. Fix the specific field it identifies — missing referral, invalid NPI, wrong place-of-service, missing prior auth number. Submit a corrected claim with the right data. If you’re seeing repeated CO-16 denials with the same RARC across many claims, the upstream process is broken — fix the registration template, the scheduling workflow, or the coding rule that’s producing the bad data. A pre-submission claim scrubber catches most CO-16 errors before they reach the payer.

CO-29 — The Time Limit for Filing Has Expired

CO-29 is the most painful denial on the list because it’s almost always unrecoverable. Every payer has a timely filing window — usually 90 days, 180 days, or one year from date of service — and a claim received after that window denies CO-29 with no right of appeal in the vast majority of cases. The revenue is gone.

CO-29 happens for two reasons: claims that never got submitted in the first place (sitting in a hold queue, missing a charge entry, stuck on a clearinghouse rejection), and claims that were originally submitted on time but denied for another reason and then not corrected before the filing window closed. The second category is more common and more preventable.

What to do: If you can prove the original submission was timely — clearinghouse confirmation, payer acknowledgment 277CA, screenshot of the original 835 — you can sometimes appeal a CO-29 successfully. Most payers will accept proof-of-timely-submission and reopen the claim. If you can’t prove timely submission, the claim is a write-off. The real fix is preventing CO-29 entirely: track every payer’s filing window, work every denial within 30 days of receipt, and run a weekly aging report flagging any claim within 30 days of its filing deadline.

CO-50 — Service Not Deemed Medically Necessary

CO-50 means the payer reviewed the diagnosis-procedure pairing and decided the procedure isn’t medically necessary for the diagnosis you submitted. This is a payer policy denial, usually driven by a Local Coverage Determination (LCD) for Medicare or a medical-policy article for commercial payers.

The most common cause of CO-50 is an ICD-10 code that doesn’t support the CPT under the payer’s policy. The provider documented one diagnosis, the coder selected a related but slightly different ICD-10 code, and the chosen code isn’t on the payer’s covered-diagnosis list. Sometimes the documentation supports a covered diagnosis that simply wasn’t coded.

What to do: Look up the payer’s policy for the CPT code and check which ICD-10 codes are listed as supporting medical necessity. If the documentation supports one of those codes, recode and submit a corrected claim. If the documentation doesn’t support a covered diagnosis but the provider believes the service was necessary, file an appeal with the medical record attached and a clear explanation of why the service was indicated for this patient. If a provider repeatedly generates CO-50 denials on the same code combination, get them in front of the payer’s policy — the long-term fix is documenting to the policy, not appealing every claim.

Building a Denial Workflow Around CARC Codes

Reading the codes is half the work. The other half is having a workflow that routes each denial to the right action without forcing your team to think it through every time. The practices with the lowest write-off rates all do something similar: they categorize denials by CARC the moment the ERA posts, route each category to a specific work queue, and track the outcome.

  • Auto-classify on post. When the 835 hits your system, parse the CARC/RARC pairs and tag each denial with a category — COB issue, underpayment, bundling, missing data, timely filing, medical necessity. Don’t make the biller diagnose the denial; make the system do it.
  • Route by category. COB and missing-data denials go to a queue that calls the patient or rebills with a fix. Bundling and medical-necessity denials go to a coder for documentation review. Underpayments go to whoever runs your payer-contract audits. Timely filing denials go to whoever can pull proof of original submission.
  • Set a 48-hour SLA. Every denial in every queue gets first-touched within 48 hours. The longer a denial sits, the harder it is to recover — especially with timely filing windows ticking down on every other denial in the same payer’s system.
  • Track outcomes by category. If 80% of CO-22 denials get paid after a patient COB call, you know that’s a high-yield workflow. If 5% of CO-50 denials get paid after appeal, you know to focus appeal effort on the codes where it actually moves money.
  • Feed the data back upstream. Categorized denial data tells you exactly where your front-end process is breaking. High CO-16 rates point at registration. High CO-22 rates point at insurance verification. High CO-29 rates point at workflow discipline. Fix the upstream cause and the downstream denials drop.

What This Looks Like on an Existing Backlog

The first time we audit a new client’s denials, the codes above are responsible for most of the recoverable revenue sitting in the unworked queue. The mix varies by specialty, but the playbook is similar. A typical onboarding starts with us pulling 60 to 90 days of remits and the current aging report, classifying every denial by CARC, and producing a line-item list of what’s recoverable from existing claims and what isn’t. From there:

  • CO-22 backlog — We work the queue in batches. Patient COB calls go to a single staffer running through 30 to 40 patients per day. Most COB updates clear the payer’s system within two weeks; we resubmit as soon as the record refreshes. On most backlogs this is the highest-volume recovery category.
  • CO-45 underpayments — We pull contracted rates for the practice’s top 50 codes and audit allowable amounts on every paid claim in the backlog. Underpayment recovery is usually the second-highest dollar category and requires almost no patient or provider involvement.
  • CO-97 bundling — We pull documentation on every CO-97 in the queue, tag the ones with separately identifiable services, attach modifier 25 or 59 with documentation excerpts, and submit corrected claims. Anything without supporting documentation gets written off cleanly so the queue stops carrying dead weight.
  • CO-16 missing data — We read the RARC on every CO-16, fix the specific field, and resubmit. While we work them, we log the field that was wrong and report patterns back so the practice can fix the upstream cause.
  • CO-29 timely filing — We run proof-of-timely-submission checks against clearinghouse acknowledgments and 277CA payer responses for everything in the CO-29 queue. The ones with proof get appealed; the ones without get written off and added to the upstream-process report.
  • CO-50 medical necessity — We pull payer policy LCDs and medical-policy articles for the highest-volume CPT codes and recode every claim where the documentation supports a covered diagnosis. Appeals go out for the ones where it doesn’t — but only with chart documentation that supports medical necessity.

By the end of the first 30 days, the practice has a categorized backlog with each denial flagged “recoverable” or “write-off,” a batch of resubmissions and appeals already in flight, and a written report on which upstream processes need fixing so the same denials don’t come back next month.

How Ravenswood Helps

Reading the codes is the easy part. Resolving them at scale, on existing claims, before they age past timely filing — that’s the operational problem most practices come to us with. The team knows what CO-22 means; they just don’t have the hours to call 80 patients about coordination of benefits while keeping current with the next two weeks of remits coming in.

Our denial management service is built around that resolution problem. We pull your existing remits and aging report, classify every denial by CARC, mark each one recoverable or write-off, and outline the specific fix per code. Then we execute — patient COB calls, contracted-rate audits, modifier-supported corrected claims, timely-filing proof appeals, payer-policy recoding — across the entire backlog. The first 30 days are usually backlog cleanup; from month two on, every denial gets first-touched within 48 hours of posting so nothing accumulates. Everything is HIPAA compliant with a signed BAA.

If your write-off line is bigger than it should be, or if you can’t answer “which CARC code is costing us the most this month,” send us 60 days of remits on a free consultation. We’ll point out exactly which denials in your current claims are recoverable, outline the specific resolution per code, and tell you what working the backlog is worth before you commit to anything.

Resolve the Denials Already Sitting on Your Books

Send us 60 days of your remits. We’ll point out exactly which denials in your existing claims are recoverable, outline the specific fix per CARC code, and tell you what working the backlog is worth. Free, no obligation.