CO-28 Denial Code (Deactivated): Coverage Not in Effect
CO-28 meant the patient's coverage was not in effect when the service was provided. X12 deactivated it because it duplicated codes 26 and 27, which say whether the expense came before coverage started or after it ended.
X12 deactivated CARC28 on October 16, 2003. Payers should no longer use it on new remittances, but it can still appear on older ERAs, corrected claims, and appeals.
Quick facts
- Code
- CO-28 (CARC 28)
- Status
- Deactivated StoppedOctober 16, 2003 (in use since January 1, 1995).
- Code set
- Claim Adjustment Reason Codes (CARC)
- Group codes
-
- CO (Contractual Obligation): Used when the payer treated the eligibility gap as the provider's responsibility to resolve.
- PR (Patient Responsibility): Used when the payer indicated the patient owed the charge because they had no coverage that day.
- Official description
Coverage not in effect at the time the service was provided.
X12 Claim Adjustment Reason Codes, retrieved September 25, 2026- Last verified
- against the official X12 list.
What CO-28 meant
CARC 28 was a straightforward eligibility denial: on the date the service was performed, the patient had no active coverage with this payer. It did not say whether the policy had not started yet or had already ended, which left billers to figure that out on their own.
What replaced it
X12’s notes say the code was redundant to CARC 26 and CARC 27, so those are its effective successors:
- PR-26 for expenses incurred before coverage began.
- PR-27 for expenses incurred after coverage ended.
For a gap in the middle of a policy, payers can use CO-200. When one claim straddles covered and uncovered dates, CO-239 asks you to rebill separate claims.
If you still see CO-28
Expect it only on very old remittances or in legacy reporting tables. A payer still sending it today is using an outdated code list, and you can ask them to confirm whether they meant 26 or 27.
Either way, the work is the same. Verify eligibility for the specific date, look for a new plan, a secondary policy, or Medicaid coverage, and refile to the right payer if one exists. If coverage truly lapsed, move the balance to the patient according to your policy and notify them with the dates the payer reported.
Related and easily confused codes
- PR-26 (Expenses incurred prior to coverage.): Expenses incurred before coverage began. Named by X12 as one of the codes that made 28 redundant.
- PR-27 (Expenses incurred after coverage terminated.): Expenses incurred after coverage ended. The other code X12 cited.
- CO-200 (Expenses incurred during lapse in coverage): Expenses incurred during a lapse in coverage.
- CO-239 (Claim spans eligible and ineligible periods of coverage.): The claim spans eligible and ineligible periods and must be split.
CO-28 FAQ
Why did X12 call CO-28 redundant?
Codes 26 and 27 already described the same problem with more precision: one for services before the coverage start date, one for services after the end date. CO-28 added nothing those two did not cover.
What is the fastest fix for an old CO-28?
Run an eligibility check for the exact date of service. If the patient had other coverage that day, bill that plan. If not, the balance is usually the patient's to pay under your financial policy.