Pabau Engage inbox

Pabau Engage is here: every patient conversation in one inbox.

Learn more
CPT Code

CPT code 86376 – Microsomal (anti-TPO) antibody test


Code Definition

86376 is the CPT code for a microsomal antibody test (for example, thyroid peroxidase or liver-kidney microsomal), reported per antibody. In most practices, it's the anti-TPO test ordered to look for Hashimoto's thyroiditis or another autoimmune thyroid condition.

Two details decide whether the claim pays. Only the lab that runs the assay bills 86376, and the claim needs a diagnosis that shows why the test was ordered. Get those right and the code pays from Medicare's Clinical Laboratory Fee Schedule. Below, you'll find the ICD-10 pairings, look-alike codes, denial fixes and a pre-submission checklist.

Section
80047-89398 Pathology and laboratory
Subsection
86000-86849 Immunology
CLIA complexity
Moderate complexity on automated systems, not CLIA-waived
Billable
No
Code also known as
anti-TPO test, microsomal antibody test, TPO antibody test, thyroperoxidase antibody test
Save time. Improve accuracy. Get paid faster.
Automate coding with Pabau

Let Pabau's smart automation suggest the right codes, reduce claim denials, and keep your practice compliant—effortlessly.

  • AI-powered code suggestions
  • Real-time compliance checks
  • Faster claims, fewer denials
Why practices choose Pabau
Save hours every week

Automate repetitive tasks and focus on what matters most—your patients.

Improve accuracy

Reduce coding errors and ensure compliance with the latest regulations.

Get paid faster

Clean claims, fewer denials, and faster reimbursements.

Grow with confidence

Powerful insights and reporting to help your practice thrive.

HIPAA compliant SOC 2 certified GDPR-compliant Trusted by 4,000+ clinics worldwide

Key takeaways

Key takeaways

CPT 86376 reports a microsomal antibody test, most often anti-TPO, and it’s billed once per antibody tested.

Only the lab that performs the assay bills 86376, so a practice that sends blood out bills 36415 for the draw instead.

Code what the chart confirms: a raised TSH supports R94.6, while E06.3 needs a documented autoimmune thyroiditis diagnosis.

CO-50 and CO-11 point to the diagnosis, while CO-4 flags a modifier problem rather than a wrong code.

Medicare pays 86376 from the Clinical Laboratory Fee Schedule, so check the current CMS file instead of quoting a remembered figure.

CPT code 86376 covers microsomal antibodies, one unit per antibody

CPT code 86376 is the procedure code for a microsomal antibody test. The official descriptor reads “Microsomal antibody (eg, thyroid or liver-kidney), each.” It sits in the 86000-86849 immunology range of the AMA CPT code set.

In practice, that means two antibodies. Anti-TPO (thyroid peroxidase) antibodies point to autoimmune thyroid disease, such as Hashimoto’s thyroiditis. Anti-LKM (liver-kidney microsomal) antibodies help diagnose type 2 autoimmune hepatitis. The word “each” matters here. A lab that runs both antibodies reports two units.

The test runs on serum from a routine blood draw. Most labs use an automated immunoassay and report a quantitative result in IU/mL. A qualitative result uses the same code.

One naming quirk still trips billers up. “Microsomal antibody” is the older name, and some requisitions and payer policies still print it. Clinicians usually say “anti-TPO” or “TPO antibody.” For thyroid testing, all three names lead to 86376.

What 86376 includes, and what needs its own code

Think of 86376 as one antibody, one unit. The table shows where its scope ends, because that edge is where unbundling errors and missed charges start.

ItemIncluded in 86376Excluded (use separate code)
Analyte detectedMicrosomal antibodies, typically anti-TPO; anti-LKM is reported here tooThyroglobulin antibody (CPT 86800), TSH receptor antibody and TSI (separate codes)
UnitsOne unit per microsomal antibody performedOther autoantibodies, such as anti-CCP (CPT 86200)
Result typeQualitative or quantitative, from serumNo separate code for a quantitative result
SpecimenSerum from venipunctureThe blood draw itself, reported as CPT 36415
Workup contextOften ordered with TSH (CPT 84443) and free T4 (CPT 84439)Those tests are coded on their own lines; check payer-specific bundling policy

The ICD-10 code you pair with 86376 decides medical necessity

Payers want a diagnosis that explains why anyone needed the antibody result. A specific code tells that story faster than an unspecified one. These are the pairings billers reach for most often, but always check the local coverage determination for your jurisdiction.

