Important: MedSole RCM's only official domain is medsolercm.com. Please verify any email or call from any other domain by contacting us directly.
Sleep Apnea ICD-10 Codes 2026: Provider Billing Guide

Sleep apnea ICD-10 codes: 2026 billing and documentation guide

Category: Medical Coding

Posted By: Andrew Christian

Posted Date: Jul 31, 2026

What is the ICD-10 code for sleep apnea?

Sleep apnea ICD 10 coding starts in category G47.3, and that's where a lot of claims go sideways. G47.3 groups the whole sleep apnea family together. It doesn't work as a billable code on a claim.

Your claim needs the child code that matches what the provider wrote. Most OSA ICD 10 lookups land on G47.33, which covers obstructive sleep apnea. G47.30 applies when nobody documented the type. G47.31 covers primary central sleep apnea.

The ICD-10-CM category for sleep apnea is G47.3, and G47.3 is not the final billable code. Documented obstructive sleep apnea is coded G47.33. Sleep apnea without a documented type is coded G47.30. Primary central sleep apnea is coded G47.31. The correct code follows the diagnosis the provider documented.

The diagnosis code follows the provider's documented diagnosis. A sleep study supports the diagnosis and often drives treatment coverage, but an AHI value doesn't assign the ICD-10-CM code on its own.

Coverage runs on a separate track. Payer criteria, prior authorization, supplier rules, and equipment documentation decide whether Medicare or a commercial plan pays for the test or the device. Practices that blur those two things lose money every month and blame the coder.

The sections below show how to pick the documented sleep apnea ICD 10 code first, then connect it to testing, treatment, and payer requirements.

Sleep apnea ICD 10 codes at a glance

The complete G47.3 code table

Ten codes sit under G47.3. Nine of them go on claims. The table below pairs each one with the documentation signal that points to it.

Code

Official description

Billable

Documentation cue

G47.3

Sleep apnea

No

Parent category only; move to a child code

G47.30

Sleep apnea, unspecified

Yes

Sleep apnea documented, no type stated

G47.31

Primary central sleep apnea

Yes

Central sleep apnea, no underlying disease named

G47.32

High altitude periodic breathing

Yes

Altitude exposure documented

G47.33

Obstructive sleep apnea (adult) (pediatric)

Yes

OSA documented, any age, any severity

G47.34

Idiopathic sleep related nonobstructive alveolar hypoventilation

Yes

Hypoventilation without obstruction or known cause

G47.35

Congenital central alveolar hypoventilation syndrome

Yes

Congenital syndrome documented

G47.36

Sleep related hypoventilation in conditions classified elsewhere

Yes

Underlying condition documented and sequenced first

G47.37

Central sleep apnea in conditions classified elsewhere

Yes

Central apnea tied to a named underlying disease

G47.39

Other sleep apnea

Yes

Provider names a type outside the codes above

Four codes carry most of the commercial volume. G47.33 reports documented obstructive sleep apnea. G47.30 reports sleep apnea with no documented type. G47.31 reports primary central sleep apnea. G47.39 reports other sleep apnea. The rest of the family still applies when documentation supports it.

How to use the table

Treat this as a starting point, not a substitute for the tabular list. The provider's final diagnostic wording controls which category you land in, and the tabular carries instructions the table above can't reproduce.

Confirm every descriptor and instructional note in the CDC ICD-10-CM browser before you build a code dictionary from any published list, including this one.

Severity belongs in the record even when it doesn't change the code. Mild, moderate, and severe OSA all report the same way, and coverage reviewers still read the number.

Why G47.3 isn't the final code submitted on a claim

G47.3 is the parent category

Every sleep apnea ICD 10 assignment starts here and shouldn't end here. G47.3 organizes the family and stops there. Coders have to move to the level of specificity the record supports, and the final code should describe the condition the provider documented.

G47.3 on its own tells the payer nothing about whether the apnea is obstructive, central, something else, or unstated. That's four different clinical pictures and four different treatment pathways behind one category.

Unspecified isn't wrong by default, either. G47.30 stays appropriate when the provider documented sleep apnea without naming a type. The problem starts when G47.30 sits in the chart after a study already answered the question.

Which 2026 release applies right now

Current as of July 30, 2026. The FY2026 April 1 ICD-10-CM release applies to healthcare services provided from April 1, 2026 through September 30, 2026. G47.3 remains the parent category for sleep apnea, so the claim should carry the specific child code the provider's documentation supports.

The April 1, 2026 release added no new diagnosis codes. It did revise index entries, tabular entries, and instructional notes, which is enough to change how a coding process behaves even when the code numbers hold steady.

