CO-45 Denial Code What It Means, Why It Happens and What to Do (2026 Guide)

CO-45 means the amount you billed is higher than the payer’s allowed amount under its fee schedule or your contract, so the payer adjusted the difference off the claim. The “CO” stands for contractual obligation, which makes that amount your write-off, not something you can bill the patient. Despite the name most people give it, CO-45 usually isn’t a denial. The claim was paid. The code is just the record of the discount you agreed to when you signed the contract.

The catch is that a CO-45 line looks the same whether the payer priced the claim correctly or quietly underpaid you. That’s the part worth your attention, and it’s what this guide is built around.

Quick answers

  • What it is: Claim Adjustment Reason Code 45, “Charge exceeds fee schedule/maximum allowable or contracted/legislated fee arrangement.”
  • Is it a denial? Normally no. It’s a pricing adjustment on a claim that was processed.
  • Can you bill the patient? No, not for an amount adjusted under the CO group code.
  • What do you do? Confirm the allowed amount matches your contract, then post it as a contractual adjustment.
  • Can you appeal? Only when the allowed amount is wrong, not because the contracted rate feels low.
  • What’s new? Medicare’s allowed amounts changed in 2026 and are proposed to drop again in 2027, so expect write-offs to grow.

What does CO-45 mean on an ERA or EOB?

Every adjustment on a remittance carries two pieces of information. The group code tells you who is financially responsible. The reason code tells you why the payer adjusted the amount. In CO-45, “CO” is the group code and “45” is the reason.

On an electronic remittance advice (835), it shows up inside a CAS segment. A typical line reads CAS*CO*45*57.60~, which says: group code CO, reason code 45, adjustment of $57.60.

Here is how that plays out on a simple office visit:

Line itemAmount
Billed charge (CPT 99213)$150.00
Contracted allowed amount$92.40
Patient copay (PR-3)$30.00
Payer payment$62.40
CO-45 adjustment$57.60

Every remit should pass one simple check: payer payment plus patient responsibility plus adjustments equals the billed charge. Here, $62.40 + $30.00 + $57.60 = $150.00. If the numbers balance and the allowed amount matches your fee schedule, that CO-45 is correct and needs nothing except accurate posting.

Is CO-45 really a denial?

Not in the way most billing teams use the word. A denial means the payer refused to pay for a service. CO-45 means the payer priced the service. Plenty of articles lump the two together, and the result is a CO-45 sitting in the same work queue as missing information and authorization problems. That’s analyst time spent chasing money that was never collectible.

Here’s how CO-45 compares with codes that really are problems with the claim:

CodeWhat happenedWhat you do
CO-16Claim lacks information or has a billing errorCorrect and resubmit
CO-18Exact duplicate claim or serviceCheck the original claim’s status
CO-50Not deemed medically necessaryAppeal with clinical documentation
CO-97Bundled into another serviceReview edits, add a modifier if the service was distinct
CO-197Authorization absentObtain it or prove it existed
CO-45Charge is above the allowed amountCompare allowed amount to contract, write off if it matches

With CO-45 you’re auditing the payer’s math, not fixing your claim. If your practice already runs a denial management process, route CO-45 to payment posting with a variance check instead of into the denial queue.

Why does CO-45 show up on almost every claim?

Because most practices set their charges above their highest contracted rate. Each payer’s contract then pays less than the full charge, and the gap lands on the remit as CO-45. That’s normal, and it’s why contractual allowances appear as a standard deduction between gross charges and net revenue.

So a high volume of CO-45 lines tells you very little. The variance is what tells you something: how far the allowed amount sits from what your contract says it should be.

CO-45 vs PR-45, OA-45 and PI-45

The reason code stays the same. The group code changes who owes the money.

CodeGroup meaningWho owesTypical handling
CO-45Contractual obligationNobody, it’s a provider write-offPost as a contractual adjustment
PR-45Patient responsibilityPatientConfirm plan and network status, then bill
OA-45Other adjustmentDependsReview the case, often coordination of benefits
PI-45Payer initiated reductionDependsAsk the payer why, then decide

