Understanding Procedure Codes For Speech Therapy Billing
The procedure code for speech therapy that you will use most frequently is CPT 92507. This covers therapeutic procedures for speech, language, voice, or fluency. It is a 15-minute unit-based code, which means you bill in 15-minute increments. So a 30-minute session with a single modality gets billed as two units. A full hour gets four units. That part is straightforward enough. 92507 is the workhorse code. It is used for articulation therapy, language intervention, voice therapy, and fluency treatment. You stack it against the actual minutes you spend in direct one-on-one time with the patient. Not the group time. Not the admin time. Not the paperwork time. Just the hands-on minutes. Payers like Medicare and most commercial plans follow this rule, but they do not all follow it identically. Some Medicaid programs require the entire session to be individual. Some will deny a claim if the patient spent even three minutes in a concurrent group setting during that same visit. I had a claim denied once because I billed 92507 for 4 units after running a 45-minute session that included 5 minutes of manual LSVT voice exercises and 40 minutes of structured articulation drill. The payer's medical policy stated that 92507 could not be combined with LSVT-specific documentation unless it was billed on a separate day. The denial came through as a modifier issue. I appealed with a statement from the treating SLP explaining the clinical rationale, included the patient's progress notes, and resubmitted with a -59 modifier on the second line to indicate a distinct procedural service. It took 47 days to get paid, but it went through. That experience taught me to check payer-specific bulletins before assuming that combining modalities in one session is automatically fine.
Other Common Codes You Will Need
There are other codes that sit alongside 92507 in a typical practice. 92521 is aural rehabilitation for hearing impaired patients. 92523 is the diagnostic swallow evaluation. 92524 is the therapeutic swallowing exercise. 92607 covers language and speech processing devices like PECS or speech-generating equipment. 92609 is the everyday use assessment of those devices. If you are also doing speech-language pathology evaluations, 92522 covers feeding and swallowing dysfunction with instrumental assessment, though that one requires more documentation than most people expect. There is also 92597, which is a telehealth-specific code for speech-language pathology services delivered via real-time interactive audio and video. Medicare adopted this during the public health emergency and has continued it past the original expiration date, but not every private payer has matched that decision. I have seen practices bill 92597 exclusively for virtual sessions and then get reworked by at least two major regional plans that still require 92507 with a -95 modifier instead. Verify before you default to the telehealth code.
How Units Actually Get Counted In Practice
Unit calculation sounds simple but causes a lot of denials. Here is the practical rule: bill one unit per 15 minutes of direct patient contact. Round up if you go past the midpoint. A 23-minute session becomes two units because you crossed 22.5. A 22-minute session stays at one unit. Do not round down from 23. That is a common mistake that leads to underbilling, and the fix is tedious. When you run concurrent group therapy with two or more patients, the code changes. You bill 92507 with a modifier or use the group code 97129 for therapeutic activities, depending on what the payer accepts. Some plans split the time by patient. Others require you to prorate and only bill a fraction of a unit per patient. I stopped guessing and started keeping a simple spreadsheet that tracks time per patient per modality. It takes about 3 minutes to update after each session and prevents the kind of audit trail failure that makes credentialing reviews painful.
Get the Full Details

Documentation That Actually Holds Up
Every payer will ask for the same three things, regardless of which specific procedure code for speech therapy you submit. First, a clear statement of medical necessity. Second, a measurable goal with a baseline number. Third, a progress note showing what was done and how the patient responded. "Improved articulation" is not documentation. "Patient produced /r/ at 60% accuracy in syllables, up from 30% at baseline" is documentation. I learned this the hard way when a Medicare Advantage plan sent a routine audit request for 14 claims from the previous quarter. They picked one patient who had 92507 billed for 8 units over 8 weeks. The notes were generic. No numbers. No measurable benchmarks. They recouped the entire episode of care. I rewrote our template immediately to include pre- and post-session accuracy percentages for every target sound or skill. It adds about 20 seconds per note entry and eliminated a whole class of audit risk.
Modifiers That Matter
The modifiers you attach to your procedure code can make or break a claim. -25 is for a significant separately identifiable E/M service on the same day. Use it when a physician or SLP evaluates the patient separately before the therapy session. -59 indicates a distinct procedural service. -GP denotes therapy services under a physician-directed plan. -AE is for services by an audiology assistant. -KX is used when you are meeting the thresholds for medical necessity exceptions, often with Medicare. Modifiers are where most billing errors live. A -59 slapped onto 92507 without proper justification is almost guaranteed to get flagged. Payers have edit logic that looks for patterns. If you are appending -59 on more than a small percentage of your claims, an auditor is going to look closer. Use it when the service is genuinely separate, not as a catch-all.
What This System Does Not Handle Well
The CPT code set for speech therapy is not comprehensive. There is no specific code for cognitive-linguistic therapy for adult TBI patients under 92507's typical interpretation. There is no standalone code for augmentative and alternative communication training outside of 92607 and 92609. There is no pediatric-specific billing pathway that separates developmental language intervention from standard articulation work. You end up using 92507 for everything that does not fit a narrower code, which means your documentation has to carry more weight to justify the breadth of service. ICT-10 coding runs in parallel for many payers now, especially in European contexts and increasingly in US Medicaid programs. Make sure your coding team is tracking both CPT and ICD-10 simultaneously. A mismatch between the diagnosis code and the procedure code is one of the fastest ways to get a claim stuck in pendency. I have seen claims sit for 60 days because the ICD-10 code R47.0 (speech noise) was paired with a 92507 without an accompanying V code for the underlying cause. Adding the appropriate secondary diagnosis cleared it within a week. If you want the official code definitions, the American Speech-Language-Hearing Association publishes annual CPT updates, and CMS releases the Medicare Physician Fee Schedule each year with revised descriptors. Those are the primary sources to rely on rather than third-party summaries.
