# ASP NDC-HCPCS Crosswalk — Medicare Part B drug-identity bridge (raw CMS drop)

`drug_silver.fact_asp_ndc_hcpcs_crosswalk` · Drugs and formularies · status live · 7,366 rows

The CMS Medicare Part B ASP NDC-HCPCS Crosswalk: each Part-B HCPCS (J-code etc.) mapped to the NDCs billable under it, with labeler/drug name, HCPCS dosage, package size/qty, and billing units. This is the drug-IDENTITY bridge previously flagged missing — it lets a J-code resolve to its NDC set (drug_silver.dim_drug.ndc11) and an NDC resolve back to its HCPCS (vlada_curated.dim_code.code), unifying the drug catalog with the medical/HCPCS graph. Sibling of the ASP Pricing File (fact_drug_asp_quarterly) in the same quarterly ASP release.

**Grain.** One row per (hcpcs_code, ndc11).

| column | type | meaning |
|---|---|---|
| hcpcs_code | string |  |
| ndc11 | string |  |
| ndc_raw | string |  |
| short_description | string |  |
| labeler_name | string |  |
| drug_name | string |  |
| hcpcs_dosage | string |  |
| pkg_size | string |  |
| pkg_qty | string |  |
| billunits | double |  |
| billunitspkg | double |  |
| release_quarter | string |  |
| observed_period | date |  |
| asserted_at | date |  |
| effective_period_start | date |  |
| effective_period_end | date |  |
| cms_vintage_sequence | int |  |
| parse_revision | int |  |
| parser_artifact_hash | string |  |
| source_url | string |  |
| sha256_content_hash | string |  |
| source_id | string |  |
| is_current | boolean |  |
| bronze_object_key | string |  |
| s3_version_id | string |  |
| vintage_tag | string |  |
| drug_source_version_id | string |  |

Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_asp_ndc_hcpcs_crosswalk WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_asp_ndc_hcpcs_crosswalk")` first.