CDC has already published the FY2027 files, effective October 1, 2026. Put that date on your calendar now and confirm your EHR diagnosis dictionary, your encoder, and your claim-scrubber content against the CDC FY2026 ICD-10-CM files and the release that follows it.

Check the tabular notes before you submit

G47.3 carries a Code also note for any associated underlying condition. It also carries Excludes1 notes for apnea NOS (R06.81), Cheyne-Stokes breathing (R06.3), pickwickian syndrome (E66.2), and sleep apnea of newborn (P28.3-).

Excludes1 means the two codes never appear together on the same claim for the same condition. The pickwickian entry catches practices off guard, because obesity hypoventilation and OSA sit close together in a sleep clinic's patient mix.

G47.30 versus G47.33: how the documented diagnosis changes the code

Use G47.30 when the type isn't documented

This is the sleep apnea ICD 10 decision that moves the most money. G47.30 reports sleep apnea, unspecified, and it fits when the provider documented sleep apnea and stopped there, without naming obstructive, central, or another type.

Don't infer OSA from a CPAP order, a body mass index, a snoring complaint, or a problem-list abbreviation somebody typed three years ago. Those are clues about the patient. None of them is a documented diagnosis.

When the specificity is clinically obvious but missing from the note, that's a query rather than a coding decision. A query costs a day of turnaround, and a recoupment two years later costs the practice far more.

Use G47.33 when the provider documents OSA

G47.33 reports obstructive sleep apnea in adult and pediatric patients. Assign it when the provider documents OSA or obstructive sleep apnea in a way your organization's coding process accepts as the diagnosis.

A sleep report showing obstructive events isn't the same thing as a diagnostic statement, and different organizations draw that line in different places. Know where your compliance team draws it before the claim goes out.

G47.30 isn't an automatic placeholder

A lot of published guidance calls G47.30 a temporary code to use while testing is pending. That guidance oversimplifies the rule and creates rework.

Before a diagnosis exists, the encounter may only support signs and symptoms. Outpatient coding rules don't allow a suspected condition to be coded as confirmed, so the choice sits between documented symptoms and a documented diagnosis.

Documentation examples

What the record says

Coding direction

Why

Sleep apnea, type not stated

G47.30 may apply

No subtype documented anywhere

Obstructive sleep apnea

G47.33

OSA is documented

Snoring and daytime sleepiness only

Symptom coding may apply

No sleep apnea diagnosis established

Study suggests OSA, provider note unclear

Review or query

Don't code past the documentation

Prior OSA, current status unclear

Review active versus historical

Assuming active disease invites an audit

This plays out in real charts every week. The sleep report says moderate OSA. The referring provider's active assessment still says sleep apnea, unspecified. Nobody's wrong yet, and nobody's reconciled it either.

The claim team shouldn't upgrade the diagnosis to match the report. Somebody has to reconcile the record before that diagnosis flows into treatment authorization and DME billing, because the mismatch follows the patient into every downstream claim.

Consistent sleep apnea ICD 10 review is one piece of the outsourced medical billing services that keep documentation, coding, and claim preparation lined up before submission.

When the sleep report and the provider note support different levels of specificity, fixing the claim won't fix the workflow. MedSole can review where the diagnosis loses detail before the claim gets built.

What G47.33 covers for adult and pediatric OSA

G47.33 applies to documented OSA

Every OSA ICD 10 search ends at the same place. G47.33 is the specific ICD-10-CM code for obstructive sleep apnea, and the descriptor covers adult and pediatric patients under one entry. The code describes the patient's condition, never the machine sitting on the nightstand.

Newborn sleep apnea sits outside this family. The tabular excludes sleep apnea of newborn (P28.3-) from G47.3, so a neonatal chart follows a different pathway even when the words look similar.

One code covers adults and children

A seven-year-old with adenotonsillar OSA and a 62-year-old with severe obstructive sleep apnea both report G47.33. That's where the similarity stops.

Clinical evaluation, testing pathway, and coverage criteria all diverge by age. Medicare PAP rules were written for adults, and applying them to a pediatric case produces a denial and an awkward conversation with the family.

Severity doesn't create a separate OSA code

Mild, moderate, and severe obstructive sleep apnea all report G47.33 when OSA is documented. ICD-10-CM does not provide separate severity subcodes under G47.33. The provider should still document severity and the supporting sleep-study findings, because those details affect treatment decisions and payer coverage.

Severity still belongs in the chart, even though the sleep apnea ICD 10 code stays the same. AHI and RDI values shape the treatment plan, and several coverage policies read those numbers directly. The oral appliance pathway and the implant pathway both key off specific thresholds.

