Skip to main content

About

Built on federal data. Not PBM data.

MarkupRx exists because the data needed to detect pharmacy margin losses is already public — it just takes 13 separate federal sources, a unified entity-resolution layer, and weekly refresh pipelines to make it useful at the claim level.

What we integrate

The platform aggregates 13 U.S. government data sources. The keystone is CMS NADAC (National Average Drug Acquisition Cost) — a weekly CMS survey of actual invoice prices paid by pharmacies to wholesalers, published at data.cms.gov/nadac. NADAC is the acquisition-cost benchmark — what pharmacies actually paid per unit, not AWP estimates or WAC approximations.

The reimbursement side comes from CMS State Drug Utilization Data (SDUD), a quarterly CMS dataset covering Medicaid fee-for-service and managed care reimbursements at the NDC level, published at medicaid.gov/sdud. When NADAC exceeds the SDUD reimbursement per unit on a given NDC, the pharmacy dispensed at a loss.

The remaining 11 sources — the FDA NDC Directory, Orange Book (patents + exclusivity), Federal Upper Limit, ASP, VA FSS, IRA negotiated prices, CMS Drug Spending (Part B, Part D, Medicaid), drug shortage data, and Drugs@FDA — are joined on RxNorm RXCUI, the NLM's canonical drug entity identifier, so every data point resolves to the same drug concept regardless of source.

How we compute

The underwater margin formula is published openly on our methodology page:

margin = (total_amount_reimbursed / units_reimbursed) − nadac_per_unit

A negative margin means the pharmacy paid more per unit (NADAC) than it received from the PBM (SDUD reimbursement). We flag those claims, group them by NDC and state, and surface the per-fill loss — no AWP markups, no estimates, no proprietary data without a public source citation.

Why this matters for independent pharmacies

The National Community Pharmacists Association (NCPA) represents more than 19,000 independent pharmacy locations nationwide. The independent sector dispenses roughly one-third of all retail prescriptions but operates under PBM contract terms that include Maximum Allowable Cost (MAC) pricing set unilaterally by each PBM.

Research from organizations including 3 Axis Advisors has documented systematic MAC-below-NADAC pricing patterns, particularly for generic drugs where NADAC tracks actual invoice prices weekly while MAC schedules may lag by quarters or never adjust upward. The MAC appeal right — a pharmacy's ability to challenge a reimbursement that falls below a federally published acquisition cost benchmark — exists in most states' PBM transparency laws, but requires documentation to exercise effectively.

MarkupRx provides that documentation layer: the NADAC benchmark, the SDUD reimbursement history, and a generated appeal letter that cites both. We don't manufacture evidence — we surface the federal data that was already there and make it readable at the claim level.

What we don't do

  • We don't use AWP (Average Wholesale Price) — it's proprietary (Medi-Span / First Databank), not publicly verifiable, and inflated by design.
  • We don't take PBM data, sell aggregated pharmacy data, or partner with any PBM, GPO, or wholesaler.
  • We don't use fuzzy text matching for drug entity resolution — only structured RxNorm RXCUI joins and NDC identifier chaining from the FDA NDC Directory.
  • We don't have a sales team or lock-in contracts. Flat monthly fee, cancel in Settings, no retention call required.

Explore the underlying data

The underwater claim rankings derived from CMS NADAC and SDUD are publicly browsable — no account required. Start with the public data explorer to see which NDCs are currently underwater by state and per-fill loss. The full methodology — including the exact formula, data source citations, and appeal generation logic — is on the methodology page. Blog posts covering the MAC appeal process and NADAC vs PBM reimbursement gaps are on the blog.

Questions or press inquiries: [email protected].

Ten minutes to know.

Read the report. Draft an appeal. Renegotiate a contract. Cancel if it isn't worth it.

15-day trial · no credit card · cancel anytime