How to pick the right STC (when there isn’t one)
Jul 21, 2025
Healthcare
Most payers expect a Service Type Code (STC) in eligibility requests. It tells the payer what kind of benefits you want back – mental health, urgent care, vision, and so on.
But not every healthcare service maps cleanly to an STC.
Take medical nutrition or ABA therapy. There’s no obvious STC. Which one should you use?
The answer depends on the payer. The only way to know which STCs a payer supports – and return the benefits you need – is to test them.
This guide shows how to test for STC support and includes a cheat sheet of STCs to try for services that don't have a clear match. It also gives a quick primer on how STCs work in 270/271 eligibility checks.
Just want the cheat sheet? Scroll to the bottom.
Note: This guide is for medical STCs only. It doesn't cover dental STCs or dental-only payers.
What’s an STC?
A Service Type Code (STC) is a two-character code that groups similar healthcare services into standard categories. For example:
47
– HospitalAL
– VisionUC
– Urgent care
In eligibility requests, STCs tell the payer what type of benefits you're asking about. In responses, they indicate what type of service each returned benefit entry relates to.
The standard STC list
HIPAA standardizes the list of valid STCs in X12 version 005010. Medical payers should only send these STCs in responses – but they aren’t required to support every code in the list.
For the full set of X12 005010 STCs, see Service Type Codes in the Stedi docs.
Note: X12 maintains a broader Service Type Codes list for later X12 versions. X12’s list includes codes that aren’t part of 005010 and shouldn’t be used by medical payers.
STC 30 - The fallback
If you only send STC 30
(Health Benefit Plan Coverage) in the eligibility request and the patient’s plan covers it, HIPAA requires the payer to return benefits for the following STCs:
STC | Description |
| Medical Care |
| Chiropractic |
| Hospital |
| Emergency Services |
| Pharmacy |
| Professional (Physician) Visit - Office |
| Vision (Optometry) |
| Mental Health |
| Urgent Care |
The payer may include benefits for other STCs as well.
How to use STCs in eligibility requests
If you’re using Stedi’s JSON-based Eligibility APIs, include an STC in the request’s encounter.serviceTypeCodes
array:
If you don’t include an STC in the request, Stedi defaults to 30
(Health Benefit Plan Coverage).
The array supports multiple STCs, but payer support varies. Unless you’ve tested a payer specifically, only send one STC per request.
To learn how to test for multi-STC support, see How to avoid eligibility check errors.
How STCs show up in eligibility responses
Most benefit details are in the benefitsInformation
object array. Each object in the array includes a serviceTypeCodes
field:
Responses may include entries for STCs you didn't request. And you'll typically see the same STC repeated across multiple benefit entries. That's normal – each entry covers a different aspect of benefits, like coverage status, co-pays, or deductibles.
Payers also use multiple entries to describe different subsets of services within an STC. For example, the MH
STC might have one entry for standard therapy and another that notes coverage for other treatments. Descriptions typically appear in entries with code: "1"
(Active Coverage) or code: "D"
(Benefit Description), but they can appear in other entries as well. To get the full picture of benefits for a service, check all entries with the same serviceTypeCodes
value.
For more information on interpreting eligibility responses, see How to read a 271 eligibility response in plain English.
Picking an STC
When sending an eligibility request, use the most specific STC you can. It narrows the response to the benefits you care about and reduces guesswork. For example, if you send a request for STC 33
(chiropractic) instead of STC 30
, you’ll get specific benefits related to chiropractic care.
However, some services, like remote therapeutic monitoring (RTM) or speech therapy, don’t map cleanly to well-supported STCs.
In these cases, your best option is to systematically test the STCs that seem most appropriate and compare the responses to see if you get the benefits information you need.
How to test for STC support
Send a baseline eligibility request.
Submit an eligibility check to the payer using STC30
(Health Benefit Plan Coverage). This gives you a fallback response to compare against.Test your specific STC.
Send a second request to the payer for the same patient with the STC that best matches the benefit type you’re targeting. Use the STCs in the cheat sheet as a starting point.Compare the specific STC response to the baseline response.
If responses change based on the STC, the payer likely supports the specific STC.
If responses are identical, the payer may not support the specific STC – or the patient’s plan might not cover that service. When that happens, medical payers are required to return a fallback response using STC 30
.
Example: Testing STC support for ABA therapy
Start with a baseline eligibility request using STC 30
(Health Benefit Plan Coverage):
Then try a more specific STC like BD
(mental health):
If the BD
response includes benefitsInformation
objects with a serviceTypeCodes
field value of BD
, the payer supports STC BD
. Use this response if it includes the benefits information you need.
If the responses are identical, the payer or plan likely doesn't support the BD
STC. You continue testing other related STCs, such as MH
(Mental Health).
If you've already tried other STCs and no others seem appropriate, use the response for STC 30
. If STC 30
doesn't include the benefits information you need, you may need to call the payer or visit the payer portal.
Tip: Automate your STC tests
To speed up testing, script your requests. Loop through candidate STCs and compare the responses against the baseline STC 30
response, using the same patient. Save the benefitsInformation
array for each STC and diff them. This helps you spot what changes, if anything, between requests.
The STC cheat sheet
If you’re testing STC support for a service without a clear mapping, use the following table as a starting point. This list isn’t exhaustive and it isn’t payer-specific, but it’s a starting point for what we’ve seen work in production.
Try the STCs in the order shown – from the most specific to more general alternatives.
For a complete list of STCs, see Service Type Codes in the Stedi docs. For help mapping procedure codes to STCs, see How to map procedure codes to STCs.
Type of Care | STCs to Try |
ABA Therapy |
|
Acupuncture |
|
Chemotherapy |
|
Chemotherapy, IV push |
|
Chemotherapy, additional infusion |
|
Chronic Care Management (CCM) services |
|
Dermatology |
|
Durable Medical Equipment |
|
IV push |
|
IV Therapy/Infusion |
|
Maternity (professional) |
|
Medical nutrition therapy |
|
Medical nutrition follow-up |
|
Mental health |
|
Neurology |
|
Newborn/facility |
|
Occupational Therapy |
|
Physical therapy |
|
Podiatry |
|
Primary care |
|
Psychiatry |
|
Psychological testing evaluation |
|
Psychotherapy |
|
Rehabilitation |
|
Remote Therapeutic Monitoring (RTM) services |
|
Skilled Nursing |
|
Speech Therapy |
|
Substance Abuse/Addiction |
|
Telehealth |
|
Transcranial magnetic stimulation |
|
Share
Automate healthcare transactions with developer-friendly APIs that support thousands of payers. Contact us to learn more and speak to the team.