NADAC Drug Prices Scraper — Pharmacy Acquisition Cost per NDC avatar

NADAC Drug Prices Scraper — Pharmacy Acquisition Cost per NDC

Pricing

from $3.00 / 1,000 results

Go to Apify Store
NADAC Drug Prices Scraper — Pharmacy Acquisition Cost per NDC

NADAC Drug Prices Scraper — Pharmacy Acquisition Cost per NDC

Extract Medicaid NADAC weekly pharmacy invoice prices per NDC from data.medicaid.gov. Filter by drug name, NDC, OTC/branded status. Output: 786k+ drug records with acquisition cost, pricing unit, and effective dates.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Compute Edge

Compute Edge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Extract NADAC (National Average Drug Acquisition Cost) data from Medicaid.gov — the weekly benchmark for what pharmacies actually pay per drug unit. The dataset covers 786,000+ NDC codes for 2026, updated weekly by the Centers for Medicare & Medicaid Services (CMS).

NADAC is the most reliable public benchmark for pharmacy invoice prices. It represents what independent and chain pharmacies pay suppliers per unit of each drug, making it indispensable for:

  • PBM auditing — compare plan reimbursements against NADAC benchmarks
  • Drug pricing analytics — identify branded vs. generic cost spreads
  • Formulary management — track effective-date price changes weekly
  • Healthcare research — analyze pharmacy acquisition cost trends by NDC, drug class, or OTC status
  • Compliance reporting — Medicaid reimbursement rate benchmarking

Data Fields

FieldDescription
ndc11-digit National Drug Code
ndcDescriptionDrug name and strength (e.g., "METFORMIN HCL 500 MG TABLET")
nadacPerUnitWeekly average pharmacy invoice price per unit (USD)
pricingUnitUnit of measure (ML, GM, EA)
    | `effectiveDate` | Date the NADAC rate became effective |

| asOfDate | Survey week the price was reported | | otc | "Y" = over-the-counter, "N" = prescription | | classificationForRateSetting | "B" = branded, "G" = generic | | pharmacyTypeIndicator | "C" = chain pharmacy, "I" = independent pharmacy | | explanationCode | CMS code explaining the pricing methodology | | correspondingGenericNadacPerUnit | NADAC price of the generic equivalent (if applicable) | | year | Dataset year (2014–2026) |


How to scrape NADAC drug prices

Follow these steps to extract Medicaid NADAC pharmacy acquisition cost data:

  1. Open the Actor — Go to the NADAC Drug Prices Scraper page on Apify Store and click Try for free.

  2. Set the year — Choose the dataset year (2014–2026). The default is 2026, which contains the most recent weekly NADAC rates with 786,000+ NDC records.

  3. Apply optional filters — Use any combination of:

    • Drug Name Filter: partial match on drug description (e.g., insulin, metformin, lisinopril)
    • NDC Code Filter: partial match on the 11-digit NDC (e.g., 00003 for all drugs from a specific labeler)
    • OTC Only: restrict to over-the-counter drugs
    • Branded Only: restrict to brand-name drugs (excludes generics)
  4. Set Max Results — Default is 500. Set up to 50,000 for bulk exports. For the full 786k dataset, run multiple Actor instances with offset-based batching or contact us for a custom solution.

  5. Run the Actor — Click Start. Typical run for 500 records takes under 30 seconds. For 50,000 records, expect 2–4 minutes.

  6. Download your data — Export as JSON, CSV, or Excel from the Dataset tab. Use the Apify API to integrate directly into your pipeline.


Pricing

This Actor uses pay-per-result pricing on top of standard Apify compute costs:

  • $0.003 per result (drug price record)
  • Apify compute: approximately $0.01–$0.05 per 1,000 results depending on filters
  • Example: 500 records ≈ $0.015 in scraper fees + minimal compute

Run costs are deterministic — you pay for what you extract.


Input Example

{
"year": 2026,
"drugName": "metformin",
"otcOnly": false,
"brandedOnly": false,
"maxResults": 100
}

Empty input {} returns 500 records from the 2026 NADAC dataset sorted by default API order.


Output Example

[
{
"ndc": "00093721301",
"ndcDescription": "METFORMIN HCL 500 MG TABLET",
"nadacPerUnit": 0.01845,
"pricingUnit": "EA",
"effectiveDate": "2026-01-01",
"asOfDate": "2026-01-08",
"otc": "N",
"classificationForRateSetting": "G",
"pharmacyTypeIndicator": "C",
"explanationCode": "17",
"correspondingGenericNadacPerUnit": null,
"year": 2026
}
]

Other Scrapers

Pair this Actor with our complementary healthcare data scrapers:


FAQ

Q: How often is NADAC updated?

A: CMS publishes new NADAC rates weekly, typically each Wednesday. Each year has its own dataset on Medicaid.gov. The Actor resolves the correct dataset ID dynamically at runtime.

Q: What does NADAC measure exactly?

A: NADAC (National Average Drug Acquisition Cost) reflects the average invoice price pharmacies pay their wholesalers for drugs, based on weekly pharmacy surveys conducted by CMS. It does not include dispensing fees, markups, or PBM rebates.

Q: Can I get all 786,000 records for 2026?

A: Yes — set maxResults to 50,000 and run multiple times with different filters, or contact us for a bulk data delivery. The full dataset is also directly downloadable from Medicaid.gov in CSV format.

Q: What does classificationForRateSetting mean?

A: "B" = branded (innovator) drug; "G" = generic equivalent. This classification is used by state Medicaid programs to set reimbursement rates differently for brand vs. generic drugs.

Q: What does pharmacyTypeIndicator mean?

A: "C" = chain pharmacy survey respondent; "I" = independent pharmacy survey respondent. Chain and independent pharmacies often pay different acquisition costs for the same drug.


This Actor accesses publicly available data from the U.S. Centers for Medicare & Medicaid Services (CMS) at data.medicaid.gov. All NADAC data is published as open government data under the CMS data use agreement. No authentication bypass, personal data collection, or terms-of-service violation occurs. Use of this data for commercial purposes is permitted under applicable open government data policies. Users are responsible for compliance with applicable laws in their jurisdiction.

For questions or support: Apify Actor page