Coding Ahead
CasePilot
Medical Coding Assistant
CaseConsultant
Instant Email Coding Consultant
Case2Code
Search and Code Lookup Tool
CareerCenter
Medical Coding Job Board
Log in Register free account
0 code page views remaining. Guest accounts are limited to 1 page view. Register free account to get 5 more views.
Log in Register free account
Pulmonary Function Test CPT Codes

Pulmonary Function Test CPT Codes

Pulmonary function testing encompasses multiple distinct diagnostic services mapped to separate CPT codes, each with its own documentation requirements, modifier logic, and bundling restrictions. The volume and variety of codes in the 94010 to 94729 range produce predictable billing errors: submitting 94010 alongside 94060, billing 94729 as a standalone service, applying split-component modifiers to pediatric codes that prohibit them, and using deleted codes 94250 and 94400. This guide covers code selection, NCCI bundling, Medicare coverage rules, and the documentation requirements auditors verify.

What the Procedure Involves

Pulmonary function testing comprises three core measurement domains, each performed with distinct equipment and each reported with separate CPT codes. Spirometry measures dynamic airflow: the patient performs forced expiratory maneuvers into a spirometer while FEV1, FVC, the FEV1/FVC ratio, peak expiratory flow, and optionally maximal voluntary ventilation (MVV) are recorded. Lung volume testing measures static lung compartments (TLC, RV, FRC); the method determines the code, whether body plethysmography, helium dilution, nitrogen washout, or oscillometry. Diffusing capacity (DLCO) testing measures gas transfer across the alveolar-capillary membrane using a carbon monoxide tracer gas and is always an add-on service reported in addition to a qualifying primary code.

Beyond baseline measurement, clinicians frequently order challenge testing. Bronchodilator reversibility (94060) adds pre- and post-bronchodilator spirometry. Bronchoprovocation with methacholine or cold air (94070) involves multiple incremental spirometric measurements after agent administration. Exercise-induced bronchospasm testing (94617 or 94619) includes pre- and post-exercise spirometry with pulse oximetry, with or without ECG. Each variation maps to a distinct code, and no two of these may be billed together on the same date.

Quick Reference

CPT Code Procedure Key Differentiator
94010 Spirometry including graphic record; with or without MVV Baseline only; no bronchodilator or challenge agent
94060 Spirometry with bronchodilator responsiveness; pre and post Includes 94010; do not bill both
94070 Bronchospasm provocation; multiple spirometric determinations with administered agents Methacholine, cold air, antigen; includes 94010
94150 Vital capacity, total (separate procedure) Bundled status; MUE = 0; never bill with other PFT codes
94200 Maximum breathing capacity, MVV Included in 94010 when performed together; standalone only if sole service
94375 Respiratory flow volume loop Identifies upper vs. lower airway obstruction patterns
94726 Plethysmography for lung volumes; with airway resistance when performed Body box; gold standard for TLC/RV; added 2012
94727 Gas dilution or washout for lung volumes; with distribution of ventilation when performed Helium dilution or nitrogen washout; added 2012
94728 Airway resistance by oscillometry IOS/FOT technique; useful when patient cannot perform forced maneuvers; added 2012
94729 Diffusing capacity (eg, carbon monoxide, membrane) Add-on only; global = ZZZ; must accompany 94726, 94727, 94728, or 94621
94011 Spirometric forced expiratory flows; infant or child through 2 years No PC/TC split; requires sedation and chest compression jacket
94012 Spirometric forced expiratory flows, before and after bronchodilator; through 2 years Pre/post BD version of 94011; no PC/TC split
94013 Measurement of lung volumes (FRC, FVC, ERV); through 2 years Lung volumes for infants; no PC/TC split
94015 Patient-initiated spirometric recording per 30-day period; recording TC only; post-transplant monitoring
94016 Patient-initiated spirometric recording per 30-day period; physician review PC only; billed separately from 94015 per 30-day period
94617 Exercise test for bronchospasm; with ECG EIB testing with cardiac monitoring; added 2018
94618 Pulmonary stress testing (eg, 6-minute walk); with HR, oximetry, O2 titration 6MWT for exercise capacity assessment; added 2018
94619 Exercise test for bronchospasm; without ECG EIB without cardiac monitoring; added 2021
94621 Cardiopulmonary exercise testing with minute ventilation, CO2, O2 uptake, ECG Full CPET; valid primary code for 94729 add-on
94640 Pressurized or nonpressurized inhalation treatment; acute airway obstruction or sputum induction MUE = 4; not separately billable during 94060
94644 Continuous inhalation treatment; first hour CBT initial hour
94645 Continuous inhalation treatment; each additional hour Add-on to 94644; MUE = 2
94450 Breathing response to hypoxia (hypoxia response curve) Hypoxic ventilatory response testing
ICD-10-CM Diagnosis Medical Necessity Note
J44.1 COPD with acute exacerbation Strong PFT indication; monitor severity and treatment response
J44.9 COPD, unspecified Common indication for baseline and monitoring spirometry
J43.9 Emphysema, unspecified Obstructive pattern; lung volumes confirm air trapping
J45.20 Mild intermittent asthma, uncomplicated Baseline spirometry and bronchodilator testing indication
J47.9 Bronchiectasis, uncomplicated PFT characterizes obstructive or mixed pattern
J84.10 Pulmonary fibrosis, unspecified Restrictive pattern; DLCO reduced; full PFT battery indicated
J4A.8 Other chronic lung allograft dysfunction Remote spirometry (94015/94016) for transplant rejection monitoring
I27.0 Primary pulmonary arterial hypertension 6MWT (94618) for exercise capacity and supplemental oxygen needs
R05.9 Cough, unspecified Symptom-based indication; document if diagnosis is pending
R06.09 Dyspnea, unspecified Acceptable symptom code when working up undifferentiated dyspnea