ICD-10-CM codeDescriptionClinical context
E06.3Autoimmune thyroiditisConfirmed Hashimoto’s thyroiditis, for example when monitoring
E05.00Thyrotoxicosis with diffuse goiter without thyrotoxic crisis or stormGraves’ disease workup, where anti-TPO is raised in a subset of patients
E03.9Hypothyroidism, unspecifiedHypothyroidism under investigation for an autoimmune cause; some MACs want more specificity
E02Subclinical iodine-deficiency hypothyroidismAnti-TPO ordered to rule out an autoimmune cause
R94.6Abnormal results of thyroid function studiesA raised TSH that prompts the antibody test before any diagnosis is made
O99.280Endocrine, nutritional and metabolic diseases complicating pregnancy, unspecified trimesterThyroid autoimmunity assessment during pregnancy
K75.4Autoimmune hepatitisAnti-LKM testing in a liver workup

Two of these codes have their own guides. E03.9 explains when the unspecified code holds up, and E02 covers the iodine-deficiency picture.

Whichever code you choose, the diagnosis on the order must match the one on the claim. A mismatch between the two is a quick route to a CO-50 denial.

Four look-alike codes that land on the wrong claim

A wrong antibody code rarely bounces at the clearinghouse. It’s a valid code, so it either pays for the wrong test or draws a medical-necessity denial later. These are the mix-ups worth watching.

CPT codeAnalyteDisease associationCommon error
86376Microsomal antibody (anti-TPO or anti-LKM)Hashimoto’s thyroiditis, Graves’ disease, autoimmune hepatitisBilled twice when only one antibody ran
86200Cyclic citrullinated peptide (anti-CCP)Rheumatoid arthritisPicked from the antibody list for a thyroid patient, a different antigen entirely
86800Thyroglobulin antibody (TgAb)Differentiated thyroid cancer follow-upBilled with 86376 without checking current NCCI edits
86367Stem cells (CD34), total countStem cell transplant workupA transposed 86376; the code is valid, so the claim does not reject

86200 is the one to fear. It’s the anti-CCP test for rheumatoid arthritis, so billing it for a thyroid patient claims a test nobody ran. 86800 is the honest neighbor. Both test thyroid antibodies, but against different targets. When both appear on the same date, check the current NCCI edits before you bill them together.

Pro Tip

Run a monthly report of claims that carry 86200 with a thyroid diagnosis. 86200 is the anti-CCP test for rheumatoid arthritis, so each hit is likely a coding error. Catching it before payment saves an appeal and a refund request later.

Medicare covers 86376 when the chart shows why

Medicare covers CPT code 86376 under the Clinical Laboratory Fee Schedule (CLFS) when the test is reasonable and necessary. There’s no automatic pass. The diagnosis on the claim has to support the test under your contractor’s rules.

Check the LCD or billing article published by the practice’s own MAC jurisdiction. The Medicare Coverage Database lets you search by CPT code. Before you bill, confirm these five points:

  • A documented order. The treating practitioner’s order and the reason for the test belong in the medical record. Medicare doesn’t require a signature on the requisition itself.
  • A supporting diagnosis. E06.3 and E05.00 are widely accepted. E03.9 may need extra chart support with some MACs.
  • CLIA certification. The performing lab needs the CLIA certificate that matches the assay’s complexity. Its CLIA number goes on the claim.
  • No screening-only tests. Medicare doesn’t cover anti-TPO ordered purely as a wellness screen without a clinical reason.
  • Frequency limits. Some MACs cap repeat testing. Check the LCD before ordering a second test within 12 months.

Medicare reimbursement for CPT 86376

Reimbursement questions come up on every lab code. Here are the short answers for 86376.

Which fee schedule applies? The CLFS, not the Physician Fee Schedule. 86376 is a lab test, so the performing lab bills it on the CLFS.

Where do I find the current rate? CMS posts the payment limit for every lab code in its Clinical Laboratory Fee Schedule files. The file updates each January, with quarterly revisions.

What about commercial payers? Their rates depend on your contract. Some contracts reference the CLFS, so it’s a useful benchmark when you negotiate.

Can I quote a patient from memory? Better not. Pull the current CLFS line before you quote patients or set internal benchmarks.

How a 86376 claim moves from order to payment