PR-45 is far less common, and how a payer uses it depends on plan design and contract terms, so verify before you send a statement. One more detail worth knowing: CMS limits Medicare contractors to the CO, CR, OA and PR group codes on the 835, so you won’t see PI from Medicare. A PI-45 comes from another payer, and it deserves a closer look.

Can you bill the patient for a CO-45 amount?

No. When you’re in network, or you accept assignment on a Medicare claim, the allowed amount is payment in full. The patient owes only what appears under PR codes, such as the deductible, copay and coinsurance.

A few situations need care:

  • Medicare, non-participating providers. A non-participating provider who doesn’t accept assignment may bill above the approved amount, but only up to the limiting charge. That’s 115% of the non-participating amount, which is itself set at 95% of the participating fee schedule. In practice, the ceiling is about 109.25% of the participating rate. That’s a rule for unassigned claims, not a reason to bill a patient for a CO-45 on an assigned one.
  • Out-of-network private plans. Federal No Surprises Act rules and state laws can restrict what patients may be billed for certain emergency and facility-based care. Check before any statement goes out.
  • Secondary insurance. The CO-45 amount from the primary payer isn’t billable to the secondary payer either. The secondary claim reports the primary’s adjustments so that payer can work out its own share, and the patient owes only what’s left after both payers.

When is a CO-45 actually a red flag?

A CO-45 becomes a problem when the adjustment is bigger than it should be. These are the usual reasons:

  1. The wrong fee schedule was applied. The payer loaded an old schedule, or never loaded your amended rates.
  2. Your network status or effective date is off. If a claim prices at out-of-network or non-participating rates, the CO-45 balloons. Lags in provider credentialing are a common cause, especially right after a new provider joins.
  3. The claim priced a different service than you intended. A wrong code, missing modifier or incorrect unit count changes what the payer prices. Clean medical coding up front prevents most of this.
  4. The place of service or locality was wrong. Facility and non-facility rates differ, and a wrong place of service code or locality can lower the allowed amount.
  5. A contract limit kicked in. Some contracts cap units or frequency, and the excess is adjusted off.
  6. Your own fee schedule is out of date. If your system still shows last year’s rates, you can’t tell whether any of the above happened.

Payers don’t always report these the same way. Duplicate claims usually come back as CO-18, and multiple procedure reductions often use CARC 59 instead of 45. Read the remark codes and the payer’s companion guide instead of assuming.

How to check a CO-45 in five steps

  1. Read the group code first. CO means it’s a write-off candidate. PR, OA or PI means stop and investigate.
  2. Run the balance check. Payment plus patient responsibility plus adjustments should equal the billed charge.
  3. Compare the allowed amount to your contract. Use the rate for that CPT code, modifier, place of service and date of service. The fee schedule in effect on the date of service applies, not the date of payment.
  4. Read the remark code. It often explains how the payer priced the line.
  5. Decide. If the allowed amount matches, post the contractual adjustment and move on. If it doesn’t, gather the claim, the remit and the contract page, and take it to the payer.

Here’s why step 3 matters. Say your contract pays $92.40 for 99213, but the payer allows $84.00. The CO-45 becomes $66.00 instead of $57.60, and nobody blinks at $66.00. Across 300 claims a month, that $8.40 shortfall adds up to $2,520 a month, or $30,240 a year, all hidden inside routine write-offs.

Can you appeal a CO-45 adjustment?

Only when the payer got the price wrong. Appeals make sense when:

  • The payer applied the wrong fee schedule or ignored an amended contract
  • An in-network provider was priced at out-of-network rates
  • A locality or place of service error, made by the payer, lowered the allowed amount

The packet should include the contract or fee schedule page showing the correct rate, the claim, the remittance, and a one-line comparison such as “contract $92.40, allowed $84.00.” Clinical records don’t belong here, because the dispute is about price, not medical necessity.

Many payers handle these as payment disputes or reprocessing requests instead of formal appeals, and the time limits come from your contract, so check your provider manual. For Medicare, you have 120 days from receiving the initial determination to request a redetermination.

Don’t appeal just because the contracted rate feels low. You agreed to it. The place to fix that is the next contract renewal.

CO-45 in 2026 and 2027: what Medicare changes mean for your write-offs

Medicare rates set the baseline for many commercial contracts, so changes there ripple into your CO-45 amounts.

