Methodology

How we source, normalize, aggregate, and flag the NADAC data behind every page. If a number on this site looks surprising, the explanation is almost always here.

Source data

All pricing on this site comes from the National Average Drug Acquisition Cost (NADAC) file published weekly by the Centers for Medicare & Medicaid Services (CMS). The file is produced from a voluntary survey of retail community pharmacy invoices, conducted by Myers and Stauffer LC on behalf of CMS. New versions are typically posted on Wednesdays and reflect pricing as of the prior week. Drug attributes (proprietary name, nonproprietary name, dosage form, pharmacologic class, marketing category) are joined from the FDA NDC Directory, and recall information for manufacturer pages is sourced from openFDA. See /data-sources for full attribution.

What's included — and what isn't

NADAC measures acquisition cost at retail community pharmacies. The survey explicitly excludes specialty pharmacies, mail-order, long-term care, hospital inpatient and outpatient pharmacies, and 340B-priced inventory. That means a drug whose U.S. dispensing is concentrated in specialty channels (most biologics, many oncology agents) may be sparsely reported in NADAC or absent entirely — not because it isn't reimbursed, but because it isn't dispensed in the surveyed setting. Likewise, controlled-substance pricing reflects retail acquisition, not what a hospital pharmacy pays.

How we group NDCs into drug markets

A drug market is the set of NDCs that share the same upper-cased nonproprietary_name. The case-insensitive match handles inconsistencies between CMS files (e.g., “Atorvastatin Calcium” vs “ATORVASTATIN CALCIUM”) so brand and generic versions of the same molecule land in one market. Manufacturer names are normalized through a curated mapping table (currently 449 mappings) before grouping, which keeps the same company from appearing under multiple corporate aliases.

How aggregates are computed

Trend, directory, and price-history figures are calculated from the raw NADAC records described above. A drug-market average is the mean NADAC across every NDC in that market; a manufacturer or therapeutic-class average rolls those market figures up one more level. Week-over-week change compares each NDC's most recent NADAC to its value in the prior weekly file. Price-history charts plot one point per weekly CMS publication. Every figure on the site is derived directly from the published NADAC, FDA, and openFDA data — we do not adjust, smooth, or model the underlying prices.

Outlier detection

Inside each drug market we flag manufacturers whose average price is meaningfully out of line with their peers. The rule is the standard interquartile-range test, applied only to drug markets with four or more competing manufacturers (the IQR is unstable with fewer points).

  • Low outlier: a manufacturer’s average price falls below Q1 − 1.5 · IQR for its drug market.
  • High outlier: a manufacturer’s average price exceeds Q3 + 1.5 · IQR for its drug market.
  • The market average is computed at the manufacturer level first (every NDC the firm lists in that market), then percentiles are taken across manufacturers — so a manufacturer with one cheap SKU and ten expensive ones is judged on its blended average, not its cheapest line.

Known limitations

  • NADAC is a survey-based estimate, not a transaction record. CMS publishes a single national average even though regional acquisition costs vary.
  • There is a structural ~1 week lag between invoice activity and publication. Sudden supply shocks usually take 1–2 NADAC cycles to surface.
  • Participation in the underlying invoice survey is voluntary. Low survey response on a given NDC can produce a published price that lags actual market activity.
  • We attempt to normalize manufacturer aliases, but corporate restructuring, acquisitions, and label-holder changes can still split a single firm across multiple rows.
  • Nothing on this site is medical or financial advice. NADAC reflects historical acquisition cost only; reimbursement, contracting, and clinical decisions involve factors NADAC does not capture.

Spot something that looks wrong, or want a methodology question answered in more depth? Get in touch.