# CMS NADAC Drug Acquisition Cost Lookup

> CMS NADAC Drug Acquisition Cost Lookup is a paid API for AI agents from data.spencermcw.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-23).

Returns the CMS National Average Drug Acquisition Cost (NADAC) per unit for a given NDC, including current price, generic equivalent pricing, and weekly price history since January 2025.

## Facts

- Endpoint: GET https://data.spencermcw.com/v1/drug/nadac?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/cms-nadac-drug-acquisition-cost-lookup-264fac0c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_HDeEzotMg8NVKTSztJysk

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability cms-nadac-drug-acquisition-cost-lookup-264fac0c
```

Example prompt: What is the current CMS NADAC acquisition cost per unit for NDC 00093005201, and how has the price changed over the past few months?

## When to prefer this

Choose this endpoint when you need authoritative CMS NADAC pharmacy acquisition costs for a specific NDC, including historical weekly pricing trends since January 2025 and generic equivalent costs. It is ideal for healthcare cost transparency tools, pharmacy benefit analysis, drug pricing dashboards, or any workflow that needs to compare brand vs generic acquisition costs using official CMS data. Prefer this over general drug price databases when you specifically need what US pharmacies pay (acquisition cost), not retail or insurance reimbursement rates.

## Known failure modes

- Invalid NDC format — must be 11 digits or formatted as XXXXX-XXXX-XX; returns error if pattern does not match
- NDC not found in CMS NADAC database — drug may not be covered or may have never appeared in NADAC files
- Rate limit exceeded beyond 3 free daily calls without payment — requires x402 USDC payment on Base
- Payment failure — x402 transaction rejected or insufficient USDC balance
- Data lag — CMS files are updated weekly so very recent pricing changes may not yet be reflected

## How this service works

What do US pharmacies pay for this drug? CMS’s National Average Drug Acquisition Cost (NADAC) per unit for an NDC, the generic’s NADAC for a brand and the weekly price history since January 2025, from CMS’s NADAC files on data.medicaid.gov. Updated weekly. $0.01 per call (x402, USDC on Base); 3 free calls a day.

## Output

Returns a JSON object with the drug's NDC, description, pricing unit, OTC status, classification, pharmacy type, whether it is currently listed in the latest weekly CMS file, the current NADAC per unit with effective date and explanation codes, the last-listed price if currently unlisted, the corresponding generic's NADAC (for brand-name drugs), same-description flag, and a full weekly price history array (newest first) showing runs of identical NADAC values with their date ranges and week counts.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "ndc"
     ],
     "properties": {
      "ndc": {
       "type": "string",
       "pattern": "^(\\d{11}|\\d{4,5}-\\d{3,4}-\\d{1,2})$"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "data": {
       "type": "object",
       "required": [
        "ndc",
        "description",
        "pricing_unit",
        "otc",
        "classification",
        "pharmacy_type",
        "listed",
        "current",
        "last_listed",
        "corresponding_generic",
        "same_description",
        "history"
       ],
       "properties": {
        "ndc": {
         "type": "string"
        },
        "otc": {
         "type": "boolean"
        },
        "listed": {
         "type": "boolean",
         "description": "Whether the NDC is in the latest weekly file."
        },
        "current": {
         "anyOf": [
          {
           "type": "object",
           "required": [
            "nadac_per_unit",
            "effective_date",
            "as_of",
            "explanation_codes"
           ],
           "properties": {
            "as_of": {
             "type": "string"
            },
            "effective_date": {
             "type": "string"
            },
            "nadac_per_unit": {
             "type": "string"
            },
            "explanation_codes": {
             "type": "array",
             "items": {
              "type": "string"
             }
            }
           },
           "additionalProperties": false
          },
          {
           "type": "null"
          }
         ]
        },
        "history": {
         "type": "array",
         "items": {
          "type": "object",
          "required": [
           "nadac_per_unit",
           "effective_date",
           "first_as_of",
           "last_as_of",
           "weeks"
          ],
          "properties": {
       
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/cms-nadac-drug-acquisition-cost-lookup-264fac0c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from data.spencermcw.com](https://www.zero.xyz/host/data.spencermcw.com/llms.txt)