Skip the search for a severity modifier on the diagnosis. ICD-10-CM doesn't offer one. What most reviewers want is the number sitting in the interpreted report.

Active OSA versus history of OSA

Watch the phrase history of OSA in a problem list. Providers write it when they mean treated OSA, resolved OSA, and sometimes active OSA on therapy, and those carry different coding consequences.

Review whether the condition is active, resolved, treated, or historical before the diagnosis flows onto a DME claim. Don't add a status code the documentation doesn't support. CPAP dependence coding comes up in the equipment section.

Central, secondary, and other sleep apnea codes

Non-obstructive sleep apnea is where published sleep apnea ICD 10 guidance gets sloppy, and where two codes get mixed up more than any other pair in the family.

G47.31 for primary central sleep apnea

G47.31 reports primary central sleep apnea, which involves central respiratory control instead of an obstructed upper airway. Primary means no underlying disease is driving it.

Central events appearing in a report don't authorize G47.31 by themselves. The provider still has to document the diagnosis, same as with any other code in this family.

G47.37 for central sleep apnea in conditions classified elsewhere

G47.37 reports central sleep apnea in conditions classified elsewhere. It's a manifestation code, which means an underlying condition exists and the tabular sequencing instructions decide the order on the claim.

G47.31 identifies primary central sleep apnea. G47.37 identifies central sleep apnea in conditions classified elsewhere and may require the underlying condition to be sequenced first. G47.37 should not be described as the general code for complex sleep apnea.

Several sources circulating online label G47.37 as the complex sleep apnea code. Following that advice puts a manifestation code on a claim with no underlying condition behind it, and the edit fires before a human ever reads the chart.

G47.39 for other sleep apnea

G47.39 reports other sleep apnea. Coders reach for it when the chart says mixed, complex, or treatment-emergent, and that reflex needs a check against the provider's final diagnostic wording and the tabular guidance.

Term in the chart

Code direction

Limitation

Primary central sleep apnea

G47.31

No underlying disease may be documented

Central apnea with a named underlying disease

G47.37 plus the underlying condition

Sequencing follows the tabular instructions

Mixed, complex, or treatment-emergent

Review before assigning G47.39

Interpret the provider's final diagnosis, don't map the adjective

The less common G47.3 codes

Four codes round out the family. A general sleep practice sees them once in a while, and a pulmonary or neuromuscular program sees them every week.

Code

What has to be clear in the documentation

G47.32

Altitude exposure is documented as the driver of periodic breathing

G47.34

Hypoventilation is sleep related, nonobstructive, and idiopathic

G47.35

The congenital central alveolar hypoventilation syndrome is named

G47.36

The underlying condition is documented and sequenced first

Most central sleep apnea coding errors trace back to one habit, which is reading the events on the report instead of the diagnosis in the assessment. Teams that break the habit stop guessing in this part of the family.

Symptoms are not the same as a confirmed sleep apnea diagnosis

Snoring alone doesn't establish OSA

R06.83 reports snoring. Snoring travels with OSA often enough that people treat the two as interchangeable, and the codes don't work that way.

A snoring complaint doesn't earn G47.33. Documented OSA doesn't get downgraded to a snoring code because the patient also snores. Each code reports what the provider wrote.

Code the documented symptom when no diagnosis exists

Before a provider establishes sleep apnea, the encounter may only support signs, symptoms, or the reason for testing. Outpatient rules don't let anyone code a suspected condition as confirmed.

What the record documents

Coding concept

What not to assume

Snoring

Symptom code R06.83

Snoring proves OSA

Witnessed apneic episodes

Symptom coding, verified against the tabular

Apnea NOS and G47.3- can share a claim

Excessive daytime sleepiness

Symptom coding for the documented finding

Sleepiness alone establishes a diagnosis

Nocturnal hypoxemia

Symptom coding for the documented finding

Desaturation alone establishes OSA

Sleep-disordered breathing, no type

Query or symptom coding

The phrase maps cleanly to a G47.3 code

The second row causes the most trouble. G47.3 carries an Excludes1 note for apnea NOS (R06.81), so the apnea symptom code and the sleep apnea codes can't sit together on a claim for the same condition. Verify each symptom code in the official code set before your team standardizes on it.

Update the record once the diagnosis is established

After a provider establishes sleep apnea, somebody has to update the active problem list and the downstream orders. That step gets skipped often, and the gap stays invisible until a claim comes back.

Inconsistent records surface later, at the worst possible moment. The claim carries one code, the authorization carries another, and the DME supplier's file carries a third.

Solid claims submission services catch that mismatch before a symptom code, a confirmed diagnosis, a test code, and a payer edit all travel together on the same claim.

