IOP Billing Guide: When the Right Code Isn't Enough
August 18, 2026 · 54 min read
S9480 - one of the codes most commonly used to bill an Intensive Outpatient Program (IOP) - is a bundled per diem under one commercial policy, an hourly unit under one state's Medicaid handbook, and a code that pairs with revenue code 0913 under that same state's hospital instruction. Send it to Original Medicare and it is not the wrong code so much as the wrong architecture entirely. Same five characters, four different answers, all of them current.
<!-- Image concept: Editorial poster hero capturing the thesis that one IOP billing code produces four different payment outcomes depending on payer context. Dominant intent: stop-the-scroll + frame the problem. This beat opens the post and must set a serious, expert tone for a billing-professional audience. -->

That is the whole problem with an IOP billing guide built around a code table. IOP is a level of care, not a billing code - and a claim only pays when the benefit, the setting, the authorization, the attended day, the documentation, the claim format and the contract all describe the same payable service. Most programs that are losing money on IOP are not losing it because someone chose the wrong code. They are losing it because one link in that chain broke three weeks before anyone generated a charge.
This guide is written for the people who have to fix that: program directors standing up or scaling an IOP, and the owners and CFOs watching full groups produce disappointing cash. By the end you will know which claim architecture your program is actually billing under, what makes a single day billable in each one, and where the money leaks before a claim is ever built. Behavioral health and mental health revenue cycles are where we work, and this is the failure pattern we see most.
One promise about the guide itself: every rule here carries its source and its date. That matters more in this topic than almost any other, because Medicare's IOP rules changed on January 1, 2024, changed again for rural clinics on January 1, 2025, and changed again for CY 2026. A large share of the IOP billing advice currently ranking on Google was accurate when it was published and is misleading now.
What actually makes a program an IOP
Start with the distinction that drives everything downstream, because payers do not treat "intensive outpatient" as a marketing description. It is a defined level of care sitting between ordinary outpatient treatment and partial hospitalization.
<!-- Image concept: Horizontal explanatory diagram showing the behavioral health level-of-care continuum from standard outpatient through IOP and PHP to inpatient psychiatric care. Dominant intent: explanatory - clarifies the dimensional distinction the table already introduces, making the spectrum immediately scannable. The IOP station is highlighted as the subject of the guide. -->

| Dimension | Standard outpatient behavioral health | Intensive outpatient program (IOP) | Partial hospitalization program (PHP) |
|---|---|---|---|
| Core idea | Episodic office or clinic services, often one encounter at a time | Coordinated, organized ambulatory program with multiple therapeutic components and higher weekly intensity | Highly structured ambulatory program used as an alternative to inpatient psychiatric care |
| Federal weekly-hour floor | No single national floor | Medicare: at least 9 hours per week | Medicare: at least 20 hours per week |
| Relation to inpatient care | Usually below program-level care | Patient does not have to qualify for inpatient treatment | Patient would require inpatient psychiatric care without it |
| Billing tendency | Per discrete service, professional or institutional | Medicare: component lines grouped into daily APCs by setting. Many commercial plans: bundled per diem. Some Medicaid programs: hourly | Program/day architecture, but distinct rules and its own condition code |
| Typical risk | Individual code, time, diagnosis, credentialing, telehealth | Level-of-care authorization, daily service count, attendance, setting and form, carve-out, concurrent review, bundle leakage | All IOP risks plus inpatient-alternative certification and the 20-hour standard |
The regulatory language behind that middle column is worth reading directly. 42 CFR 410.2 defines intensive outpatient services as a distinct and organized intensive ambulatory treatment program providing less than 24-hour daily care outside the home, inpatient or residential setting - and it says expressly that IOP need not be furnished in lieu of inpatient hospitalization. That last clause does real work. A utilization reviewer who denies IOP on the grounds that the patient "did not require hospitalization" has applied the PHP standard to an IOP request.
42 CFR 424.24 then sets what the certification has to establish: the patient needs at least nine hours per week, the services are furnished while the patient is under a physician's care, and the services follow a written individualized plan stating diagnosis, service type, amount, duration, frequency and goals. Recertification cannot be less frequent than every 60 days, and it must address continued need for at least nine hours, response to interventions, continuing symptoms or risk, and discharge-coordination goals.
Two clarifications save a lot of downstream argument.
Nine hours per week is not "three hours a day, three days a week." Three-by-three is a common operating schedule, and it appears in some code descriptions and payer rules, but the national Medicare requirement is expressed as a weekly minimum. A plan or contract can impose its own day-and-hour configuration, and many do. Turning one payer's schedule into the definition of IOP is how programs end up arguing with a reviewer using the wrong yardstick.
ASAM criteria are clinical guidance, not billing law. The ASAM Criteria has traditionally described adult Level 2.1 intensive outpatient services in a 9-to-19-hour weekly range, and ASAM itself explains that states and payers decide how they adopt and operationalize it. ASAM may be central to substance-use authorization and continued-stay review. LOCUS, CALOCUS, InterQual, MCG, state criteria or payer-specific criteria may govern other programs. None of them determine claim form, code, unit or payment methodology.
CMS's own Benefit Policy Manual frames the clinical bar in terms a biller can actually use: the treatment must be active, coordinated and goal-directed, not chiefly social, recreational, custodial or a generic support program. The record needs to show why the weekly intensity is necessary, how the patient responds, and how treatment advances measurable goals or permits safe step-down.
So that is what IOP is. Which raises the obvious question about the largest payer in the country - because a lot of what is written online says Medicare does not cover it at all.
Medicare's IOP benefit changed on January 1, 2024
It did not cover IOP, in the way the benefit exists today, until January 1, 2024. Pages and forum answers published before that date saying "Medicare does not cover IOP" were correct at the time. Read today without an effective-date warning, they are actively misleading - and they are still ranking.
| Date | What changed | Why it matters |
|---|---|---|
| Before Jan 1, 2024 | Medicare lacked the current statutory IOP benefit | Old articles are historically correct and currently misleading |
| Dec 29, 2022 | Consolidated Appropriations Act, 2023 became law; Section 4124 established the benefit | Legal origin of the change |
| Nov 2023 | CMS finalized CY 2024 implementation through OPPS rulemaking | Defined settings, the 9-hour threshold, certification and payment architecture |
| Jan 1, 2024 | Medicare Part B IOP coverage and payment took effect | Claims for eligible settings could begin under condition code 92 rules |
| Jan 1, 2025 | RHC and FQHC four-or-more-service tier became available | A setting-specific phase-in that generic guides routinely miss |
| CY 2026 | CMS retained separate hospital and CMHC service-count tiers and moved CMHC rates to 40% of final hospital-based costs | Current national architecture and rate relationship |
Sources: the CY 2024 OPPS final rule fact sheet, the CY 2026 OPPS final rule fact sheet, and CMS Transmittal 13200 for the rural clinic phase-in.
Medicare Part B now covers an organized IOP for mental-health conditions, including substance use disorder, when the regulatory and manual requirements are met. Medicare's own beneficiary page describes the program as sitting between traditional outpatient treatment and inpatient or PHP care, requires a plan establishing at least nine hours weekly, and lists the covered settings: hospitals, community mental health centers, federally qualified health centers, rural health clinics and qualifying opioid treatment programs. The covered service range - set out in 42 CFR 410.44 - includes psychiatric diagnostic and therapeutic services, occupational and activity therapies where criteria are met, family and caregiver services directed at the patient's treatment, patient education tied to care, and related diagnostic services.

