TFTechflow
← Back to blog
Medical Coding6 min read

ICD-10 vs CPT Codes: What's the Difference and Why It Matters

Understand the key differences between ICD-10 diagnosis codes and CPT procedure codes, how they work together on medical claims, and why getting both right is critical for reimbursement.

If you work in healthcare administration, you've heard "ICD-10" and "CPT" a thousand times. But many practice managers and even new coders confuse what each code set does and how they interact on a claim. Getting this relationship wrong is one of the most common reasons claims get denied.

ICD-10: the "why" of the visit

ICD-10 codes answer the question: Why did the patient need care? They describe diagnoses, symptoms, and conditions.

The full name is ICD-10-CM (Clinical Modification), and the system contains over 70,000 codes organized in a hierarchical structure. The first three characters identify the category, and additional characters provide specificity.

Example breakdown of M54.5 (Low back pain):

  • M — Diseases of the musculoskeletal system
  • M54 — Dorsalgia (back pain)
  • M54.5 — Low back pain, specifically
  • ICD-10 codes are required on every claim submitted to Medicare, Medicaid, and commercial payers. They establish medical necessity — the justification for why the service was needed.

    CPT: the "what" of the visit

    CPT codes answer: What did the provider do? They describe procedures, services, and treatments.

    CPT codes are five-digit numeric codes maintained by the AMA. They're organized into three categories:

  • Category I — Standard procedures and services (the vast majority of codes used)
  • Category II — Performance measurement tracking
  • Category III — Emerging technology and experimental procedures
  • Example: A patient visits their doctor for persistent knee pain.

  • ICD-10: M25.561 (Pain in right knee)
  • CPT: 99214 (Office visit, established patient, moderate complexity)
  • CPT: 73560 (X-ray of knee, 1-2 views)
  • How they work together on a claim

    Every line item on a medical claim pairs at least one CPT code with one or more ICD-10 codes. The diagnosis code must medically justify the procedure code. This is called the diagnosis-procedure linkage.

    Claim denied? Check the linkage first.

    The most common denial scenario: the CPT code is correct, the ICD-10 code is correct, but they don't logically connect. If you bill for a chest X-ray (CPT 71046) but the only diagnosis is ankle pain (M25.571), the payer will deny it because the diagnosis doesn't support the procedure.

    Key differences at a glance

    FeatureICD-10CPT
    PurposeDescribes diagnosesDescribes procedures
    Maintained byWHO / CDCAMA
    FormatAlphanumeric, 3-7 charactersNumeric, 5 digits
    Total codes~70,000+~10,000+
    Update cycleOctober 1 annuallyJanuary 1 annually
    Required on claimsYesYes

    Common mistakes with code pairing

    1. Using unspecified codes when specificity is available

    Payers increasingly reject claims with unspecified diagnosis codes (those ending in .9) when more specific codes exist. If the documentation says "Type 2 diabetes with diabetic nephropathy," code E11.21 — not the unspecified E11.9.

    2. Missing laterality

    ICD-10 often requires specifying left, right, or bilateral. Coding M25.56 (pain in knee, unspecified side) when the note clearly says "right knee" will trigger a denial or audit flag.

    3. Not updating codes annually

    Both systems update every year. ICD-10 updates take effect October 1, while CPT updates take effect January 1. Using a deleted or replaced code results in automatic rejection.

    4. Overcoding the visit level

    Billing a 99215 (high complexity visit) when the documentation only supports a 99213 (low complexity) is a compliance risk. The documentation must support the code — not the other way around.

    Practical tips for getting it right

    1. Code from the documentation, not the encounter form. The physician's notes are the legal record. Pre-populated encounter forms often miss specificity.
    2. Verify medical necessity for every procedure. Before submitting, ask: does this diagnosis logically require this procedure?
    3. Stay current on annual updates. Subscribe to CMS and AMA update notifications, or work with a coding partner who tracks changes for you.
    4. Audit regularly. Even a small monthly audit of 10-20 charts can catch patterns before they become systemic problems.
    5. Invest in coder education. Specialty-specific coding requires ongoing training. General coding knowledge isn't enough for complex specialties like oncology, cardiology, or pain management.

    Bottom line

    ICD-10 and CPT codes are two halves of the same reimbursement equation. The diagnosis justifies the service, and the service determines the payment. When both are accurate and properly linked, claims get paid faster with fewer denials. When they're not, you're leaving money on the table and increasing your audit risk.

    Need help improving your coding accuracy? Schedule a consultation and we'll review your claim data to identify specific improvement opportunities.

    ICD-10CPT codesmedical billingclaim denialscoding basics

    Need help with your practice's billing or technology?

    Schedule a free consultation and we'll review your specific situation.

    Book a consultation

    Related articles