With coverage and payment settled, here’s the path itself. A clean 86376 claim follows the same six steps every time, from the exam room to the remittance.

  1. The order. The treating practitioner orders the test and records the sign, symptom or diagnosis behind it.
  2. The draw. Staff collect serum by venipuncture. The practice that draws the blood can bill 36415 for the collection.
  3. The lab decision. The practice bills 86376 only when it performs the test in-house, under POS 11. If the specimen goes to a reference lab, that lab bills 86376 under POS 81 (independent laboratory).
  4. The coding. The biller links a covered ICD-10 code to 86376, with one unit per antibody. The diagnosis must match the requisition.
  5. The bundling check. If 86800 runs on the same date, the biller checks current NCCI edits before adding any modifier.
  6. Submission and remittance. The claim goes out through a clearinghouse, and the ERA shows what paid and why.

Step three is where most confusion starts, so here’s the split at a glance.

Decision diagram for CPT 86376
Whoever runs the assay bills 86376, while the practice that draws the blood bills 36415. Based on the AMA descriptor and CMS lab billing rules.

Before you submit: A six-point checklist for 86376

Run through this list before the claim leaves the building. Each item maps to a denial you’d otherwise see weeks later.

  • The order and the clinical reason are in the chart.
  • The ICD-10 code matches the requisition and the note.
  • Units equal the number of microsomal antibodies tested.
  • The CLIA number is on the claim if the test ran in-house.
  • Any same-day 86800 has been checked against current NCCI edits.
  • An ABN is signed for Medicare patients when coverage is doubtful.

For the wider picture, our guide to submitting a clean claim covers the fields every payer checks.

The denials that hit 86376, and how to fix each

Even with the checklist done, some claims come back. These six reason codes cover most 86376 denials, and each one has its own fix.

Denial codeReasonRoot causeCorrective action
CO-50Not medically necessaryICD-10 code not on the LCD covered list, or the chart does not support the diagnosis billedReview the LCD, recode to a supported diagnosis and appeal with chart notes if the test was indicated
CO-11Diagnosis inconsistent with the procedureFor example, 86200 billed against a thyroid diagnosisCorrect the code or the diagnosis to match the chart, then resubmit
CO-4Procedure code inconsistent with modifier / required modifier missingModifier 59, XU or 91 used where the payer does not accept it, or a required modifier left offCheck the payer’s modifier rules, correct the line and resubmit
CO-16 / CO-181Missing information or invalid codeA missing CLIA number, or digits keyed into a code that does not existAdd the CLIA number or correct the code, then resubmit
CO-97Bundled service86376 and 86800 billed together while an NCCI edit appliesAdd modifier 59 or XU only when the record documents a separate reason for each test
CO-167Diagnosis not coveredA screening-only diagnosis with no signed ABNIssue an ABN before the service when coverage is uncertain; with a valid ABN and modifier GA, the patient becomes liable

Patterns matter more than one-off denials. A run of CO-50s across several patients usually points to an order template problem, not a coder. Our guide to medical billing denial codes explains every code you will meet on a remittance.

Bundling and modifiers: When 86376 pays next to other thyroid tests

86376 usually travels with TSH (84443) and free T4 (84439) in a thyroid workup. Those are separate lab codes, and they are typically payable on the same date. The bundling question comes up with 86800.

  • 86376 with 84443 or 84439: generally billable together, since each test answers a different question. Confirm current NCCI status before assuming separate payment.
  • 86376 with 86800: an NCCI edit may apply, and edits change each quarter. Modifier 59 or XU fits only when the record documents a separate reason for each test.
  • Payer panel policies: some commercial payers set their own bundling rules for thyroid workups. Check the payer’s policy before billing component tests separately.
  • Modifier 91: use it when the same test is repeated on the same day for a clinical reason. It doesn’t apply to a rerun because the first specimen or the analyzer failed.

The NCCI edit files are version-dated, so check the current quarter rather than a saved copy. Reviewing electronic remittance advice for CO-97 patterns shows where a modifier or a separate-indication note is missing.

Pro Tip

Filter your remittance data each quarter for CO-97 adjustments on 86000-series codes. A recurring CO-97 on 86376 paired with 86800 usually points to an active NCCI edit. Confirm the edit, then either add the modifier with documentation or bill only the test the record supports.

A worked example: Four ways one thyroid claim goes wrong

Rules are easier to remember with a patient attached. A family physician sees a patient with fatigue and a raised TSH. The physician orders anti-TPO to check for Hashimoto’s, and the practice sends the blood to a reference lab.