Certification is where programs most often assume a signature is administrative. For Medicare it is part of coverage. A payable record has to support:
- At least nine hours of weekly need
- Physician care and an individualized written plan
- Diagnosis, and service frequency, duration and goals
- Active treatment rather than passive support
- Expected improvement or maintenance consistent with the benefit
- Progress and response to each intervention
- Continued IOP-level need at recertification
- A discharge or step-down trajectory
"Continue IOP" satisfies none of that. It is a phrase, not a justification - it connects nothing about current functioning, response, remaining need, planned services or discharge goals. A billing team should not write clinical language, but it can absolutely run a pre-bill documentation checklist and return an incomplete record before the claim goes out.
On cost sharing: Part B applies, so after the deductible beneficiaries generally owe 20% of the Medicare-approved amount for covered professional services, plus coinsurance for each IOP day in a hospital outpatient setting or CMHC. Exact liability varies with other coverage, assignment and facility.
And a Medicare Advantage plan is not Original Medicare with a different logo. An MA plan must cover the benefit, but it administers network, notification, prior authorization, claim-routing and documentation rules itself. Before the first date of service, verify:
- Whether the facility and each separately billing professional are in network
- Whether the plan uses a behavioral-health delegate
- Whether authorization is required despite Original Medicare's claim architecture
- The required claim form, condition code and revenue lines
- Member cost sharing
- Plan-specific timely filing and appeal routes
- Whether any waiver applies to that exact entity, TIN, NPI, line of business, state, code and effective date
"Medicare covers IOP" answers none of those questions. Neither does hunting for the code that replaced S9480 - because there isn't one, and looking for it is the mistake.
How Medicare IOP claims actually work
This is the section most IOP guides skip, and it is where the money is.
The claim carries condition code 92
The current Medicare Claims Processing Manual, Chapter 4 instructs that hospital IOP claims carry condition code `92`. A condition code is a two-character flag on the institutional claim; 92 is the one that tells the payer this day is intensive outpatient programming. Without it, the claim is not an IOP claim, whatever services are on it.
Hospitals use bill type 013X; critical access hospitals use 085X. A type of bill is the code on a UB-04 identifying what kind of facility is billing and what kind of claim it is - each setting has its own, and getting it wrong is a return-to-provider event rather than a payment dispute. The provider reports an acceptable revenue code and charge for each covered service furnished. Hospital outpatient departments also report the associated HCPCS code; under the cited instruction, CAHs are not required to report HCPCS for this benefit.
The manual's listed revenue-code families give a sense of what a real IOP day looks like on paper:
| Revenue code | Category |
|---|---|
0250 | Drugs and biologicals furnished within benefit rules |
043X | Occupational therapy |
0900 | Behavioral-health treatment and services |
0904 | Activity therapy |
0914 | Individual therapy |
0915 | Group therapy |
0916 | Family therapy |
0918 | Behavioral-health testing |
0942 | Education and training |
The associated HCPCS and CPT list is broader than any single per-diem code. It spans selected psychiatric diagnostic services, individual and group and family services, specified testing and assessment, occupational and activity services, and patient and caregiver education. Because that list is maintained in a manual CMS updates, treat the current manual as the authority rather than any static table - including this one.
<!-- Image concept: Annotated technical schematic of a simplified UB-04 institutional claim form showing the key IOP-related fields - condition code 92, type of bill, revenue codes, HCPCS - with gold callout annotations explaining each field's role and a red warning about the professional-claim trap. Dominant intent: explanatory - makes the abstract claim architecture concrete for billing staff who need to visualize where each field sits. This is the most technically dense section and the image does work prose alone cannot. -->

Your setting decides your claim
There is no single Medicare IOP claim. There are six, and they differ in ways that change payment.
| Setting | TOB | Core indicator | Medicare payment logic | Professional-claim implications | High-risk mistake |
|---|---|---|---|---|---|
| Hospital outpatient department | 13X | CC 92; covered revenue and HCPCS lines; actual dates and units | OPPS daily hospital IOP APC, lower and higher service-count tiers | Specified physicians, PAs, NPs/CNSs and clinical psychologists can be unbundled; other listed practitioners are bundled | Submitting only S9480, omitting CC 92, or billing every clinician separately |
| Critical access hospital | 85X | CC 92; revenue lines and charges; HCPCS not required for the benefit under the cited instruction | 101% reasonable-cost basis; special CAH unit logic | Similar carve-out, with the employer rule for PA billing | Treating a CAH as an ordinary OPPS hospital |
| Community mental health center | 76X | CC 92; component service lines; actual dates and units | Separate CMHC daily APC tiers | Setting-specific bundle rules; check the current manual | Assuming hospital and CMHC rates are the same |
| Rural health clinic | 71X | CC 92; revenue 0905; qualifying primary service; current RHC modifiers | Paid using the hospital IOP rate structure, under RHC claim rules | Same-day medical and IOP can produce separate payments under stated conditions | Using ordinary RHC encounter logic, or omitting the primary IOP service |
| Federally qualified health center | 77X | CC 92; revenue 0905; qualifying primary service | Lesser-of-charge and hospital-rate nuance; no ordinary FQHC payment code or qualifying visit required for the IOP visit | Same-day medical and IOP can be separately payable under stated conditions | Adding an unnecessary FQHC payment code, or failing to roll all IOP-day charges to the primary line |
| Opioid treatment program | Freestanding generally 87X; provider-based follows host TOB | Weekly bundle plus IOP add-on requirements | OTP weekly episode architecture, not the daily APC recipe | Follow the current OTP billing page and fee schedule | Importing hospital CC 92 daily logic into the OTP weekly bundle |
One warning that belongs directly under that table, because a matrix invites exactly this error: types of bill and condition codes are institutional-claim constructs. A CMS-1500 professional claim never carries a hospital type of bill or a UB-04 condition code. If someone on your team is trying to find where condition code 92 goes on a professional claim, the answer is that it doesn't - which usually means the wrong claim is being built.
The rural clinic rules deserve their own note, because the phase-in is the single most commonly missed detail in this benefit. Under Transmittal 13200, RHCs bill 71X and FQHCs bill 77X, both with condition code 92 and revenue code 0905 for Original Medicare. The lower service tier applied for dates on or after January 1, 2024 - but the four-or-more-service tier only became available for dates on or after January 1, 2025. At least one designated primary IOP service must appear on the claim; additional IOP services that day are bundled. An ordinary FQHC payment code and qualifying visit are not required alongside the IOP visit, and FQHCs place all IOP-day charges on the primary service line for coinsurance calculation. A mental-health visit and IOP on the same day produce one IOP payment; a qualifying medical visit and IOP on the same day can produce two.
A guide that treats the 2024 rural launch as identical to the current structure is a year out of date on a benefit that only became payable two years ago.
You report components; Medicare pays the day
Here is the distinction that resolves more IOP confusion than anything else in this guide, and it has two halves that are both true simultaneously.
Component billing means the institutional claim reports each covered service furnished, with its required revenue code and HCPCS, its charge, its units and its date. Payment packaging means the outpatient code editor processes those services into the applicable daily IOP ambulatory payment classification - an APC is Medicare's outpatient payment bucket - rather than paying every line independently.
<!-- Image concept: Horizontal flow diagram showing how Medicare IOP component services are reported individually on the claim but packaged into a single daily APC payment by the outpatient code editor. Dominant intent: explanatory - this is THE key conceptual distinction in the Medicare section and a visual makes it instantly clear in a way prose cannot. Left-to-right flow: component lines → OCE processing → daily APC tiers. -->

