Insurer negotiated rates

Exchange Plan Profile v2: composed ACA marketplace plan brain, rebuilt from the CMS Rate PUF ZIPs

medicare_silver.fact_exchange_plan_profile_v2·live·silver
Rows
60,591
Columns
35
History
N/A
Card
nocolumns only
Typed tools
1

What it is

  1. 1The composed "plan brain" for the ACA marketplace, same 35 columns as fact_exchange_plan_profile: attributes (metal, type, on/off exchange, issuer, TIN) from Plan Attributes, premium benchmarks (age 21/40/60 min across rating areas, age-40 max) from the Rate PUF, network name, county footprint, covered-benefit counts and headline cost shares, CMS quality ratings and the issuer's individual-market MLR.
  2. 2Built reproducibly by tools/data_tracker/build_exchange_plan_profile.py (ops/sql/build_fact_exchange_plan_profile.sql, edition v2, #3579) with medicare_semantic.vw_rate_puf_current (the CMS ZIP history) as the Rate input in place of the truncated data.healthcare.gov mirror.
  3. 3Equal to v1 cell for cell in PY2014, 2016 and 2019-2025.

Grain

KeyGrain
N/A
  1. 1One row per (business_year, plan_id), unique: 60,591 plan-years PY2014-2026 (4,402 / 6,789 / 5,821 / 4,538 / 2,670 / 2,938 / 3,511 / 3,885 / 5,407 / 6,366 / 5,339 / 4,723 / 4,202;
  2. 2Athena 1c070757 and 72c4ad5e, 2026-10-13).

Columns (35)

ColumnTypeMeaning
plan_idstring
issuer_idstring
state_codestring
plan_marketing_namestring
metal_levelstring
plan_typestring
market_coveragestring
on_off_exchangestring
issuer_tinstring
network_idstring
network_namestring
service_area_idstring
covers_entire_stateboolean
n_countiesbigint
premium_age21double
premium_age40double
premium_age60double
premium_age40_maxdouble
n_rating_areasbigint
n_benefits_coveredbigint
n_ehb_benefitsbigint
pcp_copaystring
specialist_copaystring
er_copaystring
urgent_care_copaystring
generic_drug_copaystring
inpatient_coinsstring
quality_overallint
quality_medicalint
quality_member_expint
issuer_company_namestring
issuer_naic_group_codestring
issuer_ind_premium_earneddouble
issuer_ind_mlr_ratiodouble
business_yearint

Query it

describe_data_source(source_fqn="medicare_silver.fact_exchange_plan_profile_v2")     # the card, live
query_substrate(sql="SELECT * FROM medicare_silver.fact_exchange_plan_profile_v2 WHERE <filter> LIMIT 100")
ItemValue
Typed tools that read itget_exchange_plan_profile
Identity keybusiness_year,plan_id
Joinhow_to_join(source_fqn="medicare_silver.fact_exchange_plan_profile_v2")
Raw doorAthena (read-only via query_substrate): medicare_silver.fact_exchange_plan_profile_v2
Company namesissuer_company_name resolve to a permanent Vlada ID: resolve_entity(text=<name>); the company pages hold owners and holdings
NoteBuilt 2026-10-13 by the coordinator (ctas --edition v2, #3579; Athena be3aa33f). Registered 2026-10-13 under register w4 vlada_w4_exchange_plan_profile as the successor of fact_exchange_plan_profile by the Data Tracker registration lane (PR claude/tracker-register-profile-v2-rate-history). get_exchange_plan_profile reads it after the MCP lane's repoint (#3588). Door BOTH, World W4.

This page as markdown: /docs-md/data/medicare_silver_fact_exchange_plan_profile_v2.md · every page in one file: /llms-full.txt