Here is how that one claim can go wrong:

  • The practice bills 86376 anyway. The reference lab bills it too, so the duplicate gets denied or recovered later. The practice should bill 36415 for the draw only.
  • The biller picks 86200 from the antibody list. That is the anti-CCP test for rheumatoid arthritis, so the claim describes a test nobody ran.
  • The claim carries E06.3 because the note says “suspected Hashimoto’s.” Outpatient coding rules don’t allow coding a suspected condition. The raised TSH supports R94.6, or E03.9 once hypothyroidism is documented.
  • Two units go out when only anti-TPO ran. “Each” means each antibody performed, not each line on the order.

Fix those four and the claim moves cleanly through every step above.

How Pabau keeps 86376 claims tidy from record to remittance

Lab claims pass through several hands. The clinician documents the reason, the lab returns the result, and the biller builds the claim. Each handoff is a chance for the diagnosis or the order to drift.

Pabau, the practice management platform we build, keeps those pieces in one patient record. Its claims management software pre-fills the claim from the record. The CPT code attached to the service lands on the charge line, and ICD-10 slots are seeded from the patient’s problem list.

Required fields are checked before the Send button unlocks. US claims then go through Claim.MD, with ERA posting and claim-status tracking.

Pabau claim tracking screen showing claims from submission to payment
Pabau’s claim tracking shows where each 86376 claim sits, from submission to remittance, so no follow-up slips through.
  • Record-based pre-fill: the code and diagnosis come from the chart, so nobody retypes them.
  • Code lookup libraries: more than 20,000 ICD-10, CPT and HCPCS codes, so 86376 is ready to select.
  • Required-field checks: a claim cannot go out with a blank membership number or authorization field.
  • ERA posting and claim-status tracking: payments and adjustments post back against the claim.

Pabau doesn’t evaluate NCCI edits or medical necessity. The bundling and diagnosis checks above stay with your coder.

Send cleaner lab claims from the patient record

Pabau pre-fills claims from the patient record, checks required fields before sending, and submits them through Claim.MD. See how it fits your lab billing workflow.

Pabau claims management dashboard

Conclusion

Most 86376 problems start before the claim exists. Decide who runs the assay, code what the chart confirms, and count one unit per antibody. Do those three and most of the denials above never show up.

The trade-off is a little more discipline at the order stage. It takes a minute per patient, and it’s far cheaper than an appeal. Want to pre-fill claims from the patient record and send them through Claim.MD?

Book a demo to see Pabau with your own lab workflow.

Continue your research

Continue your research

Wondering what happens after you press Send? Pabau’s Claim.MD clearinghouse guide walks through how US claims are checked and routed to payers.

Seeing the same denial every month? Denial management in healthcare shows how to trace a pattern back to its root cause.

New to clearinghouses? Medical claims clearinghouses explained covers what they check before a claim reaches the payer.

Want fewer coverage surprises? Insurance eligibility verification explains what to confirm before the visit.

Comparing billing platforms? The best medical billing software for US practices sets the options side by side.

Frequently asked questions

Can CPT 86376 be billed for liver-kidney microsomal antibodies?

Yes. The descriptor covers microsomal antibodies “eg, thyroid or liver-kidney,” each. Anti-LKM testing usually supports an autoimmune hepatitis workup, coded K75.4 once confirmed. If the lab runs anti-TPO and anti-LKM for the same patient, it reports two units.

Is the anti-TPO test CLIA-waived?

No. Anti-TPO assays on automated analyzers are categorized as moderate complexity, so a certificate of waiver doesn’t cover them. A practice running the test in-house needs a CLIA certificate of compliance or accreditation.

What is a normal TPO antibody level?

It depends on the assay. Upper reference limits run from roughly 6 to 35 IU/mL, depending on the manufacturer. Read each result against the range on the lab report. A positive result supports, but doesn’t confirm, Hashimoto’s thyroiditis.

Can a practice bill for the blood draw if the lab bills 86376?

Yes. The practice that collects the specimen can bill 36415 for the venipuncture. The reference lab then bills 86376 on its own claim. Both claims should carry the same diagnosis from the order.

Avatar photo
Monika Lazarevska
Content Writer

Monika Lazarevska writes content for owners and healthcare professionals who want clear, no-fluff content that actually helps them run their practice better. With a background in storytelling and SEO, she knows how to make even the driest topics worth reading. Off the clock, you'll find her in a café somewhere in Europe, probably with a good book and an even better coffee.
×