Holding both halves at once kills two opposite mistakes:
- "It's a per diem, so we only need one generic per-diem line." Wrong for Medicare hospital and CMHC component reporting. The day has to show its parts.
- "We put four therapy lines on the claim, so Medicare pays four separate therapy fees plus the IOP day." Also wrong, where those services are packaged into the IOP APC.
The current Chapter 4 instruction names four IOP APCs:
| APC | Provider class | Manual label |
|---|---|---|
5851 | CMHC | Level 1 IOP - "up to 3 services" |
5852 | CMHC | Level 2 IOP - 4 or more services |
5861 | Hospital | Level 1 IOP - "up to 3 services" |
5862 | Hospital | Level 2 IOP - 4 or more services |
The right mental model for the whole benefit: program eligibility and certification decide whether the episode belongs in IOP; the attended and documented services decide what exists on each daily claim; the payment system decides how those lines package into the day rate.
CMS's own documents don't quite agree
The CY 2026 final rule fact sheet describes the structure as one APC for days with three services and one for days with four or more. The current claims manual labels the lower APC "up to 3 services."

Those phrases are not the same. Read literally, "up to 3" could be taken to include a one-service or two-service day. The policy history and the rule summary both center the lower tier on three services.
We are not going to resolve that for you by guessing, and you should be wary of any guide that does. The safe operating position is this: CMS's current rate structure identifies a three-service tier and a four-or-more-service tier, the claims manual labels the lower APC "up to 3 services," and because the documents are not perfectly aligned in wording, providers should test the current quarterly Integrated Outpatient Code Editor - the CMS editor that decides whether institutional claim lines group and pay, updated four times a year - and confirm with their Medicare Administrative Contractor before treating a one- or two-service day as payable IOP.
That is also a useful demonstration of why static code tables age badly and quarterly edits matter more than blog posts.
Some professionals bill separately; most don't
For hospital and CAH IOP, the current Chapter 4 instruction identifies direct professional services that are not paid as IOP facility services - the services of physicians, physician assistants, nurse practitioners and clinical nurse specialists, and clinical psychologists, where the applicable criteria are met. It states that the services of other practitioners - including clinical social workers, marriage and family therapists, mental health counselors and occupational therapists - are bundled when furnished to hospital or CAH IOP patients. There is also a specific PA rule: only the PA's actual employer bills the professional service, and that employer may be the hospital, a physician, a group or another permitted entity.
This is why "IOP uses UB-04, never CMS-1500" is too broad a statement to be safe. The facility and program claim is institutional. Certain professional services still have a professional-claim path. What a program cannot do is unbundle every clinician's work simply because each of them wrote a note.
Units, dates and off-campus modifiers
For hospitals, units represent the number of times the HCPCS-defined service or procedure was performed. CAHs report the number of revenue-code visits. For procedures whose code definition contains no time reference, hospital outpatient departments do not bill sessions under 45 minutes, and the provider must retain documentation supporting medical necessity including beginning and ending times.
Hospitals other than CAHs must report each occurrence on a separate line with its actual service date when the billing period covers more than one date. Missing line-item dates, or dates falling outside the statement period, cause return-to-provider edits.
That rule survives the claim span. A Medicare Administrative Contractor education page notes that providers may submit daily, weekly or monthly IOP claims, subject to sequential billing and frequency and discharge-status rules. That flexibility concerns the statement span - it is not permission to aggregate a week of services onto one undifferentiated line. One weekly total is not enough. The claim has to preserve the daily service pattern.
Finally, location. The current manual requires non-excepted off-campus provider-based hospital departments to report modifier PN on applicable IOP claim lines, while excepted off-campus departments report PO, and current payment treatment can differ from the main-campus hospital rate. Any table announcing "hospital IOP rate = X" without distinguishing main-campus, excepted and non-excepted status is quietly misstating what a program will actually collect.
All of which explains the Medicare side. It does not explain what happens to the codes your commercial and Medicaid payers are already asking you to use.
Why S9480 means three different things
There is a practical shorthand in this space, and it is genuinely useful as long as every noun in it carries the word often rather than always:
S9480- often used by commercial and Medicaid payers for psychiatric and mental-health IOP, frequently as a per diemH0015- often used for substance-use IOP, frequently as a per diem- Revenue
0905- commonly associated with psychiatric IOP in payer policies - Revenue
0906- commonly associated with substance-use IOP in payer policies
Now watch what happens to one of those codes across three real, currently published policies.
| Architecture | Source | What S9480 means there |
|---|---|---|
| Commercial per diem | Blue Cross NC facility behavioral-health reimbursement policy | One IOP unit per date, treated as an all-inclusive per diem, billable on a facility or professional claim, with S9480 for mental-health IOP and H0015 for SUD IOP |
| Medicaid hourly community service | Illinois HFS Community-Based Behavioral Services Handbook, 2021 edition | A group program made available at least four hours per day, five days per week - with one hour as the unit of service |
| Medicaid hospital outpatient | Illinois HFS hospital outpatient behavioral-health notice | Psychiatric clinic Type B IOP, paired with revenue code 0913 (PHP uses 0912) |
One code. Three architectures. Two of them inside the same state.
<!-- Image concept: Three-panel comparison graphic showing the same billing code S9480 interpreted by three different payer contexts - commercial per diem, Medicaid hourly community, Medicaid hospital outpatient - each with its own unit definition, claim form, and visual representation. Dominant intent: explanatory + persuasive - the table already conveys the data, but the visual panels make the absurdity of code-only advice viscerally clear and shareable. Each panel uses a different color header to signal distinct architectures. -->