What providers must document for accurate sleep apnea coding

Document the type of sleep apnea

The provider should name the type when it's known: obstructive, primary central, central due to another condition, other or mixed terminology, or unspecified. Active or historical status belongs in that same statement.

Coders can't infer the subtype from equipment use, symptom clusters, or an isolated test value. Every sleep apnea ICD 10 assignment traces back to a sentence somebody wrote in the assessment.

Record the clinical evidence without confusing it with the code

Presenting symptoms, relevant comorbidities, the clinical evaluation, the testing modality, the interpreted result, the AHI or RDI, severity, and the treatment recommendation all belong in the record. They support the diagnosis and the coverage review.

None of them assigns the ICD-10-CM code. The provider's documented diagnosis does that, and the official guidelines say code assignment rests on the diagnostic statement instead of the clinical criteria behind it.

Read that section of the FY2026 ICD-10-CM guidelines once with your coding team, because it settles most internal arguments about AHI values in about five minutes.

Skip the universal claims about screening tools, too. No rule says every payer requires an Epworth score, a STOP-BANG result, or a documented conservative-treatment failure. Those requirements vary by service and by plan.

Keep the order, the report, and the problem list consistent

A sleep case passes through more hands than most encounters, and every handoff is a place where the diagnosis can drift.

  1. The ordering provider records the clinical concern and orders the test.
  2. The lab or vendor completes the study, and an interpreting physician reads it.
  3. The diagnosing provider documents the final condition in the assessment.
  4. Someone updates the problem list to match that assessment.
  5. The treatment order uses the same diagnostic language.
  6. Billing receives the signed records and builds the claim.
  7. Authorization and DME teams work from the same diagnosis set.

Build a clean handoff for billing and authorization

Seven items make a sleep apnea file that survives a payer review.

  • Final diagnosis and subtype, with active or historical status
  • Testing modality and the date of service
  • Interpreted AHI or RDI, with the scoring method named
  • Severity when the interpreting physician documented it
  • Related symptoms and relevant comorbidities
  • Treatment plan and the signed order
  • Beneficiary education record when equipment is dispensed

Accurate diagnosis documentation supports code selection and stops there. It doesn't replace the medical-necessity, authorization, testing, and equipment requirements in the applicable payer policy, which is why prior authorization services and coding review handle two different problems.

When the ordering note, the sleep report, the treatment order, and the claim tell four different stories, the problem has already reached more than one department. MedSole's authorization and coding teams can find where the handoff breaks.

Connecting that documentation to the rest of the claim lifecycle is what revenue cycle management services exist to do.

Which sleep study codes support a sleep apnea workup?

ICD-10-CM codes identify why a sleep study was ordered. CPT and HCPCS codes identify the test performed. Common testing codes include 95810 for attended diagnostic polysomnography, 95811 for attended PAP titration, and 95800, 95801, or 95806 for qualifying unattended studies. Medicare also recognizes G0398, G0399, and G0400 for defined home sleep tests.

ICD-10-CM identifies the reason for testing

There's no such thing as a sleep study ICD10 code. That search phrase mixes two code sets together, and the mix-up shows up on claims every week.

The sleep apnea ICD 10 code reports the documented diagnosis, symptom, or reason for testing. G47.33 may support a study when OSA is already documented and the policy allows it. G47.30 fits when sleep apnea is documented without a type. Symptom codes fit when no diagnosis exists yet.

The codes that report the test itself

Code

System

Service category

What to check first

95800

CPT

Unattended study including sleep time

Confirm the device recorded sleep time

95801

CPT

Unattended study without sleep time

Not interchangeable with 95800

95806

CPT

Unattended study with airflow and effort

Match the channels the device recorded

95810

CPT

Attended diagnostic polysomnography, age 6 and older

No PAP was initiated during the study

95811

CPT

Attended polysomnography with PAP titration, age 6 and older

Titration occurred, split-night included

95782

CPT

Attended diagnostic polysomnography, younger than 6

Age drives this code, not complexity

95783

CPT

Attended polysomnography with PAP titration, younger than 6

Pediatric titration has its own code

G0398

HCPCS

Type II home sleep test

Channel count meets the descriptor

G0399

HCPCS

Type III home sleep test

Verify your MAC's instructions

G0400

HCPCS

Type IV home sleep test

Minimum channel requirement is met

Verify these against your licensed CPT codebook, since the AMA holds the official descriptors. The categories above paraphrase the service so your team can find the right entry faster.

Home sleep testing and the Medicare pathway

Medicare's national policy covers Type I attended polysomnography as the reference standard, plus Type II, Type III, and qualifying Type IV devices. NCD 240.4.1 also covers devices measuring three or more channels that include actigraphy, oximetry, and peripheral arterial tone.

