The main code: Z91.14

The primary ICD-10-CM code for medication non-adherence is Z91.14, patient's other noncompliance with medication regimen. It is the catch-all code, used when a patient is not taking a medication as prescribed and no more specific underdosing code applies. The Centers for Disease Control and Prevention's National Center for Health Statistics (CDC/NCHS) maintains the ICD-10-CM code set, and Z91.14 sits in the Z91.1 family for noncompliance with medical treatment and regimen.

Z91.14 covers the general case. The patient is skipping doses, not filling the prescription, or has stopped the drug, and the note does not specify a reason that maps to a more granular code. When the reason is known and the patient is taking less than the prescribed amount, the underdosing codes under Z91.12- are more specific and take priority over Z91.14.

The non-adherence and underdosing codes

Five codes cover medication non-adherence and underdosing in ICD-10-CM. Z91.14 is the general non-compliance code. The four Z91.12- codes are specific to underdosing and are split by intent and by cause. The table below lists each with its descriptor.

CodeMeaning
Z91.14Patient's other noncompliance with medication regimen. The general medication non-adherence code, used when no more specific underdosing code applies.
Z91.120Patient's intentional underdosing of medication regimen due to financial hardship.
Z91.128Patient's intentional underdosing of medication regimen for other reason.
Z91.130Patient's unintentional underdosing of medication regimen due to age-related debility.
Z91.138Patient's unintentional underdosing of medication regimen for other reason.

Picking the right code is a documentation question. If the chart records why the patient took less than prescribed, one of the Z91.12- codes fits. If it only records that the patient is not following the regimen, Z91.14 is correct.

Intentional vs unintentional underdosing

The underdosing codes branch first on intent. Z91.120 and Z91.128 are for intentional underdosing, where the patient chose to take less. Z91.130 and Z91.138 are for unintentional underdosing, where the patient did not mean to take less. The note has to support which one applies.

Intent then branches on reason. Intentional underdosing splits into financial hardship (Z91.120) and other reason (Z91.128). A patient stretching an expensive drug to make a refill last is the financial-hardship case. Unintentional underdosing splits into age-related debility (Z91.130) and other reason (Z91.138). An older patient who forgets doses or cannot manage a complex regimen is the age-related case. Documenting both the intent and the reason is what determines which of the four codes is assigned.

The distinction between intentional and unintentional is not a judgment about the patient. A patient who rations a drug for cost made a rational choice under a real constraint, and a patient missing doses from debility needs a different kind of help. The codes separate the two because the fix is different. One points toward an assistance program or a cheaper therapeutic alternative, the other toward a care manager, a pillbox, or a caregiver. Coding to other reason (Z91.128 or Z91.138) when the actual reason is known and codable loses that signal.

The sequencing rule: never the principal diagnosis

Underdosing codes are never assigned as the principal or first-listed diagnosis. Sequence the underlying condition affected by the underdosing first, then the Z91.12- underdosing code, then any code for the patient's intent. The order matters because the underdosing is a complication of treating a condition, not the reason for the visit on its own.

An example: a patient whose blood pressure is uncontrolled because they are rationing their antihypertensive for cost. The hypertension is sequenced first, the Z91.120 financial-hardship underdosing code follows, and the record carries the clinical picture in the right order. Z91.14 does not carry the same never-principal restriction, but it still reads as a flag attached to the conditions being treated, not as a standalone reason for care.

What these codes are for: SDOH and care management, not HCC

These Z-codes are social-determinant and behavioral flags. They do not map to HCCs and do not raise a risk score, so capturing them changes nothing about risk-adjusted revenue. Their value is operational: they mark which patients need help and route them to it.

A Z91.120 on a chart says a patient is cutting doses because of cost, which is a signal to connect them with a financial-assistance or copay program. A Z91.130 says an older patient is missing doses because of debility, which is a signal for a care manager, a simplified regimen, or a caregiver conversation. These codes feed care management and pharmacy outreach, and they are how a population's adherence barriers become a worklist instead of a guess.

This is also why they are worth capturing even though they carry no risk-adjustment value. Non-adherence drives the Part D Star Ratings through the adherence measures, and those measures are triple-weighted, so a plan or group that lets adherence slip pays for it in its Stars. A coded barrier is the difference between knowing a patient is at risk and finding out when the measurement year has already closed.

Documentation is not resolution

Coding the non-adherence is documentation. It records that the patient is not taking the medication. It does not change the behavior, fill the prescription, or remove the barrier in the way of adherence. The gap closes only when someone reaches the patient, finds out why they are not taking or filling the drug, and removes that reason.

That outreach is the hard part. It means calling the patient, calling the pharmacy to check fill status, and sometimes calling the prescriber, then following up until the medication is actually in hand and being taken. The code is the start of that work, not the end of it.

How Pelica handles non-adherence

Pelica is the AI-native execution layer for value-based care: one live member record and a copilot beside every team that owns a risk-bearing contract. Most platforms show you which patients are non-adherent. Pelica works the gap and follows up until it is resolved.

The Pharmacy and Part D copilot reads pharmacy fill data and flags the patients falling off their medication, then voice AI calls the pharmacy, the patient, and the prescriber to find the barrier and clear it, escalating to a person only when one is truly needed. When the flag is a financial-hardship pattern, the work routes toward assistance instead of another reminder. The Care Management copilot picks up the patients whose barrier is not pharmacy but support at home. At HealthCare Partners, the largest IPA in the country, this holds 96 to 98% medication adherence on the triple-weighted Part D measures and closes 70%+ of transitions-of-care gaps within 30 days, across 175,000+ patients managed live.

Related terms

For how adherence is measured in the first place, see medication adherence and PDC, the proportion-of-days-covered metric behind the Part D Star measures. For the medication-review program that targets non-adherent patients, see MTM.

Sources