That is not a curiosity - it is the reason code-only advice is unsafe. The unit is a payer rule, not an intrinsic property of the code number. A billing team that writes "S9480 = one unit per day" into its charge master has hard-coded one payer's policy as a universal truth, and will under-bill or over-bill everywhere that policy doesn't apply.
Kentucky adds a fourth angle worth understanding, because it separates two documents programs routinely treat as one. A Molina Healthcare of Kentucky Medicaid policy states that H0015 and S9480 are reimbursed per diem - that is a payment policy, telling you the code, unit and rate architecture. Optum's Kentucky provider page instructs providers to submit complete current documentation through the plan's portal and identifies the plan-adopted criteria used for medical-necessity decisions - that is a utilization-management policy, telling you what evidence secures approval. Neither one tells you whether your organization is eligible or what it is contracted to be paid; that is the provider contract. And none of the three tells you whether the authorization and contract were actually loaded correctly, which is claim adjudication. Four separate documents, four separate failure points, and a program that has read only one of them is exposed on the other three.
Two caveats on the table above, both of which apply to every payer example in this guide. The Illinois community handbook is a dated document and must be checked against current HFS and managed-care requirements before operational use. And the Blue Cross NC policy is North Carolina commercial - it is evidence that some commercial payers use a broad all-inclusive per diem and permit either claim form. It is not evidence that all commercial plans do, that every Blue Cross plan follows it, or that a given member's product is governed by the public policy rather than the member contract and provider agreement.
There is no secret Medicare replacement code
The most common version of this question is direct: Medicare rejected `S9480` - what code do I use instead?
There isn't one. Medicare hospital and CMHC IOP is not built around a substitute per-diem code. The provider reports the covered component services from CMS's current list under the appropriate revenue codes with condition code 92, and the code editor groups the day into the IOP APC. The claim may well include familiar psychiatric service codes, but the program still has to follow the IOP-specific setting, bundling, unit and date rules - and a standalone office professional does not become a Medicare IOP by selecting one of those component codes.
If you have seen a page assigning a tidy set of Medicare IOP codes that map neatly onto S9480's role, check it against the Chapter 4 architecture above before your team builds a charge master around it. At least one currently-ranking guide assigns codes to Medicare hospital IOP that do not match CMS's current component-service and APC structure at all.
UB-04 or CMS-1500: choosing the claim form
Use the institutional architecture when you are billing the hospital, CAH, CMHC, RHC, FQHC or OTP program benefit under that payer's institutional rules, when the contract or payer manual directs a UB-04 or 837I claim, or when Medicare requires the setting-specific type of bill and condition code.
A professional claim may still be involved when a payer explicitly allows the IOP per diem on a professional claim, as the Blue Cross NC policy does; when a separately payable professional service sits outside the Medicare institutional bundle; when the payer's contract enrolls the program under a professional or clinic model; or when the state Medicaid design uses professional-claim units.
What you cannot do is decide from the code. S9480 on a claim does not tell anyone whether the correct transaction is an 837I or an 837P. That answer comes from the payer contract and manual, the provider enrollment, the setting and the benefit design.
Place of service, and the trap in POS 52
Place-of-service codes are used on professional claims. The institutional UB-04 or 837I claim communicates setting through provider enrollment, type of bill, revenue code, condition code and related fields instead. Telling a biller to put a professional POS code in a UB-04 field produces a claim that cannot process.

Where a professional claim genuinely is involved, several POS values may appear in an IOP workflow, each with a caution attached:
| POS | Context | Caution |
|---|---|---|
19 | Off-campus outpatient hospital | Professional claim only; confirm the actual department status |
22 | On-campus outpatient hospital | Not a generic code for every hospital-affiliated IOP |
49 | Independent clinic | Only if the entity qualifies and payer enrollment matches |
50 | FQHC | Professional context; the Medicare FQHC IOP facility claim remains institutional |
52 | Psychiatric facility - partial hospitalization | The label says partial hospitalization. Do not assume it is the universal IOP POS |
53 | Community mental health center | Professional context; CMHC facility IOP is 76X institutional |
57 | Non-residential SUD treatment facility | May apply to SUD professional claims where the payer recognizes it |
72 | Rural health clinic | Professional context; Medicare RHC IOP is 71X institutionally |
02 / 10 | Telehealth other than home / in home | Only for eligible professional telehealth services under current payer rules; never a UB-04 substitute |
The publishing rule we hold ourselves to, and recommend: use the POS that truthfully represents the rendering setting under the payer's current professional-claim rules. Not "IOP is POS 52." Not "IOP is POS 57."
Two smaller points that follow the same logic. There is no single IOP diagnosis - the claim needs the patient's documented conditions with the payer's required sequencing and medical-necessity support, and payer policies differ on mental-health versus SUD program codes and principal-diagnosis rules. And modifier use is payer- and setting-specific: off-campus PN and PO, RHC claim modifiers, telehealth modifiers, distinct-service modifiers and state Medicaid staff modifiers all live in different architectures. A "top five IOP modifiers" list would mislead more readers than it helped unless every entry were tied to a named payer, setting, claim type and effective date.
Which brings up the question underneath all of this. If the code doesn't define the unit, what actually makes a day billable?
What counts as a billable IOP day
A billable day is the intersection of what occurred and what that payer contracted to recognize. Programs get into trouble when those two things are tracked as one number.
You need four:
- Scheduled program hours - what the calendar said
- Actual attendance clock time - when the patient arrived and left
- Documented billable therapeutic time or occurrences - what has a completed, signed note behind it
- Payer-defined qualifying services or units - what this payer will actually count
Those four numbers are different, routinely, and the gap between one and four is where revenue quietly disappears.
<!-- Image concept: Four-circle intersection diagram showing the four numbers that define a billable IOP day - scheduled hours, actual attendance, documented time, payer-qualifying services - with the center overlap labeled 'billable day' and the gap zones labeled as leakage risks. Dominant intent: explanatory - the text explicitly frames this as a gap problem, and a Venn-style intersection makes the concept and its failure modes instantly visible. The gap labels (ghost day, orphan service) connect directly to the prose's terminology. -->

Four payment models that all get called "IOP reimbursement"
| Model | What is reported | What tends to pay | Where seen | Main reconciliation risk |
|---|---|---|---|---|
| Medicare component-to-APC | Individual qualifying daily services, charges, dates, units | Daily APC tier by setting and intensity | Medicare HOPD and CMHC | Daily service count doesn't match the notes or the editor's rules |
| Bundled per diem | One IOP unit per day, sometimes with a revenue code | Negotiated or policy-set day rate | Many commercial plans, some Medicaid | Billing a day that misses the minimum; unbundling included services |
| Hourly or unit-based | Time units of IOP service | State or plan fee schedule per hour or interval | Some Medicaid and community programs | Converting scheduled hours instead of documented units |
| Case rate or SCA | Episode, day or custom negotiated amount | Contract or SCA terms | Out-of-network and bespoke arrangements | Payer loads a default OON rate instead of the agreed rate |
"Per diem" is the word that causes the most trouble, because it sounds like a complete answer and isn't. It tells you the payer treats a covered program day as one payment unit. It does not tell you the minimum hours or services for a payable day, whether professional services are included, whether lab or medication management or testing or transportation are included, whether the unit belongs on a professional or facility claim, whether the day can be billed when the patient leaves early, whether separate outpatient therapy on the same date is bundled or denied, whether IOP and PHP and residential are mutually exclusive on that date, or whether the negotiated rate is fixed, percent-of-charge or lesser-of logic.
The Blue Cross NC policy happens to answer several of those explicitly - one unit per date, all-inclusive of facility and professional and ancillary services, with IOP, PHP and residential treatment mutually exclusive on the same date. Most policies are not that explicit, and none of them answer for a different payer.
Partial attendance, and why there is no half-day rule
No national rule supports "bill half the per diem when the patient leaves early." The program reports only services actually furnished and supported, and what happens next depends entirely on which architecture you are in.
Under Medicare, an early departure can change the count of qualifying daily services and therefore the APC tier - or create genuine uncertainty about whether the day clears the current edit at all. A patient who attends only one or two components lands squarely in the unresolved lower-tier question above. Do not assume payment because a manual label says "up to 3."
Under a bundled commercial per diem, the contract's minimum-day rule decides. There is no general federal half-day unit. The outcome may be the full per diem, no bill, a different outpatient service, or payer-specific partial logic - but only the contract or manual can tell you which.
Under an hourly Medicaid model, bill actual documented units under the state or plan rounding rule. A scheduled four hours is not four billable hours if the patient arrived late, left early or missed a group.
The universal control underneath all three: never bill a missed group, individual session or education block because it was on the schedule. Attendance, service note, staff credential, start and end time, charge line and claim unit all have to agree.
Here is what that reconciliation looks like on a single day. This is illustrative, not a claim template:
| Scheduled item | Attendance source | Note complete? | Payer-qualifying? | Claim action |
|---|---|---|---|---|
| Group A | Roster plus patient check-in | Yes | Yes | Report one occurrence or line as required |
| Group B | Roster shows absent | No service | No | Do not bill |
| Individual session | Appointment plus individual note | Yes | Yes | Report if included in this payer's architecture |
| Education block | Attendance plus curriculum note | Yes | Payer-specific | Report only if covered and qualifying under the payer rule |
| Care coordination | Staff task log | Yes | May be bundled or non-qualifying | No separate line unless the payer permits |
The census said four components. The payable count is two or three. Billing from the schedule instead of the completed record is the classic revenue-integrity failure in this level of care, and it runs in both directions - ghost days, where a charge exists with no attendance or completed service behind it, create overpayment and recoupment exposure; orphan services, where attendance and notes exist but no charge was ever generated, create silent underbilling and timely-filing risk.
An IOP day can exist differently in five systems at once: the program schedule, the check-in or telehealth attendance log, the group and individual clinical notes, the authorization ledger and the billing system. If those are only reconciled after denials arrive, the program is auditing itself with a three-month lag and paying the payer to find its errors.
Attendance is only half the exposure, though. The other half usually expired several days before anyone looked.
Authorization is a data object, not a number
An authorization number by itself is close to useless for revenue integrity. A usable authorization record captures:
<!-- Image concept: Technical schematic showing an IOP authorization record as a structured data object - like a database schema or JSON visualization - with all its fields laid out as key-value pairs and three gold callout annotations pointing to the fields that most commonly cause denials. Dominant intent: explanatory - the section's thesis is that an auth is a data object, not a number, and the image literally renders it as one. The dark-background technical aesthetic provides visual rhythm break after five light-background diagrams. Dominant + secondary intent: explanatory + persuasive. -->

