Quick answer: SLPs bill from a small core set of CPT codes — 92507 (individual treatment) and 92508 (group) for therapy, 92521–92524 for evaluations, 92526 for swallowing and feeding, and 92607–92609 for AAC. Most are untimed (one unit per session, regardless of length); the AAC evaluation codes and the cognitive codes (96105, 96125, 97129/97130) are timed. Choose the code by what you actually assessed or treated, append GN on every Medicare Part B claim (and KX once the patient crosses the 2026 $2,480 therapy threshold), and make sure the ICD-10 matches the service. The comparison table and per-code guides below cover each one in depth.
Picture this: you submit a claim for a session that happened, that you documented, that genuinely helped your patient. It comes back denied. Turns out a modifier was missing. Or you used the wrong evaluation code. Or your note didn't spell out clearly enough why a licensed SLP (and not a tech or assistant) was needed for that session.
Speech therapy CPT codes aren't the most exciting part of clinical practice. But getting them right is what keeps the clinic running. SLP insurance billing errors are common, they're costly, and most of them are preventable with a solid reference and a consistent workflow. This guide covers the codes you'll use most, how to choose between them, which modifiers you can't skip, and what your documentation needs to say to back up every claim you file.
Every Code Has Its Own In-Depth Guide
This page is the hub for ClinicNote's speech therapy CPT code library. Use it for the big picture, then drop into the detailed guide for whichever code you're billing:
- CPT code 92507 — individual speech, language, voice, and communication treatment (the most-billed SLP code).
- CPT code 92508 — group treatment for two or more patients.
- CPT 92521, 92522, 92523, and 92524 — the four SLP evaluation codes (fluency, speech sound, language, voice).
- Speech therapy evaluation CPT codes — the full 13-code evaluation set, including swallowing, AAC, aphasia, and cognitive assessment.
- The CPT code for feeding therapy (92526) — swallowing and oral-function-for-feeding treatment.
- CPT 92607, 92608, and 92609 — AAC device evaluation and speech-generating device therapy.
The Most Common Speech Therapy CPT Codes (at a Glance)
Most speech pathology billing software organizes these by category, which is the most practical way to think about them. Here's how they break down.
Treatment codes (untimed, billed once per session):
- 92507 — Individual treatment for speech, language, voice, communication, and/or auditory processing disorders. This is the most frequently billed code in SLP, covering the majority of what you do in a standard session.
- 92508 — Group treatment (two or more patients in the same session).
- 92526 — Treatment of swallowing dysfunction or oral function for feeding.
Evaluation codes (scope-specific, covered in detail below):
- 92521 — Fluency evaluation (stuttering, cluttering).
- 92522 — Speech sound production only (articulation, phonology).
- 92523 — Speech sound production plus language comprehension and expression.
- 92524 — Behavioral and qualitative speech analysis (typically used for voice).
AAC codes:
- 92605 / 92606 — Evaluation and therapeutic service for non-speech AAC devices (patients under 7).
- 92607 / 92608 / 92609 — Evaluation (first hour / each additional 30 min) and therapeutic service for AAC devices with speech.
Cognitive-communication codes (timed, billed in units):
- 97129 — Therapeutic interventions for cognitive function deficits, first 15 minutes.
- 97130 — Each additional 15 minutes.
2025 Medicare caregiver training G-codes (new this year):1
- G0541 — First 30 minutes.
- G0542 — Each additional 30 minutes.
- G0543 — Group caregiver training.
One distinction worth knowing: most SLP codes are untimed, meaning you bill them once per session regardless of how long the session runs. The cognitive-communication codes (97129/97130) and the new caregiver G-codes are time-based and billed in units. Confusing untimed codes for timed ones (or vice versa) is one of the more common underbilling mistakes, especially for clinicians used to PT/OT billing conventions.
The Complete SLP CPT Code Cheat Sheet
Bookmark this one. Here are the codes SLPs bill most often, laid out across the six attributes that actually decide whether a claim gets paid: what the code covers, whether it's timed or untimed, when to reach for it, what the note has to prove, and where the denial risk hides. (The table scrolls sideways on narrow screens.)
| Code | Description | Timed / Untimed | When to use | Documentation needed | Denial risk |
|---|---|---|---|---|---|
| 92507 | Individual treatment — speech, language, voice, communication, auditory processing | Untimed — 1 unit/session | One clinician treating one patient against a plan of care | Skilled intervention, patient response, progress to measurable goals; GN modifier; ICD-10 match | High — missing GN, CPT/ICD-10 mismatch, eval + treatment same day |
| 92508 | Group treatment, two or more patients | Untimed — 1 unit/session | Two or more patients treated together in one session | Group justification plus each patient's individual goals and progress | High — billed per patient, coded as 92507, missing group rationale |
| 92521 | Evaluation of fluency (stuttering, cluttering) | Untimed — 1 unit/eval | Fluency was the entire scope of the evaluation | Disfluency counts, severity score (e.g., SSI-4), functional impact | Medium — bundling when paired with other same-day evals |
| 92522 | Evaluation of speech sound production (articulation, phonology, motor speech) | Untimed — 1 unit/eval | Speech sound assessed, no language battery administered | Speech sound inventory, error patterns, stimulability | High — 92522/92523 bundling |
| 92523 | Speech sound production plus language comprehension and expression | Untimed — 1 unit/eval | Both speech sound and language were formally assessed | Speech sound findings plus standardized language scores | High — cannot bill with 92522 same day |
| 92524 | Behavioral and qualitative analysis of voice and resonance | Untimed — 1 unit/eval | Behavioral voice/resonance evaluation (not instrumental) | Perceptual rating (e.g., CAPE-V), pitch/loudness, stimulability | Medium — confused with instrumental voice codes |
| 92526 | Treatment of swallowing dysfunction / oral function for feeding | Untimed — 1 unit/session | Dysphagia or feeding therapy against a plan of care | Consistencies trialed, FOIS or severity measure, skilled techniques, correct feeding ICD-10 | High — wrong ICD-10, treatment vs. 92610 evaluation mix-up |
| 92607 | AAC device evaluation, first hour, face-to-face | Timed — first 60 min | Assessing candidacy for a speech-generating device | Logged face-to-face minutes, modalities trialed, candidacy reasoning | High — minutes not time-stamped |
| 92608 | AAC evaluation, each additional 30 minutes | Timed — per 30-min unit | Add-on beyond the first hour of 92607 | Time-stamps supporting each additional unit | High — billed without 92607 on the claim |
| 92609 | Therapeutic services for a speech-generating device (programming, modification) | Untimed — 1 unit/session | Ongoing AAC therapy after the device is in hand | Programming changes, AAC competencies targeted, plan-of-care link | High — billed for evaluation work |
| 92610 | Clinical (bedside) evaluation of oral and pharyngeal swallowing | Untimed — 1 unit/eval | Clinical dysphagia evaluation, any setting | Oral-pharyngeal findings, bolus consistency trials | Medium — confused with 92526 treatment |
| 96105 | Assessment of aphasia with interpretation and report | Timed — per hour (incl. scoring/report) | Standardized aphasia battery (e.g., BDAE) | Test named and scored; face-to-face plus scoring/report time | Medium — untimed assumptions leave units unbilled |
| 96125 | Standardized cognitive performance testing | Timed — per hour (incl. scoring/report) | Standardized cognitive battery (e.g., RIPA) | Test named and scored; time logged at charting | Medium — undercoding, missed report time |
| 97129 / 97130 | Cognitive function intervention — first 15 min / each additional 15 | Timed — 15-min units | Cognitive-communication treatment (payer permitting) | Actual treatment minutes, cognitive targets, response | High — payer variation, double-billing with 92507 |
A caveat on 97129 / 97130. These cognitive-communication codes are the messiest ones in the SLP set. They replaced the older 97127 in 2020, they're timed (billed in 15-minute units), and coverage varies more than almost any other code you'll file. Some payers expect cognitive-communication treatment under an SLP plan of care to be billed as 92507 instead, while others require 97129/97130 — and Medicare has its own rules about which discipline can bill them and when they're separately payable. Two things to nail down before you file: confirm with the specific payer whether they want 92507 or 97129/97130 for cognitive-communication treatment, and never bill 97129/97130 alongside 92507 for the same cognitive work in the same session — that's a double-billing flag. When in doubt, verify the payer's policy in writing.
Treatment vs. Evaluation Codes
Every code in the table above is one or the other, and the distinction drives a rule that catches a lot of clinicians: don't bill an evaluation code and a treatment code for the same patient on the same date of service.2
- Evaluation codes (92521–92524, 92607/92608, 92610, 96105, 96125) capture assessment: you're measuring, testing, and forming a clinical picture. These are the codes you bill at an initial visit or a formal reassessment.
- Treatment codes (92507, 92508, 92526, 92609, 97129/97130) capture intervention: you're delivering skilled therapy against an established plan of care.
The most common mistake is filing both on day one — evaluating the patient and then delivering a "first treatment" in the same visit. Most payers will deny one of the two, and billing them together is a routine audit flag. There are narrow, payer-specific exceptions, but if you need to bill an eval and treatment on the same date, document the clinical rationale explicitly and confirm the exception with that payer before you file.
Timed vs. Untimed Codes
This is the distinction that quietly costs clinics money, because getting it wrong usually means underbilling rather than a denial — which is easy to never notice.
- Untimed codes (92507, 92508, 92521–92524, 92526, 92609, 92610) are billed once per session, no matter how long the session runs. A 30-minute 92507 and a 60-minute 92507 are billed identically: one unit.
- Timed codes (92607/92608, 96105, 96125, 97129/97130) are billed in units tied to time. 92607 covers the first hour of AAC evaluation and 92608 adds each additional 30 minutes; 96105 and 96125 are billed per hour; 97129 covers the first 15 minutes of cognitive intervention and 97130 each additional 15.
For timed codes, the CMS "8-minute rule" governs how many units you can bill: you need at least 8 minutes into a unit's time increment to charge for it. And your documentation has to record actual treatment minutes — total session time isn't enough. SLPs who trained on PT/OT conventions sometimes assume everything is timed and split a single untimed session into units; SLPs who assume everything is untimed leave legitimate units on the table for AAC evals and cognitive work. Knowing which bucket each code lives in is the fix, and it's exactly what the cheat sheet above is for.
CPT Code 92507: The Code You'll Use Most
92507 covers individual treatment for speech, language, voice, communication, and auditory processing disorders. If you're seeing patients in a standard outpatient or clinic setting, this is the code you're filing for almost every treatment session.
It's untimed. Bill it once, regardless of whether the session was 30 minutes or 60 minutes.
What your documentation needs to support: the treatment plan, current goals, objective progress data (accuracy percentages, number of trials, the cue levels you used), and a clear statement of why this session required skilled SLP intervention. Not just what you did, but why it required you specifically.
One rule you can't ignore: don't bill 92507 on the same date as any evaluation code (92521 through 92524).2 Billing evaluation and treatment on the same day is a common audit flag. There are narrow exceptions depending on the payer, but if you need to do it, document the clinical rationale explicitly and confirm the rule with that specific payer before you file.
As for 2025 Medicare reimbursement rates for 92507, those shift annually with the Medicare Physician Fee Schedule, so check the CMS fee schedule for current figures rather than relying on any number you find published in an article.
Choosing the Right Evaluation Code
This is where a lot of SLPs run into trouble, and it makes sense: four evaluation codes with overlapping names sounds like a recipe for confusion. But the rule is actually straightforward once you internalize it.
The code is determined by what you actually assessed, not by what the patient presented with.
Here's how they break down:
- 92521 — You assessed fluency only. Stuttering, cluttering. Nothing else.
- 92522 — You assessed speech sound production (articulation, phonology) but did not assess language comprehension or expression.
- 92523 — You assessed both speech sound production and language comprehension/expression. This is the combined code.
- 92524 — You conducted a behavioral or qualitative analysis of speech. Typically used for voice evaluations (quality, pitch, resonance, loudness).
The most common mistake: billing 92523 for every evaluation because it sounds the most comprehensive. But if you only assessed fluency, that's 92521. Billing 92523 when you didn't assess both components is overbilling, even if it's unintentional.
One modifier worth knowing here: Modifier 52 (Reduced Services). If you started a 92523 evaluation but only completed part of it (say, you assessed language but ran out of time for speech sound production), append Modifier 52 to signal that the service was reduced. Don't bill the full code.
Modifiers You Can't Skip
Modifiers are two-character additions to CPT codes that tell payers something specific about how the service was delivered. Missing the wrong modifier is one of the top causes of SLP claim denials.
GN modifier — Required on all Medicare Part B SLP claims. It indicates that services were provided under a speech-language pathology plan of care.2 Many commercial payers have adopted this requirement too, though policies vary. If you forget GN on a Medicare claim, it comes back denied.
KX modifier — Required when a patient's therapy charges exceed the annual threshold ($2,410 for 2025).1 The KX modifier tells Medicare that services beyond the cap are medically necessary. Without it, claims above the threshold are automatically denied.
GP modifier — Required when SLP services are provided under a physical therapy plan of care. This comes up in co-treatment situations and is easy to mix up with GN. Applying the wrong one means a denial.
Telehealth modifiers — If you're billing telehealth services, Modifier 95 is used for synchronous telemedicine and GT for interactive audio-video. And here's a 2025 update that tripped up a lot of providers: telehealth CPT codes 99441 through 99443 were deleted as of January 1, 2025, and replaced with new codes (98008 through 98015 for audio-only visits).1 If you haven't updated your billing workflows for telehealth since last year, check your codes before your next filing.
The practical takeaway: modifier requirements vary by payer. Medicare has the baseline rules, and commercial payers often add their own layer on top. A payer-specific reference sheet built into your billing workflow saves a lot of back-and-forth.
The Documentation Behind the Claim
The CPT code is only as defensible as the note supporting it. When a payer audits a claim, they're looking at your documentation to answer three questions:
1. Does the diagnosis code match the service billed? If you're billing 92507 (treatment) but the ICD-10 code doesn't reflect a diagnosed speech or language disorder, that's a mismatch. The diagnosis needs to exist in the record, not just in your clinical impression.
2. Does the note justify skilled SLP intervention? This is the one that trips people up most often. Payers want to see that the services you provided required a licensed speech-language pathologist, not a paraprofessional or a caregiver following a home program. Your soap note needs to document the clinical reasoning, the adjustments you made in real time, and the specialized judgment that drove the session.
3. Is progress being tracked over time? A patient with identical accuracy percentages, identical cue levels, and identical goals across 12 consecutive sessions is going to raise questions. Document progress, or document the clinical reasoning for a plateau. Both are defensible. Neither is silence.
Here's a quick comparison of what payers see and how they respond:
Weak: "Patient worked on /r/ sounds. Making good progress."
Strong: "Patient produced /r/ in initial position of CVC words with 70% accuracy (14/20 trials) given moderate verbal cues, up from 55% last session. Continued skilled SLP services indicated given ongoing phonological process errors affecting conversational intelligibility."
A good test: hand your note to someone who has never met your patient and ask if they could reconstruct what happened, why an SLP was needed, and whether the patient improved. If they can, the note will survive an audit. If they can't, it probably won't.
Billing in University Clinics: What's Different
University speech clinics operate under a set of billing rules that don't always get covered in clinical training, which means a lot of supervisors learn them on the job.
The most important one: Medicare does not reimburse services provided by SLP assistants, regardless of supervision level.3 Students supervised in a clinical training program are treated by Medicare as unlicensed providers. For Medicare billing purposes, the supervising SLP is the rendering provider, and their NPI goes on the claim.
Clinical Fellows (CFYs) have a specific situation under Medicare. They must bill under their supervising SLP's NPI, and supervision requirements vary by state and individual payer policies. If you supervise CFYs, confirm your state's rules and your payer contracts before the first claim goes out.
There's also a teaching angle here that often gets overlooked. Clinical programs that give students real exposure to CPT code workflows before graduation are setting them up for a much smoother first year in practice. The difference between a student who has practiced using billing codes in a real EMR versus one who has only seen them in a textbook is significant. Supervisors who want their students to actually be ready for private practice billing need to train them in systems that reflect how real billing works.
If you're evaluating EMR options for a university clinic, slp private practice software features matter even in an academic context, because your students will eventually work in private practice.
Frequently Asked Questions
What are the most common speech therapy CPT codes?
The codes SLPs bill most are 92507 (individual treatment), 92508 (group treatment), 92521 through 92524 (the four evaluation codes), 92526 (swallowing and feeding therapy), and 92607 through 92609 (AAC evaluation and therapy). 92507 is the single most-billed SLP code, covering the majority of standard treatment sessions.
Are speech therapy CPT codes timed or untimed?
Most are untimed, meaning you bill one unit per session no matter how long it runs — that includes 92507, 92508, 92521 through 92524, 92526, 92609, and 92610. The exceptions are timed: the AAC evaluation codes (92607/92608), the aphasia and cognitive assessment codes (96105, 96125), and the cognitive intervention codes (97129/97130), which are billed in time-based units. Confusing the two is a common underbilling mistake.
Can an SLP bill an evaluation and a treatment code on the same day?
Generally no. Medicare and most payers deny an evaluation code (92521 through 92524) billed alongside a treatment code like 92507 for the same patient on the same date of service. There are narrow, payer-specific exceptions that require Modifier 59 and documentation supporting two genuinely distinct encounters — confirm with the specific payer before filing.
What modifier is required on Medicare speech therapy claims?
The GN modifier is required on every Medicare Part B SLP claim; it identifies the service as delivered under a speech-language pathology plan of care. Forget it and the claim is denied at intake. Once the patient's cumulative therapy charges cross the annual threshold, the KX modifier is also required.
What is the 2026 therapy threshold for speech therapy?
The 2026 threshold is $2,480 combined for physical therapy and speech-language pathology services per beneficiary. Once a patient's cumulative spend crosses that line, every subsequent claim needs the KX modifier to confirm continued medical necessity.
Can students or SLP assistants bill CPT codes?
Not independently under Medicare. Student clinicians and SLP assistants are treated as unlicensed providers, so the supervising SLP is the rendering provider and their NPI goes on the claim. Clinical Fellows bill under their supervising SLP's NPI, with supervision requirements that vary by state and payer.
Getting Paid for the Work You're Already Doing
Speech therapy CPT codes aren't just a compliance requirement. They're the mechanism by which your clinic gets reimbursed for care that's already been delivered. Getting them right, every time, is a clinical operations skill that belongs in every SLP's toolkit, not just the billing staff's.
If you take one thing away from this: document more than you think you need to. A claim can't be denied for a note that clearly proves what happened, why it required a licensed SLP, and what changed because of it.
Want billing that connects directly to your documentation?
ClinicNote integrates diagnosis codes and private practice billing directly into the documentation workflow, so the paper trail builds as you work. That means fewer manual hand-offs between your notes and your claims, and fewer chances for a modifier or code mismatch to slip through. Over 117 speech clinics are already using ClinicNote. See how it works for speech therapy clinics.
Sources
- https://www.cms.gov/medicare-coverage-database/view/article.aspx?articleID=54111
- https://www.asha.org/practice/reimbursement/medicare/slp_coding_rules/
- https://www.asha.org/practice/reimbursement/private-plans/php_faqs_slp/
- https://www.webpt.com/blog/5-things-every-slp-should-know-about-billing-for-speech-therapy
- https://www.medbridge.com/blog/slp-cpt-codes-how-to-optimize-your-billing-for-success

