# CMS Physician/Supplier Procedure Summary (PSPS) — granular Part B allowed

`medicare_silver.fact_psps` · Medicare Advantage, Part D, Medicaid · status live · 14,377,293 rows

The CMS Physician/Supplier Procedure Summary — Part B submitted/allowed/ denied service counts + charges + NCH payment at HCPCS × modifier × provider specialty × carrier-locality × type-of-service × place-of-service. The most granular public Part B allowed-amount benchmark (finer than the by-geography PUFs). ~14.4M rows/year, 2010-2024, partition by data_year.

**Grain.** One row per (data_year, HCPCS × modifiers × specialty × carrier-locality × type-of-service × place-of-service).

| column | type | meaning |
|---|---|---|
| data_year | int |  |
| row_seq | bigint |  |
| hcpcs_cd | string |  |
| hcpcs_initial_modifier_cd | string |  |
| hcpcs_second_modifier_cd | string |  |
| provider_spec_cd | string |  |
| carrier_num | string |  |
| pricing_locality_cd | string |  |
| type_of_service_cd | string |  |
| place_of_service_cd | string |  |
| betos_cd | string |  |
| asc_ind_cd | string |  |
| submitted_service_cnt | double |  |
| submitted_charge_amt | double |  |
| allowed_charge_amt | double |  |
| denied_services_cnt | double |  |
| denied_charge_amt | double |  |
| assigned_services_cnt | double |  |
| nch_payment_amt | double |  |
| 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 medicare_silver.fact_psps WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_psps")` first.
