Medical Billing Denial Codes (CARC & RARC), Explained
What the group code, reason code and remark code on your ERA mean, the ten codes practices ask about most, and the first fix for each.
A denial code is the set of codes a payer puts on an ERA (835) or paper EOB to explain why a claim line paid less than you billed: a two-letter group code (CO, PR, OA or PI) that says who owes the difference, a numeric Claim Adjustment Reason Code (CARC) that says why, and often a Remittance Advice Remark Code (RARC) that adds the detail. X12 maintains both code lists. It defines CARCs as codes that “describe why a claim or service line was paid differently than it was billed” and RARCs as codes that “provide additional explanation for an adjustment already described by a Claim Adjustment Reason Code (CARC).”
So “CO-16” is two codes, not one: group code CO plus reason code 16. Read it as “the provider absorbs this amount, because the claim lacks information.” The RARC beside it, such as an N-series remark, tells you which information.
Updated October 23, 2026. Reviewed by Jacob Greenberg, ClaimCarePro. Official code descriptions are quoted from the X12 code lists as read that day.
The four group codes: who owes the money
X12 says group codes “generally assign responsibility for the adjustment amounts.” They are always two letters.
| Group code | X12 name | Who owes the adjusted amount | Typical examples |
|---|---|---|---|
| CO | Contractual Obligation | The provider. Under Medicare, a CO amount may not be billed to the beneficiary (CGS). | CO-45 contractual write-off, CO-97 bundling, CO-16 missing information, CO-197 no authorization |
| PR | Patient Responsibility | The patient. Medicare beneficiaries may be billed only when PR is used (CGS). | PR-1 deductible, PR-2 coinsurance, PR-3 copay, PR-204 non-covered benefit |
| OA | Other Adjustment | Neither party by default; it explains an amount that is not a contract write-off or patient balance. | OA-23 prior payer’s payment on a secondary claim, OA-18 exact duplicate |
| PI | Payor Initiated Reduction | X12 gives only the name. In practice it marks a reduction the payer applied that is not patient responsibility, so the patient is not billed for it. | Reductions some commercial and workers’ compensation payers apply |
The same reason code can arrive with different group codes, and the group code is what decides whether you can send the patient a bill. X12 even restricts some pairings: CARC 23 is “Use only with Group Code OA,” and CARC 45 is “Use only with Group Codes PR or CO depending upon liability.” An older value, CR (Corrections and Reversal), is marked by X12 as not used with version 005010 and up.
Denial code list: the 10 most searched CARCs
Official description quoted from X12. Plain English is ClaimCarePro’s own translation, the same one our billing software shows next to every code on an 835.
| Code | Official X12 description | Plain English | Most common cause | First fix |
|---|---|---|---|---|
| CO-16 | Claim/service lacks information or has submission/billing error(s). | Something on the claim is missing or wrong, and the remark code on the same line says what. | A missing or invalid data element: referring provider, NPI, date, place of service, or another field the RARC names. | Read the paired RARC, correct that element, and send a corrected claim. |
| CO-97 | The benefit for this service is included in the payment/allowance for another service/procedure that has already been adjudicated. | Bundled: the payer paid this service as part of another one on the same claim or day. | A code pair that a bundling edit treats as one service, billed without a supported modifier. | Check the edit. Add a modifier only if the documentation supports a separate service; otherwise write it off. |
| CO-45 | Charge exceeds fee schedule/maximum allowable or contracted/legislated fee arrangement. | Not a denial. The difference between your charge and the contracted or allowed rate. | Your fee schedule is higher than the payer allowance, which is normal. | Post it as a contractual write-off. Do not bill the patient for it. |
| CO-22 | This care may be covered by another payer per coordination of benefits. | The payer thinks another plan is primary for this patient. | Other coverage on the payer’s file, often an old or spouse’s plan the patient never updated. | Confirm coordination of benefits with the patient and payer, bill the true primary, then the secondary with the primary EOB. |
| CO-197 | Precertification/authorization/notification/pre-treatment absent. | The payer required a prior authorization or notification and found none on the claim. | No authorization obtained, or an authorization that existed but was left off the claim. | If the auth existed, add the number and resubmit. If not, ask about retro-authorization or appeal per the payer’s policy. |
| OA-23 | The impact of prior payer(s) adjudication including payments and/or adjustments. (Use only with Group Code OA) | Expected on a secondary claim: the amount the primary payer already paid or adjusted. | Normal secondary or crossover processing. | Post it as the prior-payer amount. No correction needed. |
| CO-4 | The procedure code is inconsistent with the modifier used. | The modifier does not fit the procedure code, or a modifier the payer requires is missing. | Wrong, missing or misordered modifier for this CPT or HCPCS code under payer policy. | Check the modifier against the code and the payer policy, correct it, and send a corrected claim. |
| PR-204 | This service/equipment/drug is not covered under the patient’s current benefit plan | The patient’s plan excludes this service, and the group code puts the amount on the patient. | A benefit exclusion that eligibility and benefits checks did not catch before the visit. | Confirm the exclusion with the payer, then bill the patient under the plan terms and any signed waiver. |
| OA-18 | Exact duplicate claim/service (Use only with Group Code OA except where state workers’ compensation regulations requires CO) | The payer already has this exact claim or service line on file. | A resubmission sent as a new claim while the original was still processing or already paid. | Do not rebill. Find the original: if it paid, post nothing; if it did not, follow up on that claim or appeal. |
| PR-1 | Deductible Amount | The patient has not met the deductible, so this amount is theirs. | Early-year visits and high-deductible plans. | Check for a secondary payer first, then bill the patient once the claim is final. |
Each code above has its own page with the remark codes it usually travels with, the variants (the same reason code under a different group), and a worked fix: CO-16, CO-97, CO-45, CO-22, CO-197, OA-23, CO-4, PR-204, OA-18 and PR-1.
Three of the ten are not really denials. CO-45 is the contractual write-off on a paid claim, OA-23 is the primary payer's amount showing on a secondary claim, and PR-1 is the patient's deductible. Treating those as problems to appeal wastes hours; treating a real denial as a write-off leaves money on the table. Sorting them correctly is the first job.
Claim adjustment reason codes (CARC) vs remark codes (RARC)
A CARC explains the money; a RARC explains the CARC. CARCs are numbers (1, 16, 45, 197) and some alphanumerics (such as B15). RARCs start with N, M or MA. X12 says RARCs “provide additional explanation for an adjustment already described by a Claim Adjustment Reason Code (CARC) or convey information about remittance processing.”
For some CARCs the RARC is mandatory. X12's usage note on CARC 16 reads: “At least one Remark Code must be provided.” That is why a report that shows only “CO-16” is unworkable: the actionable content is in the remark code it left out. Our own billing software shows every CARC and RARC on a line, code first and translation second, for exactly this reason.
A few RARCs, quoted from the X12 list, show how much they add:
- N20: “Service not payable with other service rendered on the same date.” (Often beside CO-97.)
- MA04: “Secondary payment cannot be considered without the identity of or payment information from the primary payer.”
- N4: “Missing/Incomplete/Invalid prior Insurance Carrier(s) EOB.”
- N130: “Consult plan benefit documents/guidelines for information about restrictions for this service.” (Often beside PR-204.)
How to read a denial code on an ERA or EOB line
On the electronic remittance (the 835 file behind your ERA), every adjustment is carried in a CAS segment that lists the group code, then a reason code and a dollar amount, with room for several reason-and-amount pairs in one segment. A line reading CAS*CO*45*72.00 means “$72.00 contractual obligation, reason 45.” Adjustments can sit at the claim level or on each service line, and remark codes ride separately beside them (line-level RARCs in an LQ segment). The arithmetic always closes: the billed charge equals the amount paid plus every adjustment on the line. On a paper EOB the same data appears as a column of group and reason codes with a footnote glossary, which is why the payer's own wording on a paper EOB may not match the X12 description word for word.
To read any line in under a minute:
- Look at the group code first. CO means you absorb it; PR means the patient owes it.
- Look up the reason code on the X12 CARC list (or the table above).
- Read every remark code on the line. For CO-16 and similar codes, that is where the fix is.
- Check whether the paid amount plus the adjustments equals your charge. If not, the line is mis-posted.
- Decide the path: post it, correct it, appeal it, bill the patient, or write it off with a reason.
Denial vs adjustment vs rejection
| Term | What happened | Carries a CARC? | What you do |
|---|---|---|---|
| Adjustment | The payer processed and paid, but less than billed, for an expected reason (contract rate, deductible, prior payer). | Yes (CO-45, PR-1, OA-23) | Post it. Bill the patient only the PR amount. |
| Denial | The payer processed the claim and refused some or all payment. | Yes (CO-16, CO-97, CO-197, PR-204) | Correct, appeal, bill the patient (PR only), or write off with a recorded reason. |
| Rejection | The claim failed front-end edits at the clearinghouse or payer and was never adjudicated. | No | Fix the field and resubmit it as a new original claim. The filing clock keeps running. |
Clearinghouse rejections come back as edit messages (an invalid NPI, a member ID not found), not CARCs, and our software translates them from a separate table for that reason. A rejected claim is not on file with the payer, so there is nothing to correct or appeal; it has to be sent again.
How to fix a denial: corrected claim, appeal or write-off
The right fix depends on whether the claim was wrong or the payer's decision was wrong. Choosing from the CARC alone is how corrected claims get sent for problems that needed an appeal, and the other way round.
| Path | Use it when | How it is sent | Deadline to watch |
|---|---|---|---|
| Corrected (replacement) claim | Your claim had wrong or missing data: CO-16, CO-4, a missing authorization number. | Commercial payers and most Medicaid plans: a replacement claim with claim frequency code 7 and the payer’s original claim number. Check the payer manual. | The payer’s corrected-claim window, set by contract. |
| Medicare reopening | A minor error or omission on a Medicare claim. Federal rules also class denials of claims as duplicates as clerical errors handled by reopening. | Through the MAC. First Coast (Florida) offers SPOT, the Claim Reopening Gateway and its IVR for Part B. | Within 1 year of the determination for any reason; up to 4 years for good cause (42 CFR 405.980). |
| Appeal | The claim was right and you disagree: bundling with a supported modifier, medical necessity, authorization on file. | Payer appeal form or portal with records. Medicare’s first level is a redetermination. | Medicare: 120 calendar days from receiving the notice (42 CFR 405.942). Commercial: per contract. |
| Bill the patient | The group code is PR (deductible, coinsurance, copay, non-covered benefit). | Patient statement after any secondary payer has processed. | Your statement cycle. |
| Write-off | A contractual adjustment (CO-45), or a CO denial with no correction or appeal basis. | Posted with the reason recorded, so the pattern can be fixed upstream. | None, but record it the day you decide. |
For the full playbook on preventing the denials in the first place, see how to reduce claim denials and why medical claims get denied. If you would rather hand the open denials to someone, ClaimCarePro denial management triages every denial by CARC and RARC, works it to a corrected claim, appeal or recorded write-off before its deadline, and reports weekly.
Denial codes and timely filing limits
Every denial fix races a clock, and the clock that matters most is the original timely filing limit. For Medicare, a claim must be filed “no later than the close of the period ending 1 calendar year after the date of service” (42 CFR 424.44). Commercial and Medicaid limits are shorter or longer by payer; see timely filing limits by payer.
Three ways denial codes and timely filing collide:
- Rejections do not stop the clock. A claim rejected at the clearinghouse was never received for timely-filing purposes. Keep the acceptance report for every claim; it is your proof of timely filing.
- Duplicates hide lost claims. An OA-18 on a resubmission can mean the original is still pending, or that it was lost. Find the original before the window closes.
- CARC 29 is the end of the road. X12 describes it as “The time limit for filing has expired.” It cannot be fixed by resubmitting; the only path is an appeal with proof of timely submission.
What ClaimCarePro sees behind the codes
Most denials we work trace back to something knowable before the claim went out: an authorization number that existed but never reached the claim, a coordination-of-benefits record the patient never updated, a modifier the payer's policy requires, or a resubmission sent as a new claim while the original was still in process. The code tells you which of those it was, if you read the remark codes with it. That is why we pull every denial from the 835 rather than from a summary report, and why the plain English in the table above comes from the same dictionary our billers work from.
Our team has 30+ years combined in medical billing. We do not publish recovery rates; what a denial is worth depends on why it was denied and how old it is.
Denial code questions, answered
What are denial codes in medical billing?
What is the difference between a CARC and a RARC?
Who maintains the official denial code list?
What do CO, PR, OA and PI mean?
Can I bill the patient for a CO adjustment?
Is CO-45 a denial?
What is the difference between a rejection and a denial?
Should I send a corrected claim or an appeal?
How long do I have to fix a denied claim?
What does denial code CARC 29 mean?
Have a stack of denials you have not worked?
ClaimCarePro works denied and aged A/R on a 10% contingency of what is actually paid: no recovery, no fee. Ongoing billing with denial work included is 6% of collections with a $1,000 monthly minimum. Full terms are on the pricing page.
Prefer to talk first? Contact us or call (844) 772-8902.
Updated October 23, 2026. Reviewed by Jacob Greenberg, ClaimCarePro.
Sources
- X12 Claim Adjustment Reason Codes (list version 11/1/2025), read October 23, 2026
- X12 Claim Adjustment Group Codes, read October 23, 2026
- X12 Remittance Advice Remark Codes, read October 23, 2026
- CGS Medicare: Why Is My Claim Denied? Deciphering Contractual Obligation (CO) (October 27, 2014)
- 42 CFR 424.44, time limits for filing claims
- 42 CFR 405.942, time frame for redetermination
- 42 CFR 405.980, reopenings and clerical errors
- First Coast: Clerical reopening requests (May 1, 2026)