2026 (final). CMS created two conversion factors: $33.57 for qualifying APM participants and $33.40 for everyone else. It also applied a 2.5% efficiency adjustment to work RVUs for non-time-based services. Several specialty societies noted this offsets much of the headline conversion factor increase for procedural and diagnostic services.

2027 (proposed, not final). CMS released its proposed rule on July 14, 2026. It sets the qualifying APM conversion factor at $33.17 (down 1.19%) and the non-qualifying factor at $32.84 (down 1.68%). The main driver is the expiration of the temporary 2.5% increase Congress gave for 2026. CMS also proposes paying a separately identifiable office E/M visit at 50% when it’s billed the same day as a global procedure by the same physician or practice. Comments closed on September 14, and last year’s final rule landed on October 31, so watch for it this fall.

What it means for CO-45. Your charges don’t move when Medicare’s rates do. A lower allowed amount means a larger CO-45 on the same claim. As a rough illustration, if Medicare allows $200 for a service today and the non-QP conversion factor drops 1.68% with RVUs unchanged, the allowed amount lands near $196.64. That’s $3.36 more written off on every claim. Commercial contracts pegged to a percentage of Medicare will follow.

Pull your top 20 CPT codes by volume, model them at the proposed rates, and update your expected-rate table once the final rule is published.

How to keep CO-45 from hiding underpayments

  • Load contracted rates by payer, CPT code, modifier and place of service, with effective dates.
  • Compare every remit’s allowed amount to the expected amount and flag lines outside a small tolerance.
  • Track contractual adjustments as a percentage of gross charges by payer each month. A sudden shift deserves a look.
  • Confirm network status at scheduling through verification of benefits, not after the claim comes back.
  • Post CO amounts as contractual adjustments and PR amounts to the patient. Never leave CO-45 sitting in open AR or push it onto a patient balance.
  • Recheck your rates whenever a contract renews or a payer announces a new fee schedule.

Other “45” codes that cause mix-ups

  • N45 is a remark code (RARC), and it means “Payment based on authorized amount.” It’s not the same thing as reason code 45.
  • Condition Code 45 is “Ambiguous Gender Category” on institutional UB-04 claims. It has nothing to do with pricing.
  • Value Code 45 reports the accident hour on institutional claims.
  • Home health outlier payments. CMS has used CARC 45 when an outlier payment isn’t made because the 10% annual outlier limit was reached. It later requested remark code N523 to explain that situation more clearly.

Frequently asked questions

What is the CO-45 denial code?
CO-45 is a Claim Adjustment Reason Code meaning the billed charge exceeds the fee schedule, maximum allowable amount, or contracted or legislated fee arrangement. The payer reduces the claim to the allowed amount, and the difference is a contractual adjustment.

Is CO-45 a write-off?
Yes. When the group code is CO, the adjusted amount is a contractual write-off. You can’t collect it from the patient or the secondary payer.

Can I bill the patient for CO-45?
No, not for a CO adjustment on an in-network or assigned claim. Bill the patient only for amounts reported under PR codes, like the deductible, copay and coinsurance.

What’s the difference between CO-45 and PR-45?
Both mean the charge exceeded the allowed amount. CO-45 is the provider’s write-off. PR-45 is assigned to the patient, but confirm plan terms and network status before billing.

Do I need to appeal every CO-45?
No. Most are correct contractual adjustments. Appeal or dispute only when the allowed amount doesn’t match your contract or the payer applied the wrong rate.

Why is my CO-45 amount larger than usual?
The allowed amount is probably lower than expected. Check for a wrong fee schedule, out-of-network pricing, a coding or modifier change, a place of service error or a contract limit. For Medicare-based rates, the 2026 fee schedule changes may also be a factor.

What does CO-45 mean on Medicare claims?
The Medicare Physician Fee Schedule sets the allowed amount. Participating providers and providers who accept assignment take that amount as payment in full, so the CO-45 difference is written off. Your Medicare Administrative Contractor’s remittance shows the details.

The takeaway

CO-45 is the most routine line on your remittance, which is exactly why a payer mistake can hide inside it. Post it correctly, check the allowed amount against your contract, and escalate only when the price is wrong. If your team doesn’t have time to compare every remit against contract rates, our medical billing services team can take that off your plate.