H0015 CPT code: IOP billing that actually pays
H0015 is the SUD intensive outpatient per diem: the 3-hour/3-day rule, modifiers, UB-04 setup, Medicaid rates, and how to stop preventable IOP denials.
In this article
- What is H0015 and what is the 3-hour / 3-day rule?
- When should you use H0015, and when should you not?
- How to bill H0015 for IOP days
- What documentation do you need for H0015?
- How does H0015 compare to S9480, H2035, H2036, and 90853?
- What does H0015 actually pay? (real Medicaid examples)
- Common H0015 denials and how to fix them
- What this post does not cover
- How can AI help work these H0015 claims?
- Common H0015 pitfalls to avoid
- FAQ: H0015 CPT code
You thought the IOP week was solid until half the H0015s came back denied for “no prior authorization” and “non-covered level of care.”
H0015 is the HCPCS Level II per diem code many payers use for substance use intensive outpatient: at least 3 hours per day and at least 3 days per week. It usually maps to ASAM 2.1 and is billed as one unit per qualifying IOP treatment day, on either a UB-04 with revenue code 0906 or a CMS-1500 with an outpatient place of service.
If you miss the hours rule, the level-of-care mapping, or the prior auth, you are not billing IOP. You are setting up preventable denials and recoupments.
What is H0015 and what is the 3-hour / 3-day rule?
In plain language, H0015 is your “IOP day” code for substance use treatment. It pays for an intensive outpatient treatment day, not a single group or a 60-minute session.
Technically, H0015 is defined as: alcohol and/or drug services, intensive outpatient. The program must operate at least 3 hours per day and at least 3 days per week. Covered services can include assessment, counseling, crisis intervention, activity therapies, or education, all tied to an individualized treatment plan.
It is typically used for ASAM Level 2.1. The unit is per diem, so you get one unit per patient per qualifying IOP treatment day.
Medicaid, Medicaid MCOs, and commercial plans that follow state Medicaid often use H0015 for SUD IOP. Many Medicare products do not, and may expect different IOP codes entirely. That mismatch is where “non-covered level of care” denials start.
When should you use H0015, and when should you not?
When H0015 fits your IOP program
You use H0015 when the patient is admitted to a structured SUD IOP program, not when they just attend a couple of groups.
For each billed week, your program schedule and the patient’s actual attendance must hit both:
- At least 3 hours of structured services in a day
- At least 3 treatment days in a week
Services on those days must match the code description. That means a mix of assessment, individual or group counseling, psychoeducation, crisis intervention, or similar interventions, all tied back to an individualized treatment plan.
You only bill one H0015 per patient per day, even when the patient is in-program for 5 or 6 hours. Longer days are still a single per diem unless your payer has a very specific written policy stating otherwise, which is rare.
The payer’s policy must also list H0015 as the SUD IOP per diem code for that level of care. If they do not assign H0015 to ASAM 2.1, your cleanest documentation will not fix a coding mismatch.
When H0015 is the wrong code
Skip H0015 in these situations:
- The program is mental health IOP only and the payer expects S9480 for psychiatric IOP.
- The total documented service time for the day is under 3 treatment hours. That may be intensive group, but it is not IOP under the H0015 definition.
- You are billing SUD treatment by the hour. That is usually H2035.
- You are billing a non-IOP SUD program per diem. H2036 is often the correct fit instead (see the H2036 guide).
You also should not use H0015 as a way to stack extra 90853 or 90837 on top of an IOP per diem to the same payer on the same calendar day. Most payers consider the group and therapy services bundled into H0015.
If you are unsure which “bucket” your program sits in, pull your contracts and your state Medicaid IOP coverage manual. Most payers are very explicit about which code equals which level of care. Guessing on code selection is how you turn everyday billing into a compliance problem.
How to bill H0015 for IOP days
The three big choices are:
- Bill as facility or professional.
- Use span billing or daily lines.
- Apply the modifiers each payer expects.
Get those wrong and you create avoidable denials, even when the clinical work and hours are solid.
Bill H0015 as facility vs professional
The first fork is whether you bill H0015 as a facility or as a professional group.
- Facility or institutional: Submit H0015 on the UB-04 under the facility NPI. For SUD IOP the revenue code is usually 0906, and the type of bill is often 13X for hospital-based programs or 85X for some clinics, depending on licensure and payer rules.
- Professional group: Submit H0015 on the CMS-1500 under a group or individual rendering NPI. There is no revenue code on a CMS-1500, so H0015 goes in the procedure line with an outpatient place of service, often POS 11, 19, 22, or 57.
Which route you use depends on state licensure, contracts, and how you are credentialed with each plan. Some centers run both: a facility claim for the IOP per diem and separate professional claims for physician or NP services.
If you are not sure how a plan credentialed you, check the contract and the first few remits. The payer’s system view decides whether you are facility or professional for that product.
Units and span billing for H0015
H0015 is strictly per diem. You bill one unit per qualifying IOP treatment day. You do not add extra units because the day ran long, unless a payer has a written policy about a distinct “intensified” IOP structure for H0015.
Span billing means one claim line for a continuous date range of IOP service, with units equal to the number of covered days in that span. Example: one line from 01/01 to 01/07 with 5 units if the patient attended 5 qualifying days in that week.
Payer rules on this vary:
- Some Medicaid programs require daily lines, one date of service per line with one unit each.
- Others allow or prefer span billing on UB-04 facility claims, especially for longer episodes.
- Professional CMS-1500 claims are more likely to require daily lines.
When you are not sure, daily lines are usually safer, but you still need to match state Medicaid and each payer’s written billing guidelines.
Required modifiers for H0015
Modifier rules are highly payer specific, but there are consistent patterns.
The HF modifier is often required to indicate a SUD program. Many state Medicaid programs want H0015 HF as the standard SUD IOP per diem.
States also use U-modifiers such as U1, U2, or U3. These are state-defined and often map to a Medicaid level of care or specific program attributes. You should never assume a U-modifier means an age group or an intensity level without checking your state’s definition.
On CMS-1500 claims, you also need a place-of-service code that matches an outpatient clinic or community setting under that payer’s rules.
You should not guess on modifiers. Pull your state Medicaid IOP billing manual, payer provider manuals and SUD policy bulletins, and your executed contracts, which often say things like “IOP billed as H0015 HF.”
H0015 modifier reference
| Modifier | Description | Common use in behavioral health |
|---|---|---|
| HF | Substance abuse program. | Flags the service as SUD treatment, often required for H0015 in Medicaid and MCO SUD IOP. |
| U1 / U2 / U3 | State-defined program or level-of-care indicator. | Distinguishes ASAM level, program type, or other state-specific attributes. Definitions vary by state. |
| 95 | Synchronous telehealth, audio-video. | Used by many plans when H0015 is provided via live video telehealth, if IOP by telehealth is covered. |
| 93 | Synchronous telehealth, audio-only. | Used when a payer covers audio-only telehealth for IOP days and wants explicit flagging. |
| GT | Legacy telehealth indicator. | Retired by Medicare in 2018 except limited Critical Access Hospital Method II use and some commercial policies. Use only if the payer manual still requires it. |
Use the modifier mix each payer specifies. The wrong combination can convert a clean IOP claim into an avoidable denial.
Example UB-04 claim line for H0015 (facility IOP day)
This is an example only. Your setup and requirements may differ, and you must follow your payer’s specific instructions.
- TOB (Type of Bill): 13X
- FL 42 Revenue Code: 0906
- FL 44 HCPCS/Rates: H0015 HF
- FL 45 Service Date: 01/10/2026
- FL 46 Units: 1
- FL 47 Total Charges: [Your contracted IOP per diem charge]
- FL 67 Principal Diagnosis: F10.20 (Alcohol use disorder, moderate, dependence) or your true primary SUD diagnosis
For span billing on the UB-04, FL 45 would carry From and Through dates for the span and FL 46 would show total units in that span, assuming the payer allows span billing for IOP.
Get the bill type, revenue code, and modifiers right first. If those are wrong, the payer will not look at your excellent documentation.
What documentation do you need for H0015?
You need to prove two things:
- You operate a real SUD IOP that meets the code’s structure.
- Each billed day met the criteria and was medically necessary.
Auditors and payers will pull from both levels when they review H0015.
Program-level proof
Program-level documentation shows that your “IOP” is more than a couple of groups and a hallway sign.
- Weekly IOP schedule: You should have a written program schedule that clearly shows at least 3 hours per day and at least 3 treatment days per week. That schedule must specify what counts as treatment hours, such as which groups, individual sessions, psychoeducation blocks, or other services make up the IOP day.
- Program description and ASAM criteria: You also need a written program description or policy that labels the program as ASAM 2.1 or the equivalent level of care. It should spell out admission, continuing stay, and discharge criteria, as well as your staffing pattern, supervision structure, and coverage for all scheduled IOP hours.
- Licensure and certification alignment: Licensure and certification must match what you are billing. That usually means a state SUD program license that explicitly includes IOP or an equivalent designation, plus any state or payer-specific certifications required for billing IOP.
- Where program proof lives and why it matters: Program-level proof usually lives in policy and procedure manuals, licensing files, program descriptions, and HR or credentialing records. In a large recoupment audit, this is often the first place an auditor looks for weak spots.
Date-of-service proof
For every H0015 date you bill, the chart must show that the day was ordered, delivered, and medically necessary as SUD IOP.
- Individualized treatment plan: You need an individualized treatment plan tied to SUD diagnoses, with measurable goals and objectives that match your IOP service mix. That plan must be active, updated, and reviewed regularly, especially around concurrent review dates for the payer.
- Attendance and duration records: Attendance and duration records are critical. Whether you use paper sign-in sheets or an electronic roster, you need start and end times for each group or service, and a clear tally that shows at least 3 treatment hours for that patient that day. Late arrivals and early departures must be documented, so you can see if the 3-hour requirement was truly met.
- Clinical notes for the day: Clinical notes for that date, including group, individual, and family notes where relevant, must line up with the treatment plan and focus on SUD treatment. They should show actual intervention and progress, not just “patient attended.” Crisis intervention that is part of the IOP day should also be documented.
- Medical-necessity narrative: Medical necessity must be obvious. That starts with an admission note or assessment that placed the patient at ASAM 2.1. It continues with progress notes that explain why IOP remains appropriate, versus stepping down to outpatient or stepping up to PHP or residential. When the level of care changes, the documentation needs to show the clinical rationale.
- Where daily proof lives: Most of this will sit in EHR progress notes, group documentation, attendance systems, and treatment planning modules or scanned plans.
H0015 documentation checklist
| Requirement | What the note must document |
|---|---|
| Program schedule and design | Standard weekly schedule showing at least 3 hours per day and at least 3 days per week, with a clear list of which services count toward IOP hours. |
| Program description and ASAM level | Written description labeling the program as ASAM 2.1 (or equivalent), with detailed admission, continuing stay, and discharge criteria. |
| Licensure and certification | Active state SUD program license that includes IOP, plus any payer or state certifications that permit billing H0015. |
| Staffing and supervision | Roles, disciplines, supervision model, and coverage for all scheduled IOP hours documented in policies or program materials. |
| Treatment plan | Individualized plan tied to SUD diagnoses, with goals, objectives, and services that match the IOP schedule. Regularly reviewed and updated. |
| Attendance and duration | Daily roster or sign-in sheets with start and end times for each service, showing at least 3 treatment hours for each billed H0015 day. |
| Clinical notes for the day | Group, individual, and family notes that reflect actual interventions, patient response, and linkage to treatment goals for that IOP day. |
| Medical necessity and level of care | Assessments and progress notes that support ASAM 2.1 at admission and continued need for IOP, plus rationale for any step-up or step-down. |
| Authorization and concurrent review | Auth numbers, approved dates and units, concurrent review submissions, and payer determinations stored with the chart or UM records. |
Documentation pitfalls to watch
Common H0015 audit failures repeat across programs:
- Group notes that are copy-paste with no individualization over weeks.
- “IOP” days with only 2 documented hours because one group was canceled or cut short.
- No clear evidence of 3 treatment days in a week, especially around holidays.
- Treatment plans that only address depression and anxiety while you bill a SUD IOP per diem.
- Missing or unsigned progress notes for one or more billed days in a span.
If your clinical team believes “we document plenty,” pull a random sample of paid H0015 days and review them like an auditor. Most centers find gaps they did not know existed.
If you cannot prove the hours and medical necessity, the payer will treat those H0015 payments as money to recoup.
How does H0015 compare to S9480, H2035, H2036, and 90853?
Here is the practical comparison most billers care about, from a coding and benefit-structure angle.
H0015 - Alcohol and/or drug services, intensive outpatient
H0015 is the SUD intensive outpatient per diem, typically mapped to ASAM 2.1. It requires at least 3 hours per day and at least 3 days per week and is billed per diem.
S9480 - Intensive outpatient psychiatric services, per diem
S9480 is the psychiatric IOP per diem for mental health or mixed IOP. Many commercial plans use S9480 as their default IOP code and may not cover H0015 at all for that product. See the S9480 guide for deeper details.
H2035 - Alcohol and/or drug treatment program, per hour
H2035 is the hourly SUD treatment code. It is used for structured SUD services when there is no IOP per diem benefit or for non-IOP treatment that is billed by the hour.
H2036 - Alcohol and/or drug treatment program, per diem
H2036 is a SUD program per diem that is not formal IOP, for example a lower-intensity day program. It is often used when the program is not operating at the 3-hours-per-day, 3-days-per-week level. See the H2036 post for detail.
90853 - Group psychotherapy
90853 is group psychotherapy, typically billed per session. For SUD IOP, most payers treat group services as bundled inside H0015 and will not pay 90853 separately unless their policy explicitly allows it.
Code comparison table
| Code | What it represents | Unit | Typical use |
|---|---|---|---|
| H0015 | SUD intensive outpatient program, at least 3 hours per day, at least 3 days per week, ASAM 2.1 | Per diem (1 per day) | Core SUD IOP billing for Medicaid and many MCOs |
| S9480 | Psychiatric IOP per diem (mental health) | Per diem | Mental health or mixed IOP, often commercial equivalent of IOP, not interchangeable by default with H0015. See S9480 guide. |
| H2035 | Alcohol and/or drug treatment, per hour | Per hour | Hourly SUD services when no IOP per-diem benefit or for non-IOP structured treatment. |
| H2036 | Alcohol and/or drug treatment program, per diem | Per diem | SUD program per diem that is not formal IOP (for example, lower-intensity day program). See H2036 post. |
| 90853 | Group psychotherapy | Per session | Typically bundled into IOP per diem. Billed separately only when payer policy explicitly allows. |
The key point: payers decide which code maps to which level of care and benefit category. You cannot just swap H0015 and S9480 or H2036 because one “looks more payable.”
Pick the code based on level of care and contract language. Guessing based on rate is how you land in upcoding territory.
For a broader overview of IOP options, use the IOP billing codes hub.
What does H0015 actually pay? (real Medicaid examples)
There is no single national H0015 rate. What you see below are real, published state Medicaid and Medicaid managed-care figures, with sources.
Use them as reference points, not as your number. Commercial and carve-out rates are set by contract and are not public, so confirm yours against your fee schedules and paid remits.
| Payer type | Claim type | Code used | Rate range per day | Notes |
|---|---|---|---|---|
| State Medicaid FFS | UB-04 or 1500 | H0015 (ASAM 2.1) | ~$158 (AZ) to ~$270 (NM) | Real published Medicaid figures: Arizona AHCCCS ~$157.86/unit [1]; New Mexico Medicaid $269.80/day [2]. Montana FFS pays H0015 per week ($386.57), not per diem [3], so never assume a daily basis. Some states (e.g. Colorado) do not list H0015 in FFS at all and route IOP through their MCOs. |
| Medicaid MCO | UB-04 or 1500 | H0015 (ASAM 2.1) | $219.43 (verified example) | UnitedHealthcare Community Plan of Colorado pays $219.43/day for H0015, and the same $219.43 for the psychiatric-IOP equivalent S9480 [4]. MCO rates often track state FFS but can differ. Check your MCO's loaded rate against paid remits. |
| Commercial PPO / HMO / EPO | UB-04 or 1500 | H0015 or S9480 | Not public, set by contract | Commercial IOP rates vary widely by plan, network, and behavioral-health carve-out vendor, and some plans want S9480 (psychiatric IOP) rather than H0015 (SUD IOP). Pull your executed contract and 3 to 6 months of paid remits to establish your real allowed amount. Do not rely on any published "average." |
Rates change and are modifier-sensitive (HF for a substance-abuse program, plus state U-modifiers for ASAM level), so the same code can pay several different amounts inside one payer. Verify against your state's current fee schedule and your contracts before you rely on any figure.
Sources:
[1] Arizona AHCCCS H0015 rate-setting: https://www.azahcccs.gov/shared/News/GeneralNews/SetsRatesforOTS.html
[2] New Mexico HCA, Supplement 24-05 (Turquoise Care behavioral-health rates): https://www.hca.nm.gov/wp-content/uploads/Supplement-24-05.pdf
[3] Montana DPHHS SUD Medicaid Fee Schedule, eff. 07/01/2024: https://prod-medicaidprovider.mt.gov/docs/feeschedules/2024/July2024SUDMedicaidFeeSchedule.pdf
[4] UnitedHealthcare Community Plan of Colorado, Behavioral Health value-based fee schedule (Jul 1 2024 to Dec 2025): https://www.uhcprovider.com/content/dam/provider/docs/public/commplan/co/behavior-health/CO-Value-based-fee-schedule.pdf
If you are negotiating or re-negotiating IOP rates, walk in with current state fee schedules and your own paid remits. Do not negotiate off stale or generic “benchmark” numbers.
Common H0015 denials and how to fix them
Across multi-site SUD programs, H0015 denials cluster around the same issues. Most are fixable upstream with tighter intake, auth, and billing rules.
H0015 denial patterns
| Denial / remark | Likely root cause | How to fix it (and prevent repeat) |
|---|---|---|
| No authorization / not authorized for this level of care | Front desk or intake did not verify that IOP is covered, or pre-auth obtained for the wrong level of care or wrong code (for example, S9480 instead of H0015). Concurrent review deadlines missed. | Upstream: Make VoB and prior-auth a hard gate before scheduling IOP. Use a checklist that includes level of care, specific code (H0015), covered days per week, and auth start/end dates. Set ticklers for concurrent review dates. Tactical: Correct the auth where possible, resubmit with correct auth number and dates, or appeal with records if services were emergent or auth was misrouted. Document payer rep names and reference numbers. |
| Non-covered service / not a covered benefit | Payer plan does not cover SUD IOP at all, or requires an alternate code like S9480 or H2036. Medicare Advantage or commercial plan uses different per-diem structure. | Upstream: During VoB, confirm if IOP is covered and which code the payer expects for SUD versus psychiatric IOP. Update your payer-specific fee schedule and cheat sheets accordingly. Tactical: If the correct code is different, rebill with the allowed code if documentation supports it and policy permits. If not covered at all, flag for self-pay policy and patient financial counseling. |
| Incorrect revenue code | UB-04 billed with generic 0900 or a different revenue code than payer requires for IOP chemical dependency. | Upstream: Standardize claim templates by payer, with 0906 for SUD IOP where required. Train staff not to override default rev codes. Tactical: Correct to 0906 (or payer-specified rev code) and resubmit. |
| Units / frequency exceeded | Billed more days than authorized, or more days per week than payer guideline permits. Sometimes weekly cap in system conflicts with patient attendance. | Upstream: During auth, capture approved units and frequency (for example, 3 days per week for 4 weeks). Configure your billing system to flag attempts to bill above those limits. Tactical: Check EOB, auth, and attendance. Adjust claim down to approved units or request additional units via concurrent review or appeal if medically justified. |
| Medical necessity not met | Clinical documentation does not demonstrate ASAM 2.1 criteria, or payers believe patient should have been at OP or PHP instead. | Upstream: Train clinicians on documenting level of care criteria and continuing IOP need. Add level-of-care prompts in assessments and progress notes. Tactical: Appeal with full clinical packet: assessments, treatment plan, notes, and any urine toxicology or collateral data supporting need. Consider peer-to-peer review. |
| Duplicate service / overlapping IOP levels | Multiple IOP programs billed same days, or another facility billed H0015 or S9480 for same patient/date. Also seen when billing separate group codes along with H0015. | Upstream: Use eligibility checks and internal scheduling rules to prevent double-booking patients across overlapping levels of care. Enforce “no separate group codes with IOP per diem” unless payer allows. Tactical: Identify which service should be primary, retract or adjust duplicates, coordinate with the other provider if needed. |
| Invalid modifier or missing required modifier | Payer requires HF or state-specific U-modifier and claim did not include it or included conflicting modifiers. | Upstream: Maintain a payer-modifier matrix for IOP and keep it updated. Configure billing system rules by payer and plan. Tactical: Correct modifiers, rebill, and track whether payer needs a corrected claim versus a fresh submission. |
If you want more detail on denial language and codes themselves, use the denial glossary for common adjustment codes in plain language.
Denials on H0015 are rarely random. Fix the pattern once and you protect hundreds of units going forward.
What this post does not cover
To keep this focused on H0015, this post does not dig into:
- Psychiatric IOP per diem specifics for S9480. Those are covered in the S9480 CPT code guide.
- Non-IOP SUD per diems such as H2036. Those are covered in the H2036 CPT code post.
- Full IOP coding strategy across all levels and designs. That lives in the IOP billing codes hub.
If you are redesigning your continuum or code set, read those along with this H0015 guide before you rebuild charge masters.
How can AI help work these H0015 claims?
In a large multi-site SUD program, H0015 is usually hundreds or thousands of units a month. That volume, plus complex auth rules, modifiers, and documentation needs, is exactly where AI agents are already paying for themselves.
Eliminating repetitive grunt work
Centers using platforms like Supa’s Supabill have AI agents that log in to payer portals to handle benefits verification and prior auth for IOP.
Those agents can:
- Pull eligibility and confirm SUD and IOP coverage.
- Check whether H0015 is covered or if the plan expects S9480 or H2036 instead.
- Complete online auth forms, upload basic clinicals, and return a structured summary with auth number, dates, units, and approved level of care.
On the billing side, agents can auto-build UB-04 or CMS-1500 claims for H0015 using your program templates and attendance. Before a claim goes out, they run rules checks against auth dates and remaining units, weekly maximums, required modifiers by payer, and conflicts with other IOP or group codes on the same day.
In Supabill, those agents can also push structured auth and eligibility data straight into your practice management or billing system, so your team is not re-keying approvals from PDFs and portal screenshots.
Over time, AI can read remits in bulk and spot when a payer starts denying H0015 for a new reason, such as “IOP no longer covered under this plan.” It can group denials by root cause and dollar impact so you know whether to tweak a script or escalate a policy issue.
Taking over payer calls and status checks
Payer phone calls are another place AI can take workload off your team.
AI voice agents, including Supa’s payer-call bots, can:
- Call payer lines and sit on hold.
- Talk with reps about specific H0015 auths and denials.
- Ask why a claim was denied, confirm which code the plan expects for that level of care, and request reopening when allowed.
After the call, the agent writes a clear summary into your system, including reference numbers, the rep’s name, and next steps. Your human billers do not lose an hour of their day listening to hold music just to learn that an auth digit was wrong.
Preventing manual errors before they reach payers
AI agents can also compare attendance data to billed H0015 units before claims go out and flag days where:
- Documented treatment time is under 3 hours.
- A critical group or individual note is missing for a billed day.
Tools like Supabill’s pre-submission claim scrubbing can tie those checks directly to payer-specific rules for H0015, so you catch modifier gaps, span-billing mistakes, and frequency issues before the claim ever leaves your system.
That lets you fix problems now instead of in a recoupment audit months later. As the agents see more of your data, they learn your normal patterns and focus on true outliers.
On the clinical side, AI can draft first-pass treatment plans from intake assessments and ASAM criteria for clinicians to review, edit, and sign. It can also suggest language for continued-stay reviews that speaks directly to the payer’s IOP level-of-care criteria.
The pattern is simple. Use AI agents for repetitive work, tedious payer interactions, and error-prone reconciliations. Keep your human team focused on judgment calls, payer strategy, and actual clinical care.
Common H0015 pitfalls to avoid
Quick do-not list:
- Do not bill H0015 if the day has less than 3 documented treatment hours, even if it was scheduled as IOP.
- Do not mix S9480 and H0015 for the same IOP program without clear payer direction and separate program definitions.
- Do not assume the code guarantees coverage. Coverage and weekly limits come from the plan and the auth, not the code text.
- Do not span bill when the payer manual explicitly wants daily lines.
- Do not bill separate 90853 groups to the same payer on the same day as H0015 unless there is a written policy that allows it.
- Do not ignore missing or ambiguous modifiers. For some Medicaid plans, the U-modifier is the difference between paid and denied.
- Do not let auths silently expire. IOP concurrent review is more frequent than most teams expect.
Every item on that list shows up in audit reports. None of them are hard to fix once you decide to.
FAQ: H0015 CPT code
Is H0015 a CPT code or a HCPCS code?
H0015 is a HCPCS Level II code, not a CPT code, even though many payers and manuals casually call all procedure codes “CPT.” When you see “H0015 CPT code” in payer material, they still mean this same HCPCS code.
How many days per week can I bill H0015?
The code text does not cap you at 3 days per week. It sets a minimum structure: at least 3 hours per day and at least 3 days per week.
You can bill 6 or 7 days in a week if your program truly runs those days, the patient attends qualifying days with at least 3 treatment hours each, and the prior authorization and payer policy allow that frequency. Any weekly “cap” usually comes from auth or plan limits, not from H0015 itself.
Can I bill H0015 for a day with only 2 groups?
It depends on the length and content of those groups. The requirement is at least 3 hours of qualifying services, not a fixed number of groups.
If two groups together total 3 or more hours of structured SUD treatment, your program design treats that as a full IOP day, and the notes support medical necessity, then H0015 can be appropriate. If total treatment time for that patient is under 3 hours, you should not bill the per diem and may need to use hourly codes instead, subject to payer rules.
Can I bill multiple units of H0015 on the same day if the patient is there all day?
No. H0015 is a per diem per patient per day. You bill one unit for that date whether the patient is there for 3 hours or 6 hours.
The only exception would be a very specific written payer policy that allows something different for this code. Those policies are rare and must be documented, not assumed.
Can I bill H0015 and 90853 on the same day?
Usually not, at least not to the same payer for the same program. Most payers treat group psychotherapy as included in the IOP per diem and will deny 90853 as duplicate or inclusive when billed with H0015.
There are limited exceptions where a plan allows separate professional 90853 claims while the facility bills H0015 from a different benefit bucket. That will be spelled out clearly in their policies or contracts. Always check payer rules before you try to stack these codes.
Is H0015 considered ASAM Level 2.1?
H0015 is commonly mapped to ASAM Level 2.1 intensive outpatient for SUD, but that mapping is not hard-coded to the HCPCS description. It lives in each payer’s and each state’s fee schedule and level-of-care crosswalk.
Some commercial payers use S9480 for IOP instead. Match your clinical documentation to the level-of-care criteria the payer actually uses and confirm how they map H0015 for each product.
Can I use span billing for H0015?
Sometimes. Span billing, where you use one line with a from-through date range and total units for that span, is allowed or even preferred by some Medicaid programs on UB-04 facility claims.
Before you use span billing, you must confirm that the payer’s institutional billing guide allows span billing for IOP or H-codes. All days in the span must share the same code, rate, auth, and level of care, and you still need clean attendance and documentation for each individual day. Professional CMS-1500 claims are less likely to allow span billing and often require one line per date.
How do I know whether to use H0015 or S9480?
You decide between H0015 and S9480 based on three things: program type, payer policy, and contract language.
For a clear SUD IOP program, many Medicaid plans map that to H0015. Psychiatric or mixed IOP is often mapped to S9480. Some payers use both in different contexts, which is why you must read their policies. Many contracts explicitly state “IOP SUD per diem equals H0015” or similar wording.
You should not switch codes after the fact because one code paid better. If a payer wants S9480 and your program is primarily SUD, clarify expectations with the payer and consider how you define and separate your programs. There is more detail on S9480 in the S9480 CPT code post.
Can I bill H0015 via telehealth?
Some states and payers do allow IOP by telehealth and will pay H0015 when you use the appropriate telehealth modifiers and place-of-service codes. Others do not cover IOP by telehealth at all, or only cover certain components, such as groups, without paying the IOP per diem.
To stay compliant, you must check state Medicaid telehealth guidance for SUD IOP, each payer’s telehealth policies, and any COVID-era waivers that may have changed or expired. You also need to follow modifier rules. Modifier 95 is the current standard for synchronous audio-video telehealth, while audio-only uses modifier 93. You should not default to GT, which Medicare retired in 2018 and which now survives only in limited Critical Access Hospital Method II situations and some commercial use.
Can I bill H0015 when a patient steps down from residential in the same week?
Yes, as long as the residential and IOP per diems do not overlap and each level of care is documented and authorized correctly.
The residential per diem, for example H0010, H0011, H0012, or H0013 depending on your setup, should end on one calendar date, with a clear discharge date and time. H0015 should start on the next calendar date or later, with its own prior auth if required. You should not bill two per diems for the same date to the same payer unless a payer’s written transition policy explicitly allows a partial-day overlap.
What diagnosis codes should I use with H0015?
Your primary diagnosis for H0015 should usually be a SUD diagnosis in the F10–F19 range. That primary SUD diagnosis should match the reason the patient was admitted to IOP, the focus of the treatment plan, and the clinical documentation.
Co-occurring mental health diagnoses can be listed as secondary. Avoid using a purely psychiatric primary diagnosis while billing a SUD IOP code unless the payer explicitly structures it that way in their policies.
Can I bill H0015 if the patient no-shows one of the groups that day?
You should only bill H0015 when the minimum 3 hours of treatment actually occur and the patient attends enough of that time for the day to count as a full IOP day under your program design.
If a no-show or early departure means the patient received less than 3 hours of treatment that day, you should not bill H0015. Apply your internal no-show or cancellation policy instead, and document why that date did not qualify as a full IOP day.
Do I need a physician face-to-face visit on every H0015 day?
Usually you do not need a physician face-to-face visit on every IOP day. Most payer policies require an initial medical or psychiatric evaluation at admission or shortly after, plus periodic follow-ups at set intervals or when clinically indicated.
The daily H0015 per diem is typically met by licensed behavioral health staff delivering the structured program as outlined in your policies. You still need to check each payer’s rules for minimum physician or NP involvement in IOP.
How should I handle holidays that disrupt the 3-day minimum?
H0015 expects IOP to run at least 3 days per week, but holidays, weather, and other disruptions happen.
Some programs schedule make-up days or add extra days in nearby weeks to keep the overall IOP pattern intact. Some payers are flexible if the program clearly operates as an IOP and exceptions are occasional. For audit purposes, your overall program design and actual delivery should still look like a solid IOP structure, even if one holiday week only has 2 days.
Document schedule changes and your clinical reasoning. When you are unsure, check payer policy or talk with your provider rep.
Why is my commercial payer denying H0015 but paying S9480?
Many commercial payers treat S9480 as their main IOP per diem code, covering psychiatric or mixed IOP under that code. They may use H0015 only for certain Medicaid products or not at all.
If you see a pattern where H0015 is denied as non-covered but S9480 is covered for the same level of care, confirm which code they assign to IOP for that product using policy documents or your rep. Once you know that, update your charge master and program mapping for that payer.
Avoid “code shopping” on a single claim after a denial. Instead, set up the correct code for that payer up front based on verified policy.
If you want to see how an AI-driven billing stack would handle H0015 for your programs, you can book a live Supa demo here:
https://calendly.com/heysupa/demo
RCM expert at Supa. 20+ years building revenue cycle operations in healthcare; Adjunct Professor at Concordia University-St. Paul teaching healthcare MBA.
Keep reading
All articlesRun this on your own practice.
Watch ambient agents handle your front desk, documentation, and billing — inside the tools you already use.