That last category matters because peripheral arterial tone devices now carry a large share of home testing volume, and a lot of internal cheat sheets still stop at Type IV.

Match the code to the test you performed

One MAC's billing and coding article for polysomnography and sleep testing instructs suppliers to report the non-attended study with the code that most accurately describes what was performed. Contractor articles differ, so read the one covering your jurisdiction.

Several contractors also require the most specific G code for any home study meeting a G code descriptor, which means a CPT code on that claim gets rejected. Modifier 26 reports the professional component and TC reports the technical component when the split applies.

Practices running in-lab PSG, home testing, titration, and DME supply claims need a sleep medicine billing workflow that keeps the order, the diagnosis, the authorization, and the interpretation pointed at the same thing.

What is the 3% rule for sleep apnea?

The 3% rule is the AASM-recommended method for scoring an adult hypopnea when a qualifying respiratory event causes at least 3% oxygen desaturation or an arousal. Medicare's CPAP coverage policy uses a 4% oxygen-desaturation definition. Practices should confirm which scoring method appears in the sleep report and which method the payer applies.

The AASM 3% or arousal rule

The AASM Scoring Manual recommends scoring an adult hypopnea when the required airflow reduction and duration occur with at least 3% oxygen desaturation or an associated arousal. Version 3 of the manual moved the 4% desaturation rule from acceptable to optional, and required accredited facilities to implement Version 3 by December 31, 2023.

Plenty of guidance still calls the 4% rule acceptable. That language describes the older manual, and a sleep report written under Version 3 may look different from what your billing team learned five years ago.

Medicare uses a 4% desaturation definition

Medicare's NCD 240.4 defines hypopnea for CPAP coverage as an abnormal respiratory event lasting at least 10 seconds, with at least a 30% reduction in airflow or thoracoabdominal movement, and at least 4% oxygen desaturation.

The DME PAP policy adds one more restriction worth knowing. Respiratory effort related arousals don't count toward the AHI or RDI under that policy, so an arousal-driven index won't carry a Medicare PAP claim.

Why the difference reaches your claims

Question

AASM approach

Medicare CPAP policy

Main purpose

Clinical scoring

Coverage determination

Desaturation rule

3% or an arousal

4%

Arousal events

Counted under the recommended rule

RERAs excluded from AHI and RDI

Who applies it

Sleep center and interpreting clinician

Medicare coverage review

Billing action

Preserve the reported method

Use the value the policy requires

A report can show one index under the recommended method and a lower qualifying index under a 4% method. Your billing team shouldn't recalculate the study. Confirm which value the interpreting physician reported and which value the payer's policy uses, then document both.

The 3% rule is a clinical scoring method. PAP coverage rides on the payer's separate criteria, and a sleep apnea ICD 10 code on the claim doesn't bridge that gap.

CPAP and BiPAP coding: diagnosis codes are not device codes

CPAP machines use HCPCS, not an ICD-10 diagnosis code

CPAP and BiPAP machines are reported with HCPCS equipment codes rather than an ICD-10 diagnosis code. E0601 identifies a single-level CPAP device, E0470 identifies a bilevel device without a backup rate, and E0471 identifies a bilevel device with a backup rate. G47.33 separately identifies the patient's documented obstructive sleep apnea.

A CPAP machine has no ICD-10 diagnosis code, and CPAP machine CPT code is the wrong question in the first place. The device sits in HCPCS. The condition sits in ICD-10-CM. Searching for a CPAP CPT code sends billers to a code set that doesn't hold the answer.

E0601, E0470, and E0471 aren't interchangeable

Code

Equipment

Where the boundary sits

E0601

Single-level CPAP device

The standard OSA pathway when coverage criteria are met

E0470

Bilevel device without a backup rate

Requires a documented, unsuccessful E0601 trial for OSA

E0471

Bilevel device with a backup rate

Denied as not reasonable and necessary when the primary diagnosis is OSA

The CMS PAP devices LCD defines ineffective as a documented failure to meet therapeutic goals on an E0601 despite proper mask selection, fitting, and pressure settings. Swapping devices without that documentation turns a device upgrade into a denial.

Central and complex sleep apnea patients follow a different policy entirely. Their bilevel equipment sits under the respiratory assist device policy rather than the PAP policy, which is why an E0471 claim carrying G47.33 fails.

How to report OSA when the patient uses CPAP

G47.33 stays the diagnosis when the provider documents active OSA. Starting therapy doesn't change the patient's condition, so it doesn't change the sleep apnea ICD 10 code on the claim.