- The member and product
- The behavioral benefit administrator
- The authorized facility NPI and TIN
- Any rendering-provider requirements
- The level of care
- The codes and revenue codes
- The claim form or POS, where specified
- The authorized units and their definition
- Start and end dates
- Frequency limits
- Whether admission notification is separate from authorization
- The next review date and its submission deadline
- The reviewer and portal reference
- The required clinical packet elements
- The decision letter and call reference
- Any conditions or step-down expectations
That list exists because of one recurring, expensive fact: a provider can hold a completely valid authorization and still be denied if the approved code, POS, entity, unit or date span does not match what the claim carries. "Approved days" against "billed hours" is a denial. An approval attached to the wrong TIN is a denial. A date one day outside the span is a denial.
The pre-admission verification sequence
- Identify the actual payer for behavioral benefits. Do not stop at the medical logo on the card - check carve-out and delegate information. Behavioral benefits are frequently administered by a separate managed behavioral health organization, and the front desk that verifies the medical plan often never verifies the carve-out.
- Verify eligibility for the planned dates. Eligibility changes mid-episode.
- Verify that IOP is a covered benefit for the exact product. A valid code is not proof the member's plan covers the program.
- Verify facility and professional network status separately - and verify that the contract includes IOP, not merely ordinary outpatient behavioral health. These are different service lines and a general network match hides the gap.
- Confirm authorization and notification rules in writing. Capture code, level, unit, date, POS or form, and entity.
- Confirm the allowed-rate basis - contracted rate, percent of charge, state fee, case rate or SCA.
- Obtain approval before care where required.
- Put the next review date on a shared calendar before admission. Not on the last covered day.
Counting backward from the last approved day
Concurrent review is where whole weeks of delivered care become uncollectible, and the fix is a countdown rather than a reminder.
- T minus 7 to 10 days - identify cases approaching the boundary; check the payer's specific lead time
- T minus 5 days - assemble progress notes, attendance, current plan, response, remaining need and step-down plan
- T minus 3 to 5 days - submit, where the payer requires that window
- Daily until decision - track portal status and information requests
- Before the next unapproved date - escalate to peer review, expedited review, administrative extension, or a documented financial decision by leadership
- At decision - update the authorization ledger and the charge hold-or-release logic
For a concrete, dated example of why the lead time is not optional: Arizona Complete Health announced that all providers needed prior authorization for mental-health IOP code S9480 effective October 15, 2024. Its notice describes an initial clinical packet including the treating physician's level-of-care recommendation, assessment and functional-need support, a discharge and step-down plan, and the IOP service plan and goals. One review cycle may authorize up to 30 days - and continued-stay packets are due three to five days before the last covered day, with current evaluation of continuing weekly-intensity need, an updated step-down plan, service plan and current progress records.
Read that as a plan-specific example, not a national cadence. The transferable lesson is structural: a 30-day approval still requires a renewal workflow that begins before the final covered date. An operations team should never learn that an authorization expired from a denial that arrives three weeks later.
Authorization relief has the same trap in reverse. UnitedHealthcare and Optum materials illustrate that waiver programs can be code-, product-, entity-, performance-, state- and effective-date-specific. A current "gold card" policy might list IOP codes such as S9480, H0015 or revenue codes 0905 and 0906 while still requiring advance notification and excluding certain states or lines of business, and Medicare or D-SNP billing can retain Medicare-specific institutional requirements throughout. A sales representative saying "you're gold-carded" is not a record. Capture the exact legal entity, TIN and NPI the waiver applies to, the state and line of business, the covered codes and levels of care, the start and end dates, whether notification survives the waiver, whether concurrent review or discharge notification survives, and what happens if performance drops below the threshold. Provider portals for these programs - Optum's Provider Express, for instance - change frequently enough that last quarter's screenshot is not evidence.
A billing system should be able to hard-stop a charge when the date lies outside the approved span, authorized units are exhausted, a level or code or POS mismatch exists, the facility NPI or TIN differs from the authorization, eligibility is inactive, network or SCA status is unresolved, a required note or signature is absent, or daily attendance does not support the charge. What it should not have is a silent override. Every exception needs an owner, a deadline, a reason, an estimated dollar value at risk and resolution evidence.
And retroauthorization is not a strategy. Availability is plan- and circumstance-specific, deadlines and qualifying circumstances are often narrow, and "bill it and appeal later" as routine practice is how programs discover their timely-filing deadline expired during the argument. Document why authorization was not obtained, preserve the contemporaneous records, and classify the revenue as at risk until a written decision exists.
Keeping the authorization ledger current, mapping approved fields to claim fields, and owning the concurrent-review calendar is a large share of what we spend our days on in behavioral-health revenue cycles. It is unglamorous work, and in this level of care it is worth more than any coding decision.
One more distinction, because sending the same appeal to all three is a common and costly habit. An authorization denial means the payer says the planned or continued level of care is not approved - the appeal route is clinical and runs through utilization management. A claim denial for no authorization means the payer says the claim lacks a valid matching approval - the appeal may be administrative, clinical or both. A claim denial despite a valid authorization is usually a data mismatch or a payer load failure - and that appeal packet should lead with the decision letter and map every approved field to the submitted claim.
That third category is the one that keeps program directors up at night: everything was approved, the patient attended, and the claim still denied. Often the reason isn't the authorization at all. It's that the record never proved the level of care.
The record has to prove IOP, not just therapy
The payer is not asking whether therapy occurred. It is asking why this patient needed a coordinated intensive program at this frequency, and what each component contributed toward the plan.
That distinction matters because a record that fully supports an ordinary weekly outpatient encounter may not support IOP even when the patient genuinely attended several groups. Same services, different evidentiary burden.
A defensible IOP record generally needs the following, subject to payer and state variation:
- A comprehensive assessment and diagnosis
- A level-of-care recommendation with rationale
- An individualized plan with measurable goals
- The planned type, amount, frequency and duration of services
- Physician involvement or certification where required
- Daily attendance with exact service occurrences
- Group, individual, family and education notes tied to the plan
- Start and end times, and units where required
- Response to intervention, rather than a copied curriculum summary
- A continuing-need review
- A discharge or step-down plan
- Coordination records where relevant
- Signatures with credentials inside the required timing
CMS's Benefit Policy Manual describes what a progress note has to establish: the nature of the service, the patient's response, and the relationship of the intervention to treatment-plan goals. A billing-facing checklist can test that without a biller ever making a clinical judgment:
- What service was delivered?
- Who delivered it, under what credential?
- When, and for how long?
- Was the patient present and participating?
- What individualized intervention occurred?
- How did the patient respond?
- Which plan goal did it advance?
- What changed, and what remains necessary?
- Does this note duplicate another group note verbatim?
That last question is the one that catches the most exposure. A program-level group topic or facilitator note alone may not prove that each patient received a billable service. The record has to connect each billed patient to attendance, participation and response, individualized relevance, and the treatment plan. Twelve identical notes for twelve patients in one group is a recoupment invitation, however accurate the group description is.
Continued stay raises the bar again. The documentation should answer:
- What has improved?
- What remains functionally significant?
- Why is the current intensity still necessary?
- Why is ordinary outpatient care not yet sufficient?
- What interventions are changing based on response?
- What is the concrete step-down plan?
- How much longer is this intensity expected to be needed?
A static plan copied every week weakens both the authorization and the eventual appeal.
One timing distinction is worth separating explicitly, because conflating the two produces gaps that look like clinical failures and are actually calendar failures. Medicare recertification cannot be less frequent than every 60 days, and a provider may set shorter intervals. A commercial plan may approve only several days at a time. The Medicare certification interval and the commercial authorization span are different cycles, and running the program off the slower one leaves uncovered dates.
If you want a single recurring test that catches front-end, clinical, billing and payer errors in one pass, sample five paid days, five denied days and five unbilled days per payer each month, and check each one across:
- Eligibility and benefit
- Contract and network
- Authorization match
- Attendance
- Component notes
- Time and units
- Medical-necessity linkage
- Code, revenue code, form and POS
- Payment against contract
- Patient-balance treatment
Auditing codes alone will never surface most of what actually breaks.
None of which helps when there is no contract in the first place.
Out-of-network care and single-case agreements
IOP programs regularly encounter members whose plans have no accessible contracted program at the required level of care, or whose continuity needs push the plan toward an exception. Three things get conflated in those conversations, and they are genuinely distinct:
- Clinical authorization - the plan approves the level of care, dates and units as medically necessary
- Network exception - the plan agrees to treat a particular out-of-network provider or episode under special network terms, often because no adequate in-network option exists
- Single-case agreement - a written payment and administrative contract for that defined case
A program may need all three. Clinical approval does not establish an allowed amount, and an agreed rate does not authorize care.
Where practicable before admission, get a written document stating:
- The member, plan and product
- The provider legal name, TIN, billing and rendering NPI, and location
- The exact level of care
- The covered codes, revenue codes, claim form and POS or TOB
- Authorized dates and units
- The rate and its method - fixed day rate, percent of charge, case rate or other
- Whether professional and ancillary services are included
- Member cost sharing and balance-billing treatment
- Effective and termination dates
- The claim submission address and payer ID
- The timely-filing period
- Authorization and reference numbers
- The payment timeframe
- The appeal and dispute contact
- Signatures or other evidence of binding approval
When a signed SCA never gets loaded
Even a signed SCA underpays when the payer's claims platform never loads the special rate. The claim then processes at a default out-of-network allowance, denies for no contract, or applies the wrong member liability - and none of those look like an SCA problem on the remittance.
Run a pre-claim load check where the payer supports one, and a first-claim validation immediately after the first remittance:
- Compare the billed code, form and date to the SCA
- Compare the allowed amount to the agreed rate
- Compare patient responsibility to the agreement
- Verify the authorization linkage
- Escalate before submitting the rest of the episode if the first claim is wrong
Submitting twelve dates before validating the first payment multiplies one setup error across an entire episode. This is also why we post against the contract or agreement rather than against the billed charge - a claim that paid the wrong amount and a claim that paid correctly look identical in most billing systems until someone builds the expected-allowed comparison. Underpayments do not announce themselves. They arrive as payments.
Three legal frameworks people overestimate
Federal continuing-care protections can cover certain patients for up to 90 days when a provider or facility leaves a plan's network, subject to statutory conditions. That is a specific protection tied to a network-status change - not a general right to a single-case agreement for every new out-of-network admission.
Federal surprise-billing protections apply to defined emergency services, certain non-emergency services at specified in-network facilities, and air ambulance. A freestanding IOP is not automatically one of the statute's specified facilities merely because it delivers health care. A hospital outpatient IOP may raise different questions because the service is furnished in a hospital outpatient department. State law and plan terms may be broader. Do not assume the No Surprises Act converts every out-of-network IOP episode into in-network payment - facility type, service context, notice-and-consent rules, state protections and the plan all matter.
Parity is the third. Federal rules address whether mental-health and substance-use benefits face more restrictive financial requirements or nonquantitative treatment limitations than comparable medical and surgical benefits, and Department of Labor materials identify prior authorization, network composition and out-of-network reimbursement methodology as examples of those limitations. The 2024 final rules added detailed requirements, and the federal agencies subsequently announced a nonenforcement posture for portions that were new relative to the 2013 rule while litigation proceeds. The underlying statute and the comparative-analysis duties enacted through the CAA 2021 remain relevant.
Parity can support a request for a plan's comparative analysis, or a challenge to a process that operates discriminatorily. It does not mean every denied IOP day must be paid. The appeal still needs the plan language, the facts, the level-of-care evidence and the comparison - and disputed patient liability or network arrangements are a place to involve contract or legal review rather than a billing workflow.
By this point the failure surface is large enough that "we're getting denials" stops being a useful sentence. It needs a taxonomy.
Why claims deny when the authorization was valid
"Denied for authorization" is too broad a category to fix a process. Sorting denials by where the control actually broke is what turns a denial log into a work plan.
<!-- Image concept: Horizontal tree diagram showing the five categories of IOP claim denials and their sub-causes branching from a root node. Dominant intent: explanatory - the text presents these as five bulleted lists; the tree structure makes the taxonomy scannable and shows that denials cluster by root cause, not by payer denial text. Each category uses a distinct accent color to aid visual sorting. This is the section's payoff visual - it converts a denial log into a work plan, which is exactly what the prose promises. -->

