# Medicare OPPS (hospital outpatient)

`medicare_silver.fact_opps_addendum_b` · Medicare Advantage, Part D, Medicaid · status live · 1,290,799 rows

Outpatient Prospective Payment System rates — the hospital OUTPATIENT FACILITY benchmark (payment_rate). NOT PFS (benchmarking a facility charge against PFS is the #1 methodology error). EXCLUDE status_indicator G/K (pass-through drugs/biologicals; payment_rate up to ~$3.7M/unit for gene/cell therapies — real drug prices, not facility fees) and packaged status-N $0 rows from a facility-fee distribution.

**Grain.** One row per (hcpcs_code, calendar_year, effective_period) -- CMS OPPS Addendum B APC payment_rate + status_indicator. DEEP CY2004-2026; within-year corrections via effective_period_start + cms_vintage_sequence (no quarter column). RBP prices as-of the service quarter. The shallow medicare_opps_rates is the deprecated recent-years mirror.

| column | type | meaning |
|---|---|---|
| calendar_year | int |  |
| hcpcs_code | string |  |
| modifier | string |  |
| short_descriptor | string |  |
| status_indicator | string |  |
| apc | string |  |
| relative_weight | decimal(38,18) |  |
| payment_rate | decimal(38,18) |  |
| national_copayment | decimal(38,18) |  |
| minimum_copayment | decimal(38,18) |  |
| coinsurance_pct | decimal(38,18) |  |
| adjusted_copayment | decimal(38,18) |  |
| pass_through_expiration | string |  |
| note | string |  |
| change_indicator | string |  |
| source_era | string |  |
| source_zip_sha256 | string |  |
| source_member | string |  |
| source_row_number | bigint |  |
| 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 |  |

Tools that read it: medicare_allowed

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