Searches for ICD10 OSA on CPAP and use of CPAP ICD10 come from billers looking for a combined code. No combined code exists. Report the documented diagnosis, then report the equipment separately in HCPCS.

When Z99.89 may be relevant

Z99.89 reports dependence on another enabling machine or device when the documentation supports that status. It adds context and never replaces G47.33.

Don't attach Z99.89 to every CPAP user because a machine appears in the equipment list. The record has to establish documented dependence, and your organization's coding policy decides when a status code earns a line on the claim.

What the team means by “the CPAP code”

The code family that answers it

The OSA diagnosis

ICD-10-CM, G47.33

The CPAP machine

HCPCS, E0601

Masks, tubing, and replacement supplies

HCPCS accessory codes

Documented device dependence

ICD-10-CM status code, when supported

Devices, humidifiers, masks, tubing, rentals, written orders, and delivery records all live inside broader DME billing requirements, and PAP claims fail on those requirements as often as they fail on coding.

Medicare PAP coverage: what must happen before and after setup?

Medicare initially covers qualifying CPAP therapy for 12 weeks. Continued PAP coverage under the applicable DME MAC policy requires a practitioner reevaluation between day 31 and day 91, and documented adherence of at least 4 hours per night on 70% of nights during a consecutive 30-day period within the first three months.

Initial Medicare CPAP coverage

The national framework asks for five things: an adult beneficiary with OSA, a clinical evaluation, a qualifying sleep test ordered by the treating physician, beneficiary education from the supplier before use, and documented benefit during the initial period.

That education requirement gets overlooked. NCD 240.4 puts it on the CPAP provider, before the patient uses the device, and a caregiver in the home can satisfy it when the arrangement is consistent.

Test result

What the policy also requires

AHI or RDI of 15 or more per hour

A minimum of 30 recorded events

AHI or RDI of 5 to 14 per hour

A minimum of 10 events plus a listed symptom or condition

Under 2 hours of sleep or recording time

Total events must still reach the 30 or 10 minimum

Below the qualifying threshold

Don't assume national CPAP coverage applies

The listed symptoms and conditions are excessive daytime sleepiness, impaired cognition, mood disorders, insomnia, hypertension, ischemic heart disease, and a history of stroke. Projections from a short study won't substitute for recorded events.

Continued coverage between day 31 and day 91

Continued coverage sits in a local DME MAC requirement, separate from the national policy. The treating practitioner has to conduct an in-person reevaluation no sooner than day 31 and no later than day 91 after therapy starts, and document that the patient's OSA symptoms improved.

Objective adherence data has to be available and reviewed by that practitioner. Adherence means use of at least 4 hours per night on 70% of nights during a consecutive 30-day period anytime in the first three months.

KX, GA, GZ, and EY modifiers

Modifier

When the PAP policy article calls for it

KX

Initial and continued coverage criteria have both been met

GA

A medical-necessity denial is expected and a valid ABN is on file

GZ

A medical-necessity denial is expected and no valid ABN exists

EY

The required order had not been received before billing

On the fourth month's claim, the CMS PAP policy article allows a supplier to bill without the KX modifier when the practitioner's information hasn't arrived yet. Adding KX before that information arrives is what draws an audit.

CMS also states plainly that the presence of a listed diagnosis code doesn't assure coverage. G47.33 supports the diagnosis relationship in the policy and proves nothing about the rest of the file.

Commercial payers may use different rules

Commercial plans set their own authorization, trial, adherence, and documentation requirements, and the sleep apnea ICD 10 code on the claim doesn't change any of them. Copying Medicare's day 31 to day 91 window into every payer workflow produces confident, wrong answers.

Medicare Advantage plans apply plan-specific administrative processes while staying subject to applicable Medicare coverage rules. Verification of benefits services should confirm the PAP benefit, the deductible, the coinsurance, the network status, the authorization requirement, and any supplier restriction before equipment leaves the building.

When the sleep report qualifies but the benefit, the authorization, or the supplier requirement is still unclear, the next step is verification. MedSole can check the payer requirements before the equipment claim starts aging.

Oral appliance billing for obstructive sleep apnea

E0486 is the HCPCS code for a custom-fabricated mandibular advancement oral appliance used to treat obstructive sleep apnea. G47.33 separately identifies the OSA diagnosis. Medicare coverage also depends on a qualifying sleep test, a treating-practitioner order, and provision of the device by a licensed dentist.

E0486 identifies a custom mandibular advancement device

E0486 reports a custom-fabricated mandibular advancement appliance for OSA. It never replaces the sleep apnea ICD 10 code, and it isn't a dental diagnosis code. The diagnosis, the sleep test, the order, the device, the dentist, and the delivery record all have to line up behind it.