Code Selection Decision Logic

The first branching decision is whether the service is spirometry-type, lung volume measurement, DLCO, or exercise testing. These domains can be billed together on the same date when each is a distinct, medically necessary service with its own documentation.

For spirometry, the key differentiator is whether a challenge was performed. Baseline only selects 94010. Bronchodilator challenge selects 94060, which subsumes 94010. Bronchoprovocation with a pharmacologic or physical agent selects 94070, which also subsumes 94010. Exercise bronchospasm testing is separate from bronchoprovocation: exercise as the provocative modality selects 94617 (with ECG) or 94619 (without ECG), not 94070.

For lung volumes, the method determines the code: body plethysmography = 94726; gas dilution or washout = 94727; oscillometry = 94728. DLCO (94729) is always an add-on to one of these three or to 94621.

graph TD
    A[Spirometry ordered] --> B{Challenge performed?}
    B -->|No challenge| C[[94010](https://www.codingahead.com/cpt/codes/94010)]
    B -->|Pre/post bronchodilator| D[[94060](https://www.codingahead.com/cpt/codes/94060)]
    B -->|Methacholine, cold air, or antigen| E[[94070](https://www.codingahead.com/cpt/codes/94070)]
    B -->|Exercise-induced bronchospasm| F{ECG recorded?}
    F -->|Yes| G[[94617](https://www.codingahead.com/cpt/codes/94617)]
    F -->|No| H[[94619](https://www.codingahead.com/cpt/codes/94619)]
    I[Lung volumes ordered] --> J{Method?}
    J -->|Body plethysmography| K[[94726](https://www.codingahead.com/cpt/codes/94726)]
    J -->|Gas dilution or washout| L[[94727](https://www.codingahead.com/cpt/codes/94727)]
    J -->|Oscillometry| M[[94728](https://www.codingahead.com/cpt/codes/94728)]
    N[DLCO ordered] --> O[Must pair with primary code]
    O --> P[[94729](https://www.codingahead.com/cpt/codes/94729)]

The compliance distinction at the spirometry branch: 94060 and 94070 each include spirometry "as in 94010," so 94010 is never billable on the same date as either of these codes. 94617 and 94619 include pre- and post-exercise spirometry, making a separate 94010 on the same date a bundling violation.

Code-by-Code Breakdown

CPT 94010: Spirometry, Including Graphic Record, Total and Timed Vital Capacity, Expiratory Flow Rate Measurement(s), With or Without Maximal Voluntary Ventilation

Procedure match: Baseline spirometry without any challenge or provocative agent. The provider administers forced expiratory maneuvers, records FVC, FEV1, FEV1/FVC, FEF25-75%, peak flow, and optionally MVV. No pre/post testing, no administered agents. Standard monitoring spirometry for established COPD or asthma patients.

Common confusion: Coders frequently bill 94010 in addition to 94060 when bronchodilator testing was performed. This is a hard NCCI bundle with no modifier bypass. When the note documents albuterol or ipratropium administration followed by repeat spirometry, select only 94060.

Documentation: Graphic record (flow-volume loop or volume-time curve) in the medical record; pre- and post-predicted values with percent predicted; quality grading per ATS/ERS criteria (minimum 3 acceptable efforts, FEV1 and FVC reproducible within 150 mL on best two efforts); signed written interpretation.

Modifiers: PC/TC indicator = 1; modifier 26 applies when the physician interprets only; modifier TC applies for equipment and staff only; no modifier when the billing physician performs the complete service in their own office.

CPT 94060: Bronchodilation Responsiveness, Spirometry As in 94010, Pre- and Post-Bronchodilator Administration

Procedure match: The provider performs baseline spirometry, administers a short-acting bronchodilator (typically albuterol 2.5 mg by nebulizer or 400 mcg by MDI), waits 15 to 20 minutes, and repeats spirometry. A response of 12% or greater and 200 mL or greater increase in FEV1 or FVC is considered significant per ATS/ERS criteria.

Common confusion: Do not additionally bill 94640 for the bronchodilator administered during the 94060 procedure. Per the 2021 CPT guideline, the bronchodilator administration is included within 94060. The only scenario where 94640 is separately billable on a date when 94060 is performed is a clearly distinct acute inhalation treatment documented separately in time and clinical purpose from the testing protocol.

Documentation: Pre-bronchodilator values; bronchodilator agent, dose, and route; post-bronchodilator values; percent and absolute change in FEV1 and FVC with reversibility interpretation; time elapsed between administration and post-BD measurement; signed written interpretation.

Modifiers: PC/TC indicator = 1; same modifier logic as 94010.

CPT 94070: Bronchospasm Provocation Evaluation, Multiple Spirometric Determinations As in 94010, With Administered Agents

Procedure match: Methacholine challenge, cold air challenge, or antigen challenge. The provider performs baseline spirometry, then administers incremental doses of the provocative agent (methacholine per the 5-breath dosimeter or 2-minute tidal breathing protocol), repeating spirometry after each dose until a 20% fall in FEV1 occurs or the maximum dose is reached. Multiple spirometric determinations are required.

Common confusion: Exercise-induced bronchospasm testing does not use 94070. Exercise as the provocative modality selects 94617 (with ECG) or 94619 (without ECG). Methacholine and cold air select 94070.

Documentation: Baseline FEV1; protocol used; doses and corresponding FEV1 at each step; PC20 or PD20 result; contraindication screening documentation; adverse event monitoring during and after testing; signed interpretation.

Modifiers: PC/TC indicator = 1.

CPT 94726: Plethysmography for Determination of Lung Volumes and, When Performed, Airway Resistance

Procedure match: Body plethysmography (body box). The patient sits in an airtight chamber; pressure and flow changes during panting maneuvers determine TLC, RV, FRC, and airway resistance (Raw) when performed. Gold standard for lung volume measurement; most accurate in the presence of air trapping or nonuniform ventilation.

Common confusion: Do not confuse with CPT 93720, which is total body plethysmography for cardiovascular assessment, not respiratory lung volumes. The two codes serve entirely different clinical purposes.

Documentation: TLC, RV, FRC with predicted values and percent predicted; Raw if measured; method documented; quality criteria documentation; signed interpretation. When DLCO is also measured, report 94729 as an add-on.

Modifiers: PC/TC indicator = 1.

CPT 94727: Gas Dilution or Washout for Determination of Lung Volumes and, When Performed, Distribution of Ventilation and Closing Volumes

Procedure match: Helium dilution or multiple-breath nitrogen washout (MBNW). Less accurate than body plethysmography in the presence of significant air trapping, as poorly ventilated spaces are not measured. Can provide distribution of ventilation data and closing volume measurements.

Documentation: Method (helium dilution or nitrogen washout); TLC, RV, FRC with predicted values; lung clearance index (LCI) if MBNW performed; signed interpretation.

Modifiers: PC/TC indicator = 1.

CPT 94728: Airway Resistance by Oscillometry

Procedure match: Impulse oscillometry system (IOS) or forced oscillation technique (FOT). The patient breathes tidally while the device superimposes oscillatory pressure pulses to measure respiratory system impedance. Useful for patients who cannot perform forced maneuvers: young children, cognitively impaired patients, neuromuscular disease. Code description was updated in 2020 to reflect current technique terminology.

Documentation: Resistance and reactance values at multiple frequencies; reference values with percent predicted; quality documentation; signed interpretation.

Modifiers: PC/TC indicator = 1.

CPT 94729: Diffusing Capacity (eg, Carbon Monoxide, Membrane)

Procedure match: Single-breath DLCO test. The patient inhales a tracer gas mixture containing carbon monoxide and a nondiffusing marker, breath-holds for 10 seconds, and exhales. The difference in CO concentration between inhaled and exhaled gas quantifies gas transfer capacity across the alveolar-capillary membrane.

Critical rule: 94729 carries global period ZZZ, designating it as an add-on code only. It must be billed with a primary PFT code; valid primaries are 94726, 94727, 94728, and 94621. Submitting 94729 as a standalone code results in an automatic claim logic denial, not a medical necessity review.

Documentation: DLCO value with hemoglobin correction applied if hemoglobin is known; Kco (DLCO/VA) calculation; quality grade per ATS/ERS criteria; signed interpretation explicitly addressing the DLCO result when billed with modifier 26.

Modifiers: PC/TC indicator = 1. In hospital outpatient (OPPS) settings, 94729 is packaged into APC rates; the facility does not receive separate reimbursement for this service.

CPT 94617 and CPT 94619: Exercise Tests for Bronchospasm

94617 includes ECG recording throughout exercise; 94619 does not. Both include pre- and post-exercise spirometry and pulse oximetry. The selecting criterion is whether ECG monitoring was performed, not the clinical indication. Both codes were designed for EIB evaluation, not for general cardiopulmonary exercise capacity (select 94621 for full CPET). 94617 was added in 2018; 94619 was added in 2021.

CPT 94618: Pulmonary Stress Testing

The 6-minute walk test (6MWT) with heart rate monitoring, pulse oximetry, and oxygen titration when performed. Used to assess functional exercise capacity in moderate to severe respiratory disease and to determine supplemental oxygen requirements. Added in 2018. Some payers require pre-authorization. Do not use 94618 for full CPET; report 94621 when minute ventilation, CO2 production, and O2 uptake are measured.

CPT 94015 and CPT 94016: Patient-Initiated Remote Spirometry

94015 is TC only (PC/TC indicator = 3); the patient performs spirometry at home and transmits recordings. Billed per 30-day period, not per session. 94016 is PC only (PC/TC indicator = 2); the physician reviews recordings and provides interpretation per 30-day period. These codes are not split with modifiers 26 and TC; they are inherently one-sided codes. Primary use is post-lung transplant monitoring for bronchiolitis obliterans. The primary covered diagnosis is J4A.8 (other chronic lung allograft dysfunction).

Bundling, Unbundling & NCCI Edits

The most important bundling relationships in PFT billing:

94010 into 94060: 94010 is the column 2 code; 94060 is column 1. This is a hard NCCI edit with no modifier bypass. When 94060 is performed, 94010 cannot be separately reported on the same date under any circumstance.

94010 into 94070: Bronchoprovocation evaluation includes spirometry "as in 94010." Separately billing 94010 with 94070 is a bundling violation.

94150 absolute bundle: 94150 has Medicare status code "Bundled" and an MUE of 0. It generates no payment when billed with other PFT codes. When vital capacity is measured as part of 94010 or 94060, it is included; 94150 must not appear on the claim.

94729 add-on requirement: The ZZZ global indicator is absolute. Without a qualifying primary code (94726, 94727, 94728, or 94621) on the same claim, 94729 is denied as a claim logic error.

94640 inclusion in 94060: Per the 2021 CPT guideline, the bronchodilator administered as part of post-bronchodilator spirometry is included in 94060. Separately billing 94640 for this service is unbundling. The exception is a clearly distinct acute inhalation treatment that is separate in time and clinical purpose from the testing protocol.

94617/94619 include spirometry: Both exercise bronchospasm codes include pre- and post-exercise spirometry. Separately billing 94010 on the same date creates a bundling conflict.

94645 requires 94644: 94645 (additional hour, continuous inhalation treatment) is an add-on to 94644. It cannot appear on a claim without a primary 94644.

MUE limits confirm clinical expectations: MUE = 1 for most PFT measurement codes; MUE = 4 for 94640 (multiple inhalation treatments appropriate in acute settings); MUE = 2 for 94645 (up to two additional hours of continuous bronchodilator therapy). Auditors reviewing PFT claims look for MUE overrides as a red flag for medically unlikely utilization.

Medicare & Payer Rules

Medicare Part B covers PFTs as outpatient diagnostic tests when ordered by a treating physician with a documented clinical indication. Covered diagnoses include COPD (J44.x), emphysema (J43.x), asthma (J45.x), pulmonary fibrosis (J84.x), bronchiectasis (J47.x), and symptomatic presentations including dyspnea (R06.09) and cough (R05.9) when a diagnosis is being established. The presence of a covered diagnosis code is necessary but not sufficient if the order context suggests a non-medical purpose (disability claim, insurance, occupational screening). Documentation must support that the PFT is being ordered for diagnosis or management of a condition being treated.

MAC LCDs govern PFT coverage by jurisdiction. Noridian, Novitas, CGS, and Palmetto GBA each maintain separate LCD policies with covered ICD-10-CM code lists and frequency parameters. Coders should pull the applicable LCD from the CMS Medicare Coverage Database for the billing jurisdiction before submitting. Frequency limitations typically permit initial diagnostic PFTs when medically necessary and may restrict repeat testing for stable conditions to annually or per change in clinical status.

Place of service affects reimbursement structure. In physician office settings (POS 11), PFTs are reimbursed under the Medicare Physician Fee Schedule at the non-facility rate. In hospital outpatient settings (POS 22), most PFT codes carry OPPS APC status indicator "STV" (packaged), meaning facility reimbursement is bundled into the primary visit APC. Notable exceptions with separate APC payment: 94060, 94013, and 94621. The diffusing capacity code 94729 is packaged in hospital outpatient; the facility does not receive separate reimbursement.

Pre-operative PFTs before lung resection or cardiac surgery are covered when clinical necessity is documented for the specific patient. Coverage is not automatic for all surgical cases; documentation should establish the clinical decision-making value of the test.

Documentation Checklist

  1. Ordering physician name and clinical indication documented in the order
  2. Signed, written physician interpretation in the medical record (required for all PFT codes; claims without this fail medical necessity review)
  3. ATS/ERS acceptability criteria met: minimum 3 acceptable efforts documented
  4. ATS/ERS reproducibility criteria met: best two FEV1 values within 150 mL, documented
  5. Quality grade assigned per ATS/ERS grading scheme (A through F)
  6. Predicted values documented with reference equation specified (age, sex, height, race/ethnicity adjusted)
  7. For 94060: bronchodilator agent, dose, route, and time of administration; pre- and post-values; percent and absolute change in FEV1 and FVC with reversibility interpretation
  8. For 94070: protocol used; doses at each step with corresponding FEV1; PC20 or PD20 result; contraindication screening; patient monitoring during and after testing
  9. For 94726: body box technique confirmed; TLC, RV, FRC, and Raw values with predicted comparisons
  10. For 94729: technique used; hemoglobin correction applied if hemoglobin is known; Kco (DLCO/VA) calculated; quality grade documented
  11. For 94617/94619: exercise protocol; presence or absence of ECG explicitly noted; pre- and post-exercise spirometry values; pulse oximetry tracings
  12. For 94618: 6MWT protocol; distance walked; HR and SpO2 throughout; oxygen titration data if supplemental O2 was adjusted
  13. Place of service and physician supervision credentials documented when supervision level affects coverage or billing

Common Billing Errors & Denial Prevention

1. Billing 94010 and 94060 together. The NCCI column 1/column 2 edit makes this a hard bundle with no modifier bypass. When the clinical record documents pre/post bronchodilator spirometry, 94060 is the only billable code. Auditors routinely flag claims with both codes on the same date of service.

2. Submitting 94729 without a primary PFT code. The ZZZ global indicator is absolute: 94729 alone is a claim logic error, not a medical necessity issue. The claim is denied before clinical review. Verify that 94726, 94727, 94728, or 94621 appears on the same claim before submitting.

3. Billing with deleted codes 94250 or 94400. Both codes were deleted effective January 1, 2021. Claims submitted with these codes are rejected as invalid submissions. Remove them from all chargemasters and superbills immediately.

4. Separately billing 94640 for bronchodilator administered during 94060. Per the 2021 CPT guideline, the bronchodilator in post-bronchodilator spirometry is part of 94060. Billing both generates an unbundling denial. The exception requires a clearly distinct acute inhalation treatment documented with its own clinical indication separate in time and purpose from the testing protocol.

5. Applying modifier 26 or TC to codes 94011, 94012, or 94013. These pediatric/infant codes carry a PC/TC indicator of 0 and are physician service codes only with no facility component split. Any claim with modifier 26 or TC appended to these codes is rejected for invalid modifier use.

6. Billing 94150 for vital capacity. The bundled status and MUE of 0 mean this code generates zero Medicare reimbursement when submitted with any other PFT code. Vital capacity is captured within 94010 and 94060; it should never appear as a separate line item alongside other spirometry services.

7. Missing physician interpretation documentation. CMS requires a signed, written physician interpretation for all PFT codes. Technical performance without a corresponding interpretation report does not support billing. In split-service arrangements where the hospital performs the technical component and the physician bills modifier 26 separately, both parties require documentation of their respective contributions before either claim is payable.

8. Failure to document ATS/ERS quality criteria. MAC LCDs that reference ATS/ERS standards may deny claims on medical review if the test report does not state whether acceptability and reproducibility criteria were met. A spirometry report listing numerical values only, without quality documentation, is insufficient for audit defense.

Clinical Scenario Examples

Scenario 1: Annual COPD Monitoring Spirometry A 68-year-old established patient with J44.9 presents for annual pulmonary follow-up. The pulmonologist performs office spirometry: three acceptable efforts recorded, FVC and FEV1 reproducible within 150 mL on the best two efforts; no bronchodilator administered. MVV is performed at the end of the session.

Correct code: 94010 (global; physician performs and interprets in office; MVV included in descriptor) Diagnosis: J44.9

Scenario 2: Bronchodilator Reversibility Testing for Suspected Asthma New patient with suspected asthma. Pulmonologist performs pre-bronchodilator spirometry, administers albuterol 400 mcg by MDI, waits 15 minutes, and repeats spirometry. FEV1 increases 14% and 250 mL, meeting ATS criteria for significant bronchodilator response.

Correct code: 94060 (global) Diagnosis: J45.20 (or R06.09 if diagnosis still under evaluation) Do not bill: 94010, 94640 Rationale: 94060 includes the pre-spirometry, bronchodilator, and post-spirometry; albuterol is included within 94060 per the 2021 CPT guideline.

Scenario 3: Full PFT Battery for New Interstitial Lung Disease Patient with J84.10 referred for comprehensive PFT. Hospital PFT lab performs spirometry, body plethysmography lung volumes, and DLCO. Referring pulmonologist provides a written interpretation report covering all three components.

Physician bills: 94010-26, 94726-26, 94729-26 Hospital bills: 94010-TC, 94726-TC (94729 is packaged in OPPS; the facility does not separately bill) Diagnosis: J84.10 Rationale: Three distinct domains; 94729 is the add-on to 94726; modifier 26 for physician interpretation only.

Scenario 4: Methacholine Challenge for Bronchial Hyperresponsiveness 22-year-old with normal baseline spirometry and suspected asthma. Allergist administers incremental methacholine doses using the 2-minute tidal breathing protocol; spirometry recorded after each step. PC20 = 4 mg/mL (positive test, mild hyperresponsiveness).

Correct code: 94070 (global) Diagnosis: J45.20 (if asthma confirmed); R06.09 (if still working diagnosis) Do not bill: 94010 (included in 94070) Rationale: Multiple incremental spirometric determinations with administered agent = 94070; 94010 is subsumed.

Scenario 5: 6-Minute Walk Test for Pulmonary Arterial Hypertension 55-year-old with I27.0. Pulmonologist orders 6MWT to quantify exercise capacity and evaluate need for supplemental oxygen. Heart rate and SpO2 monitored continuously; oxygen titration performed.

Correct code: 94618 (global) Diagnosis: I27.0 Rationale: 94618 describes the 6MWT with HR, oximetry, and oxygen titration monitoring. This is distinct from full CPET (94621), which requires measurement of minute ventilation, CO2 production, and O2 uptake with ECG.

Related Procedures & Cross-References

Code Description Relationship
93720 Plethysmography, total body; with interpretation and report Total body plethysmography for cardiovascular assessment; entirely distinct from 94726 (respiratory lung volumes)
94621 Cardiopulmonary exercise testing with VO2, VCO2, ECG Full CPET; valid primary code for 94729 add-on; more comprehensive than 94617 or 94619
94640 Inhalation treatment; acute airway obstruction or sputum induction Separately billable only when distinct from bronchodilator included in 94060; MUE = 4
94644 Continuous inhalation treatment; first hour Therapeutic bronchodilator; requires 94645 for additional hours
94645 Continuous inhalation treatment; each additional hour Add-on to 94644; MUE = 2
94450 Breathing response to hypoxia (hypoxia response curve) Hypoxic ventilatory response testing; distinct from methacholine provocation (94070)
J84.10 Pulmonary fibrosis, unspecified Typical indication for full PFT battery including DLCO (94729)
J4A.8 Other chronic lung allograft dysfunction Primary indication for remote spirometry monitoring codes 94015 and 94016
I27.0 Primary pulmonary arterial hypertension Indication for 6MWT (94618) to assess exercise capacity and oxygen requirements
R06.09 Dyspnea, unspecified Acceptable symptom code when diagnosis is being established during PFT workup

Sources

Related Codes

Code Description
93720 Plethysmography, total body; with interpretation and report
94010 Spirometry, including graphic record, total and timed vital capacity, expiratory flow rate measurement(s), with or without maximal voluntary ventilation
94011 Measurement of spirometric forced expiratory flows in an infant or child through 2 years of age
94012 Measurement of spirometric forced expiratory flows, before and after bronchodilator, in an infant or child through 2 years of age
94013 Measurement of lung volumes (ie, functional residual capacity [FRC], forced vital capacity [FVC], and expiratory reserve volume [ERV]) in an infant or child through 2 years of age
94015 Patient-initiated spirometric recording per 30-day period of time; recording (includes hook-up, reinforced education, data transmission, data capture, trend analysis, and periodic recalibration)
94016 Patient-initiated spirometric recording per 30-day period of time; review and interpretation only by a physician or other qualified health care professional
94060 Bronchodilation responsiveness, spirometry as in 94010, pre- and post-bronchodilator administration
94070 Bronchospasm provocation evaluation, multiple spirometric determinations as in 94010, with administered agents (eg, antigen[s], cold air, methacholine)
94150 Vital capacity, total (separate procedure)
94200 Maximum breathing capacity, maximal voluntary ventilation
94250 Expired gas collection, quantitative, single procedure (separate procedure)
94375 Respiratory flow volume loop
94400 Breathing response to CO2 (CO2 response curve)
94450 Breathing response to hypoxia (hypoxia response curve)
94617 Exercise test for bronchospasm, including pre- and post-spirometry and pulse oximetry; with electrocardiographic recording(s)
94618 Pulmonary stress testing (eg, 6-minute walk test), including measurement of heart rate, oximetry, and oxygen titration, when performed
94619 Exercise test for bronchospasm, including pre- and post-spirometry and pulse oximetry; without electrocardiographic recording(s)
94621 Cardiopulmonary exercise testing, including measurements of minute ventilation, CO2 production, O2 uptake, and electrocardiographic recordings
94640 Pressurized or nonpressurized inhalation treatment for acute airway obstruction for therapeutic purposes and/or for diagnostic purposes such as sputum induction with an aerosol generator, nebulizer, metered dose inhaler or intermittent positive pressure breathing (IPPB) device
94644 Continuous inhalation treatment with aerosol medication for acute airway obstruction; first hour
94645 Continuous inhalation treatment with aerosol medication for acute airway obstruction; each additional hour (List separately in addition to code for primary procedure)
94726 Plethysmography for determination of lung volumes and, when performed, airway resistance
94727 Gas dilution or washout for determination of lung volumes and, when performed, distribution of ventilation and closing volumes
94728 Airway resistance by oscillometry
94729 Diffusing capacity (eg, carbon monoxide, membrane) (List separately in addition to code for primary procedure)
I27.0

Primary pulmonary hypertension

Heritable pulmonary arterial hypertension
Idiopathic pulmonary arterial hypertension
Primary group 1 pulmonary hypertension
Primary pulmonary arterial hypertension
Excludes1: persistent pulmonary hypertension of newborn (P29.30)
pulmonary hypertension NOS (I27.20)
secondary pulmonary arterial hypertension (I27.21)
secondary pulmonary hypertension (I27.29)
J43.9

Emphysema, unspecified

Bullous emphysema (lung)(pulmonary)
Emphysema (lung)(pulmonary) NOS
Emphysematous bleb
Vesicular emphysema (lung)(pulmonary)
J44.1

Chronic obstructive pulmonary disease with (acute) exacerbation

Decompensated COPD
Decompensated COPD with (acute) exacerbation
Excludes2: chronic obstructive pulmonary disease [COPD] with acute bronchitis (J44.0)
lung diseases due to external agents (J60-J70)
J44.9

Chronic obstructive pulmonary disease, unspecified

Chronic obstructive airway disease NOS
Chronic obstructive lung disease NOS
Excludes2: lung diseases due to external agents (J60-J70)
J45.20

Mild intermittent asthma, uncomplicated

Mild intermittent asthma NOS
J47.9

Bronchiectasis, uncomplicated

Bronchiectasis NOS
J4A.8 Other chronic lung allograft dysfunction
J84.10

Pulmonary fibrosis, unspecified

Capillary fibrosis of lung
Cirrhosis of lung (chronic) NOS
Fibrosis of lung (atrophic) (chronic) (confluent) (massive) (perialveolar) (peribronchial) NOS
Induration of lung (chronic) NOS
Postinflammatory pulmonary fibrosis
R05.9 Cough, unspecified
R06.09 Other forms of dyspnea
CasePilot

Get instant expert-level medical coding assistance.

Ask about:
CPT Codes Guidelines Modifiers Crosswalks NCCI Edits Compliance Medicare Coverage
Example: "What is CPT code 99213?" or "Guidelines for E/M services"