Medical Terminologies 101
A Friendly Tour Through the Strange, Sprawling World of Medical Vocabularies
If you've ever wondered why getting a simple lab result from one hospital to another feels harder than it should, the answer is hiding in plain sight: medicine doesn't have a language. It has dozens. And they all talk past each other in slightly different dialects, owned by different organizations, updated on different calendars, and licensed under different rules.
This is the story of those vocabularies — what they're for, who runs them, and why the whole thing somehow works.
Why so many vocabularies?
Imagine you're a doctor. In a single patient visit, you might:
Note that the patient has type 2 diabetes (a diagnosis)
Order a hemoglobin A1c test (a lab observation)
Prescribe metformin 500 mg (a drug)
Perform a foot exam (a procedure)
Submit a bill to insurance for the visit
Each of those things lives in a different code system. Why? Because each one was originally invented to solve a different problem, by a different group of people, decades apart. Diagnosis codes came from public-health statisticians who wanted to count causes of death. Procedure codes came from physician societies who wanted standardized billing. Lab codes came from informaticians at a research institute. Drug codes came from the FDA's product registry. Nobody sat down at the beginning and designed a unified system, because there was no "beginning" — these things evolved over a century in different countries, different agencies, and different industries.
So instead of one vocabulary, healthcare ended up with what we have now: a layered ecosystem where each tool does one job pretty well, and a whole separate effort (mostly run by the U.S. National Library of Medicine) tries to map them all together.
Let's meet the cast.
The Big Four: vocabularies you'll see everywhere
SNOMED CT is the heavyweight champion of clinical terminology — the most comprehensive description of clinical reality that exists. It has about 360,000 concepts covering diseases, findings, body parts, organisms, substances, procedures, and observations. If a clinician can think it, SNOMED CT probably has a code for it. It's run by an international nonprofit (SNOMED International), and the U.S. National Library of Medicine distributes it free to American users. Under the hood it's not a flat list but a real ontology — concepts are formally defined in terms of other concepts, so a machine can actually reason about them.
ICD-10-CM is the U.S. diagnosis code system. Every time you see a healthcare bill or a discharge summary, the diagnoses on it are ICD-10-CM codes (the ones with letters and numbers like E11.9 for type 2 diabetes without complications). It's maintained by the CDC's National Center for Health Statistics, updated every October 1st, and required by HIPAA for every insurance claim in America. It descends from the World Health Organization's ICD-10, but heavily expanded — 70,000 codes versus the international ICD-10's 14,000.
LOINC identifies lab tests and clinical observations. When your blood is drawn and a result comes back, somewhere in the data pipeline that test was tagged with a LOINC code. It's run by the Regenstrief Institute in Indianapolis, completely free worldwide, and has grown into the de facto standard for lab data exchange. Every LOINC code is built from a six-part name (Component : Property : Time : System : Scale : Method) so the test is semantically self-describing.
RxNorm is the standard for clinical drugs. It's the bridge that lets one EHR's "Tylenol 500 mg tab" talk to another EHR's "acetaminophen 500 mg oral tablet." Run by the National Library of Medicine, RxNorm aggregates content from a bunch of proprietary drug databases into a unified graph where ingredients connect to dose forms connect to clinical drugs connect to brand names. It updates monthly and has a free, no-API-key REST endpoint called RxNav.
These four are the daily vocabulary of digital health.
The money layer
Healthcare runs on insurance claims, and claims run on a different family of codes.
CPT (Current Procedural Terminology) is what physicians use to bill for services. Office visits, surgeries, X-rays, vaccines — all CPT codes. It's owned by the American Medical Association, which is unusual: most healthcare standards are run by governments or nonprofits, but CPT is a real, copyright-protected, AMA-licensed product. Want to put CPT codes in your software? You pay the AMA. This single fact shapes a lot of the U.S. health-tech industry.
HCPCS Level II picks up where CPT leaves off — wheelchairs, drugs administered in clinics, ambulance rides, prosthetics. CMS runs it, it's free, and the codes start with letters like J (injectable drugs), E (durable medical equipment), and L (orthotics).
ICD-10-PCS is the inpatient procedure code system used by hospitals. Every code is exactly seven characters, with each character meaning something specific (body system, root operation, body part, approach, device, qualifier). You don't look up ICD-10-PCS codes so much as build them.
NDC (National Drug Code) is the FDA's product identifier for every drug on the U.S. market. It's a 10- or 11-digit number printed on every prescription bottle. Pharmacies bill in NDCs; clinicians prescribe in RxNorm; the bridge between them is, well, RxNorm.
MS-DRG and HCC are the heavy machinery of payment. MS-DRGs group hospital admissions into ~772 categories that determine how much Medicare pays for an inpatient stay. HCCs (Hierarchical Condition Categories) translate diagnoses into risk scores that determine how much Medicare pays health plans for covering sicker patients. Both are run by CMS and recalibrated every year — a quiet but enormous lever on the U.S. healthcare economy.
The connective tissue
If you've ever wondered how this whole tangle stays even slightly coherent, the answer is three integrating projects:
UMLS (the Unified Medical Language System) is the secret weapon of medical informatics. Run by the National Library of Medicine, it takes about 190 different vocabularies — SNOMED, ICD, LOINC, RxNorm, MeSH, MedDRA, gene ontologies, drug classes, you name it — and links concepts across all of them into ~3.45 million unified "concept unique identifiers." It's free with a license (you have to file an annual usage report), and it's the substrate behind almost every serious natural-language-processing or terminology-mapping product in healthcare.
FHIR (Fast Healthcare Interoperability Resources) is the modern data-exchange standard from HL7. Think of it as the REST API for healthcare — it defines the JSON shapes for things like Patients, Observations, Conditions, and MedicationRequests, plus a terminology service spec that lets servers answer questions like "expand this value set" or "translate this code to that code." Every certified U.S. EHR now exposes FHIR APIs, by federal mandate.
USCDI (United States Core Data for Interoperability) is the policy layer that says, in effect: "These are the data elements every certified EHR must be able to exchange, and here are the code systems they must use for each one." It's the closest thing the U.S. has to a national health-data minimum. New versions come out every July; drafts every January.
Together, UMLS handles meaning, FHIR handles transport, and USCDI handles policy. They're the load-bearing infrastructure underneath everything else.
The specialists
Beyond the generalists, each medical specialty has built its own vocabulary.
MedDRA is the language of drug safety. Every adverse event reported to the FDA, EMA, or another regulator is coded in MedDRA. It's run by the International Council for Harmonisation, distributed twice a year, and free for regulators and academics but a paid subscription for industry — pharma companies routinely budget for it.
NCI Thesaurus is the National Cancer Institute's reference ontology for cancer biology, drugs, and clinical research. It's openly licensed (Creative Commons), updated monthly, and used inside the FDA, NCI, and CDISC.
DSM-5-TR is the American Psychiatric Association's diagnostic manual for mental disorders. The criteria text is proprietary; the codes themselves are just ICD-10-CM codes, but the definitions of what each diagnosis means belong to the APA.
CDT is the American Dental Association's code set for dental procedures (the D-codes you see on a dental bill). Like CPT, it's a real licensed commercial product owned by a professional society.
ICD-O-3 is the WHO's specialized cancer code, pairing a topography code (where the tumor is) with a morphology code (what kind of cell it's made of). Tumor registries everywhere use it.
ATC is the World Health Organization's drug-class system, organized in five strict hierarchical levels from anatomical category down to specific substance. It's the global standard for drug-utilization research.
The genomics crew
Genetics has its own ecosystem, with its own surprisingly coherent group of vocabularies — partly because the genomics community was lucky enough to be young and open-source-friendly when it standardized.
HGNC (HUGO Gene Nomenclature Committee) is the official source of human gene names. When you read that a paper studied "BRCA1," that name was assigned by HGNC.
OMIM is the catalog of Mendelian genetic disorders, run by Johns Hopkins University. Each entry has a six-digit MIM number and decades of curated knowledge about a gene or syndrome.
HPO (Human Phenotype Ontology) is a standardized vocabulary for describing the signs and symptoms of genetic diseases — over 16,000 terms covering things like "ptosis" or "intellectual disability, mild." It's the backbone of modern rare-disease diagnostics.
MONDO is the unifying disease ontology — a community project that integrates OMIM, Orphanet, the Disease Ontology, NCI Thesaurus, and others using rigorous logical equivalence rules. It's quietly becoming the lingua franca for disease references in genomics.
ClinVar is NCBI's public archive of clinical interpretations of genetic variants. If a lab finds a mutation in a patient and classifies it as "pathogenic," they're supposed to deposit that finding in ClinVar.
All of these are free, openly licensed, and continuously updated — a refreshing contrast to the billing side of the world.
The supporting cast
A surprising amount of healthcare runs on tiny code lists that nobody ever talks about but everyone depends on.
CVX and MVX are the CDC's codes for vaccine products and vaccine manufacturers. Every immunization record in every state immunization registry uses them.
Place of Service (POS) codes are CMS's two-digit codes for where care was delivered (11 = office, 21 = inpatient hospital, 10 = patient's home via telehealth).
Modifiers are two-character suffixes on CPT and HCPCS codes that carry crucial nuance — "this was the left side," "this was a separately identifiable service," "the patient signed an advance beneficiary notice."
NPI Taxonomy codes identify a provider's specialty. They look like 207R00000X (internal medicine) and are managed by the National Uniform Claim Committee.
Revenue codes are four-digit codes on hospital bills identifying what kind of charge it is (pharmacy, ICU, operating room).
MeSH (Medical Subject Headings) is the National Library of Medicine's vocabulary for indexing biomedical literature. Every PubMed article is tagged with MeSH terms.
HL7 v2 is the venerable pipe-and-hat messaging format that, despite being almost 40 years old, still carries most of the data flowing between hospital systems today.
The international cousins
The rest of the world doesn't all use the U.S. system. The WHO publishes ICD-11, the next-generation diagnosis classification with native FHIR APIs and post-coordination — but the U.S. has not adopted it and probably won't for another five to ten years. ICPC (International Classification of Primary Care) is what many European primary-care doctors use. Read codes were the UK's primary-care vocabulary until the NHS migrated to SNOMED CT in 2018.
How it all fits together
Here's the surprising thing: this fragmented mess actually works, mostly, because of those integrating projects we mentioned. UMLS knits the vocabularies together at the concept level. FHIR moves the data around. USCDI tells everyone what's mandatory. Federal agencies divide up stewardship — CMS handles billing codes, CDC handles diagnosis and public health codes, NLM handles aggregation and drug terminology, FDA handles drug products. Private bodies (AMA, ADA, HL7, SNOMED International, Regenstrief) handle clinical content.
If you had to redesign the whole system from scratch today, you would not design this. But healthcare's vocabulary tower wasn't designed — it accreted. Each layer was added to solve a real problem at a particular moment, and now they all coexist, kept in rough alignment by an army of curators, mapping committees, and federal rulemakings.
What's coming
A few things are visibly changing the landscape:
FHIR is becoming universal. Federal rules now require certified EHRs and payers to expose FHIR APIs, including for prior authorization starting January 2027. This is creating a giant new market for terminology services.
AI is moving into medical coding. Vendors are combining language models with the rules embedded in HCCs, ICD-10-CM, and CPT to automate parts of clinical documentation and risk adjustment. CMS has explicitly said it'll use AI as a coder-support tool in audits.
Open vocabularies are gaining ground. MONDO, HPO, NCI Thesaurus, and LOINC are squeezing the space where proprietary tools used to dominate, especially in research.
ICD-11 is coming, slowly. The U.S. won't switch for years, but international research and global pharma are already adopting it.
Genomics is pulling clinical terminology into new shapes. Phenotype ontologies, variant interpretations, and rare-disease registries are forcing the older vocabularies to play nicer with structured biological data.
The takeaway
Medical vocabularies are weirder than they look. They're a layered, federated, partly-commercial, partly-public-goods ecosystem held together by national libraries, professional societies, and patient bureaucratic effort. There's no king of the hill, no single source of truth, and no plan to consolidate anytime soon. But once you see the layers — clinical reality, billing, interoperability, research, specialty pockets — the whole thing stops feeling like chaos and starts feeling like an ecosystem.
It's an ecosystem with quirks. The richest clinical ontology in the world (SNOMED CT) costs nothing in the U.S. but a small fortune in unrelated countries. The simplest two-digit code set (Place of Service) shapes billions of dollars in payments. A single AMA license fee can decide whether your startup's product is viable. And somewhere in Indianapolis, a small institute named after a German-Jewish refugee philanthropist quietly publishes the lab-test vocabulary that the entire planet's labs depend on.
Healthcare is messy. Its vocabularies are messy. But they're also one of the more impressive feats of distributed coordination in modern infrastructure — and worth understanding if you want to build anything serious in this space.