Prefabricated appliances take E0485, and the Medicare oral appliance LCD denies E0485 as not reasonable and necessary for OSA. Custom devices that miss the design criteria fall to A9270 as a non-covered item.

Medicare asks for more than an OSA diagnosis

Four criteria drive coverage under the DME MAC policy. The beneficiary has an in-person clinical evaluation before the sleep test. The test qualifies. The treating practitioner orders the device after reviewing the report. A licensed dentist provides and bills it.

The qualifying test has a third pathway most summaries leave out. When the AHI or RDI is greater than 30, coverage also requires documentation that the beneficiary can't tolerate a PAP device, or that the treating practitioner determined PAP is contraindicated.

The medical and dental records have to connect

That LCD defines treating practitioner as a licensed MD, DO, nurse practitioner, clinical nurse specialist, or physician assistant working within scope. The definition excludes a dentist by name.

A dentist can't satisfy the evaluation and ordering criteria and then bill the appliance. The medical side establishes the diagnosis and writes the order. The dental side fabricates and delivers the device, then bills it. Both files have to exist.

The companion policy article adds the coding requirements, including a standard written order before the claim and proof of delivery in the supplier's file. Missing either one turns a clinically appropriate appliance into an unpaid one.

Sleep cases that cross into a dental office need dental billing services that can work across medical documentation, payer eligibility, appliance records, and a dental front desk at the same time.

Why sleep apnea claims deny even when the diagnosis code is correct

A correct diagnosis doesn't finish the claim

A correct G47.33 can still produce an unpaid claim. The payer also wants the right test, the right equipment code, the authorization, the order, the evaluation, the adherence record, the modifier, and the supplier documentation.

A clean sleep apnea ICD 10 assignment gets you to the starting line. The rest of the file decides whether the claim pays.

Common sleep apnea denial patterns

What you're seeing

What may be missing

Where to look

G47.33 on the claim, CPAP still denies

Qualifying test or clinical evaluation

Compare the claim against the coverage policy

G47.30 remains after OSA was confirmed

Diagnosis reconciliation

The provider's final documentation

PAP claim billed with E0470

Documented, unsuccessful E0601 trial

The device pathway in the PAP LCD

E0471 billed for primary OSA

The equipment doesn't fit this policy

The diagnosis and the RAD policy

Fourth-month PAP claim denies

Day 31 to 91 visit or adherence data

Practitioner and device-use records

Claim line rejects on a modifier

KX, GA, GZ, or EY applied incorrectly

The policy article and the ABN status

Sleep study denies

Order, indication, or test code mismatch

The order, the report, and the claim side by side

Oral appliance denies

Test, order, dentist, or delivery record

The combined medical and dental file

Payer behavior varies, so treat this as a review sequence instead of a list of guaranteed denial reasons. The pattern holds across payers even when the specifics don't: the diagnosis checked out and something else in the file didn't.

Send the finding back to the department that created it

Sort every sleep apnea denial into a category before you appeal it. Eligibility, authorization, coding, documentation, medical necessity, ordering, equipment, and modifier problems each belong to a different team.

Five records answer most PAP denials before an appeal ever leaves the building.

  • The clinical evaluation that preceded the sleep test
  • The interpreted sleep-test report with the scoring method named
  • The treating practitioner's order for the device
  • The PAP adherence report covering the qualifying 30-day window
  • The payer policy in effect on the date of service

Send what the policy asks for and stop there. Dumping a full chart into an appeal slows the reviewer down. Denial management services that categorize by root cause do more for next month's claims than a stack of resubmissions.

Aging matters just as much. Medical billing AR follow-up should track unresolved sleep-study and PAP claims before the appeal window or the filing limit closes on them.

Fixing one sleep apnea denial recovers one claim. Finding whether the breakdown started in testing, authorization, documentation, coding, or DME setup keeps the next twenty from failing the same way. MedSole can trace the pattern back to the step that needs the fix.

2026 sleep apnea treatment updates that affect billing workflows

The FDA approved tirzepatide for moderate-to-severe OSA in adults with obesity on December 20, 2024. The FDA also recorded a March 18, 2026 approval decision for hypoglossal nerve stimulation system PMA P250013. Both developments change treatment authorization and documentation. Neither one creates a new sleep apnea ICD-10-CM code.

The first FDA-approved medication for OSA

On December 20, 2024, the FDA approved Zepbound, or tirzepatide, for moderate-to-severe OSA in adults with obesity, used alongside a reduced-calorie diet and increased physical activity. The FDA announcement describes it as the first medication treatment option for these patients.

