# CMS independent state-based exchange Rate PUF: lossless history, PY2016-2026

`medicare_silver.fact_sbe_rate_puf_history` · Insurer negotiated rates · status live · 12,056,664 rows

Premium rates (plan x rating area x age x tobacco, with family tiers) for the independent state-based exchanges, from CMS's SBE packages, typed beside the lossless raw record (numeric_parse_status_json) and Bronze lineage.

**Grain.** One publisher CSV record per CMS SBE package member: (business_year, state, archive_member_sha256, source_row_number). 12,056,664 rows, PY2016-2026 (907,348 / 658,932 / 750,732 / 1,615,006 / 1,501,958 / 1,189,365 / 1,001,714 / 996,686 / 1,042,210 / 1,211,449 / 1,181,264; Athena 6ccbb983, 4f9d969a, 2026-10-13).

| column | type | meaning |
|---|---|---|
| business_year | int |  |
| source_row_number | bigint |  |
| state_code | string |  |
| issuer_id | string |  |
| source_name | string |  |
| import_date | string |  |
| rate_effective_date | string |  |
| rate_expiration_date | string |  |
| plan_id | string |  |
| rating_area_id | string |  |
| tobacco | string |  |
| age | string |  |
| individual_rate | double |  |
| individual_tobacco_rate | double |  |
| couple | double |  |
| primary_plus_one_dependent | double |  |
| primary_plus_two_dependents | double |  |
| primary_plus_three_or_more_dependents | double |  |
| couple_plus_one_dependent | double |  |
| couple_plus_two_dependents | double |  |
| couple_plus_three_or_more_dependents | double |  |
| schema_era | string |  |
| source_encoding | string |  |
| raw_row_sha256 | string |  |
| raw_values_json | string |  |
| numeric_parse_status_json | string |  |
| record_selection_status | string |  |
| artifact_id | string |  |
| source_zip_sha256 | string |  |
| source_zip_bytes | bigint |  |
| final_source_url | string |  |
| archive_member | string |  |
| archive_member_sha256 | string |  |
| archive_member_bytes | bigint |  |
| ordered_header_json | string |  |
| header_sha256 | string |  |
| column_count | int |  |
| publisher_modified_at | string |  |
| publisher_etag | string |  |
| archive_member_crc32 | string |  |
| archive_inventory_json | string |  |
| expected_artifact_rows | 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 |  |

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