Front-end eligibility and benefit failures
- The behavioral carve-out was missed, and the claim went to the medical plan instead of the delegated behavioral payer
- The IOP benefit is excluded or limited for that specific product, even though the code looks valid
- Coverage terminated mid-episode
- The facility or professional is not contracted for IOP specifically - a generic network match that hides a service-line gap
Authorization failures
- No authorization
- A date gap, where the extension decision arrived after the prior span closed
- Wrong level or code - PHP approved, IOP billed, or the reverse
- Wrong NPI, TIN or location, with the approval attached to another entity
- Wrong unit, where the payer approved days and the claim used hours
- Exhausted units
- Notification omitted, because a waiver removed review but not the notification requirement
Claim-format and coding failures
S9480submitted to Original Medicare instead of the component architecture- Condition code
92omitted - The wrong type of bill
- A wrong revenue-and-HCPCS pairing
- A line date missing, or falling outside the statement span
- Missing service units
- An off-campus modifier omitted
- A professional POS placed on an institutional claim
- FQHC or RHC primary-service and charge-line logic missed
- A bundled service billed separately - or, in the opposite direction, one generic line submitted where the payer requires components
Attendance and documentation failures
- A scheduled group billed that the patient did not attend
- A patient who left early, with all components still on the claim
- An unsigned or late note
- Missing time where a time or unit rule applies
- A group note lacking patient-level response
- A copied note that does not establish individualized treatment
- A plan that never explains IOP-level need
- A stale recertification or concurrent packet
- An absent discharge plan
- A provider credential below the payer or state requirement
Payment and contract failures
- The payer used a default out-of-network rate instead of the SCA
- The wrong negotiated per diem loaded
- Hospital and CMHC rates confused
- A wage or geographic adjustment applied incorrectly
- Patient cost share inconsistent with the contract
- A claim paid at the ordinary outpatient rate
- A rate update never loaded at the start of the year
- An allowed amount below contract, with no denial reason given at all
Most IOP claims do not fail permanently on the first denial. They become losses later - while the team spends weeks asking the wrong payer, while an authorization-load dispute stays unresolved, while medical records sit unassembled, after a first appeal goes to the claims address instead of utilization management, after a corrected claim is filed when an appeal was required, or once proof of timely original submission is lost. Track the next actionable deadline, not the age of the denial.
Three hard stops are worth automating, and each one prevents a whole class of the above:
- Do not release a date whose authorization fields do not match the intended claim.
- Do not release a date whose attendance and service record does not support the billed unit or the Medicare service-count tier.
- Do not close a paid claim until the allowed amount has been compared against the applicable contract, SCA or Medicare expectation.
The obvious next question is what any of this is actually worth.
IOP reimbursement rates and what a broken week costs
Here are current national numbers, and then some clearly labeled arithmetic. The distinction between those two things matters, so we will keep flagging it.
The National Association for Behavioral Healthcare's corrected rate alert reports these CY 2026 national unadjusted rates from CMS Appendix A materials:
| Daily tier | CMHC | Hospital-based |
|---|---|---|
| 3 services | $127.74 | $319.38 |
| 4 or more services | $167.38 | $418.45 |
Those are national illustrations, not a promise of any particular remittance. Actual payment moves with the current CMS files, geographic and wage-index adjustments, provider status, off-campus policy, claim edits, deductible and coinsurance, sequestration and other claim-specific factors. Reconfirm the exact rows in the current CMS Addendum A or pricer before relying on them operationally.
With that stated, the arithmetic:
Tier drop. A patient has four qualifying services scheduled and misses one. If the day still qualifies but falls from the four-plus tier to the three-service tier, the hospital gross national-rate difference is $418.45 − $319.38 = $99.07 for that day. At a CMHC the comparable difference is $167.38 − $127.74 = $39.64. The larger exposure is a day that fails the current payable edit or lacks support entirely - then the amount at risk is the whole day, not the tier gap.
One week and one month, Medicare hospital. Five four-plus-service days at $418.45 is $2,092.25 in gross national-rate value. Three four-plus days per week across four weeks is 12 days, or $5,021.40. The same 12 days at a CMHC is $2,008.56. None of that implies every IOP runs five days a week or that any claim pays the national amount.
A missed concurrent review, modelled. The rate here is invented purely for scale: assume a contracted commercial IOP per diem of $350 and three authorized days per week. A concurrent review is missed and one week is delivered outside approval. Gross amount at risk is 3 × $350 = $1,050 for that one patient. Five patients moving through the same broken workflow is 5 × $1,050 = $5,250. The arithmetic is the lesson, not the assumed rate.
Charges that never generate. Assume 300 attended patient-days in a month, and 2% fail to produce charges because group rosters do not interface cleanly to billing. That is six days. At an assumed $350 allowed amount, 6 × $350 = $2,100 gross unbilled. A 2% leakage rate looks like a rounding error on a KPI dashboard and is real money on a P&L.
An SCA that never loaded. Written SCA rate $450 per day; the payer's system applies its default out-of-network allowance of $175; 12 days paid. Variance is ($450 − $175) × 12 = $3,300 - money that was contractually owed, invisibly lost, and recoverable only if someone compared the remittance to the agreement.
What we will not do is tell you IOP pays $X to $Y per day as a national fact. Public rates are fragmented, negotiated rates are confidential, state fee schedules differ, and a good deal of what circulates as an industry range is an unsourced number copied between billing-company blogs. Use current official Medicare figures where you need a real number, and label every commercial illustration as a model.
So one broken control, on one workflow, is worth a few thousand dollars a month for a small program. Which raises the question you were probably going to ask anyway.
Can your team run IOP billing in house?
Often, yes - and where that is the right answer, it is worth saying plainly rather than talking a program out of it.
In-house billing is a reasonable model when a program has most of the following:
- A small and stable payer and product mix
- Predominantly in-network contracts with clear fee schedules
- One state, and a limited number of licensed locations
- Experienced institutional and professional billing staff
- A named owner for authorization and concurrent review
- Reliable daily census, attendance and service capture
- EHR and clearinghouse support for the required institutional fields and line-level dates
- Contract-loaded payment posting with underpayment detection
- Denial reporting by root cause rather than by payer denial text
- Backup coverage for vacations, turnover and deadline-driven reviews
- Quarterly testing against current payer manuals and CMS edits
Read that list twice, because the honest test is not the one most programs apply. It is not whether your staff can generate a clean claim. Most can. It is whether the organization can prove daily control over the authorization-to-attendance-to-documentation-to-payment chain, and detect a break before timely filing expires.
Specialist support becomes economically rational at a different set of conditions:
- Multi-state operations, or materially different Medicaid models
- A large Medicare or Medicare Advantage census
- Multiple facility types, or both institutional and professional claims
- Delegated behavioral-health networks and frequent payer-routing errors
- Out-of-network admissions, network exceptions or single-case agreements
- Repeated concurrent-review misses
- A heavy partial-attendance or schedule-change burden
- Persistent authorization-valid-but-claim-denied cases
- Weak contract loading or unexplained payment variance
- Billing turnover, or no experienced facility biller
- Census growth outpacing administrative controls
That picture usually changes for one of four reasons: the practice is growing - new clinicians, new locations, a new state; the payer or service mix has genuinely got more complex; nobody has the time the billing side actually needs; or collections have slipped and nobody can say precisely why. None of those is about size. We work with practices of every size, from a single clinician to a multi-state group, and we take on a single piece of the cycle as readily as the whole of it. The question is never whether a practice is big enough to be worth helping - it is which part of the cycle needs owning.
Build that case from your own numbers, not from a vendor's collection-lift percentage - including ours. The figures that decide it are authorized days lost, unbilled attended days, denials by root cause, underpayments, timely-filing write-offs, staff cost and days in A/R. Any billing company that leads with a generic percentage improvement instead of asking for those numbers is selling before it has diagnosed.
Where a specialty team earns its fee in this level of care is the control layer around the claim rather than the claim itself: building and maintaining the payer and product matrix; verifying the behavioral benefit and the delegated payer; confirming the organization, locations, rendering clinicians and program level are enrolled and contracted correctly; translating each authorization into code, unit, POS, date-span and review-deadline fields; reconciling census, attendance, notes and charges daily; holding claims whose service count or record does not support the payer's rule; submitting the correct institutional or professional architecture for the setting; posting against the contract or SCA rather than the billed charge; working denials by root cause while preserving timely filing; and feeding recurring failures back to admissions, utilization review, clinical operations and contracting.
That is the work. It is also work an organized program can do itself, and outsourcing it guarantees nothing about coverage, authorization or payment - those depend on the benefit, the record and the contract, no matter who builds the claim.
The bottom line: where IOP revenue actually leaks
IOP billing is not a coding problem wearing a costume. It is a control problem, and the controls sit upstream of the claim.
Five things hold that up. IOP is a level of care, not a code - the claim method depends on payer, setting and contract. Medicare changed on January 1, 2024, so any guide saying Medicare simply does not cover IOP is stale unless it is describing the period before that date. Medicare's program payment still depends on component capture: the facility reports the qualifying services, dates and units, and the payment system groups the day. A partially attended day gets recalculated, not cosmetically discounted, because scheduled hours and attended time and documented services and payer-defined units are four different variables. And the leak usually starts before the claim exists - in benefit routing, enrollment, authorization, concurrent review, attendance reconciliation, documentation and contract loading.
If you want a concrete next step, take one date of service from last week and walk it all the way through: which entity and benefit you billed, what the authorization actually approved field by field, what the patient attended, which services had completed notes, which claim carried the program and which carried professional work, and what the remittance paid against what you expected. Whatever breaks first is the control worth fixing this month.
A strong IOP billing operation can answer one question before submission: do the patient, program, provider, authorization, attended day, documentation, code set, claim form and contract all describe the same payable service? Everything in this guide is in service of being able to answer that with evidence rather than hope.
Last reviewed: August 2026. Medicare IOP coverage began January 1, 2024. CMS payment rules, quarterly claim edits, payer authorization policies, state Medicaid manuals and provider contracts all change. Verify the member-specific plan, the current payer manual and your provider agreement before billing.
Common IOP billing questions
What code is used for IOP billing?
There is no single answer, and that is the most important thing to know. Many commercial and Medicaid payers use S9480 for mental-health IOP and H0015 for substance-use IOP, often as a per diem. Original Medicare hospital and CMHC IOP works differently: the facility reports covered component services under the appropriate revenue codes with condition code 92, and the code editor groups the day into a daily APC. The correct code comes from the payer contract and manual, not from the level of care.
What is the difference between S9480 and H0015?
In common payer usage, S9480 is associated with psychiatric or mental-health IOP and H0015 with substance-use IOP, and revenue codes 0905 and 0906 follow the same split in many policies. They are not interchangeable across plans. Some payers accept only one of them for a given program type, and the unit definition attached to either code varies - one payer's per diem is another's hourly unit.
Does Medicare cover IOP?
Yes, since January 1, 2024. Section 4124 of the Consolidated Appropriations Act, 2023 created Medicare coverage and payment for intensive outpatient services, and CMS implemented it through CY 2024 rulemaking. Covered settings include hospitals, community mental health centers, FQHCs, RHCs and qualifying opioid treatment programs. Any source stating that Medicare does not cover IOP is describing the period before 2024.
What is condition code 92?
It is the two-character code on an institutional claim that identifies the day as intensive outpatient programming. Under the current Claims Processing Manual, hospital and CAH IOP claims carry condition code 92, as do CMHC, RHC and FQHC IOP claims. It belongs on the UB-04 or 837I claim - there is no equivalent field on a CMS-1500 professional claim.
Is IOP billed on a UB-04 or a CMS-1500?
Usually the program itself is billed institutionally, on a UB-04 or 837I, with the setting-specific type of bill. But "IOP is never CMS-1500" is too broad. Under Medicare, specified professional services - physicians, PAs, NPs and CNSs, and clinical psychologists - can be billed separately from the facility bundle, while clinical social workers, marriage and family therapists, mental health counselors and occupational therapists are bundled for hospital and CAH IOP patients. And some commercial policies, including Blue Cross NC's, permit the IOP per diem on either a facility or a professional claim.
What place of service should I use for IOP?
Whichever POS truthfully represents the rendering setting under that payer's current professional-claim rules. Place-of-service codes apply to professional claims only; institutional claims communicate setting through provider enrollment, type of bill, revenue code and condition code. Be especially careful with POS 52 - it is labeled for partial hospitalization, and it is not a universal IOP place of service.
How many hours make a billable IOP day?
Medicare's threshold is expressed weekly, not daily: the plan must establish a need for at least nine hours of IOP services per week. There is no national daily-hours rule. Under Medicare, what matters for the payment tier is the count of qualifying services furnished and documented that day. Under a bundled commercial contract, the contract's own minimum-day rule applies. Under an hourly Medicaid model, documented time units apply.
Can I bill when a patient attends only part of the day?
Only what was actually furnished and documented, and the consequence depends on the architecture. Under Medicare, a missed component can move the day from the four-or-more tier to the lower tier - or leave genuine uncertainty about whether it clears the current edit. Under a bundled per diem, the payer's minimum-day rule decides between the full per diem, no bill, or something else. There is no general federal half-day unit, and no basis for simply billing half the per diem.
Does IOP require prior authorization?
Frequently, and increasingly. Requirements are payer-, product- and state-specific, and they change on published effective dates - Arizona Complete Health, for example, began requiring prior authorization for S9480 on October 15, 2024. Even where a waiver or gold-card program removes review, advance notification often survives it. Verify in writing for the exact entity, product and code, and capture the next review deadline at admission.
Can a physician or psychologist bill separately from the program?
Under Medicare's hospital and CAH IOP rules, yes for specified practitioners: physicians, physician assistants, nurse practitioners and clinical nurse specialists, and clinical psychologists, where applicable criteria are met. Services of clinical social workers, marriage and family therapists, mental health counselors and occupational therapists are bundled when furnished to hospital or CAH IOP patients. Commercial rules differ - some all-inclusive per diems bundle every professional service, so billing a clinician separately produces a duplicate denial.
What is the difference between IOP and PHP?
Intensity and the relationship to inpatient care. Medicare requires a plan establishing at least nine hours per week for IOP, and at least 20 hours per week for PHP - and PHP additionally requires that the patient would otherwise need inpatient psychiatric care, while IOP explicitly does not. They also carry distinct certification structures, condition codes and payment rules, and many payers treat IOP, PHP and residential treatment as mutually exclusive on the same date.
Can a virtual IOP be billed?
Sometimes, but "use POS 02 or 10 and bill virtual IOP" is not a safe general instruction. Those are professional telehealth place-of-service codes, not a substitute for an institutional IOP claim, and Medicare's benefit is tied to specified provider settings and covered program services. Separate the questions: whether the level of care is covered; whether your organization may deliver it virtually under state law and license; whether the member's product covers that modality; which POS and modifier rules apply to any professional claims; and whether the payer is paying a program per diem, separate professional services or both. Some state Medicaid designs write virtual delivery directly into their unit model - Illinois's hourly community program permitted face-to-face, phone and video delivery - which is exactly why that example cannot be carried across to Medicare. Check the current CMS telehealth and HHS telebehavioral billing guidance for the specific services involved.