The approval sits in the pharmacy benefit, which puts it outside a sleep practice's usual PAP and DME workflow. Confirm labeled eligibility, obesity documentation, formulary status, and the plan's authorization criteria before the prescription goes out.

The March 2026 hypoglossal nerve stimulation approval

FDA PMA P250013 records a March 18, 2026 decision date for LivaNova's aura6000 hypoglossal nerve stimulation system, indicated for adults with moderate to severe OSA at an AHI of 15 to 65 who failed, can't tolerate, or aren't eligible for PAP, oral appliances, or pharmacotherapy.

Those eligibility definitions are the authorization packet. The approval order defines PAP failure as an AHI above 15 despite use, and PAP intolerance as an inability or unwillingness to use the device. Your documentation has to say which one applies.

Approval doesn't guarantee payer coverage

FDA approval permits marketing for the labeled indication. Medicare coverage runs through jurisdiction-specific LCDs, and LCD L38307 is one of several. Pull the LCD covering your MAC, not the first one a search returns.

None of this changed the sleep apnea ICD 10 code set. Implant claims report CPT 64582 for insertion, 64583 for revision or replacement, and 64584 for removal. Several contractors also require a secondary ICD-10-CM code showing a body mass index under 35, which makes the BMI code part of the coverage decision.

Newer drugs and implanted treatments both need sleep treatment authorization support that connects the labeled indication, the clinical record, the test results, and the payer policy into one submission.

How MedSole supports the full sleep medicine revenue cycle

A complete sleep apnea ICD 10 workflow doesn't stop when the diagnosis gets picked. It runs through eligibility, authorization, sleep-study billing, PAP and DME coding, claim submission, payment posting, denial review, and AR follow-up, and a break at any point shows up as an aging claim.

One workflow from verification through AR follow-up

MedSole RCM is a full revenue cycle management company. The same team follows a sleep claim from eligibility and authorization through coding, submission, payment, denial review, and accounts receivable, so nobody has to explain the sleep report twice.

Not every practice needs every service. A sleep lab drowning in fourth-month PAP denials has a different problem than a new pulmonology group waiting on payer enrollment.

MedSole medical billing and credentialing pricing

MedSole RCM provides sleep medicine medical billing at 2.99% of collections from payers and provider credentialing at $99 per insurance. Both numbers are published, and neither carries a setup fee or a long-term contract.

MedSole service

Published price

Full-service medical billing

2.99% of collections from payers

Provider credentialing and enrollment

$99 per insurance

Pricing reviewed July 30, 2026. Confirm current rates before you budget from them.

At 2.99%, a sleep practice collecting $80,000 a month pays $2,392 for a complete billing team, and that rate covers eligibility verification, coding review, claim submission, payment posting, denial management, AR follow-up, and reporting. See what sits inside full-service medical billing before you compare it to anything else.

Credentialing for new sleep medicine providers

A technically perfect claim still fails when the rendering or billing provider isn't enrolled. Sleep medicine groups hit this every time they add a physician, open a second lab location, or move a provider onto a new payer contract.

MedSole handles provider enrollment and credentialing services at $99 per insurance, covering CAQH setup, application submission, payer follow-up, and re-credentialing deadlines. Most competing services quote $150 to $400 per payer for the same work.

When a billing review makes sense

Six situations tend to mean something upstream needs attention.

  • The sleep report and the active diagnosis don't match each other
  • PAP claims start failing after the third rental month
  • Nobody can say which payers require authorization for a home study
  • DME supply claims age with no clear denial owner
  • Oral appliance claims stall between the medical and dental teams
  • The same denial reason repeats across unrelated patients

When the diagnosis, the test, the authorization, the equipment, and the claim aren't moving through one connected process, a code correction won't fix the whole problem. MedSole can review the workflow, find where the handoff breaks, and show your team what needs attention before more claims age out.

→ Request a Free Billing Analysis

MedSole's sleep apnea ICD 10 support connects coding with the revenue cycle steps that decide whether a claim is complete. MedSole RCM works with sleep medicine, pulmonology, ENT, neurology, dental sleep, and DME clients across all 50 states.

About the Author
Andrew Christian

Andrew Christian

Billing Manager

Andrew Christian is the Billing Manager at MedSole RCM, bringing 12+ years of experience in medical billing, coding, and revenue cycle management across multiple specialties. He is highly skilled in claims submission, denial management, payment posting, and payer follow-up, ensuring maximum reimbursement for providers. Andrew works closely with Medicare, Medicaid, and commercial payers, supporting hundreds of providers nationwide. His proven billing approach minimizes claim rejections, accelerates cash flow, and drives stronger financial performance from day one.