# Vlada Health docs, in full Generated 2026-11-09T22:27:52Z from the files the server serves. Base: https://www.vladahealth.com/docs ## Tools # get_exchange_plan_profile Get Exchange Plan Profile · v1.0.0 · commercial One ACA Marketplace (healthcare.gov / HIX) plan's profile for a plan year, every field tagged with the CCIIO PUF it came from. Give plan_id (the 14-character HIOS standard component id, e.g. 38344AK1060001) for the plan: issuer, metal level, plan type (HMO/PPO/EPO/POS), Individual vs SHOP, on/off exchange, network, county footprint, premium benchmarks at age 21/40/60 (min across the plan's rating areas, plus the age-40 max), the per-age premium curve from the Rate PUF (include_rate_curve, default true), headline cost shares (PCP / specialist / ER / urgent care / generic drug copay, inpatient coinsurance), CMS quality stars, and the issuer's individual-market MLR. Or give state (+ optional plan_year, metal_level, issuer_id, plan_type, on_off_exchange) for the bounded list of that state's plans, cheapest age-40 premium first. plan_year defaults to the latest year held (PY2014-2026). Deductible / MOOP are returned as not_available (not in the composed profile). FFM states only: a state-based marketplace (CA, NY, PA, GA, ...) is absent at source and the tool says so rather than returning nothing silently. **Inputs.** - `plan_id`: - `plan_year`: - `state`: - `metal_level`: - `issuer_id`: - `plan_type`: - `on_off_exchange`: - `include_rate_curve`: - `limit`: **Known limits.** - FFM (healthcare.gov) states only; state-based marketplaces are absent at source. - Deductible / MOOP are not in the composed profile (untyped raw JSON in the Plan Attributes PUF today) and are returned as not_available. - premium_age21/40/60 are the MIN across the plan's rating areas (age-40 MAX also given); county-grain premium needs the rating area (use rate_curve / the Rate PUF). - Cost shares are the base variant (-01) as filed; CSR variants differ. Quality only for CMS-rated plans in PY2023/2024/2026; MLR only PY2019-2024; PY2015 premiums thin at source; medical plans only (v1). **A real answer** (customer seat, 2.48 s, args `{"state":"TX","limit":3}`): ```json { "value": { "found": true, "not_found_reason": null, "mode": "list", "query": { "plan_id": null, "plan_year": null, "state": "TX", "metal_level": null, "issuer_id": null, "plan_type": null, "on_off_exchange": null, "include_rate_curve": true, "limit": 3 }, "plan_year": 2026, "plans": [ { "plan_id": "66252TX0380100", "business_year": 2026, "issuer_id": "66252", "issuer_company_name": null, "plan_marketing_name": "CHRISTUS Catastrophic (3 Free PCP visits)", "metal_level": "Catastrophic", "plan_type": "HMO", "market_coverage": "Individual", "on_off_exchange": "Both", "network_name": "CHRISTUS Health Plan Texas", "covers_entire_state": false, "n_counties": 38, "premium_age21": 250.7, "premium_age40": 320.39, "premium_age60": 680.39, "premium_age40_max": 372.09, "quality_overall": 3, "issuer_ind_mlr_ratio": null }, { "plan_id": "40788TX0460006", "business_year": 2026, "issuer_id": "40788", "issuer_company_name": null, "plan_type": "HMO", "market_coverage": "Individual", "on_off_exchange": "Both", "network_name": "BSW Premier HMO", "covers_entire_state": false, "n_counties": 104, "premium_age21": 275.54, "premium_age40": 352.15, "premium_age60": 747.83, "premium_age40_max": 652.41, "quality_overall": 2, "issuer_ind_mlr_ratio": null }, { "plan_id": "33602TX0461116", "business_year": 2026, "issuer_id": "33602", "issuer_company_name": null, "plan_type": "HMO", "market_coverage": "Individual", "on_off_exchange": "Both", "network_name": "MyBlue Health", "covers_entire_state": false, "n_counties": 1, "premium_age21": 277.61, "premium_age40": 354.79, "premium_age60": 753.43, "premium_age40_max": 354.79, "quality_overall": 3, "issuer_ind_mlr_ratio": null } ], "row_counts": { "plans": { "matched": 4, "matched_is_lower_bound": true, "returned": 3, "truncated": true, "limit": 3 } }, "units": { "premium_age21": "USD/month", "premium_age40": "USD/month", "premium_age60": "USD/month", "premium_age40_max": "USD/month", "issuer_ind_premium_earned": "USD", "issuer_ind_mlr_ratio": "ratio", "quality_overall": "stars_1_to_5", "quality_medical": "stars_1_to_5", "quality_member_exp": "stars_1_to_5", "n_counties": "count", "n_rating_areas": "count", "n_benefits_covered": "count", "n_ehb_benefits": "count", "pcp_copay": "as_filed_text", "specialist_copay": "as_filed_text", "er_copay": "as_filed_text", "urgent_care_copay": "as_filed_text", "generic_drug_copay": "as_filed_text", "inpatient_coins": "as_filed_text" }, "query_ids": [ "55481ce3-2f75-4889-bb90-e507eaefc980" ] }, "unit": "exchange_plan_list", "vintage": "PY2026", "source": { "dataset": "Vlada Exchange plan profile (composed from the CCIIO PUFs)", "publisher": "vlada", "catalog_updated_at": "2026-10-13" }, "caveats": [], "response_hash": "d7af81eddd664accefd25d71aaec5f6d509f72a3442d76cd04d58fe01b004c47", "semantic_version": 1, "tool_version": "get_exchange_plan_profile@1.0.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "exchange_plan_list", "scope": { "tool": "get_exchange_plan_profile", "filters": { "plan_year": 2026, "state": "TX", "include_rate_curve": true, "limit": 3 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify include_rate_curve; yes was used. You did not specify plan_year; 2026 was used.", "evidence": { "sources": [ { "dataset": "Vlada Exchange plan profile (composed from the CCIIO PUFs)", "publisher": "vlada", "catalog_updated_at": "2026-10-13" } ], "response_hash": "d7af81eddd664accefd25d71aaec5f6d509f72a3442d76cd04d58fe01b004c47" }, "defaults_applied": [ { "param": "include_rate_curve", "used": true, "reason": "tool default" }, { "param": "plan_year", "used": 2026, "reason": "tool default" } ] } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_exchange_plan_profile` with the inputs as the JSON body. MCP: the tool by name. # query_substrate Query Substrate · v1.1.0 · commercial Set fresh=true for a user-requested saved-view update: execute without the result cache; all access and scan limits still apply. Run a read-only SQL SELECT directly over the Vlada cost-data substrate (Athena/Iceberg) and get the rows back, with provenance. Use this when the pre-built tools don't answer your exact question. WORKFLOW: first call find_data_sources / describe_data_source to find the table + read its card (grain, columns, and the CAVEATS you must apply — e.g. filter ghost rates, never blend across modifiers/methodologies), THEN write SQL against the table's fully-qualified name (e.g. vlada_curated.fact_hospital_chargemaster). RULES: read-only SELECT only (no INSERT/UPDATE/DDL — rejected); you may only query tables in the queryable set your account is entitled to (others are rejected); M-2 versioned tables must be filtered on is_current (injected for a single-table SELECT, otherwise rejected with the column named); results are LIMIT-bounded by your plan's per-call row cap (at most 10000), the delivered payload is bounded to ~47K chars, and the scan is cost-capped. Any bound that drops rows is reported as truncated:true with rows_returned + rows_dropped/total_rows_estimate and a caveat saying how to get the rest: aggregate in SQL (GROUP BY, COUNT, approx_percentile) or narrow the predicate, so the engine computes over the full set and returns the answer in a few rows. Vlada answers questions; it does not export whole tables: paging past the first page (OFFSET) and the bulk lane (submit_query) are not on free or Studio. Every result carries provenance (the engine, query id, bytes scanned, tables read). Apply the source card's methodology yourself: raw SQL does not enforce it. **Inputs.** - `sql` (required): - `max_rows`: - `fresh`: **Known limits.** - Raw SQL does NOT enforce a source's methodology (ghost-rate filter, modifier/methodology non-blending) — the agent must apply the caveats from the source card. For warranted, methodology-enforced numbers use the source's specialized tool. **A real answer** (customer seat, 0.09 s, args `{"sql":"SELECT * FROM medicare_silver.dim_hospital_quality LIMIT 3","max_rows":3}`): ```json { "value": { "rows": [ { "ccn": "640001", "facility_name": "LBJ TROPICAL MEDICAL CENTER", "city": "PAGO PAGO", "state_cd": "AS", "zip_cd": "96799", "county_parish": "EASTERN DISTRICT", "hospital_type": "Acute Care Hospitals", "hospital_ownership": "Government - Hospital District or Authority", "emergency_services": true, "birthing_friendly": null, "overall_rating": null, "overall_rating_footnote": "19", "observed_period": "2026-09-22", "asserted_at": "2026-09-22", "effective_period_start": "2026-09-22", "effective_period_end": "2099-12-31", "cms_vintage_sequence": 1, "parse_revision": 1, "parser_artifact_hash": "01dfeeb3d0b7f7f8f6b2ef70abdfe464d9a56c02bdab90047222ec71d2472511", "source_url": "https://data.cms.gov/provider-data/sites/default/files/resources/893c372430d9d71a1c52737d01239d47_1785189955/Hospital_General_Information.csv", "sha256_content_hash": "f874f09fef895a1ccf5bb7392dcbb2be05c9860339261b093fe00f0c1b013480", "source_id": "cms_hospital_general_information", "is_current": true, "bronze_object_key": null, "s3_version_id": null, "vintage_tag": "general_info_2026-09-22", "drug_source_version_id": null, "latitude": null, "longitude": null }, { "ccn": "240001", "facility_name": "NORTH MEMORIAL HEALTH HOSPITAL", "city": "ROBBINSDALE", "state_cd": "MN", "zip_cd": "55422", "county_parish": "HENNEPIN", "hospital_type": "Acute Care Hospitals", "hospital_ownership": "Voluntary non-profit - Private", "emergency_services": true, "birthing_friendly": "Y", "overall_rating": 1, "overall_rating_footnote": null, "observed_period": "2026-09-22", "asserted_at": "2026-09-22", "effective_period_start": "2026-09-22", "effective_period_end": "2099-12-31", "cms_vintage_sequence": 1, "parse_revision": 1, "parser_artifact_hash": "01dfeeb3d0b7f7f8f6b2ef70abdfe464d9a56c02bdab90047222ec71d2472511", "source_url": "https://data.cms.gov/provider-data/sites/default/files/resources/893c372430d9d71a1c52737d01239d47_1785189955/Hospital_General_Information.csv", "sha256_content_hash": "f874f09fef895a1ccf5bb7392dcbb2be05c9860339261b093fe00f0c1b013480", "source_id": "cms_hospital_general_information", "is_current": true, "bronze_object_key": null, "s3_version_id": null, "vintage_tag": "general_info_2026-09-22", "drug_source_version_id": null, "latitude": null, "longitude": null }, { "ccn": "240002", "facility_name": "ESSENTIA HEALTH ST MARY'S MEDICAL CENTER", "city": "DULUTH", "state_cd": "MN", "zip_cd": "55805", "county_parish": "ST. LOUIS", "hospital_type": "Acute Care Hospitals", "hospital_ownership": "Voluntary non-profit - Private", "emergency_services": true, "birthing_friendly": "Y", "overall_rating": 4, "overall_rating_footnote": null, "observed_period": "2026-09-22", "asserted_at": "2026-09-22", "effective_period_start": "2026-09-22", "effective_period_end": "2099-12-31", "cms_vintage_sequence": 1, "parse_revision": 1, "parser_artifact_hash": "01dfeeb3d0b7f7f8f6b2ef70abdfe464d9a56c02bdab90047222ec71d2472511", "source_url": "https://data.cms.gov/provider-data/sites/default/files/resources/893c372430d9d71a1c52737d01239d47_1785189955/Hospital_General_Information.csv", "sha256_content_hash": "f874f09fef895a1ccf5bb7392dcbb2be05c9860339261b093fe00f0c1b013480", "source_id": "cms_hospital_general_information", "is_current": true, "bronze_object_key": null, "s3_version_id": null, "vintage_tag": "general_info_2026-09-22", "drug_source_version_id": null, "latitude": null, "longitude": null } ], "columns": [ "ccn", "facility_name", "city", "state_cd", "zip_cd", "county_parish", "hospital_type", "hospital_ownership", "emergency_services", "birthing_friendly", "overall_rating", "overall_rating_footnote", "observed_period", "asserted_at", "effective_period_start", "effective_period_end", "cms_vintage_sequence", "parse_revision", "parser_artifact_hash", "source_url", "sha256_content_hash", "source_id", "is_current", "bronze_object_key", "s3_version_id", "vintage_tag", "drug_source_version_id", "latitude", "longitude" ], "row_count": 3, "rows_returned": 3, "returned_row_count": 3, "rows_dropped": 0, "total_rows_estimate": null, "truncated": true, "truncation": { "by_row_limit": true, "by_payload_bytes": false, "row_limit_applied": 3, "payload_budget_chars": 44721, "matching_row_count_known": false, "matching_row_count_at_least": 3 }, "tables_read": [ "medicare_silver.dim_hospital_quality" ], "provenance": { "query_id": "8bdb8af1-ae01-4f91-89a4-7193ee1ac1cb", "bytes_scanned": 14928, "cached": true, "tables_read": [ "medicare_silver.dim_hospital_quality" ], "trace_to_source": "row-level", "sources": [ { "table": "medicare_silver.dim_hospital_quality", "domain": "hospital", "trace_to_source": "row-level", "row_provenance_columns": [ "asserted_at", "source_url", "sha256_content_hash", "bronze_object_key", "s3_version_id", "drug_source_version_id" ], "source_origin": "Hospital Price Transparency files", "catalog_freshness_hint": "Refreshed when CMS republishes Care Compare (roughly quarterly).", "catalog_freshness_basis": "Static catalog metadata; may describe an earlier profile, a record update or a release cadence. Not a measured data edition or publisher release date for this query." } ] }, "rejected_reason": null, "rejected_detail": null }, "unit": "rows", "vintage": null, "source": { "table": "medicare_silver.dim_hospital_quality", "dataset": "Care Compare hospitals (general information, quality measure ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/query_substrate` with the inputs as the JSON body. MCP: the tool by name. # certified_measure Certified Measure · v1.0.0 · curated Run a GOVERNED KPI by name from the certified measures registry. A measure is a registry entry (definition + vintage bindings + official citation + canonical SQL); this tool runs ONLY that registry SQL, so a governed statistic (like the enrollment-weighted share of MA-PD enrollees in 4-plus star contracts) is computed by a compiled methodology, never an improvised join. Call with NO name to list every measure with its status and definition. Call with a name (and optionally rating_year, an int) to execute that measure and get the rows plus the vintage columns, the official citation, the certification status (draft / certified), and the definitional notes. Use this for any governed KPI FIRST; if no measure covers the question, fall back to query_substrate and label the result uncertified. **Inputs.** - `name`: - `rating_year`: **Known limits.** - Runs ONLY the registry's canonical SQL; a governed question with no matching certified measure is NOT answered here, and there is currently NO sanctioned raw-SQL fallback (query_substrate is quarantined pending its truncation-honesty re-grade). An unanswered governed question stays unanswered rather than improvised. - A measure with status 'draft' has not yet been certified by the owner; treat its number as provisional until status is 'certified'. **A real answer** (customer seat, 0.1 s, args `{}`): ```json { "value": { "mode": "list", "measure_count": 4, "index": [ "- pct_enrollment_4plus_stars [certified]: Share of MA-PD enrollment in 4-plus star contracts, weighted by payment-year December enrollment (house convention) Use when: the user asks what percent of Medicare Advantage members are in 4-star-or-better plans.", "- pct_enrollment_4plus_stars_by_canonical_parent [certified]: Share of MA-PD enrollment in 4-plus star contracts BY CANONICAL PARENT (one series through renames and acquisitions), weighted by payment-year December enrollment (house convention) Use when: the user wants a carrier's Star share AS A SERIES across years, or compares carriers across a rename or acquisition (Aetna and CVS Health as one series; Anthem and Elevance; Cigna's Medicare book moving to HCSC in 2025); for a single year's ranking on CMS's name of record use pct_enrollment_4plus_stars_by_parent.", "- pct_enrollment_4plus_stars_by_parent [certified]: Share of MA-PD enrollment in 4-plus star contracts BY PARENT CARRIER, weighted by payment-year December enrollment (house convention) Use when: the user asks about a specific carrier's Star ratings (Humana, UnitedHealth, CVS/Aetna, Elevance, etc.) or wants carriers ranked/compared by their 4-plus-star enrollment share.", "- pct_enrollment_4plus_stars_cms [certified]: CMS-convention enrollment-weighted share of MA-PD enrollees in 4-plus star contracts (reconciles to CMS published figures) Use when: the user wants the CMS-published star share, or to reconcile our number to a CMS fact sheet (CMS weights by November of the release year per 42 CFR 422.166)." ], "measures": [ { "name": "pct_enrollment_4plus_stars", "title": "Share of MA-PD enrollment in 4-plus star contracts, weighted by payment-year December enrollment (house convention)", "status": "certified", "governed": true, "definition": "The HOUSE convention, certified by the owner: for rating year Y, the percent of enrollment in RATED MA-PD contracts (those carrying an Overall Star rating) whose Overall Star is 4.0 or higher, weighted by enrollment in DECEMBER of the PAYMENT year (Y+1) -- the final enrollment number of the year those stars pay out (rating year Y drives quality bonus payments in Y+1). When that December is not yet published, the most recent available month is used and the row says so in weight_basis. Contracts with no Overall rating are excluded from the denominator. The Star measurement window is approximately Y-2 and is reported as metadata only, never joined. This deliberately differs from CMS's published convention (November of the release year); use pct_enrollment_4plus_stars_cms to reconcile to CMS fact sheets.", "params": { "rating_year": { "type": "int", "required": false, "description": "a single Star rating year (e.g. 2025); omit for all available years" } } }, { "name": "pct_enrollment_4plus_stars_by_canonical_parent", "title": "Share of MA-PD enrollment in 4-plus star contracts BY CANONICAL PARENT (one series through renames and acquisitions), weighted by payment-year December enrollment (house convention)", "status": "certified", "governed": true, "params": { "rating_year": { "type": "int", "required": false, "description": "a single Star rating year (e.g. 2025); omit for all available years" } } }, { "name": "pct_enrollment_4plus_stars_by_parent", "title": "Share of MA-PD enrollment in 4-plus star contracts BY PARENT CARRIER, weighted by payment-year December enrollment (house convention)", "status": "certified", "governed": true, "definition": "The HOUSE convention, certified by the owner, rolled up to the PARENT CARRIER: for each parent organization and rating year Y, the percent of that carrier's enrollment in RATED MA-PD contracts (those carrying an Overall Star) whose Overall Star is 4.0 or higher, plus the enrollment-weighted average Overall Star. Weighting is enrollment in DECEMBER of the PAYMENT year (Y+1) -- the final enrollment the stars pay out on -- falling back to the latest available month when that December is not yet published (weight_basis says which). THE CARRIER ROLLUP IS THE POINT: contracts are rolled to the carrier on parent_org_raw (the certified join key), NEVER by name-matching organization_name, which badly undercounts (Humana via a name LIKE catches 37 contracts; via parent_org_raw='Humana Inc.' catches 48). This measure exists so a carrier Star question is never improvised with a wrong rollup. Contracts with no Overall rating are excluded from the denominator. Covers carriers with at least 5,000 rated members; pass a rating_year to get every carrier for one year (a clean ranking), or omit it for all years (rows are ordered largest-carrier-first within each year, so the majors always survive the result-size cap; a mid-size carrier's full multi-year trend is best pulled one rating_year at a time if the all-years result truncates).", "params": { "rating_year": { "type": "int", "required": false, "description": "a single Star rating year (e.g. 2025); omit for all available years" } } }, { "name": "pct_enrollment_4plus_stars_cms", "title": "CMS-convention enrollment-weighted share of MA-PD enrollees in 4-plus star contracts (reconciles to CMS published figures)", "status": "certified", "governed": true, "definition": "The enrollment-weighted Star statistic per 42 CFR 422.166. For each rating year Y, the percent of enrollment in RATED MA-PD contracts (those carrying an Overall Star rating) whose Overall Star is 4.0 or higher. Weight is the CMS Monthly Enrollment by Contract for NOVEMBER of the release year: rating year Y is published in October of Y-1, so Y pairs with November of Y-1 (rating year 2026 pairs with November 2025). Contracts with no Overall rating are excluded from the denominator. The Star measurement window is approxima ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/certified_measure` with the inputs as the JSON body. MCP: the tool by name. # describe_data_source Describe Data Source · v1.3.0 · curated Return the catalog record for one substrate data source. Compact by default (grain, queryable, claim ceiling, freshness SLA, top caveats, recommended next action, columns); pass verbosity='full' for the previous full record: description, row count, provenance chain reference, context doc path, known gaps, and the full source_product_card. IDENTIFIERS: accepts the PUBLIC source_code that find_data_sources returns (e.g. cms_ma_plan_payment) as well as a table FQN (e.g. vlada_curated.fact_rate) or a catalog source_id -- all three resolve to the same card. Also accepts a data-point ID, returning its exact bound table plus the selected point's units, grain, nulls and execution route. When the card includes a coverage-check recipe, run its stated query to inspect retained editions; it is not measured coverage. Do not infer all-history coverage from current-only rows. Avoid extra schema calls when this card already supplies the needed columns. A RETIRED source answers with a redirect (status retired + superseded_by + the successor's fqn), never a card. COLUMNS (1.1.0): the card's `columns` field lists each column's name and type (and a one-line note where the source publishes one), read from a committed snapshot -- never a live Glue call -- so a caller no longer has to `SELECT * LIMIT n` on query_substrate just to learn a table's shape. A source not yet in the snapshot reads `columns_unavailable: run snapshot` rather than silently omitting the field; run ops/scripts/snapshot_catalog_columns.py to populate it. WHAT TO QUERY (2026-09-18): every card carries a block saying what to type. It states the literal fully-qualified table name the raw SQL door accepts -- neither the public source code nor the catalog source id is a table -- plus the predicates a correct read carries (a currentness filter, a year pin, a partition column), and one bounded example SELECT that has been run through the door's own SQL guard before it was printed. A source served by a typed tool instead names that tool and its call; a seat not entitled to the table is told which pack grants it. Column lists are split: the data columns first, the row-lineage columns every row carries in their own named group. **Inputs.** - `source_fqn` (required): - `verbosity`: **A real answer** (customer seat, 0.09 s, args `{"source_fqn":"cms_pfs_relative_value_files"}`): ```json { "value": { "source_code": "cms_pfs_relative_value_files", "resolved_via": "register_source_code", "found": true, "query_with": { "how_to_reach_it": "sql", "source_code": "cms_pfs_relative_value_files", "table": "medicare_silver.fact_pfs_rvu", "table_is_what_to_type": "query_substrate reads TABLES. The name it accepts for this source is medicare_silver.fact_pfs_rvu. 'cms_pfs_relative_value_files' is the catalog's name for the publisher release and is not a table.", "tool": "query_substrate", "required_predicates": [ { "clause": "WHERE is_current", "why": "this table keeps every vintage it has ever been given; without this predicate you are reading version history, not the current version", "enforced_by": "query_substrate defaults simple reads to current rows. For intentional history, explicitly select or filter is_current; the guard permits that without adding a current-only filter. Current-only results do not establish all retained editions.", "column": "is_current" }, { "clause": "WHERE calendar_year = ", "why": "every value on this table is for one calendar_year; without a pin you are mixing editions", "enforced_by": "you (the door does not apply methodology)", "column": "calendar_year" } ], "example": { "tool": "query_substrate", "arguments": { "sql": "SELECT calendar_year, hcpcs_code, modifier, status_code, code_description, work_rvu FROM medicare_silver.fact_pfs_rvu WHERE is_current LIMIT 5", "max_rows": 5 } }, "example_is": "a shape probe: 5 rows so you can see the table. Add every predicate above before you read a number out of it.", "example_validated": { "accepted": true, "checked_against": "vlada.query.sql_guard.validate_read_only_select (the same guard query_substrate runs)", "sql_as_the_door_runs_it": "SELECT calendar_year, hcpcs_code, modifier, status_code, code_description, work_rvu FROM medicare_silver.fact_pfs_rvu WHERE is_current LIMIT 5" }, "entitled": true, "other_tables_in_this_source": [ "medicare_silver.fact_pfs_gpci_locality", "medicare_silver.fact_pfs_locality_config", "medicare_silver.medicare_conversion_factor", "medicare_silver.medicare_pfs_indicators" ] }, "verbosity": "compact", "published_source": { "source_id": "cms_pfs_relative_value_files", "title": "Physician Fee Schedule relative value files (RVUs, indicators, conversion factor, GPCI, locality configuration)", "world": "w2", "publisher": "cms", "landing_page": "https://www.cms.gov/medicare/payment/fee-schedules/physician/pfs-relative-value-files", "how_to_reach_it": "sql", "baked_steer": null, "traps": [ { "id": "year_pin", "rule": "Every value is for one calendar year; pin calendar_year." }, { "id": "implausible_conversion_factor_rows", "rule": "1,432 CY2022-2025 rows carry implausible conversion_factor values; filter conversion_factor BETWEEN 20 AND 50." }, { "id": "locality_not_on_rvu", "rule": "RVU rows are national; a locality-adjusted amount needs GPCI joined on (calendar_year, state, locality_number)." } ], "edition_axes": [ "calendar_year" ], "holdings": [ { "start": "2003", "end": "2026", "grain": "year" } ], "newest_held": { "edition": "2026", "measured_at": "2026-10-12" }, "verification": "verified", "data_points": [ "w2.pfs.work_rvu", "w2.pfs.national_allowed_amount" ] }, "how_to_query_well": { "pin_the_period": { "required": true, "why": "an unpinned period silently mixes editions; the catalog marks this table pin=required", "vintage_columns": [ "calendar_year" ], "clause_in": "query_with.required_predicates" }, "grain_keys": [ "calendar_year", "hcpcs_code", "modifier", "vintage_tag" ] }, "summary": { "catalog_source_id": "medicare_pfs", "source_id": "medicare_pfs", "title": "Medicare Physician Fee Schedule (PFS)", "domain": "medicare", "status": "live", "superseded_by": null, "grain": "One row per (hcpcs_code, modifier, calendar_year) -- CMS PFS RVU components (work/PE/MP RVUs + conversion_factor). DEEP CY2003-2026. Filter conversion_factor BETWEEN 20 AND 50. RBP prices at the cl...", "row_count": 642307, "queryable": true, "not_queryable_reason": null, "claim_ceiling": "queryable", "freshness_sla": "Annual (CMS publishes ~early November, effective Jan 1); mirror refreshed from RDS.", "top_caveats": [ "National payment only \u2014 no locality column; join GPCI/locality tables for a locality-adjusted rate." ], "columns": [ { "name": "calendar_year", "type": "int" }, { "name": "hcpcs_code", "type": "string" }, { "name": "modifier", "type": "string" }, { "name": "status_code", "type": "string" }, { "name": "code_description", "type": "string" }, { "name": "work_rvu", "type": "decimal(38,12)" }, { "name": "non_facility_pe_rvu", "type": "decimal(38,12)" }, { "name": "facility_pe_rvu", "type": "decimal(38,12)" }, { "name": "mp_rvu", "type": "decimal(38,12)" }, { "name": "total_non_facility_rvu", "type": "decimal(38,12)" }, { "name": "total_facility_rvu", "type": "decimal(38,12)" }, { "name": "conversion_factor", "type": "decimal(38,12)" }, { "name": "global_period", "type": "string" }, { "name": "pre_service_time", "type": "decimal(38,12)" }, { "name": "intra_service_time", "type": "decimal(38,12)" }, { "name": "post_service_time", "type": "decimal(38,12)" }, { "name": "mult_proc_indicator", "type": "string" }, { "name": "bilateral_surge ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/describe_data_source` with the inputs as the JSON body. MCP: the tool by name. # describe_entity Describe Entity · v2.0.0 · curated Everything layer one holds about one entity (an entity_id from resolve_entity): what it is and its identifiers; who owned or controlled it on a date (on=YYYY-MM-DD, default today), the path to the top parent with each hop's basis, grade, dates and evidence; what it holds (contracts, plans, Medicaid plans, issuers, subsidiaries), or everything under its top parent with scope=group; its dated corporate events (acquisitions, mergers, transfers of business, renames) with filings. Every date follows the doctrine (at least since; last seen). **Inputs.** - `entity_id` (required): - `on`: - `scope`: - `events`: - `limit`: **Known limits.** - Layer one only: no facilities, doctors, networks or PBMs (layers two to five follow on Ben's signature). - About 16% of Medicare Advantage members sit under a chain with one hop resting on CMS's parent string alone (grade B); the top parent is not in doubt, the corroborating filing is not yet attached. - Belief time (what an earlier build served) is not yet queryable; every answer carries the build it was read from. - The 233 open review-queue rows (candidate contract transfers) are not served. **A real answer** (customer seat, 14.15 s, args `{"entity_id":"le:000160","on":"2026-10-01"}`): ```json { "value": { "found": true, "not_found_reason": null, "query": { "entity_id": "le:000160", "on": "2026-10-01", "scope": "entity", "events": true }, "status": "found", "entity": { "entity_id": "le:000160", "kind": "legal_entity", "label": "UnitedHealthcare Benefits of Texas, Inc.", "status": "active", "build": "v3o" }, "identifiers": [ { "namespace": "cms_org_name", "value": "UNITEDHEALTHCARE BENEFITS OF TEXAS, INC.", "valid_from": "2011-07-01", "valid_to": "2023-12-31", "evidence_id": "ev:ma_name:le:000160" }, { "namespace": "cms_org_name", "value": "UnitedHealthcare Benefits of Texas, Inc.", "valid_from": "2022-01-01", "valid_to": "", "evidence_id": "ev:ma_name:le:000160" }, { "namespace": "ein", "value": "330115163", "valid_from": "2013-01-01", "valid_to": "", "evidence_id": "ev:mlr_id:le:000160:ein" }, { "namespace": "naic", "value": "95174", "valid_from": "2013-01-01", "valid_to": "", "evidence_id": "ev:mlr_id:le:000160:naic" } ], "owners": { "top": "le:000013", "path": [ { "from": "le:000160", "to": "le:000013", "rel": "controlled_by", "basis": "reported_ultimate_parent", "grade": "B", "dates": { "from": "2011-07-01", "from_is": "at least since", "to": null, "to_is": "still true" }, "event_id": null, "evidence_id": "ev:ma_parent:le:000160:le:000013:2011-07", "settled_by_document": false, "to_label": "UnitedHealth Group, Inc." } ], "on": "2026-10-01", "top_label": "UnitedHealth Group, Inc." }, "holdings": { "scope": "entity", "roots": [ "le:000160" ], "counts": { "contracts": 5, "plans": 0, "medicaid_plans": 0, "issuers": 1, "subsidiaries": 0, "groups": 0, "brands": 0, "other": 0 }, "contracts": [ { "entity_id": "contract:H0609", "label": "H0609", "holder": "le:000160", "rel": "held_by", "basis": "", "grade": "A", "dates": { "from": "2022-01-01", "from_is": "start", "to": null, "to_is": "still true" } }, { "entity_id": "contract:H0624", "label": "H0624", "holder": "le:000160", "rel": "held_by", "basis": "", "grade": "A", "dates": { "from": "2022-01-01", "from_is": "start", "to": null, "to_is": "still true" } }, { "entity_id": "contract:H1360", "label": "H1360", "holder": "le:000160", "rel": "held_by", "basis": "", "grade": "A", "dates": { "from": "2022-01-01", "from_is": "start", "to": null, "to_is": "still true" } }, { "entity_id": "contract:H3805", "label": "H3805", "holder": "le:000160", "rel": "held_by", "basis": "", "grade": "A", "dates": { "from": "2022-01-01", "from_is": "start", "to": null, "to_is": "still true" } }, { "entity_id": "contract:H6706", "label": "H6706", "holder": "le:000160", "rel": "held_by", "basis": "", "grade": "A", "dates": { "from": "2022-01-01", "from_is": "start", "to": null, "to_is": "still true" } } ], "plans": [], "medicaid_plans": [], "issuers": [ { "entity_id": "hios:70754", "label": "UnitedHealthcare Benefits of Texas, Inc.", "holder": "le:000160", "rel": "held_by", "basis": "", "grade": "A", "dates": { "from": "2013-01-01", "from_is": "start", "to": null, "to_is": "still true" } } ], "subsidiaries": [], "groups": [], "brands": [], "other": [], "truncated": false }, "events": [], "evidence": { "ev:ma_parent:le:000160:le:000013:2011-07": { "evidence_id": "ev:ma_parent:le:000160:le:000013:2011-07", "source_type": "official_register", "field": "parent_org_raw" } } }, "unit": "ontology_entity", "vintage": "2026-10-28", "source": { "dataset": "Vlada ontology layer one (who holds and who owns every payer instrument, over time)", "publisher": "vlada", "catalog_updated_at": "2026-10-28" }, "caveats": [], "response_hash": "0042c6cdafe5db00c3988f2af2a7750224d1306895ecdbb432c1f72cef0aa4b4", "semantic_version": 1, "tool_version": "describe_entity@2.0.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "ontology_entity", "scope": { "tool": "describe_entity", "filters": { "entity_id": "le:000160", "scope": "entity", "events": true, "limit": 200 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify events; yes was used. You did not specify limit; 200 was used. You did not specify scope; entity was used.", "evidence": { "sources": [ { "dataset": "Vlada ontology layer one (who holds and who owns every payer instrument, over time)", "publisher": "vlada", "catalog_updated_at": "2026-10-28" } ], "response_hash": "0042c6cdafe5db00c3988f2af2a7750224d1306895ecdbb432c1f72cef0aa4b4" }, "defaults_applied": [ { "param": "events", "used": true, "reason": "tool default" }, { "param": "limit", "used": 200, "reason": "tool default" }, { "param": "scope", "used": "entity", "reason": "tool default" } ] } ``` REST: `POST https://api.vladahealth.com/v1/tools/describe_entity` with the inputs as the JSON body. MCP: the tool by name. # describe_schema Describe Schema · v1.0.0 · curated Return the semantic layer: marts, columns, invariants, canonical payers, and the tools YOU can call (the same list tools/list returns for you, never a wider catalog). Compact by default (a manifest: marts + a name + one-line summary per tool, under ~8K chars). Fetch one section with describe_schema(section='') / section='tools' / section='invariants'. Pass verbosity='full' for the previous full payload. Agents call this first to learn the surface, then fetch the section or tool they need. **Inputs.** - `mart_name`: - `section`: - `verbosity`: - `limit`: - `offset`: - `include_invariants`: - `include_examples`: **A real answer** (customer seat, 0.08 s, args `{"limit":10}`): ```json { "value": { "version": 1, "verbosity": "compact", "note": "Compact manifest. Fetch one section with describe_schema(section=''), or pass verbosity='full' for the previous full payload.", "mart_count": 4, "marts": [ { "name": "fact_rate", "status": "partial", "superseded_by": null, "columns": 17, "approx_bytes": 3887, "fetch": "describe_schema(section='fact_rate')" }, { "name": "mart_rate_by_code", "status": "retired", "retired": true, "columns": 17, "approx_bytes": 3894, "fetch": "describe_schema(section='mart_rate_by_code')" }, { "name": "mart_rate_by_entity", "status": "live", "superseded_by": null, "columns": 17, "approx_bytes": 4004, "fetch": "describe_schema(section='mart_rate_by_entity')" }, { "name": "rate_provider_edge", "status": "live", "superseded_by": null, "columns": 12, "approx_bytes": 3016, "fetch": "describe_schema(section='rate_provider_edge')" } ], "tool_count": 58, "tools": [ { "name": "asp_pricing_lookup", "summary": "Given an HCPCS code or short-description search, returns Medicare Part B ASP quarterly payment-li..." }, { "name": "certified_measure", "summary": "Run a GOVERNED KPI by name from the certified measures registry." }, { "name": "compare_hospital_rates", "summary": "NEGOTIATED RATES BY INSURER AND PLAN ARE SERVED HERE: hospital price-transparency files carry the..." }, { "name": "describe_data_source", "summary": "Return the catalog record for one substrate data source." }, { "name": "describe_entity", "summary": "Everything layer one holds about one entity (an entity_id from resolve_entity): what it is and it..." }, { "name": "describe_schema", "summary": "Return the semantic layer: marts, columns, invariants, canonical payers, and the tools YOU can ca..." }, { "name": "excluded_prescriber_payment_screen", "summary": "Given an NPI (10-digit), returns OIG LEIE exclusion status and \u2014 if excluded \u2014 any Open Payments..." }, { "name": "fetch_query", "summary": "Fetch the result of an async job once it is done." }, { "name": "find_data_sources", "summary": "Search the Vlada substrate catalog by keyword." }, { "name": "find_views", "summary": "Look up the vetted analytic VIEWS for a question before you query." } ], "invariants": { "count": 5, "ids": [ "methodology_conflict", "outlier_bounds", "uhc_custom_code_expansion", "placeholder_allowed_amount" ] }, "payers": { "count": 45, "sample": [ "uhc", "anthem", "aetna", "cigna", "humana", "kaiser", "centene", "premera", "geisinger", "health_partners" ] }, "codes": { "systems": [ "CPT", "HCPCS", "MS-DRG", "CDT", "ICD", "CUSTOM" ], "common_count": 6 }, "sections": { "mart": "describe_schema(section='') for one mart's columns", "tools": "describe_schema(section='tools') for tool descriptions + params (paginated)", "invariants": "describe_schema(section='invariants') for full invariant text", "full": "describe_schema(verbosity='full') for the entire payload" } }, "unit": null, "vintage": null, "methodology": null, "caveats": [], "response_hash": "bdd61486fd9a21be3b43d47ca4a9c6442fd915459ee8cfa72be6feed0e079dd9", "semantic_version": 1, "tool_version": "describe_schema@1.0.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "scope": { "tool": "describe_schema", "filters": { "verbosity": "compact", "limit": 10, "offset": 0, "include_invariants": true, "include_examples": true } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify include_examples; yes was used. You did not specify include_invariants; yes was used. You did not specify offset; 0 was used. You did not specify verbosity; compact was used.", "evidence": { "response_hash": "bdd61486fd9a21be3b43d47ca4a9c6442fd915459ee8cfa72be6feed0e079dd9" }, "defaults_applied": [ { "param": "include_examples", "used": true, "reason": "tool default" }, { "param": "include_invariants", "used": true, "reason": "tool default" }, { "param": "offset", "used": 0, "reason": "tool default" }, { "param": "verbosity", "used": "compact", "reason": "tool default" } ], "paging": { "section": "value.tools", "returned": 10, "total": 58, "next_offset": 10, "recover_with": [ { "tool": "describe_schema", "arguments_hint": { "offset": 10, "limit": 10 }, "note": "10 of 58 value.tools entries are in this answer. Re-ask with offset=10 for the next page, or narrow the question so the whole answer fits." } ], "applied": "limit=10" }, "as_of": "2026-11-09", "as_of_basis": "the catalog of data sources this answer was composed from" } ``` REST: `POST https://api.vladahealth.com/v1/tools/describe_schema` with the inputs as the JSON body. MCP: the tool by name. # fetch_query Fetch Query · v1.0.0 · curated Fetch the result of an async job once it is done. Returns the wrapped tool's full response when status is done; a not_ready caveat while it is still queued/running; or the error when it failed. **Inputs.** - `job_id` (required): REST: `POST https://api.vladahealth.com/v1/tools/fetch_query` with the inputs as the JSON body. MCP: the tool by name. # find_data_sources Find Data Sources · v1.0.0 · curated Search the Vlada substrate catalog by keyword. Returns the matching data sources (commercial TiC, hospital HPT, Medicare, drug pricing, provider identity, curated marts, provenance registries) ranked by relevance. Compact by default (identity + queryable + claim ceiling + the exact describe_data_source call per hit); pass verbosity='full' for the previous full source_product_card per result. Paginates with limit (default 25, max 200) + offset; the response carries total_count, returned_count, and offset. Optional filters: {domain, stage, status, limit}. Agents call this first to discover what data Vlada has. Since 2026-09-02 the answer leads with DATA POINTS (`data_points`: the measure/dimension asked for, with its source, door, table.column and must-read trap) and the table cards follow as physical locations. Every hit carries `source_code` -- the one public code, which describe_data_source accepts verbatim -- alongside the table's `source_fqn`. Points and tables are ranked by ONE ranker (the authored data-point scorer). Retired tables are never returned; they appear only as `supersedes` on the live successor's card. BOUNDED (2026-09-18): the default call is compact and paged -- both the table cards and the data points come back a page at a time, each with its own total and next offset -- so a default call can never truncate. Pass verbosity='full' for the whole point record and the full source_product_card per hit. **Inputs.** - `query`: - `filters`: - `world`: - `max_points`: - `limit`: - `offset`: - `verbosity`: **A real answer** (customer seat, 0.65 s, args `{"query":"medicare physician fee schedule","limit":5}`): ```json { "value": { "query": "medicare physician fee schedule", "filters": null, "verbosity": "compact", "status": "matched", "retrieval_mode": "lexical", "scope_verification": { "status": "not_verified", "basis": "catalog_match_only", "geography": "not_verified", "time_coverage": "not_verified", "population": "not_verified", "completeness": "not_verified" }, "ranker": "authored_data_point_scorer", "excludes": "retired", "data_points": [ { "rank": 1, "world": "w2", "data_point": { "id": "w2.puf.physician_avg_medicare_allowed", "name": "Medicare average allowed amount by provider and service", "unit": "USD_per_service", "kind": "measure" }, "source": { "id": "cms_puf_physician_other_practitioners", "source_code": "cms_puf_physician_other_practitioners", "title": "Medicare Physician & Other Practitioners public use files (by provider and service; by geography and service)", "how_to_reach_it": "sql" }, "location": { "table": "medicare_silver.fact_physician_by_provider_service", "column": "avg_medicare_allowed", "variants": [ "paid=avg_medicare_payment", "standardized=avg_medicare_standardized", "submitted=avg_submitted_charge", "services=tot_services", "beneficiaries=tot_benes" ], "required_filters": [ "is_current=true" ] }, "trap": { "must_read": "Always filter data_year and a state or code; averages of paid claims; null is suppressed.", "ids": [ "data_year_pin", "claims_average_not_fee_schedule", "small_cell_suppressed_null", "heavy_scan" ] }, "next": "bounded query_substrate on medicare_silver.fact_physician_by_provider_service", "fetch": "describe_data_source(source_fqn='cms_puf_physician_other_practitioners')", "relevance": 51 }, { "rank": 2, "world": "w2", "data_point": { "id": "w2.pfs.national_allowed_amount", "name": "PFS national allowed amount", "unit": "USD", "kind": "rate" }, "source": { "id": "cms_pfs_relative_value_files", "source_code": "cms_pfs_relative_value_files", "title": "Physician Fee Schedule relative value files (RVUs, indicators, conversion factor, GPCI, locality configuration)", "how_to_reach_it": "sql" }, "location": { "table": "medicare_silver.fact_pfs_rvu", "column": "conversion_factor", "variants": [ "total_nonfacility_rvu=total_non_facility_rvu", "total_facility_rvu=total_facility_rvu", "status=status_code" ], "required_filters": [] }, "trap": { "must_read": "Compute RVU x conversion factor after filtering implausible rows; status_code says whether the code is payable; national only.", "ids": [ "year_pin", "implausible_conversion_factor_rows", "locality_not_on_rvu" ] }, "next": "call medicare_allowed", "fetch": "describe_data_source(source_fqn='cms_pfs_relative_value_files')", "relevance": 45 }, { "rank": 3, "world": "w2", "data_point": { "id": "w2.clfs.national_limit_amount", "name": "CLFS national limitation amount", "unit": "USD", "kind": "rate" }, "source": { "id": "cms_clfs_national_rates", "source_code": "cms_clfs_national_rates", "title": "Clinical Laboratory Fee Schedule (national limitation amounts)", "how_to_reach_it": "sql" }, "location": { "table": "medicare_silver.fact_clfs_national_rate", "column": "national_limit_amount", "variants": [], "required_filters": [] }, "trap": { "must_read": "Pin calendar_year and quarter; do not union with the legacy locality table.", "ids": [ "quarter_pin" ] }, "next": "bounded query_substrate on medicare_silver.fact_clfs_national_rate", "fetch": "describe_data_source(source_fqn='cms_clfs_national_rates')", "relevance": 42 } ], "data_points_total_count": 3, "data_points_returned_count": 3, "data_points_detail_hint": "verbosity='full' returns grain, time pin, nulls, variants and basis for each point; describe_data_source(source_code) returns the table to query and a verified example.", "match_count": 322, "returned": 5, "total_count": 322, "returned_count": 5, "offset": 0, "limit": 5, "results": [ { "source_id": "cms_physician_by_provider_service", "source_code": "cms_puf_physician_other_practitioners", "title": "Medicare Physician & Other Practitioners \u2014 by Provider and Service (granular price)", "published_source_code": "cms_puf_physician_other_practitioners", "how_to_reach_it": "sql", "domain": "medicare", "status": "live", "grain": "One row per (data_year, rendering NPI, HCPCS, place of service) \u2014 charge/allowed/paid.", "queryable": true, "not_queryable_reason": null, "claim_ceiling": "queryable", "fetch": "describe_data_source(source_fqn='medicare_silver.fact_physician_by_provider_service')", "fetch_unavailable_reason": null, "relevance": 1051, "relevance_basis": "data_point", "relevance_why": "holds data point w2.puf.physician_avg_medicare_allowed", "world": "Medicare", "view": "By doctor" }, { "source_id": "medicare_physician_payment_by_geo", "source_code": "cms_puf_physician_other_practitioners", "title": "Medicare Physician & Other Practitioners by Geography (avg allowed/payment per HCPCS)", "published_source_code": "cms_puf_physician_other_practitioners", "how_to_reach_it": "sql", "domain": "medicare", "status": "live", "grain": "One row per (geography [National|State], HCPCS, place-of-service) per data year.", "queryable": true, "not_queryable_reason": null, "claim_ceiling": "queryable", "fetch": "describe_data_source(source_fqn='medicare_silver.fact_physician_payment_by_geo')", "fetch_unavailable_reason": ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/find_data_sources` with the inputs as the JSON body. MCP: the tool by name. # find_views Find Views · v1.0.0 · curated Look up the vetted analytic VIEWS for a question before you query. A view is the decision that comes before any table or chart: who is counted (population), against what base, compared to what, over which period and vintage, and what one row is (grain); plus the weight, the named measures, the forms that draw it (draw_as), how to reach the data (reach: the typed tool that carries the population and base first, then the source codes to read with describe_data_source and query_substrate), the rules that must hold and the ways the view goes wrong or contradicts another view (contradicts_if). Pass the user's question in their words; add a domain (ma_market, ma_benefits, hospital_prices, payer_rates, medicare_benchmark, ma_stars, medicaid, marketplace, drug_pricing, formulary, pbm, providers, employer, mlr, hospital_quality, drug_policy, ma_value, cross_domain) or a level (executive for a headline, actuarial for weights, cohorts, decompositions and distributions, detailed for row-level lookups) when you know it. Returns up to 8 views, best first; the default is 4. Use the returned population, base and period in your call and say them in the answer. A view is analytical guidance: it grants no data access and proves no coverage for the places, dates or populations in your question. Verify coverage with the source's own card before you quote a number. A question no view covers is composed from the same fields. **Inputs.** - `question`: - `domain`: - `level`: - `limit`: **Known limits.** - A view is guidance, not data: it grants no access to the tools or sources it names and proves no coverage for the places, dates or populations in the question. - Ranking is deterministic word overlap with the domain's vocabulary; a question phrased far from the catalog's words may rank a neighbouring view first. Pass a domain or a level to narrow it. **A real answer** (customer seat, 0.95 s, args `{"question":"For plans that continue into 2027 in Arizona, how did the out-of-pocket maximum change by product type?","limit":3}`): ```json { "value": { "question": "For plans that continue into 2027 in Arizona, how did the out-of-pocket maximum change by product type?", "domain": null, "level": null, "limit": 3, "views": [ { "id": "ma_benefits_same_member_design_change", "domain": "ma_benefits", "level": "executive", "question": "Did plan design get better or worse next year for members who stay put?", "why_it_matters": "Shows who is investing and who is cutting.", "population": "September Y members of H and R contracts, plans 001 to 799; PDP, Cost, MMP excluded", "base": "members_y for Y, members_y1 (continuing) for Y+1; pct metrics over their own domain (MA-PD or D-SNP)", "comparison": "Y design against Y+1 design", "period": "transition 2026 to 2027, Landscape editions printed", "grain": "product type", "weight": "member-weighted, September Y", "measures": [ "prem usd per month", "prem0 pct of members", "moop usd per year", "moop5k pct", "ded usd per year", "star stars" ], "rules": [ "Print members_y and members_y1 on every row", "Change is dollars or points", "Departing members are counted and shown" ], "contradicts_if": [ "Y covers all members while Y+1 covers only continuing members and the page says same members", "Title quotes a number the table does not contain" ], "draw_as": [ { "form": "table columns with year and yoy_previous_key; the change under the value", "shape": "the same measure at year Y-1 and Y" }, { "form": "chart dot with two series", "shape": "category + value at t1 + value at t2" } ], "reach": [ { "tool": "get_landscape_benefit_change" } ] }, { "id": "ma_benefits_moop_distribution", "domain": "ma_benefits", "level": "actuarial", "question": "Where do members sit on the out-of-pocket maximum?", "why_it_matters": "MOOP is the tail protection behind medical value.", "population": "non-employer MA members by product type, D-SNP apart", "base": "members with a filed in-network MOOP", "comparison": "percentiles, the $5,000 mark, the year's mandatory maximum", "period": "CY2026 filing; CY2027 from the Landscape", "grain": "product type by MOOP band", "weight": "member-weighted, stated month", "measures": [ "p10 to p90 usd per year", "members at or under $5", "000 pct", "members at the maximum pct" ], "rules": [ "In-network MOOP only", "The 2023 MOOP code rename is a break" ], "contradicts_if": [ "Filing and Landscape years mixed without labels" ], "draw_as": [ { "form": "chart band", "shape": "time + p50 + p25 and p75 (+ p5 and p95)" }, { "form": "chart strip", "shape": "numeric by up to 12 groups" } ], "reach": [ { "tool": "get_landscape_benefit_change" }, { "tool": "query_substrate", "source_codes": [ "vlada_w3_benefit_vector" ], "how": "describe_data_source(source_code) prints the table, its required filters and an example" } ] }, { "id": "ma_market_exits_by_parent", "domain": "ma_market", "level": "executive", "question": "Which insurers have the most members in a plan not sold next year, and what share of each insurer's members is that?", "why_it_matters": "Names who is doing the cutting, and whether it is a small share of a big book or most of a small one (the launch's first question, September 30, 2026).", "population": "MA base: H/R contracts, plans 001-799, September Y members whose plan-county is in the Y Landscape, in one state or nationally. Excludes PDP, 800-series, Cost, MMP.", "base": "the parent's own MA base members in that product type and state, September Y", "comparison": "other parents in the same product type and state; the state row for the same product type", "period": "September Y against the Y+1 Landscape; truth where the crosswalk is held, else a range", "grain": "parent within product type", "weight": "member-weighted, September Y", "measures": [ "members (count)", "departing (count)", "departing share of the parent's own members (%)", "est_lost_low/high (count)" ], "rules": [ "Parent rows are cut by product type; never a pooled parent row across product types.", "The share is over the parent's own base_members in that product type and state, not the state total.", "Parent is CMS's reported parent at September Y, never name-matched across renames.", "Departing is not lost; a lost figure is a range until the crosswalk posts.", "Cells under 11 count as zero, so counts are floors." ], "contradicts_if": [ "A parent's share computed over the state or national base.", "Parents summed across product types and called a parent row.", "Title says lost, table shows departing." ], "draw_as": [ { "form": "table sorted desc with bar on the value and a total row", "shape": "ranked rows plus the total" }, { "form": "chart bar, orientation horizontal, sort desc, intent rank", "shape": "category + value, up to 30 categories" }, { "form": "table with section rows", "shape": "measures x product types, repeated for year Y+1, year Y and the change" } ], "reach": [ { "tool": "get_landscape_exits", "how": "group_by=parent_by_product state=" } ] } ], "returned": 3, "catalog": { "views": 159, "domains": { "cross_domain": { "executive": 5, "actuarial": 7, "detailed": 4 }, "drug_policy": { "executive": 1, "actuarial": 1, "detailed": 2 }, "drug_pricing": { "executive": 1, "actuarial": 4, "detailed": 1 }, "employer": { "executive": 5, ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/find_views` with the inputs as the JSON body. MCP: the tool by name. # how_to_join How To Join · v1.3.0 · curated Return the fail-closed measured way to join two Vlada substrate tables, including an explicit DIRECT_OK, DIRECT_DECLARED_KEY, NEEDS_GRAIN, ROUTE_THROUGH_DIM, ROUTE_MULTIHOP, or DO_NOT_SERVE directive. Direct joins come from (in order) the measured connection registry, the VALIDATED join graph (catalog.json join_edges: uniqueness >= 0.999 and match >= 0.80, measured live), or the semantic layer's declared shared surrogate key (DIRECT_DECLARED_KEY, labelled not-live-measured); a validated or declared direct join is always preferred over a route and never refused. Route coverage (min_coverage) is the weaker side of the weakest hop; a route under 50% is labelled low_coverage_route. Unproved composite, NEEDS_GRAIN, quarantined, impossible, or N:M direct evidence cannot be served. With only table_a, it lists every executable connection from that table. **Inputs.** - `table_a` (required): - `table_b`: - `limit`: - `offset`: **Known limits.** - Only joins resolvable to physical columns + measurable live are in the registry; big-fact joins are dimension-routed. Absence of a verified join means 'not proven', not 'impossible'. **A real answer** (customer seat, 0.24 s, args `{"table_a":"fact_hospital_chargemaster","table_b":"dim_provider_ccn"}`): ```json { "value": { "table_a": "fact_hospital_chargemaster", "directive": "DIRECT_OK", "join": { "source": "catalog.json join_edges (validated_sampled)", "entity_key": "cms:ccn", "verdict": "VALIDATED", "match_rate": 0.999409, "uniqueness_on_authority": 1.0, "left_cov": 0.999409, "right_cov": null, "cardinality": "N:1", "fan_out_ratio": 1.0, "sample_size": 5076, "notes": "PASSED on a SAMPLE of the fact side -- this shows the join works, not that it holds universally." }, "path": null, "grain_qualifier": [], "registry": { "status": "loaded", "measured_edge_count": 3008, "join_graph_validated_edge_count": 164, "table_count": 305, "source_files": [] } }, "unit": null, "vintage": null, "methodology": null, "caveats": [], "response_hash": "dbfeb6f1323d95fe4df912741b146b40305b3b8b2b716d7602516e06b1fa4426", "semantic_version": 1, "tool_version": "how_to_join@1.3.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "scope": { "tool": "how_to_join", "filters": { "table_a": "fact_hospital_chargemaster", "offset": 0 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify offset; 0 was used.", "evidence": { "response_hash": "dbfeb6f1323d95fe4df912741b146b40305b3b8b2b716d7602516e06b1fa4426" }, "defaults_applied": [ { "param": "offset", "used": 0, "reason": "tool default" } ], "as_of": "2026-11-09", "as_of_basis": "the catalog of data sources this answer was composed from" } ``` REST: `POST https://api.vladahealth.com/v1/tools/how_to_join` with the inputs as the JSON body. MCP: the tool by name. # poll_query Poll Query · v1.0.0 · curated Poll the status of an async job submitted with submit_query. Returns queued/running/done/error and whether it is terminal. When done, read the result with fetch_query. **Inputs.** - `job_id` (required): REST: `POST https://api.vladahealth.com/v1/tools/poll_query` with the inputs as the JSON body. MCP: the tool by name. # query Query · v0.3.0 · curated SAFE STUB. Given a catalog source FQN, return HOW to query it FROM THIS MCP -- and only paths executable here: query_substrate (sync, small) or submit_query -> poll_query -> fetch_query (async), each with the source's fqn and one working example SELECT carrying an explicit LIMIT (and WHERE is_current when the table is M-2 versioned). Never executes SQL. A source outside the queryable set (retired / partial / planned / unattributed) gets no executable path and the rule that excluded it. COLUMNS (0.3.0): example_sql names the first ~6 real columns instead of `SELECT *` when the source is in the committed columns snapshot (same one describe_data_source's `columns` field reads); falls back to `SELECT *` when it is not, never a guessed column list. IDENTIFIERS (2026-09-18): this accepts every identifier describe_data_source accepts -- the public source code, a catalog source id, or a table FQN -- and answers with the same what-to-type block, so the two can never disagree about whether an identifier exists. **Inputs.** - `source_fqn` (required): - `sql_or_params`: **A real answer** (customer seat, 0.62 s, args `{"source_fqn":"cms_pfs_relative_value_files"}`): ```json { "value": { "source_code": "cms_pfs_relative_value_files", "resolved_via": "register_source_code", "accepted": true, "executed": false, "query_with": { "how_to_reach_it": "sql", "source_code": "cms_pfs_relative_value_files", "table": "medicare_silver.fact_pfs_rvu", "table_is_what_to_type": "query_substrate reads TABLES. The name it accepts for this source is medicare_silver.fact_pfs_rvu. 'cms_pfs_relative_value_files' is the catalog's name for the publisher release and is not a table.", "tool": "query_substrate", "required_predicates": [ { "clause": "WHERE is_current", "why": "this table keeps every vintage it has ever been given; without this predicate you are reading version history, not the current version", "enforced_by": "query_substrate defaults simple reads to current rows. For intentional history, explicitly select or filter is_current; the guard permits that without adding a current-only filter. Current-only results do not establish all retained editions.", "column": "is_current" }, { "clause": "WHERE calendar_year = ", "why": "every value on this table is for one calendar_year; without a pin you are mixing editions", "enforced_by": "you (the door does not apply methodology)", "column": "calendar_year" } ], "example": { "tool": "query_substrate", "arguments": { "sql": "SELECT calendar_year, hcpcs_code, modifier, status_code, code_description, work_rvu FROM medicare_silver.fact_pfs_rvu WHERE is_current LIMIT 5", "max_rows": 5 } }, "example_is": "a shape probe: 5 rows so you can see the table. Add every predicate above before you read a number out of it.", "example_validated": { "accepted": true, "checked_against": "vlada.query.sql_guard.validate_read_only_select (the same guard query_substrate runs)", "sql_as_the_door_runs_it": "SELECT calendar_year, hcpcs_code, modifier, status_code, code_description, work_rvu FROM medicare_silver.fact_pfs_rvu WHERE is_current LIMIT 5" }, "entitled": true, "other_tables_in_this_source": [ "medicare_silver.fact_pfs_gpci_locality", "medicare_silver.fact_pfs_locality_config", "medicare_silver.medicare_conversion_factor", "medicare_silver.medicare_pfs_indicators" ] }, "status": "live", "superseded_by": null, "queryable": true, "not_queryable_reason": null, "requested_params": null, "how_to_query": { "executable_paths": [ { "lane": "sync", "tool": "query_substrate", "when": "small, bounded reads (LIMIT-capped, ~few hundred wide rows per page)", "call": { "tool": "query_substrate", "arguments": { "max_rows": 25 } } }, { "lane": "async", "tools": [ "submit_query", "poll_query", "fetch_query" ], "when": "a scan that needs more time than the request path allows", "call": { "tool": "submit_query", "arguments": { "tool": "query_substrate", "arguments": { "max_rows": 25 } } }, "then": "poll_query(job_id) until done, then fetch_query(job_id)" } ], "rules": [ "read-only SELECT with an explicit LIMIT (capped at 10,000; the delivered payload is bounded and truncation is reported)", "apply the source card's known_gaps yourself -- raw SQL enforces safety, not methodology" ] }, "catalog_declared_surface": { "note": "catalog prose describing where the data lives; NOT an executable path from this MCP. Use how_to_query." }, "note": "query() is a discovery stub -- it does not execute SQL. Every path in how_to_query is callable from this MCP; nothing else is implied." }, "unit": null, "vintage": null, "source": { "dataset": "Physician Fee Schedule relative value files (RVUs, indicators, conversion factor, GPCI, locality configuration)", "publisher": "cms", "catalog_updated_at": "2026-06-03" }, "methodology": null, "caveats": [], "response_hash": "d7b72644e1caafd841693284ad4629696e3c9f5789107f0d0fe260ab7fa3311c", "semantic_version": 1, "tool_version": "query@0.3.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "scope": { "tool": "query", "filters": { "source_fqn": "cms_pfs_relative_value_files" } } }, "method": "Your SQL ran as one read-only query over 0 tables, named in this answer's evidence. The calculation is the one your SQL expresses; nothing was aggregated or adjusted on top of it.", "evidence": { "sources": [ { "dataset": "Physician Fee Schedule relative value files (RVUs, indicators, conversion factor, GPCI, locality configuration)", "publisher": "cms", "catalog_updated_at": "2026-06-03" } ], "response_hash": "d7b72644e1caafd841693284ad4629696e3c9f5789107f0d0fe260ab7fa3311c" }, "as_of": "2026-11-09", "as_of_basis": "the catalog of data sources this answer was composed from" } ``` REST: `POST https://api.vladahealth.com/v1/tools/query` with the inputs as the JSON body. MCP: the tool by name. # resolve_entity Resolve Entity · v2.0.0 · curated Resolve any company name or ID to Vlada's canonical entity: a legal entity (le:...), a brand, an NAIC group, a CMS contract (H1234), a plan (H1234-001@2027), a Medicaid plan, a Marketplace issuer (HIOS). Matches exactly on IDs, EIN, NAIC code, CIK and names, then on names that contain every word of the text (returned as candidates, never as a match). Pass on=YYYY-MM-DD to match names as of a date. Then call describe_entity with the entity_id for its owners on a date, what it holds, and its events. **Inputs.** - `text` (required): - `on`: - `limit`: **Known limits.** - Layer one only: no facilities, doctors, networks or PBMs (layers two to five follow on Ben's signature). - About 16% of Medicare Advantage members sit under a chain with one hop resting on CMS's parent string alone (grade B); the top parent is not in doubt, the corroborating filing is not yet attached. - Belief time (what an earlier build served) is not yet queryable; every answer carries the build it was read from. - The 233 open review-queue rows (candidate contract transfers) are not served. **A real answer** (customer seat, 3.98 s, args `{"text":"Humana Inc."}`): ```json { "value": { "found": true, "status": "found", "not_found_reason": null, "query": { "text": "Humana Inc.", "on": null }, "candidates": [ { "entity_id": "le:000009", "kind": "legal_entity", "label": "Humana Inc.", "matched_on": [ "name=Humana Inc.", "label=Humana Inc." ], "score": 1.0, "redirect_from": null } ], "shapes_recognised": [], "recover_with": [], "next": "describe_entity(entity_id=, on=)" }, "unit": "ontology_entity", "vintage": "2026-10-28", "source": { "dataset": "Vlada ontology layer one (who holds and who owns every payer instrument, over time)", "publisher": "vlada", "catalog_updated_at": "2026-10-28" }, "caveats": [], "response_hash": "8392da4fa816dd83869de7d70d18c4387d7ecd42181cdfd482400dd8e4f1e269", "semantic_version": 1, "tool_version": "resolve_entity@2.0.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "ontology_entity", "scope": { "tool": "resolve_entity", "filters": { "text": "Humana Inc.", "limit": 25 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify limit; 25 was used.", "evidence": { "sources": [ { "dataset": "Vlada ontology layer one (who holds and who owns every payer instrument, over time)", "publisher": "vlada", "catalog_updated_at": "2026-10-28" } ], "response_hash": "8392da4fa816dd83869de7d70d18c4387d7ecd42181cdfd482400dd8e4f1e269" }, "defaults_applied": [ { "param": "limit", "used": 25, "reason": "tool default" } ] } ``` REST: `POST https://api.vladahealth.com/v1/tools/resolve_entity` with the inputs as the JSON body. MCP: the tool by name. # state_expert State Expert · v1.2.1 · curated The callable STATE EXPERT — the data-availability + regulation X-ray for a US state. Given a 2-letter state code (e.g. 'CT'), returns: (1) DATA AVAILABILITY — how many hospitals are priced, total price rows, distinct billing codes, care sites mapped, and payers with resolved coverage; (2) the REGULATION object — the rules of the game in that state (transparency regime, required disclosures, public datasets like an APCD or rate-setting authority, and the completeness bar); and (3) the computed GAPS — required-or-known datasets we have NOT yet ingested (e.g. a mandatory APCD), so absence is reported as gap-vs-expected, not silently. This is the 'what data do we have in this state, what is required here, and what is missing' entry a higher-level agent or operator reasons over. Because hospital pricing is a NATIONAL substrate, a state can show many hospitals priced even before its county map is built (e.g. MD). Stateless + state-parameterized: one runtime serves every state. To price a code across the state's hospitals, call compare_hospital_rates. SOURCE: curated hospital chargemaster + care-site registry + the state-regulation object. KNOWLEDGE (1.2.0): every answer lists the state's Marketplace and Medicaid knowledge pages (the States lane's per-state pages: regulators, what the state publishes, the rules, the plans) with their sections; pass page='marketplace' or 'medicaid' (and optionally section='') to read one. Pages exist for states hospital rules do not yet cover, so a found=false answer can still carry them. **Inputs.** - `state_code` (required): 2-letter USPS state code, e.g. 'CT' (fully built) or 'MD' (hospital pricing present in the national substrate; county map not yet built). - `page`: Return the state's knowledge page for this line in full: 'marketplace' (who regulates the individual market, what the state publishes, rate review, the issuers) or 'medicaid' (the program, its plans, procurements, rate setting, what the state publishes). Omit for the profile; every answer lists the pages and their sections under knowledge. - `section`: With page: return only the section whose heading contains this text (case-insensitive), e.g. 'Who publishes what'. The section list is under knowledge..sections. **Known limits.** - regulation_object_is_seed_not_yet_dim_state_regulation - freshness_not_yet_tracked_pending_refresh_cascade - county_map_built_for_CT_only **A real answer** (customer seat, 5.36 s, args `{"state_code":"CT"}`): ```json { "value": { "state_code": "CT", "state_name": "Connecticut", "found": true, "fips": "09", "data_availability": { "hospitals_priced": 39, "hospital_price_rows": 42731575, "distinct_billing_codes": 110242, "care_sites_mapped": 19400, "care_sites_verified": 441, "payers_with_coverage": 36 }, "regulation": { "transparency_regime": "state-plus", "required_disclosures": [ { "name": "hospital_hpt", "authority": "federal CMS HPT rule" }, { "name": "payer_tic", "authority": "federal TiC rule" } ], "public_datasets": [ { "name": "CT APCD", "kind": "all_payer_claims_database", "status": "mandatory", "ingested": false, "note": "CT runs a mandatory APCD (CT Office of Health Strategy) \u2014 richer than MRFs; not yet ingested = known gap" }, { "name": "CT DOI rate filings", "kind": "doi_rate_filings", "status": "public", "ingested": false }, { "name": "CHIME / hospital reporting", "kind": "state_hospital_reports", "status": "public", "ingested": false } ], "apcd_status": "mandatory", "completeness_bar": "all CT acute hospitals priced (HPT) + dominant carriers built (TiC) + APCD ingested for the claims-grounded layer", "source_urls": [ "https://portal.ct.gov/ohs" ], "reviewed_by": "seed_2026-06-21" }, "gaps": [ { "item": "CT APCD", "kind": "all_payer_claims_database", "severity": "known_gap", "detail": "CT runs a mandatory APCD (CT Office of Health Strategy) \u2014 richer than MRFs; not yet ingested = known gap" }, { "item": "CT DOI rate filings", "kind": "doi_rate_filings", "severity": "known_gap", "detail": "exists but not ingested" }, { "item": "CHIME / hospital reporting", "kind": "state_hospital_reports", "severity": "known_gap", "detail": "exists but not ingested" } ], "freshness": { "last_verified_at": null, "status": "not_yet_tracked" }, "caveats": [], "knowledge": { "marketplace": { "available": false }, "medicaid": { "available": false } } }, "unit": "profile", "vintage": "as_built", "source": { "dataset": "Hospital Price Transparency machine-readable standard-charges files", "publisher": "cms", "catalog_updated_at": "2026-05-28" }, "caveats": [], "response_hash": "bed64dbd8b60f5de3455aa9f93d25a598e89bd7b2f0600d06b24c767a2ae8bea", "semantic_version": 1, "tool_version": "1.2.1", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "profile", "scope": { "tool": "state_expert", "filters": { "state_code": "CT" } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included.", "evidence": { "sources": [ { "dataset": "Hospital Price Transparency machine-readable standard-charges files", "publisher": "cms", "catalog_updated_at": "2026-05-28" } ], "response_hash": "bed64dbd8b60f5de3455aa9f93d25a598e89bd7b2f0600d06b24c767a2ae8bea" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/state_expert` with the inputs as the JSON body. MCP: the tool by name. # submit_query Submit Query · v1.1.0 · curated Submit a heavy/long-running query to run OFF the request path and get a job_id back immediately, instead of blocking (and risking a timeout) on a statewide/cross-hospital scan. Arguments are validated against the target tool's own input model AT ACCEPT TIME, so a malformed submit is refused immediately (reason=invalid_arguments) instead of after you waited for the job. A POINT-LOOKUP CALL IS REFUSED, not queued: the refusal carries the direct call to make instead, with your own arguments already in it. That includes a bounded compare_hospital_rates read (one billing_code + one state), which the precomputed window answers in about a second. Pass force=true only when the SYNC door sent you here (too_large_for_sync, tool_timeout) — that route is always accepted. Poll with poll_query(job_id) and read the result with fetch_query(job_id). A refusal names the async-eligible targets and their current serving state, so you always know what this lane can run today. **Inputs.** - `tool` (required): - `arguments`: - `force`: **A real answer** (customer seat, 0.48 s, args `{"tool":"prove_commercial_price","arguments":{"payer":"cigna","version_id":"2026-05","state":"CT","code":"99213"}}`): ```json { "status": "refused", "refusal": { "code": "PLAN_REQUIRED", "message": "Vlada answers questions; it does not export whole tables. Ask for the aggregate you need (group, filter or rank in SQL). Paging past the first page and the bulk lane are not on the free or Studio plans; for whole-table or bulk work, write to ben@vladahealth.com.", "recover_with": [ { "tool": "query_substrate", "arguments_hint": { "sql": "SELECT , COUNT(*), AVG() FROM WHERE GROUP BY ORDER BY 2 DESC LIMIT 50" }, "note": "Group, filter or rank in SQL so the engine computes over the full set and returns the answer in a few rows. Paging past the first page and the bulk lane are not on the free or Studio plans; for whole-table or bulk work, write to ben@vladahealth.com." } ], "detail": { "tier": "grandfathered", "reason": "bulk_lane_requires_pro", "rows_per_call": 500, "upgrade_url": "https://www.vladahealth.com/upgrade" } }, "as_of": "2026-11-09", "error": { "code": "plan_required", "message": "Vlada answers questions; it does not export whole tables. Ask for the aggregate you need (group, filter or rank in SQL). Paging past the first page and the bulk lane are not on the free or Studio plans; for whole-table or bulk work, write to ben@vladahealth.com.", "reason": "bulk_lane_requires_pro", "upgrade_url": "https://www.vladahealth.com/upgrade" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/submit_query` with the inputs as the JSON body. MCP: the tool by name. # asp_pricing_lookup ASP Pricing Lookup · v1.1.0 · drug Given an HCPCS code or short-description search, returns Medicare Part B ASP quarterly payment-limit rows from drug_silver.fact_drug_asp_quarterly_v2 (is_current) with trend aggregates. Use for Part B reimbursement checks and CY 2026 IRA/MFP methodology caveats. **Inputs.** - `hcpcs_code`: - `short_description`: - `effective_period_start`: - `effective_period_end`: - `release_quarter`: - `acknowledge_era_break`: **Known limits.** - asp_cy_2026_mpfs_ira_mfp_layering - asp_pricing_lookup_no_match - asp_pricing_lookup_truncated **A real answer** (customer seat, 2.21 s, args `{"hcpcs_code":"J0129"}`): ```json { "value": { "headline": 45.937, "hcpcs_code_query": "J0129", "short_description_query": null, "effective_periods_covered": [ "2007-01-01", "2007-04-01", "2007-07-01", "2007-10-01", "2008-01-01", "2008-04-01", "2008-07-01", "2008-10-01", "2009-01-01", "2009-04-01", "2009-07-01", "2009-10-01", "2010-01-01", "2010-04-01", "2010-07-01", "2010-10-01", "2011-01-01", "2011-04-01", "2011-07-01", "2011-10-01", "2012-01-01", "2012-04-01", "2012-07-01", "2012-10-01", "2013-01-01", "2013-04-01", "2013-07-01", "2013-10-01", "2014-01-01", "2014-04-01", "2014-07-01", "2014-10-01", "2015-01-01", "2015-04-01", "2015-07-01", "2015-10-01", "2016-01-01", "2016-04-01", "2016-07-01", "2016-10-01", "2017-01-01", "2017-04-01", "2017-07-01", "2017-10-01", "2018-01-01", "2018-04-01", "2018-07-01", "2018-10-01", "2019-01-01", "2019-04-01", "2019-07-01", "2019-10-01", "2020-01-01", "2020-04-01", "2020-07-01", "2020-10-01", "2021-01-01", "2021-04-01", "2021-07-01", "2021-10-01", "2022-01-01", "2022-04-01", "2022-07-01", "2022-10-01", "2023-01-01", "2023-04-01", "2023-07-01", "2023-10-01", "2024-01-01", "2024-04-01", "2024-07-01", "2024-10-01", "2025-01-01", "2025-04-01", "2025-07-01", "2025-10-01", "2026-01-01", "2026-04-01", "2026-07-01", "2026-10-01" ], "truncated": false, "aggregates": { "n_rows": 80, "n_distinct_hcpcs": 1, "min_payment_limit_usd": 18.688, "max_payment_limit_usd": 58.103, "mean_payment_limit_usd": 36.2652875, "median_payment_limit_usd": 42.730500000000006, "payment_limit_by_effective_period": { "2007-01-01": 18.698, "2007-04-01": 18.688, "2007-07-01": 18.688, "2007-10-01": 18.688, "2008-01-01": 18.688, "2008-04-01": 18.689, "2008-07-01": 18.689, "2008-10-01": 18.689, "2009-01-01": 19.141, "2009-04-01": 19.15, "2009-07-01": 19.148, "2009-10-01": 19.347, "2010-01-01": 19.521, "2010-04-01": 19.959, "2010-07-01": 19.828, "2010-10-01": 20.185, "2011-01-01": 20.43, "2011-04-01": 20.647, "2011-07-01": 20.916, "2011-10-01": 21.122, "2012-01-01": 21.389, "2012-04-01": 21.682, "2012-07-01": 21.934, "2012-10-01": 22.194, "2013-01-01": 22.398, "2013-04-01": 22.62, "2013-07-01": 22.841, "2013-10-01": 23.06, "2014-01-01": 23.427, "2014-04-01": 23.877, "2014-07-01": 32.214, "2014-10-01": 32.248, "2015-01-01": 33.154, "2015-04-01": 34.922, "2015-07-01": 35.814, "2015-10-01": 37.331, "2016-01-01": 39.442, "2016-04-01": 41.05, "2016-07-01": 41.981, "2016-10-01": 44.75, "2017-01-01": 45.88, "2017-04-01": 46.857, "2017-07-01": 47.613, "2017-10-01": 49.589, "2018-01-01": 48.549, "2018-04-01": 50.164, "2018-07-01": 51.628, "2018-10-01": 52.929, "2019-01-01": 51.614, "2019-04-01": 52.49, "2019-07-01": 53.944, "2019-10-01": 54.318, "2020-01-01": 54.849, "2020-04-01": 55.083, "2020-07-01": 56.739, "2020-10-01": 58.103, "2021-01-01": 56.867, "2021-04-01": 57.831, "2021-07-01": 45.323, "2021-10-01": 45.269, "2022-01-01": 44.522, "2022-04-01": 43.9, "2022-07-01": 44.22, "2022-10-01": 43.246, "2023-01-01": 43.498, "2023-04-01": 42.761, "2023-07-01": 43.271, "2023-10-01": 42.7, "2024-01-01": 43.163, "2024-04-01": 42.84, "2024-07-01": 43.727, "2024-10-01": 43.437, "2025-01-01": 43.797, "2025-04-01": 43.377, "2025-07-01": 44.494, "2025-10-01": 44.109, "2026-01-01": 44.769, "2026-04-01": 44.718, "2026-07-01": 45.859, "2026-10-01": 45.937 } }, "asp_rows": [ { "hcpcs_code": "J0129", "release_quarter": "Q1 2007", "effective_period_start": "2007-01-01", "effective_period_end": "2007-03-31", "short_description": "Abatacept, inj", "hcpcs_dosage": "10 MG", "payment_limit_usd": 18.698, "coinsurance_percentage": null, "notes": null, "vintage_tag": "asp_pre_2026_pre_mfp_layering" }, { "hcpcs_code": "J0129", "release_quarter": "Q2 2007", "effective_period_start": "2007-04-01", "effective_period_end": "2007-06-30", "short_description": "Abatacept, inj", "hcpcs_dosage": "10 MG", "payment_limit_usd": 18.688, "coinsurance_percentage": null, "notes": null, "vintage_tag": "asp_pre_2026_pre_mfp_layering" }, { "hcpcs_code": "J0129", "release_quarter": "Q3 2007", "effective_period_start": "2007-07-01", "effective_period_end": "2007-09-30", "short_description": "Abatacept, inj", "hcpcs_dosage": "10 MG", "payment_limit_usd": 18.688, "coinsurance_percentage": null, "notes": null, "vintage_tag": "asp_pre_2026_pre_mfp_layering" }, { "hcpcs_code": "J0129", "release_quarter": "Q4 2007", "effective_period_start": "2007-10-01", "effective_period_end": "2007-12-31", "short_description": "Abatacept, inj", "hcpcs_dosage": "10 MG", "payment_limit_usd": 18.688, "coinsurance_percentage": null, "notes": null, "vintage_tag": "asp_pre_2026_pre_mfp_layering" }, { "hcpcs_code": "J0129", "release_quarter": "Q1 2008", "effective_period_start": "2008-01-01", "effective_period_end": "2008-03-31", "short_description": "Abatacept, inj", "hcpcs_dosage": "10 MG", "payment_limit_usd": 18.688, "coinsurance_percentage": null, "notes": null, "vintage_tag": "asp_pre_2026_pre_mfp_layering" }, { "hcpcs_code": "J0129", "release_quarter": "Q2 2008", "effective_period_start": "2008-04-01", "effective_period_end": "2008-06-30", "short_description": "Abatacept, inj", "hcpcs_dosage": "10 MG", "payment_limit_usd": 18.689, "coinsurance_pe ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/asp_pricing_lookup` with the inputs as the JSON body. MCP: the tool by name. # excluded_prescriber_payment_screen Excluded Prescriber Payment Screen · v1.2.0 · drug Given an NPI (10-digit), returns OIG LEIE exclusion status and — if excluded — any Open Payments received OR Part D prescribing activity recorded AFTER the exclusion date (and before any reinstatement). The textbook qui-tam / False Claims Act screening query. Bridges three substrate sources: dim_oig_leie (LEIE), fact_drug_payment_to_prescriber (Open Payments), fact_part_d_prescriber (Part D Prescriber-by-Drug). Returns: total post-exclusion payment dollars + Part D drug-cost exposure, broken down by year + top 5 manufacturers. Every answer carries an explicit exclusion_status (not_in_leie, excluded, or excluded_then_reinstated) beside the dollars, so a $0 result is never ambiguous: a not-in-LEIE NPI returns zero ANCHORED to the LEIE snapshot date it was checked against (leie_asserted_at), which is a different thing from an excluded prescriber who drew no post-exclusion payments. KNOWN GAPS: open_payments_publication_lag_one_year (current PY publishes June+1); part_d_puf_annual_grain_only (Part D PUF is annual not monthly — finer-grain timing requires claims data). LEIE refreshes monthly per the M-6 schedule (cycle 2). **Inputs.** - `npi` (required): - `op_lookback_years`: - `pdp_lookback_years`: - `acknowledge_era_break`: **Known limits.** - open_payments_publication_lag_one_year - part_d_puf_annual_grain_only **A real answer** (customer seat, 4.88 s, args `{"npi":"1447200742"}`): ```json { "value": { "headline": 0.0, "npi": "1447200742", "npi_query": "1447200742", "is_excluded": false, "exclusion_status": "not_in_leie", "leie_asserted_at": "2026-11-04", "exclusion_record": null, "post_exclusion_payments_total_usd": 0.0, "post_exclusion_payments_count": 0, "post_exclusion_pdp_total_drug_cost_usd": 0.0, "post_exclusion_pdp_total_claims": 0, "payments_by_year": [], "top_manufacturers": [], "zero_basis": "no LEIE exclusion for this NPI, so no post-exclusion window exists to measure payments or prescribing in. The zero is by construction, not an empty read." }, "unit": "USD", "result_status": "answered", "methodology_era": { "era_name": "leie_monthly_refresh_post_2026_05_16", "era_start": "2026-05-16", "era_end": "2099-12-31" }, "methodology_blend_factors": null, "source": { "source_url": "medicare://excluded_prescriber_payment_screen" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "9a47b7708ff85a59ab1811fe59bfb05d00f26855a2386855b1a24c87b86c0525", "semantic_version": 1, "tool_version": "1.2.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "c6207f25-b076-429f-94bc-ea5be4ea24d6", "timestamp": "2026-11-09T21:37:51.340868Z", "request_id": "7c67bcbf-05bb-4c4f-bc2b-6f7266e60af2", "audience": "customer", "answer": { "value": 0.0, "value_ref": "value", "unit": "USD", "scope": { "tool": "excluded_prescriber_payment_screen", "filters": { "npi": "1447200742" } } }, "method": "Read from the CMS publication. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "response_hash": "9a47b7708ff85a59ab1811fe59bfb05d00f26855a2386855b1a24c87b86c0525", "audit_id": "c6207f25-b076-429f-94bc-ea5be4ea24d6", "request_id": "7c67bcbf-05bb-4c4f-bc2b-6f7266e60af2" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/excluded_prescriber_payment_screen` with the inputs as the JSON body. MCP: the tool by name. # formulary_churn Formulary Churn · v1.0.0 · drug Given a quarter-pair (report_quarter_from, report_quarter_to) AND a formulary or plan filter, returns the formulary delta: drugs added, drugs dropped, drugs re-tiered, and optionally drugs whose control flags (prior auth / step therapy / quantity limit) changed. Diffs drug_silver.fact_drug_formulary across two SPUF report_quarters on (formulary_id, drug) keys, where a drug is its RxCUI by default (grain='rxcui'), so a manufacturer or package NDC swap of the same drug is not churn; grain='ndc' gives the package-level diff. Pass rxcui_filter=[...] to ask whether coverage of specific drugs changed. Returns: per-category row lists (cap 5000 each), aggregates (formularies_compared, n_added, n_dropped, n_tier_changed, n_control_changed, n_unchanged, churn_rate, tier_movement_distribution), truncated_by_category flags. READING churn_rate: it is (added + dropped + re-tiered) divided by the number of drugs on the formulary in the FROM quarter — CHANGE EVENTS PER FROM-QUARTER DRUG, not a percentage. It is >= 0 and CAN EXCEED 1 (a formulary that drops everything and adds as many new drugs scores 2.0), because added drugs are not members of the denominator. The answer carries churn_rate_definition saying exactly this, the two denominators (n_in_from_quarter, n_in_to_quarter), and two bounded companions that ARE 0-1: share_dropped (dropped / FROM-quarter drugs) and share_added (added / TO-quarter drugs). Use cases: year-over-year formulary stability tracking, drop investigations for a specific drug class, IRA-era churn rate (crossing 2025 → 2026 will surface the redesign-driven churn). KNOWN GAPS: spuf_quarterly_publication_lag (CMS publishes 6 weeks after quarter end; very recent quarter changes won't show); ira_era_break_2026 (IRA Part D redesign in 2026 changed formulary structures; churn comparison crossing this boundary mixes regime changes with normal churn); formulary_churn_truncated (per-category lists capped at 5000). **Inputs.** - `report_quarter_from` (required): - `report_quarter_to` (required): - `formulary_id_filter`: - `contract_id_filter`: - `plan_id_filter`: - `include_control_changes`: - `grain`: - `rxcui_filter`: - `acknowledge_era_break`: **Known limits.** - spuf_quarterly_publication_lag - ira_era_break_2026 - formulary_churn_truncated - formulary_churn_no_match **A real answer** (customer seat, 15.26 s, args `{"report_quarter_from":"2024-Q3","report_quarter_to":"2024-Q4","contract_id_filter":"H1036"}`): ```json { "value": { "headline": 2.0, "report_quarter_from": "2024-Q3", "report_quarter_to": "2024-Q4", "formulary_ids_compared": [ "00019434", "00019435", "00019436", "00019440", "00019442", "00019444", "00019445", "00019449", "00019450", "00020457", "00020458", "00020459", "00020460", "00020461", "00020462", "00020463", "00020467", "00020468", "00021450", "00021454", "00021456", "00021457", "00021460", "00021461", "00021462", "00022520", "00022524", "00022525", "00022526", "00022530", "00022531", "00022532", "00023492", "00023493", "00023496", "00023497", "00023503", "00023505", "00023506", "00023511", "00024492", "00024493", "00024495", "00024496", "00024499", "00024500", "00024502", "00024504", "00024507", "00025456", "00025458", "00025460", "00025461", "00025462", "00025463", "00025464", "00026408", "00026409", "00026411", "00026412" ], "truncated_by_category": { "added": true, "dropped": true, "tier_changed": false, "control_changed": false }, "include_control_changes": false, "churn_rate_definition": "churn_rate = (drugs added + drugs dropped + drugs re-tiered) / drugs on the formulary in the FROM quarter. It counts CHANGE EVENTS per drug that was on the formulary at the start, so it is >= 0 and CAN EXCEED 1: a formulary that drops everything and adds an equal number of new drugs scores 2.0. It is not a percentage of the formulary and must not be read as one. For bounded readings use share_dropped (dropped / FROM-quarter drugs, 0-1) and share_added (added / TO-quarter drugs, 0-1).", "churn_rate_range": { "minimum": 0.0, "maximum": null, "unit": "change events per FROM-quarter drug" }, "aggregates": { "grain": "rxcui", "formularies_compared": 60, "n_added": 10000, "n_dropped": 10000, "n_tier_changed": 0, "n_control_changed": 0, "n_unchanged": 0, "churn_rate": 2.0, "churn_rate_definition": "churn_rate = (drugs added + drugs dropped + drugs re-tiered) / drugs on the formulary in the FROM quarter. It counts CHANGE EVENTS per drug that was on the formulary at the start, so it is >= 0 and CAN EXCEED 1: a formulary that drops everything and adds an equal number of new drugs scores 2.0. It is not a percentage of the formulary and must not be read as one. For bounded readings use share_dropped (dropped / FROM-quarter drugs, 0-1) and share_added (added / TO-quarter drugs, 0-1).", "n_in_from_quarter": 10000, "n_in_to_quarter": 10000, "share_dropped": 1.0, "share_added": 1.0, "tier_movement_distribution": { "up_1": 0, "up_2_or_more": 0, "down_1": 0, "down_2_or_more": 0 } }, "added_drugs": [ { "formulary_id": "00025456", "ndc11": "00093500456", "rxcui": "1000001", "tier_level_value": 4 }, { "formulary_id": "00025456", "ndc11": "59651017301", "rxcui": "1000048", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "54838051240", "rxcui": "1000054", "tier_level_value": 4 }, { "formulary_id": "00025456", "ndc11": "59651017701", "rxcui": "1000058", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "49884022201", "rxcui": "1000064", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "59651017401", "rxcui": "1000070", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "59651017501", "rxcui": "1000076", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "00378537501", "rxcui": "1000097", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "00555077902", "rxcui": "1000114", "tier_level_value": 2 }, { "formulary_id": "00025456", "ndc11": "55150032901", "rxcui": "1000126", "tier_level_value": 2 }, { "formulary_id": "00025456", "ndc11": "00555087202", "rxcui": "1000135", "tier_level_value": 2 }, { "formulary_id": "00025456", "ndc11": "00555087302", "rxcui": "1000141", "tier_level_value": 2 }, { "formulary_id": "00025456", "ndc11": "66993037179", "rxcui": "1000153", "tier_level_value": 2 }, { "formulary_id": "00025456", "ndc11": "00009470913", "rxcui": "1000158", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "68462030450", "rxcui": "1000405", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "61314020315", "rxcui": "1000647", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "00574419035", "rxcui": "1000673", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "61314020415", "rxcui": "1000862", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "61314020615", "rxcui": "1000897", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "00527131301", "rxcui": "1000913", "tier_level_value": 4 }, { "formulary_id": "00025456", "ndc11": "00527140701", "rxcui": "1001004", "tier_level_value": 4 }, { "formulary_id": "00025456", "ndc11": "51672417005", "rxcui": "1001689", "tier_level_value": 3 }, { "formulary_id": "00025456", "ndc11": "00078059287", "rxcui": "1002300", "tier_level_value": 5 }, { "formulary_id": "00025456", "ndc11": "70700011685", "rxcui": "1006065", "tier_level_value": 4 }, { "formulary_id": "00025456", "ndc11": "24208067004", "rxcui": "1006120", "tier_level_value": 2 }, { "formulary_id": "00025456", "ndc11": "45802089626", "rxcui": "1006688", "tier_level_value": 4 }, { "formulary_id": "00025456", ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/formulary_churn` with the inputs as the JSON body. MCP: the tool by name. # pbm_compensation_rollup Pbm Compensation Rollup · v2.0.0 · drug Sums Form 5500 Schedule C direct + indirect compensation for a named PBM across one or more plan years. Every aggregate runs SERVER-SIDE in SQL over the whole matching population; the per-provider-name and per-plan-year rows the total is made of ride the answer, and each alias spelling carries its own measured attribution. M-6 alias chain resolves OptumRx -> OPTUMRX + OPTUM RX + Catamaran (post-2015 acquisition), Express Scripts -> ESI / ESI MAIL PHARMACY, CVS Caremark -> all variants; a name that is NOT a registered alias_form says so instead of silently searching one literal string. Reference demo (re-measured live 2026-08-01): OptumRx plan year 2023 -> $1,461,686,909 direct comp across 295 plan-filings and 295 provider rows, attributed OPTUMRX $1,036,556,258 / OPTUM RX $425,110,391 / Catamaran $20,260. **Inputs.** - `pbm_name` (required): - `year_min`: - `year_max`: - `detail_limit`: - `acknowledge_era_break`: **A real answer** (customer seat, 6.56 s, args `{"pbm_name":"OptumRx","year_min":2023,"year_max":2023,"detail_limit":5}`): ```json { "value": { "headline": 1461686909.0, "pbm_name_query": "OptumRx", "canonical_pbm_name": "OptumRx", "alias_resolution_applied": true, "year_min": 2023, "year_max": 2023, "status": "ok", "total_direct_comp_usd": 1461686909.0, "total_indirect_comp_usd": 4164066.0, "provider_row_count": 295, "distinct_filings": 295, "distinct_eins": 9, "distinct_provider_names": 15, "outlier_rows_over_threshold": 3, "max_single_direct_comp_usd": 221743869.0, "null_indirect_rows": 58, "aliases_searched": [ "Catamaran", "OPTUM RX", "OPTUMRX", "OptumRx" ], "alias_attribution": [ { "alias_form": "CATAMARAN", "spellings": [ "Catamaran" ], "provider_rows": 1, "distinct_filings": 1, "direct_comp_usd": 20260.0 }, { "alias_form": "OPTUM RX", "spellings": [ "OPTUM RX" ], "provider_rows": 143, "distinct_filings": 143, "direct_comp_usd": 425110391.0 }, { "alias_form": "OPTUMRX", "spellings": [ "OPTUMRX", "OptumRx" ], "provider_rows": 152, "distinct_filings": 152, "direct_comp_usd": 1036576518.0 } ], "provider_name_lines": [ { "provider_name": "OPTUMRX, INC.", "provider_rows": 75, "distinct_filings": 75, "direct_comp_usd": 481597723.0, "indirect_comp_usd": 883910.0 }, { "provider_name": "OPTUMRX, INC", "provider_rows": 29, "distinct_filings": 29, "direct_comp_usd": 301831683.0, "indirect_comp_usd": 475817.0 }, { "provider_name": "OPTUM RX INC.", "provider_rows": 53, "distinct_filings": 53, "direct_comp_usd": 279592482.0, "indirect_comp_usd": 1099991.0 }, { "provider_name": "OPTUMRX INC.", "provider_rows": 3, "distinct_filings": 3, "direct_comp_usd": 170838236.0, "indirect_comp_usd": 616582.0 }, { "provider_name": "OPTUM RX INC", "provider_rows": 12, "distinct_filings": 12, "direct_comp_usd": 77160212.0, "indirect_comp_usd": 178499.0 } ], "plan_year_lines": [ { "plan_year": 2023, "provider_rows": 295, "distinct_filings": 295, "direct_comp_usd": 1461686909.0, "indirect_comp_usd": 4164066.0 } ], "detail_rows_returned": 5, "detail_rows_total": 15, "sql_executed": [] }, "unit": "USD", "result_status": "answered", "methodology_era": { "era_name": "form5500_post_2009_full_disclosure", "era_start": "2023-01-01", "era_end": "2023-12-31" }, "methodology_blend_factors": null, "source": { "source_url": "medicare://pbm_compensation_rollup" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": 1.0, "confidence_basis": "tool_measured", "finality_confidence": null, "response_hash": "fba0b055845f7ccc5e0f5d2553c69a8c2804e5cd5decfaa19f6ba2b31d096729", "semantic_version": 2, "tool_version": "2.0.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "0299c514-5166-40d4-af91-08ff9c58e4c3", "timestamp": "2026-11-09T21:38:15.134342Z", "request_id": "0b332e1d-3b41-4611-8a6d-9cb6391618c6", "audience": "customer", "answer": { "value": 1461686909.0, "value_ref": "value", "unit": "USD", "scope": { "tool": "pbm_compensation_rollup", "filters": { "pbm_name": "OptumRx", "year_min": 2023, "year_max": 2023, "detail_limit": 5 } } }, "method": "Read from the CMS publication. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "response_hash": "fba0b055845f7ccc5e0f5d2553c69a8c2804e5cd5decfaa19f6ba2b31d096729", "audit_id": "0299c514-5166-40d4-af91-08ff9c58e4c3", "request_id": "0b332e1d-3b41-4611-8a6d-9cb6391618c6" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/pbm_compensation_rollup` with the inputs as the JSON body. MCP: the tool by name. # recall_spend_window Recall Spend Window · v2.0.0 · drug Given an FDA-assigned recall_number, returns recall metadata plus Medicare Part D and Medicaid SDUD federal spend on the recalled drug during the recall window (initiation -> termination), summed SERVER-SIDE with per-year Part D rows and per-NDC Medicaid rows riding the answer. The recall source carries NO NDC (openfda_product_ndc_first is NULL on all 17,830 current rows), so the Medicaid leg reaches NDCs through dim_drug on the openFDA product name and says so. Each leg reports its own published-year coverage, so 'no spend', 'not published yet' and 'no join key' are three different answers instead of one null. Medicaid totals EXCLUDE the SDUD national roll-up, which CMS publishes under state 'XX' beside the 50 state rows and which would otherwise roughly double every Medicaid figure. Reference demo: recall_number D-1489-2019 (Fresenius Kabi fluorouracil, Class I, window 2019-2022) exercises both legs and the NDC bridge. This description quotes NO dollar figure on purpose: the answer is the only place a number lives, so a change to the computation can never leave a stale figure in the documentation. It did once -- the demo totals here were the pre-2026-08-10 national-roll-up double count and stood six weeks after the fix. **Inputs.** - `recall_number` (required): - `detail_limit`: - `acknowledge_era_break`: **Known limits.** - medicaid_sdud_suppression_used_flag - part_d_puf_annual_grain_only **A real answer** (customer seat, 12.5 s, args `{"recall_number":"D-1489-2019","detail_limit":5}`): ```json { "value": { "headline": 22744256.999999996, "recall_number": "D-1489-2019", "status": "ok", "classification": "Class I", "reason_for_recall": "Presence of Particulate Matter; glass particulates", "recalling_firm": "Fresenius Kabi USA, LLC", "product_description": "Fluorouracil Injection, USP, 5 g / 100 mL (50 mg / mL), 100 mL fill in a 100 mL vial, Rx Only, Mfd. by: Fresenius Kabi, Lake Zurich, IL 60047. 63323-117-61 [Fresenius Kabi brand] and NDC 63323-117-69 [NOVAPLUS brand]", "recall_initiation_date": "2019-06-28", "termination_date": "2022-09-20", "recall_still_open": false, "openfda_product_ndc": null, "openfda_brand_name": "FLUOROURACIL", "openfda_generic_name": "FLUOROURACIL", "ndcs_bridged": 66, "ndcs_bridged_capped": false, "part_d_window_years": [ 2019, 2020, 2021, 2022 ], "medicaid_window_years": [ 2019, 2020, 2021, 2022 ], "part_d_published_years": [ 2019, 2024 ], "medicaid_published_years": [ 1991, 2026 ], "part_d_leg_status": "ok", "medicaid_leg_status": "ok", "part_d_spend_during_window_usd": 196753616.45000002, "medicaid_spend_during_window_usd": 22744256.999999996, "combined_federal_spend_usd": 22744256.999999996, "recalled_form_family": "injectable", "part_d_in_combined": false, "ndcs_excluded_other_form": 33, "medicaid_ndcs_with_spend": 32, "medicaid_suppressed_rows_excluded": 7112, "part_d_year_lines": [ { "data_year": 2019, "brand_name": "Fluorouracil*", "generic_name": "Fluorouracil", "total_spending_usd": 40135037.1 }, { "data_year": 2019, "brand_name": "Carac", "generic_name": "Fluorouracil", "total_spending_usd": 306684.05 }, { "data_year": 2019, "brand_name": "Efudex", "generic_name": "Fluorouracil", "total_spending_usd": 40763.03 }, { "data_year": 2020, "brand_name": "Fluorouracil*", "generic_name": "Fluorouracil", "total_spending_usd": 48774659.52 }, { "data_year": 2020, "brand_name": "Efudex", "generic_name": "Fluorouracil", "total_spending_usd": 30804.79 }, { "data_year": 2020, "brand_name": "Tolak", "generic_name": "Fluorouracil", "total_spending_usd": null }, { "data_year": 2021, "brand_name": "Fluorouracil*", "generic_name": "Fluorouracil", "total_spending_usd": 52372838.9 }, { "data_year": 2021, "brand_name": "Efudex", "generic_name": "Fluorouracil", "total_spending_usd": 28797.06 }, { "data_year": 2022, "brand_name": "Fluorouracil*", "generic_name": "Fluorouracil", "total_spending_usd": 55041063.92 }, { "data_year": 2022, "brand_name": "Efudex", "generic_name": "Fluorouracil", "total_spending_usd": 22968.08 } ], "medicaid_ndc_lines": [ { "ndc11": "63323011710", "product_name": "FLUOROURAC", "rows": 720, "years_covered": 4, "medicaid_reimbursed_usd": 5326521.550000002 }, { "ndc11": "16729027638", "product_name": "Fluorourac", "rows": 857, "years_covered": 4, "medicaid_reimbursed_usd": 4744115.33 }, { "ndc11": "63323011720", "product_name": "FLUOROURAC", "rows": 738, "years_covered": 4, "medicaid_reimbursed_usd": 3410847.3899999997 }, { "ndc11": "63323011761", "product_name": "FLUOROURAC", "rows": 873, "years_covered": 4, "medicaid_reimbursed_usd": 2384789.79 }, { "ndc11": "16729027611", "product_name": "Fluorourac", "rows": 425, "years_covered": 4, "medicaid_reimbursed_usd": 1409314.6200000006 } ], "detail_rows_returned": 15, "detail_rows_total": 32, "sql_executed": [] }, "unit": "USD", "result_status": "answered_with_caveats", "methodology_era": { "era_name": "openfda_enforcement_post_2009", "era_start": "2009-01-01", "era_end": "2099-12-31" }, "methodology_blend_factors": null, "source": { "source_url": "medicare://recall_spend_window" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [ { "caveat_type": "coverage_gap", "severity": "info", "message": "Part D spending and Medicaid SDUD are ANNUAL. Spend is aggregated over whole calendar years that intersect the recall window, so a recall opened mid-year carries that whole year's spend, not the part of it inside the window.", "structured_fields": {} } ], "confidence": 1.0, "confidence_basis": "tool_measured", "finality_confidence": null, "response_hash": "6e25c8ec11df775c6c7716d51e2905067218b8f2599e01dab72920db0d3fca04", "semantic_version": 2, "tool_version": "2.0.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "b116a02e-001d-4226-a2d5-66e12d5200f5", "timestamp": "2026-11-09T21:38:46.159735Z", "request_id": "0fd9feee-d5ff-4bf5-9297-1106983883dd", "audience": "customer", "answer": { "value": 22744256.999999996, "value_ref": "value", "unit": "USD", "scope": { "tool": "recall_spend_window", "filters": { "recall_number": "D-1489-2019", "detail_limit": 5 } } }, "method": "Read from the CMS publication. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "response_hash": "6e25c8ec11df775c6c7716d51e2905067218b8f2599e01dab72920db0d3fca04", "audit_id": "b116a02e-001d-4226-a2d5-66e12d5200f5", "request_id": "0fd9feee-d5ff-4bf5-9297-1106983883dd" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/recall_spend_window` with the inputs as the JSON body. MCP: the tool by name. # compare_hospital_rates Compare Hospital Rates · v1.22.0 · hospital NEGOTIATED RATES BY INSURER AND PLAN ARE SERVED HERE: hospital price-transparency files carry the rate each hospital filed for each payer and plan (the insurer-file / TiC tools are coming soon). Compares what a billing code costs ACROSS hospitals (cheapest real price first) with a p10/median/p90 benchmark AND a per-(payer x line-of-business) breakdown. The product query for 'where is care cheapest' and 'what does each payer actually pay'. Reads the canonical serving view `vlada_curated.vw_fact_hospital_chargemaster_canonical`, which resolves each raw payer string to its REAL parent entity (the canonical payer graph) and classifies each plan to a regulatory line-of-business (commercial / medicare_advantage / medicaid / marketplace / ...). Inputs: billing_code (required), state (optional 2-letter), code_system (optional), billing_class (default 'institutional' = facility/UB-04; or 'professional'/'both'; classes are never mixed -- since 1.6.0 'institutional'/'professional' each WIDEN to include billing_class_resolved='both' rows, a charge posted on both the facility and professional side of a bill per the HPT schema; pass 'institutional_only'/'professional_only' for the strict single-class stratum), limit (default 25), payer (optional brand OR parent, e.g. 'Aetna' or 'CVS Health'), line_of_business (optional, e.g. 'medicare_advantage'; `all_products` is one rate a hospital posts for all of a payer's products, and it is never in the commercial default). Each returned rate carries the view's canonical payer columns (`payer_canonical_id`, `payer_parent_name`, `payer_entity_class`, `payer_match_method`) plus `line_of_business` so a comparison is apples-to-apples (Aetna-MA != Aetna-Commercial). `value.by_payer_lob` is the 'rates across all the payers' table. CROSS-SUBSTRATE: every rate also carries x_medicare (the multiple of the Medicare allowed amount: PFS national non-facility for professional, OPPS APC for outpatient institutional, IPPS MS-DRG national base for inpatient DRG codes); `value.medicare` holds the allowed amount + schedule + year, so the answer is 'this payer pays 1.6x Medicare at this hospital'. VALIDATION (load-bearing): billing_class is normalized + inferred from code_system/rate_type where the source omits it; only the requested class is compared; class-implausible rates (e.g. $0.007 for a CT) and code-relative outliers are filtered. CHEAPEST HEADLINE (1.2.0): `value.cheapest` is ranked over rows PLAUSIBLE for the code's Medicare basis -- when the allowed amount is a real procedure (>= $500) a row under 0.3x Medicare (the comparability cascade's own lower sane bound) is set aside into `value.implausible_tail` (full rows + floor + reason, never deleted; benchmark still includes it), and the rest rank hospital-stated methodology (fee_schedule/case_rate/per_diem) before methodology-unknown, rate ascending within each tier -- read `plausibility` + `rank_tier` on each row. Under the $500 gate (imaging / visits / labs) only the placeholder floor below applies, so a $44 head CT still headlines. CASE-RATE HEADLINE (1.7.0): on a DRG/case-rate seat the floor is 0.5x (not 0.3x -- an inpatient rate below half of IPPS is not credible as the full case price), and `cheapest` headlines hospital-STATED case_rate rows ONLY when at least one survives the floor; methodology-unknown rows are demoted into `value.implausible_tail` (tail_reason='methodology_unknown_demoted') even when they themselves clear the floor. `cheapest` headlines an unknown row only when NO stated row survives, and a `headline_methodology_unknown` warning caveat says so. ENCOUNTER-BASIS FLOOR (1.15.0): the floor also reads the Medicare basis -- when the allowed amount is a facility-encounter payment (OPPS APC, IPPS MS-DRG, ASC; e.g. the comprehensive APC behind a CPT 27447 knee) the floor is 0.5x on every seat except per_diem, stated as `floor_rule='encounter_basis'` on every floor block and on value.implausible_tail. ONE CODE SYSTEM PER WINDOW (1.3.0): `cheapest` holds rows of the seated code system only (`value.code_system_resolved`, the dominant system or the caller's `code_system`), each row stamped `code_system`; when the floor empties a full window the tool re-asks once for rows at or above the floor rate (`value.cheapest_window.second_pass`), and if `cheapest` still ends empty a `no_plausible_rows_in_window` caveat says why. ONE METHODOLOGY FAMILY PER WINDOW (1.4.0): within the seated code system, `cheapest` and the re-seated `value.benchmark` / `comparable_benchmark` are further restricted to ONE methodology family -- fee_schedule (a line, the natural family for CPT/HCPCS/APC/RC), case_rate (an admission, the natural family for a DRG/MS-DRG seat), or per_diem (a day) -- because a case rate, a per diem and a fee schedule price different economic objects and must never share a median or a ranked list. `methodology_family` (optional: fee_schedule|case_rate|per_diem) overrides the natural seat. Rows the hospital stated in a DIFFERENT family are set aside into `value.other_family`, in full, never blended in; `value.by_methodology_family` reports n/n_hospitals/p10/median/p90 for every family present, and a `methodology_families_mixed` caveat fires when more than 10% of the population sits outside the seated family. BY_METHODOLOGY RECONCILES (1.6.1): `value.by_methodology` (percent_of_charge/fee_schedule/case_rate/per_diem/other/unknown, with median_rate_over_gross_charge) is narrowed to the SAME population `value.benchmark.n` reports -- sum(by_methodology[].n) == benchmark.n, ALWAYS, by construction; the unstratified, every-family view (within the seated code system) is `value.by_methodology_all_families`, which is what `value.percent_of_charge_share` and the `methodology_mix` caveat read (percent_of_charge rows are always 'unknown' family and would otherwise be invisible once a family is seated). SOURCE: CMS Hospital Price Transparency MRFs (45 CFR 180.50) + CMS Medicare PFS/OPPS fee schedules. KNOWN GAPS: not geo-aware beyond state; payer resolution covers ~80.9% of volume and line-of-business ~85.7% (measured on the 70553 probe, 2026-08-13; call state_expert for live per-state counts), unmatched rates fall to '(unresolved)'/'unspecified'; bare Blue-family labels (e.g. 'Bcbs') keep the Blue company the hospital's state or county identifies (the state's one licensee, or the county's Blue in a split state); with no such evidence they are bucketed '(blue family: label too generic to attribute)' with payer_resolution='generic_label' and never attributed to a specific Blue parent; IPPS DRG x_medicare is the national base (excludes wage index/IME/DSH/outliers); x_medicare null for revenue/non-HCPCS CDM codes; ghost-rate filter is heuristic. DRG GROUPER PRECISION: MS-DRG, APR-DRG and AP-DRG are different maintainers with different numbering (MS-DRG 470 = joint replacement, APR-DRG 470 = chronic kidney disease) and only MS-DRG prices against the IPPS base. Served data is split into MS_DRG / APR_DRG / TRIS_DRG / ... (code_system_precision 'token' or 'shape_inferred'), so an MS_DRG seat is `value.medicare.precision` 'exact' and the other groupers carry no Medicare basis; only a row still on the transitional bare 'DRG' string reads 'drg_grouper_unknown'. CODE-SYSTEM SPELLINGS (1.18.0): code_system is folded to the served bucket before anything runs ('MS-DRG' / 'ms_drg' / 'msdrg' -> 'MS_DRG', 'APR-DRG' -> 'APR_DRG', 'hcpcs' -> 'HCPCS_II', 'cpt-4' -> 'CPT'; a bare 'DRG' is not guessed), and code_system naming the cell's natural seat is served from the precomputed table. PAYER FROM THE TABLE (1.18.0): payer naming ONE parent company (the parent name, or a brand it owns: Aetna -> CVS Health, UHC -> UnitedHealth Group, Anthem -> Elevance Health) is read from the table's payer level -- the headline is that parent's seated-family rows; value.served_from.payer_scope names the match; by_methodology and comparable_benchmark are not in the table per payer and say so in value.sections_unavailable. `by_payer_lob` lists the seated methodology family first; `value.by_payer_lob_cut` and each tail's `rows_cut_note` say where a list was cut. PLACEHOLDER TAIL (1.18.0; from a $100 basis since 1.20.0): under the $500 gate, a rate under 0.25x a $100-$500 Medicare basis (a $50 ED visit at 0.12x, a $32 brain MRI at 0.13x) leaves the ranked `cheapest` list for value.implausible_tail (tail_reason='below_low_basis_floor'); the medians still include it until the table is rebuilt. NO HEADLINE WITHOUT ITS FLOOR (1.22.0): when the seat or the Medicare part misses the budget, `cheapest` is withheld (value.cheapest_empty rule 'seat_unavailable', status partial, retryable) and the window's rows are in value.cheapest_unassessed, unranked. BOTH-CLASS DEFAULT STRATUM (1.6.0): billing_class 'institutional'/'professional' each widen to include billing_class_resolved='both' rows (a charge the HPT schema posts for both sides of a bill); every row still carries its own resolved `billing_class`, and a `both_class_rows_included` caveat states the measured count whenever the answer includes at least one such row. Measured on CT (2026-08-18): 9.63% of REAL_NEGOTIATED rows are 'both', 100% with no institutional sibling row -- previously invisible at the old strict-institutional default. Pass 'institutional_only'/'professional_only' for the pre-1.6.0 strict single-class stratum. **Inputs.** - `billing_code` (required): - `state`: - `code_system`: - `billing_class`: - `limit`: - `payer`: - `line_of_business`: - `methodology`: - `comparable`: - `facility_type`: - `methodology_family`: **Known limits.** - hospital_billing_class_inferred - hospital_geo_state_only - hospital_ghost_rate_filter_heuristic **A real answer** (customer seat, 5.67 s, args `{"billing_code":"70450","state":"CT","line_of_business":"commercial","limit":3}`): ```json { "value": { "cheapest": [ { "hospital_ccn": "070005", "hospital_name": "WATERBURY HOSPITAL", "hospital_state": "CT", "payer_name": "Aetna", "payer_parent_name": "CVS Health", "payer_resolution": "resolved", "payer_parents_sharing_price": 1, "payer_labels_sharing_price": 1, "payer_entity_class": null, "plan_name": "Commercial", "line_of_business": "commercial", "plan_product_structure": null, "billing_class": "institutional", "code_system": "CPT", "methodology": "fee_schedule", "methodology_family": "fee_schedule", "rate": 44.03, "gross_charge": null, "cash_price": null, "x_medicare": 0.41, "x_medicare_wage_adjusted": 0.35, "medicare_allowed_wage_adjusted": 125.33, "wage_index": 1.289, "wage_index_fiscal_year": 2026, "wage_adjustment_status": "wage_adjusted", "facility_type": "acute", "plausibility": "not_assessed", "rank_tier": "stated_methodology", "price_kind": "negotiated price", "price_basis": "hospital-stated fee schedule" }, { "hospital_ccn": "070027", "hospital_name": "MANCHESTER MEMORIAL HOSPITAL", "hospital_state": "CT", "payer_name": "Aetna Whole Health", "payer_parent_name": "CVS Health", "payer_resolution": "resolved", "payer_parents_sharing_price": 1, "payer_labels_sharing_price": 1, "payer_entity_class": null, "plan_name": "Commercial", "line_of_business": "commercial", "plan_product_structure": null, "billing_class": "institutional", "code_system": "CPT", "methodology": "fee_schedule", "methodology_family": "fee_schedule", "rate": 61.71, "gross_charge": null, "cash_price": null, "x_medicare": 0.58, "x_medicare_wage_adjusted": 0.49, "medicare_allowed_wage_adjusted": 125.33, "wage_index": 1.289, "wage_index_fiscal_year": 2026, "wage_adjustment_status": "wage_adjusted", "facility_type": "acute", "plausibility": "not_assessed", "rank_tier": "stated_methodology", "price_kind": "negotiated price", "price_basis": "hospital-stated fee schedule" }, { "hospital_ccn": "070027", "hospital_name": "MANCHESTER MEMORIAL HOSPITAL", "hospital_state": "CT", "payer_name": "Aetna", "payer_parent_name": "CVS Health", "payer_resolution": "resolved", "payer_parents_sharing_price": 1, "payer_labels_sharing_price": 1, "payer_entity_class": null, "plan_name": "Commercial", "line_of_business": "commercial", "plan_product_structure": null, "billing_class": "institutional", "code_system": "CPT", "methodology": "fee_schedule", "methodology_family": "fee_schedule", "rate": 64.29, "gross_charge": null, "cash_price": null, "x_medicare": 0.6, "x_medicare_wage_adjusted": 0.51, "medicare_allowed_wage_adjusted": 125.33, "wage_index": 1.289, "wage_index_fiscal_year": 2026, "wage_adjustment_status": "wage_adjusted", "facility_type": "acute", "plausibility": "not_assessed", "rank_tier": "stated_methodology", "price_kind": "negotiated price", "price_basis": "hospital-stated fee schedule" } ], "cheapest_count": 3, "cheapest_empty": null, "benchmark": { "n": 98, "n_below_floor": 0, "p10": 139.2, "median": 243.98, "p90": 450.95, "min": null, "max": null, "median_x_medicare": 2.28, "median_x_medicare_basis": "national_unadjusted", "code_system": "CPT", "code_system_basis": "sole", "min_max_withheld": "not computed per methodology family", "n_hospitals": 18, "blended_n_across_all_methodology_families": 121, "family_seated": "fee_schedule", "family_basis": "natural", "plausibility_floor": { "applied": false, "floor_x_medicare": 0.5, "floor_rate": null, "medicare_allowed": 106.81, "basis_min_usd": 500.0, "filters_this_section": false, "note": "plausibility_floor", "excluded_below_floor_n": 0, "n_after_floor": 98, "all_rows_below_floor": false, "below_floor": [], "floor_invariant_violated": false }, "form_split": { "dollar_n": 98, "percent_form_n": 28, "algorithm_form_n": 28, "note": "dollar_n = benchmark.n (the median population; dollar-published negotiated rates only). percent_form_n / algorithm_form_n = negotiated rates this code+class+geo publishes as a percentage / an algorithm (rate is NULL; the payload is the percentage or formula text). Form rows are NEVER blended into any dollar median." }, "comparison_grade": "A", "grade_reason": "same code system + single hospital-stated methodology family 'fee_schedule' (grain per_service, grain confidence 'stated' by construction of the family reseat), n=98" }, "comparable_benchmark": { "stratum": "fee_schedule", "weighting": "ccn_weighted", "median": 296.49, "median_x_medicare": 2.78, "p10": 167.6, "p90": 451.91, "n_hospitals": 18, "n_below_floor": 0, "n_hospitals_fully_excluded": 0, "n": 18, "note": "the like-for-like comparable price: fee_schedule (negotiated-dollar, same economic object) rates only, excluding every other methodology family, and CCN-WEIGHTED (each hospital's own median, then the median across hospitals \u2014 one hospital can't dominate). Rows below this seat's plausibility floor are excluded before the per-hospital medians are taken, the same rule the rest of this answer applies. Quote THIS, not the blended benchmark.", "plausibility_floor": { "applied": false, "floor_x_medicare": 0.5, "floor_rate": null, "medicare_allowed": 106.81, "basis_min_usd": 500.0, "filters_this_section": false, "note": "plausibility_floor", "excluded_below_floor_n": 0, "n_after_floor": 18, "all_rows_below_floor": false, "below_floor": [], "floor_invariant_violated": false } }, "by_payer_lob": [ { "payer_parent_name": "Elevance Health", "line_of_business": "commercia ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/compare_hospital_rates` with the inputs as the JSON body. MCP: the tool by name. # get_hospital_quality Get Hospital Quality · v0.1.0 · hospital Returns one hospital's CMS Care Compare quality record by CCN: the overall star rating (1-5) with hospital type / ownership; every Care Compare measure for the hospital (mortality and complication rates, unplanned readmission / ED-return rates, timely and effective care, healthcare-associated infections SIRs, outpatient imaging efficiency, maternal health) with the score, CMS's compared-to-national verdict where published, denominator, confidence bounds and measurement window; the HCAHPS patient-experience summary (summary star + per-dimension star ratings and linear mean scores) for the latest reporting year the hospital has; and the HRRP excess readmission ratios per condition for the latest fiscal year (ratio > 1 = more readmissions than nationally expected). Inputs: ccn (required, 6-char CMS certification number); optional measure_group (alias: measure_source) to get ONE group's measure rows (complications_deaths | unplanned_visits | timely_care | healthcare_assoc_infections | outpatient_imaging_efficiency | maternal_health); optional limit and offset to page the measure rows (default limit 25 once detail is asked for). THE DEFAULT CALL IS A SUMMARY: ccn alone returns the overall rating, the HCAHPS and HRRP blocks, and the measure GROUPS with a count each (summary.measure_groups: measure_count / available / not_available / vs_national per group) — NOT the ~108 measure rows, which exceed the response budget for a single hospital. Totals are still reported (summary.measure_count) and row_counts.measures names what was withheld; ask again with measure_group, or limit / offset, for the rows. RETURNS a detail payload: value.summary (facility, overall_rating with status + footnote, hcahps_summary_star, counts, measure_groups, measure_detail_mode, and a `blocks` map saying which of overall_rating / measures / hcahps / hrrp are available for THIS hospital); value.measures, value.hcahps, value.hrrp row lists. Every row carries status = available | not_available (with the CMS footnote or reason), source_table and source_vintage (asserted_at). Nothing is fabricated: a suppressed or unreported measure is not_available, never a zero; an unrated hospital reports overall_rating null with the CMS footnote. All four sources are read WHERE is_current = true. An unknown CCN returns found=false. SOURCE: CMS Provider Data Catalog (Care Compare) Hospital General Information, hospital measure files, HCAHPS, and the HRRP hospital file. **Inputs.** - `ccn` (required): - `measure_group`: - `measure_source`: - `limit`: - `offset`: **Known limits.** - overall_rating is null for hospitals CMS does not rate (~40% of CCNs) — unrated, not 0. - score_numeric is null for suppressed / categorical / footnoted measures; the row is returned as not_available with the footnote. - HCAHPS answer-percent distribution rows are not returned (star + linear mean summary only); HRRP is the latest fiscal year only. - Measure semantics differ per measure_id; do not compare scores across unlike measures. **A real answer** (customer seat, 3.68 s, args `{"ccn":"070005","limit":5}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "ccn": "070005", "facility_name": "WATERBURY HOSPITAL", "city": "WATERBURY", "state": "CT", "hospital_type": "Acute Care Hospitals", "hospital_ownership": "Proprietary", "emergency_services": true, "overall_rating": 2, "overall_rating_status": "available", "overall_rating_not_available_reason": null, "overall_rating_footnote": null, "overall_rating_vintage": "2026-09-22", "measure_count": 106, "measures_available": 79, "measures_not_available": 27, "measures_by_source": { "complications_deaths": { "available": 18, "not_available": 2 }, "healthcare_assoc_infections": { "available": 33, "not_available": 3 }, "maternal_health": { "available": 0, "not_available": 4 }, "outpatient_imaging_efficiency": { "available": 1, "not_available": 1 }, "timely_care": { "available": 16, "not_available": 14 }, "unplanned_visits": { "available": 11, "not_available": 3 } }, "measure_groups": [ { "measure_group": "complications_deaths", "measure_count": 20, "available": 18, "not_available": 2, "vs_national": { "No Different Than the National Rate": 11, "No Different Than the National Value": 1 } }, { "measure_group": "healthcare_assoc_infections", "measure_count": 36, "available": 33, "not_available": 3, "vs_national": { "No Different than National Benchmark": 24, "Better than the National Benchmark": 6 } }, { "measure_group": "maternal_health", "measure_count": 4, "available": 0, "not_available": 4 }, { "measure_group": "outpatient_imaging_efficiency", "measure_count": 2, "available": 1, "not_available": 1 }, { "measure_group": "timely_care", "measure_count": 30, "available": 16, "not_available": 14 }, { "measure_group": "unplanned_visits", "measure_count": 14, "available": 11, "not_available": 3, "vs_national": { "No Different Than the National Rate": 1, "Number of Cases Too Small": 2, "No Different than expected": 1 } } ], "measure_group_count": 6, "measure_detail_mode": "rows", "measure_detail_hint": "measures: 106 rows returned 5 from offset 0 (limit 5); next_offset=5.", "measures_vs_national": { "No Different Than the National Rate": 12, "No Different Than the National Value": 1, "No Different than National Benchmark": 24, "Better than the National Benchmark": 6, "Number of Cases Too Small": 2, "No Different than expected": 1 }, "hcahps_reporting_year": 2025, "hcahps_summary_star": 3.0, "hcahps_row_count": 17, "hrrp_fiscal_year": 2026, "hrrp_measure_count": 6, "hrrp_available": 5, "blocks": { "overall_rating": "available", "measures": "available", "hcahps": "available", "hrrp": "available" }, "unit": "quality_rows" }, "measures": [ { "measure_source": "complications_deaths", "measure_id": "COMP_HIP_KNEE", "measure_name": "Rate of complications for hip/knee replacement patients", "condition": null, "value": null, "score_raw": null, "compared_to_national": null, "denominator": null, "sample": null, "lower_estimate": null, "higher_estimate": null, "footnote": "1", "period_start": "04/01/2023", "period_end": "03/31/2025", "status": "not_available", "not_available_reason": "cms_footnote:1", "source_vintage": "2026-09-30" }, { "measure_source": "complications_deaths", "measure_id": "Hybrid_HWM", "measure_name": "Hybrid Hospital-Wide All-Cause Risk Standardized Mortality Rate", "condition": null, "value": 3.6, "score_raw": "3.6", "compared_to_national": null, "denominator": "2023", "sample": null, "lower_estimate": null, "higher_estimate": null, "footnote": null, "period_start": "07/01/2024", "period_end": "06/30/2025", "status": "available", "not_available_reason": null, "source_vintage": "2026-09-30" }, { "measure_source": "complications_deaths", "measure_id": "MORT_30_AMI", "measure_name": "Death rate for heart attack patients", "condition": null, "value": 11.7, "score_raw": "11.7", "compared_to_national": null, "denominator": "90", "sample": null, "lower_estimate": null, "higher_estimate": null, "footnote": null, "period_start": "07/01/2022", "period_end": "06/30/2025", "status": "available", "not_available_reason": null, "source_vintage": "2026-09-30" }, { "measure_source": "complications_deaths", "measure_id": "MORT_30_CABG", "measure_name": "Death rate for CABG surgery patients", "condition": null, "value": null, "score_raw": null, "compared_to_national": null, "denominator": null, "sample": null, "lower_estimate": null, "higher_estimate": null, "footnote": "1", "period_start": "07/01/2022", "period_end": "06/30/2025", "status": "not_available", "not_available_reason": "cms_footnote:1", "source_vintage": "2026-09-30" }, { "measure_source": "complications_deaths", "measure_id": "MORT_30_COPD", "measure_name": "Death rate for COPD patients", "condition": null, "value": 12.1, "score_raw": "12.1", "compared_to_national": null, "denominator": "97", "sample": null, "lower_estimate": null, "higher_estimate": null, "footnote": null, "period_start": "07/01/2022", "period_end": "06/30/2025", "status": "available", "not_available_reason": null, "source_vintage": "2026-09-30" } ], "hcahps": [ { "reporting_year": 2025, "measure_id": "H_CLEAN_LINEAR_SCORE", "question": "Cleanliness ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_hospital_quality` with the inputs as the JSON body. MCP: the tool by name. # get_service_line_prices Get Service Line Prices · v1.0.0 · hospital A market's or a hospital's negotiated prices across a whole SERVICE LINE in ONE call: GI endoscopy, MRI, CT, cardiology, orthopedics, maternity, lab, and the rest of CMS's 70 shoppable services grouped the way buyers shop. For each code: how many hospitals price it, the market median (median of hospital medians), the 25th to 75th percentile, the low and high, and the multiple of Medicare. For each hospital: its price per code and a service-line index (its typical multiple of Medicare across the line), ranked low to high. ARGS: service_line (call with service_line='list' to see every line and its codes) or codes (up to 30 CPT/HCPCS or MS-DRG). state (2 letters, required: prices are stored by state). Optional: hospitals (up to 25 CCNs) or cbsa (CMS's wage-index CBSA or metro division: Miami 33124, Houston 26420) to narrow the market; line_of_business (commercial default, medicare_advantage, medicaid, exchange, unspecified); billing_class (institutional default = the facility price; professional = the physician fee); limit (hospitals listed, default 25, max 100). RULES the tool applies: posted negotiated DOLLAR rates the comparability screen calls real (never a percent of charges); one median per method (case rate, fee schedule, per diem never mixed); line of business never pooled; a DRG is a whole inpatient stay, a CPT code one procedure. These are prices hospitals post, not paid claims. For one code in depth (per payer, methodology detail) use compare_hospital_rates. **Inputs.** - `service_line`: - `codes`: - `state`: - `hospitals`: - `cbsa`: - `line_of_business`: - `billing_class`: - `limit`: **Known limits.** - Prices are what hospitals post in their price-transparency files, not paid claims. - Hospitals that post a code only as a percent of charges or with an unclear method are left out of that code. - The service-line index compares hospitals on the codes each prices; coverage says how many of the line's codes that is. **A real answer** (customer seat, 11.17 s, args `{"service_line":"mri","state":"TX"}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "service_line": "mri", "label": "MRI", "state": "TX", "line_of_business": "commercial", "billing_class": "institutional", "codes_requested": 6, "codes_priced": 6, "hospitals_priced": 253 }, "codes": [ { "code": "70553", "label": "MRI scan of brain before and after contrast", "system": "CPT", "method": "fee_schedule", "hospitals": 248, "market_median": 1433.85, "p25": 775.24, "p75": 1759.26, "low": 32.0, "high": 5939.0, "median_x_medicare": 4.02, "medicare_reference": 356.43, "hospitals_on_other_methods": { "case_rate": 72, "per_diem": 30, "negotiated_dollar_unspecified": 1 }, "prices_set_aside_below_floor": 1 }, { "code": "72148", "label": "MRI scan of lower spinal canal", "system": "CPT", "method": "fee_schedule", "hospitals": 248, "market_median": 906.53, "p25": 492.4, "p75": 1435.53, "low": 32.0, "high": 4779.0, "median_x_medicare": 3.58, "medicare_reference": 243.77, "hospitals_on_other_methods": { "case_rate": 72, "per_diem": 30, "negotiated_dollar_unspecified": 1 }, "prices_set_aside_below_floor": 0 }, { "code": "73721", "label": "MRI scan of leg joint", "system": "CPT", "method": "fee_schedule", "hospitals": 240, "market_median": 908.86, "p25": 565.36, "p75": 1404.28, "low": 32.0, "high": 5120.0, "median_x_medicare": 3.58, "medicare_reference": 243.77, "hospitals_on_other_methods": { "case_rate": 69, "per_diem": 27, "negotiated_dollar_unspecified": 1 }, "prices_set_aside_below_floor": 0 }, { "code": "70551", "label": "MRI brain, without contrast", "system": "CPT", "method": "fee_schedule", "hospitals": 251, "market_median": 906.53, "p25": 514.77, "p75": 1260.74, "low": 32.0, "high": 4846.0, "median_x_medicare": 3.58, "medicare_reference": 243.77, "hospitals_on_other_methods": { "per_diem": 29, "case_rate": 72, "negotiated_dollar_unspecified": 1 }, "prices_set_aside_below_floor": 0 }, { "code": "72141", "label": "MRI neck spine", "system": "CPT", "method": "fee_schedule", "hospitals": 247, "market_median": 906.53, "p25": 489.76, "p75": 1381.93, "low": 32.0, "high": 5200.0, "median_x_medicare": 3.58, "medicare_reference": 243.77, "hospitals_on_other_methods": { "case_rate": 72, "per_diem": 30, "negotiated_dollar_unspecified": 1 }, "prices_set_aside_below_floor": 0 }, { "code": "73221", "label": "MRI shoulder or arm joint", "system": "CPT", "method": "fee_schedule", "hospitals": 240, "market_median": 906.53, "p25": 566.69, "p75": 1196.37, "low": 32.0, "high": 4830.0, "median_x_medicare": 3.71, "medicare_reference": 243.77, "hospitals_on_other_methods": { "case_rate": 69, "per_diem": 27, "negotiated_dollar_unspecified": 1 }, "prices_set_aside_below_floor": 0 } ], "hospitals": [ { "ccn": "452061", "name": "POST ACUTE MEDICAL SPECIALTY HOSPITAL OF TEXARKANA", "codes_priced": 6, "service_line_index_x_medicare": 0.78, "prices": { "70553": 305.82, "70551": 181.48, "73221": 198.15, "72141": 175.13, "72148": 175.55, "73721": 197.72 } }, { "ccn": "450144", "name": "PERMIAN REGIONAL MEDICAL CENTER ANDREWS COUNTY HO", "codes_priced": 6, "service_line_index_x_medicare": 0.88, "prices": { "70553": 341.6, "70551": 209.53, "73221": 216.87, "72141": 203.67, "72148": 204.36, "73721": 216.53 } }, { "ccn": "450015", "name": "PARKLAND HEALTH & HOSPITAL SYSTEM", "codes_priced": 6, "service_line_index_x_medicare": 0.93, "prices": { "70553": 360.92, "70551": 222.37, "73221": 230.08, "72141": 216.13, "72148": 216.85, "73721": 229.72 } }, { "ccn": "450007", "name": "PETERSON REGIONAL MEDICAL CENTER", "codes_priced": 6, "service_line_index_x_medicare": 0.97, "prices": { "70553": 381.85, "70551": 233.04, "73221": 233.04, "72141": 233.04, "72148": 233.04, "73721": 233.04 } }, { "ccn": "453311", "name": "SHRINERS HOSPITALS FOR CHILDREN", "codes_priced": 6, "service_line_index_x_medicare": 1.19, "prices": { "70553": 469.68, "70551": 281.65, "73221": 285.75, "72141": 281.65, "72148": 281.65, "73721": 285.29 } }, { "ccn": "450678", "name": "WHITE ROCK MEDICAL CENTER", "codes_priced": 6, "service_line_index_x_medicare": 1.22, "prices": { "70553": 350.46, "70551": 239.69, "73221": 461.42, "72141": 239.69, "72148": 239.69, "73721": 461.42 } }, { "ccn": "453035", "name": "Warm Springs Rehab Hospital Of San Antonio Llc", "codes_priced": 5, "service_line_index_x_medicare": 1.28, "prices": { "70553": 455.05, "70551": 311.22, "72141": 311.22, "72148": 311.22, "73721": 311.22 } }, { "ccn": "452062", "name": "POST ACUTE MEDICAL AT LULING LLC", "codes_priced": 4, "service_line_index_x_medicare": 1.28, "prices": { "70553": 455.05, "70551": 311.22, "72141": 311.22, "72148": 311.22 } }, { "ccn": "452094", "name": "PAM SPECIALTY HOSPITAL OF VICTORIA NORTH", "codes_priced": 4, "service_line_index_x_medicare": 1.3, "prices": { "70553": 463.19, "70551": 316.79, "72141": 316.79, "72148": 316.79 } }, { "ccn": "453048", "name": "PAM REHABILITATION HOSPITAL OF BEAUMONT", "codes_priced": 6, "service_line_index_x_medicare": 1.31, ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_service_line_prices` with the inputs as the JSON body. MCP: the tool by name. # plan_hospital_price Plan Hospital Price · v1.5.0 · hospital One hospital, one code, the rate by payer and plan name as the hospital filed it (where negotiated rates by insurer live today; the insurer-file / TiC tools are coming soon). Dry-run a bounded hospital fact_hospital_chargemaster proof. Requires hospital_ccn and billing_code, plans Iceberg files/bytes before materializing rows, and returns a receipt-shaped plan. **Inputs.** - `hospital_ccn` (required): - `billing_code` (required): - `version_id`: - `payer_name`: - `plan_name`: - `billing_class`: - `current_only`: - `require_byte_provenance`: - `max_rows`: - `max_planned_files`: - `max_planned_bytes`: **A real answer** (customer seat, 6.39 s, args `{"hospital_ccn":"070005","billing_code":"70450"}`): ```json { "value": { "proof_kind": "hospital_price_proof", "source_table": "fact_hospital_chargemaster", "hospital_ccn": "070005", "billing_code": "70450", "version_id": null, "planned_file_count": 1, "planned_bytes": 93233000, "planned_record_count": 1908186, "planned_delete_file_count": 0, "plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "row_count": 0, "status": "planned", "all_rows_have_byte_provenance": true, "distinct_payer_names": [], "distinct_plan_names": [], "distinct_billing_classes": [], "distinct_methodologies": [], "distinct_content_sha256": [], "distinct_raw_s3_keys": [], "distinct_mrf_version_ids": [], "verdict": "planned" }, "unit": null, "vintage": null, "methodology": null, "caveats": [], "response_hash": "58de83528854634706f3ef649906303176a93561774568603234fdef9b65286d", "semantic_version": 1, "tool_version": "plan_hospital_price@1.5.0", "explanation": null, "status": "complete", "proof_id": "hospitalprice_207327c53f67604d", "receipt": { "receipt_version": "hospital_price_proof_receipt.v0", "substrate": "hospital", "proof_kind": "hospital_price_proof", "proof_id": "hospitalprice_207327c53f67604d", "tool_name": "plan_hospital_price", "tool_version": "1.5.0", "source_table": "fact_hospital_chargemaster", "source_descriptor": { "table": "fact_hospital_chargemaster", "snapshot_id": "4789942790573672775", "raw_s3_keys": [], "content_sha256": [], "mrf_version_ids": [], "source_urls": [], "parser_artifact_hashes": [], "s3_version_ids": [] }, "read_snapshot_set": { "fact_hospital_chargemaster": "4789942790573672775" }, "filters": { "hospital_ccn": "070005", "billing_code": "70450", "current_only": true }, "guardrails": { "max_rows": 500, "max_planned_files": 500, "max_planned_bytes": 268435456, "current_only": true, "require_byte_provenance": true, "raw_parquet_glob_reads": "disabled", "shared_mrf_expansion": "not_performed_mvp" }, "plan": { "planned_file_count": 1, "planned_bytes": 93233000, "planned_record_count": 1908186, "planned_delete_file_count": 0, "plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "planned_files_sample": [ "data/_VXeSg/hospital_state=CT/hospital_ccn=070005/20261002_010134_00448_k6qzf-35fcae15-3a2d-46e0-8d5d-644da8afbb0b.parquet" ] }, "evidence": { "plan": { "planned_file_count": 1, "planned_bytes": 93233000, "planned_record_count": 1908186, "planned_delete_file_count": 0, "plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "planned_files_sample": [ "data/_VXeSg/hospital_state=CT/hospital_ccn=070005/20261002_010134_00448_k6qzf-35fcae15-3a2d-46e0-8d5d-644da8afbb0b.parquet" ] }, "audit_chain": { "row_count": 0, "raw_s3_key_count": 0, "content_sha256_count": 0, "mrf_version_id_count": 0, "parser_artifact_hash_count": 0, "all_rows_have_byte_provenance": true } }, "row_count": 0, "status": "planned", "caveats": [ "billing_class_may_be_mixed", "current_rows_only_version_not_pinned_by_input", "hospital_price_proof_mvp_no_provider_group_expansion", "hospital_rates_are_chargemaster_mrf_rates_not_claims", "no_utilization_weighting_applied", "payer_name_may_be_mixed", "plan_name_may_be_mixed" ], "input_hash": "207327c53f67604d2fa515cbfde95955a8a3db0dbf20fdfddf8e97968f331723", "response_hash": "58de83528854634706f3ef649906303176a93561774568603234fdef9b65286d", "replay_pointer": { "tool": "plan_hospital_price", "inputs": { "hospital_ccn": "070005", "billing_code": "70450", "current_only": true, "require_byte_provenance": true, "max_rows": 500, "max_planned_files": 500, "max_planned_bytes": 268435456 }, "receipt_id": "hpr_58de83528854634706f3ef64" }, "receipt_id": "hpr_58de83528854634706f3ef64" }, "audience": "customer", "answer": { "value_ref": "value", "scope": { "tool": "plan_hospital_price", "filters": { "hospital_ccn": "070005", "billing_code": "70450", "current_only": true, "require_byte_provenance": true, "max_rows": 500, "max_planned_files": 500, "max_planned_bytes": 268435456 } } }, "method": "Negotiated facility prices for 70450 across hospitals, all plan types, compared on a single price basis. Percent-of-charge prices and list prices were set aside. You did not specify current_only; yes was used. You did not specify max_planned_bytes; 268435456 was used. You did not specify max_planned_files; 500 was used. You did not specify require_byte_provenance; yes was used.", "evidence": { "response_hash": "58de83528854634706f3ef649906303176a93561774568603234fdef9b65286d" }, "defaults_applied": [ { "param": "current_only", "used": true, "reason": "tool default" }, { "param": "max_planned_bytes", "used": 268435456, "reason": "tool default" }, { "param": "max_planned_files", "used": 500, "reason": "tool default" }, { "param": "require_byte_provenance", "used": true, "reason": "tool default" } ], "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/plan_hospital_price` with the inputs as the JSON body. MCP: the tool by name. # prove_hospital_price Prove Hospital Price · v1.5.0 · hospital One hospital, one code, the rate by payer and plan name with a receipt (where negotiated rates by insurer live today; the insurer-file / TiC tools are coming soon). Execute a bounded hospital chargemaster price proof and return rate summary values plus a receipt with source snapshot, filters, raw byte provenance, caveats, input hash, response hash, and replay pointer. **Inputs.** - `hospital_ccn` (required): - `billing_code` (required): - `version_id`: - `payer_name`: - `plan_name`: - `billing_class`: - `current_only`: - `require_byte_provenance`: - `max_rows`: - `max_planned_files`: - `max_planned_bytes`: **A real answer** (customer seat, 2.95 s, args `{"hospital_ccn":"070005","billing_code":"70450","max_rows":60}`): ```json { "value": { "proof_kind": "hospital_price_proof", "source_table": "fact_hospital_chargemaster", "hospital_ccn": "070005", "billing_code": "70450", "version_id": null, "planned_file_count": 1, "planned_bytes": 93233000, "planned_record_count": 1908186, "planned_delete_file_count": 0, "plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "row_count": 52, "status": "ok", "all_rows_have_byte_provenance": true, "distinct_payer_names": [ "Aetna", "Anthem", "Anthem Pathway", "Cigna", "ConnectiCare", "DE-IDENTIFIED", "Evernorth Behavioral Health", "HOSPITAL", "United Behavioral Health", "United Healthcare" ], "distinct_plan_names": [ "Aggregate Min/Max", "Cash Pay", "Commercial", "Gross Charge", "Medicare" ], "distinct_billing_classes": [ "facility" ], "distinct_methodologies": [ "", "case rate", "fee schedule", "other", "percent of total billed charges" ], "distinct_content_sha256": [ "9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc" ], "distinct_raw_s3_keys": [ "raw_archive/hospital/ccn=070005/9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc.csv" ], "distinct_mrf_version_ids": [ "d9385d8c-2051-4955-9ae4-ff855c3ce334" ], "rate_count": 7, "min_rate": 44.03, "median_rate": 192.38, "p10_rate": 44.03, "p90_rate": 357.7, "max_rate": 357.7, "rate_basis": "fee_schedule", "rate_basis_natural_family": "fee_schedule", "rate_basis_rule": "min/p10/median/p90/max are over ONE payment basis: the code's natural family (fee_schedule) when posted, else a negotiated dollar with no stated methodology, else the other line/admission family. Gross charge, cash, percent-of-charge, per-diem and non-dollar forms are never pooled into it; each is in rates_by_basis.", "rates_by_basis": { "case_rate": { "row_count": 4, "seated": false, "rate_count": 4, "min_rate": 466.0, "median_rate": 524.5, "p10_rate": 466.0, "p90_rate": 583.0, "max_rate": 583.0 }, "cash": { "row_count": 4, "seated": false, "rate_count": 4, "min_rate": 958.85, "median_rate": 958.85, "p10_rate": 958.85, "p90_rate": 958.85, "max_rate": 958.85 }, "fee_schedule": { "row_count": 7, "seated": true, "rate_count": 7, "min_rate": 44.03, "median_rate": 192.38, "p10_rate": 44.03, "p90_rate": 357.7, "max_rate": 357.7 }, "gross_charge": { "row_count": 4, "seated": false, "rate_count": 4, "min_rate": 1917.69, "median_rate": 1917.69, "p10_rate": 1917.69, "p90_rate": 1917.69, "max_rate": 1917.69 }, "negotiated_methodology_unstated": { "row_count": 1, "seated": false, "rate_count": 1, "min_rate": 44.03, "median_rate": 44.03, "p10_rate": 44.03, "p90_rate": 44.03, "max_rate": 44.03 }, "non_dollar_form": { "row_count": 28, "seated": false, "rate_count": 0, "min_rate": null, "median_rate": null, "p10_rate": null, "p90_rate": null, "max_rate": null }, "percent_of_charge": { "row_count": 4, "seated": false, "rate_count": 4, "min_rate": 660.84, "median_rate": 809.845, "p10_rate": 660.84, "p90_rate": 958.85, "max_rate": 958.85 } }, "all_rows_rate_count": 24, "rates_outside_basis_count": 17, "rate_basis_settings": { "outpatient": 7 }, "rate_basis_billing_classes": { "facility": 7 }, "summary_source": "fact_hospital_chargemaster", "verdict": "ok" }, "unit": "USD", "vintage": null, "methodology": null, "caveats": [], "response_hash": "52caf8290716e14507686956574934dc7f25ba8404cb5784cf1caaddab47d113", "semantic_version": 1, "tool_version": "prove_hospital_price@1.5.0", "explanation": null, "status": "complete", "proof_id": "hospitalprice_19f06a3112497ebd", "receipt": { "receipt_version": "hospital_price_proof_receipt.v0", "substrate": "hospital", "proof_kind": "hospital_price_proof", "proof_id": "hospitalprice_19f06a3112497ebd", "tool_name": "prove_hospital_price", "tool_version": "1.5.0", "source_table": "fact_hospital_chargemaster", "source_descriptor": { "table": "fact_hospital_chargemaster", "snapshot_id": "4789942790573672775", "raw_s3_keys": [ "raw_archive/hospital/ccn=070005/9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc.csv" ], "content_sha256": [ "9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc" ], "mrf_version_ids": [ "d9385d8c-2051-4955-9ae4-ff855c3ce334" ], "source_urls": [ "https://vlada-platform-raw.s3.amazonaws.com/raw_archive/hospital/ccn%3D070005/9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc.csv" ], "parser_artifact_hashes": [ "78df2514944e674eabf04d07f17a93ea1ab6255c6fff2bd4b3ec79d314e4a2b9" ], "s3_version_ids": [] }, "read_snapshot_set": { "fact_hospital_chargemaster": "4789942790573672775" }, "filters": { "hospital_ccn": "070005", "billing_code": "70450", "current_only": true }, "guardrails": { "max_rows": 60, "max_planned_files": 500, "max_planned_bytes": 268435456, "current_only": true, "require_byte_provenance": true, "raw_parquet_glob_reads": "disabled", "shared_mrf_expansion": "not_performed_mvp" }, "plan": { "planned_file_count": 1, "planned_bytes": 93233000, "planned_record_count": 1908186, "planned_delete_file_count": 0, "plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "planned_files_sample": [ "data/_VXeSg/hospital_state=CT/hospital_ccn=070005/20261002_010134_00448_k6qzf-35fcae15-3a2d-46e0-8d5d-644da8afbb0b.parquet" ] }, "evidence": { "plan": { "planned_file_count": 1, "planned_bytes": 93233000, "planned_record_count": 1908186, "planned_delete_file_count": 0, "plan_manifest_hash ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/prove_hospital_price` with the inputs as the JSON body. MCP: the tool by name. # replay_hospital_price Replay Hospital Price · v1.5.0 · hospital Replay a hospital price-proof receipt by re-running its recorded tool inputs and comparing response hash, Iceberg snapshot, plan hash, row count, status, and raw-byte source descriptor. **Inputs.** - `receipt` (required): **A real answer** (customer seat, 2.7 s, args `{"receipt":{"receipt_version":"hospital_price_proof_receipt.v0","substrate":"hospital","proof_kind":"hospital_price_proof","proof_id":"hospitalprice_19f06a3112497ebd","tool_name":"prove_hospital_price","tool_version":"1.5.0","source_table":"fact_hospital_chargemaster","source_descriptor":{"table":"fact_hospital_chargemaster","snapshot_id":"4789942790573672775","raw_s3_keys":["raw_archive/hospital/ccn=070005/9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc.csv"],"content_sha256":["9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc"],"mrf_version_ids":["d9385d8c-2051-4955-9ae4-ff855c3ce334"],"source_urls":["https://vlada-platform-raw.s3.amazonaws.com/raw_archive/hospital/ccn%3D070005/9a33aa0b5c67cc2a3c5cee0115ffa2bcf15f6ad5dd0dc69044111bdfdc1064fc.csv"],"parser_artifact_hashes":["78df2514944e674eabf04d07f17a93ea1ab6255c6fff2bd4b3ec79d314e4a2b9"],"s3_version_ids":[]},"read_snapshot_set":{"fact_hospital_chargemaster":"4789942790573672775"},"filters":{"hospital_ccn":"070005","billing_code":"70450","current_only":true},"guardrails":{"max_rows":60,"max_planned_files":500,"max_planned_bytes":268435456,"current_only":true,"require_byte_provenance":true,"raw_parquet_glob_reads":"disabled","shared_mrf_expansion":"not_performed_mvp"},"plan":{"planned_file_count":1,"planned_bytes":93233000,"planned_record_count":1908186,"planned_delete_file_count":0,"plan_manifest_hash":"432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb","planned_files_sample":["data/_VXeSg/hospital_state=CT/hospital_ccn=070005/20261002_010134_00448_k6qzf-35fcae15-3a2d-46e0-8d5d-644da8afbb0b.parquet"]},"evidence":{"plan":{"planned_file_count":1,"planned_bytes":93233000,"planned_record_count":1908186,"planned_delete_file_count":0,"plan_manifest_hash":"432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb","planned_files_sample":["data/_VXeSg/hospital_state=CT/hospital_ccn=070005/20261002_010134_00448_k6qzf-35fcae15-3a2d-46e0-8d5d-644da8afbb0b.parquet"]},"audit_chain":{"row_count":52,"raw_s3_key_count":1,"content_sha256_count":1,"mrf_version_id_count":1,"parser_artifact_hash_count":1,"all_rows_have_byte_provenance":true}},"row_count":52,"status":"ok","caveats":["billing_class_may_be_mixed","current_rows_only_version_not_pinned_by_input","hospital_price_proof_mvp_no_provider_group_expansion","hospital_rates_are_chargemaster_mrf_rates_not_claims","no_utilization_weighting_applied","payer_name_may_be_mixed","plan_name_may_be_mixed","rows_on_other_bases_listed_separately_in_rates_by_basis","summary_on_one_basis_fee_schedule"],"input_hash":"19f06a3112497ebd900630484cb76a0e89bb4b90d5ea1d95921773b8d76fb688","response_hash":"52caf8290716e14507686956574934dc7f25ba8404cb5784cf1caaddab47d113","replay_pointer":{"tool":"prove_hospital_price","inputs":{"hospital_ccn":"070005","billing_code":"70450","current_only":true,"require_byte_provenance":true,"max_rows":60,"max_planned_files":500,"max_planned_bytes":268435456},"receipt_id":"hpr_52caf8290716e14507686956"},"receipt_id":"hpr_52caf8290716e14507686956"}}`): ```json { "value": { "replay_kind": "hospital_price_proof_replay", "receipt_id": "hpr_52caf8290716e14507686956", "proof_id": "hospitalprice_19f06a3112497ebd", "tool_name": "prove_hospital_price", "matches": true, "checks": { "response_hash": true, "plan_manifest_hash": true, "row_count": true, "status": true, "source_descriptor": true }, "failed_checks": [], "checks_not_comparable": [], "source_descriptor_fields_differing": [], "source_descriptor_fields_not_in_receipt": [], "expected_response_hash": "52caf8290716e14507686956574934dc7f25ba8404cb5784cf1caaddab47d113", "actual_response_hash": "52caf8290716e14507686956574934dc7f25ba8404cb5784cf1caaddab47d113", "expected_plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "actual_plan_manifest_hash": "432b007b75d09646abed67f2ed3107945c3e9902b0518a03d1cffbceaa5b8abb", "expected_row_count": 52, "actual_row_count": 52, "expected_status": "ok", "actual_status": "ok", "verdict": "match" }, "unit": null, "vintage": null, "methodology": null, "caveats": [], "response_hash": "00c6019e589b617f63b1cb52b3f3bf99d6bdcb4de8bcf89b338ba92887a90828", "semantic_version": 1, "tool_version": "replay_hospital_price@1.5.0", "explanation": null, "status": "complete", "replay_id": "replay_a3174ea79ad5083a", "audience": "customer", "answer": { "value_ref": "value", "scope": { "tool": "replay_hospital_price" } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included.", "evidence": { "response_hash": "00c6019e589b617f63b1cb52b3f3bf99d6bdcb4de8bcf89b338ba92887a90828" }, "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/replay_hospital_price` with the inputs as the JSON body. MCP: the tool by name. # get_benefit_change Get Benefit Change · v2.0.0 · medicare The locked 2027 Medicare Advantage benefit tables in one call: what each benefit was in 2026 and what it is in 2027 for the SAME members, member-weighted from the CMS Plan Benefit Package filings and CMS September 2026 county enrollment, inside ONE product type, for the market or a parent organization, nationally, in a state or in a county. Premium, MOOP, the medical and Part D deductibles, the medical copays and coinsurance, the Part D tier cost shares, dental / OTC / hearing / eyewear / flex card dollars and offered shares, the Part B giveback and the supplemental services. ARGUMENTS: product_type (required unless group_by='product_type': non-SNP HMO | non-SNP PPO | D-SNP HMO | D-SNP PPO | C-SNP HMO | C-SNP PPO | I-SNP HMO | I-SNP PPO; 'ALL' is refused, types are never pooled), geography (national | state | county; inferred from the place when omitted), state (two letters), county (the name as CMS spells it, e.g. 'Maricopa', with state) or county_ssa (five digits, e.g. '03060'), parent (the parent organization; a partial name matches, e.g. 'UnitedHealth'), plan_type (default 'ALL'; HMO | HMOPOS | Local PPO | Regional PPO), group_by (none | parent | state | county | plan_type | product_type; state needs geography national, county needs geography state), benefits ('key' default | 'all' | a comma-separated list of benefit names, listed in value.benefits), limit (rows, default 50, max 500, largest 2026 membership first). RETURNS value.summary (the market of the scope: every benefit for the scope's members) and value.rows (one per group, or per matching parent). Each row: members_2026 (every September 2026 member), members_continuing (the members on both sides of the change), plans, thin (true when the value rests on plans covering under 70% of the members or fewer than five plans) and, per benefit, {2026, 2027_same_members, change, coverage_2026, coverage_2027, 2026_all_members, unit}: 2026 is the continuing members' 2026 design, 2027_same_members those same members' 2027 design, change = 2027_same_members minus 2026; 2026_all_members is every 2026 member, context only, never one side of a change. coverage is the share of the row's members the value describes. A null value is unknown (no member filed it), never $0. Percent benefits are served 0-100. When an allowance is asked, like_for_like carries its dollars on the paired members (same form both years) with the share whose design changed form, which is a design change, never a raise or a cut. D-SNP figures are the FILED design: a full dual generally pays $0 under Medicaid; the full-dual reading is the Plan Value tool's full-dual column. Employer group plans and stand-alone Part D are not in the tables. THE BENEFIT READING (mode = read | change | compare | drill; omit mode for the answer above). Each benefit is read as its DESIGN first (dental: a dollar maximum, the same plus a card that also pays dental, no maximum, on a card only, none), then as numbers that each carry their own denominator: value, measurable_pct (the share of the row's members the number describes; quote it), members, the simple_average across plans beside the member-weighted value, the trust tier, better_for_member, and on D-SNP rows the full_dual figure beside the filed design. benefits takes 'key', 'all', a family (allowance | card | cost_share | econ | service), a benefit (dental, otc, hearing, eyewear, card, primary_care, er, ...) or number ids such as dental:dollars_if, dental:cap_plus_card, cs:primary_care:pct_zero. years: e.g. '2024-2027' (2022-2026 each year's members; 2027 = the 2026 members followed into their 2027 plan). read: the scope's cells for each year asked (include_overall=true adds a parent's labelled all-product row). change: one BASE year (years='2026' = 2026 -> 2027): the same members and book vs book per number, plus value.transitions, members by from_design x to_design per benefit (exit = the plan ended with no successor), the like-for-like value change and the successor mix (renewed, restructured, crosswalked). compare: parent and parent_b on the counties both serve with the product type (weight 'combined' or 'a'; overlap share printed), or contract_id against its closest contracts by footprint (precomputed). drill: the plan segments behind the scope, largest first (a county, a state, or a parent nationally). SOURCE: Vlada benefit reading, edition v20261018b, from the CMS Plan Benefit Package filings, CMS county enrollment, the plan service area file and the CMS plan crosswalk. **Inputs.** - `product_type`: - `geography`: - `state`: - `county`: - `county_ssa`: - `parent`: - `plan_type`: - `group_by`: - `benefits`: - `limit`: - `mode`: - `years`: - `parent_b`: - `contract_id`: - `weight`: - `matrix`: - `include_overall`: **Known limits.** - Same-member change is 2026 continuing members against those members in 2027; members in plans that exit with no successor are in neither year, plans new in 2027 have no 2026 members. - Product types are never pooled: product_type ALL is refused. - D-SNP cost shares are the filed design; the dual-effective reading is Plan Value's full-dual column. - A null or zero weight is unknown, never $0; coverage rides beside every value. - Employer group plans and stand-alone Part D are not in the tables. **A real answer** (customer seat, 5.69 s, args `{"mode":"read","product_type":"non-SNP HMO","benefits":"dental","years":"2026"}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "mode": "read", "edition": "v20261018b", "years": [ 2026 ], "numbers": 9 }, "rows": [ { "geography_level": "national", "state": "US", "county_ssa": null, "county_name": null, "product_type": "non-SNP HMO", "plan_type": "ALL", "parent": "ALL", "years": { "2026": { "members": 12856349, "plans": 2117, "members_are": "September 2026 members in their 2026 plan", "numbers": { "dental:pct_offered": { "label": "Comprehensive dental: % of members offered", "unit": "percent", "value": 84.79, "measurable_pct": 99.0, "members": 12730322, "simple_average": 84.22, "plans": 2098, "trust": "LOCKED-B", "better_for_member": "up" }, "dental:design:max": { "label": "Comprehensive dental: % of members with an annual dollar maximum", "unit": "percent", "value": 69.38, "measurable_pct": 99.0, "members": 12730322, "simple_average": 72.78, "plans": 2098, "trust": "LOCKED-B", "better_for_member": null }, "dental:design:no_max": { "label": "Comprehensive dental: % of members with no annual maximum (copay schedule, unlimited, $10,000+)", "unit": "percent", "value": 15.03, "measurable_pct": 99.0, "members": 12730322, "simple_average": 10.06, "plans": 2098, "trust": "LOCKED-B", "better_for_member": null }, "dental:design:card": { "label": "Comprehensive dental: % of members with on a pooled card only", "unit": "percent", "value": 0.38, "measurable_pct": 99.0, "members": 12730322, "simple_average": 1.38, "plans": 2098, "trust": "LOCKED-B", "better_for_member": null }, "dental:design_known": { "label": "Comprehensive dental: % of members whose design is read", "unit": "percent", "value": 99.02, "measurable_pct": 100.0, "members": 12856349, "simple_average": 99.1, "plans": 2117, "trust": "LOCKED-B", "better_for_member": null }, "dental:dollars_if": { "label": "Comprehensive dental: average annual dollars, members whose plan has an annual dollar maximum", "unit": "usd_per_year", "value": 2266.59, "measurable_pct": 68.7, "members": 8832377, "simple_average": 2047.36, "plans": 1527, "trust": "LOCKED-B", "better_for_member": "up" }, "dental:dollars_all": { "label": "Comprehensive dental: annual dollars per member, all members (none = $0; no-cap designs out)", "unit": "usd_per_year", "value": 1850.75, "measurable_pct": 84.1, "members": 10816885, "simple_average": 1656.77, "plans": 1887, "trust": "LOCKED-B", "better_for_member": "up" }, "dental:any_pct_offered": { "label": "Dental of any kind (incl. preventive only): % offered", "unit": "percent", "value": 98.61, "measurable_pct": 100.0, "members": 12856349, "simple_average": 97.45, "plans": 2117, "trust": "LOCKED-B", "better_for_member": "up" }, "dental:cap_plus_card": { "label": "Comprehensive dental: % with its own dollar cap AND a card that also pays it (an addition)", "unit": "percent", "value": 5.38, "measurable_pct": 99.0, "members": 12730322, "simple_average": 7.53, "plans": 2098, "trust": "LOCKED-B", "better_for_member": null } } } } } ], "row_counts": { "rows": { "matched": 1, "returned": 1, "truncated": false, "limit": 50, "kept": "head" } }, "query": { "product_type": "non-SNP HMO", "geography": "national", "state": null, "county": null, "county_ssa": null, "parent": null, "plan_type": "ALL", "group_by": "none", "mode": "read", "benefits": [ "dental:pct_offered", "dental:design:max", "dental:design:no_max", "dental:design:card", "dental:design_known", "dental:dollars_if", "dental:dollars_all", "dental:any_pct_offered", "dental:cap_plus_card" ], "years": [ 2026 ], "limit": 50 }, "query_id": "5be3f7f9-7591-481b-ab57-d30b487de586", "numbers": [ { "id": "dental:pct_offered", "label": "Comprehensive dental: % of members offered", "unit": "percent", "family": "allowance" }, { "id": "dental:design:max", "label": "Comprehensive dental: % of members with an annual dollar maximum", "unit": "percent", "family": "allowance" }, { "id": "dental:design:no_max", "label": "Comprehensive dental: % of members with no annual maximum (copay schedule, unlimited, $10,000+)", "unit": "percent", "family": "allowance" }, { "id": "dental:design:card", "label": "Comprehensive dental: % of members with on a pooled card only", "unit": "percent", "family": "allowance" }, { "id": "dental:design_known", "label": "Comprehensive dental: % of members whose design is read", "unit": "percent", "family": "allowance" }, { "id": "dental:dollars_if", "label": "Comprehensive dental: average annual dollars, members whose plan has an annual dollar maximum", "unit": "usd_per_year", "family": "allowance" }, { "id": "dental:dollars_all", "label": "Comprehensive dental: annual dollars per member, all members (none = $0; no-cap designs out)", "unit": "usd_per_year", "family": "allowance" }, { "id": "dental:any_pct_offered", "label": "Dental of any kind (incl. preventive only): % offered", "uni ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_benefit_change` with the inputs as the JSON body. MCP: the tool by name. # get_contract_profile Get Contract Profile · v1.0.0 · medicare Everything Vlada holds on one Medicare Advantage contract, or one of its plans, in ONE call: the contract (name, parent, plan type, plans and counties served), enrollment by year and state, plan economics (risk score, Part A/B payment and rebate per member per month, by year), Overall / Part C / Part D stars by rating year, every plan's premium, MOOP, deductibles and supplemental allowances with the change from the prior plan year, ALL 36 filed benefits for a plan (doctor, hospital, emergency, diagnostics, equipment, drugs, dental, vision, hearing, OTC) with history back to 2019, the largest counties with share of county, and the 15 contracts it competes with most in its own counties. ARGS: contract_id (H5549, R5826, ...). Optional plan_id ('011' or 'H5549-011'): that plan's benefits come back in full with their history. Without plan_id, benefits come back for the largest `benefit_plans` individual plans offered in the benefit year (default 3, max 5). Optional sections: any of contract, enrollment, economics, stars, plans, benefits, counties, competitors (default all). SOURCE: the same nightly build that serves vladahealth.com/ma (CMS monthly enrollment, CMS Landscape and plan benefit package filings, CMS plan payment files, CMS Star Ratings); value.build names it. Benefits are the plan's FILED design; a D-SNP member's cost is usually lower after Medicaid. Employer group plans (800-series) file placeholder cost sharing and are flagged egwp. The record holds the 40 largest plans and 40 largest counties; plan_count and county_count give the full numbers. For one benefit across many plans use get_pbp_benefit; for star measures use get_stars with include_measures. **Inputs.** - `contract_id`: - `plan_id`: - `sections`: - `benefit_plans`: **Known limits.** - The record carries the 40 largest plans and 40 largest counties of a contract; plan_count and county_count are the full counts. - Benefits are the filed plan benefit package design (one segment's row for a segmented plan), not what a dual eligible member pays after Medicaid. - The plan crosswalk is not part of this record. **A real answer** (customer seat, 0.48 s, args `{"contract_id":"H5549","plan_id":"011"}`): ```json { "value": { "found": true, "not_found_reason": null, "build": { "build_id": "20261105T223646Z-nogit", "built_at": "2026-11-05T22:36:46+00:00" }, "query": { "contract_id": "H5549", "plan_id": "011", "sections": [ "contract", "enrollment", "economics", "stars", "plans", "benefits", "counties", "competitors" ], "benefit_plans": 3 }, "contract": { "contract_id": "H5549", "name": "VNS Health Medicare", "parent": "Visiting Nurse Service of New York", "plan_type": "HMO/HMOPOS", "plan_count": 3, "county_count": 14, "latest_enrollment_month": "2026-10", "benefit_year": "2027" }, "enrollment": { "basis": "members in the latest month held of each year (newest 2026-10)", "members": { "2018": 10343.0, "2019": 2290.0, "2020": 3020.0, "2021": 2996.0, "2022": 5313.0, "2023": 7495.0, "2024": 14946.0, "2025": 43226.0, "2026": 73471.0 }, "plans": { "2018": 4.0, "2019": 1.0, "2020": 1.0, "2021": 1.0, "2022": 3.0, "2023": 3.0, "2024": 3.0, "2025": 3.0, "2026": 3.0 }, "counties": { "2018": 8.0, "2019": 8.0, "2020": 8.0, "2021": 8.0, "2022": 8.0, "2023": 8.0, "2024": 11.0, "2025": 13.0, "2026": 14.0 }, "by_product": { "nonsnp": { "2018": 2645.0, "2019": 0.0, "2020": 0.0, "2021": 0.0, "2022": 550.0, "2023": 867.0, "2024": 1261.0, "2025": 3314.0, "2026": 6103.0 }, "dsnp": { "2018": 7698.0, "2019": 2290.0, "2020": 3020.0, "2021": 2996.0, "2022": 4763.0, "2023": 6628.0, "2024": 13685.0, "2025": 39912.0, "2026": 67368.0 }, "csnp": { "2018": 0.0, "2019": 0.0, "2020": 0.0, "2021": 0.0, "2022": 0.0, "2023": 0.0, "2024": 0.0, "2025": 0.0, "2026": 0.0 }, "isnp": { "2018": 0.0, "2019": 0.0, "2020": 0.0, "2021": 0.0, "2022": 0.0, "2023": 0.0, "2024": 0.0, "2025": 0.0, "2026": 0.0 } }, "by_state": [ { "state": "NY", "members": { "2018": 10271.0, "2019": 2290.0, "2020": 3016.0, "2021": 2991.0, "2022": 5292.0, "2023": 7450.0, "2024": 14883.0, "2025": 43078.0, "2026": 73307.0 } } ], "state_count": 1 }, "economics": { "basis": "member-weighted across the contract's plans, CMS plan payment files", "risk_score": { "2018": 1.451, "2019": 2.314, "2020": 2.356, "2021": 2.2, "2022": 1.876, "2023": 1.881, "2024": 1.597, "2025": null, "2026": null }, "ab_payment_pmpm": { "2018": 679.2, "2019": 769.96, "2020": 827.25, "2021": 851.74, "2022": 956.2, "2023": 1033.28, "2024": 1024.65, "2025": null, "2026": null }, "rebate_pmpm": { "2018": 130.6, "2019": 171.59, "2020": 160.08, "2021": 256.09, "2022": 261.4, "2023": 309.97, "2024": 320.86, "2025": null, "2026": null }, "supplemental_a_year": { "total": { "2018": null, "2019": 128.0, "2020": 144.0, "2021": 155.0, "2022": 327.0, "2023": 446.0, "2024": 549.0, "2025": 582.0, "2026": 573.0 }, "dental": { "2018": null, "2019": 0.0, "2020": 0.0, "2021": 0.0, "2022": 125.0, "2023": 233.0, "2024": 231.0, "2025": 239.0, "2026": 237.0 }, "vision": { "2018": null, "2019": 0.0, "2020": 17.0, "2021": 25.0, "2022": 21.0, "2023": 21.0, "2024": 19.0, "2025": 26.0, "2026": 26.0 }, "hearing": { "2018": null, "2019": 28.0, "2020": 28.0, "2021": 28.0, "2022": 38.0, "2023": 39.0, "2024": 39.0, "2025": 42.0, "2026": 42.0 }, "otc": { "2018": null, "2019": 100.0, "2020": 100.0, "2021": 102.0, "2022": 108.0, "2023": 122.0, "2024": 222.0, "2025": 235.0, "2026": 230.0 }, "flex": { "2018": null, "2019": 0.0, "2020": 0.0, "2021": 0.0, "2022": 35.0, "2023": 32.0, "2024": 38.0, "2025": 40.0, "2026": 39.0 } } }, "stars": { "clock": "A rating year's stars are published in October before it and set the quality bonus paid in the following payment year (the 2027 rating, published October 2026, pays in 2028).", "overall": { "2015": 3.0, "2016": 3.0, "2017": 3.0, "2018": 3.0, "2019": 3.0, "2020": 3.5, "2021": 4.0, "2022": 4.5, "2023": 4.5, "2024": 3.5, "2025": 3.5, "2026": 3.5, "2027": 4.0 }, "part_c": { "2015": 3.0, "2016": 3.0, "2017": 2.5, "2018": 2.5, "2019": 3.0, "2020": 3.5, "2021": 3.0, "2022": 4.0, "2023": 4.5, "2024": 3.5, "2025": 3.0, "2026": 3.5, "2027": 4.0 }, "part_d": { "2015": 3.5, "2016": 4.0, "2017": 3.5, "2018": 3.5, "2019": 3.0, "2020": 3.5, "2021": 5.0, "2022": 5.0, "2023": 5.0, "2024": 3.5, "2025": 3.5, "2026": 3.5, "2027": 4.0 }, "measures": "get_stars with include_measures=true" }, "plans": [ { "plan_id": "011", "name": "VNS Health EasyCare Plus (HMO D-SNP)", "plan_type": "HMO", "snp": "Dual-Eligible", "egwp": false, "offered_in_benefit_year": true, "members": 56506, "premium_total": 23.6, "premium_part_c": 0.0, "premium_part_d": 23.6, "moop_in_network": 9850.0, "part_d_deductible": 700.0, "prior_year": { "premium_total": 51.6, "moop_in_network": 9250.0 }, "supplemental_a_year": { "dental": 2750.0, "vision": 300.0, "hearing": 467.0, "otc": 0.0, "flex": 2400.0, "total": 5917.0 }, "risk_score": 1.303, "ab_payment_pmpm": 999.03, "rebate_pm ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_contract_profile` with the inputs as the JSON body. MCP: the tool by name. # get_contract_service_area Get Contract Service Area · v0.2.0 · medicare The county-level service area of Medicare Advantage contracts, month by month, from CMS's monthly MA Contract Service Area file (2006-10 on; 2022-11 was never published). Both directions: the counties a contract serves (contract_id) and the contracts serving a county (county_fips, 5 digits) or a state (state_code, 2 letters). WINDOW: report_month (YYYY-MM) or year; with neither, the newest month held (stated in value.query.report_month). RETURNS value.summary (distinct contracts, counties, contract-counties and contract-county-months; national, employer-group and partial-county counts; the months read), value.contracts (one row per contract: organization, organization type, plan type, counties served, employer-group and partial counties) and value.rows (one row per contract, county, month and flag combination: state_code, county_fips, county_ssa, county_name, eghp, partial_county, national_service_area). `limit` bounds both lists (default 100, max 2000); a truncated list carries a caveat. THREE RULES: (1) eghp (employer-group only) and partial_county are CMS's own flags; eghp_only=true keeps employer-group rows. (2) A contract serving the whole country (National PACE and similar) is one national row with no state or county (national_service_area=true); it is never counted as a county, and a state or county filter leaves it out unless include_national=true. (3) CMS lists a contract-county twice when its plans there differ in the partial or employer flag, so count DISTINCT contract-counties, never rows; the summary already does. Each month is read at its newest CMS edition. Stand-alone Part D (PDP) service areas are a separate file and are not here. **Inputs.** - `contract_id`: - `county_fips`: - `state_code`: - `report_month`: - `year`: - `eghp_only`: - `include_national`: - `limit`: **Known limits.** - eghp and partial_county are CMS's own flags (parse revision 2); the revision-1 defect that read them false on every row does not apply. - National service-area rows have no state or county (national_service_area true); they are excluded from county counts and from state or county filters unless include_national is set. - A contract-county split across flag values appears on more than one row: count DISTINCT contract-counties. - CMS never published the 2022-11 file. **A real answer** (customer seat, 3.44 s, args `{"contract_id":"H1036","report_month":"2026-09","limit":5}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contracts": 1, "counties": 359, "contract_counties": 359, "contract_county_months": 359, "national_contracts": 0, "eghp_contract_counties": 3, "partial_contract_counties": 0, "rows": 360, "flag_split_rows": 1, "months": 1, "first_month": "2026-09-01", "last_month": "2026-09-01", "data_as_of": "2026-10-06", "unit": "contract_counties" }, "contracts": [ { "contract_id": "H1036", "organization_name": "HUMANA MEDICAL PLAN, INC.", "organization_type": "Local CCP", "plan_type": "HMO/HMOPOS", "counties": 359, "national_service_area": false, "eghp_counties": 3, "partial_counties": 0, "months": 1 } ], "rows": [ { "contract_id": "H1036", "report_month": "2026-09-01", "state_code": "FL", "county_fips": "12001", "county_ssa": "10000", "county_name": "Alachua", "eghp": false, "partial_county": false, "national_service_area": false }, { "contract_id": "H1036", "report_month": "2026-09-01", "state_code": "FL", "county_fips": "12003", "county_ssa": "10010", "county_name": "Baker", "eghp": false, "partial_county": false, "national_service_area": false }, { "contract_id": "H1036", "report_month": "2026-09-01", "state_code": "FL", "county_fips": "12005", "county_ssa": "10020", "county_name": "Bay", "eghp": false, "partial_county": false, "national_service_area": false }, { "contract_id": "H1036", "report_month": "2026-09-01", "state_code": "FL", "county_fips": "12007", "county_ssa": "10030", "county_name": "Bradford", "eghp": false, "partial_county": false, "national_service_area": false }, { "contract_id": "H1036", "report_month": "2026-09-01", "state_code": "FL", "county_fips": "12011", "county_ssa": "10050", "county_name": "Broward", "eghp": false, "partial_county": false, "national_service_area": false } ], "row_counts": { "contracts": { "matched": 1, "returned": 1, "truncated": false, "limit": 5, "kept": "head" }, "rows": { "matched": 360, "returned": 5, "truncated": true, "limit": 5, "kept": "head" } }, "query": { "contract_id": "H1036", "county_fips": null, "state_code": null, "report_month": "2026-09", "year": null, "eghp_only": false, "include_national": false, "limit": 5 }, "query_id": "523629ee-1ece-40b0-b5d5-dcedc6197b80", "report_month": "2026-09", "limit": 5 }, "unit": "contract_service_area_detail", "result_status": "answered_with_caveats", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_contract_service_area" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [ { "caveat_type": "methodology_note", "severity": "info", "message": "Every count is distinct: CMS lists a contract-county twice when the contract's plans there differ in the partial-county or employer-group flag, so the rows can outnumber the contract-counties. The employer-group and partial-county flags are CMS's own.", "structured_fields": {} } ], "confidence": null, "finality_confidence": null, "response_hash": "e0ce7341b3a9ec5ef9a8a540846c0a096ba308c8d0ef9008fa2ee1e4b0ee39d4", "semantic_version": 1, "tool_version": "0.2.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "cc3ef838-a944-4d0d-9883-f7b14f39841a", "timestamp": "2026-11-09T21:36:29.719332Z", "request_id": "046968d1-8292-455c-b703-ac112b803c23", "audience": "customer", "answer": { "value_ref": "value", "unit": "contract_service_area_detail", "scope": { "tool": "get_contract_service_area", "filters": { "contract_id": "H1036", "report_month": "2026-09", "limit": 5 } } }, "method": "Read from the CMS publication at the contract level. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "523629ee-1ece-40b0-b5d5-dcedc6197b80", "response_hash": "e0ce7341b3a9ec5ef9a8a540846c0a096ba308c8d0ef9008fa2ee1e4b0ee39d4", "audit_id": "cc3ef838-a944-4d0d-9883-f7b14f39841a", "request_id": "046968d1-8292-455c-b703-ac112b803c23" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_contract_service_area` with the inputs as the JSON body. MCP: the tool by name. # get_county_view Get County View · v1.5.0 · medicare The whole Medicare Advantage picture of ONE county, over time, in one call: (1) enrollment by parent and product type each September from 2021, with CMS small-cell suppression carried as a floor and a ceiling, and the county's MA penetration where CMS holds it; (2) plan exits for every transition from 2023: continuing, departing, the five Day-One buckets, the true outcome where the crosswalk is held or the calibrated estimate range where not, parents before and parents continuing; (3) the same members' plan design this year against next (total premium, $0 premium share, MOOP, $0 Part D deductible share, D-SNP $0 cost sharing, star), at county grain where held, else the state figures under their own name with a coded note (get_landscape_benefit_change serves twelve metrics at state grain); (4) every plan sold in the county in the plan year with premium, MOOP, deductible and star, the D-SNP fields in their own columns, paged; (5) September members in contracts rated 4+ stars by rating year, with the rating-year to payment-year clock; (6) the County Volatility Index every plan year 2016-2027: per 100 members, those whose plan ended, who were moved, or whose plan made a material cut (premium +$10/month, MOOP +$500, dental max -$500 or dropped), pooled and by product type, beside the state and the nation, with the county's rank (detail=true adds the plans behind the newest year and what each changed; get_volatility_index ranks counties, states and insurers). Every tile is one row per product type with arrays over years or transitions, so the county reads over time in one call. ARGUMENTS: state (two-letter) and county (the county name as CMS spells it, e.g. 'Cook', 'DuPage'; 'County' may be included or left off; a misspelling is refused naming the nearest CMS spellings), OR county_fips (five digits, e.g. '17031'), OR county_ssa (the five-digit CMS SSA state-county code, e.g. '14140', resolved to its FIPS through the CMS penetration file); year (the plan year for the plan list, default the newest Landscape year held); sections (comma-separated subset of enrollment, exits, benefit_change, plans, stars, volatility; default the first five: ask for volatility by name, e.g. sections=volatility for 'how volatile is my county'); detail: the two modes, summary (default, false: the product-type tiles, which fit one answer) and full (true: the tiles plus the parent x product type rows for enrollment and for the newest exits transition, and the plan list itself, paged); limit (rows per detail list per page, default 5, max 200) and offset (default 0), which page every detail list together, so a long page is one section at a time (sections=plans, detail=true, limit=100); include_cost_mmp (default false: industry = every product type but Cost and MMP). RETURNS value.blocks (one block per section: source, edition, the five clocks, the base, the seconds it took, its caveats, and a status of measured, substituted or unavailable with a code), value.county_by_year, value.enrollment_by_product_type, value.exits_by_product_type, value.benefit_change, value.plans_by_product_type, value.stars_exposure, value.volatility_by_year, value.volatility_by_product_type, value.summary; with detail=true also value.enrollment (parent x product type), value.exits (parent x product type, newest transition), value.plans and value.volatility_plans, each paged by limit and offset. RULES THE TOOL ENFORCES: the county is resolved by FIPS and the name key the Landscape carries is derived, never typed; the member base is H/R contracts, plans 001-799, September Y, matched to the Y Landscape by plan AND county; stand-alone Part D is never in it; D-SNP is its own product type and is never pooled; suppressed cells are carried as a floor and a ceiling, so every rollup keeps its bounds; parent is CMS's reported parent at each September and a parent's figure is the sum of its members, never a plan count; every section names its clocks. SOURCE: Vlada analysis of the CMS monthly enrollment by plan and county, the CMS MA state-county penetration file, the CMS MA/Part D Landscape files, the CMS plan crosswalk where held, and the CMS Star Ratings. **Inputs.** - `state`: - `county`: - `county_fips`: - `county_ssa`: - `year`: - `sections`: - `detail`: - `limit`: - `offset`: - `include_cost_mmp`: **A real answer** (customer seat, 11.25 s, args `{"state":"IL","county":"Cook"}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "state": "IL", "county": "Cook", "county_fips": "17031", "county_keys": [ "COOK" ], "enrollment_years": [ 2021, 2022, 2023, 2024, 2025, 2026 ], "newest_enrollment_month": "2026-09", "sections_requested": [ "enrollment", "exits", "benefit_change", "plans", "stars" ], "sections_measured": [ "enrollment", "exits", "benefit_change", "plans", "stars" ], "sections_substituted": [], "sections_unavailable": [], "unit": "members", "seconds": { "resolve_county": 5.39, "enrollment": 5.67, "penetration": 4.13, "exits": 3.12, "calibration": 3.13, "benefits": 3.12, "plans": 5.39, "landscape_head": 3.07, "stars": 4.08, "total": 11.08 } }, "county_by_year": [ { "year": 2021, "members_industry": 200370, "members_industry_ceiling": 203720, "members_all_hr_plans": 239480, "suppressed_cells": 360, "plans": 427, "parents": 50, "penetration_held": true, "eligibles": 835444, "ma_enrolled": 305569, "ma_enrolled_lower_bound": 305569, "ma_enrolled_upper_bound": 305569, "penetration_pct": 36.58 }, { "year": 2022, "members_industry": 226371, "members_industry_ceiling": 231001, "members_all_hr_plans": 266593, "suppressed_cells": 489, "plans": 566, "parents": 54, "penetration_held": true, "eligibles": 842162, "ma_enrolled": 333506, "ma_enrolled_lower_bound": 333506, "ma_enrolled_upper_bound": 333506, "penetration_pct": 39.6 }, { "year": 2023, "members_industry": 247379, "members_industry_ceiling": 251489, "members_all_hr_plans": 292115, "suppressed_cells": 432, "plans": 508, "parents": 56, "penetration_held": true, "eligibles": 853415, "ma_enrolled": 361657, "ma_enrolled_lower_bound": 361657, "ma_enrolled_upper_bound": 361657, "penetration_pct": 42.38 }, { "year": 2024, "members_industry": 271242, "members_industry_ceiling": 275112, "members_all_hr_plans": 306598, "suppressed_cells": 411, "plans": 485, "parents": 54, "penetration_held": true, "eligibles": 866298, "ma_enrolled": 384466, "ma_enrolled_lower_bound": 384466, "ma_enrolled_upper_bound": 384466, "penetration_pct": 44.38 }, { "year": 2025, "members_industry": 285674, "members_industry_ceiling": 289434, "members_all_hr_plans": 319578, "suppressed_cells": 391, "plans": 476, "parents": 50, "penetration_held": true, "eligibles": 881827, "ma_enrolled": 395974, "ma_enrolled_lower_bound": 395974, "ma_enrolled_upper_bound": 395974, "penetration_pct": 44.9 }, { "year": 2026, "members_industry": 327049, "members_industry_ceiling": 330719, "members_all_hr_plans": 327148, "suppressed_cells": 376, "plans": 455, "parents": 46, "penetration_held": true, "eligibles": 896718, "ma_enrolled": 402008, "ma_enrolled_lower_bound": 402008, "ma_enrolled_upper_bound": 402008, "penetration_pct": 44.83 } ], "enrollment_by_product_type": [ { "product_type": "non-SNP HMO", "in_industry": true, "members_latest": 134316, "years": [ 2021, 2022, 2023, 2024, 2025, 2026 ], "members": [ 121864, 127981, 127219, 128120, 132387, 134316 ], "ceiling": [ 123244, 129961, 128849, 129490, 133667, 135676 ], "suppressed_cells": [ 138, 198, 163, 137, 128, 136 ], "plans": [ 168, 234, 194, 163, 156, 164 ], "parents": [ 32, 37, 32, 35, 30, 32 ] }, { "product_type": "non-SNP PPO", "in_industry": true, "members_latest": 108085, "years": [ 2021, 2022, 2023, 2024, 2025, 2026 ], "members": [ 71957, 89384, 103881, 118371, 114239, 108085 ], "ceiling": [ 73117, 91074, 105311, 119781, 115619, 109325 ], "suppressed_cells": [ 116, 169, 143, 141, 138, 124 ], "plans": [ 137, 192, 171, 172, 172, 151 ], "parents": [ 15, 14, 18, 15, 19, 21 ] }, { "product_type": "D-SNP HMO", "in_industry": true, "members_latest": 38625, "years": [ 2021, 2022, 2023, 2024, 2025, 2026 ], "members": [ 0, 11, 11, 0, 0, 38625 ], "ceiling": [ 570, 691, 721, 740, 730, 39215 ], "suppressed_cells": [ 57, 68, 71, 74, 73, 59 ], "plans": [ 57, 69, 72, 74, 73, 64 ], "parents": [ 18, 22, 23, 20, 17, 16 ] }, { "product_type": "C-SNP HMO", "in_industry": true, "members_latest": 24977, "years": [ 2021, 2022, 2023, 2024, 2025, 2026 ], "members": [ 4188, 4172, 5954, 10713, 19664, 24977 ], "ceiling": [ 4248, 4252, 6064, 10813, 19784, 25217 ], "suppressed_cells": [ 6, 8, 11, 10, 12, 24 ], "plans": [ 10, 12, 14, 15, 22, 35 ], "parents": [ 6, 7, 7, 7, 8, 11 ] }, { "product_type": "C-SNP PPO", "in_industry": true, "members_latest": 18959, "years": [ 2021, 2022, 2023, 2024, 2025, 2026 ], "members": [ 0, 2081, 7624, 11600, 17170, 18959 ] ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_county_view` with the inputs as the JSON body. MCP: the tool by name. # get_enrollment Get Enrollment · v0.4.0 · medicare Returns CMS monthly enrollment for a Medicare Advantage plan or contract: the member count, the trend over time, and, at contract level, the MA-only vs Part-D split, plus org/parent and plan type. Filter by contract_id (required) + optional plan_id (plan grain vs contract total), and optional year ('2024') or month ('2024-03'); with neither, returns the latest month plus a trailing 13-month trend. Monthly coverage back to 2006. Every row carries the year-over-year change (yoy_change / yoy_pct) vs the same month one year earlier; plan rows carry the plan's SNP class (snp_type) when applicable. RETURNS a detail payload, not a bare count: value.summary (latest_month, latest_enrollment, yoy_change / yoy_pct, ma_only_count / part_d_count, trend min/max and change over the window), value.months (the per-month trend rows), value.row_counts (matched / returned / truncated / limit) and value.query (the filters actually applied). `limit` bounds the trend rows returned (default 13 months, max 2000); a truncated list always carries a caveat. Enrollment is the SPINE every other MA metric joins to (per-member, share-weighted). SUPPRESSION is honest: CMS redacts cells under 11 enrollees, which come back as count=null with a [lower, upper] bound and suppression_reason='redacted_small_cell', never a zero, and the suppression caveat fires only when a returned month is actually redacted. A contract id that does not exist returns found=false with a not_found_reason, never a suppression story. Pair with get_pbp_benefit or get_stars to weight or normalize by members. SOURCE: CMS Monthly Enrollment by Plan / by Contract. **Inputs.** - `contract_id` (required): - `plan_id`: - `year`: - `month`: - `limit`: **Known limits.** - Cells under 11 enrollees are CMS-redacted: count=null with a [lower, upper] bound and suppression_reason='redacted_small_cell'. - MA-only vs Part-D split is contract-level only (omit plan_id to get it). - County / market-share grain lives in enrollment_monthly_county (612M rows); this tool serves plan + contract totals. **A real answer** (customer seat, 3.46 s, args `{"contract_id":"H1036","limit":5}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "grain": "contract", "contract_id": "H1036", "plan_id": null, "snp_type": null, "organization": "Humana", "parent_org": "Humana Inc.", "plan_name": null, "plan_type": "HMO/HMOPOS", "offers_part_d": true, "latest_month": "2026-10-01", "latest_enrollment": 859334, "unit": "enrollees", "yoy_change": 213333, "yoy_pct": 33.0, "ma_only_count": 3465, "part_d_count": 855869, "trend_start_month": "2026-06-01", "trend_end_month": "2026-10-01", "trend_min_enrollment": 845931, "trend_max_enrollment": 859334, "trend_change_over_window": 13403, "suppressed_month_count": 0 }, "months": [ { "report_month": "2026-06-01", "enrollment_count": 845931, "enrollment_lower_bound": 845931, "enrollment_upper_bound": 845931, "enrollment_suppression_reason": "none", "ma_only_count": 3659, "part_d_count": 842272, "plan_type": "HMO/HMOPOS", "offers_part_d": true, "organization_marketing_name_raw": "Humana", "parent_org_raw": "Humana Inc.", "yoy_change": 195047, "yoy_pct": 30.0 }, { "report_month": "2026-07-01", "enrollment_count": 849463, "enrollment_lower_bound": 849463, "enrollment_upper_bound": 849463, "enrollment_suppression_reason": "none", "ma_only_count": 3608, "part_d_count": 845855, "plan_type": "HMO/HMOPOS", "offers_part_d": true, "organization_marketing_name_raw": "Humana", "parent_org_raw": "Humana Inc.", "yoy_change": 199496, "yoy_pct": 30.7 }, { "report_month": "2026-08-01", "enrollment_count": 853829, "enrollment_lower_bound": 853829, "enrollment_upper_bound": 853829, "enrollment_suppression_reason": "none", "ma_only_count": 3552, "part_d_count": 850277, "plan_type": "HMO/HMOPOS", "offers_part_d": true, "organization_marketing_name_raw": "Humana", "parent_org_raw": "Humana Inc.", "yoy_change": 206390, "yoy_pct": 31.9 }, { "report_month": "2026-09-01", "enrollment_count": 856349, "enrollment_lower_bound": 856349, "enrollment_upper_bound": 856349, "enrollment_suppression_reason": "none", "ma_only_count": 3498, "part_d_count": 852851, "plan_type": "HMO/HMOPOS", "offers_part_d": true, "organization_marketing_name_raw": "Humana", "parent_org_raw": "Humana Inc.", "yoy_change": 210325, "yoy_pct": 32.6 }, { "report_month": "2026-10-01", "enrollment_count": 859334, "enrollment_lower_bound": 859334, "enrollment_upper_bound": 859334, "enrollment_suppression_reason": "none", "ma_only_count": 3465, "part_d_count": 855869, "plan_type": "HMO/HMOPOS", "offers_part_d": true, "organization_marketing_name_raw": "Humana", "parent_org_raw": "Humana Inc.", "yoy_change": 213333, "yoy_pct": 33.0 } ], "row_counts": { "months": { "matched": 5, "returned": 5, "truncated": false, "limit": 5, "kept": "tail" } }, "query": { "contract_id": "H1036", "plan_id": null, "grain": "contract", "year": null, "month": null, "limit": 5 }, "query_id": "77437feb-4d20-4861-b416-010a03977cbe" }, "unit": "enrollment_detail", "result_status": "answered", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_enrollment" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "b8f263396d9e9c83fc0afc86d7c3c9838b2fc358519c80d9275b7eddb7e6909c", "semantic_version": 1, "tool_version": "0.4.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "2d9ca760-25e5-429b-ac9d-c555e84658c9", "timestamp": "2026-11-09T21:33:35.907514Z", "request_id": "bf50a9aa-a62b-4473-a1bc-c603066865a5", "audience": "customer", "answer": { "value_ref": "value", "unit": "enrollment_detail", "scope": { "tool": "get_enrollment", "filters": { "contract_id": "H1036", "limit": 5 } } }, "method": "Read from the CMS publication at the contract level. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "77437feb-4d20-4861-b416-010a03977cbe", "response_hash": "b8f263396d9e9c83fc0afc86d7c3c9838b2fc358519c80d9275b7eddb7e6909c", "audit_id": "2d9ca760-25e5-429b-ac9d-c555e84658c9", "request_id": "bf50a9aa-a62b-4473-a1bc-c603066865a5" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_enrollment` with the inputs as the JSON body. MCP: the tool by name. # get_hos Get Hos · v0.2.0 · medicare Returns a Medicare Advantage contract's CMS Health Outcomes Survey (HOS) rates across the four survey topics (fall_risk_management, urinary_incontinence, osteoporosis_testing, physical_activity), each with the two reported rates and the year-over-year change. Filter by contract_id (required) + optional year (defaults to the latest; report years 2019-2025). RETURNS a detail payload, not a topic count: value.topics is the per-topic row list (topic, report_year, rate1, rate2, rate3, rate1_yoy), value.summary rolls it up (topic_count, which topics reported, the highest and lowest rate1), value.row_counts carries matched / returned / truncated and value.query the filters applied. `limit` bounds the rows (default 200, max 2000). HOS is the beneficiary-survey companion to the chart-abstracted HEDIS rates and feeds several Part C Star measures. rate1/rate2 are the survey's two published rates for the topic (e.g. the share who reported the issue and the share who discussed it with a provider); see the CMS HOS documentation for exact definitions. Pair with get_stars. A contract id with no HOS rows returns found=false with a not_found_reason. SOURCE: CMS Health Outcomes Survey (HOS) Public Use File. **Inputs.** - `contract_id` (required): - `year`: - `limit`: **Known limits.** - rate1/rate2 semantics are topic-specific; consult the CMS HOS documentation. **A real answer** (customer seat, 7.56 s, args `{"contract_id":"H1036","year":2025}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H1036", "year": 2025, "topic_count": 3, "topics_reported": [ "fall_risk_management", "physical_activity", "urinary_incontinence" ], "topics_missing": [ "osteoporosis_testing" ], "highest_rate1": { "topic": "physical_activity", "rate1": 58.76 }, "lowest_rate1": { "topic": "fall_risk_management", "rate1": 29.78 }, "unit": "hos_topic_rows" }, "topics": [ { "topic": "fall_risk_management", "report_year": 2025, "rate1": 29.78, "rate2": 60.99, "rate3": null, "rate1_yoy": 1.75 }, { "topic": "physical_activity", "report_year": 2025, "rate1": 58.76, "rate2": 51.99, "rate3": null, "rate1_yoy": -1.83 }, { "topic": "urinary_incontinence", "report_year": 2025, "rate1": 54.55, "rate2": 45.08, "rate3": 15.57, "rate1_yoy": -13.36 } ], "row_counts": { "topics": { "matched": 3, "returned": 3, "truncated": false, "limit": 200, "kept": "head" } }, "query": { "contract_id": "H1036", "year": 2025, "limit": 200 }, "query_id": "61bcdae1-ec58-4d9e-a8f6-14b73871903f" }, "unit": "hos_detail", "result_status": "answered", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_hos" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "a9fa4cb399d65eaee81dab89f3df3a108fef1b03b1806a16f7de94ce10244b4d", "semantic_version": 1, "tool_version": "0.2.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "cf761391-badd-48ae-94da-7167f68c188c", "timestamp": "2026-11-09T21:37:21.882599Z", "request_id": "00340683-b65c-423e-8671-f6bdf1978032", "audience": "customer", "answer": { "value_ref": "value", "unit": "hos_detail", "scope": { "tool": "get_hos", "filters": { "contract_id": "H1036", "year": 2025 } }, "period": { "year": 2025 } }, "method": "Read from the CMS publication for 2025 at the contract level. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "61bcdae1-ec58-4d9e-a8f6-14b73871903f", "response_hash": "a9fa4cb399d65eaee81dab89f3df3a108fef1b03b1806a16f7de94ce10244b4d", "audit_id": "cf761391-badd-48ae-94da-7167f68c188c", "request_id": "00340683-b65c-423e-8671-f6bdf1978032" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_hos` with the inputs as the JSON body. MCP: the tool by name. # get_landscape Get Landscape · v0.5.0 · medicare Returns the CMS Landscape view of a Medicare plan: monthly premium, in-network MOOP, overall star rating, plan type, and the county/state service-area breadth. Filter by contract_id (required) + optional plan_id (1 to 3 digits, zero-padded), segment_id and year; omit plan_id to list all plans on a contract. RETURNS a detail payload, not a plan-year count: value.plans is the actual PLAN LIST, ONE ROW PER PLAN SEGMENT (report_year, plan_id, segment_id, segment_count, plan_name, org_name, parent_org_name, plan_type, category, snp_type, total_premium, total_premium_basis, premium_as_filed, consolidated_premium, part_c_premium, part_d_premium, moop_in_network, overall_star_rating, overall_star_status, service_area_county_count / state_count), sorted premium ascending so the cheapest lead; value.summary rolls it up (plan_count = distinct plans, segment_row_count, segmented_plan_count, total premium min / median / max, zero-premium count, premium basis counts, star min / max, total distinct counties); value.row_counts carries matched / returned / truncated and value.query the filters applied. `limit` bounds the row list (default 200, max 2000); a truncated list always carries a caveat. READING THE PREMIUM. total_premium is the plan's monthly premium on one basis per row, named in total_premium_basis: 'consolidated' (CMS's Part C plus Part D figure), 'part_c_only_no_drug_coverage' (from CY2025 CMS prints the consolidated premium as 'Not Applicable' on every plan without drug coverage, so the Part C premium is the whole premium), 'part_d_only' (a PDP), or null when CMS filed no figure. CMS's own text is carried in premium_as_filed; its '$-' token (CY2014, 2015, 2019-2023) is a $0 premium, never missing. A segment is its own filed design: a segmented plan has one row per segment with its own premium and MOOP. Covers ALL plan categories (MA, PDP, SNP, MMP, Cost), 2007-2027; the CY2027 file loaded 2026-09-28. The Landscape drops ~early September, ahead of the October benefits drop, so it is the first official view of the upcoming plan year. Stars for 2013-2020 are read from CMS's text form ('3.5 Stars'); a CMS message in place of a star is carried in overall_star_status. Pair with get_pbp_benefit (benefits) for the full picture. A contract / plan / year with no Landscape rows returns found=false with a not_found_reason. SOURCE: CMS MA/Part-D Landscape source files. **Inputs.** - `contract_id` (required): - `plan_id`: - `segment_id`: - `year`: - `limit`: **A real answer** (customer seat, 2.45 s, args `{"contract_id":"H1036","year":2026,"limit":5}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H1036", "plan_id": null, "segment_id": null, "years_covered": [ 2026 ], "plan_count": 86, "segment_row_count": 88, "segmented_plan_count": 2, "org_name": "Humana", "parent_org_name": "Humana Inc.", "categories": [ "MA", "SNP" ], "plan_types": [ "HMO", "HMO C-SNP", "HMO D-SNP", "HMO-POS" ], "total_premium_min": 0.0, "total_premium_median": 0.0, "total_premium_max": 38.4, "total_premium_basis_counts": { "consolidated": 85, "part_c_only_no_drug_coverage": 3 }, "consolidated_premium_min": 0.0, "consolidated_premium_median": 0.0, "consolidated_premium_max": 38.4, "zero_premium_plan_count": 78, "plans_missing_premium": 0, "moop_in_network_min": 500.0, "moop_in_network_max": 9250.0, "overall_star_rating_min": 4.5, "overall_star_rating_max": 4.5, "overall_star_statuses": [], "max_service_area_county_count": 118, "unit": "landscape_plan_segment_rows" }, "plans": [ { "report_year": 2026, "category": "MA", "contract_id": "H1036", "plan_id": "025", "segment_id": "000", "org_name": "Humana", "parent_org_name": "Humana Inc.", "plan_name": "Humana Gold Plus H1036-025 (HMO)", "plan_type": "HMO", "snp_type": null, "part_d_coverage_indicator": "Yes", "premium_as_filed": "$0.00", "consolidated_premium": 0.0, "part_c_premium": 0.0, "part_d_premium": 0.0, "moop_in_network": 2000.0, "overall_star_rating": 4.5, "overall_star_status": null, "service_area_county_count": 4, "service_area_state_count": 1, "total_premium": 0.0, "total_premium_basis": "consolidated", "segment_count": 1 }, { "report_year": 2026, "category": "MA", "contract_id": "H1036", "plan_id": "044", "segment_id": "000", "org_name": "Humana", "parent_org_name": "Humana Inc.", "plan_name": "Humana Gold Plus H1036-044 (HMO)", "plan_type": "HMO", "snp_type": null, "part_d_coverage_indicator": "Yes", "premium_as_filed": "$0.00", "consolidated_premium": 0.0, "part_c_premium": 0.0, "part_d_premium": 0.0, "moop_in_network": 2700.0, "overall_star_rating": 4.5, "overall_star_status": null, "service_area_county_count": 2, "service_area_state_count": 1, "total_premium": 0.0, "total_premium_basis": "consolidated", "segment_count": 1 }, { "report_year": 2026, "category": "MA", "contract_id": "H1036", "plan_id": "054", "segment_id": "000", "org_name": "Humana", "parent_org_name": "Humana Inc.", "plan_name": "Humana Gold Plus H1036-054C (HMO)", "plan_type": "HMO", "snp_type": null, "part_d_coverage_indicator": "Yes", "premium_as_filed": "$0.00", "consolidated_premium": 0.0, "part_c_premium": 0.0, "part_d_premium": 0.0, "moop_in_network": 500.0, "overall_star_rating": 4.5, "overall_star_status": null, "service_area_county_count": 1, "service_area_state_count": 1, "total_premium": 0.0, "total_premium_basis": "consolidated", "segment_count": 1 }, { "report_year": 2026, "category": "MA", "contract_id": "H1036", "plan_id": "062", "segment_id": "000", "org_name": "Humana", "parent_org_name": "Humana Inc.", "plan_name": "Humana Gold Plus H1036-062C (HMO)", "plan_type": "HMO", "snp_type": null, "part_d_coverage_indicator": "Yes", "premium_as_filed": "$0.00", "consolidated_premium": 0.0, "part_c_premium": 0.0, "part_d_premium": 0.0, "moop_in_network": 1625.0, "overall_star_rating": 4.5, "overall_star_status": null, "service_area_county_count": 1, "service_area_state_count": 1, "total_premium": 0.0, "total_premium_basis": "consolidated", "segment_count": 1 }, { "report_year": 2026, "category": "MA", "contract_id": "H1036", "plan_id": "065", "segment_id": "000", "org_name": "Humana", "parent_org_name": "Humana Inc.", "plan_name": "Humana Gold Plus H1036-065C (HMO)", "plan_type": "HMO", "snp_type": null, "part_d_coverage_indicator": "Yes", "premium_as_filed": "$0.00", "consolidated_premium": 0.0, "part_c_premium": 0.0, "part_d_premium": 0.0, "moop_in_network": 1000.0, "overall_star_rating": 4.5, "overall_star_status": null, "service_area_county_count": 1, "service_area_state_count": 1, "total_premium": 0.0, "total_premium_basis": "consolidated", "segment_count": 1 } ], "row_counts": { "plans": { "matched": 88, "returned": 5, "truncated": true, "limit": 5, "kept": "head" } }, "query": { "contract_id": "H1036", "plan_id": null, "segment_id": null, "year": 2026, "limit": 5 }, "query_id": "17f12f65-4469-41b8-ae46-fdb1d77f6311" }, "unit": "landscape_detail", "result_status": "answered_with_caveats", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_landscape" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [ { "caveat_type": "methodology_note", "severity": "info", "message": "The Landscape is the consumer view (categories MA, PDP, SNP, MMP and Cost). Premium, MOOP and star are the values the plan filed, not adjudicated experience; the benefit tool carries the cost-share detail. The total premium is the monthly premium on the basis named beside it: the consolidated figure CMS filed, the Part C premium alone where the plan has no drug coverage, or the Part D premium alone for a drug plan. The premium as filed is CMS's own text, where the token '$-' is a $0 premium. The county count is the distinct counties in the Landscape file for that pla ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_landscape` with the inputs as the JSON body. MCP: the tool by name. # get_landscape_benefit_change Get Landscape Benefit Change · v1.4.0 · medicare What the plan design looked like for the SAME Medicare Advantage members in year Y and in year Y+1, member-weighted from the CMS Landscape files: total, Part C and Part D premiums and the $0 shares, the premium after full Extra Help, in-network MOOP and the share at or under $5,000, the Part D deductible and its $0 and standard shares, the tier-skips-deductible share, MA-PD and enhanced shares, the D-SNP $0 cost sharing, FIDE and HIDE shares, and the overall star. Both sides of a change are the SAME members: y = the Y design of the members whose plan continues in their county (same_store, Day-One) or is routed through the CMS crosswalk where that crosswalk is held (routed: continues + moved); y1 = those members' Y+1 design; change = y1 minus y. all_members_y = the Y design on every September-Y member (members_y), context only, never one side of a change. The members whose plan departs and is not yet crosswalked are in all_members_y and members_y but NOT in y, y1 or members_y1, and the row says how many. ARGUMENTS: transition_year (Y, default the newest held), group_by (national | product_type | parent | state | parent_by_product | state_by_product | county; county needs state and returns one row per county of that state, each on its own members), product_type / state / parent (filters), county (filter, the county name as CMS spells it, e.g. 'Maricopa'; with product_type it cuts one county by product), metrics ('key' = the twelve headline metrics, 'all' = every metric, or a comma-separated list of metric names), weight (same_store | routed; any other value is refused by name, and routed is refused where the crosswalk is not held), include_cost_mmp (default false), limit (default 50, max 500, largest members first). RETURNS value.rows (one per group: members_y (every September-Y member), members_y1 (the same members on both sides of the change) and, per metric, {y, y1, change, all_members_y, unit}), value.summary (the national row for the same scope, the editions, the weight used) and value.metrics (the metric labels and units). Dollars are the filed monthly premium / annual MOOP or deductible in nominal dollars; pct metrics are shares of members in the metric's own domain (Part D metrics over MA-PD members, D-SNP metrics over D-SNP members). RULES THE TOOL ENFORCES: member base H/R contracts, plans 001-799, matched to the Y file by plan and county; PDP never; industry excludes Cost and MMP unless asked; D-SNP is its own product type; a change is over the same members, never a mix of two populations. Suppressed cells count as zero, so every weight is a floor. SOURCE: Vlada analysis of the CMS MA/Part D Landscape files, CMS monthly enrollment by plan and county, and the CMS plan crosswalk where held. **Inputs.** - `transition_year`: - `group_by`: - `product_type`: - `state`: - `parent`: - `county`: - `metrics`: - `weight`: - `include_cost_mmp`: - `limit`: **A real answer** (customer seat, 4.73 s, args `{"transition_year":2026,"group_by":"county","state":"AZ","county":"Maricopa","metrics":"moop,moop5k,prem,prem0","limit":10}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "state": null, "county": null, "members_y": 371205, "members_y1": 346215, "moop": { "y": 4466.8, "y1": 4996.28, "change": 529.48, "all_members_y": 4463.74, "unit": "usd" }, "moop5k": { "y": 70.86, "y1": 66.11, "change": -4.75, "all_members_y": 71.39, "unit": "pct_of_members" }, "prem": { "y": 3.53, "y1": 2.16, "change": -1.37, "all_members_y": 3.49, "unit": "usd" }, "prem0": { "y": 78.46, "y1": 91.32, "change": 12.86, "all_members_y": 78.74, "unit": "pct_of_members" }, "transition_year": 2026, "next_year": 2027, "crosswalk_held": true, "weight": "same_store", "enrollment_month": "2026-09", "l0_edition": "fact_ma_landscape (served)", "l1_edition": "fact_ma_landscape (served)", "group_by": "county", "groups": 1, "unit": "member_weighted_design" }, "rows": [ { "state": "AZ", "county": "MARICOPA", "members_y": 371205, "members_y1": 346215, "moop": { "y": 4466.8, "y1": 4996.28, "change": 529.48, "all_members_y": 4463.74, "unit": "usd" }, "moop5k": { "y": 70.86, "y1": 66.11, "change": -4.75, "all_members_y": 71.39, "unit": "pct_of_members" }, "prem": { "y": 3.53, "y1": 2.16, "change": -1.37, "all_members_y": 3.49, "unit": "usd" }, "prem0": { "y": 78.46, "y1": 91.32, "change": 12.86, "all_members_y": 78.74, "unit": "pct_of_members" } } ], "row_counts": { "rows": { "matched": 1, "returned": 1, "truncated": false, "limit": 10, "kept": "head" } }, "query": { "transition_year": 2026, "group_by": "county", "product_type": null, "state": "AZ", "county": "Maricopa", "parent": null, "metrics": [ "moop", "moop5k", "prem", "prem0" ], "weight": "same_store", "include_cost_mmp": false, "limit": 10 }, "query_id": "4c1e9756-7295-4ed8-989d-9819a426bbc2", "metrics": [ { "name": "moop", "label": "in-network MOOP", "kind": "avg" }, { "name": "moop5k", "label": "% MOOP <= $5,000", "kind": "pct" }, { "name": "prem", "label": "total premium (C+D)", "kind": "avg" }, { "name": "prem0", "label": "% $0 total premium", "kind": "pct" } ] }, "unit": "member_weighted_design", "result_status": "answered", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_landscape_benefit_change" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "d92b348bfdc2e4acb8e52e7e3c5ea014c420f4d122b54977ee9f184f31559679", "semantic_version": 1, "tool_version": "1.4.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "4fdc5d78-662c-4be6-a49c-311dfd7561a8", "timestamp": "2026-11-09T21:36:43.446067Z", "request_id": "aa18f141-c181-46f3-9ad4-8ef866337a6f", "audience": "customer", "answer": { "value_ref": "value", "unit": "member_weighted_design", "scope": { "tool": "get_landscape_benefit_change", "filters": { "transition_year": 2026, "group_by": "county", "state": "AZ", "county": "Maricopa", "metrics": "moop,moop5k,prem,prem0", "limit": 10 } } }, "method": "Read from the CMS publication at the county level. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "4c1e9756-7295-4ed8-989d-9819a426bbc2", "response_hash": "d92b348bfdc2e4acb8e52e7e3c5ea014c420f4d122b54977ee9f184f31559679", "audit_id": "4fdc5d78-662c-4be6-a49c-311dfd7561a8", "request_id": "aa18f141-c181-46f3-9ad4-8ef866337a6f" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_landscape_benefit_change` with the inputs as the JSON body. MCP: the tool by name. # get_landscape_exits Get Landscape Exits · v1.2.1 · medicare Members of Medicare Advantage plans that do NOT continue into the next plan year, from the Landscape disposition: every September member of year Y placed against the Y+1 Landscape file. A member CONTINUES when the same plan is sold in their county next year; otherwise they are DEPARTING, split into the five Day-One buckets the two Landscape files can see (D1 a same-named plan in the county, D2 the plan still sold elsewhere, D3 the contract still in the county, D4 the parent still in the county, D5 the parent gone). When the CMS crosswalk for Y+1 is held, each row also carries the TRUE outcome (moved, split, stranded by a service-area reduction, terminated); when it is not yet held (the newest transition) the answer carries the calibrated estimate range of members who lose their plan, from the buckets' measured rates in the held years. ARGUMENTS: transition_year (Y, the September enrollment year; default the newest held, 2026 = the 2026 to 2027 transition), group_by (national | product_type | parent | state | parent_by_product | state_by_product | county; default national; county needs state and returns one row per county of that state, each with its own members base), product_type (filter, e.g. 'non-SNP HMO', 'D-SNP HMO'), state (two-letter filter; required when group_by is county), county (filter, the county name as CMS spells it, e.g. 'Cook' or 'Maricopa'; with group_by county it returns that one county), parent (filter, the CMS parent organization as reported), include_cost_mmp (default false: industry = every product type but Cost and MMP), limit (rows, default 50, max 500, largest members first). RETURNS value.rows (one per group: base_members = THE MARKET, the number to quote as 'members in the market', the base pct_departing is over; continuing, departing, pct_departing, the five buckets, and either the true_* outcomes or est_lost_low / est_lost_high; then members_september = base_members PLUS the members whose plan-county is not in the Y Landscape list or is outside the Landscape, a reconciliation figure, never the market), value.summary (the totals for the same scope, the editions, and the calibration rates used). For 'your county, 2027': group_by county, state and county, then product_type to cut it by product. RULES THE TOOL ENFORCES: the member base is H/R contracts, plans 001-799, September Y, matched to the Y Landscape by plan AND county (members whose plan-county is not listed are counted separately, never silently); stand-alone Part D (PDP) is never in it; D-SNP is its own product type and is never pooled; parent is CMS's reported parent organization at September Y, not a canonical chain across renames. Suppressed enrollment cells (under 11) count as zero, so every figure is a floor. SOURCE: Vlada analysis of the CMS MA/Part D Landscape files, CMS monthly enrollment by plan and county, and the CMS plan crosswalk where held. **Inputs.** - `transition_year`: - `group_by`: - `product_type`: - `state`: - `parent`: - `county`: - `include_cost_mmp`: - `limit`: **A real answer** (customer seat, 4.73 s, args `{"transition_year":2026,"group_by":"county","state":"IL","county":"Cook","limit":10}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "base_members": 327012, "continuing": 309013, "departing": 17999, "pct_departing": 5.5, "members_september": 327148, "not_in_y_county_list": 37, "outside_landscape": 99, "D1_same_name_here": 4732, "D2_plan_sold_elsewhere_SAR": 0, "D3_contract_here": 6408, "D4_parent_here": 6859, "D5_parent_gone": 0, "true_moved": 5725, "true_split": 0, "true_stranded_sar": 0, "true_terminated": 12274, "true_lost_plan": 12274, "true_pct_lost_plan": 3.75, "lost_plan_outside_base": 0, "cells": 452, "transition_year": 2026, "next_year": 2027, "crosswalk_held": true, "enrollment_month": "2026-09", "l0_edition": "fact_ma_landscape (served)", "l1_edition": "fact_ma_landscape (served)", "group_by": "county", "groups": 1, "unit": "members", "calibration": null, "calibration_years": null }, "rows": [ { "state": "IL", "county": "COOK", "base_members": 327012, "continuing": 309013, "departing": 17999, "pct_departing": 5.5, "members_september": 327148, "not_in_y_county_list": 37, "outside_landscape": 99, "D1_same_name_here": 4732, "D2_plan_sold_elsewhere_SAR": 0, "D3_contract_here": 6408, "D4_parent_here": 6859, "D5_parent_gone": 0, "true_moved": 5725, "true_split": 0, "true_stranded_sar": 0, "true_terminated": 12274, "true_lost_plan": 12274, "true_pct_lost_plan": 3.75, "lost_plan_outside_base": 0, "cells": 452 } ], "row_counts": { "rows": { "matched": 1, "returned": 1, "truncated": false, "limit": 10, "kept": "head" } }, "query": { "transition_year": 2026, "group_by": "county", "product_type": null, "state": "IL", "county": "Cook", "parent": null, "include_cost_mmp": false, "limit": 10 }, "query_id": "07789505-5c74-49e0-b234-61e310c2e2bd" }, "unit": "members", "result_status": "answered", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_landscape_exits" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "b2693fc8a6b30fd58acd86fb66657bd418a07b2d6572e767e40e31e2b47c83c8", "semantic_version": 1, "tool_version": "1.2.1", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "6619463e-52db-4b22-84a7-8fa3e08cb11c", "timestamp": "2026-11-09T21:33:57.007254Z", "request_id": "bd6b2c45-d6bf-41e8-91fe-99f765526eb4", "audience": "customer", "answer": { "value_ref": "value", "unit": "members", "scope": { "tool": "get_landscape_exits", "filters": { "transition_year": 2026, "group_by": "county", "state": "IL", "county": "Cook", "limit": 10 } } }, "method": "Read from the CMS publication at the county level. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "07789505-5c74-49e0-b234-61e310c2e2bd", "response_hash": "b2693fc8a6b30fd58acd86fb66657bd418a07b2d6572e767e40e31e2b47c83c8", "audit_id": "6619463e-52db-4b22-84a7-8fa3e08cb11c", "request_id": "bd6b2c45-d6bf-41e8-91fe-99f765526eb4" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_landscape_exits` with the inputs as the JSON body. MCP: the tool by name. # get_market_share Get Market Share · v0.3.1 · medicare Returns a Medicare Advantage plan's or contract's county-level enrollment and its SHARE of the local MA market: for each county, the plan's enrollees, the county's total MA enrolled and Medicare-eligible population, the MA penetration rate, the plan's share of county MA enrollment, and the year-over-year change in the plan's county enrollment. Filter by contract_id (required) + optional plan_id (plan vs contract total), optional state (2-letter, e.g. 'FL'), and optional month ('2024-03'); defaults to the latest available month. RETURNS an actual SHARE with the arithmetic disclosed, not a raw headcount: value.summary.share_pct is the footprint share, and it always ships alongside its numerator (share_numerator_plan_enrollees) and its denominator (share_denominator_county_ma_enrolled), so nobody has to trust a bare percentage. The denominator is the total MA enrollment of the counties this plan actually operates in for the month in scope, NOT the national MA market. value.counties is the per-county row list (plan enrollees, county MA enrolled, county eligibles, penetration, share_pct, yoy_change), largest first; value.row_counts carries matched / returned / truncated and value.query the resolved month. `limit` bounds the county list (default 200, max 2000). This is the geography + competition lens; pair with get_enrollment for the plan/contract totals. Suppressed county cells (CMS redacts under 11) come back with null enrollees and null share, never zero, and the summary carries a [low, high] bound on the numerator that brackets them. A contract id with no county rows returns found=false with a not_found_reason. SOURCE: CMS Monthly Enrollment by CPSC + MA State/County Penetration. **Inputs.** - `contract_id` (required): - `plan_id`: - `state`: - `month`: - `limit`: **Known limits.** - County cells under 11 enrollees are CMS-redacted (null enrollees, null share). - Share = plan county enrollees / total MA enrolled in county (penetration file). **A real answer** (customer seat, 6.33 s, args `{"contract_id":"H1036","limit":5}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H1036", "plan_id": null, "grain": "contract", "state": null, "month": "2026-10-01", "share_pct": 3.24, "share_definition": "plan enrollees in the counties in scope / total MA enrollment of those same counties, for the month in scope", "share_numerator_plan_enrollees": 856969, "share_numerator_basis": "bound_floor_published_plus_1_per_suppressed_county", "share_numerator_published_cells": 856312, "share_denominator_county_ma_enrolled": 26489733, "share_numerator_bound": [ 856969, 862882 ], "share_pct_bound": [ 3.24, 3.26 ], "counties_medicare_eligibles": 50029743, "footprint_ma_penetration_pct": 52.95, "county_count": 1006, "suppressed_county_count": 657, "best_county_share_pct": 40.82, "median_county_share_pct": 6.13, "largest_county": { "state": "FL", "county": "Broward", "plan_enrollees": 88173, "share_pct": 35.59 }, "unit": "percent_of_county_ma_enrollment" }, "counties": [ { "state": "FL", "county": "Broward", "plan_enrollees": 88173, "county_ma_enrolled": 247731, "county_eligibles": 383369, "penetration": 0.6462, "share_pct": 35.59, "yoy_change": 11388, "county_ma_is_group_figure": false }, { "state": "FL", "county": "Miami-Dade", "plan_enrollees": 65998, "county_ma_enrolled": 397170, "county_eligibles": 528794, "penetration": 0.7511, "share_pct": 16.62, "yoy_change": 10681, "county_ma_is_group_figure": false }, { "state": "FL", "county": "Palm Beach", "plan_enrollees": 52582, "county_ma_enrolled": 179484, "county_eligibles": 371693, "penetration": 0.4829, "share_pct": 29.3, "yoy_change": 2638, "county_ma_is_group_figure": false }, { "state": "FL", "county": "Hillsborough", "plan_enrollees": 40211, "county_ma_enrolled": 172547, "county_eligibles": 274972, "penetration": 0.6275, "share_pct": 23.3, "yoy_change": 4387, "county_ma_is_group_figure": false }, { "state": "FL", "county": "Pinellas", "plan_enrollees": 35353, "county_ma_enrolled": 160487, "county_eligibles": 265560, "penetration": 0.6043, "share_pct": 22.03, "yoy_change": 2021, "county_ma_is_group_figure": false } ], "row_counts": { "counties": { "matched": 1006, "returned": 5, "truncated": true, "limit": 5, "kept": "head" } }, "query": { "contract_id": "H1036", "plan_id": null, "grain": "contract", "state": null, "month": "2026-10-01", "limit": 5 }, "query_id": "6cbad2cb-aa86-4233-9a31-ad924caed7eb" }, "unit": "market_share_detail", "result_status": "answered", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_market_share" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "65641d3dce1dec285d899b1bdea42f34a48a1d42c9e6184e25ee05a9142e60ad", "semantic_version": 1, "tool_version": "0.3.1", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "20c32f7c-c513-4d31-9421-20fda03154e8", "timestamp": "2026-11-09T21:36:54.622950Z", "request_id": "e9c3ca90-15fe-45d5-b90e-62ec96cdbf40", "audience": "customer", "answer": { "value_ref": "value", "unit": "market_share_detail", "scope": { "tool": "get_market_share", "filters": { "contract_id": "H1036", "limit": 5 } } }, "method": "Read from the CMS publication at the contract level. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "6cbad2cb-aa86-4233-9a31-ad924caed7eb", "response_hash": "65641d3dce1dec285d899b1bdea42f34a48a1d42c9e6184e25ee05a9142e60ad", "audit_id": "20c32f7c-c513-4d31-9421-20fda03154e8", "request_id": "e9c3ca90-15fe-45d5-b90e-62ec96cdbf40" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_market_share` with the inputs as the JSON body. MCP: the tool by name. # get_medicaid_mco_enrollment Get Medicaid Mco Enrollment · v0.5.0 · medicare Returns Medicaid managed-care enrollment for ONE state. HEADLINE (value.summary.tracker, value.tracker_parents, value.tracker_months): the Medicaid MCO enrollment tracker v2, the state's own monthly figure by parent for its latest 13 months, every figure graded observed (a published count), estimated (ours, with an interval) or modeled (indicative only, never in a total) and summed apart; summary.tracker.headline is the latest month that carries a value, with its basis, methods and interval, and summary.tracker.last_observed the latest observed month. parent_basis (optional): 'current' (default) rolls every month up to each plan's parent as bound today; 'dated' rolls each month up to the parent that owned the plan in that month; never mix the two in one series. Behind it: the annual CMS 'Enrollment by Program and Plan' roster (each managed-care program x plan with SEPARATE Medicaid-only, dual and total member counts and a value_status per count, plus parent organization) for the requested or latest calendar year (2016-2024); the state's TOTAL Medicaid and CHIP enrollment from the CMS monthly state report for the latest 12 reporting months (context: all delivery systems, managed care and fee-for-service, CHIP separate); and, for the four T-MSIS dashboard pilot states (AZ, MI, NV, NM), the MCO roster with county footprint and service categories; and the state's OWN monthly plan-level publication for its latest month (45 jurisdictions). Inputs: state (required, 2-letter USPS code); optional year (plan-roster calendar year, defaults to the latest the state has); optional limit; optional offset (skips that many rows of value.plans and value.monthly_plans in their served order; summary.paging.next_page is the exact next call). RETURNS a detail payload: value.summary (state, plan_year, plan_count, program_count, the SOURCE-PUBLISHED sum of plan total_enrollment where reported_numeric for the comprehensive_medical benefit scope ONLY, plus per-benefit-scope sums that must never be added together, with the count of rows that are suppressed / not reported, the latest monthly total Medicaid+CHIP / Medicaid / CHIP enrollment with its reporting_period, and a `blocks` map saying which sources have rows for this state); value.plans (one row per program x plan x region, ordered comprehensive medical first and largest first BEFORE the row cap, summary.plans_page saying how many rows and of which scope are not on the page: benefit_scope (comprehensive_medical, behavioral_health, dental, pharmacy, ltss, pace, nemt, pccm, limited_benefit, unknown) with the rule that set it, medicaid_only / dual / total each with value + value_status, parent_organization = the parent in force through Vlada's effective-dated plan identity decisions (null when no decision covers the filed name), parent_label_as_filed = the parent column as the state filed it (in Florida the plan's own label), calendar_year, source_table); value.monthly (reporting_period, total_medicaid_and_chip_enrollment, total_medicaid_enrollment, total_chip_enrollment, adult / child enrollment, revision + final flags, source_table); value.mco_roster (mco_name, plan_category, county_count, service_categories, source_table; NO enrollment number); value.monthly_plans (the state-published plan rows for the latest monthly observation_period, statewide where the state publishes statewide rows, otherwise sub-state as published, each with reported_value, value_unit, value_status, row_role and source_url; never summed into a state total; per program, statewide rows where the program publishes them, otherwise sub-state rows; each row carries parent_share_segment when it lies inside the parent-share view's basis, and summary.parent_share_reconciliation names that basis and routes to it). The ledger stores 17 states' publisher totals as plan detail: rows whose plan label reads as a total, whose label is fee-for-service (fee_for_service_not_a_plan), whose label is an eligibility, population or unassigned count (population_count_not_a_plan), whose plan label is a bare number, whose program label is a total, or whose value equals a suspected total in the same cell are served with row_role publisher_total_suspected / fee_for_service_not_a_plan / population_count_not_a_plan / plan_label_numeric_suspected / overlapping_summary_suspected / equals_publisher_total_suspected, the stored role kept in row_role_as_published, ordered after plan detail, never dropped; summary.monthly_plans_not_plans lists the page's non-plan rows in their own block; summary.monthly_plans_guard carries the rule and the counts over the whole month. Each monthly_plans row carries cell_check (source_total, sum_of_plans, plan_rows, difference, status): within one cell (one table, measure, program, breakdown and geography) the plan rows are summed, never the re-labelled rows, and set beside the publisher's own total, so a reader sees whether the plans add up; plan rows are never added across cells. A fractional value under value_unit 'members' is an average and the row says so (value_unit_note); a published 0 may be a masked small cell (WA prints 0 for 1 to 10). Every number carries its as-of period and exact source table. Nothing is recomputed or reconciled across sources: Medicaid-only + dual is not re-summed, a published 0 is reported_zero_or_suppressed (never exact zero), and the annual plan roster is a different population and grain from the monthly state total. All sources are read WHERE is_current = true (monthly: is_latest_revision = true). An unknown state returns found=false. SOURCE: state Medicaid agencies' published plan enrollment through the Medicaid MCO enrollment tracker v2 (medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_state_month); CMS/Data.Medicaid.gov Medicaid Managed Care Enrollment by Program and Plan (state-reported, annual); CMS Medicaid & CHIP Application, Eligibility and Enrollment monthly state report; CMS Medicaid MCO Dashboard (T-MSIS, four pilot states); state Medicaid agencies' monthly managed-care enrollment reports (medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v6). **Inputs.** - `state` (required): - `year`: - `limit`: - `offset`: - `parent_basis`: **Known limits.** - Tracker v2 headline: the latest month most states have printed lags the calendar; newer months are estimated (interval) or modeled (indicative, never in a total). Parents are today's binding, not the parent as of the month. - Plan roster is annual (2016-2024) and state-reported; plan labels and the filed parent column (parent_label_as_filed) are publisher text, not stable payer identities; parent_organization is read through the reviewed plan identity decisions and is null where none covers the filed name. - Published 0 may be exact zero or CMS confidentiality suppression under ten (reported_zero_or_suppressed) — never asserted as exact zero. - Monthly series = TOTAL Medicaid and CHIP enrollment (all delivery systems), not managed-care enrollment; CHIP is a separate column and is not inside the plan-level counts. - fact_medicaid_managed_care covers four pilot states (AZ, MI, NV, NM) and carries utilization, not enrollment; returned as a roster only. **A real answer** (customer seat, 4.39 s, args `{"state":"TX","year":2024,"limit":5}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "state": "TX", "state_name": "Texas", "tracker": { "status": "available", "measure_class": "members", "measure_classes_held": [ "members", "members_hhsc_prelim_plan_total" ], "headline": { "observation_month": "2026-11", "basis": "estimated", "members_total": 3585306.7, "members_observed": null, "members_estimated": 3585306.7, "estimated_interval_summed": [ 3239052.03, 5174349.43 ], "members_modeled_indicative": null, "state_total_members": 3915559.0, "state_total_basis": "cms_carried", "methods": { "M-e": 48 } }, "headline_rule": "the latest month that carries a value, with its basis: observed (a published count), estimated (method and interval) or observed_and_estimated; members_total = observed + estimated, modeled never in it; modeled_only (indicative, no total) only when no month has a total", "last_observed": { "observation_month": "2026-02", "basis": "observed", "members_total": 3679446.0, "members_observed": 3679446.0, "members_estimated": null, "estimated_interval_summed": [ null, null ], "members_modeled_indicative": null, "state_total_members": 4033526.8286634316, "state_total_basis": "state_reported_hhsc_preliminary" }, "months_from_last_observed_to_headline": 9, "methods_legend": { "M-a": "M-a carry-forward of the last observed value", "M-b": "M-b plan share x the state total", "M-e": "M-e the tracker's nowcast model", "PUB-PRELIM": "PUB-PRELIM the publisher's own preliminary estimate" }, "parents_month": "2026-11", "parent_count": 15, "parent_basis": "current", "parent_binding": "current: each plan's parent as bound today, not as of the month (today's companies' history)", "parent_basis_note": "parent_basis='dated' answers who owned each plan in the month; parent_basis='current' (the default) answers today's companies' history. Never mix the two in one series.", "months_held": 13, "build_id": "68af685e675fe657", "months_after_headline": null }, "plan_year": 2024, "plan_years_available": [ 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 ], "plan_count": 36, "program_count": 6, "programs": [ "Children's Medicaid Dental Services (Dental only (PAHP))", "PACE (PACE)", "STAR (Comprehensive MCO)", "STAR HEALTH (Comprehensive MCO + MLTSS)", "STAR Kids (Comprehensive MCO + MLTSS)", "STAR+PLUS (Comprehensive MCO + MLTSS)" ], "parent_organization_count": 0, "parent_organization_count_basis": "distinct parents in force through the plan identity decisions (exact filed plan name, July 1 of the plan year); rows without a decision are not counted as parents", "parent_labels_as_filed_count": 24, "plan_rows_parent_unresolved": 36, "plan_rows_parent_unresolved_by_benefit_scope": { "comprehensive_medical": 30, "pace": 3, "dental": 3 }, "comprehensive_medical_rows_parent_unresolved": 30, "parent_identity_read": "not_available", "plans_order": "benefit_scope (comprehensive_medical, ltss, behavioral_health, pccm, unknown, pace, limited_benefit, dental, pharmacy, nemt), then total_enrollment descending (reported_numeric first), then program, plan and source row", "plans_page": { "offset": 0, "returned": 5, "matched": 36, "cut": 31, "cut_by_benefit_scope": { "comprehensive_medical": 25, "pace": 3, "dental": 3 }, "comprehensive_medical_rows": 30, "comprehensive_medical_on_this_page": 5 }, "paging": { "offset": 0, "limit": 5, "applies_to": [ "plans", "monthly_plans" ], "rule": "offset skips that many rows of each of the two plan lists in their served order (the order is total, so pages never overlap); monthly and mco_roster are short and always returned whole up to limit", "next_page": { "tool": "get_medicaid_mco_enrollment", "arguments": { "state": "TX", "year": 2024, "limit": 5, "offset": 5 } } }, "plan_total_enrollment_sum_reported_numeric": 3842754, "plan_total_enrollment_sum_scope": "comprehensive_medical", "plan_total_enrollment_sum_basis": "sum of 30 comprehensive_medical plan rows whose total_enrollment is reported_numeric; excludes none within that scope; rows of other benefit scopes are NOT in this sum ({'dental': 3, 'pace': 3}) because they count the same members again (e.g. a state's dental or pharmacy benefit manager); source-published totals, not recomputed from medicaid-only + dual", "plan_rows_outside_headline_scope": { "dental": 3, "pace": 3 }, "plan_total_enrollment_sum_by_benefit_scope": { "comprehensive_medical": { "total_enrollment_sum_reported_numeric": 3842754, "rows": 30, "rows_summed": 30 }, "dental": { "total_enrollment_sum_reported_numeric": 2904560, "rows": 3, "rows_summed": 3 }, "pace": { "total_enrollment_sum_reported_numeric": 1136, "rows": 3, "rows_summed": 3 } }, "plan_benefit_scope_note": "Sums are per benefit_scope and must not be added across scopes: one member can be counted by a medical MCO, a dental plan, a pharmacy benefit manager and a behavioral-health plan at once.", "plans_not_found_reason": null, "period_format": "every month is YYYY-MM; observation_date keeps the publisher's own as-of day for the state-published rows", "monthly_latest_reporting_period": "2026-07", "monthly_total_medicaid_and_chip_enrollment": 3891857, "monthly_total_medicaid_enrollment": 3569046, "monthly_total_chip_enrollment": 322811, "monthly_months_returned": 12, "mco_roster_count": 0, "monthly_plans_observation_period": "2026-08", "monthly_plans_observation_date": "2026 ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_medicaid_mco_enrollment` with the inputs as the JSON body. MCP: the tool by name. # get_network_breadth Get Network Breadth · v0.2.0 · medicare How broad a Medicare Advantage plan's published provider network is, county by county, against the other plans sold there: for a contract or CMS plan id and plan year (2026 or 2027), each county in its service area with the providers it lists there, the county's listed universe (every MA plan's published directory in that county), breadth (the share), its rank among the county's individual plans, and the rivals' median and best. Narrow to one specialty in CMS's network-adequacy vocabulary (Primary Care, Cardiology, Psychiatry, ...), a state, or one county; with a county, the rival plans are returned ranked. Use cases: 'Is H5938's network narrower than its rivals in Leon County?'; 'Where does this PPO rank on cardiologists in Florida?'; 'Which plan in Cook County lists the most psychiatrists for 2027?'. Breadth is a share of what MA plans list, not of every practising clinician. Every row carries the share of the plan's providers found by name match and the share carried from the other year's list, so a printed-PDF plan is not silently compared with an API plan. Specialty comes from NPPES's taxonomy, not the directory's label. The publish is pinned by dataset_id. SOURCE: medicare_silver.ma_network_plan_county_v1, built from the Data Tracker's directory table (medicare_bronze.ma_directory_plan_npi_site_v1), NPPES, and the CMS plan service area. **Inputs.** - `contract_id`: CMS contract id (H5938). One of contract_id / cms_plan_id. - `cms_plan_id`: CMS plan id H1234-001 or H1234-001-000. - `plan_year` (required): 2026 or 2027 (the directory year). - `limit`: Rows to return (default 50, max 500); summaries are always whole. - `county_fips`: 5-digit county FIPS (12073); with it, the rival plans in that county are returned. - `state`: 2-letter state; narrows to the plan's counties in that state. - `specialty`: Normalized specialty (CMS MA network-adequacy type, e.g. 'Cardiology', 'Primary Care'); omit for every provider. **Known limits.** - Coverage follows the directory build (stage 25: 99.17% of 2026 MA members, 96.42% of 2027 members from 2027 sources); an uncovered contract answers no_coverage, and a plan with listings only outside its CMS service area has no breadth rows. - Name-matched lists under-count: names that resolve to no single NPI are dropped, so a printed-PDF plan can read narrower than it is (matched_share says how much of the list is name-matched). - About 2.5% of listings have a ZIP with no county and sit outside every county count. - Contract-level directories (one network for every plan in the contract) are applied to each plan sold in the county (contract_level_share). **A real answer** (customer seat, 1.75 s, args `{"contract_id":"H5938","plan_year":2027,"county_fips":"12073","limit":5}`): ```json { "value": { "found": false, "not_found_reason": "no_row_matches_filters", "query": { "contract_id": "H5938", "plan_year": 2027, "county_fips": "12073", "specialty": "*", "limit": 5 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "rows": [], "query_ids": [ "17379d90-8526-401e-993f-bb9fad731bc9" ] }, "unit": "network_breadth", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [ "Absence is a claim only for a covered contract, and only 'not listed in the published directory'; a contract with no rows is UNCOVERED (the open-gap list), never 'no network'." ], "response_hash": "03b829582391960f745551c9a41e61423768a62060c912209ae78a56538d7f09", "semantic_version": 1, "tool_version": "get_network_breadth@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "network_breadth", "scope": { "tool": "get_network_breadth", "filters": { "contract_id": "H5938", "plan_year": 2027, "limit": 5, "county_fips": "12073" } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "03b829582391960f745551c9a41e61423768a62060c912209ae78a56538d7f09" }, "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_network_breadth` with the inputs as the JSON body. MCP: the tool by name. # get_network_change Get Network Change · v0.2.0 · medicare Who joined and who left a Medicare Advantage plan's published network between two directory years (2026 to 2027): the NPIs that stayed, joined and left, with rates, on published units only. The method: members are NPIs the payer printed, served by API or exported to Plan Finder, or name-matched at grade A/B; 2027 rows carried back from a 2026 directory are excluded; only ZIP3 areas the unit lists in both years count, so a service-area change does not read as an exit. By contract or by the publisher's own plan id. Use cases: 'Did H5938 lose providers for 2027?'; 'How much of Wellcare H1416's Texas network turned over?'. A directory signal is never evidence of a contract ending on its own (the method's public-confirmation rule); the health-system rollup and the exit signal are not served here. Both years must be covered or the answer is NO_COVERAGE. SOURCE: medicare_bronze.ma_directory_plan_npi_site_v1 (the Data Tracker's directory build). **Inputs.** - `contract_id`: CMS contract id (H5938). One of contract_id / cms_plan_id. - `cms_plan_id`: CMS plan id (H1234-001-000): the publisher's own unit when it attached one. - `from_year`: The earlier directory year. - `to_year`: The later directory year. - `state`: 2-letter state of the listed location; optional. **Known limits.** - No health-system rollup and no exit signal here (the method's steps 4-5 need the facility affiliation and dim_facility_system tables and a public confirmation); counts are by contract or plan. - Humana's 2027 joined rate reads high in the method's own scale table and may be a printing or matching artifact; treat a large joined count as unverified. - A contract uncovered in either year answers NO_COVERAGE. **A real answer** (customer seat, 2.3 s, args `{"contract_id":"H5938"}`): ```json { "value": { "found": false, "not_found_reason": "query_failed", "query": { "contract_id": "H5938", "from_year": 2026, "to_year": 2027 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "query_ids": [] }, "unit": "plan_network", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [], "response_hash": "e0e51a201837bd11840f4f6273e1da61c88770f39bbbb120a6ab97a827bdc5f2", "semantic_version": 1, "tool_version": "get_network_change@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "plan_network", "scope": { "tool": "get_network_change", "filters": { "contract_id": "H5938", "from_year": 2026, "to_year": 2027 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify from_year; 2026 was used. You did not specify to_year; 2027 was used.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "e0e51a201837bd11840f4f6273e1da61c88770f39bbbb120a6ab97a827bdc5f2" }, "defaults_applied": [ { "param": "from_year", "used": 2026, "reason": "The earlier directory year." }, { "param": "to_year", "used": 2027, "reason": "The later directory year." } ], "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_network_change` with the inputs as the JSON body. MCP: the tool by name. # get_network_groups Get Network Groups · v0.2.0 · medicare Which physician groups and health systems a Medicare Advantage contract's published network covers, and how much of each: for a contract and plan year (2026 or 2027), every billing group its listed clinicians bill Medicare through (or every health system of the hospitals they are affiliated with), with the clinicians the contract lists, the group's own clinician count and the share; or search one group or system by name across every contract. Use cases: 'What share of Virginia Mason's doctors does Regence list?'; 'Which MA contracts list most of Optum's physicians in Texas?'; 'Which large groups does H5938 cover?'. Groups are CMS's Medicare reassignment (the group a clinician bills through); systems are CMS's hospital affiliation through the hospital system map. A clinician in several groups counts in each. A share is of the group's Medicare-enrolled clinicians, as listed in the plan's published directory. The publish is pinned by dataset_id. SOURCE: medicare_silver.ma_network_contract_group_v1 (the Data Tracker's directory table x CMS PECOS reassignment x CMS Doctors and Clinicians facility affiliation x the hospital system map). **Inputs.** - `contract_id`: CMS contract id (H3817). One of contract_id / name. - `name`: Billing group or health system name (contains match, e.g. 'Virginia Mason'); searches every contract. - `plan_year`: 2026 or 2027 (default 2027). - `level`: 'group' (default; the billing group clinicians reassign to in Medicare) or 'system' (the health system of their hospitals). - `state`: 2-letter state of the group; optional (groups only). - `min_clinicians`: Smallest group or system returned, by its own clinician count (default 10). - `limit`: Rows to return (default 50, max 500). **Known limits.** - Groups come from Medicare reassignment: a group's clinicians who do not bill Medicare are not counted. - Contract level: a contract with several networks (HMO and PPO plans) is read as one. - Coverage follows the directory build (stage 25); an uncovered contract answers no_coverage. **A real answer** (customer seat, 1.7 s, args `{"name":"Virginia Mason","min_clinicians":500,"limit":3}`): ```json { "value": { "found": false, "not_found_reason": "no_row_matches_filters", "query": { "name": "Virginia Mason", "plan_year": 2027, "level": "group", "min_clinicians": 500, "limit": 3 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "rows": [], "query_ids": [ "7add1d36-0b8a-430f-9532-c0fd2d3afeb0" ] }, "unit": "network_groups", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [], "response_hash": "865b1be73ac8247753af5fdf3842c60072ad001422d6e773075a1231685a75b5", "semantic_version": 1, "tool_version": "get_network_groups@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "network_groups", "scope": { "tool": "get_network_groups", "filters": { "name": "Virginia Mason", "plan_year": 2027, "level": "group", "min_clinicians": 500, "limit": 3 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify level; group was used. You did not specify plan_year; 2027 was used.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "865b1be73ac8247753af5fdf3842c60072ad001422d6e773075a1231685a75b5" }, "defaults_applied": [ { "param": "level", "used": "group", "reason": "'group' (default" }, { "param": "plan_year", "used": 2027, "reason": "2026 or 2027 (default 2027)." } ], "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_network_groups` with the inputs as the JSON body. MCP: the tool by name. # get_network_system_change Get Network System Change · v0.2.0 · medicare Which health systems (or specialties) Medicare Advantage networks gained and lost between 2026 and 2027, from the plans' own published directories: for a contract, every health system with the clinicians listed in each year, how many stayed, left and joined, and an exit or join signal where a system's listing collapsed while the rest of the network held; or search one health system by name across every contract. Use cases: 'Did Humana drop Ohio State for 2027?'; 'Which systems left H5216's network?'; 'Which contracts lost cardiologists for 2027?'. Like for like: only each contract's own-year lists (no stand-ins), only ZIP3 areas it lists in both years, members only. A signal is a DIRECTORY SIGNAL to verify with the system or plan, never proof a contract ended; a contract whose source changed between years carries no signal. The publish is pinned by dataset_id. SOURCE: medicare_silver.ma_network_change_v1 (the Data Tracker's directory table x CMS Doctors and Clinicians facility affiliation x the hospital system map). **Inputs.** - `contract_id`: CMS contract id (H5216). One of contract_id / system. - `system`: Health system name (contains match, e.g. 'Ohio State'); searches every contract. - `rollup`: 'system' (default; health systems) or 'specialty' (CMS network-adequacy types). - `signals_only`: Return only system rows flagged as an exit or join signal. - `limit`: Rows to return (default 50, max 500). **Known limits.** - Only contracts with an own-year list in both 2026 and 2027 are compared; the 40 contracts whose 2027 list is their 2026 directory standing in have no change rows. - A clinician affiliated with several systems counts in each; system membership is CMS's hospital affiliation (2026-05-29) through the hospital system map. - A publisher that moved from a thin API snapshot to a full one reads as a high joined rate; joined rates above 20% are flagged unverified. **A real answer** (customer seat, 1.74 s, args `{"system":"Ohio State","signals_only":true}`): ```json { "value": { "found": false, "not_found_reason": "no_row_matches_filters", "query": { "system": "Ohio State", "rollup": "system", "signals_only": true, "limit": 50 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "rows": [], "query_ids": [ "ea97bac2-35ac-4b91-b429-8702a0116670" ] }, "unit": "network_system_change", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [], "response_hash": "b0a9e1372c71a7a58b43c717b8ca93424efc0f83f0199cc2e4bb52a380e3e533", "semantic_version": 1, "tool_version": "get_network_system_change@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "network_system_change", "scope": { "tool": "get_network_system_change", "filters": { "system": "Ohio State", "rollup": "system", "signals_only": true } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify rollup; system was used.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "b0a9e1372c71a7a58b43c717b8ca93424efc0f83f0199cc2e4bb52a380e3e533" }, "defaults_applied": [ { "param": "rollup", "used": "system", "reason": "'system' (default" } ], "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_network_system_change` with the inputs as the JSON body. MCP: the tool by name. # get_pbp_benefit Get PBP Benefit · v0.5.0 · medicare Returns Plan Benefit Package (PBP) benefit detail for an MA plan for a specific category (dental, inpatient_hospital, ER, etc.). Polymorphic — pass `category` to route to the right semantic view. All categories share the standard envelope: cost_share_string, copay_amount, coinsurance_pct, limit_text, auth_required, referral_required, network_type, max_oop_applies + category-specific extension fields (e.g., dental_sub_benefit). Required: contract_id, plan_id, payment_year, category. The category must be one of the 35 live categories (listed below). The response `value` is the full benefit-detail object: `rows` (every matched benefit row, with cost sharing, limits, and category extension fields), `row_count`, the resolved `category`/`human_label`/`view_fqn`, the `audit_chain` (CMS source URL + sha256 per row), and a `summary` sub-field carrying the single-row headline cost_share_string (or the row count when multiple sub-benefit rows match) for a quick read. Plus any methodology-shift caveats (e.g., 'B16 dental restructured CY2025' when querying dental for 2025+). Cross-year queries get cross-shift caveats. When the full answer would not fit in one response, `rows` come back compact (`row_format: "compact"`): fields identical on every row sit once in `row_common`, and a field absent from a row is null. Live categories are discovered from the contract registry at load time, so this list cannot drift from what the tool serves; an unknown category is refused (INVALID_INPUT) with this same list, never a failure. The 35 live categories are: ambulance, b19_combined_package, cardiac_pulmonary_rehab, clinical_diagnostic_therapeutic, combined_supplemental, dental, dme, dsnp_cost_share, emergency_urgent, health_professionals, hearing, home_health, inpatient_hospital, inpatient_psychiatric, meals, moop, optional_package, otc, outpatient_hospital, partb_rx_drugs, partd_drugs, partd_tier, partial_hospitalization, plan_deductible, plan_premium, preventive, prior_auth_referral, renal_dialysis, section_c_pos_oon, snf, ssbci, supplemental_other, supplemental_services, transportation, vision. The premium is `plan_premium` (not 'premium'), the deductible is `plan_deductible`, the out-of-pocket maximum is `moop`. `summary.value` is the one number a reader asks for: for plan_premium the monthly premium in USD; for plan_deductible the in-network annual deductible in USD (or null with the filed reason); for moop the in-network annual MOOP in USD, which on a D-SNP is the plan design before Medicaid and Extra Help, never what a dual pays. `summary.label` says which. Limits read in words ("6 visits every year"; 999 is CMS's unlimited sentinel and reads "unlimited"); the filed code is kept in `limit_text_raw`. A contract/plan/year/category combination with NO rows is REFUSED with code NO_DATA, not answered with an empty complete: the refusal states what was searched and routes to get_landscape (the plan ids that really exist for that contract and year) and names the valid categories. One view is read, so a nonexistent plan and a plan with nothing in this category cannot be told apart here; the refusal says so. **Inputs.** - `contract_id` (required): - `plan_id` (required): - `payment_year` (required): - `category` (required): - `segment_id`: **Known limits.** - PBP-PK-PRE-2010 - PBP-QUARTERLY-PRE-2018 **A real answer** (customer seat, 0.12 s, args `{"contract_id":"H0028","plan_id":"014","segment_id":"0","payment_year":2026,"category":"health_professionals"}`): ```json { "value": { "category": "health_professionals", "human_label": "Health professional visits (PCP + Specialist)", "contract_id": "H0028", "plan_id": "014", "payment_year": 2026, "segment_id": "0", "semantic_emulator": { "emulator_id": "pbp_semantic_emulator", "policy_id": "pbp_semantic_policy", "policy_version": 1, "policy_status": "locked_for_next_category_gate", "required_output_fields": [ "offered_status", "numeric_amount_observability", "null_amount_reason", "annualization_policy", "combined_limit_policy", "consumer_document_reconciliation_status", "confidence_tier" ], "semantic_danger_audit_required_steps": [ "source_surface_audit", "offered_policy", "amount_policy", "timing_policy", "combined_limit_policy", "moop_policy", "geography_enrollment_policy", "cross_document_policy", "required_agent_fields", "caveat_policy" ], "hard_rule_ids": [ "null_numeric_not_zero", "explicit_zero_is_data", "offered_and_numeric_are_separate", "no_unsafe_rollups", "preserve_raw_timing", "bridge_moop", "source_fidelity_not_consumer_truth" ], "category_id": "health_professionals", "benefit_risk_matrix_entry": { "onboarded": true, "onboarded_scope_version": 1, "source_family": "B7 professional services including PCP, specialist, therapies, Medicare-covered podiatry, and atomic routine-podiatry supplemental cost share/frequency", "core_risks": [ "PCP and specialist visit cost share filed as MIN/MAX bands \u2014 multi-tier-network plans differ between min and max. Canonical copay_amount = mc_min.", "specialist referral_required flag varies plan-by-plan; many PPOs allow direct specialist access (referral_required=false).", "Routine podiatry is a supplemental B7F stripe with its own offered flag, cost share, and visit periodicity; it must not be merged with Medicare-covered podiatry.", "Routine-podiatry visit counts may be annualized only from known CMS periodicity codes; an unknown period stays null.", "Pre-2018 single-value copay encoding (without _min/_max suffix) is glob-out; affects historical analysis only." ], "v1_caveats": [ "Remaining B7 services and deeper variants, including chiropractic, SUD, and opioid-treatment detail, are deferred.", "In-area non-Medicare-covered (IA NUC) cost share variants on B7A deferred to v2.", "B7C medical-management (mm) auth/coins/copay variants deferred to v2." ], "required_bridges": [ "moop_service_category", "service_area", "enrollment_member_months" ] } }, "rows": [ { "contract_id": "H0028", "plan_id": "014", "segment_id": "0", "version": 3.0, "report_year": 2026.0, "quarter": 1.0, "benefit_category": "health_professionals", "cost_share_string": "$0 copay", "copay_amount": 0.0, "coinsurance_pct": null, "limit_text": null, "auth_required": null, "referral_required": null, "network_type": "in_network", "max_oop_applies": null, "limit_quantity": null, "limit_unit": null, "limit_period_code": null, "limit_period_label": null, "limit_quantity_per_year": null, "benefit_amount": null, "benefit_amount_kind": null, "benefit_amount_period_code": null, "benefit_amount_period_label": null, "benefit_amount_annualized": null, "benefit_amount_pmpm": null, "normalization_status": null, "normalization_basis": null, "aggregation_policy": null, "offered_status": "offered", "numeric_amount_observability": "all_offered_numeric", "null_amount_reason": "not_null_numeric_amount", "annualization_policy": "preserve_raw_only", "combined_limit_policy": "none_detected", "consumer_document_reconciliation_status": "not_checked", "confidence_tier": "source_faithful", "benefit_layer": "medicare_covered", "benefit_unlimited": null, "coinsurance_pct_max": null, "coinsurance_pct_min": null, "copay_amount_max": 0.0, "copay_amount_min": 0.0, "deductible_amount": null, "deductible_basis": "no_service_specific_deductible", "filed_service_name": null, "has_coinsurance": false, "has_copay": true, "has_deductible": false, "has_max_enrollee_oop": false, "health_professionals_offered": null, "health_professionals_sub_benefit": "primary_care", "label_note": "7a Medicare-covered primary care physician visit.", "limit_period_text": null, "max_enrollee_oop_amount": null, "max_enrollee_oop_period_code": null, "max_enrollee_oop_period_label": null, "max_enrollee_oop_period_text": null, "max_plan_benefit_amount": null, "max_plan_benefit_offered": null, "max_plan_benefit_period_code": null, "max_plan_benefit_period_label": null, "registry_l2_id": "7a", "routine_chiropractic_unlimited": null, "routine_podiatry_offered": null, "routine_podiatry_unlimited": null, "routine_podiatry_visit_count": null, "routine_podiatry_visit_period_code": null, "routine_podiatry_visit_period_label": null, "routine_podiatry_visits_per_year": null, "supplemental_benefit_type": null, "telehealth_service_categories": null, "source_pbp_section": "B7A", "lmi_authorities": "https://mabenefitsmailbox.lmi.org/MABenefitsMailbox/S3Browser/GetFile?path=CY%202026%20PBP%20Service%20Category%20Descriptions.pdf|https://mabenefitsmailbox.lmi.org/MABenefitsMailbox/S3Browser/GetFile?path=Final%20CY%202026%20Part%20C%20Bid%20Review%20Memorandum%20and%20Appendix-4-15-25.pdf", "source_url": "https://www.cms.gov/files/zip/pbp-benefits-2026.zip", "sha256_content_hash": "1720048e668f6c9e4abc47c512e537c013600de12860d28aea4f8308b5e51de4", "source": "filing", "served_from": "filing", "evidence_grade": "cms_filed", "as_of": "CY2026 plan benefit filing, Q1 2026 release" }, { "contract_id": "H0028", "pl ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_pbp_benefit` with the inputs as the JSON body. MCP: the tool by name. # get_plan_hospitals Get Plan Hospitals · v0.2.0 · medicare The hospitals in a Medicare Advantage plan's published provider network for 2026 or 2027, by contract or CMS plan id: each hospital (CMS certification number, name, state, health system) with the evidence that it is in network: the hospital's own NPI listed in the directory, or how many of the clinicians CMS records as affiliated with it the plan lists (and the share). Narrow by hospital state or health system; choose the weakest evidence to return. Use cases: 'Which hospitals are in H5938's 2027 network?'; 'Is the Cleveland Clinic in this plan?'; 'Which HCA hospitals does H1036 list in Florida?'. A hospital's own NPI in the directory is strong evidence; many affiliated clinicians listed is good evidence; a few affiliated clinicians is weak and labelled so. A hospital absent from the list is 'no evidence in the published directory', never 'out of network'. The publish is pinned by dataset_id. SOURCE: medicare_silver.ma_network_plan_hospital_v1 (the Data Tracker's directory table x CMS hospital enrollment NPI = CCN x CMS Doctors and Clinicians facility affiliation x the hospital system map). **Inputs.** - `contract_id`: CMS contract id (H5938). One of contract_id / cms_plan_id. - `cms_plan_id`: CMS plan id H1234-001 or H1234-001-000. - `plan_year` (required): 2026 or 2027 (the directory year). - `limit`: Rows to return (default 50, max 500); summaries are always whole. - `state`: 2-letter state of the hospital; optional. - `system`: Health system name (contains match, e.g. 'HCA'); optional. - `min_evidence`: Weakest evidence returned: 'strong' (the hospital's own NPI is in the directory), 'good' (default: strong, or 10+ of its affiliated clinicians and 20%+ of them listed), or 'any' (also hospitals with a few affiliated clinicians listed). **Known limits.** - Many directories list clinicians and not facilities: a hospital reached only through affiliated clinicians is inferred from CMS's affiliation file (2026-05-29), not printed by the plan. - Affiliation covers hospitals where CMS records clinicians (4,606); a hospital with no affiliated clinicians can appear only by its own NPI. - Coverage follows the directory build (stage 25); an uncovered contract answers no_coverage. **A real answer** (customer seat, 2.9 s, args `{"cms_plan_id":"H5938-001","plan_year":2027,"limit":5}`): ```json { "value": { "found": false, "not_found_reason": "uncovered_contract", "query": { "cms_plan_id": "H5938-001-000", "plan_year": 2027, "min_evidence": "good", "limit": 5 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "rows": [], "query_ids": [ "1876253c-153b-41a7-8797-7542ef3f504b" ] }, "unit": "plan_hospitals", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [ "Absence is a claim only for a covered contract, and only 'not listed in the published directory'; a contract with no rows is UNCOVERED (the open-gap list), never 'no network'." ], "response_hash": "935a2214fad066505c21fd0f46a5048313a21d38ccd0ac8c30b6d47eca291965", "semantic_version": 1, "tool_version": "get_plan_hospitals@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "plan_hospitals", "scope": { "tool": "get_plan_hospitals", "filters": { "cms_plan_id": "H5938-001", "plan_year": 2027, "limit": 5, "min_evidence": "good" } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify min_evidence; good was used.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "935a2214fad066505c21fd0f46a5048313a21d38ccd0ac8c30b6d47eca291965" }, "defaults_applied": [ { "param": "min_evidence", "used": "good", "reason": "Weakest evidence returned: 'strong' (the hospital's own NPI is in the directory), 'good' (default: strong, or 10+ of its affiliated clinicians and 20%+ of them listed), or 'any' (a" } ], "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_plan_hospitals` with the inputs as the JSON body. MCP: the tool by name. # get_plan_network Get Plan Network · v0.2.0 · medicare The provider network a Medicare Advantage plan publishes: the NPIs its directory lists for a plan year (2026 or 2027), by contract or CMS plan id, with the source of every listing (the payer's own Plan-Net API, the printed directory, a name match to NPPES with its grade, or the Medicare Plan Finder export), the counts by source and grade, and a page of listings with name, specialty, location and the file and page each came from. Filter by state, ZIP or specialty. Use cases: 'How many providers does H5959 list for 2027?'; 'Which cardiologists are in H5938's network in Tallahassee?'; 'Is this plan's directory API-served or printed?'. Membership is DISTINCT NPIs, never row counts. Name-matched rows are flagged by grade and never presented as printed; listings whose name resolves to no single NPI are kept without an NPI and are not members. A contract with no rows is UNCOVERED (the open-gap list), never 'no network'. 2027 rows carried back from a 2026 directory are labelled (plan_key_basis). The publish is pinned by dataset_id. SOURCE: medicare_bronze.ma_directory_plan_npi_site_v1 (the Data Tracker's directory build; every row names its url, page and raw_sha256). **Inputs.** - `contract_id`: CMS contract id (H5938). One of contract_id / cms_plan_id. - `cms_plan_id`: CMS plan id H1234-001 or H1234-001-000 (contract-plan[-segment]). - `plan_year` (required): 2026 or 2027 (the directory year). - `state`: 2-letter state of the listed location; optional. - `zip5`: 5-digit ZIP of the listed location; optional. - `specialty`: Specialty as printed (contains match); optional. - `limit`: Listings to return (default 50, max 500); counts are always whole. **Known limits.** - Coverage: 99.1% of 2026 MA members and 96.1% of 2027 members from 2027 sources (stage 21, 2026-11-02); the open-gap contracts (HCSC, Geisinger 2027, Highmark Wholecare, Elderplan, Mercy Care, Elevate, CarePartners CT, six thin Elevance contracts) are UNCOVERED and answer NO_COVERAGE. - Listings whose printed name does not resolve to a single NPI (about 11.3M rows, grade C or D, mostly Humana PDFs) are kept without an NPI and are not counted as members. - Matched grade N rows can lack city, state and ZIP; page is a string. - 42 contracts' (1,132,045 members') 2027 rows are their 2026 directory applied through the CMS crosswalk (plan_key_basis *_2026_plan_via_crosswalk): labelled, not a 2027 directory. **A real answer** (customer seat, 1.19 s, args `{"contract_id":"H5938","plan_year":2027,"limit":5}`): ```json { "value": { "found": false, "not_found_reason": "query_failed", "query": { "contract_id": "H5938", "plan_year": 2027, "limit": 5 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "query_ids": [] }, "unit": "plan_network", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [], "response_hash": "a38a4df116e0dac275e5762743df6de0743e0062f1adbd238b5d50f43b293c0e", "semantic_version": 1, "tool_version": "get_plan_network@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "plan_network", "scope": { "tool": "get_plan_network", "filters": { "contract_id": "H5938", "plan_year": 2027, "limit": 5 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "a38a4df116e0dac275e5762743df6de0743e0062f1adbd238b5d50f43b293c0e" }, "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_plan_network` with the inputs as the JSON body. MCP: the tool by name. # get_plan_value Get Plan Value · v1.6.2 · medicare Vlada Plan Value: MODELED value to the member of a Medicare Advantage plan, per member per month, for 2026 and 2027 (never a filed benefit, a bid or a paid claim). The headline is medical cost-sharing value at the expected position in each filed range + extras (the flex card valued by what the money buys) + Part D + the Part B buydown - the member premium, one figure per leg. D-SNP has two columns: the headline is the full-dual column (extras + Part D against the Extra Help comparator, medical $0) and the filed design rides beside it. THREE MODES, chosen by the arguments. PLAN: contract_id (e.g. 'H0609') + plan_id (e.g. '025') [+ segment_id] -> each plan segment's value 2026 and 2027, the five legs, the range ends, the card bounds, the value without Part D, the filed design, and for a D-SNP the full-dual column, Part D against Extra Help and Medicaid's cost-sharing protection (published beside, never in a total), plus part_d_2027_basis. A contract alone lists its plan segments (largest first). MARKET: product_type (required; non-SNP HMO | non-SNP PPO | D-SNP HMO | D-SNP PPO | C-SNP HMO | C-SNP PPO | I-SNP HMO | I-SNP PPO; 'ALL' is refused) + geography (national | state | county; inferred from the place) + state / county (name as CMS spells it, with state) / county_ssa, optional parent (partial name matches) and plan_type (default 'ALL'), group_by (parent by default | none | state | county | plan_type | product_type) -> value.summary is the market: its levels (2026 = every September 2026 member, 2027 = those members followed to their 2027 plan) and its same-member change (members valued in both years: 2026, 2027, change), every leg; value.rows are the parents (or groups), largest first. RANK: rank=true with product_type and a geography -> who cut and who added most, on two bases side by side: 'same members' (member-weighted, the members followed) and 'plans on the shelf' (the simple average of the plans offered), each with its rank. HISTORY: history=true adds the earlier years of the same signed build. With a plan: each segment's value, legs, card bounds, value without Part D, filed design, outlier flag and September members for every plan year 2023-2027 (a plan that has since ended is found too). With a market (geography national or state, plan_type 'ALL', group_by parent | none | state | product_type): the levels for 2023-2026, each year on that year's own September members. Every year is in 2026 dollars: its filed design priced the way 2026 is, its dollar terms restated to 2026 by CMS's Medicare Advantage growth index; 2020 to 2022 are held back until their checks pass. History carries no same-member change, no county and no filed-range ends: year-to-year differences in the levels are two populations, not a change. limit bounds the rows (default 25, max 500). READ IT RIGHT: compare only inside one product type; a null is not valued, never $0; levels are not changes (the change is the same-member block); the 2027 Part D leg is final, priced on CMS's CY2027 formulary (a plan whose Part D could not be priced is labelled refused, never $0), and the value without Part D is the like-for-like reading of the other legs; the plan's ER cost is an upper bound (the ER copay charged on every visit, waiver on admission not applied; CMS convention); the card is the largest open sensitivity (quote the card bounds); 2027 is priced on the 2026 cohort, statute and dollars, a design comparison and not a forecast. SOURCE: Vlada Plan Value (build v12 = Method 1.2: the base-premium credit (D8), CMS's full copay (D4 cap off), card rule v3, stratum credibility, the SNF 3-day waiver, brochure-mid theta; D1 SSBCI eligibility 0.80 and D2 uncounted inpatient days off, served as sensitivities; the ER copay on every visit; signed 2026-11-02) from the CMS Plan Benefit Package filings, CMS county enrollment, the CMS plan crosswalk and the CMS Part D formulary files. **Inputs.** - `contract_id`: - `plan_id`: - `segment_id`: - `product_type`: - `geography`: - `state`: - `county`: - `county_ssa`: - `parent`: - `plan_type`: - `group_by`: - `rank`: - `history`: - `limit`: **Known limits.** - Every value is modeled value to the member, never a filed benefit, bid or paid claim. - The 2027 Part D leg is final: priced on CMS's CY2027 formulary (the October 2026 release); refused plans are labelled. - Medical: the plan's ER cost is an upper bound (the ER copay charged on every visit, waiver on admission not applied; CMS convention). - D-SNP headline is the full-dual column; the filed design rides beside it; Medicaid protection is never in a total. - Levels and the same-member change are different populations; the change is read from the pairs. - rank=true needs medicare_semantic.plan_value_shelf_v12; until it is published the rank mode refuses with recover_with rank=false. - history=true: 2023 onward, each year's filed design in 2026 dollars on 2026 law and prices; levels by year are each year's own members, not a same-member change; no county, plan type or filed-range ends before 2026. **A real answer** (customer seat, 7.79 s, args `{"product_type":"non-SNP HMO","county_ssa":"03060","parent":"UnitedHealth"}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "geography_level": "county", "state": "AZ", "county_ssa": "03060", "county_name": "Maricopa", "product_type": "non-SNP HMO", "plan_type": "ALL", "parent_organization": "ALL", "headline_definition": "all_in", "levels": { "members_2026": 243662, "members_2027_followed": 236513, "valued_share_2026": 1.0, "valued_share_2027": 1.0, "plan_value_2026": 205.27, "plan_value_2027": 174.89, "range_ends": { "min_2026": 244.79, "max_2026": 187.91, "min_2027": 226.14, "max_2027": 157.3 }, "card_bounds": { "low_2026": 203.5, "high_2026": 207.04, "low_2027": 174.16, "high_2027": 175.55 }, "legs": { "medical_cost_sharing_value": { "2026": 94.67, "2027": 77.69 }, "extras_value": { "2026": 38.08, "2027": 30.63 }, "part_d_value": { "2026": 22.99, "2027": 19.79 }, "part_b_buydown_value": { "2026": 11.84, "2027": 9.16 }, "member_premium": { "2026": -37.7, "2027": -37.63 } }, "plan_value_excl_part_d_2026": 182.29, "plan_value_excl_part_d_2027": 155.11, "filed_design_plan_value_2026": 205.27, "filed_design_plan_value_2027": 174.89, "part_d_2027_filed_share": 1.0, "part_d_2027_carried_share": 0.0, "part_d_2027_refused_share": 0.0 }, "same_members": { "members_followed": 236513, "members_valued_both_years": 236513, "valued_both_years_share": 1.0, "part_d_2027_filed_share": 1.0, "part_d_2027_carried_share": 0.0, "plan_value": { "2026": 206.44, "2027": 174.89, "change": -31.55 }, "plan_value_min_end": { "2026": 245.81, "2027": 226.14, "change": -19.67 }, "plan_value_max_end": { "2026": 189.04, "2027": 157.3, "change": -31.74 }, "plan_value_card_low": { "2026": 204.62, "2027": 174.16, "change": -30.46 }, "plan_value_card_high": { "2026": 208.25, "2027": 175.55, "change": -32.7 }, "medical_cost_sharing_value": { "2026": 95.66, "2027": 77.69, "change": -17.98 }, "extras_value": { "2026": 38.1, "2027": 30.63, "change": -7.47 }, "part_d_value": { "2026": 23.14, "2027": 19.79, "change": -3.36 }, "part_b_buydown_value": { "2026": 11.88, "2027": 9.16, "change": -2.72 }, "member_premium": { "2026": -37.66, "2027": -37.63, "change": 0.02 }, "plan_value_excl_part_d": { "2026": 183.3, "2027": 155.11, "change": -28.19 }, "filed_design_plan_value": { "2026": 206.44, "2027": 174.89, "change": -31.55 } }, "value_label": "modeled", "unit": "usd_pmpm", "build": "v12", "mode": "market", "groups": 1 }, "rows": [ { "geography_level": "county", "state": "AZ", "county_ssa": "03060", "county_name": "Maricopa", "product_type": "non-SNP HMO", "plan_type": "ALL", "parent_organization": "UnitedHealth Group, Inc.", "headline_definition": "all_in", "levels": { "members_2026": 72178, "members_2027_followed": 72178, "valued_share_2026": 1.0, "valued_share_2027": 1.0, "plan_value_2026": 179.82, "plan_value_2027": 152.11, "range_ends": { "min_2026": 223.25, "max_2026": 166.52, "min_2027": 209.41, "max_2027": 136.48 }, "card_bounds": { "low_2026": 179.39, "high_2026": 180.22, "low_2027": 151.73, "high_2027": 152.45 }, "legs": { "medical_cost_sharing_value": { "2026": 95.04, "2027": 73.43 }, "extras_value": { "2026": 26.31, "2027": 25.4 }, "part_d_value": { "2026": 21.3, "2027": 16.03 }, "part_b_buydown_value": { "2026": 0.0, "2027": 0.0 }, "member_premium": { "2026": -37.17, "2027": -37.25 } }, "plan_value_excl_part_d_2026": 158.52, "plan_value_excl_part_d_2027": 136.08, "filed_design_plan_value_2026": 179.82, "filed_design_plan_value_2027": 152.11, "part_d_2027_filed_share": 1.0, "part_d_2027_carried_share": 0.0, "part_d_2027_refused_share": 0.0 }, "same_members": { "members_followed": 72178, "members_valued_both_years": 72178, "valued_both_years_share": 1.0, "part_d_2027_filed_share": 1.0, "part_d_2027_carried_share": 0.0, "plan_value": { "2026": 179.82, "2027": 152.11, "change": -27.71 }, "plan_value_excl_part_d": { "2026": 158.52, "2027": 136.08, "change": -22.44 }, "filed_design_plan_value": { "2026": 179.82, "2027": 152.11, "change": -27.71 }, "medical_cost_sharing_value": { "2026": 95.04, "2027": 73.43, "change": -21.6 }, "extras_value": { "2026": 26.31, "2027": 25.4, "change": -0.92 }, "part_d_value": { "2026": 21.3, "2027": 16.03, "change": -5.27 }, "part_b_buydown_value": { "2026": 0.0, "2027": 0.0, "change": 0.0 }, "member_premium": { "2026": -37.17, "2027": -37.25, "change": -0.08 } } } ], "row_counts": { "rows": { "matched": 1, "returned": 1, "truncated": false, "limit": 25, "kept": "head" } }, "query": { "product_type": "non-SNP HMO", "geography": "county", "state": null, "county": null, "county_ssa": "03060", "parent": "UnitedHealth", "plan_type": "ALL", "group_by": "parent", "limit": 25, "mode": "market" }, "query_id": "6e06c3a4-33e9-4481-9ffb-575fb0023b09" }, "unit": "usd_pmpm_modeled", "result_status": "answered_with_caveats", "methodology_era": null, "meth ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_plan_value` with the inputs as the JSON body. MCP: the tool by name. # get_quality_bonus Get Quality Bonus · v1.0.0 · medicare MA quality bonus dollars by contract or parent and payment year. For each: the star tier CMS pays on (bonus % of the benchmark and the rebate share), members, risk score, rebate, the benchmark bonus, and what the star tier is worth in revenue per member per month and per year, three ways: benefits held (rebate fixed), observed (what carriers did when a contract crossed a tier, 2015-2024), and the 4.0 cliff (4.0 over 3.5). ARGUMENTS: contract_id (e.g. H5216) or parent (part of the parent organization's name, e.g. 'Humana'), group_by (contract | parent; default contract when contract_id is given, else parent), payment_year (default: every year for one contract, otherwise the newest year), limit (default 50, most members first). RETURNS value.rows: a contract row per payment year (tier, tier source and check against the tier CMS's payment file implies, members, PMPM and annual dollars), or a parent row per payment year (members, member-weighted star, bonus %, PMPM figures, annual dollars summed, contracts). value.summary carries the scope and which years are measured and which are modeled. RULES THE TOOL ENFORCES: rating year Y sets the bonus paid in payment year Y+1 (PY2028 uses the RY2027 stars) and every row names both; PY2025-2028 are modeled (period 'forward') and labeled; new contracts of an existing parent take the parent's member-weighted star, not 3.5; all of MA is priced (individual, employer group and regional PPO) and the share not priced is shown; a parent row weights PMPM by members priced and sums dollars. SOURCE: CMS MA ratebooks, plan payment files (average payment, risk score, rebate), Rate Announcements, Star Ratings and monthly enrollment, through Vlada's QBP financial chain (audited twice; method: STARS-QBP-FINANCIAL-CHAIN). **Inputs.** - `contract_id`: - `parent`: - `group_by`: - `payment_year`: - `limit`: **Known limits.** - The paid bonus for very small and new-parent contracts follows CMS's stated policy and is not verifiable from public data (under 1.5% of members). **A real answer** (customer seat, 2.4 s, args `{"parent":"Humana","payment_year":2028,"group_by":"parent"}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "group_by": "parent", "contract_id": null, "parent": "Humana", "payment_years": [ 2028 ], "measured_years": [], "modeled_years": [ 2028 ], "rows": 1, "unit": "usd_pmpm_and_annual" }, "rows": [ { "parent_org": "Humana Inc.", "payment_year": 2028, "contracts": 35, "rating_year_used": 2027, "period": "forward", "avg_monthly_members": 6618939, "avg_monthly_members_priced": 6618939, "pct_members_priced_in_bonus": 95.64, "risk_score": 1.1594, "rebate_pmpm": 204.63, "benchmark_bonus_pmpm": 69.73, "revenue_at_risk_pmpm_benefits_held": 174.71, "revenue_at_risk_pmpm_observed": 156.59, "revenue_at_risk_pmpm_observed_low": 133.26, "cliff_4_0_pmpm_benefits_held": 72.65, "cliff_4_0_pmpm_observed": 67.13, "step_3_5_pmpm": 94.45, "step_4_5_pmpm": 22.49, "qbp_star_published": 4.18, "bonus_pct": 4.7799, "rebate_share": 0.6686, "revenue_at_risk_annual_usd_benefits_held": 13876871827.0, "revenue_at_risk_annual_usd_observed": 12437356638.0 } ], "row_counts": { "rows": { "matched": 1, "returned": 1, "truncated": false, "limit": 50, "kept": "head" } }, "query": { "contract_id": null, "parent": "Humana", "group_by": "parent", "payment_year": 2028, "limit": 50 }, "query_id": "6c646870-3205-432e-bc03-c481384f7785" }, "unit": "usd_pmpm_and_annual", "result_status": "answered_with_caveats", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get_quality_bonus" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [ { "caveat_type": "methodology_note", "severity": "info", "message": "Rating year Y sets the bonus paid in payment year Y+1, so payment year 2028 uses the 2027 stars. Payment years 2015 to 2024 are measured; 2025 to 2028 are modeled, with risk scores moved by CMS's published average changes and the rebate held at 2024 dollars, moved only by the star tier. Benefits held is the revenue the tier is worth with the rebate fixed. Observed is what carriers actually did with the money when a contract crossed a tier, an estimate with a wide range. The 4.0 cliff is the revenue of 4.0 over 3.5. New contracts of an existing parent are paid on the parent's member-weighted star, not 3.5. Very small and new-parent contracts follow CMS's stated policy, which public data cannot check; they are under 1.5% of members.", "structured_fields": {} } ], "confidence": null, "finality_confidence": null, "response_hash": "04be7a7acf2c0988eaa3dd6aaf226f8b4fcb8454aa2ebcdc8e27c3f09a00e3c1", "semantic_version": 1, "tool_version": "1.0.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "5b329b71-b51a-4e8b-a372-aafdc8b67204", "timestamp": "2026-11-09T21:35:53.683804Z", "request_id": "68bbc33e-80f7-46a4-b65a-b4ef663405c1", "audience": "customer", "answer": { "value_ref": "value", "unit": "usd_pmpm_and_annual", "scope": { "tool": "get_quality_bonus", "filters": { "parent": "Humana", "payment_year": 2028, "group_by": "parent" } } }, "method": "Priced from CMS county ratebooks, plan payment files (payment, risk score, rebate) and Rate Announcements at the star tier CMS pays on, rating year Y setting payment year Y+1. Payment years 2015 to 2024 are measured; 2025 to 2028 are modeled, with risk scores moved by CMS's published changes and the rebate held at 2024 dollars. Benefits held fixes the rebate; observed applies what carriers did when a contract crossed a tier, an estimate with a wide range.", "evidence": { "query_id": "6c646870-3205-432e-bc03-c481384f7785", "response_hash": "04be7a7acf2c0988eaa3dd6aaf226f8b4fcb8454aa2ebcdc8e27c3f09a00e3c1", "audit_id": "5b329b71-b51a-4e8b-a372-aafdc8b67204", "request_id": "68bbc33e-80f7-46a4-b65a-b4ef663405c1" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_quality_bonus` with the inputs as the JSON body. MCP: the tool by name. # get_star_benchmark Get Star Benchmark · v1.0.0 · medicare How a Medicare Advantage contract performs on the Star measures against the market, its peers, its competitors and CMS's cut points, over time. Two views in one answer. FAMILIES: for each measure family (all measures, HEDIS, HOS, CAHPS, pharmacy, complaints and leaving, appeals, call center, plan reporting) and each rating year, the contract's actual performance % (CMS-weighted mean of its measure scores; lower-is-better rates counted as their complement, so 10% readmitted = 90%; complaints per 1,000 and improvement scores are counted, not averaged), the 4-star line over exactly the measures it was scored on, and its weighted star; beside the market (member-weighted and one contract one vote), a cohort (default: its dominant product in its dominant state, e.g. D-SNPs in NY), its peer class (national carrier, Blue Cross Blue Shield plan, Kaiser, provider-sponsored, regional plan, MA-focused entrant) and the average of its five nearest competitors. MEASURES: for the latest rating year, every measure's score, star, CMS message where there is no score, the 2-5 star cut points, the market mean (members and contracts), median and middle half, the cohort mean, the gap to the market (positive = better, direction-aware), the percentile among MA contracts, and each competitor's score. ARGUMENTS: contract_id (required, H or R contract, e.g. H5549), rating_year (default the newest held), years (1-13, default 5), cohort (one of product_state, product, peer_class, parent, peer_class_product, cai_group, size_band, star_band, state, org_type; default product_state), family (optional: restrict the measures view to one family, e.g. hedis), limit (measure rows, default 60). RETURNS value.summary (contract, rating year, parent, peer class, product, state, members, the cohort used, the five competitors with their parents and shared-county members), value.families (one row per family per year) and value.measures (one row per measure, latest year). RULES THE TOOL ENFORCES: every number is read from the stored benchmark tables, never averaged at call time; a score belongs to the whole contract, so a contract sits in the one product and state holding most of its members; text cells (plan too small, not enough data) are counted and never imputed; CAHPS cut points are approximate because CMS also tests significance; stand-alone drug plans are a separate market and are not included. SOURCE: CMS Part C and D Star Ratings data tables and CMS monthly enrollment, through Vlada's measure benchmark engine (stars_measure_benchmark@1.0.0). **Inputs.** - `contract_id` (required): - `rating_year`: - `years`: - `cohort`: - `family`: - `limit`: **A real answer** (customer seat, 10.97 s, args `{"contract_id":"H5549","rating_year":2027}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H5549", "rating_year": 2027, "years": [ 2023, 2027 ], "parent": "Visiting Nurse Service of New York", "peer_class": "provider_sponsored", "product": "dsnp", "state": "NY", "members": 72197, "cohort": { "type": "product_state", "value": "dsnp|NY" }, "competitors": [ { "contract_id": "H3359", "parent": "Healthfirst, Inc.", "peer_class": "provider_sponsored", "members_in_shared_counties": 354949, "overall_star": 3.5 }, { "contract_id": "H3387", "parent": "UnitedHealth Group, Inc.", "peer_class": "national", "members_in_shared_counties": 98511, "overall_star": 4.0 }, { "contract_id": "H3312", "parent": "CVS Health Corporation", "peer_class": "national", "members_in_shared_counties": 74975, "overall_star": 3.0 }, { "contract_id": "H8432", "parent": "Elevance Health, Inc.", "peer_class": "national", "members_in_shared_counties": 42605, "overall_star": 3.0 }, { "contract_id": "H5599", "parent": "Centene Corporation", "peer_class": "national", "members_in_shared_counties": 38463, "overall_star": 3.0 } ], "unit": "percent" }, "families": [ { "family": "all_ex_improvement", "rating_year": 2023, "like_for_like": false, "actual_pct": 88.14, "four_star_line_pct": 82.92, "vs_four_star_line": 5.22, "weighted_star": 4.235, "cut_point_ruler": 4.451, "measures_in_pct": 33, "measures_scored": 35, "market_pct_member_weighted": 86.39, "market_pct_per_contract": 83.82, "market_pct_median": 85.0, "market_pct_middle_half": [ 81.9, 86.97 ], "market_weighted_star": 4.04, "vs_market": 1.75, "cohort_pct_member_weighted": 84.62, "cohort_contracts": 17, "peer_class_pct_member_weighted": 86.32, "competitors_pct_average": 84.23 }, { "family": "all_ex_improvement", "rating_year": 2024, "like_for_like": false, "actual_pct": 85.07, "four_star_line_pct": 83.55, "vs_four_star_line": 1.52, "weighted_star": 3.485, "cut_point_ruler": 3.791, "measures_in_pct": 37, "measures_scored": 39, "market_pct_member_weighted": 85.36, "market_pct_per_contract": 84.39, "market_pct_median": 84.36, "market_pct_middle_half": [ 81.6, 86.57 ], "market_weighted_star": 3.978, "vs_market": -0.3, "cohort_pct_member_weighted": 84.02, "cohort_contracts": 18, "peer_class_pct_member_weighted": 85.85, "competitors_pct_average": 82.96 }, { "family": "all_ex_improvement", "rating_year": 2025, "like_for_like": false, "actual_pct": 86.78, "four_star_line_pct": 85.56, "vs_four_star_line": 1.22, "weighted_star": 3.384, "cut_point_ruler": 3.603, "measures_in_pct": 37, "measures_scored": 39, "market_pct_member_weighted": 86.41, "market_pct_per_contract": 85.26, "market_pct_median": 85.26, "market_pct_middle_half": [ 82.95, 87.21 ], "market_weighted_star": 3.859, "vs_market": 0.37, "cohort_pct_member_weighted": 85.61, "cohort_contracts": 17, "peer_class_pct_member_weighted": 86.63, "competitors_pct_average": 84.83 }, { "family": "all_ex_improvement", "rating_year": 2026, "like_for_like": false, "actual_pct": 85.69, "four_star_line_pct": 85.02, "vs_four_star_line": 0.67, "weighted_star": 3.382, "cut_point_ruler": 3.758, "measures_in_pct": 38, "measures_scored": 40, "market_pct_member_weighted": 85.07, "market_pct_per_contract": 84.84, "market_pct_median": 84.12, "market_pct_middle_half": [ 82.13, 86.3 ], "market_weighted_star": 3.778, "vs_market": 0.61, "cohort_pct_member_weighted": 84.34, "cohort_contracts": 17, "peer_class_pct_member_weighted": 85.59, "competitors_pct_average": 83.33 }, { "family": "all_ex_improvement", "rating_year": 2027, "like_for_like": false, "actual_pct": 86.56, "four_star_line_pct": 85.43, "vs_four_star_line": 1.13, "weighted_star": 3.757, "cut_point_ruler": 4.056, "measures_in_pct": 40, "measures_scored": 42, "market_pct_member_weighted": 85.33, "market_pct_per_contract": 85.22, "market_pct_median": 84.79, "market_pct_middle_half": [ 82.72, 86.82 ], "market_weighted_star": 3.745, "vs_market": 1.23, "cohort_pct_member_weighted": 84.29, "cohort_contracts": 16, "peer_class_pct_member_weighted": 85.46, "competitors_pct_average": 83.26 }, { "family": "all_measures", "rating_year": 2023, "like_for_like": false, "actual_pct": 88.14, "four_star_line_pct": 82.92, "vs_four_star_line": 5.22, "weighted_star": 4.211, "cut_point_ruler": 4.451, "measures_in_pct": 33, "measures_scored": 35, "market_pct_member_weighted": 86.39, "market_pct_per_contract": 83.82, "market_pct_median": 85.0, "market_pct_middle_half": [ 81.9, 86.97 ], "market_weighted_star": 3.903, "vs_market": 1.75, "cohort_pct_member_weighted": 84.62, "cohort_contracts": 17, "peer_class_pct_member_weighted": 86.32, "competitors_pct_average": 84.23 }, { "family": "all_measures", "rating_year": 2024, "like_for_like": false, "actual_pct": 85.07, "four_star_line_pct": 83.55, "vs_four_star_line": 1.52, "weighted_star": 3.252, "cut_point_ruler": 3.791, "measures_in_pct": 37, "measures_scored": 39, "market_pct_member_weighted": 85.36, "market_pct_per_contract": 84.39, "market_pct_median": 84.36, "market_pct_middle_half": [ 81.6, 86.57 ], "market_weighted_star": 3.915, "vs_market": -0.3, "cohort_pct_member_weighted" ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_star_benchmark` with the inputs as the JSON body. MCP: the tool by name. # get_star_decomposition Get Star Decomposition · v1.5.2 · medicare How a contract's star is built, and what moves it to the next line. For one Medicare Advantage contract and rating year: for the Overall, Part C and Part D summaries, the raw score (the weighted mean of the measure stars), the categorical adjustment (CAI), the reward factor, the score before rounding, the published star and the recomputed one, the cushion above the line the star was earned at and the gap to the next half-star line (and to 3.75, which rounds to 4.0). Then every measure: score, star, weight, direction, the next star's cut point and the distance to it in the measure's own units, and what one more star on it adds to each summary's raw score; plus the shortest list of one-star gains that closes the gap to the next line. ARGUMENTS: contract_id (required, e.g. H5216), rating_year (default the newest held for the contract), limit (measure rows, default 60). RETURNS value.summary (contract, rating_year, pays_in, parts: one block per summary with its decomposition, gaps and path) and value.measures (one row per measure). RULES THE TOOL ENFORCES: the arithmetic is CMS's (the raw score over the measure set CMS used, picked so the weights add up to the recompute engine's total; the Overall leaves out the two Part D measures that duplicate Part C); one more star adds weight / total weight to the raw score; the path holds the CAI and the reward factor constant and says so; distances are in the measure's own units and direction (for a lower-is-better measure the score must fall); survey (CAHPS) cut points are approximate, because CMS also tests significance and reliability; improvement measures have no cut point. The recomputed star is the engine's, the published star is CMS's; where they differ the row says why. FLOOR BANDS: where CMS printed NA for a measure's lowest star bands (some measures in RY2015 and RY2018-2021), every score earns at least that star; the measure's floor_cut says so and it cannot be lost. SOURCE: CMS Part C and D Star Ratings Data Tables and Technical Notes, through Vlada's recompute engine, which reproduces 99.03% of the summary stars CMS published (RY2015-2027) exactly: 18,499 of 18,680. **Inputs.** - `contract_id` (required): - `rating_year`: - `limit`: **A real answer** (customer seat, 3.8 s, args `{"contract_id":"H5216","rating_year":2027}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H5216", "rating_year": 2027, "pays_in": 2028, "parts": [ { "part": "Overall", "published_star": 4.0, "recomputed_star": 4.0, "exact_match": true, "raw_star_score": 3.7778, "cai": -0.0103, "reward_factor": 0.2, "pre_round_score": 3.9675, "cushion_above_earned_line": 0.2175, "gap_to_next_half_star": 0.2825, "gap_to_four_stars": 0.0, "measures_used": 43, "total_weight_used": 81.0, "measure_set": "all measures", "residual_class": null, "recompute_status": "recomputed", "published_before_restatement": null, "path_to_next_half_star": [ { "measure": "Medication Adherence for Diabetes Medications", "measure_identity_key": "d:medication_adherence_for_diabetes_medications", "lift": 0.037, "cumulative_lift": 0.037, "distance": 2.0, "approximate": false }, { "measure": "Medication Adherence for Cholesterol (Statins)", "measure_identity_key": "d:medication_adherence_for_cholesterol_statins", "lift": 0.037, "cumulative_lift": 0.074, "distance": 3.0, "approximate": false }, { "measure": "Medication Adherence for Hypertension (RAS antagonists)", "measure_identity_key": "d:medication_adherence_for_hypertension_ras_antagonists", "lift": 0.037, "cumulative_lift": 0.111, "distance": 3.0, "approximate": false }, { "measure": "Controlling Blood Pressure", "measure_identity_key": "c:controlling_blood_pressure", "lift": 0.037, "cumulative_lift": 0.148, "distance": 4.0, "approximate": false }, { "measure": "Improving or Maintaining Physical Health", "measure_identity_key": "c:improving_or_maintaining_physical_health", "lift": 0.037, "cumulative_lift": 0.185, "distance": 4.0, "approximate": false }, { "measure": "Plan All-Cause Readmissions", "measure_identity_key": "c:plan_all_cause_readmissions", "lift": 0.037, "cumulative_lift": 0.222, "distance": 2.0, "approximate": false }, { "measure": "Reviewing Appeals Decisions", "measure_identity_key": "c:reviewing_appeals_decisions", "lift": 0.0247, "cumulative_lift": 0.2467, "distance": 1.0, "approximate": false }, { "measure": "Customer Service", "measure_identity_key": "c:customer_service", "lift": 0.0247, "cumulative_lift": 0.2714, "distance": 1.0, "approximate": true }, { "measure": "Getting Needed Prescription Drugs", "measure_identity_key": "d:getting_needed_prescription_drugs", "lift": 0.0247, "cumulative_lift": 0.2961, "distance": 1.0, "approximate": true } ], "path_closes_gap": true, "path_to_four_stars": [], "slip_path_below_earned_line": [ { "measure": "Improving or Maintaining Mental Health", "measure_identity_key": "c:improving_or_maintaining_mental_health", "loss": 0.037, "cumulative_loss": 0.037, "drop_distance": 0.0, "approximate": false }, { "measure": "Improving or Maintaining Physical Health", "measure_identity_key": "c:improving_or_maintaining_physical_health", "loss": 0.037, "cumulative_loss": 0.074, "drop_distance": 0.0, "approximate": false }, { "measure": "Plan All-Cause Readmissions", "measure_identity_key": "c:plan_all_cause_readmissions", "loss": 0.037, "cumulative_loss": 0.111, "drop_distance": 0.0, "approximate": false }, { "measure": "Medication Adherence for Cholesterol (Statins)", "measure_identity_key": "d:medication_adherence_for_cholesterol_statins", "loss": 0.037, "cumulative_loss": 0.148, "drop_distance": 0.0, "approximate": false }, { "measure": "Medication Adherence for Diabetes Medications", "measure_identity_key": "d:medication_adherence_for_diabetes_medications", "loss": 0.037, "cumulative_loss": 0.185, "drop_distance": 0.0, "approximate": false }, { "measure": "Medication Adherence for Hypertension (RAS antagonists)", "measure_identity_key": "d:medication_adherence_for_hypertension_ras_antagonists", "loss": 0.037, "cumulative_loss": 0.222, "drop_distance": 0.0, "approximate": false } ], "closest_to_their_floor": [ { "measure": "Improving or Maintaining Mental Health", "drop_distance": 0.0, "loss": 0.037, "on_the_line": true, "approximate": false }, { "measure": "Improving or Maintaining Physical Health", "drop_distance": 0.0, "loss": 0.037, "on_the_line": true, "approximate": false }, { "measure": "Plan All-Cause Readmissions", "drop_distance": 0.0, "loss": 0.037, "on_the_line": true, "approximate": false }, { "measure": "Call Center - Foreign Language Interpreter and TTY Availability", "drop_distance": 0.0, "loss": 0.0247, "on_the_line": true, "approximate": false }, { "measure": "Care Coordination", "drop_distance": 0.0, "loss": 0.0247, "on_the_line": true, "approximate": true }, { "measure": "Customer Service", "drop_distance": 0.0, "loss": 0.0247, "on_the_line": true, "approximate": true }, { "measure": "Plan Makes Timely Decisions about Appeals", "drop_distance": 0.0, "loss": 0.0247, "on_the_lin ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_star_decomposition` with the inputs as the JSON body. MCP: the tool by name. # get_star_risk Get Star Risk · v4.0.0 · medicare Star Risk: odds a star falls, holds or rises next year. For one Medicare Advantage contract and origin rating year, for the Overall, Part C and Part D summaries, scored on the forecast year's own rules (the final rule's measure set and weights, named in the answer): Down / Same / Up for next year's star, the chance it falls below this year's star (chance to drop), the chance it lands below 4.0 (the quality bonus line; for a contract at 4.0 the same event and the same number as dropping, for one at 3.5 one minus the chance of rising) and the chance it rises (Upside), each with a status saying what it is worth. The Overall headline is Release 2r: a blend of Vlada's simulation (70%, Engine 4g) and a statistical model of the outcome with benefit and growth changes (30%), both calibrated on every year before the forecast year; the simulation's own odds ride beside it, labeled. Also: the expected star and its distribution (simulated), Star Distance (typical years of movement between the score before rounding and the line it earned), the raw score and the reward factor apart (and the chance the reward factor drops), three layers of distance (each measure to its own line, a cut point or for survey measures a modeled effective line; the score before rounding to its half-star lines; the raw mean and spread to the reward factor's thresholds), the Effective Star Cushion and Reach (descriptive), the cheapest sets of measure gains that reach the next half star (up paths), the per-contract Focus list (context) and the protect list (measures with the fewest score points above the line that keeps their star). With parent instead: the parent organization's book, the measures where contracts that improved moved up a star more often (expected members gaining a star, contracts helped; the top 3 are the held-out tested list), its protect list, and each of its contracts' Down / Same / Up. ARGUMENTS: contract_id (e.g. H5216; H or R contracts, employer direct E contracts are not scored) or parent (a parent organization name such as Humana, or a contract id to use its parent); exactly one. part (Overall, C or D; default all three; contract only), rating_year (the origin rating year; default the newest scored), limit (rows, default 60). RETURNS for a contract value.summary (contract, rating_year, forecast_year, engine version and runs, the headline model, the rule set, parts: one block per summary, each probability with a _status, down_same_up, and the simulation's own odds under simulation) and value.measures (one row per measure: star, weight this year and next, removed next year, weight share, distances down and up in score points and in typical years, the line they are measured to, lift per typical year); for a parent value.summary (parent, book, focus, protect) and value.contracts (each contract's stars and odds). WHAT EACH NUMBER IS WORTH, as the answer says: on 2024-2027 (years read while the engine was built; RY2028 is the clean test), Release 2r's chance to drop ranks contracts well (AUC 0.771) and is sharper than history (Brier skill +0.079, 90% interval +0.058 to +0.101, against +0.032 for the previous model); its odds are close to calibrated (slope 1.08) but run about 3 points high on average (35.6% predicted, 32.8% actual); by origin star it predicted 14% Down for 3.0 contracts against 10% actual, 44% for 4.0 against 41%, 55% for 4.5 against 49% and 57% for 5.0 against 65%; a chance above 90% is shown as over 90% (only 5 such cases in history); a year-wide shock can move every contract together; below 4.0 is tested for contracts within half a star of the line (skill +0.100) and is context further from it; Upside is tested (from 3.5 it is the chance of reaching 4.0); Down / Same / Up is tested as one forecast; the simulation's own odds are shown only for comparison; Part C and Part D are simulated shares, uncalibrated and untested; the expected star is simulated and runs low; the parent focus list is an association tested on held-out years (top 3 only), never a promise of a star; the per-contract focus list did not pass its test and is context only; the protect list is a ranking rule, not a tested prediction, and never lists a measure CMS removes next year; slip paths are not served; the Effective Star Cushion and Reach are descriptive, never predictive; where the path engine does not reproduce CMS's published star its paths are flagged untrusted. Every number is a model forecast, not an observed rating. SOURCE: CMS Part C and D Star Ratings Data Tables, Technical Notes, cut points and the forecast year's final rule, through Vlada's Star Risk engine (simulation on CMS's exact summary arithmetic, calibrated on every earlier year, blended with a statistical model fitted on every earlier year, judged on 2024-2027 and graded on RY2028 in October 2027). **Inputs.** - `contract_id`: - `parent`: - `part`: - `rating_year`: - `limit`: **A real answer** (customer seat, 3.76 s, args `{"contract_id":"H0609","rating_year":2027}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H0609", "rating_year": 2027, "forecast_year": 2028, "forecast_pays_in": 2029, "engine_version": "4g", "run_id": "20261018T193203Z-76a6f105", "headline_model": "blend", "blend_run_id": "20261018T200715Z-eeb37535", "rules": "RY2028 per CY2027 final rule CMS-4208-F3 / CMS-4212-F; adherence reweighting from the CY2024/CY2025 rules: 3 measures removed, adherence weight 1", "parts": [ { "part": "Overall", "published_star": 4.0, "headline_model": "blend", "below_four_risk_pct": 38.4, "below_four_risk_basis": "blend: the chance to drop (the same event at 4.0)", "below_four_risk_source": "blend_down_one_event", "below_four_risk_simulated_pct": 50.9, "below_four_risk_status": "tested_near_line", "star_risk_pct": 38.4, "star_risk_display": "38.4%", "star_risk_basis": "blend Down (the same event as below 4.0 at 4.0)", "star_risk_simulated_pct": 50.9, "star_risk_status": "tested_blend", "upside_pct": 18.8, "upside_basis": "blend Up", "upside_simulated_pct": 11.6, "upside_status": "tested", "down_same_up": { "down_pct": 38.4, "same_pct": 42.8, "up_pct": 18.8, "status": "tested_three_way" }, "simulation": { "chance_to_drop_pct": 54.9, "below_four_pct": 54.9, "upside_pct": 14.9, "status": "simulation_for_comparison" }, "blend_weight_on_simulation": 0.7, "blend_run_id": "20261018T200715Z-eeb37535", "rules": "RY2028 per CY2027 final rule CMS-4208-F3 / CMS-4212-F; adherence reweighting from the CY2024/CY2025 rules: 3 measures removed, adherence weight 1", "expected_star": 3.734, "star_distribution_pct": { "2.5": 0.1, "3.0": 13.6, "3.5": 37.2, "4.0": 37.5, "4.5": 11.6 }, "expected_star_status": "simulated_biased_low", "star_distance_typical_years": 0.054, "score_before_rounding": 3.7709, "raw_score": { "current": 3.6812, "simulated_mean": 3.5773, "simulated_sd": 0.2712 }, "reward_factor": { "current": 0.1, "simulated_mean": 0.118, "chance_it_drops_pct": 42.6, "chance_it_rises_pct": 34.2, "distribution_pct": { "0.0": 42.6, "0.1": 23.3, "0.2": 18.2, "0.3": 6.0, "0.4": 10.0 } }, "distance_layers": { "measure": { "measures": 40, "not_explained_by_cut_points": 0, "survey_measured_to_effective_lines": 8, "no_line_distance": 0, "survey_not_explained_by_cut_points": 0, "removed_next_year": 3 }, "score_before_rounding": { "cushion_above_earned_line": 0.0209, "gap_to_next_half_star_line": 0.4791 }, "reward_factor": { "raw_mean_above_p65": 0.0782, "raw_mean_short_of_p85": 0.2144, "spread_room_below_p30": -0.0853, "spread_room_below_p70": 0.3002, "thresholds": { "raw_mean_p65": 3.602941, "raw_mean_p85": 3.895522, "spread_p30": 0.999552, "spread_p70": 1.385046 } } }, "effective_star_cushion": { "effective_distance_years": -4.167, "paths_within_two_years": 70, "paths_within_one_year": 59, "paths_within_half_year": 4, "cheapest_path_years": 0.192, "p_any_path_pct": 100.0, "cheapest_path_share_pct": 4.3, "descriptive_only": true }, "effective_star_reach": { "effective_distance_years": null, "paths_within_two_years": 0, "paths_within_one_year": 0, "paths_within_half_year": 0, "cheapest_path_years": null, "p_any_path_pct": 0.0, "cheapest_path_share_pct": null, "descriptive_only": true }, "reproduces_cms": true, "paths_trusted": true, "up_paths_evidence": "up paths: the typical-years distance ranked which measures gain a star better than raw points or CMS weight on held-out years (P1, AUC 0.669 vs 0.615); the per-contract focus list did not pass its own test (P9), so it is context, not advice; the parent's list is the tested one", "up_paths": [], "up_paths_dropped_for_removed_measures": 0, "slip_paths": "not served: ranking slips by path cost failed its test (P6)", "focus_list": [ { "measure": "Improving or Maintaining Mental Health", "star": 2.0, "weight_share": 0.0435, "distance_up": 1.0, "typical_years_up": 0.263, "lift_per_typical_year": 0.1654 }, { "measure": "Improving or Maintaining Physical Health", "star": 2.0, "weight_share": 0.0435, "distance_up": 1.0, "typical_years_up": 0.328, "lift_per_typical_year": 0.1327 }, { "measure": "Special Needs Plan (SNP) Care Management", "star": 3.0, "weight_share": 0.0145, "distance_up": 1.0, "typical_years_up": 0.124, "lift_per_typical_year": 0.1167 }, { "measure": "Plan Makes Timely Decisions about Appeals", "star": 4.0, "weight_share": 0.029, "distance_up": 1.0, "typical_years_up": 0.274, "lift_per_typical_year": 0.1059 }, { "measure": "Reducing the Risk of Falling", "star": 2.0, "weight_share": 0.0145, "distance_up": 1.0, "typical_years_up": 0.232, "lift_per_typical_year": 0.0624 }, { "measure": "Rating of Health Plan", "star": 2.0, "weight_share": 0.029, "distance_up": 1.0, "typical_years_up": 0.5, "lift_per_typical_year": 0.058 }, { "measure": "Colorectal Cancer Screening", "star": 4.0, "weight_share": 0.0145, "distance_up": 1.0, "typical_years_up": 0.268, "lift_per_typical_year": 0.054 }, { "measure": "Getting Needed Ca ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_star_risk` with the inputs as the JSON body. MCP: the tool by name. # get_stars Get Stars · v0.8.1 · medicare Returns a Medicare Advantage contract's CMS Star Ratings: the Overall, Part C, and Part D summary stars for a rating year, each with the year-over-year change vs the prior year. Set include_measures=true to also get the full per-measure breakdown (measure name, identity key, part, domain, weight, direction, the raw value and its star, the 4-star line, and the star's YoY change) so you can see exactly which measures moved the rating. The prior-year star is matched by MEASURE IDENTITY through the Stars measure spine, never by code (CMS renumbered 27 of 33 Part C codes for RY2026); prior_year_measure_id names the code the prior star was filed under. Filter by contract_id (required) + optional year (the rating_year, defaults to the latest) + optional limit (max measure rows returned). Rating years 2012-2027 (RY2027 is CMS's final October 2026 release). The answer is a detail payload: the headline stars sit in value.summary, the part rows in value.summary_parts, the measure rows in value.measures. Stars drive the quality-bonus payment and rebate, so this sits directly upstream of the plan economics (payment and MLR) and is reported at the CONTRACT level (no plan_id). Scores are served at the precision CMS publishes (float32 storage noise is removed on the wire). Each measure row's four_star_ladder names the cut point ladder its four-star line came from: CMS calculates MA-PD and PDP Part D cut points separately, so an MA contract (H, R) reads the MA-PD ladder and a stand-alone drug plan contract (S) the PDP ladder; ALL is a ladder CMS published for every organisation (Part C). RESTATED OVERALL. CMS restated 50 contracts' RY2026 Overall rating on July 22, 2026 (after the Clover Health ruling) without changing any measure star, so for those contracts the measure breakdown reflects the original calculation and can round to a different star than the served Overall. The answer says so in a caveat and names the original value in summary.overall_restated_from (summary.overall_restated_from_text carries CMS's text when the original was a message such as 'Not enough data available'). FLOOR BANDS. Where CMS printed NA for a measure's lowest star bands (some measures in RY2015 and RY2018-2021) the measure row names the lowest band CMS printed in floor_star and floor_note. SOURCE: CMS Star Ratings (summary + measure-level) and the Vlada measure spine medicare_semantic.dim_stars_measure_identity_v7. **Inputs.** - `contract_id` (required): - `year`: - `include_measures`: - `limit`: **Known limits.** - Stars are contract-level (no plan_id). - Measure set + weights are methodology-versioned per rating_year; a measure retired or added between years has no YoY counterpart (null change). **A real answer** (customer seat, 0.1 s, args `{"contract_id":"H5216","year":2026,"include_measures":true}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "contract_id": "H5216", "rating_year": 2026, "overall_star": 3.5, "overall_yoy_change": 0.0, "part_c_star": 3.5, "part_d_star": 3.0, "measure_count": 45, "measures_with_prior": 42, "measures_up": 12, "measures_down": 11, "include_measures": true, "overall_restated_from": null, "overall_restated_from_text": null, "unit": "stars_rows" }, "summary_parts": [ { "part": "Overall", "rating_year": 2026, "summary_star": 3.5, "prior_year_star": 3.5, "yoy_change": 0.0 }, { "part": "C", "rating_year": 2026, "summary_star": 3.5, "prior_year_star": 3.5, "yoy_change": 0.0 }, { "part": "D", "rating_year": 2026, "summary_star": 3.0, "prior_year_star": 3.5, "yoy_change": -0.5 } ], "measures": [ { "measure_id": "C01", "measure_identity_key": "c:breast_cancer_screening", "measure_name": "Breast Cancer Screening", "canonical_name": "Breast Cancer Screening", "cmit_number": "00093-02-C-PARTC", "part": "C", "domain": "HD1", "weight": 1.0, "direction": "higher", "star_value": 4.0, "raw_value": 76.0, "four_star_line": 76.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": 4.0, "prior_year_measure_id": "C01", "yoy_change": 0.0 }, { "measure_id": "C02", "measure_identity_key": "c:colorectal_cancer_screening", "measure_name": "Colorectal Cancer Screening", "canonical_name": "Colorectal Cancer Screening", "cmit_number": "00139-02-C-PARTC", "part": "C", "domain": "HD1", "weight": 1.0, "direction": "higher", "star_value": 4.0, "raw_value": 73.0, "four_star_line": 70.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": 4.0, "prior_year_measure_id": "C02", "yoy_change": 0.0 }, { "measure_id": "C03", "measure_identity_key": "c:annual_flu_vaccine", "measure_name": "Annual Flu Vaccine", "canonical_name": "Annual Flu Vaccine", "cmit_number": "00259-01-C-PARTC", "part": "C", "domain": "HD1", "weight": 1.0, "direction": "higher", "star_value": 4.0, "raw_value": 68.0, "four_star_line": 68.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": 3.0, "prior_year_measure_id": "C03", "yoy_change": 1.0 }, { "measure_id": "C04", "measure_identity_key": "c:improving_or_maintaining_physical_health", "measure_name": "Improving or Maintaining Physical Health", "canonical_name": "Improving or Maintaining Physical Health", "cmit_number": null, "part": "C", "domain": "HD1", "weight": 1.0, "direction": "higher", "star_value": 2.0, "raw_value": 68.0, "four_star_line": 72.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": null, "prior_year_measure_id": null, "yoy_change": null, "series_break": true, "series_break_kind": "new_measure", "series_break_note": "CMS changed this measure this year; last year's star is not comparable" }, { "measure_id": "C05", "measure_identity_key": "c:improving_or_maintaining_mental_health", "measure_name": "Improving or Maintaining Mental Health", "canonical_name": "Improving or Maintaining Mental Health", "cmit_number": null, "part": "C", "domain": "HD1", "weight": 1.0, "direction": "higher", "star_value": 4.0, "raw_value": 85.0, "four_star_line": 85.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": null, "prior_year_measure_id": null, "yoy_change": null, "series_break": true, "series_break_kind": "new_measure", "series_break_note": "CMS changed this measure this year; last year's star is not comparable" }, { "measure_id": "C06", "measure_identity_key": "c:monitoring_physical_activity", "measure_name": "Monitoring Physical Activity", "canonical_name": "Monitoring Physical Activity", "cmit_number": "00450-01-C-PARTC", "part": "C", "domain": "HD1", "weight": 1.0, "direction": "higher", "star_value": 3.0, "raw_value": 50.0, "four_star_line": 53.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": 3.0, "prior_year_measure_id": "C04", "yoy_change": 0.0 }, { "measure_id": "C07", "measure_identity_key": "c:special_needs_plan_snp_care_management", "measure_name": "Special Needs Plan (SNP) Care Management", "canonical_name": "Special Needs Plan (SNP) Care Management", "cmit_number": "00685-01-C-PARTC", "part": "C", "domain": "HD2", "weight": 1.0, "direction": "higher", "star_value": 4.0, "raw_value": 83.0, "four_star_line": 73.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": 4.0, "prior_year_measure_id": "C05", "yoy_change": 0.0 }, { "measure_id": "C08", "measure_identity_key": "c:care_for_older_adults_medication_review", "measure_name": "Care for Older Adults - Medication Review", "canonical_name": "Care for Older Adults - Medication Review", "cmit_number": "00110-01-C-PARTC", "part": "C", "domain": "HD2", "weight": 1.0, "direction": "higher", "star_value": 5.0, "raw_value": 98.0, "four_star_line": 93.0, "four_star_op": ">=", "four_star_ladder": "ALL", "prior_year_star": 4.0, "prior_year_measure_id": "C06", "yoy_change": 1.0 }, { "measure_id": "C09", "measure_identity_key": "c:care_for_older_adults_pain_assessment", "measure_name": "Care for Older Adults - Pain Assessment", "canonical_name": "Care for Older Adults - Pain Assessment", "cmit_number": "00111-01-C-PARTC", "part": "C", "domain": "HD2", "weight": 1.0, "direction": "higher", "star_value ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_stars` with the inputs as the JSON body. MCP: the tool by name. # get_stars_cutpoints Get Stars Cutpoints · v0.6.1 · medicare Returns CMS-published per-measure star-level cut points (the threshold a contract must reach for stars 2 to 5) for a rating_year, read through the Stars measure spine so a measure keeps its identity across years even when CMS renumbers its code (27 of 33 Part C codes moved for RY2026). TWO SHAPES. Pass measure_id (that year's code, e.g. C09; a trailing ':' as stored is accepted) or measure_identity_key (the stable key, e.g. 'c:controlling_blood_pressure') for ONE measure: value.measure carries the identity, the star_2 to star_5 thresholds with their ops, the prior and next year's code and the ladder direction; value.cutpoints carries the raw CMS rows; include_history=true adds value.history, the same identity's ladder in every rated year (cut point drift). With neither, value.measures is a paged index of the year's measures (limit, offset; default 50 rows) and the answer names the per-measure call. LADDER. CMS calculates MA-PD and PDP Part D cut points separately. The header (value.measure and the index rows) reads the ladder for org_subtype: MA-PD by default (the Medicare Advantage question), PDP for a stand-alone drug plan question; cutpoint_org_subtype names the ladder read, and it is ALL only where CMS published one ladder for every organisation (Part C). org_subtype (MA-PD | PDP | ALL) and star_level (1-5) also filter the raw rows. Use cases: 'what is the 4-star line for Controlling Blood Pressure in RY2027?'; 'how did that line move since RY2024?'; 'how much would contract H1234 need to improve to reach 5 stars on D08?'. SOURCE: CMS Tech Notes Attachment H (Tukey-aware threshold tables) for RY2024+, Attachment H pre-Tukey for RY2017-RY2023, pre-fixed cut points for RY2015-RY2016. RY2027 is CMS's final release (the 2027 Data Tables, 2026-10-08); the plan-preview rows it replaced stay readable as superseded (is_current = false). Spine: medicare_semantic.dim_stars_measure_identity_v7 (tools/ma_brain/stars_measure_spine_publish.py), whose direction flag agrees with CMS's own cut point ladder in every rated year. FLOOR BANDS. Where CMS printed NA for the lowest star bands (some measures in RY2015 and RY2018-2021), the band's op is 'floor' and its threshold is null: every score reaches it. floor_star names the lowest band CMS printed (3 stars on every MA floor ladder, e.g. RY2019 Kidney Disease Monitoring: no 1- or 2-star band, 3 stars at 87% or more; RY2020 Complaints about the Health Plan: 3 stars above 1.29). HOLDINGS ARE NAMED, NEVER IMPLIED. When a rating year holds only ONE Part D ladder the answer says so and which population it is for. A measure with no cut point rows in a year is reported as not held in this edition, with the years held named; CMS publishes cut points every year. Thresholds are served at the precision CMS publishes (float32 storage noise is removed on the wire). **Inputs.** - `rating_year` (required): - `measure_id`: - `measure_identity_key`: - `org_subtype`: - `star_level`: - `include_history`: - `limit`: - `offset`: **Known limits.** - stars_methodology_pdf_uncited **A real answer** (customer seat, 7.21 s, args `{"rating_year":2026,"measure_id":"C14","include_history":true}`): ```json { "value": { "found": true, "rating_year": 2026, "shape": "measure", "measure": { "measure_id": "C14", "measure_identity_key": "c:controlling_blood_pressure", "canonical_name": "Controlling Blood Pressure", "part": "C", "domain": "HD2", "weight": 3.0, "direction": "higher", "direction_latest": "higher", "ladder_direction": "ascending", "prior_year_measure_id": "C11", "next_year_measure_id": "C14", "code_moved": true, "is_new_this_year": false, "is_retired": false, "cmit_number": "00167-02-C-PARTC", "has_cutpoints": true, "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 67.0, "op": ">=" }, "star_3": { "threshold": 75.0, "op": ">=" }, "star_4": { "threshold": 80.0, "op": ">=" }, "star_5": { "threshold": 86.0, "op": ">=" } }, "ladders_held": [ "ALL" ] }, "cutpoints": [ { "measure_id": "C14", "star_level": 1, "org_subtype": "ALL", "threshold_lower_bound": null, "threshold_upper_bound": 67.0, "threshold_lower_op": null, "threshold_upper_op": "<", "raw_threshold_text": "< 67 %" }, { "measure_id": "C14", "star_level": 2, "org_subtype": "ALL", "threshold_lower_bound": 67.0, "threshold_upper_bound": 75.0, "threshold_lower_op": ">=", "threshold_upper_op": "<", "raw_threshold_text": ">= 67 % to < 75 %" }, { "measure_id": "C14", "star_level": 3, "org_subtype": "ALL", "threshold_lower_bound": 75.0, "threshold_upper_bound": 80.0, "threshold_lower_op": ">=", "threshold_upper_op": "<", "raw_threshold_text": ">= 75 % to < 80 %" }, { "measure_id": "C14", "star_level": 4, "org_subtype": "ALL", "threshold_lower_bound": 80.0, "threshold_upper_bound": 86.0, "threshold_lower_op": ">=", "threshold_upper_op": "<", "raw_threshold_text": ">= 80 % to < 86 %" }, { "measure_id": "C14", "star_level": 5, "org_subtype": "ALL", "threshold_lower_bound": 86.0, "threshold_upper_bound": null, "threshold_lower_op": ">=", "threshold_upper_op": null, "raw_threshold_text": ">= 86 %" } ], "total_cutpoints_returned": 5, "history": [ { "rating_year": 2015, "measure_id": "C18", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 42.0, "op": ">=" }, "star_3": { "threshold": 53.0, "op": ">=" }, "star_4": { "threshold": 63.0, "op": ">=" }, "star_5": { "threshold": 75.0, "op": ">=" } } }, { "rating_year": 2016, "measure_id": "C16", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 47.0, "op": ">=" }, "star_3": { "threshold": 62.0, "op": ">=" }, "star_4": { "threshold": 75.0, "op": ">=" }, "star_5": { "threshold": 82.0, "op": ">=" } } }, { "rating_year": 2017, "measure_id": "C16", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 38.0, "op": ">=" }, "star_3": { "threshold": 56.0, "op": ">=" }, "star_4": { "threshold": 64.0, "op": ">=" }, "star_5": { "threshold": 75.0, "op": ">=" } } }, { "rating_year": 2018, "measure_id": "C16", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 55.0, "op": ">=" }, "star_3": { "threshold": 67.0, "op": ">=" }, "star_4": { "threshold": 75.0, "op": ">=" }, "star_5": { "threshold": 86.0, "op": ">=" } } }, { "rating_year": 2019, "measure_id": "C16", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 51.0, "op": ">=" }, "star_3": { "threshold": 62.0, "op": ">=" }, "star_4": { "threshold": 75.0, "op": ">=" }, "star_5": { "threshold": 82.0, "op": ">=" } } }, { "rating_year": 2023, "measure_id": "C12", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 48.0, "op": ">=" }, "star_3": { "threshold": 63.0, "op": ">=" }, "star_4": { "threshold": 73.0, "op": ">=" }, "star_5": { "threshold": 80.0, "op": ">=" } } }, { "rating_year": 2024, "measure_id": "C11", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 58.0, "op": ">=" }, "star_3": { "threshold": 68.0, "op": ">=" }, "star_4": { "threshold": 74.0, "op": ">=" }, "star_5": { "threshold": 82.0, "op": ">=" } } }, { "rating_year": 2025, "measure_id": "C11", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 69.0, "op": ">=" }, "star_3": { "threshold": 74.0, "op": ">=" }, "star_4": { "threshold": 80.0, "op": ">=" }, "star_5": { "threshold": 85.0, "op": ">=" } } }, { "rating_year": 2026, "measure_id": "C14", "ladder_direction": "ascending", "cutpoint_org_subtype": "ALL", "thresholds": { "star_2": { "threshold": 67.0, "op": ">=" }, "star_3": { "threshold": 75.0, "op": ">=" }, "star_4": { ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_stars_cutpoints` with the inputs as the JSON body. MCP: the tool by name. # get_stars_rollup Get Stars Rollup · v1.2.0 · medicare MA Star Ratings by parent, product type or state, year over year. For a rating year against the year before: members in rated and unrated contracts, the member-weighted Overall star, the share of members (and of contracts) at 4 stars or more, and members by Overall star. Optionally the weighted measure star for a measure group, like for like. ARGUMENTS: rating_year (default the newest with Overall stars), compare_year (default rating_year minus 1), group_by (national | parent | product_type | parent_by_product | state | state_by_product), parent (filter: part of the parent organization's name, e.g. 'UnitedHealth'), product_type (filter: nonsnp_hmo | nonsnp_ppo | dsnp_hmo | dsnp_ppo | csnp_hmo | csnp_ppo | isnp | other), state (filter: two-letter code), measure_group (optional: all | part_c | part_d | patient_safety | domain: | source: | measure:), limit (default 50, largest rated members first). RETURNS value.rows (one per group), each with members_rated, members_unrated, contracts_rated, contracts_unrated, pct_members_4plus, wtd_avg_star, pct_contracts_4plus, members_by_star, prior (the same fields for compare_year) and change; with measure_group, a measure_group block {measures, contracts, wtd_measure_star, wtd_measure_star_prior, change}. value.summary is the national row for the same filters, with each year's weight month. RULES THE TOOL ENFORCES: rating year Y is weighted by December of the payment year (Y+1), or the latest month when that December is not published, and says which (the certified house convention); the parent is the enrollment file's parent at the weight month; stand-alone drug plans are out; unrated contracts are counted apart, never as zero stars; product types are the fixed buckets (non-SNP, D-SNP, C-SNP by HMO and PPO; I-SNP; other), never pooled; a star belongs to the contract, so a product type or state row weights the contract's star by its members there; a measure group change compares the same contracts, measures, weights (the rating year's) and members, and leaves out new measures, re-specified measures and the improvement measures. Measure stars are CMS's normalization; raw scores are never averaged across measures. SOURCE: CMS Part C and D Star Ratings Data Tables and CMS monthly enrollment (contract, plan, SNP and county files). **Inputs.** - `rating_year`: - `compare_year`: - `group_by`: - `parent`: - `product_type`: - `state`: - `measure_group`: - `limit`: **A real answer** (customer seat, 4.8 s, args `{"rating_year":2024,"group_by":"parent","measure_group":"patient_safety","limit":3}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "rating_year": 2024, "compare_year": 2023, "pays_in": 2025, "group_by": "parent", "groups": 164, "weight_month": "2025-12", "weight_month_prior": "2024-12", "weight_basis": "final (payment-year December)", "enrollment_grain": "contract", "national": { "members_rated": 34047153, "members_unrated": 1442141, "contracts_rated": 478, "contracts_unrated": 207, "pct_members_4plus": 81.89, "wtd_avg_star": 4.162, "pct_contracts_4plus": 48.74, "members_by_star": { "5.0": 2655935, "4.5": 13791863, "4.0": 11434301, "3.5": 4366041, "3.0": 1678857, "2.5": 118462, "2.0": 1694 } }, "national_prior": { "members_rated": 32988614, "members_unrated": 1294153, "contracts_rated": 472, "contracts_unrated": 277, "pct_members_4plus": 76.81, "wtd_avg_star": 4.213, "pct_contracts_4plus": 54.24, "members_by_star": { "5.0": 6746350, "4.5": 10676726, "4.0": 7915488, "3.5": 5688003, "3.0": 1494600, "2.5": 439548, "2.0": 27899 } }, "change": { "pct_members_4plus_points": 5.08, "wtd_avg_star": -0.051, "pct_contracts_4plus_points": -5.5 }, "unit": "member_weighted_stars", "measure_group": { "group": "patient_safety", "measures": [ { "k": "d:medication_adherence_for_cholesterol_statins", "name": "Medication Adherence for Cholesterol (Statins)", "weight": 3.0 }, { "k": "d:medication_adherence_for_diabetes_medications", "name": "Medication Adherence for Diabetes Medications", "weight": 3.0 }, { "k": "d:medication_adherence_for_hypertension_ras_antagonists", "name": "Medication Adherence for Hypertension (RAS antagonists)", "weight": 3.0 }, { "k": "d:statin_use_in_persons_with_diabetes_supd", "name": "Statin Use in Persons with Diabetes (SUPD)", "weight": 1.0 } ], "national": { "contracts": 509, "wtd_measure_star": 3.665, "wtd_measure_star_prior": 3.546, "change": 0.119, "measures": 4 } } }, "rows": [ { "parent": "UnitedHealth Group, Inc.", "members_rated": 10141732, "members_unrated": 80530, "contracts_rated": 52, "contracts_unrated": 7, "pct_members_4plus": 86.84, "wtd_avg_star": 4.261, "pct_contracts_4plus": 63.46, "members_by_star": { "5.0": 490881, "4.5": 5729857, "4.0": 2586546, "3.5": 1259883, "3.0": 74565 }, "prior": { "members_rated": 9513775, "members_unrated": 25897, "contracts_rated": 62, "contracts_unrated": 8, "pct_members_4plus": 75.73, "wtd_avg_star": 4.23, "pct_contracts_4plus": 69.35, "members_by_star": { "5.0": 2453448, "4.5": 1889166, "4.0": 2862622, "3.5": 2198720, "3.0": 108011, "2.5": 1808 } }, "change": { "pct_members_4plus_points": 11.11, "wtd_avg_star": 0.031, "pct_contracts_4plus_points": -5.89 }, "measure_group": { "contracts": 53, "wtd_measure_star": 3.581, "wtd_measure_star_prior": 3.509, "change": 0.072, "measures": 4 } }, { "parent": "Humana Inc.", "members_rated": 5823113, "members_unrated": 15771, "contracts_rated": 30, "contracts_unrated": 5, "pct_members_4plus": 97.17, "wtd_avg_star": 4.395, "pct_contracts_4plus": 66.67, "members_by_star": { "5.0": 837786, "4.5": 3119768, "4.0": 1700724, "3.5": 133713, "3.0": 31122 }, "prior": { "members_rated": 6210002, "members_unrated": 29999, "contracts_rated": 39, "contracts_unrated": 6, "pct_members_4plus": 98.73, "wtd_avg_star": 4.382, "pct_contracts_4plus": 76.92, "members_by_star": { "5.0": 354711, "4.5": 4138034, "4.0": 1638447, "3.5": 59057, "3.0": 19753 } }, "change": { "pct_members_4plus_points": -1.56, "wtd_avg_star": 0.013, "pct_contracts_4plus_points": -10.25 }, "measure_group": { "contracts": 31, "wtd_measure_star": 3.498, "wtd_measure_star_prior": 3.508, "change": -0.009, "measures": 4 } }, { "parent": "CVS Health Corporation", "members_rated": 4049616, "members_unrated": 177548, "contracts_rated": 38, "contracts_unrated": 6, "pct_members_4plus": 92.89, "wtd_avg_star": 4.18, "pct_contracts_4plus": 63.16, "members_by_star": { "5.0": 3086, "4.5": 1798777, "4.0": 1959936, "3.5": 227883, "3.0": 59934 }, "prior": { "members_rated": 4216656, "members_unrated": 187946, "contracts_rated": 37, "contracts_unrated": 5, "pct_members_4plus": 56.18, "wtd_avg_star": 3.964, "pct_contracts_4plus": 37.84, "members_by_star": { "4.5": 1652124, "4.0": 716722, "3.5": 1735874, "3.0": 111936 } }, "change": { "pct_members_4plus_points": 36.71, "wtd_avg_star": 0.216, "pct_contracts_4plus_points": 25.32 }, "measure_group": { "contracts": 38, "wtd_measure_star": 3.796, "wtd_measure_star_prior": 3.513, "change": 0.284, "measures": 4 } } ], "row_counts": { "rows": { "matched": 164, "returned": 3, "truncated": true, "limit": 3, "kept": "head" } }, "query": { "rating_year": 2024, "compare_year": 2023, "group_by": "parent", "parent": null, "product_type": null, "state": null, "measure_group": "patient_safety", "limit": 3 }, "query_id": "b6930da5-a15c-4268-804c-c0cac0a9a061" }, "unit": "member_weighted_stars", "result_status": "answered_with_caveats", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://get ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_stars_rollup` with the inputs as the JSON body. MCP: the tool by name. # get_volatility_index Get Volatility Index · v1.0.0 · medicare The County Volatility Index, ranked across counties, states or insurers: per 100 members of individual Medicare Advantage plans the September before a plan year, those whose plan ended, who were moved into another plan by their insurer, or whose plan stayed and made a material cut (premium up $10+ a month, in-network MOOP up $500+, comprehensive dental max down $500+ or dropped). Use it for 'most volatile counties in Texas for 2027', 'which insurers' members faced the most change', 'regular PPOs vs HMOs', 'which counties settled since 2023'. For ONE county's full picture (its index every year, by product type, its rank and the plans behind it) use get_county_view with sections=volatility. ARGS: level (county default, state, parent = CMS parent organization the September before); state (two letters, narrows counties or parents to one state); product (all default, or regular_hmo, regular_ppo, regular_other, dsnp_hmo, dsnp_ppo, csnp_hmo, csnp_ppo, isnp_hmo, isnp_ppo); year (plan year 2016-2027, default 2027); compare_year (default 2023; 'none' to omit); order (most default, or least); min_members (default 250; counties also need 2+ plans to be ranked); limit (default 25, max 200) and offset. RETURNS value.rows (rank, name, members, plans, index, plan ended / moved / material cut / gains per 100, the compare-year index and the change), value.scope (the same figures for the whole state or nation), value.nation, value.summary (how many entities passed the size rule). RULES THE TOOL ENFORCES: every year is plans as filed against the prior September's members, what members face, not outcomes; before 2021 only the exit part (plan ended + moved) exists and is never called the index; rates are sums of members, county indexes are never averaged; small counties are counted in totals but never ranked; special-needs plans are their own product types; plans that only followed CMS's MOOP ceiling are their own line, never a cut. SOURCE: Vlada analysis of the CMS plan crosswalk, Landscape, plan benefit filings and monthly enrollment by plan and county (County Volatility Index v4, Report 2). **Inputs.** - `level`: - `state`: - `product`: - `year`: - `compare_year`: - `order`: - `min_members`: - `limit`: - `offset`: **Known limits.** - Every year is plans as filed against the prior September's members: what members face, not where they go. - The benefit part is a floor: over-the-counter and Part B giveback cuts are not counted. - Benefits are scored from 2021; earlier years carry plans ending and members moved only. **A real answer** (customer seat, 2.44 s, args `{"state":"MN"}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "level": "county", "state": "MN", "product": "all", "product_label": "all individual plans", "year": 2027, "compare_year": 2023, "order": "most", "ranked_on": "index", "entities_ranked": 82, "entities_below_size_rule": 5, "size_rule": "250+ members the September before and 2+ plans", "unit": "members per 100" }, "rows": [ { "county": "Chippewa", "state": "MN", "county_fips": "27023", "plans": 10, "members": 1285, "index": 98.9, "exit_part": 98.9, "plan_ended_per_100": 98.9, "moved_per_100": 0.0, "material_cut_per_100": 0.0, "gains_per_100": 1.1, "ceiling_to_ceiling_members": 14, "index_2023": 76.3, "members_compare_year": 1127, "change": 22.6, "rank": 1 }, { "county": "Jackson", "state": "MN", "county_fips": "27063", "plans": 8, "members": 908, "index": 98.7, "exit_part": 98.7, "plan_ended_per_100": 98.7, "moved_per_100": 0.0, "material_cut_per_100": 0.0, "gains_per_100": 1.3, "ceiling_to_ceiling_members": 12, "index_2023": 79.7, "members_compare_year": 783, "change": 19.0, "rank": 2 }, { "county": "Lac qui Parle", "state": "MN", "county_fips": "27073", "plans": 8, "members": 898, "index": 98.1, "exit_part": 98.1, "plan_ended_per_100": 98.1, "moved_per_100": 0.0, "material_cut_per_100": 0.0, "gains_per_100": 1.9, "ceiling_to_ceiling_members": 17, "index_2023": 62.5, "members_compare_year": 773, "change": 35.6, "rank": 3 }, { "county": "Kandiyohi", "state": "MN", "county_fips": "27067", "plans": 15, "members": 5981, "index": 97.9, "exit_part": 77.4, "plan_ended_per_100": 77.4, "moved_per_100": 0.0, "material_cut_per_100": 20.4, "gains_per_100": 2.1, "ceiling_to_ceiling_members": 111, "index_2023": 63.2, "members_compare_year": 4829, "change": 34.7, "rank": 4 }, { "county": "Nobles", "state": "MN", "county_fips": "27105", "plans": 11, "members": 1458, "index": 96.9, "exit_part": 88.6, "plan_ended_per_100": 88.6, "moved_per_100": 0.0, "material_cut_per_100": 8.3, "gains_per_100": 3.1, "ceiling_to_ceiling_members": 45, "index_2023": 63.6, "members_compare_year": 1320, "change": 33.3, "rank": 5 }, { "county": "Sherburne", "state": "MN", "county_fips": "27141", "plans": 16, "members": 9664, "index": 96.8, "exit_part": 79.9, "plan_ended_per_100": 74.1, "moved_per_100": 5.8, "material_cut_per_100": 16.9, "gains_per_100": 5.3, "ceiling_to_ceiling_members": 196, "index_2023": 5.8, "members_compare_year": 7664, "change": 91.0, "rank": 6 }, { "county": "Cass", "state": "MN", "county_fips": "27021", "plans": 15, "members": 5097, "index": 96.6, "exit_part": 80.1, "plan_ended_per_100": 80.1, "moved_per_100": 0.0, "material_cut_per_100": 16.5, "gains_per_100": 4.7, "ceiling_to_ceiling_members": 146, "index_2023": 35.5, "members_compare_year": 4412, "change": 61.1, "rank": 7 }, { "county": "Lincoln", "state": "MN", "county_fips": "27081", "plans": 9, "members": 525, "index": 96.6, "exit_part": 96.6, "plan_ended_per_100": 96.6, "moved_per_100": 0.0, "material_cut_per_100": 0.0, "gains_per_100": 3.4, "ceiling_to_ceiling_members": 0, "index_2023": 52.6, "members_compare_year": 458, "change": 44.0, "rank": 8 }, { "county": "Crow Wing", "state": "MN", "county_fips": "27035", "plans": 11, "members": 11391, "index": 96.5, "exit_part": 95.0, "plan_ended_per_100": 95.0, "moved_per_100": 0.0, "material_cut_per_100": 1.5, "gains_per_100": 5.0, "ceiling_to_ceiling_members": 401, "index_2023": 37.4, "members_compare_year": 9512, "change": 59.1, "rank": 9 }, { "county": "Swift", "state": "MN", "county_fips": "27151", "plans": 12, "members": 1092, "index": 96.5, "exit_part": 89.3, "plan_ended_per_100": 89.3, "moved_per_100": 0.0, "material_cut_per_100": 7.2, "gains_per_100": 3.5, "ceiling_to_ceiling_members": 38, "index_2023": 74.0, "members_compare_year": 895, "change": 22.5, "rank": 10 }, { "county": "Stearns", "state": "MN", "county_fips": "27145", "plans": 16, "members": 17644, "index": 96.3, "exit_part": 77.0, "plan_ended_per_100": 72.7, "moved_per_100": 4.3, "material_cut_per_100": 19.3, "gains_per_100": 5.3, "ceiling_to_ceiling_members": 399, "index_2023": 52.1, "members_compare_year": 14152, "change": 44.2, "rank": 11 }, { "county": "Morrison", "state": "MN", "county_fips": "27097", "plans": 22, "members": 5276, "index": 96.1, "exit_part": 83.0, "plan_ended_per_100": 79.7, "moved_per_100": 3.3, "material_cut_per_100": 13.1, "gains_per_100": 6.1, "ceiling_to_ceiling_members": 206, "index_2023": 43.8, "members_compare_year": 4327, "change": 52.3, "rank": 12 }, { "county": "Redwood", "state": "MN", "county_fips": "27127", "plans": 13, "members": 1732, "index": 96.0, "exit_part": 96.0, "plan_ended_per_100": 96.0, "moved_per_100": 0.0, "material_cut_per_100": 0.0, "gains_per_100": 4.0, "ceiling_to_ceiling_members": 69, "index_2023": 70.0, "members_compare_year": 1380, "change": 26.0, "rank": 13 }, { "county": "Cottonwood", "state": "MN", "county_fips": "27033", "plans": 9, "members": 1271, "index": 96.0, "exit_part": 96.0, "plan_ended_per_100": 96.0, "moved_per_100": 0.0, ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/get_volatility_index` with the inputs as the JSON body. MCP: the tool by name. # is_provider_in_plan Is Provider In Plan · v0.2.0 · medicare Every Medicare Advantage plan whose published directory lists an NPI for a plan year (2026 or 2027): contract, CMS plan id, the source of the listing (the payer's API, the printed directory, a name match with its grade, or the Plan Finder export), the location as listed, and the file and page it came from. Narrow by state or contract. Use cases: 'Which MA plans list NPI 1275507170 for 2027?'; 'Is Dr X in Humana's Florida network?'. A listing is evidence the directory names the NPI; an absence is 'not listed in the published directory' for covered contracts only (an uncovered contract says nothing). Name-matched rows are flagged by grade. The publish is pinned by dataset_id. SOURCE: medicare_bronze.ma_directory_plan_npi_site_v1 (every row names its url, page and raw_sha256). **Inputs.** - `npi` (required): 10-digit NPI. - `plan_year` (required): 2026 or 2027. - `state`: 2-letter state of the listed location; optional. - `contract_id`: Narrow to one contract (H5938); optional. - `limit`: Plans to return (default 50, max 500). **Known limits.** - An NPI absent from every directory is 'not listed' only for the covered contracts (99.1% of 2026 members, 96.1% of 2027 from 2027 sources, stage 21); the open-gap contracts say nothing. - A plan listed through a 2026 directory carried back to 2027 (plan_key_basis *_2026_plan_via_crosswalk) is labelled. **A real answer** (customer seat, 1.46 s, args `{"npi":"1275507170","plan_year":2027,"limit":10}`): ```json { "value": { "found": false, "not_found_reason": "query_failed", "query": { "npi": "1275507170", "plan_year": 2027, "limit": 10 }, "dataset_id": "7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c", "query_ids": [] }, "unit": "plan_network", "vintage": null, "source": { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" }, "caveats": [], "response_hash": "bbb9d16f085e455ad584bd4b36ff0a4f2b68ed4911a836d98dc01990de84321e", "semantic_version": 1, "tool_version": "is_provider_in_plan@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "plan_network", "scope": { "tool": "is_provider_in_plan", "filters": { "npi": "1275507170", "plan_year": 2027, "limit": 10 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included.", "evidence": { "sources": [ { "dataset": "MA plan networks, 2026 and 2027 (Data Tracker): plan year x CMS plan x NPI x listed location", "publisher": "vlada", "catalog_updated_at": "2026-11-02" } ], "response_hash": "bbb9d16f085e455ad584bd4b36ff0a4f2b68ed4911a836d98dc01990de84321e" }, "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/is_provider_in_plan` with the inputs as the JSON body. MCP: the tool by name. # medicare_allowed Medicare Allowed · v0.1.0 · medicare Returns the Medicare allowed amount for ONE billing code (CPT/HCPCS, or an MS-DRG for inpatient) from every Medicare fee schedule that prices it: PFS (professional, national non-facility), OPPS Addendum B (hospital outpatient APC), ASC, CLFS (lab), and IPPS (national DRG amount). Inputs: billing_code (required); optional care_class to pick the setting that fits a site (02_asc, 03_outpatient, 04_urgent_care, 05_imaging, 06_lab, 07_dialysis — the same preference table the care-site price bridge uses for its Medicare floor); optional setting to return one schedule only (PFS_non_facility | OPPS_APC | ASC | CLFS | IPPS_MSDRG_national); optional medicare_year to PIN a schedule vintage (4-digit year; omit it and the LATEST edition held for the chosen schedule is served — an older vintage is never returned unless you pin it); optional limit. RETURNS a detail payload: value.medicare_year and value.setting state the vintage and schedule actually served; value.summary carries the PREFERRED row for the requested care_class (medicare_allowed, medicare_source, medicare_year, billing_class), the latest year held per schedule (latest_year_by_schedule) and whether the year was pinned or resolved (medicare_year_selection), plus the count of schedules that price the code; value.settings lists EVERY schedule row for the code with what it is (fee_schedule, professional vs facility component, site, national basis, locality_adjusted=false, source_table, medicare_year vintage). Every number is NATIONAL — no GPCI / wage-index localisation is applied, and PFS is the NON-FACILITY (office) professional rate. A code priced on no schedule returns found=false ('not priced on these Medicare schedules', never $0). Reads the latest available edition per schedule (vlada_curated.vw_medicare_benchmark_effective per schedule, so an ASC rate is listed beside the OPPS rate for the same code; the underlying M-2 fact tables are read WHERE is_current). SOURCE: CMS PFS RVU + conversion factor, OPPS Addendum B, ASC addendum, CLFS, IPPS Table 5 + base rates. **Inputs.** - `billing_code` (required): - `care_class`: - `setting`: - `medicare_year`: - `limit`: **Known limits.** - National amounts only: no GPCI (PFS) or wage-index (OPPS/ASC/IPPS) localisation. - PFS is the non-facility (office) professional rate; the facility-setting professional rate is not served. - DMEPOS / anesthesia / ESRD schedules are not loaded; a code absent from every served schedule is 'not priced here', not $0. **A real answer** (customer seat, 0.09 s, args `{"billing_code":"70450","medicare_year":2026}`): ```json { "value": { "found": true, "not_found_reason": null, "summary": { "billing_code": "70450", "medicare_allowed": 106.81, "unit": "USD", "medicare_source": "OPPS_APC", "fee_schedule": "OPPS", "component": "facility", "site": "hospital_outpatient", "billing_class": "institutional", "medicare_year": 2026, "basis": "national", "locality_adjusted": false, "preferred_by": "default_setting_order", "schedules_pricing_code": [ "ASC", "OPPS_APC", "PFS_non_facility" ], "schedule_count": 3, "latest_year_by_schedule": { "ASC": 2026, "OPPS_APC": 2026, "PFS_non_facility": 2026 }, "medicare_year_selection": "pinned_by_caller" }, "settings": [ { "billing_code": "70450", "medicare_source": "ASC", "billing_class": "institutional", "medicare_allowed": 57.04, "unit": "USD", "medicare_year": 2026, "fee_schedule": "ASC", "component": "facility", "site": "ambulatory_surgical_center", "basis": "national", "locality_adjusted": false, "note": "ASC addendum payment_rate, national (no wage index)." }, { "billing_code": "70450", "medicare_source": "OPPS_APC", "billing_class": "institutional", "medicare_allowed": 106.81, "unit": "USD", "medicare_year": 2026, "fee_schedule": "OPPS", "component": "facility", "site": "hospital_outpatient", "basis": "national", "locality_adjusted": false, "note": "Addendum B APC payment_rate, national (no wage index). Do NOT benchmark a facility charge against PFS." }, { "billing_code": "70450", "medicare_source": "PFS_non_facility", "billing_class": "professional", "medicare_allowed": 106.55, "unit": "USD", "medicare_year": 2026, "fee_schedule": "PFS", "component": "professional", "site": "non_facility", "basis": "national", "locality_adjusted": false, "note": "total_non_facility_rvu x conversion factor, modifier '' (global), default payment track; NOT GPCI/locality-adjusted; the FACILITY professional rate is lower and is not returned here." } ], "row_counts": { "settings": { "matched": 3, "returned": 3, "truncated": false, "limit": 200, "kept": "head" } }, "query": { "billing_code": "70450", "care_class": null, "setting": null, "medicare_year": 2026, "limit": 200 }, "query_id": "fe3964e7-ddce-4c17-ba5b-603ef49b65ce", "medicare_year": 2026, "setting": "OPPS_APC" }, "unit": "medicare_allowed_detail", "result_status": "answered", "methodology_era": null, "methodology_blend_factors": null, "source": { "source_url": "medicare://medicare_allowed" }, "vintage": "as_restated", "cms_vintage_sequence": 1, "parse_revision": 1, "as_of_observed": null, "as_of_asserted": null, "as_of_effective": null, "caveats": [], "confidence": null, "finality_confidence": null, "response_hash": "4f141a99ed4dd3d76bac6700a99f8babd2280d0169a7bfe8e03f40c75745a498", "semantic_version": 1, "tool_version": "0.1.0", "parser_artifact_hash": "0b11193fb97519397f53ffe2917938b1bf95f408fccb5bae6d356b17ef22a148", "parser_artifact_hash_basis": "tool_source_sha256", "signature": null, "tenant_id": "probe-customer-canary", "status": "complete", "audit_id": "837a66a3-1467-4665-a310-6d8a580181ef", "timestamp": "2026-11-09T21:29:02.787809Z", "request_id": "bb41e214-bd02-4cea-a098-59d94aa51e65", "audience": "customer", "answer": { "value_ref": "value", "unit": "medicare_allowed_detail", "scope": { "tool": "medicare_allowed", "filters": { "billing_code": "70450", "medicare_year": 2026 } } }, "method": "Read from the CMS publication. The published values are reported as published, with no adjustment or modelling applied.", "evidence": { "query_id": "fe3964e7-ddce-4c17-ba5b-603ef49b65ce", "response_hash": "4f141a99ed4dd3d76bac6700a99f8babd2280d0169a7bfe8e03f40c75745a498", "audit_id": "837a66a3-1467-4665-a310-6d8a580181ef", "request_id": "bb41e214-bd02-4cea-a098-59d94aa51e65" } } ``` REST: `POST https://api.vladahealth.com/v1/tools/medicare_allowed` with the inputs as the JSON body. MCP: the tool by name. # prove_ma_enrollment_trend Prove MA Enrollment Trend · v0.1.0 · medicare Execute a bounded MA enrollment-trend proof. Returns the answer value plus a receipt with substrate, source snapshots, filters, guardrails, caveats, input hash, response hash, and replay pointer. Reads three silver tables (CPSC county, monthly-enrollment-plan, plan-crosswalks) at their published snapshots. **Inputs.** - `parent_org` (required): - `year_range_start` (required): - `year_range_end` (required): - `states`: - `plan_types`: - `snp_types`: - `acknowledge_era_break`: Retained for backward compat. The pre/post-2018 grain pivot was empirically falsified 2026-05-11; no era break is enforced. See docs/research/2026-05-11-cpsc-verification-ledger.md. - `max_contributing_rows`: **A real answer** (customer seat, 4.48 s, args `{"parent_org":"Humana Inc.","year_range_start":2024,"year_range_end":2024,"states":["FL"]}`): ```json { "value": { "proof_kind": "ma_enrollment_trend", "parent_org_query": "Humana Inc.", "parent_org_canonical": "Humana Inc.", "year_range": [ 2024, 2024 ], "enrollment_count_months_point": 12402836, "enrollment_count_months_lower": 12402836, "enrollment_count_months_upper": 13236536, "suppressed_cell_count": 83370, "contributing_row_count": 99615, "per_month_count": 12, "row_count": 99615, "status": "ok", "verdict": "ok" }, "unit": "enrollment_count_months", "vintage": "2024-2024", "source": { "dataset": "MA / Part D monthly enrollment reports (contract, plan, CPSC county, penetration, SNP, service area)", "publisher": "cms", "catalog_updated_at": "2026-05-13" }, "caveats": [], "response_hash": "4b564c9644d93ce3f133fdc9079aa8b5081eaa3fe5225a0fff7704fe4c73dffe", "semantic_version": 1, "tool_version": "prove_ma_enrollment_trend@0.1.0", "explanation": null, "status": "complete", "proof_id": "maenrolltrendproof_b3116de04f64d91d", "receipt": { "receipt_version": "ma_enrollment_trend_receipt.v0", "proof_id": "maenrolltrendproof_b3116de04f64d91d", "substrate": "medicare_advantage", "proof_kind": "ma_enrollment_trend", "tool_name": "prove_ma_enrollment_trend", "tool_version": "0.1.0", "source_descriptor": { "tables": [ "medicare_silver.enrollment_monthly_county", "medicare_silver.enrollment_monthly_plan", "medicare_silver.monthly_contract_enrollment_summary", "medicare_silver.plan_crosswalks_annual" ], "primary_table": "medicare_silver.enrollment_monthly_plan", "geography_table": "medicare_silver.enrollment_monthly_county", "lineage_table": "medicare_silver.plan_crosswalks_annual" }, "read_snapshot_set": { "medicare_silver.enrollment_monthly_county": "3859245805449167937", "medicare_silver.enrollment_monthly_plan": "635122163549307464", "medicare_silver.plan_crosswalks_annual": "4686686039624534381", "medicare_silver.monthly_contract_enrollment_summary": "1413691709052438763" }, "filters": { "parent_org": "Humana Inc.", "year_range_start": 2024, "year_range_end": 2024, "states": [ "FL" ], "acknowledge_era_break": false }, "guardrails": { "ma_vs_pdp_scope": "ma_only_or_explicit_pdp_inclusion", "suppression_bounds_applied": "lower_upper_bounds_required_on_suppressed_cells", "lineage_snapshot_required": "plan_crosswalks_snapshot_pinned", "published_snapshot_required": "silver_published_tag_resolved", "county_native_key_required": "cpsc_county_ssa_non_null", "no_unbounded_current_head_reads": "all_reads_use_pinned_snapshot" }, "known_gap_status": { "cpsc_small_cell_suppression": { "registry_status": "active", "active": true, "gating_type": "suppressed_below_threshold", "resolved_at": null }, "cpsc_2011_04_broomfield_duplicate_native_keys": { "registry_status": "resolved", "active": false, "gating_type": "parser_strategy_required", "resolved_at": null }, "cpsc_2008_bareform_columns": { "registry_status": "resolved", "active": false, "gating_type": "parser_strategy_required", "resolved_at": null }, "enrollment_grain_pre_2018": { "registry_status": "falsified", "active": false, "gating_type": "disabled", "resolved_at": null }, "cpsc_2016_12_publication_gap": { "registry_status": "resolved", "active": false, "gating_type": "disabled", "resolved_at": "2026-05-11" }, "cpsc_2021_06_wrong_file_uploaded": { "registry_status": "resolved", "active": false, "gating_type": "disabled", "resolved_at": "2026-05-11" }, "cpsc_2025_03_wrong_file_uploaded": { "registry_status": "resolved", "active": false, "gating_type": "disabled", "resolved_at": "2026-05-11" } }, "plan_or_query_evidence": { "max_contributing_rows": 5000000, "evidence_kind": "stub_pending_silver_planner" }, "row_count": 99615, "status": "ok", "caveats": [ "lineage_via_plan_crosswalks_when_crossing_plan_year_boundary", "ma_enrollment_only_not_ffs", "suppression_bounds_required_for_county_rollups", "suppression_warning_present" ], "input_hash": "b3116de04f64d91db3f2cb28ded3ba9e03e0571ee9da7e913f0e208a9a8171bc", "response_hash": "4b564c9644d93ce3f133fdc9079aa8b5081eaa3fe5225a0fff7704fe4c73dffe", "replay_pointer": { "tool": "prove_ma_enrollment_trend", "inputs": { "parent_org": "Humana Inc.", "year_range_start": 2024, "year_range_end": 2024, "states": [ "FL" ], "acknowledge_era_break": false, "max_contributing_rows": 5000000 }, "receipt_id": "maerp_4b564c9644d93ce3f133fdc9", "athena_query_id_first_run": "cfc88f9b-b142-4302-abc1-9913c18e9273" }, "receipt_id": "maerp_4b564c9644d93ce3f133fdc9" }, "audience": "customer", "answer": { "value_ref": "value", "unit": "enrollment_count_months", "scope": { "tool": "prove_ma_enrollment_trend", "filters": { "parent_org": "Humana Inc.", "year_range_start": 2024, "year_range_end": 2024, "acknowledge_era_break": false, "max_contributing_rows": 5000000 } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included. You did not specify acknowledge_era_break; no was used. You did not specify max_contributing_rows; 5000000 was used.", "evidence": { "sources": [ { "dataset": "MA / Part D monthly enrollment reports (contract, plan, CPSC county, penetration, SNP, service area)", "publisher": "cms", "catalog_updated_at": "2026-05-13" } ], "response_hash": "4b564c9644d93ce3f133fdc9079aa8b5081eaa3fe5225a0fff7704fe4c73dffe" }, "defaults_applied": [ { "param": "acknowledge_era_break", "used": false, "reason": "Retained for backward compat" }, { "param": "max_contributing_rows", "used": 5000000, "reason": "tool default" } ] } ``` REST: `POST https://api.vladahealth.com/v1/tools/prove_ma_enrollment_trend` with the inputs as the JSON body. MCP: the tool by name. # resolve_provider Resolve Provider · v1.0.0 · provider_identity Resolve a provider's identity: an NPI, an EIN, or an organisation name (+ state) -> the Medicare CCN(s) it maps to, the CCN's provider type from the CCN authority (vlada_curated.dim_provider_ccn: 101,528 CCNs across hospitals, SNFs, home health, hospice, FQHC, RHC, ASC, dialysis, IRF, LTCH), the NPPES record, the PECOS Medicare enrollment(s) with organisation name and provider type, and (include_ownership, default true) the PECOS ownership edges — owners, percentage, and the private-equity / REIT / holding-company / chain flags. Every candidate carries its match method, a confidence, and the source table per field. NPI->CCN is resolved by AGREEMENT across two bridges (provider_facility_xref, dim_hospital_external); if they disagree the answer is ambiguous_conflict with both candidates and no resolved CCN, never a guess. An unknown NPI returns unresolved with the reason, not an error. EIN and name resolution reach hospitals only (the estate's EIN-bearing roster); a shared-system EIN lists every CCN as a candidate. Each candidate carries ccn, npi, hospital_name and health_system at its top level; resolution carries resolved_npi and resolved_health_system; repeated PECOS rows are collapsed to one per enrollment. **Inputs.** - `npi`: - `ein`: - `name`: - `state`: - `include_ownership`: **Known limits.** - NPI->CCN recall ~87% (bridge union, measured 2026-06 by the employer-book harness); individual NPIs and non-hospital organisations usually resolve to PECOS + NPPES only. - EIN and name resolution reach hospitals (dim_hospital_external) plus PECOS org names; the non-hospital rosters carry no EIN. - provider_type follows the ten CMS rosters in dim_provider_ccn; a provider type we hold no roster for is absent from the authority. - Ownership edges are keyed on PECOS enrollment_id and are self-reported; percentage can be null for indirect interests. **A real answer** (customer seat, 16.24 s, args `{"npi":"1477902641","include_ownership":true}`): ```json { "value": { "found": true, "not_found_reason": null, "query": { "npi": "1477902641", "ein": null, "name": null, "state": null, "include_ownership": true }, "resolution": { "status": "resolved", "resolved_ccn": "070005", "resolved_npi": "1477902641", "resolved_health_system": "Prospect Medical Holdings", "confidence": 0.9, "key_type": "npi" }, "candidates": [ { "ccn": "070005", "npi": "1477902641", "hospital_name": null, "city": null, "state_code": null, "health_system": "Prospect Medical Holdings", "health_system_id": "HSI00000851", "shares_npi_with_ccns": [], "provider_type": "hospital", "all_provider_types": "hospital", "provider_type_count": 1, "in_ccn_authority": true, "confidence": 0.9, "sources": [] } ], "nppes": { "npi": "1477902641", "entity_type": "2", "name": "PROSPECT WATERBURY, INC.", "first_name": null, "last_name": null, "credential": null, "city": "WATERBURY", "state": "CT", "postal_code": "067082613", "taxonomy": "282N00000X" }, "pecos_enrollments": [ { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": null, "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2018-12-31" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": null, "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2017-10-30" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2023-03-31" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": "N", "asserted_at": "2026-06-28" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": null, "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2020-12-31" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2021-10-05" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": null, "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2019-10-01" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2022-09-30" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": "N", "asserted_at": "2025-10-01" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2024-10-07" }, { "enrollment_id": "O20160730000005", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": "N", "asserted_at": "2026-07-01" }, { "enrollment_id": "O20160929001327", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2024-10-07" }, { "enrollment_id": "O20160929001327", "associate_id": "4688967581", "org_name": "PROSPECT WATERBURY INC", "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2023-03-31" }, { "enrollment_id": "O20160929001327", "associate_id": "4688967581", "org_name": null, "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2020-12-31" }, { "enrollment_id": "O20160929001327", "associate_id": "4688967581", "org_name": null, "individual_name": null, "provider_type_code": "00-09", "provider_type_desc": "PART A PROVIDER - HOSPITAL", "state": "CT", "multiple_npi_flag": null, "asserted_at": "2018-12-31" }, { "enrollment_id": "O20160929001327", "associa ... (truncated) ``` REST: `POST https://api.vladahealth.com/v1/tools/resolve_provider` with the inputs as the JSON body. MCP: the tool by name. # get_medicaid_rate Get Medicaid Rate · v0.2.0 · state State Medicaid fee-for-service (FFS) rates by code from every state's published fee schedules, with history, cross-state comparison and the Medicare benchmark. Five modes: lookup (state + code(s): the rate in force today or on as_of, with its unit, type, schedule, effective date and source), compare (one code across every state that publishes it, on one basis, with the national median, quartiles, ratio and rank), trend (one state x code: the dated rates by key with the change at each step), changes (every rate that moved in a state in a date window: increase, decrease, new_code, pct_change), vs_medicare (a state's Medicaid rates as a share of the Medicare PFS non-facility rate for the same codes). Use cases: 'What does Arizona Medicaid pay for 97153 (ABA)?'; 'Which states pay the most for T1019 personal care per hour?'; 'How has Ohio's H2019 rate moved since 2021?'; 'What changed in Florida's behavioral health rates this year?'; 'How does Texas Medicaid compare with Medicare for 99213?'. A rate is dated by its own effective date (schedules reprint old rates in each edition; the latest edition printing a dated rate wins; in force = the latest dated rate on or before the day, for a key the current edition still prints). Every rate names its unit (rate_unit, unit_minutes) and type (fee, per_diem, percent_of_charges, conversion_factor, manual_pricing, not_covered); a key with more than one rate for the same date is served flagged ambiguous_key and never averaged; compare keeps one basis (per_hour for time units) and lists other-basis states as not compared. These are the state's FFS maximums, never managed-care negotiated rates. Coverage is state by state (47 states on 2026-11-02): a state with no rows is not built yet, not zero. SOURCE: vlada_curated.vw_state_medicaid_rate_v2 (one row per published rate with its source file sha256 and locator) and the States lane's views vw_state_medicaid_rate_change_v1, _compare_v1, _vs_medicare_v1 (M2). **Inputs.** - `mode`: lookup (state + code(s)), compare (code across states), trend (state + code by dated rate), changes (state, date window), vs_medicare (state [+ code]: Medicaid as a share of Medicare PFS). - `state`: 2-letter state code (AZ). Required for lookup, trend, changes, vs_medicare. - `code`: One procedure / service code (97153, H2019, T1019). Required for compare and trend. - `codes`: Up to 25 codes for lookup, in place of code. - `code_system`: cpt | hcpcs | local | drg | apc ... as the schedule labels it; optional (compare maps 5-character CPT/HCPCS to HCPCS). - `service_line`: Filter: aba_ei, behavioral_health, sud, hcbs, idd, professional, ... - `program`: Filter: the program / waiver as the schedule names it (contains match). - `provider_type`: Filter: the provider type as the schedule names it (contains match). - `modifiers`: Modifier string as printed (HO, 'HM U1'); '' for no modifier. compare defaults to no modifier. - `as_of`: YYYY-MM-DD: the rate in force on that day (lookup). Default: today. - `date_from`: YYYY-MM-DD (changes, on the rate's effective date). Default: 24 months before date_to. - `date_to`: YYYY-MM-DD (changes). Default: today. - `limit`: Rows to return (default 50, max 500). **Known limits.** - Coverage is state by state (47 states on 2026-11-02; 147 of 255 state x service-line cells served): a state or line with no rows is not built yet, not zero. - A printing that holds more than one rate for the same date is served flagged ambiguous_key with its low and high, and kept out of compare (1 key on 2026-11-02 after the dated rule; 11,518 when keyed by edition). - History depth varies by state (back to 2021 in 71 of 147 cells; some schedules one dated rate). - vs_medicare joins only no-modifier, single-rate keys with a per-service / unit / visit / 15_min unit and a 5-character CPT/HCPCS code; the Medicare side is PFS non-facility, latest year, unweighted mean of the state's localities, so a per-15-minute Medicaid rate against a per-service Medicare amount is not like for like. - compare and trend read one code at a time; lookup and vs_medicare take up to 25 codes. **A real answer** (customer seat, 1.6 s, args `{"mode":"lookup","state":"AZ","code":"97153"}`): ```json { "value": { "found": false, "not_found_reason": "query_failed", "mode": "lookup", "query": { "mode": "lookup", "state": "AZ", "code": "97153", "limit": 50 }, "rates": [], "query_ids": [] }, "unit": "medicaid_ffs_rate", "vintage": null, "source": { "dataset": "States lane M2: FFS rate book", "publisher": "vlada", "catalog_updated_at": "2026-10-29" }, "caveats": [ "These are the state's published Medicaid fee-for-service maximums, never what a managed-care plan pays a provider." ], "response_hash": "d0b6bd345dec7296c7eeb1f6834a1ec1418da9e0f77474145e786d84c5253517", "semantic_version": 1, "tool_version": "get_medicaid_rate@0.2.0", "explanation": null, "status": "complete", "audience": "customer", "answer": { "value_ref": "value", "unit": "medicaid_ffs_rate", "scope": { "tool": "get_medicaid_rate", "filters": { "mode": "lookup", "state": "AZ", "code": "97153" } } }, "method": "Computed over the filters shown in this answer's scope, from the sources listed in its evidence. Nothing outside those filters was included.", "evidence": { "sources": [ { "dataset": "States lane M2: FFS rate book", "publisher": "vlada", "catalog_updated_at": "2026-10-29" } ], "response_hash": "d0b6bd345dec7296c7eeb1f6834a1ec1418da9e0f77474145e786d84c5253517" }, "freshness": { "state": "unknown", "why": "This tool does not report an edition for its answer, and the door could not derive one from what the answer reads. Treat the result as current to no stated date." } } ``` REST: `POST https://api.vladahealth.com/v1/tools/get_medicaid_rate` with the inputs as the JSON body. MCP: the tool by name. ## Data # Covered California enrollment profiles — state publisher history `ca_covered_california_enrollment_profiles` · Insurer negotiated rates · status partial · 13,941 rows Covered California Open Enrollment, active paid/effective member, Medi-Cal transitioner and special-enrollment profile history with issuer, plan, geography, subsidy and demographic detail. **Grain.** One source-native observation within one immutable Covered California workbook, profile family, publisher period, sheet and source cell or row. Query it: `query_substrate` with `SELECT ... FROM ca_covered_california_enrollment_profiles WHERE ... LIMIT 100`; read `describe_data_source("ca_covered_california_enrollment_profiles")` first. # CMS independent State-based Exchange QHP PUF packages - plan, benefit and premium detail for the states not on HealthCare.gov (PY2016-PY2026) `cms_independent_sbe_packages` · Insurer negotiated rates · status live · 20,911,204 rows The six Exchange PUF families (Benefits & Cost Sharing, Rate, Plan Attributes, Business Rules, Service Area, Network) that CMS republishes for each independent State-based Exchange in its SBE template: 195 state/year packages (17 states in PY2016 to 22 in PY2026) plus 11 annual dictionary ZIPs. With the federal-platform PUFs they cover all 51 jurisdictions for PY2016-PY2026. **Grain.** One publisher CSV row per (plan_year, state, family, archive member, source_row_number) inside one immutable CMS state/year ZIP. Query it: `query_substrate` with `SELECT ... FROM cms_independent_sbe_packages WHERE ... LIMIT 100`; read `describe_data_source("cms_independent_sbe_packages")` first. # Commercial Insurer MLR — issuer identity / NAIC crosswalk (CMS MLR PUF) `insurer_silver.dim_insurer_mlr_identity` · Insurer negotiated rates · status live · 20,336 rows The free entity crosswalk the CMS MLR PUF carries: hios_issuer_id, naic_group_code, naic_company_code, federal_ein, company_name, group_affiliation, dba_marketing_name per submission. Resolves an MLR financial filing to a payer BRAND + NAIC — the join key connecting insurer financials to negotiated rates (dim_payer). **Grain.** One row per (business_year, mr_submission_template_id). Issuer identity + the free NAIC crosswalk. 20,336 rows across RY2017-2024 (Athena 51461b5b, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | mr_submission_template_id | string | | | hios_issuer_id | string | | | naic_group_code | string | | | naic_company_code | string | | | federal_ein | string | | | company_name | string | | | group_affiliation | string | | | dba_marketing_name | string | | | source_sha | string | | | domiciliary_state | string | | | business_state | 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 | | | native_issuer_code | string | | | identity_row_locator | string | | Query it: `query_substrate` with `SELECT ... FROM insurer_silver.dim_insurer_mlr_identity WHERE ... LIMIT 100`; read `describe_data_source("insurer_silver.dim_insurer_mlr_identity")` first. # Commercial Insurer MLR — financial facts (CMS MLR PUF) `insurer_silver.fact_insurer_mlr` · Insurer negotiated rates · status live · 27,254 rows The commercial insurer P&L: filed premium earned, incurred claims, and member-months per issuer submission x market (individual/small_group/large_group/...), from the CMS Medical Loss Ratio PUF. Join dim_insurer_mlr_identity on mr_submission_template_id for the NAIC crosswalk + brand. loss_ratio = incurred_claims/premium_earned. The insurer-economics side of the Payers/Investors wedge. **Grain.** One row per (business_year, mr_submission_template_id, market). Wide pivot of 19 MLR lines (premium earned, incurred claims, member months, QI, taxes, fees ...) per issuer submission x market. 27,254 rows across RY2017-2024 (Athena 51461b5b, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | mr_submission_template_id | string | | | market | string | | | premium_earned | double | | | incurred_claims | double | | | member_months | double | | | source_sha | 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 | | | rx_drugs | double | | | pharma_rebates | double | | | admin_general | double | | | broker_commissions | double | | | direct_sales_salaries | double | | | claims_adjustment | double | | | cost_containment | double | | | quality_improvement | double | | | state_premium_tax | double | | | state_income_excise_tax | double | | | federal_income_tax | double | | | other_federal_taxes | double | | | employment_taxes | double | | | regulatory_licenses_fees | double | | | pcori_fee | double | | | taxes_other_5_5a | double | | | source_row_locators | string | | Query it: `query_substrate` with `SELECT ... FROM insurer_silver.fact_insurer_mlr WHERE ... LIMIT 100`; read `describe_data_source("insurer_silver.fact_insurer_mlr")` first. # Commercial Insurer MLR: current read surface (financials joined to issuer identity) `insurer_silver.vw_insurer_mlr_current` · Insurer negotiated rates · status live · 18,818 rows The semantic read surface over fact_insurer_mlr: the highest cms_vintage_sequence per (business_year, submission, market), joined to dim_insurer_mlr_identity, with derived loss_ratio, retention, PMPMs, the re-bought (admin, broker, sales, claims adjustment, cost containment, QI) and harvested (taxes, fees) splits and the underwriting-margin residual. Defined in ops/sql/vw_insurer_mlr_current.sql. **Grain.** One row per (business_year, market, issuer submission) of the current vintage, with carrier group, name, EIN, HIOS id and business state; Grand Total rollup rows excluded. 18,818 rows RY2017-2024 (Athena c0257f5f, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | market | string | | | carrier_group | string | | | carrier_name | string | | | carrier_ein | string | | | hios_issuer_id | string | | | state | string | | | issuer_identity_key | string | | | native_issuer_code | string | | | identity_row_locator | string | | | premium_earned | double | | | incurred_claims | double | | | member_months | double | | | retention | double | | | retention_pct | double | | | loss_ratio | double | | | premium_pmpm | double | | | retention_pmpm | double | | | admin_general | double | | | broker_commissions | double | | | direct_sales_salaries | double | | | claims_adjustment | double | | | cost_containment | double | | | quality_improvement | double | | | rebought_total | double | | | state_premium_tax | double | | | state_income_excise_tax | double | | | federal_income_tax | double | | | other_federal_taxes | double | | | employment_taxes | double | | | regulatory_licenses_fees | double | | | taxes_other_5_5a | double | | | pcori_fee | double | | | taxes_total | double | | | underwriting_margin | double | | | rx_drugs | double | | | pharma_rebates | double | | | cms_vintage_sequence | int | | | asserted_at | date | | | source_url | string | | | sha256_content_hash | string | | | source_row_locators | string | | Query it: `query_substrate` with `SELECT ... FROM insurer_silver.vw_insurer_mlr_current WHERE ... LIMIT 100`; read `describe_data_source("insurer_silver.vw_insurer_mlr_current")` first. # Kentucky KHBE Governor's Metrics — monthly state publisher history `ky_khbe_governors_metrics` · Insurer negotiated rates · status partial · 159,920 rows Forty-seven exact Kentucky Health Benefit Exchange workbooks covering 46 monthly semantic units and 232,590 non-duplicated QHP/Medicaid metric observations by program, plan, issuer/metal, county, age, gender and FPL, with Logic/Glossary revision context. **Grain.** One source-native metric observation within one immutable Kentucky workbook, report period, sheet, source row and metric-header column. Query it: `query_substrate` with `SELECT ... FROM ky_khbe_governors_metrics WHERE ... LIMIT 100`; read `describe_data_source("ky_khbe_governors_metrics")` first. # HHS risk adjustment transfers by issuer, one report revision per benefit year and appendix (current view) `medicare_semantic.vw_aca_risk_adjustment_transfer_current_v1` · Insurer negotiated rates · status partial · 14,415 rows The read surface over medicare_silver.fact_aca_risk_adjustment_transfer_history that cannot double count: per benefit year and appendix it keeps the highest cms_vintage_sequence, then the latest asserted_at (the BY2024 revision wins over the June 30 original). Same columns as the history table. **Grain.** One amount cell of the current revision: (benefit_year, source_appendix, sheet_name, source_row_number, source_column_number). 14,415 rows BY2021-BY2025; BY2024 = 2,850 C + 57 D, the July 23, 2025 revision only (Athena af6735d5, 2026-10-13). | column | type | meaning | |---|---|---| | benefit_year | int | | | source_appendix | string | | | sheet_name | string | | | source_row_number | bigint | | | source_column_number | int | | | column_header_raw | string | | | hios_issuer_id | string | | | issuer_name | string | | | state_code | string | | | program_component | string | | | market_risk_pool | string | | | amount_usd | double | | | amount_raw | string | | | amount_status | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | string | | | artifact_id | string | | | source_file_bytes | bigint | | | final_source_url | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | string | | | report_title | string | | | report_url | string | | | report_revision_label | 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 medicare_semantic.vw_aca_risk_adjustment_transfer_current_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_aca_risk_adjustment_transfer_current_v1")` first. # CMS CCIIO Benefits & Cost Sharing PUF — Marketplace benefit-template history `medicare_semantic.vw_benefits_cost_sharing_current` · Insurer negotiated rates · status live · 19,692,051 rows CMS Marketplace plan-variant benefit, coverage, raw cost-sharing, limit, exclusion, EHB-variance, and MOOP-exclusion text across PY2014-PY2026. The served view selects the latest reviewed revision for each business year and maps each era's ordered raw-cell array to named raw-text columns without amount parsing or blank-to-zero coercion. **Grain.** One publisher benefit row of the current selected revision, keyed by (business_year, plan_id, benefit_name, source_row_number). A plan may list the same benefit more than once (e.g. per tier or cost-sharing variant); every such row is preserved — no plan/benefit collapse. The underlying physical history remains one row per source, year, member SHA-256, archive member, and source-row ordinal across all revisions. | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | standard_component_id | string | | | plan_id | string | | | benefit_name | string | | | version_num | string | | | publisher_row_number | string | | | copay_inn_tier1_raw | string | | | copay_inn_tier2_raw | string | | | copay_out_of_net_raw | string | | | coins_inn_tier1_raw | string | | | coins_inn_tier2_raw | string | | | coins_out_of_net_raw | string | | | is_ehb_raw | string | | | is_covered_raw | string | | | quant_limit_on_svc_raw | string | | | limit_qty_raw | string | | | limit_unit_raw | string | | | minimum_stay_raw | string | | | exclusions_raw | string | | | explanation_raw | string | | | ehb_var_reason_raw | string | | | is_state_mandate_raw | string | | | is_subj_to_ded_tier1_raw | string | | | is_subj_to_ded_tier2_raw | string | | | is_excl_from_inn_moop_raw | string | | | is_excl_from_oon_moop_raw | string | | | schema_era | string | | | source_row_number | bigint | | | raw_row_sha256 | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | observed_period | date | | | source_url | string | | | sha256_content_hash | string | | | raw_values_json | string | | | ordered_header_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefits_cost_sharing_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefits_cost_sharing_current")` first. # CMS CCIIO Business Rules PUF — Marketplace rating-rule history `medicare_semantic.vw_business_rules_puf_current` · Insurer negotiated rates · status live CMS Marketplace rules that modify how plan rates apply to enrollees and families, including dependent limits, relationship/cohabitation rules, tobacco-free periods, age determination, and medical/dental context. All official PY2014-PY2026 live artifacts are byte-certified; this is not a premium or provider-price source. **Grain.** One logical publisher CSV record within one immutable (business_year, source_zip_sha256) artifact, keyed by one-based source_row_number. | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | product_id | string | | | standard_component_id | string | | | tin | string | | | market_coverage | string | | | dental_only | string | | | medical_dental_both | string | | | age_determination_rule | string | | | dependent_maximum_age_rule | string | | | cohabitation_rule | string | | | schema_era | string | | | source_row_number | bigint | | | raw_row_sha256 | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | observed_period | date | | | source_url | string | | | sha256_content_hash | string | | | raw_values_json | string | | | ordered_header_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_business_rules_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_business_rules_puf_current")` first. # CMS QHP Enrollee Survey PUF: current read surface (one CMS artifact per plan year) `medicare_semantic.vw_enrollee_survey_puf_current_v1` · Insurer negotiated rates · status live · 1,586 rows The read surface over medicare_silver.fact_enrollee_survey_puf_history (append-only): for each business_year it keeps one CMS data unit (cms_vintage_sequence DESC, then asserted_at DESC, then archive member as tie-breakers) and returns its publisher rows unchanged (raw_values_json keyed by ordered_header_json). Defined in pipelines/medicare/semantic/enrollee_survey_puf_current_v1.sql (#3583). A later CMS repost of a plan year replaces the earlier artifact here and stays in the history table. **Grain.** One publisher row of the selected data unit per business_year: 1,586 rows PY2022-2026, one CMS artifact per business_year (266 / 298 / 325 / 343 / 354; Athena bccf9835, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | source_format | string | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_semantic.vw_enrollee_survey_puf_current_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_enrollee_survey_puf_current_v1")` first. # Marketplace premium tax credit by county, age and income (vw_hix_after_credit_v1) `medicare_semantic.vw_hix_after_credit_v1` · Insurer negotiated rates · status partial The credit = the EHB part of the benchmark (benchmark_ehb, 26 CFR 1.36B-3) less the applicable percentage of income (26 U.S.C. 36B), never below zero, beside the lowest silver, bronze and gold premiums. schedule 'in force' or 'without the enhancement' (2021-2025 where the IRS published it). **Grain.** One row per county x age x income (100-600% of the poverty line) x schedule x plan year, one adult. | column | type | meaning | |---|---|---| | year | int | | | state | string | | | county | string | | | rating_area | string | | | age | string | | | income_pct_poverty | double | | | annual_income | double | | | schedule | varchar(23) | | | regime | string | | | applicable_pct | double | | | benchmark | double | | | benchmark_ehb | double | | | lowest_silver | double | | | lowest_bronze | double | | | lowest_gold | double | | | credit | double | | | schedule_source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_after_credit_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_after_credit_v1")` first. # Marketplace benchmark change, every year pair (vw_hix_benchmark_change_v1) `medicare_semantic.vw_hix_benchmark_change_v1` · Insurer negotiated rates · status partial The benchmark move split into repricing (last year's benchmark plan's successor: CMS's crosswalk in HealthCare.gov states, the same plan id in state-run exchanges) and re-ranking, with who held it each year and why it changed. **Grain.** One row per county x (year - 1, year): 39,705 rows, 2015-2027. | column | type | meaning | |---|---|---| | year | int | | | prior_year | int | | | state | string | | | county | string | | | rating_area | string | | | slcsp_prior | double | | | slcsp | double | | | chg_usd | double | | | chg_pct | double | | | bench_plan_prior | string | | | bench_parent_prior | string | | | bench_plan | string | | | bench_parent | string | | | successor_plan | string | | | successor_basis | string | | | successor_reason | string | | | successor_metal | string | | | successor_premium | double | | | successor_type | string | | | repricing_usd | double | | | reranking_usd | double | | | holder_change | string | | | lcsp_prior | double | | | lcsp | double | | | low_bronze_prior | double | | | low_bronze | double | | | low_gold_prior | double | | | low_gold | double | | | n_silver_prior | int | | | n_silver | int | | | n_parents_prior | int | | | n_parents | int | | | rating_area_changed | boolean | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_benchmark_change_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_benchmark_change_v1")` first. # Marketplace county benchmark at every age (vw_hix_county_benchmark_ages_v1) `medicare_semantic.vw_hix_county_benchmark_ages_v1` · Insurer negotiated rates · status partial The same plans as vw_hix_county_benchmark_v1 (one age curve per state, so the plans do not change by age), priced at every age; materialized as medicare_silver.hix_county_benchmark_ages_v1 (materialize_ages.py) so one county answers in seconds. **Grain.** One row per county x age x plan year: 2,085,501 rows, 42,896 county-years. The benchmark, lowest silver, bronze and gold plans at each age in the plan's own rate table. | column | type | meaning | |---|---|---| | year | int | | | state | string | | | county | string | | | rating_area | string | | | age | string | | | slcsp_plan | string | | | slcsp | double | | | slcsp_ehb | double | | | lcsp_plan | string | | | lcsp | double | | | low_bronze_plan | string | | | low_bronze | double | | | low_gold_plan | string | | | low_gold | double | | | slcsp_age40 | double | | | source | string | | | premium_source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_county_benchmark_ages_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_county_benchmark_ages_v1")` first. # Marketplace county benchmark: lowest and second-lowest silver (vw_hix_county_benchmark_v1) `medicare_semantic.vw_hix_county_benchmark_v1` · Insurer negotiated rates · status partial The second-lowest-cost silver plan (the credit benchmark, 26 CFR 1.36B-3: ranked on the EHB premium, shown at list), the lowest silver, the lowest bronze and gold, plan ids, parents and counts. **Grain.** One row per county x plan year at age 40: 42,896 rows. All 51 jurisdictions: HealthCare.gov states 2014-2027, state-run exchanges 2016-2027. HealthCare.gov counties match CMS's Landscape (list-ranked) 2016-2027 to the cent, 2014 within $0.01, 2015 all but 29 counties. | column | type | meaning | |---|---|---| | year | int | | | state | string | | | county | string | | | rating_area | string | | | ra_mapping | string | | | ra_land_share | double | | | age | int | | | n_silver | int | | | n_issuers | int | | | lcsp | double | | | lcsp_parent | string | | | slcsp | double | | | slcsp_ehb | double | | | slcsp_plan | string | | | slcsp_parent | string | | | slcsp_listrank | double | | | lcsp_plan | string | | | n_parents | int | | | low_bronze | double | | | low_bronze_plan | string | | | low_gold | double | | | low_gold_plan | string | | | partial_plans | int | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_county_benchmark_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_county_benchmark_v1")` first. # Marketplace market structure by parent and county (vw_hix_market_structure_v1) `medicare_semantic.vw_hix_market_structure_v1` · Insurer negotiated rates · status partial Plans by metal, cheapest silver and its rank among parents, whether the parent holds the lowest or the benchmark silver, and status against the year before (entered, continuing, exited; exited rows carry zero plans). **Grain.** One row per county x parent x plan year: 133,433 rows. All 51 jurisdictions: HealthCare.gov states 2014-2027, state-run exchanges 2016-2027. | column | type | meaning | |---|---|---| | year | int | | | state | string | | | county | string | | | rating_area | string | | | parent | string | | | issuers | int | | | plans | int | | | silver_plans | int | | | bronze_plans | int | | | gold_plans | int | | | cheapest_silver_age40 | double | | | cheapest_silver_rank | int | | | parents_with_silver | int | | | holds_lcsp | boolean | | | holds_benchmark | boolean | | | status | string | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_market_structure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_market_structure_v1")` first. # Marketplace plans sold in each county (vw_hix_plan_county_v1) `medicare_semantic.vw_hix_plan_county_v1` · Insurer negotiated rates · status partial Every plan the engine found on sale in each county, from the same source as the county's benchmark. **Grain.** One row per plan x county x plan year: rating area, issuer, parent, metal, age-40 premium at list and EHB. 1,538,783 rows. All 51 jurisdictions: HealthCare.gov states 2014-2027, state-run exchanges 2016-2027. | column | type | meaning | |---|---|---| | year | int | | | state | string | | | county | string | | | rating_area | string | | | plan_id | string | | | issuer_id | string | | | parent | string | | | metal | string | | | premium_age40 | double | | | premium_ehb_age40 | double | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_plan_county_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_plan_county_v1")` first. # Marketplace premiums by plan, rating area and age (vw_hix_plan_premium_v1) `medicare_semantic.vw_hix_plan_premium_v1` · Insurer negotiated rates · status partial List premiums from each source's own rate table; source names the file (CMS Exchange PUF, CMS state-run package, state rate file 2027, CMS rate review file 2027). **Grain.** One row per plan x rating area x age x tobacco status x plan year, with family tiers where filed. All 51 jurisdictions: HealthCare.gov states 2014-2027, state-run exchanges 2016-2027. | column | type | meaning | |---|---|---| | plan_year | int | | | state_code | string | | | plan_id | string | | | rating_area_id | string | | | age | string | | | tobacco | 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 | | | rate_effective_date | string | | | source | varchar(41) | | | basis | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_plan_premium_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_plan_premium_v1")` first. # Marketplace plans, every jurisdiction and year (vw_hix_plan_v1) `medicare_semantic.vw_hix_plan_v1` · Insurer negotiated rates · status partial Metal, plan type, network, service area, deductibles and MOOP (integrated, medical, drug), EHB share, HSA, child-only flag and the parent (parent_basis: the reviewed issuer-parent bridge, else the issuer name). **Grain.** One row per plan variant x plan year (standard and cost-sharing variants), individual market, medical. All 51 jurisdictions: HealthCare.gov states 2014-2027, state-run exchanges 2016-2027. | column | type | meaning | |---|---|---| | plan_year | int | | | state_code | string | | | issuer_id | string | | | parent_name | string | | | parent_basis | varchar(32) | | | issuer_name | string | | | plan_id | string | | | plan_variant_id | string | | | csr_variation | string | | | variant_kind | varchar(22) | | | metal_level | string | | | plan_type | string | | | plan_name | string | | | network_id | string | | | service_area_id | string | | | child_only_offering | string | | | hsa_eligible | string | | | ehb_share | double | | | deductible_integrated | double | | | deductible_medical | double | | | deductible_drug | double | | | moop_integrated | double | | | moop_medical | double | | | moop_drug | double | | | deductible_integrated_raw | string | | | moop_integrated_raw | string | | | formulary_url | string | | | source | varchar(41) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_plan_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_plan_v1")` first. # State-based exchange enrollment observations - seven state marketplaces' own published figures, one view `medicare_semantic.vw_hix_state_enrollment_observation_v1` · Insurer negotiated rates · status partial · 232,589 rows The enrollment figures seven state-based marketplaces publish themselves (CA Covered California, KY kynect/KHBE, NJ DOBI and GetCoveredNJ, NY State of Health, VA Insurance Marketplace, WA Healthplanfinder), projected from the reviewed-current observation_json into typed columns: state, source, release, observation period and its kind, measure name, unit, market scope, geography, issuer, plan, breakdown axis and value, value and suppression status, with full file lineage. It is the observation layer under the enrollment_mix mart, NOT the mart: measure basis (selection, paid, effectuated, current) and population are not classified. **Grain.** One reviewed-current source observation; (source_id, release_key, artifact_id, semantic_release_id, content_unit, row_ordinal) is unique (measured 2026-09-25, 232,589 rows = 232,589 distinct keys, Athena e0877aa7). | column | type | meaning | |---|---|---| | state_code | string | | | source_id | string | | | release_key | string | | | source_url | string | | | observation_period | string | | | observation_period_kind | varchar(15) | | | observation_period_source_key | varchar(18) | | | snapshot_release_period | string | | | measure_name | string | | | measure_name_source_key | varchar(44) | | | measure_qualifier | string | | | observation_family | string | | | unit | string | | | market_scope | string | | | population_raw | string | | | geography_type | string | | | geography_label | string | | | issuer_label | string | | | hios_issuer_id_raw | string | | | hios_issuer_id | string | | | plan_label | string | | | plan_id | string | | | breakdown_axis | string | | | breakdown_value | string | | | breakdown_detail_raw | string | | | row_type | string | | | value | double | | | value_raw | string | | | suppression_status | string | | | reported_percentage | double | | | market_share_percent | double | | | source_locator | string | | | source_worksheet | string | | | schema_era_id | string | | | artifact_id | string | | | sha256_content_hash | string | | | semantic_release_id | string | | | parser_id | string | | | parser_version | string | | | profile_sha256 | string | | | parsed_at | string | | | content_unit | string | | | row_ordinal | bigint | | | observation_sha256 | string | | | releases_carrying_this_observation | bigint | | | reviewed_at | string | | | reviewer | string | | | review_decision_sha256 | string | | | observation_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hix_state_enrollment_observation_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hix_state_enrollment_observation_v1")` first. # CMS CCIIO Machine Readable URL PUF, redacted: issuer index URLs per plan year, no contact fields `medicare_semantic.vw_machine_readable_url_puf_redacted_v1` · Insurer negotiated rates · status live · 4,045 rows The customer read surface for the Machine Readable URL PUF: the issuer-submitted machine-readable index URL per state and issuer per plan year, with every contact column (Tech POC Email) left out and the lossless raw_values_json / row hash not exposed. Defined in ops/sql/vw_machine_readable_url_puf_redacted_v1.sql. **Grain.** One publisher worksheet row of the current artifact per business_year: state, HIOS issuer id, issuer name (PY2016 only), submitted URL. 4,045 rows PY2016-2026 (SELECT body run read-only, Athena a8f5a74e, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | hios_issuer_id | string | | | issuer_name | string | | | url_submitted | string | | | url_not_submitted | boolean | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | header_sha256 | string | | | column_count | int | | | artifact_id | string | | | source_zip_sha256 | string | | | final_source_url | string | | | archive_member | string | | | archive_member_sha256 | string | | | publisher_modified_at | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_machine_readable_url_puf_redacted_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_machine_readable_url_puf_redacted_v1")` first. # Marketplace enrollment by parent company (state, national, federal vs SBM) `medicare_semantic.vw_marketplace_enrollment_by_parent_v1` · Insurer negotiated rates · status live · 10,353 rows Sums issuer-level enrollment PUF plan rows through the parent bridge; average monthly enrollment BY2018-2025 (federal from BY2021) and federal ever-enrolled BY2014-2021, never mixed; geography-table rows never summed; suppressed cells kept as a lower bound. **Grain.** parent_basis x parent x geography (state or US) x business_year x exchange platform x measure. | column | type | meaning | |---|---|---| | parent_basis | varchar(6) | | | business_year | int | | | measure_name | string | | | exchange_platform | string | | | coverage_scope | varchar(42) | | | geo_level | varchar(8) | | | state_code | string | | | parent_id | string | | | parent_name | string | | | resolution_statuses | string | | | issuer_parent_kinds | string | | | brand_family | string | | | members | decimal(38,6) | | | n_issuers | bigint | | | n_plan_rows | bigint | | | n_suppressed_plan_rows | bigint | | | members_high_confidence | decimal(38,6) | | | share_of_geo | decimal(38,6) | | | members_note | varchar(79) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_marketplace_enrollment_by_parent_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_marketplace_enrollment_by_parent_v1")` first. # CMS Nationwide QRS PUF: current read surface (one CMS artifact per plan year) `medicare_semantic.vw_nationwide_qrs_puf_current` · Insurer negotiated rates · status live · 1,986 rows The read surface over medicare_silver.fact_nationwide_qrs_puf_history (append-only): for each business_year it keeps one CMS data unit (cms_vintage_sequence DESC, then asserted_at DESC, then archive member as tie-breakers) and returns its publisher rows unchanged (raw_values_json keyed by ordered_header_json). Defined in pipelines/medicare/semantic/nationwide_qrs_puf_current.sql (#3583). A later CMS repost of a plan year replaces the earlier artifact here and stays in the history table. **Grain.** One publisher row of the selected data unit per business_year: 1,986 rows PY2019-2026, one CMS artifact per business_year (195 / 198 / 198 / 209 / 264 / 276 / 315 / 331; Athena cff587ab, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | source_format | string | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_semantic.vw_nationwide_qrs_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_nationwide_qrs_puf_current")` first. # CMS CCIIO Network PUF — issuer network metadata history `medicare_semantic.vw_network_puf_current` · Insurer negotiated rates · status live CMS Marketplace issuer network names, state-generated NetworkIds, and publisher-supplied provider-directory URL strings across PY2014-PY2026. This source does not contain provider membership, plan IDs, ServiceAreaIds, URL availability, or directory contents. **Grain.** One logical publisher CSV record within one immutable (business_year, source_zip_sha256) artifact, keyed by one-based source_row_number. | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | network_name | string | | | network_id | string | | | network_url | string | | | market_coverage | string | | | dental_only | string | | | version_num | string | | | schema_era | string | | | source_row_number | bigint | | | raw_row_sha256 | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | observed_period | date | | | source_url | string | | | sha256_content_hash | string | | | raw_values_json | string | | | ordered_header_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_network_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_network_puf_current")` first. # CMS CCIIO Plan Attributes PUF — Marketplace plan definition history `medicare_semantic.vw_plan_attributes_puf_current` · Insurer negotiated rates · status live CMS Marketplace plan-variant definitions and the central bridge among issuers, products, networks, service areas, benefits, and rates across PY2014-PY2026. All raw publisher revisions are retained; no semantic current-plan winner is selected. **Grain.** One logical publisher CSV record within one immutable (business_year, source_zip_sha256, archive_member) artifact, keyed by one-based source_row_number. | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | standard_component_id | string | | | plan_marketing_name | string | | | hios_product_id | string | | | network_id | string | | | service_area_id | string | | | formulary_id | string | | | plan_type | string | | | metal_level | string | | | market_coverage | string | | | dental_only | string | | | tin | string | | | qhp_nonqhp_type_id | string | | | is_new_plan | string | | | schema_era | string | | | source_row_number | bigint | | | raw_row_sha256 | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | observed_period | date | | | source_url | string | | | sha256_content_hash | string | | | raw_values_json | string | | | ordered_header_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_attributes_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_attributes_puf_current")` first. # CMS CCIIO Plan ID Crosswalk PUF — directed plan-year continuity history `medicare_semantic.vw_plan_id_crosswalk_puf_current` · Insurer negotiated rates · status live CMS Marketplace standard-component continuity from plan year N-1 to N across PY2014→2015 through PY2025→2026, preserving ordinary, age-off, and bronze-to-silver publisher fields without projecting semantic routes. **Grain.** One logical publisher CSV record within one immutable directed current-plan-year artifact, keyed by source, current year, ZIP SHA-256, archive member, and one-based source row number. | column | type | meaning | |---|---|---| | current_plan_year | int | | | previous_plan_year | int | | | state_code | string | | | dental_plan | string | | | current_plan_id | string | | | current_issuer_id | string | | | current_metal_level | string | | | current_multistate_plan | string | | | current_child_adult_only | string | | | previous_plan_id | string | | | previous_issuer_id | string | | | previous_metal_level | string | | | previous_multistate_plan | string | | | previous_child_adult_only | string | | | age_off_plan_id | string | | | age_off_issuer_id | string | | | age_off_metal_level | string | | | age_off_multistate_plan | string | | | age_off_child_adult_only | string | | | silver_csr_elig_plan_id | string | | | silver_csr_elig_issuer_id | string | | | crosswalk_level | string | | | reason_for_crosswalk | string | | | fips_code_raw | string | | | zip_code_raw | string | | | source_row_number | bigint | | | raw_row_sha256 | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | observed_period | date | | | source_url | string | | | sha256_content_hash | string | | | raw_values_json | string | | | ordered_header_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_id_crosswalk_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_id_crosswalk_puf_current")` first. # CMS Marketplace Quality PUF: current read surface (one CMS artifact per plan year) `medicare_semantic.vw_quality_puf_current` · Insurer negotiated rates · status live · 35,752 rows The read surface over medicare_silver.fact_quality_puf_history (append-only): for each business_year it keeps one CMS data unit (cms_vintage_sequence DESC, then asserted_at DESC, then archive member as tie-breakers) and returns its publisher rows unchanged (raw_values_json keyed by ordered_header_json). Defined in pipelines/medicare/semantic/quality_puf_current.sql (#3583). A later CMS repost of a plan year replaces the earlier artifact here and stays in the history table. **Grain.** One publisher row of the selected data unit per business_year: 35,752 rows PY2017-2026, one CMS artifact per business_year (830 / 553 / 768 / 3,511 / 3,885 / 5,407 / 6,378 / 5,395 / 4,723 / 4,302; Athena 7678a908, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | source_format | string | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_semantic.vw_quality_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_quality_puf_current")` first. # States K2 Rate filing book: vw_rate_filing_market_v1 `medicare_semantic.vw_rate_filing_market_v1` · Insurer negotiated rates · status partial · 12,967 rows Marketplace product K2 (Rate filing book) of the States lane: the ACA rate filing book: every filing in the CMS Unified Rate Review PUF, by issuer x state x market, with the build-up and the year-over-year drivers. vw_rate_review_puf_current_v1 is the PUF's current bytes per plan year (filter plan_year and worksheet). vw_rate_filing_market_v1 is one row per filing with its build-up; vw_rate_filing_yoy_drivers_v1 sets each issuer x state x market against its prior year with the parent. schema_era changes column meaning (G54 in 2016); -9.99 is a placeholder, not a value (docs/context_library/commercial/rate_review_puf.md). **Grain.** The ACA rate filing book: every filing in the CMS Unified Rate Review PUF, by issuer x state x market, with the build-up and the year-over-year drivers. 12,967 rows (Athena, 2026-10-29). | column | type | meaning | |---|---|---| | schema_era | varchar(24) | | | plan_year | int | | | filing_id | string | | | hios_issuer_id | string | | | issuer_name | string | | | state_code | string | | | market | string | | | effective_date | date | | | filing_cycle | string | | | filing_status | string | | | status_date_raw | string | | | serff_tracking_number | string | | | experience_begin_raw | string | | | experience_end_raw | string | | | experience_member_months | double | | | experience_premium_pmpm | double | | | experience_allowed_claims_pmpm | double | | | experience_incurred_claims_pmpm | double | | | experience_index_rate_pmpm | double | | | applied_credibility | double | | | projected_index_rate_pmpm | double | | | projected_member_months | double | | | yr1_trend_cost_inpatient | double | | | yr1_trend_util_inpatient | double | | | yr1_trend_cost_outpatient | double | | | yr1_trend_util_outpatient | double | | | yr1_trend_cost_professional | double | | | yr1_trend_util_professional | double | | | yr1_trend_cost_other_medical | double | | | yr1_trend_util_other_medical | double | | | yr1_trend_cost_capitation | double | | | yr1_trend_util_capitation | double | | | yr1_trend_cost_rx | double | | | yr1_trend_util_rx | double | | | yr2_trend_cost_inpatient | double | | | yr2_trend_util_inpatient | double | | | yr2_trend_cost_outpatient | double | | | yr2_trend_util_outpatient | double | | | yr2_trend_cost_professional | double | | | yr2_trend_util_professional | double | | | yr2_trend_cost_other_medical | double | | | yr2_trend_util_other_medical | double | | | yr2_trend_cost_capitation | double | | | yr2_trend_util_capitation | double | | | yr2_trend_cost_rx | double | | | yr2_trend_util_rx | double | | | trended_ehb_allowed_pmpm | double | | | morbidity_adjustment | double | | | demographic_shift | double | | | plan_design_change | double | | | other_adjustment | double | | | adjusted_trended_ehb_allowed_pmpm | double | | | manual_ehb_allowed_pmpm | double | | | projected_reinsurance_pmpm | double | | | projected_risk_adjustment_pmpm | double | | | exchange_user_fee_pct | double | | | market_adjusted_index_rate_pmpm | double | | | trend_cost_inpatient_2014_2019 | double | | | trend_util_inpatient_2014_2019 | double | | | morbidity_inpatient_2014_2019 | double | | | trend_cost_outpatient_2014_2019 | double | | | trend_util_outpatient_2014_2019 | double | | | morbidity_outpatient_2014_2019 | double | | | trend_cost_professional_2014_2019 | double | | | trend_util_professional_2014_2019 | double | | | morbidity_professional_2014_2019 | double | | | trend_cost_other_medical_2014_2019 | double | | | trend_util_other_medical_2014_2019 | double | | | morbidity_other_medical_2014_2019 | double | | | trend_cost_capitation_2014_2019 | double | | | trend_util_capitation_2014_2019 | double | | | morbidity_capitation_2014_2019 | double | | | trend_cost_rx_2014_2019 | double | | | trend_util_rx_2014_2019 | double | | | morbidity_rx_2014_2019 | double | | | paid_to_allowed_2014_2019 | double | | | projected_risk_adjustment_pmpm_2014_2019 | double | | | projected_reinsurance_pmpm_2014_2019 | double | | | admin_load_pct_2014_2019 | double | | | profit_risk_load_pct_2014_2019 | double | | | taxes_fees_pct_2014_2019 | double | | | single_risk_pool_gross_premium_pmpm_2014_2019 | double | | | plan_rows | bigint | | | plans_rate_change_placeholder | bigint | | | plans_with_projected_months | bigint | | | plan_projected_member_months | double | | | current_enrollment | double | | | current_enrollment_on_exchange | double | | | rate_change_last_filed | double | | | rate_change_first_filed | double | | | plan_rate_change_min | double | | | plan_rate_change_max | double | | | plans_with_determination | bigint | | | plans_found_unreasonable | bigint | | | artifact_id | string | | | sha256_content_hash | string | | | source_url | string | | | archive_member | string | | | source_row_number | bigint | | | asserted_at | date | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_rate_filing_market_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_rate_filing_market_v1")` first. # States K2 Rate filing book: vw_rate_filing_yoy_drivers_v1 `medicare_semantic.vw_rate_filing_yoy_drivers_v1` · Insurer negotiated rates · status partial · 11,187 rows Marketplace product K2 (Rate filing book) of the States lane: the ACA rate filing book: every filing in the CMS Unified Rate Review PUF, by issuer x state x market, with the build-up and the year-over-year drivers. vw_rate_review_puf_current_v1 is the PUF's current bytes per plan year (filter plan_year and worksheet). vw_rate_filing_market_v1 is one row per filing with its build-up; vw_rate_filing_yoy_drivers_v1 sets each issuer x state x market against its prior year with the parent. schema_era changes column meaning (G54 in 2016); -9.99 is a placeholder, not a value (docs/context_library/commercial/rate_review_puf.md). **Grain.** The ACA rate filing book: every filing in the CMS Unified Rate Review PUF, by issuer x state x market, with the build-up and the year-over-year drivers. 11,187 rows (Athena, 2026-10-29). | column | type | meaning | |---|---|---| | plan_year | int | | | hios_issuer_id | string | | | issuer_name | string | | | state_code | string | | | market | string | | | schema_era | varchar(24) | | | has_prior_year | boolean | | | era_boundary | boolean | | | parent_id_as_now | string | | | parent_name_as_now | string | | | parent_resolution_status | string | | | filing_id | string | | | prior_filing_id | string | | | rate_change_first_filed | double | | | rate_change_last_filed | double | | | revision_during_review | double | | | prior_rate_change_last_filed | double | | | projected_member_months | double | | | prior_projected_member_months | double | | | projected_member_months_growth | double | | | current_enrollment | double | | | experience_allowed_claims_pmpm | double | | | prior_experience_allowed_claims_pmpm | double | | | experience_allowed_claims_growth | double | | | experience_loss_ratio | double | | | prior_experience_loss_ratio | double | | | applied_credibility | double | | | prior_applied_credibility | double | | | projected_index_rate_pmpm | double | | | prior_projected_index_rate_pmpm | double | | | projected_index_rate_growth | double | | | projection_over_experience | double | | | morbidity_adjustment | double | | | demographic_shift | double | | | plan_design_change | double | | | other_adjustment | double | | | yr1_trend_cost_inpatient | double | | | yr1_trend_cost_outpatient | double | | | yr1_trend_cost_professional | double | | | yr1_trend_cost_rx | double | | | yr1_trend_util_inpatient | double | | | yr1_trend_util_rx | double | | | projected_risk_adjustment_pmpm | double | | | projected_risk_adjustment_pmpm_change | double | | | projected_reinsurance_pmpm | double | | | projected_reinsurance_pmpm_change | double | | | exchange_user_fee_pct | double | | | exchange_user_fee_change | double | | | market_adjusted_index_rate_pmpm | double | | | market_adjusted_index_rate_growth | double | | | admin_load_pct_2014_2019 | double | | | profit_risk_load_pct_2014_2019 | double | | | taxes_fees_pct_2014_2019 | double | | | projected_risk_adjustment_pmpm_2014_2019 | double | | | projected_reinsurance_pmpm_2014_2019 | double | | | artifact_id | string | | | asserted_at | date | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_rate_filing_yoy_drivers_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_rate_filing_yoy_drivers_v1")` first. # CMS CCIIO Rate PUF: current read surface (one CMS ZIP revision per plan year) `medicare_semantic.vw_rate_puf_current` · Insurer negotiated rates · status live · 36,535,872 rows The read surface over medicare_silver.fact_rate_puf_history: for each business_year it keeps one CMS ZIP revision (cms_vintage_sequence DESC, then asserted_at DESC), with typed rates (individual, tobacco, family tiers), the raw record and Bronze lineage. Defined in pipelines/medicare/semantic/rate_puf_current.sql. Successor of medicare_silver.fact_rate_puf: PY2015 is complete (4,676,092 rows, 37 states, against the mirror's 1,048,575 rows in 6 states) and PY2017/PY2018 follow CMS, not the mirror. **Grain.** One publisher record of the selected revision per business_year: plan x rating area x age x tobacco x rate-effective period. 36,535,872 rows PY2014-2026, one revision per year (Athena 5189dd09, 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 | | | numeric_parse_status_json | string | | | raw_row_sha256 | string | | | raw_values_json | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | publisher_modified_at | string | | | publisher_etag | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | source_url | string | | | bronze_object_key | string | | Tools that read it: get_exchange_plan_profile Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_rate_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_rate_puf_current")` first. # States K2 Rate filing book: vw_rate_review_puf_current_v1 `medicare_semantic.vw_rate_review_puf_current_v1` · Insurer negotiated rates · status partial · 1,030,348 rows Marketplace product K2 (Rate filing book) of the States lane: the ACA rate filing book: every filing in the CMS Unified Rate Review PUF, by issuer x state x market, with the build-up and the year-over-year drivers. vw_rate_review_puf_current_v1 is the PUF's current bytes per plan year (filter plan_year and worksheet). vw_rate_filing_market_v1 is one row per filing with its build-up; vw_rate_filing_yoy_drivers_v1 sets each issuer x state x market against its prior year with the parent. schema_era changes column meaning (G54 in 2016); -9.99 is a placeholder, not a value (docs/context_library/commercial/rate_review_puf.md). 51 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** The ACA rate filing book: every filing in the CMS Unified Rate Review PUF, by issuer x state x market, with the build-up and the year-over-year drivers. 1,030,348 rows (Athena, 2026-10-29). Period 2014 to 2026 (plan_year). | column | type | meaning | |---|---|---| | plan_year | int | | | worksheet | string | | | source_row_number | bigint | | | filing_id | string | | | hios_issuer_id | string | | | issuer_name | string | | | state_code | string | | | market | string | | | effective_date | date | | | filing_cycle | string | | | filing_status | string | | | plan_id | string | | | product_id | string | | | plan_category | string | | | on_exchange | boolean | | | review_determination | string | | | rate_change_cumulative | double | | | rate_change_cumulative_initial | double | | | current_enrollment | double | | | projected_member_months | double | | | rating_area_id | string | | | rating_area_factor | double | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | string | | | artifact_id | string | | | source_zip_bytes | bigint | | | final_source_url | string | | | archive_member | string | | | archive_member_sha256 | string | | | archive_member_bytes | bigint | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_semantic.vw_rate_review_puf_current_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_rate_review_puf_current_v1")` first. # CMS CCIIO Service Area PUF — Marketplace plan geography history `medicare_semantic.vw_service_area_puf_current` · Insurer negotiated rates · status live CMS Marketplace issuer service-area geography across PY2014-PY2026, including entire-state, county, and publisher-supplied partial-county ZIP rules. Historical templates are versioned; this planned source does not select a current revision. **Grain.** One logical publisher CSV record within one immutable (business_year, source_zip_sha256) artifact, keyed by archive member and one-based source_row_number. | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | service_area_id | string | | | service_area_name | string | | | cover_entire_state | string | | | county | string | | | partial_county | string | | | zip_codes | string | | | market_coverage | string | | | dental_only | string | | | schema_era | string | | | source_row_number | bigint | | | raw_row_sha256 | string | | | artifact_id | string | | | archive_member | string | | | archive_member_sha256 | string | | | cms_vintage_sequence | int | | | asserted_at | date | | | observed_period | date | | | source_url | string | | | sha256_content_hash | string | | | raw_values_json | string | | | ordered_header_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_service_area_puf_current WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_service_area_puf_current")` first. # HHS risk adjustment transfers by issuer (summary report appendices C and D), BY2021-BY2025 `medicare_silver.fact_aca_risk_adjustment_transfer_history` · Insurer negotiated rates · status partial · 17,322 rows The issuer tables of CMS's Summary Report on Individual and Small Group Market Risk Adjustment Transfers, published each June 30 for the prior benefit year: Appendix C (non-merged markets) and Appendix D (merged markets, MA and ME), long form, one row per issuer and amount column. program_component is state_transfer (per state market risk pool: individual non-catastrophic, individual catastrophic, small group, merged) or high_cost_risk_pool; amount_usd is signed; amount_status keeps the publisher dash as no_enrollment_in_pool. **Grain.** One amount cell per (benefit_year, sha256_content_hash, source_appendix, sheet_name, source_row_number, source_column_number), i.e. one issuer x state x amount column of one appendix file. Measured 2026-09-25, 17,322 rows = 17,322 keys (Athena 24f71ef5). | column | type | meaning | |---|---|---| | benefit_year | int | | | source_appendix | string | | | sheet_name | string | | | source_row_number | bigint | | | source_column_number | int | | | column_header_raw | string | | | hios_issuer_id | string | | | issuer_name | string | | | state_code | string | | | program_component | string | | | market_risk_pool | string | | | amount_usd | double | | | amount_raw | string | | | amount_status | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | string | | | artifact_id | string | | | source_file_bytes | bigint | | | final_source_url | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | string | | | report_title | string | | | report_url | string | | | report_revision_label | 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 medicare_silver.fact_aca_risk_adjustment_transfer_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_aca_risk_adjustment_transfer_history")` first. # CMS QHP Enrollee Survey PUF — nationwide reporting-unit survey history `medicare_silver.fact_enrollee_survey_puf_history` · Insurer negotiated rates · status live · 1,586 rows CMS nationwide Exchange enrollee-experience results for PY2022-PY2026, preserving publication year, survey year, prior experience period, four exact ordered-header eras, incomplete/missing dictionary provenance, raw blank/dot/count/score semantics, and container-versus-data-unit revision identity. **Grain.** One publisher wide row within one immutable year-qualified data unit, with mandatory row_kind separating issuer-state-product reporting units from the annual National row; container revisions are retained separately. | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | source_format | string | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_silver.fact_enrollee_survey_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_enrollee_survey_puf_history")` first. # Exchange Plan Profile — composed ACA marketplace plan brain `medicare_silver.fact_exchange_plan_profile` · Insurer negotiated rates · status live · 60,591 rows The composed "plan brain" for the ACA marketplace: one row per plan-year carrying its full vector — attributes (metal/type/on-off-exchange/issuer/TIN) from Plan Attributes, premium benchmarks (age 21/40/60 x rating area) from Rate, network name from Network, county footprint from Service Area, covered-benefit counts + headline cost-shares (PCP/specialist/ER/urgent/generic/inpatient) from Benefits & Cost Sharing, CMS star ratings from Marketplace Quality, and the issuer's individual-market financials (premium earned + MLR ratio) from the CMS MLR PUF. Joins measured/verified (Plan Attributes->Rate 100%; per-plan end-to-end proven); materialized so plan lookups serve fast (no parse-in-view cliff). **Grain.** One row per (business_year, plan_id). 60,591 plan-years PY2014-2026. Materialized composition of six verified exchange PUF sources at plan grain (zero fanout). | column | type | meaning | |---|---|---| | plan_id | string | | | issuer_id | string | | | state_code | string | | | plan_marketing_name | string | | | metal_level | string | | | plan_type | string | | | market_coverage | string | | | on_off_exchange | string | | | issuer_tin | string | | | network_id | string | | | network_name | string | | | service_area_id | string | | | covers_entire_state | boolean | | | n_counties | bigint | | | premium_age21 | double | | | premium_age40 | double | | | premium_age60 | double | | | premium_age40_max | double | | | n_rating_areas | bigint | | | n_benefits_covered | bigint | | | n_ehb_benefits | bigint | | | pcp_copay | string | | | specialist_copay | string | | | er_copay | string | | | urgent_care_copay | string | | | generic_drug_copay | string | | | inpatient_coins | string | | | quality_overall | int | | | quality_medical | int | | | quality_member_exp | int | | | issuer_company_name | string | | | issuer_naic_group_code | string | | | issuer_ind_premium_earned | double | | | issuer_ind_mlr_ratio | double | | | business_year | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_exchange_plan_profile WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_exchange_plan_profile")` first. # Exchange Plan Profile v2: composed ACA marketplace plan brain, rebuilt from the CMS Rate PUF ZIPs `medicare_silver.fact_exchange_plan_profile_v2` · Insurer negotiated rates · status live · 60,591 rows The 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. Built 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. Equal to v1 cell for cell in PY2014, 2016 and 2019-2025. **Grain.** One 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; Athena 1c070757 and 72c4ad5e, 2026-10-13). | column | type | meaning | |---|---|---| | plan_id | string | | | issuer_id | string | | | state_code | string | | | plan_marketing_name | string | | | metal_level | string | | | plan_type | string | | | market_coverage | string | | | on_off_exchange | string | | | issuer_tin | string | | | network_id | string | | | network_name | string | | | service_area_id | string | | | covers_entire_state | boolean | | | n_counties | bigint | | | premium_age21 | double | | | premium_age40 | double | | | premium_age60 | double | | | premium_age40_max | double | | | n_rating_areas | bigint | | | n_benefits_covered | bigint | | | n_ehb_benefits | bigint | | | pcp_copay | string | | | specialist_copay | string | | | er_copay | string | | | urgent_care_copay | string | | | generic_drug_copay | string | | | inpatient_coins | string | | | quality_overall | int | | | quality_medical | int | | | quality_member_exp | int | | | issuer_company_name | string | | | issuer_naic_group_code | string | | | issuer_ind_premium_earned | double | | | issuer_ind_mlr_ratio | double | | | business_year | int | | Tools that read it: get_exchange_plan_profile Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_exchange_plan_profile_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_exchange_plan_profile_v2")` first. # CMS Federal IDR Air Ambulance determinations `medicare_silver.fact_idr_air_ambulance_determination` · Insurer negotiated rates · status live · 104,383 rows The official Air Ambulance tab of each Federal IDR PUF, preserved as its own line-item grain with air vehicle, service, party, offer, QPA, raw-value/status, quality, and M-2 lineage fields. **Grain.** One row per air-ambulance dispute line item (year, quarter, row_seq). | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | dispute_number | string | | | dli_number | string | | | payment_determination_outcome | string | | | default_decision | string | | | type_of_dispute | string | | | provider_group_name | string | | | provider_name | string | | | provider_email_domain | string | | | provider_npi | string | | | health_plan_name | string | | | health_plan_email_domain | string | | | health_plan_type | string | | | dispute_line_item_type | string | | | type_of_service_code | string | | | service_code | string | | | service_code_modifiers | string | | | place_of_service_code | string | | | item_description | string | | | location_of_service | string | | | offer_selected_from | string | | | initiating_party | string | | | certified_idr_entity | string | | | air_ambulance_vehicle_type | string | | | air_ambulance_vehicle_clinical_capacity_level | string | | | time_to_determination_days | double | | | time_to_determination_days_source_value | string | | | time_to_determination_days_status | string | | | idre_compensation | double | | | idre_compensation_source_value | string | | | idre_compensation_status | string | | | provider_offer_pct_qpa | double | | | provider_offer_pct_qpa_source_value | string | | | provider_offer_pct_qpa_status | string | | | health_plan_offer_pct_qpa | double | | | health_plan_offer_pct_qpa_source_value | string | | | health_plan_offer_pct_qpa_status | string | | | prevailing_offer_pct_qpa | double | | | prevailing_offer_pct_qpa_source_value | string | | | prevailing_offer_pct_qpa_status | string | | | qpa_pct_of_median_qpa | double | | | qpa_pct_of_median_qpa_source_value | string | | | qpa_pct_of_median_qpa_status | string | | | provider_offer_pct_median_provider_offer | double | | | provider_offer_pct_median_provider_offer_source_value | string | | | provider_offer_pct_median_provider_offer_status | string | | | health_plan_offer_pct_median_health_plan_offer | double | | | health_plan_offer_pct_median_health_plan_offer_source_value | string | | | health_plan_offer_pct_median_health_plan_offer_status | string | | | prevailing_offer_pct_median_prevailing_offer | double | | | prevailing_offer_pct_median_prevailing_offer_source_value | string | | | prevailing_offer_pct_median_prevailing_offer_status | string | | | date_of_initiation | date | | | date_of_initiation_source_value | string | | | date_of_initiation_status | string | | | source_member | string | | | source_row_number | bigint | | | source_member_crc32 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_air_ambulance_determination WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_air_ambulance_determination")` first. # CMS Federal IDR (No Surprises Act) bi-monthly operations reports: disputes initiated and closed `medicare_silver.fact_idr_bimonthly_status` · Insurer negotiated rates · status live · 169 rows The Departments' bi-monthly Federal IDR operations snapshot (HTML tables on the CMS IDR reports page, May 31, 2025 onward). Table 1 disputes initiated and Table 2 reasons for closure, each in three windows, plus the narrative's monthly figures. Counts of disputes. The most current public IDR volume: the quarterly PUF and Supplemental Tables stop at 2025 Q4. **Grain.** One row per (report_as_of, measure, window_type, window_start, window_end): disputes initiated, or closed by reason, in the two-month period / year to date / program to date / a month. 169 rows, nine editions As of May 31, 2025 ... As of September 30, 2026 (Athena f68def95, 2026-10-23). | column | type | meaning | |---|---|---| | measure | string | | | window_type | string | | | window_start | date | | | window_end | date | | | dispute_count | bigint | | | unit | string | | | source_kind | string | | | table_number | int | | | table_title | string | | | publisher_row_label | string | | | publisher_column_header | string | | | publisher_value_text | string | | | publisher_sentence | string | | | publisher_note | string | | | edition_title | string | | | edition_data_hash | string | | | page_last_modified | string | | | observed_period | date | | | asserted_at | date | | | asserted_at_evidence | string | | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | | | parse_revision | int | | | parser_version | string | | | parser_artifact_hash | string | | | is_current | boolean | | | vintage_tag | string | | | source_id | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_idr_bimonthly_status WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_bimonthly_status")` first. # CMS Federal IDR (No Surprises Act) Determinations — OON arbitration fair price `medicare_silver.fact_idr_determination` · Insurer negotiated rates · status live · 8,233,903 rows The CMS Federal Independent Dispute Resolution (No Surprises Act) OON Emergency and Non-Emergency line-item PUF. It reports who prevailed and provider, plan, and prevailing offers as a percentage of QPA by service code, place of service, location, specialty, practice size, and plan type. Air Ambulance and QPA/Offers are separate accepted grains. **Grain.** One row per OON dispute line item (year, quarter, row_seq) — outcome + offers as % of QPA. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | dispute_number | string | | | dli_number | string | | | payment_determination_outcome | string | | | default_decision | string | | | type_of_dispute | string | | | provider_group_name | string | | | provider_name | string | | | provider_npi | string | | | practice_size | string | | | health_plan_name | string | | | health_plan_type | string | | | dispute_line_item_type | string | | | type_of_service_code | string | | | service_code | string | | | place_of_service_code | string | | | item_description | string | | | location_of_service | string | | | specialty | string | | | offer_selected_from | string | | | initiating_party | string | | | time_to_determination_days | double | | | idre_compensation | double | | | provider_offer_pct_qpa | double | | | health_plan_offer_pct_qpa | double | | | prevailing_offer_pct_qpa | double | | | qpa_pct_of_median_qpa | 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 | | | provider_email_domain | string | | | health_plan_email_domain | string | | | service_code_modifiers | string | | | certified_idr_entity | string | | | time_to_determination_days_source_value | string | | | time_to_determination_days_status | string | | | idre_compensation_source_value | string | | | idre_compensation_status | string | | | provider_offer_pct_qpa_source_value | string | | | provider_offer_pct_qpa_status | string | | | health_plan_offer_pct_qpa_source_value | string | | | health_plan_offer_pct_qpa_status | string | | | prevailing_offer_pct_qpa_source_value | string | | | prevailing_offer_pct_qpa_status | string | | | qpa_pct_of_median_qpa_source_value | string | | | qpa_pct_of_median_qpa_status | string | | | provider_offer_pct_median_provider_offer | double | | | provider_offer_pct_median_provider_offer_source_value | string | | | provider_offer_pct_median_provider_offer_status | string | | | health_plan_offer_pct_median_health_plan_offer | double | | | health_plan_offer_pct_median_health_plan_offer_source_value | string | | | health_plan_offer_pct_median_health_plan_offer_status | string | | | prevailing_offer_pct_median_prevailing_offer | double | | | prevailing_offer_pct_median_prevailing_offer_source_value | string | | | prevailing_offer_pct_median_prevailing_offer_status | string | | | date_of_initiation | date | | | date_of_initiation_source_value | string | | | date_of_initiation_status | string | | | source_member | string | | | source_row_number | bigint | | | source_member_crc32 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_idr_determination WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_determination")` first. # CMS Federal IDR QPA and offers `medicare_silver.fact_idr_qpa_offer` · Insurer negotiated rates · status live · 11,346,219 rows The official QPA and Offers tab, separated from determination line items because its publisher grain and historical identifiers differ. Carries service, geography/POS, QPA, provider/plan/prevailing offers, selected/default indicators, raw-value/status, and M-2 lineage. **Grain.** One row per published QPA/offer observation (year, quarter, row_seq); early workbooks do not expose dispute/DLI identifiers on this tab. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | service_code | string | | | type_of_service_code | string | | | service_code_modifiers | string | | | place_of_service_code | string | | | geographical_region | string | | | air_ambulance_pickup_location | string | | | offer_selected_from | string | | | default_decision | string | | | initiating_party | string | | | dispute_line_item_type | string | | | certified_idr_entity | string | | | qpa | double | | | qpa_source_value | string | | | qpa_status | string | | | provider_offer | double | | | provider_offer_source_value | string | | | provider_offer_status | string | | | health_plan_offer | double | | | health_plan_offer_source_value | string | | | health_plan_offer_status | string | | | prevailing_offer | double | | | prevailing_offer_source_value | string | | | prevailing_offer_status | string | | | cost_sharing_amount | double | | | cost_sharing_amount_source_value | string | | | cost_sharing_amount_status | string | | | initial_payment_amount | double | | | initial_payment_amount_source_value | string | | | initial_payment_amount_status | string | | | year_of_service | int | | | year_of_service_source_value | string | | | year_of_service_status | string | | | source_member | string | | | source_row_number | bigint | | | source_member_crc32 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_qpa_offer WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_qpa_offer")` first. # CMS Federal IDR Supplemental top disputing parties `medicare_silver.fact_idr_supplemental_party` · Insurer negotiated rates · status live · 480 rows Top initiating and non-initiating parties or representatives for emergency/non-emergency and air ambulance disputes, including dispute share and health-plan-type subtotals where published. **Grain.** One row per quarterly top-10 party/rank/service-category/party-role in Supplemental Tables 8-11. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | table_number | int | | | table_title | string | | | source_sheet | string | | | source_row_number | int | | | party_role | string | | | service_category | string | | | rank | int | | | party_or_representative | string | | | total_disputes | double | | | total_disputes_status | string | | | percent_of_disputes | double | | | percent_of_disputes_source_value | string | | | percent_of_disputes_status | string | | | self_insured_group_health_plan_disputes | double | | | fully_insured_group_health_plan_disputes | double | | | individual_health_insurance_disputes | double | | | fehb_carrier_disputes | double | | | non_federal_government_plan_disputes | double | | | church_plan_disputes | double | | | no_issuer_response_disputes | double | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_supplemental_party WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_supplemental_party")` first. # CMS Federal IDR prevailing offers by QPA cost band `medicare_silver.fact_idr_supplemental_qpa_band` · Insurer negotiated rates · status live · 72 rows Median prevailing offer as percentage of QPA plus determination and item/service counts by QPA cost band. **Grain.** One row per (year, quarter, QPA range) from Supplemental Table 13. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | table_number | int | | | table_title | string | | | source_sheet | string | | | source_row_number | int | | | qpa_range | string | | | median_prevailing_offer_pct_qpa | double | | | median_prevailing_offer_pct_qpa_source_value | string | | | median_prevailing_offer_pct_qpa_status | string | | | payment_determinations | double | | | items_or_services | double | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_supplemental_qpa_band WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_supplemental_qpa_band")` first. # CMS Federal IDR prevailing offers by specialty `medicare_silver.fact_idr_supplemental_specialty` · Insurer negotiated rates · status live · 321 rows Median prevailing offer as percentage of QPA and determination/item counts by CMS-published specialty/CPT band. **Grain.** One row per (year, quarter, CPT range, specialty) from Supplemental Table 14. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | table_number | int | | | table_title | string | | | source_sheet | string | | | source_row_number | int | | | cpt_range | string | | | specialty | string | | | median_prevailing_offer_pct_qpa | double | | | median_prevailing_offer_pct_qpa_source_value | string | | | median_prevailing_offer_pct_qpa_status | string | | | payment_determinations | double | | | items_or_services | double | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_supplemental_specialty WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_supplemental_specialty")` first. # CMS Federal IDR Supplemental initiations by state `medicare_silver.fact_idr_supplemental_state` · Insurer negotiated rates · status live · 672 rows Federal IDR dispute initiations by service category and state/territory. The CMS plus-sign state-law/all-payer-model footnote is retained as an explicit indicator, not part of the state name. **Grain.** One row per (year, quarter, state or territory) from Supplemental Table 7. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | table_number | int | | | table_title | string | | | source_sheet | string | | | source_row_number | int | | | state_or_territory | string | | | state_law_or_all_payer_model_indicator | boolean | | | emergency_non_emergency_disputes | double | | | air_ambulance_disputes | double | | | total_disputes | double | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_supplemental_state WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_supplemental_state")` first. # CMS Federal IDR Supplemental summary and outcome tables `medicare_silver.fact_idr_supplemental_summary` · Insurer negotiated rates · status live · 409 rows Quarterly Federal IDR aggregate initiations, eligibility challenges, closure reasons, program expenditures/fees/compensation, and determination outcomes, with emergency/non-emergency, air-ambulance, and total values kept distinct. **Grain.** One row per quarterly published metric in Supplemental Tables 1-6 and 12. | column | type | meaning | |---|---|---| | year | int | | | quarter | int | | | row_seq | bigint | | | table_number | int | | | table_title | string | | | source_sheet | string | | | source_row_number | int | | | metric_name | string | | | value_unit | string | | | emergency_non_emergency_value | double | | | emergency_non_emergency_source_value | string | | | emergency_non_emergency_status | string | | | air_ambulance_value | double | | | air_ambulance_source_value | string | | | air_ambulance_status | string | | | total_value | double | | | total_source_value | string | | | total_status | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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_idr_supplemental_summary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_idr_supplemental_summary")` first. # CMS CCIIO Machine Readable URL PUF — restricted issuer URL assertion history `medicare_silver.fact_machine_readable_url_puf_history` · Insurer negotiated rates · status live CMS-published issuer/state assertions of submitted machine-readable index URLs for PY2016-PY2026, including eight recovered prior artifact revisions. Technical point-of-contact fields remain restricted; submitted URLs are inert values and linked issuer JSON is a separate source lane. **Grain.** One nonempty publisher worksheet row within one immutable ZIP/XLSX artifact, keyed by source, plan year, ZIP SHA-256, archive member, and one-based logical source row number. | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_silver.fact_machine_readable_url_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_machine_readable_url_puf_history")` first. # CMS Marketplace issuer geography enrollment measure history `medicare_silver.fact_marketplace_issuer_geography_enrollment_measure_history` · Insurer negotiated rates · status live · 3,296,584 rows CMS annual federal-platform issuer-by-county and issuer-state-total Marketplace enrollment and demographic measures through business year 2025, preserving suppression, geography grain, measure eras, and workbook/Bronze lineage. **Grain.** One source-native issuer geography measure observation per business year, federal platform, issuer, county or state-total, workbook sheet row, and immutable workbook artifact. | column | type | meaning | |---|---|---| | business_year | int | | | workbook_release_year | int | | | platform | string | | | methodology_era | string | | | coverage_type | string | | | grain | string | | | state_code | string | | | issuer_hios_id | string | | | plan_id | string | | | plan_id_kind | string | | | county_fips | string | | | county_raw | string | | | workbook_sheet | string | | | source_row_number | bigint | | | source_measure_name | string | | | measure_name | string | | | raw_value | string | | | numeric_value | decimal(24,6) | | | value_state | string | | | source_workbook_sha256 | string | | | source_workbook_bytes | bigint | | | sheet_logical_sha256 | string | | | publisher_modified_at | string | | | publisher_observation_status | string | | | expected_table_measure_observations | 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_marketplace_issuer_geography_enrollment_measure_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_marketplace_issuer_geography_enrollment_measure_history")` first. # CMS Marketplace monthly effectuated enrollment release history `medicare_silver.fact_marketplace_monthly_effectuated_enrollment_history` · Insurer negotiated rates · status live · 6,588 rows CMS rolling monthly Marketplace effectuated enrollment by state and exchange platform from January 2016 through February 2026 in the accepted release, retaining release identity, publisher totals, and Bronze lineage. **Grain.** One state-or-publisher-total by platform, coverage year, and coverage month observation inside one immutable CMS release artifact. | column | type | meaning | |---|---|---| | coverage_year | int | | | coverage_month | int | | | coverage_month_name | string | | | state_code | string | | | platform | string | | | effectuated_enrollment | bigint | | | is_publisher_total | boolean | | | source_row_number | bigint | | | source_artifact_sha256 | string | | | source_artifact_bytes | bigint | | | publisher_modified | 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_marketplace_monthly_effectuated_enrollment_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_marketplace_monthly_effectuated_enrollment_history")` first. # CMS Marketplace issuer and plan enrollment measure history `medicare_silver.fact_marketplace_plan_enrollment_measure_history` · Insurer negotiated rates · status live · 233,906 rows CMS annual Marketplace plan-level enrollment measures across federal-platform and independent state-based Marketplace workbooks through business year 2025, preserving measure eras, suppression, exact plan identifiers, and workbook/Bronze lineage. **Grain.** One source-native plan measure observation per business year, platform, issuer, plan, workbook sheet row, and immutable workbook artifact. | column | type | meaning | |---|---|---| | business_year | int | | | workbook_release_year | int | | | platform | string | | | methodology_era | string | | | coverage_type | string | | | grain | string | | | state_code | string | | | issuer_hios_id | string | | | plan_id | string | | | plan_id_kind | string | | | county_fips | string | | | county_raw | string | | | workbook_sheet | string | | | source_row_number | bigint | | | source_measure_name | string | | | measure_name | string | | | raw_value | string | | | numeric_value | decimal(24,6) | | | value_state | string | | | source_workbook_sha256 | string | | | source_workbook_bytes | bigint | | | sheet_logical_sha256 | string | | | publisher_modified_at | string | | | publisher_observation_status | string | | | expected_table_measure_observations | 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_marketplace_plan_enrollment_measure_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_marketplace_plan_enrollment_measure_history")` first. # CMS Nationwide QRS PUF — Exchange reporting-unit quality history `medicare_silver.fact_nationwide_qrs_puf_history` · Insurer negotiated rates · status live · 1,986 rows CMS Nationwide Quality Rating System results across PY2019-PY2026 at issuer-state-product-type reporting-unit grain, preserving seven exact schema eras, ratings-year semantics, raw field-qualified publisher codes, dictionary matrices, and container-versus-data-unit revision identity. **Grain.** One publisher reporting-unit row within one immutable annual CSV data unit, keyed by publication plan year, CSV SHA-256, and one-based source row number; container revisions are retained separately. | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | source_format | string | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_silver.fact_nationwide_qrs_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_nationwide_qrs_puf_history")` first. # CMS CCIIO Quality PUF — Marketplace QHP quality star ratings `medicare_silver.fact_quality_puf_history` · Insurer negotiated rates · status live · 35,752 rows The CMS Marketplace Quality PUF — QHP quality star ratings assigned to plans on HealthCare.gov, per issuer x plan. Lossless hybrid CSV/XLSX. The quality dimension of the exchange plan graph. **Grain.** One publisher row per (business_year, source_row_number); lossless CSV/XLSX stored as ordered_header_json + raw_values_json. 35,752 rows PY2017-2026, one CMS artifact per business_year (Athena 99901202, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | source_format | string | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_silver.fact_quality_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_quality_puf_history")` first. # CMS CCIIO Rate PUF — ACA Marketplace QHP plan premium rates `medicare_silver.fact_rate_puf` · Insurer negotiated rates · status live · 32,902,283 rows The CMS CCIIO Rate PUF (data.healthcare.gov) — the actual filed monthly premium for every ACA Marketplace QHP by issuer × plan × rating area × age × tobacco status: individual rate, individual-tobacco rate, and family-tier rates (couple, +1/+2/+3 dependents). A commercial PRICE signal (plan premium geography by issuer/area/age) independent of TiC negotiated rates + hospital chargemaster — the premium side of the commercial market. ~2-3M rows/year, PY2014-2026, partition by business_year. **Grain.** One row per (business_year, issuer × plan × rating-area × age × tobacco) — individual + family premiums. | column | type | meaning | |---|---|---| | business_year | int | | | row_seq | bigint | | | state_code | string | | | issuer_id | string | | | source_name | 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 | | | 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_rate_puf WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_rate_puf")` first. # CMS CCIIO Rate PUF: lossless revision history from the CMS ZIPs, PY2014-2026 `medicare_silver.fact_rate_puf_history` · Insurer negotiated rates · status live · 36,535,872 rows Append-only, lossless history of the CMS Exchange Rate PUF read from the 13 official CMS ZIPs (pipelines/medicare/silver/rate_puf_history_writer.py, #3568/#3576): typed rates beside raw_values_json, header hash, schema era, archive member and Bronze lineage on every row. Replaces the data.healthcare.gov mirror behind medicare_silver.fact_rate_puf. Read it through medicare_semantic.vw_rate_puf_current unless you need a specific revision. **Grain.** One publisher CSV record per CMS ZIP revision: (business_year, archive_member_sha256, source_row_number). 36,535,872 rows, PY2014-2026, one revision per business_year today (3,796,388 / 4,676,092 / 4,171,845 / 3,098,756 / 2,287,807 / 1,968,926 / 1,886,351 / 2,136,450 / 2,498,402 / 2,752,441 / 2,608,212 / 2,418,441 / 2,235,761; Athena 7aa09831, 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_rate_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_rate_puf_history")` first. # CCIIO Unified Rate Review PUF (URRT Part I) - filings, plans and rating-area factors, PY2024-PY2026 `medicare_silver.fact_rate_review_puf_history` · Insurer negotiated rates · status partial · 285,554 rows The Part I Unified Rate Review Template data CMS publishes for every single-risk-pool rate filing, individual and small group, on and off exchange, 50 states and DC. Worksheet I per filing (issuer, market, effective date, filing cycle and status), Worksheet II per plan (cumulative proposed rate change as last filed and as first filed, current enrollment, projected member months, review determination), Worksheet III per rating-area factor. Lossless: the ordered header and raw values of every row are kept beside the typed columns. **Grain.** One publisher CSV row per (plan_year, sha256_content_hash, worksheet, source_row_number); WKSH1 is one row per filing, WKSH2 one row per plan, WKSH3 one row per issuer x market x rating area. Measured 2026-09-25, 285,554 rows = 285,554 keys (Athena 942ed2c8). | column | type | meaning | |---|---|---| | plan_year | int | | | worksheet | string | | | source_row_number | bigint | | | filing_id | string | | | hios_issuer_id | string | | | issuer_name | string | | | state_code | string | | | market | string | | | effective_date | date | | | filing_cycle | string | | | filing_status | string | | | plan_id | string | | | product_id | string | | | plan_category | string | | | on_exchange | boolean | | | review_determination | string | | | rate_change_cumulative | double | | | rate_change_cumulative_initial | double | | | current_enrollment | double | | | projected_member_months | double | | | rating_area_id | string | | | rating_area_factor | double | | | source_encoding | string | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | string | | | artifact_id | string | | | source_zip_bytes | bigint | | | final_source_url | string | | | archive_member | string | | | archive_member_sha256 | string | | | archive_member_bytes | bigint | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_silver.fact_rate_review_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_rate_review_puf_history")` first. # CMS independent state-based exchange Benefits and Cost Sharing PUF: lossless history, PY2016-2026 `medicare_silver.fact_sbe_benefits_cost_sharing_puf_history` · Insurer negotiated rates · status live · 8,401,524 rows Benefits and Cost Sharing for the independent state-based exchanges: one row per plan variant and benefit with coverage, EHB, state-mandate, quantity-limit and exclusion fields, from CMS's SBE template, kept losslessly (raw_values_json + ordered_header_json) with Bronze lineage. **Grain.** One publisher CSV record per CMS SBE package member: (business_year, state, archive_member_sha256, source_row_number). 8,401,524 rows, PY2016-2026 (826,084 / 607,958 / 465,902 / 592,897 / 633,953 / 762,909 / 932,995 / 808,079 / 870,855 / 913,471 / 986,421; Athena 602bb22e, 4d0b683d, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | source_row_number | bigint | | | standard_component_id | string | | | plan_id | string | | | benefit_name | string | | | version_num | string | | | publisher_row_number | string | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | is_covered_raw | string | | | is_ehb_raw | string | | | copay_inn_tier1_raw | string | | | copay_inn_tier2_raw | string | | | copay_out_of_net_raw | string | | | coins_inn_tier1_raw | string | | | coins_inn_tier2_raw | string | | | coins_out_of_net_raw | string | | | quant_limit_on_svc_raw | string | | | limit_qty_raw | string | | | limit_unit_raw | string | | | exclusions_raw | string | | | explanation_raw | string | | | ehb_var_reason_raw | string | | | is_state_mandate_raw | string | | | is_excl_from_inn_moop_raw | string | | | is_excl_from_oon_moop_raw | string | | | schema_era | string | | | source_encoding | string | | | header_sha256 | string | | | raw_row_sha256 | string | | | raw_values_json | string | | | semantic_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 | | | column_count | int | | | publisher_modified_at | string | | | publisher_etag | string | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | semantic_key_status | string | | | data_unit_id | string | | | vintage_kind | string | | | canonical_url | string | | | acquisition_url | string | | | capture_timestamp | string | | | cdx_digest | string | | | publisher_observation_status | string | | | acquisition_observed_at | string | | | source_vintage_label | string | | | revision_order_sha256 | string | | | reviewed_artifact_order_json | 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 medicare_silver.fact_sbe_benefits_cost_sharing_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_sbe_benefits_cost_sharing_puf_history")` first. # CMS independent state-based exchange Business Rules PUF: lossless history, PY2016-2026 `medicare_silver.fact_sbe_business_rules_puf_history` · Insurer negotiated rates · status live · 219,047 rows Business Rules (age determination, dependent and cohabitation rules per issuer product) for the independent state-based exchanges, from CMS's SBE packages, kept losslessly with Bronze lineage. **Grain.** One publisher CSV record per CMS SBE package member: (business_year, state, archive_member_sha256, source_row_number). 219,047 rows, PY2016-2026 (11,229 / 8,673 / 13,883 / 27,880 / 24,035 / 15,997 / 13,547 / 24,345 / 23,602 / 28,102 / 27,754; Athena 602bb22e, 541de06f, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | source_row_number | bigint | | | rule_scope | string | | | state_code | string | | | issuer_id | string | | | source_name | string | | | version_num | string | | | import_date | string | | | product_id | string | | | standard_component_id | string | | | schema_era | string | | | source_encoding | string | | | raw_row_sha256 | string | | | raw_values_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_business_rules_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_sbe_business_rules_puf_history")` first. # CMS independent state-based exchange Network PUF: lossless history, PY2016-2026 `medicare_silver.fact_sbe_network_puf_history` · Insurer negotiated rates · status live · 5,292 rows Provider network names, ids and URLs per issuer for the independent state-based exchanges, from CMS's SBE packages, kept losslessly with Bronze lineage. **Grain.** One publisher CSV record per CMS SBE package member: (business_year, state, archive_member_sha256, source_row_number). 5,292 rows, PY2016-2026 (460 / 396 / 353 / 610 / 744 / 465 / 452 / 442 / 440 / 454 / 476; Athena 602bb22e, 76eaed22, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | source_row_number | bigint | | | state_code | string | | | issuer_id | string | | | source_name | string | | | version_num | string | | | import_date | string | | | issuer_id_2 | string | | | state_code_2 | string | | | network_name | string | | | network_id | string | | | network_url | string | | | network_url_shape | string | | | market_coverage | string | | | dental_only | string | | | schema_era | string | | | source_encoding | string | | | raw_row_sha256 | string | | | raw_values_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_network_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_sbe_network_puf_history")` first. # CMS independent state-based exchange Plan Attributes PUF: lossless history, PY2016-2026 `medicare_silver.fact_sbe_plan_attributes_puf_history` · Insurer negotiated rates · status live · 113,005 rows Plan Attributes for the states that run their own exchange (not HealthCare.gov), from CMS's state-based PUF packages: one row per plan variant with standard_component_id, plan_id, issuer, market (Individual and SHOP), metal level, plan type, network and service area ids, plan-level deductibles, MOOPs and SBC scenarios inside raw_values_json, beside the lossless raw record and Bronze lineage. Parsed with the federal Plan Attributes parser (header-driven) plus a reviewed spelling-only header alias table. **Grain.** One publisher CSV record per CMS SBE package member: (business_year, state, archive_member_sha256, source_row_number). 113,005 rows, PY2016-2026 (10,489 / 8,464 / 7,457 / 7,318 / 8,348 / 10,253 / 12,554 / 10,850 / 11,728 / 12,327 / 13,217; 17, 16, 14, 14, 15, 17, 19, 19, 20, 21, 22 states; Athena 4f7c541b, 9f6177ba, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | source_row_number | bigint | | | plan_id | string | | | standard_component_id | string | | | version_num | string | | | state_code | string | | | issuer_id | string | | | source_name | string | | | import_date | string | | | market_coverage | string | | | dental_only | string | | | product_id | string | | | network_id | string | | | service_area_id | string | | | plan_type | string | | | metal_level | string | | | schema_era | string | | | source_encoding | string | | | header_sha256 | string | | | raw_row_sha256 | string | | | raw_values_json | string | | | plan_version_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 | | | 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_plan_attributes_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_sbe_plan_attributes_puf_history")` first. # 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. # CMS independent state-based exchange Service Area PUF: lossless history, PY2016-2026 `medicare_silver.fact_sbe_service_area_puf_history` · Insurer negotiated rates · status live · 115,672 rows Service areas (issuer x service area x county or ZIP) for the independent state-based exchanges, from CMS's SBE packages, with the documented normalizations beside the published values (county_raw, zip_codes_raw). **Grain.** One publisher CSV record per CMS SBE package member: (business_year, state, archive_member_sha256, source_row_number). 115,672 rows, PY2016-2026 (20,720 / 19,973 / 19,977 / 4,982 / 3,493 / 4,483 / 4,746 / 4,856 / 9,457 / 11,326 / 11,659; Athena 602bb22e, c319e6ba, 2026-10-13). | column | type | meaning | |---|---|---| | business_year | int | | | source_row_number | bigint | | | state_code | string | | | issuer_id | string | | | source_name | string | | | version_num | string | | | import_date | string | | | issuer_id_2 | string | | | state_code_2 | string | | | service_area_id | string | | | service_area_name | string | | | cover_entire_state | string | | | county_raw | string | | | county_fips_normalized | string | | | partial_county | string | | | zip_codes_raw | string | | | zip_codes_json | string | | | partial_county_justification | string | | | publisher_row_number | string | | | market_coverage | string | | | dental_only | string | | | geography_projection_status | string | | | schema_era | string | | | source_encoding | string | | | raw_row_sha256 | string | | | raw_values_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_service_area_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_sbe_service_area_puf_history")` first. # CMS Transparency in QHP Coverage PUF — partial Individual QHP serving derivative `medicare_silver.fact_tc_puf_issuer_claims` · Insurer negotiated rates · status live · 25,666 rows A 25,666-row partial derivative of the CMS CCIIO Transparency in QHP Coverage PUF: only the Individual QHP tabs from publication years 2022-2026. Those publications contain measurement data from 2020-2024 respectively. Do not treat plan_year as the measure year, aggregate repeated issuer measures across plans, or publish payer rankings until denominator and suppression semantics pass review. **Grain.** Partial table: one Individual-QHP row per (publication-year label stored as plan_year, 14-character Plan_ID); issuer-level measures repeat across plan rows. | column | type | meaning | |---|---|---| | plan_year | int | | | individual_shop | string | | | exchange_type | string | | | state | string | | | issuer_name | string | | | issuer_id | string | | | sadp_only | string | | | plan_id | string | | | plan_type | string | | | qhp_or_sadp | string | | | metal_level | string | | | is_issuer_new_to_exchange | string | | | url_claims_payment_policies | string | | | rate_review_url | string | | | financial_information_url | string | | | claims_received_oon | double | | | claims_received_in | double | | | claims_denied_oon | double | | | claims_denied_in | double | | | claims_resubmitted_oon | double | | | claims_resubmitted_in | double | | | internal_appeals_filed | double | | | internal_appeals_overturned | double | | | pct_internal_appeals_overturned | double | | | external_appeals_filed | double | | | external_appeals_overturned | double | | | pct_external_appeals_overturned | double | | | avg_monthly_enrollment | double | | | avg_monthly_disenrollment | double | | | plan_claims_received_oon | double | | | plan_claims_received_in | double | | | plan_claims_denied_oon | double | | | plan_claims_denied_in | double | | | plan_claims_resubmitted_oon | double | | | plan_claims_resubmitted_in | double | | | plan_denied_referral_required | double | | | plan_denied_out_of_network | double | | | plan_denied_services_excluded | double | | | plan_denied_not_med_nec | double | | | plan_denied_not_med_nec_bh | double | | | plan_denied_benefit_limit | double | | | plan_denied_member_not_covered | double | | | plan_denied_investigational | double | | | plan_denied_administrative | double | | | plan_denied_other | 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_tc_puf_issuer_claims WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_tc_puf_issuer_claims")` first. # CMS CCIIO Transparency in Coverage PUF — QHP claims transparency (multi-sheet XLSX) `medicare_silver.fact_transparency_in_coverage_puf_history` · Insurer negotiated rates · status live · 40,222 rows Per issuer x plan claims transparency (received / denied / resubmitted, in- and out-of-network) from the CMS Transparency in Coverage PUF, across all 3 market-segment sheets (Ind QHP / Ind SADP / SHOP) plus the legacy 2017-2020 combined sheet. Lossless: raw cells preserved in ordered_header_json + raw_values_json with a market_segment dimension. Payer-behavior signal. **Grain.** One publisher row per (business_year, market_segment, sheet source_row_number). 3 market segments (Ind QHP / Ind SADP / SHOP), lossless multi-sheet XLSX stored as ordered_header_json + raw_values_json. 40,222 rows across PY2017-2026. | column | type | meaning | |---|---|---| | business_year | int | | | market_segment | string | | | sheet_name | string | | | source_row_number | bigint | | | worksheet_row_number | bigint | | | ordered_header_json | string | | | header_sha256 | string | | | column_count | int | | | raw_values_json | string | | | raw_row_sha256 | 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 | | | archive_member_crc32 | string | | | archive_inventory_json | string | | | expected_artifact_rows | bigint | | | publisher_modified_at | string | | | publisher_etag | 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 medicare_silver.fact_transparency_in_coverage_puf_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_transparency_in_coverage_puf_history")` first. # CMS rate review site (ratereview.healthcare.gov): ACA individual and small-group rate filings, requested and final average rate change, PY2019-2027 `medicare_silver.fact_urr_submission_history` · Insurer negotiated rates · status live · 11,095 rows CMS's public summary of every ACA single-risk-pool rate filing, captured from the site's public JSON service: the issuer's requested average rate change, the final change once the state or CMS finishes review, the range across the filing's products, review status and determination, and links to the redacted actuarial memorandum and the consumer justification narrative. The only national source of next year's requested changes before the URR PUF posts, and of FINAL changes per filing (the PUF carries filed changes only). Rates are percent points. **Grain.** One row per element of one capture bundle: record_type 'submission' (one filing: issuer x state x market x effective date x review period) or 'product' (one product in a filing; captured for PY2026-2027 only). Never add the two. 11,095 rows: 7,372 submissions PY2019-2027 + 3,723 products (PY2026 2,156, PY2027 1,567), one capture per plan year, all taken 2026-10-26 (Athena 178ad67a, 2026-10-26). | column | type | meaning | |---|---|---| | plan_year | int | | | record_type | string | | | capture_line | bigint | | | element_index | int | | | state_code | string | | | submission_id | bigint | | | issuer_hios_id | string | | | issuer_name | string | | | market | string | | | effective_date | date | | | review_period | string | | | review_status | string | | | review_status_code | string | | | final_determination | string | | | current_status_date | date | | | rate_change_requested_pct | double | | | rate_change_final_pct | double | | | rate_change_range_min_pct | double | | | rate_change_range_max_pct | double | | | product_count | int | | | includes_exchange_plan_flag | int | | | product_id | string | | | product_name | string | | | actuarial_memo_url | string | | | consumer_justification_url | string | | | reviewer_comments | string | | | request_url | string | | | fetched_at | string | | | response_sha256 | string | | | raw_record_json | string | | | raw_record_sha256 | string | | | artifact_id | string | | | source_bundle_bytes | bigint | | | bundle_responses | bigint | | | expected_artifact_rows | bigint | | | capture_started_at | string | | | requested_zero_placeholder | int | | | response_meta_json | string | | | content_fingerprint | 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 medicare_silver.fact_urr_submission_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_urr_submission_history")` first. # Virginia BOI balance billing arbitration reports: state IDR outcomes, offers, awards, OON claims `medicare_silver.fact_va_boi_balance_billing_arbitration` · Insurer negotiated rates · status live · 1,637 rows Virginia State Corporation Commission Bureau of Insurance reports to the General Assembly under Code of Virginia 38.2-3445.02 I (July, 2021-2025) and 38.2-3445.2 C (December, 2021-). Arbitration decisions by specialty and prevailing party, average offers and awards per claimant, share of bundled arbitrations, carrier-reported out-of-network claim counts (emergency and in-network-facility surgical/ancillary), network terminations, reinstatement payment levels and emergency allowed claims. **Grain.** One row per printed report-table cell (report_id, exhibit_id, row_order, column_order, component). 1,637 rows from 10 reports, July series RD261-RD363 and December series RD750-RD934 (Athena 10e61330, 2026-10-23). | column | type | meaning | |---|---|---| | report_series | string | | | report_title | string | | | report_date | date | | | report_window_start | date | | | report_window_end | date | | | exhibit_id | string | | | exhibit_number | string | | | exhibit_title | string | | | exhibit_type | string | | | page_number | int | | | category_dimension | string | | | row_order | int | | | row_key | string | | | row_label | string | | | column_order | int | | | column_label | string | | | component | string | | | measure | string | | | unit | string | | | period_label | string | | | period_start | date | | | period_end | date | | | cell_text | string | | | value_text | string | | | value | double | | | value_status | string | | | quality_flags | string | | | observed_period | date | | | asserted_at | date | | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | | | parse_revision | int | | | vintage_tag | string | | | is_current | boolean | | | source_id | string | | | source_url | string | | | landing_page_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | parser_version | string | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_va_boi_balance_billing_arbitration WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_va_boi_balance_billing_arbitration")` first. # Marketplace products, published CSV behind vw_hix_benchmark_change_v1 (hix_benchmark_change_v1) `medicare_silver.hix_benchmark_change_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_benchmark_change_v1 types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per county x (year - 1, year); every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | year | string | | | prior_year | string | | | state | string | | | county | string | | | rating_area | string | | | slcsp_prior | string | | | slcsp | string | | | chg_usd | string | | | chg_pct | string | | | bench_plan_prior | string | | | bench_parent_prior | string | | | bench_plan | string | | | bench_parent | string | | | successor_plan | string | | | successor_basis | string | | | successor_reason | string | | | successor_metal | string | | | successor_premium | string | | | successor_type | string | | | repricing_usd | string | | | reranking_usd | string | | | holder_change | string | | | lcsp_prior | string | | | lcsp | string | | | low_bronze_prior | string | | | low_bronze | string | | | low_gold_prior | string | | | low_gold | string | | | n_silver_prior | string | | | n_silver | string | | | n_parents_prior | string | | | n_parents | string | | | rating_area_changed | string | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_benchmark_change_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_benchmark_change_v1")` first. # Marketplace products, published CSV behind vw_hix_county_benchmark_ages_v1 (hix_county_benchmark_ages_v1) `medicare_silver.hix_county_benchmark_ages_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_county_benchmark_ages_v1 types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per county x age x plan year (materialized by materialize_ages.py); every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | year | string | | | state | string | | | county | string | | | rating_area | string | | | age | string | | | slcsp_plan | string | | | slcsp | string | | | slcsp_ehb | string | | | lcsp_plan | string | | | lcsp | string | | | low_bronze_plan | string | | | low_bronze | string | | | low_gold_plan | string | | | low_gold | string | | | slcsp_age40 | string | | | source | string | | | premium_source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_county_benchmark_ages_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_county_benchmark_ages_v1")` first. # Marketplace products, published CSV behind vw_hix_county_benchmark_v1 (hix_county_benchmark_v1) `medicare_silver.hix_county_benchmark_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_county_benchmark_v1 types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per county x plan year at age 40; every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | year | string | | | state | string | | | county | string | | | rating_area | string | | | ra_mapping | string | | | ra_land_share | string | | | age | string | | | n_silver | string | | | n_issuers | string | | | lcsp | string | | | lcsp_parent | string | | | slcsp | string | | | slcsp_ehb | string | | | slcsp_plan | string | | | slcsp_parent | string | | | slcsp_listrank | string | | | lcsp_plan | string | | | n_parents | string | | | low_bronze | string | | | low_bronze_plan | string | | | low_gold | string | | | low_gold_plan | string | | | partial_plans | string | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_county_benchmark_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_county_benchmark_v1")` first. # Premium tax credit applicable percentages 2014-2027 (hix_credit_schedule_v1) `medicare_silver.hix_credit_schedule_v1` · Insurer negotiated rates · status partial The applicable percentage table each year (statute 2014, IRS Rev. Procs 2015-2020 and 2026-2027, the enhanced schedule 2021-2025) with the document and URL on every row. **Grain.** One row per plan year x income band x regime: 114 rows. | column | type | meaning | |---|---|---| | plan_year | string | | | fpl_low | string | | | fpl_high | string | | | initial_pct | string | | | final_pct | string | | | regime | string | | | source_doc | string | | | source_url | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_credit_schedule_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_credit_schedule_v1")` first. # Marketplace products, published CSV behind vw_hix_market_structure_v1 (hix_market_structure_v1) `medicare_silver.hix_market_structure_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_market_structure_v1 types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per county x parent x plan year; every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | year | string | | | state | string | | | county | string | | | rating_area | string | | | parent | string | | | issuers | string | | | plans | string | | | silver_plans | string | | | bronze_plans | string | | | gold_plans | string | | | cheapest_silver_age40 | string | | | cheapest_silver_rank | string | | | parents_with_silver | string | | | holds_lcsp | string | | | holds_benchmark | string | | | status | string | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_market_structure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_market_structure_v1")` first. # Marketplace products, published CSV behind vw_hix_plan_county_v1 (hix_plan_county_v1) `medicare_silver.hix_plan_county_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_plan_county_v1 types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per plan x county x plan year; every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | year | string | | | state | string | | | county | string | | | rating_area | string | | | plan_id | string | | | issuer_id | string | | | parent | string | | | metal | string | | | premium_age40 | string | | | premium_ehb_age40 | string | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_plan_county_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_plan_county_v1")` first. # HHS poverty guidelines 2013-2026 (hix_poverty_guidelines_v1) `medicare_silver.hix_poverty_guidelines_v1` · Insurer negotiated rates · status partial HHS poverty guidelines from the Federal Register; plan year Y uses guideline year Y - 1. **Grain.** One row per guideline year x area (48 states and DC, Alaska, Hawaii): 42 rows. | column | type | meaning | |---|---|---| | guideline_year | string | | | area | string | | | first_person | string | | | each_additional | string | | | source_doc | string | | | source_url | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_poverty_guidelines_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_poverty_guidelines_v1")` first. # Marketplace products, published CSV behind vw_hix_plan_premium_v1 (2027 state-run rows) (hix_sbe2027_state_rates_v1) `medicare_silver.hix_sbe2027_state_rates_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_plan_premium_v1 (2027 state-run rows) types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per plan x rating area x age, 2027 state-run exchanges from the states' files; every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | state | string | | | plan_year | string | | | issuer_name | string | | | issuer_hios_id | string | | | plan_id | string | | | plan_name | string | | | metal | string | | | on_exchange | string | | | rating_area | string | | | county_fips | string | | | age | string | | | premium | string | | | ehb_pct | string | | | source_url | string | | | source_sha256 | string | | | locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_sbe2027_state_rates_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_sbe2027_state_rates_v1")` first. # Marketplace products, published CSV behind vw_hix_plan_county_v1 (2027 state-run rows) (hix_sbe2027_state_service_area_v1) `medicare_silver.hix_sbe2027_state_service_area_v1` · Insurer negotiated rates · status partial The S3 CSV table that medicare_semantic.vw_hix_plan_county_v1 (2027 state-run rows) types and serves. Query the view; this table exists so the products are rebuilt whole and the view can be repointed. **Grain.** One row per plan x county, 2027 state-run exchanges from the states' files; every column a string (the CSV as published to S3 by products.py / materialize_ages.py). | column | type | meaning | |---|---|---| | state | string | | | issuer_hios_id | string | | | issuer_name | string | | | plan_id | string | | | county_fips | string | | | zips | string | | | source_url | string | | | locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hix_sbe2027_state_service_area_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hix_sbe2027_state_service_area_v1")` first. # States K8 Forward exposure: marketplace_forward_exposure_v1 `medicare_silver.marketplace_forward_exposure_v1` · Insurer negotiated rates · status partial · 19,530 rows Marketplace product K8 (Forward exposure) of the States lane: forward exposure in the Marketplace: members facing a known event by parent. One row per state x parent x measure x forecast quarter. Quote the lower and upper bounds beside the point estimate; headline_publishable = false rows are held (held_reasons) and are not a headline. 51 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** Forward exposure in the Marketplace: members facing a known event by parent. 19,530 rows (Athena, 2026-10-29). Period 2026 to 2028 (forecast_year). | column | type | meaning | |---|---|---| | row_key | string | | | state_code | string | | | parent_id | string | | | parent_name | string | | | parent_basis | string | | | business_year | int | | | measure_name | string | | | exchange_platform | string | | | coverage_scope | string | | | forecast_quarter | string | | | forecast_year | int | | | forecast_anchor | date | | | horizon_months | int | | | horizon_end | date | | | event_family | string | | | evidence_as_of | date | | | observed_members_denominator | double | | | n_suppressed_plan_rows | int | | | members_high_confidence | double | | | matched_event_members | double | | | known_no_event_members | double | | | unknown_schedule_members | double | | | schedule_coverage_pct | double | | | exposure_lower_bound_members | double | | | exposure_upper_bound_members | double | | | exposure_point_estimate_members | double | | | exposure_point_estimate_pct | double | | | headline_publishable | boolean | | | held_reasons | string | | | candidate_event_count | int | | | candidate_events_json | string | | | input_receipts_json | string | | | participation_status_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_forward_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_forward_exposure_v1")` first. # Marketplace issuer-to-parent bridge (effective-dated, as-was and as-now) `medicare_silver.marketplace_issuer_parent_bridge_v1` · Insurer negotiated rates · status live · 8,676 rows HIOS issuer -> legal entity (NAIC company code, EIN) -> NAIC group -> canonical parent id, from exact MLR/PA identity joins plus a reviewed year-ranged seed (never fuzzy); dated M&A (Aetna/CVS, Health Net, WellCare, Meridian, Fidelis -> Centene, Point32Health, AvMed -> Sentara) in two views, as it was and restated to today. **Grain.** One row per (business_year, state_code, hios_issuer_id) seen in the Marketplace enrollment, Plan Attributes, risk-adjustment or rate-review sources; BY2014-2026, 8,676 rows when built. | column | type | meaning | |---|---|---| | business_year | int | | | state_code | string | | | hios_issuer_id | string | | | valid_from | date | | | valid_to | date | | | exchange_platform | string | | | in_enrollment | boolean | | | seen_in_sources | string | | | entity_tier | string | | | identity_source_year | int | | | identity_year_distance | int | | | naic_company_code | string | | | federal_ein | string | | | legal_entity_name | string | | | dba_marketing_name | string | | | naic_group_code | string | | | naic_group_name_as_filed | string | | | mlr_template_id | string | | | mlr_templates_for_hios_year | bigint | | | pa_tin | string | | | issuer_display_name | string | | | parent_rule | string | | | resolution_status | string | | | parent_id_as_was | string | | | parent_name_as_was | string | | | parent_id_as_now | string | | | parent_name_as_now | string | | | parent_kind | string | | | brand_family | string | | | parent_id_in_ma_alias | boolean | | | seed_key_type | string | | | seed_key_value | string | | | seed_valid_from_year | int | | | seed_valid_to_year | int | | | evidence_method | string | | | evidence | string | | | confidence | string | | | bridge_version | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_issuer_parent_bridge_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_issuer_parent_bridge_v1")` first. # States K5 Ownership / affiliation / delegation: marketplace_issuer_parent_v1 `medicare_silver.marketplace_issuer_parent_v1` · Insurer negotiated rates · status partial · 8,676 rows Marketplace product K5 (Ownership / affiliation / delegation) of the States lane: each Marketplace issuer's legal entity and its dated parent. One row per state x plan year x market x HIOS issuer. Pick one parent basis (canonical_parent_id_as_was or _as_now) and read parent_resolution_status; filter in_enrollment = 'true' for issuers with members. 51 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** Each Marketplace issuer's legal entity and its dated parent. 8,676 rows (Athena, 2026-10-29). Period 2014 to 2026 (plan_year). | column | type | meaning | |---|---|---| | state_code | string | | | plan_year | string | | | market | string | | | hios_issuer_id | string | | | issuer_name_raw | string | | | in_enrollment | string | | | seen_in_sources | string | | | entity_tier | string | | | legal_entity_id | string | | | legal_entity_name | string | | | naic_company_code | string | | | domiciliary_state | string | | | state_license_number | string | | | canonical_parent_id_as_was | string | | | canonical_parent_id_as_now | string | | | parent_resolution_status | string | | | identity_effective_start | string | | | identity_effective_end | string | | | parent_effective_start | string | | | parent_effective_end | string | | | observed_as_of | string | | | date_precision | string | | | identity_source_sha256 | string | | | identity_source_locator | string | | | parent_source_sha256 | string | | | parent_source_locator | string | | | source_url | string | | | capture_uri | string | | | identity_s3_version_id | string | | | source_access_result | string | | | identity_edge_id | string | | | parent_edge_id | string | | | affiliation_count | string | | | delegation_count | string | | | row_sha256 | string | | | parent_confidence | string | | | parent_evidence_method | string | | | parent_evidence | string | | | parent_bridge_version | string | | | naic_group_code | string | | | parent_name_as_was | string | | | parent_name_as_now | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_issuer_parent_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_issuer_parent_v1")` first. # States K6 Premium + benefit book: marketplace_sbe_slcsp_county_v1 `medicare_silver.marketplace_sbe_slcsp_county_v1` · Insurer negotiated rates · status partial · 1,738 rows Marketplace product K6 (Premium + benefit book) of the States lane: the second-lowest-cost silver (benchmark) premium by county for state-based exchanges. One row per state x plan_year x county_fips x geo_part x age_band x route. Pick ONE route and ONE age_band before reading benchmark_premium_usd: route printed is the exchange's own printed benchmark, computed and computed_exchange are ours from its plan and rate files, and a county-year can carry two routes, so never sum or average across routes. geo_part splits a county where the exchange prices by ZIP (California; geo_zip_list). tieout_status says whether ours ties to the printed or CMS figure. HealthCare.gov states are not in this table yet; absent is not built, never no benchmark. 2 state(s): CA PA. **Grain.** The second-lowest-cost silver (benchmark) premium by county for state-based exchanges. 1,738 rows (Athena, 2026-10-30). Period 2021 to 2027 (plan_year). | column | type | meaning | |---|---|---| | state_code | string | | | plan_year | int | | | county_fips | string | | | county_name | string | | | geo_part | string | | | geo_zip_list | string | | | rating_area | string | | | rating_area_raw | string | | | age_band | string | | | route | string | | | benchmark_kind | string | | | premium_basis | string | | | ehb_pct_raw | string | | | ehb_basis | string | | | benchmark_plan_id | string | | | plan_id_raw | string | | | plan_name_raw | string | | | issuer_hios_id | string | | | issuer_name_raw | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | parent_review_status | string | | | benchmark_candidate_plan_ids | string | | | value_status | string | | | tieout_status | string | | | tieout_source_sha256 | string | | | source_id | string | | | document_url | string | | | document_sha256 | string | | | locator | string | | | fetched_at | string | | | not_published_locators | string | | | row_key | string | | | benchmark_premium_usd | double | | | benchmark_premium_low_usd | double | | | benchmark_premium_high_usd | double | | | benchmark_total_premium_usd | double | | | lowest_silver_premium_usd | double | | | tieout_value_usd | double | | | tieout_delta_usd | double | | | silver_plan_count | int | | | tie_count | int | | | includes_pediatric_dental | boolean | | | rank_ambiguous | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_sbe_slcsp_county_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_sbe_slcsp_county_v1")` first. # States K1H SBM enrollment history: marketplace_sbm_issuer_enrollment_history_v1 `medicare_silver.marketplace_sbm_issuer_enrollment_history_v1` · Insurer negotiated rates · status partial · 1,715 rows Marketplace product K1H (SBM enrollment history) of the States lane: state-based exchange enrollment by issuer before CMS's issuer file reaches them (2014-2017), from the exchanges' own reports. THE EXCHANGE'S OWN COUNT, NOT THE CMS ISSUER PUF: never splice it onto the CMS series (vw_marketplace_enrollment_by_parent_v1) without keeping source_label beside every year. The measure differs by state: NY is qhp_individual_enrollees from the open enrollment report, CA is active_members_paid_effectuated, so never compare or add the two as one measure. Filter geo_level: NY prints counties and the state row is derivation sum_of_printed_county_cells, so summing both double counts. CA is quarterly snapshots (one source_label per as_of_date): pick one, never sum a year's quarters. parent_id_as_now is null where the issuer has no parent match (issuer_match_basis says why); WA does not publish it (absent is not zero). 2 state(s): CA NY. **Grain.** State-based exchange enrollment by issuer before CMS's issuer file reaches them (2014-2017), from the exchanges' own reports. 1,715 rows (Athena, 2026-10-30). Period 2014 to 2017 (business_year). | column | type | meaning | |---|---|---| | state_code | string | | | business_year | int | | | measure_name | string | | | measure_raw | string | | | as_of_date | date | | | source_label | string | | | document_url | string | | | document_sha256 | string | | | geo_level | string | | | geography_raw | string | | | issuer_name_raw | string | | | enrollees | int | | | pct_raw | string | | | derivation | string | | | hios_issuer_id | string | | | issuer_match_basis | string | | | locator | string | | | parent_id_as_now | string | | | parent_name_as_now | string | | | parent_as_now_row_key | string | | | parent_id_as_was | string | | | parent_as_was_status | string | | | source_file | string | | | source_file_git_blob | string | | | source_row_number | int | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_sbm_issuer_enrollment_history_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_sbm_issuer_enrollment_history_v1")` first. # States K3 Rate review cycle + state rules: marketplace_state_calendar_rule_v1 `medicare_silver.marketplace_state_calendar_rule_v1` · Insurer negotiated rates · status partial · 3,509 rows Marketplace product K3 (Rate review cycle + state rules) of the States lane: state rate review decisions and each state's filing calendar and rules. marketplace_state_rate_decision_v1: one row per state x plan year x market x issuer decision; requested_pct_num and approved_pct_num are percents; statewide_bool rows are the state's average, never add them to issuer rows. marketplace_state_calendar_rule_v1: one row per state x plan year x calendar item (kind, item, value_raw, effective_date_d). 51 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** State rate review decisions and each state's filing calendar and rules. 3,509 rows (Athena, 2026-10-29). Period 2014 to 2029 (plan_year_int). | column | type | meaning | |---|---|---| | state_code | string | | | plan_year | string | | | kind | string | | | item | string | | | value_raw | string | | | effective_date | string | | | posted_date | string | | | posted_date_basis | string | | | document_url | string | | | document_sha256 | string | | | locator | string | | | plan_year_int | int | | | effective_date_d | date | | | posted_date_d | date | | | posted_date_precision | string | | | contract_issues | string | | | source_file | string | | | source_file_git_blob | string | | | source_row_number | int | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_state_calendar_rule_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_state_calendar_rule_v1")` first. # States K4 Participation / certification tracker: marketplace_state_participation_event_v1 `medicare_silver.marketplace_state_participation_event_v1` · Insurer negotiated rates · status partial · 2,740 rows Marketplace product K4 (Participation / certification tracker) of the States lane: issuer entries, exits and county footprint changes in each state's Marketplace. One row per state x plan year x issuer event (event: enter, exit, expand, reduce); counties_raw as printed. evidence_kind says whether the event was announced or inferred by comparing two documents. 51 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** Issuer entries, exits and county footprint changes in each state's Marketplace. 2,740 rows (Athena, 2026-10-29). Period 2011 to 2027 (plan_year_int). | column | type | meaning | |---|---|---| | state_code | string | | | plan_year | string | | | market | string | | | issuer_name_raw | string | | | hios_issuer_id | string | | | event | string | | | counties_raw | string | | | effective_date | string | | | announced_date | string | | | document_url | string | | | document_sha256 | string | | | locator | string | | | issuer_id | string | | | issuer_id_type | string | | | evidence_kind | string | | | compared_document_sha256 | string | | | on_exchange | string | | | plan_year_int | int | | | segment | string | | | effective_date_d | date | | | announced_date_d | date | | | on_exchange_bool | boolean | | | contract_issues | string | | | source_file | string | | | source_file_git_blob | string | | | source_row_number | int | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_state_participation_event_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_state_participation_event_v1")` first. # States K3 Rate review cycle + state rules: marketplace_state_rate_decision_v1 `medicare_silver.marketplace_state_rate_decision_v1` · Insurer negotiated rates · status partial · 16,001 rows Marketplace product K3 (Rate review cycle + state rules) of the States lane: state rate review decisions and each state's filing calendar and rules. marketplace_state_rate_decision_v1: one row per state x plan year x market x issuer decision; requested_pct_num and approved_pct_num are percents; statewide_bool rows are the state's average, never add them to issuer rows. marketplace_state_calendar_rule_v1: one row per state x plan year x calendar item (kind, item, value_raw, effective_date_d). 51 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** State rate review decisions and each state's filing calendar and rules. 16,001 rows (Athena, 2026-10-29). Period 2013 to 2027 (plan_year_int). | column | type | meaning | |---|---|---| | state_code | string | | | layer | string | | | plan_year | string | | | market | string | | | issuer_name_raw | string | | | hios_issuer_id | string | | | requested_pct | string | | | approved_pct | string | | | average_basis_raw | string | | | decision_date | string | | | decision_kind | string | | | statewide | string | | | document_url | string | | | document_sha256 | string | | | locator | string | | | issuer_id | string | | | issuer_id_type | string | | | requested_basis_raw | string | | | value_status | string | | | plan_year_int | int | | | segment | string | | | requested_pct_num | double | | | approved_pct_num | double | | | decision_date_d | date | | | decision_date_precision | string | | | statewide_bool | boolean | | | contract_issues | string | | | source_file | string | | | source_file_git_blob | string | | | source_row_number | int | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.marketplace_state_rate_decision_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.marketplace_state_rate_decision_v1")` first. # Texas TDI Independent Dispute Resolution (SB 1264) summary data: monthly mediation and arbitration counts, every captured daily edition `medicare_silver.vw_fact_tx_tdi_idr_summary` · Insurer negotiated rates · status live · 5,254 rows Texas Department of Insurance monthly IDR portal counts (data.texas.gov bn27-65ad) for state-regulated health plans and opted-in ERISA plans since February 2020. Mediation (out-of-network facilities) and arbitration (out-of-network providers) requests received, teleconference settlements, facilitator strikes by plan and by provider, both-party facilitator choices, assignments, arbitration decisions, and distinct counts of submitters, providers, involved health plans and assigned facilitators. Every captured edition is kept so restatements show; is_current marks the newest held one. **Grain.** One row per (edition, request_type, count_type, activity_year, activity_month); read WHERE is_current. 5,254 rows over four held editions (2025-05-16, 2026-01-17, 2026-01-18, 2026-10-23T135729Z); the current edition holds 1,478 rows (Athena 3382bd59, 2026-10-23). One edition is added per day TDI refreshes. | column | type | meaning | |---|---|---| | edition_rows_updated_at | timestamp | | | edition_data_version | int | | | request_type | string | | | count_type | string | | | year_raw | string | | | month_raw | string | | | activity_year | int | | | activity_month | int | | | activity_month_start | date | | | count_value | bigint | | | is_distinct_entity_count | boolean | | | is_partial_month | boolean | | | source_format | string | | | source_row_number | int | | | capture_origin | string | | | wayback_capture_url | string | | | observed_period | date | | | asserted_at | date | | | effective_period_start | date | | | vintage_tag | string | | | cms_vintage_sequence | int | | | parse_revision | int | | | parser_version | string | | | parser_artifact_hash | string | | | source_id | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | s3_version_id | string | | | edition | string | | | is_current | boolean | | | effective_period_end | date | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.vw_fact_tx_tdi_idr_summary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.vw_fact_tx_tdi_idr_summary")` first. # New Jersey DOBI IHC enrollment — on/off-exchange history `nj_dobi_ihc_enrollment` · Insurer negotiated rates · status partial · 30,198 rows New Jersey individual-market covered lives, source-native Plans and policy/contract operating measures from 1993 Q4 forward; ten exact parser families yield 30,198 physical observations from all 173 retrievable unique artifacts including cumulative revisions and two off-index 2021 Q2 recoveries. **Grain.** One source-native individual-market observation within one immutable NJDOBI IHC artifact, quarter, market scope, measure and optional carrier/plan dimension. Query it: `query_substrate` with `SELECT ... FROM nj_dobi_ihc_enrollment WHERE ... LIMIT 100`; read `describe_data_source("nj_dobi_ihc_enrollment")` first. # Get Covered New Jersey enrollment — state exchange history `nj_getcoverednj_enrollment` · Insurer negotiated rates · status partial · 863 rows Quarterly HIOS carrier policies and members plus Open Enrollment renewal, new-selection, financial-assistance, metal and Medicaid/CHIP transfer checkpoints for PY2021-PY2026. **Grain.** One source-native observation within one immutable New Jersey exchange PDF, carrier quarter or OE checkpoint, measure, unit and optional HIOS/metal/assistance dimension. Query it: `query_substrate` with `SELECT ... FROM nj_getcoverednj_enrollment WHERE ... LIMIT 100`; read `describe_data_source("nj_getcoverednj_enrollment")` first. # NY State of Health enrollment reports — direct publisher history `ny_nysoh_enrollment_data` · Insurer negotiated rates · status partial · 25,191 rows One hundred three official NY State of Health enrollment PDFs, including a parsed 37-report statewide Essential Plan and QHP current-enrollment series from March 2023 through August 2026. **Grain.** One source-native EP, QHP or dental enrollment observation within one immutable official PDF, report period, geography, issuer and measure. Query it: `query_substrate` with `SELECT ... FROM ny_nysoh_enrollment_data WHERE ... LIMIT 100`; read `describe_data_source("ny_nysoh_enrollment_data")` first. # Raw TiC machine-readable files (bronze) `s3://vlada-platform-raw/commercial_v2` · Insurer negotiated rates · status partial Archived raw bytes of payer TiC in-network-rate files (Best Evidence Rule). Partitioned payer=/version=/. **Grain.** One object per (payer, version, reporting period) raw MRF file. Query it: `query_substrate` with `SELECT ... FROM s3://vlada-platform-raw/commercial_v2 WHERE ... LIMIT 100`; read `describe_data_source("s3://vlada-platform-raw/commercial_v2")` first. # Virginia Insurance Marketplace enrollment metrics — state publisher history `va_vim_enrollment_metrics` · Insurer negotiated rates · status partial · 286 rows Virginia Insurance Marketplace PY2024 quarterly/OE and two byte-distinct but semantically equal PY2025 metric-ID static revisions, plus a separately resolved public Power BI model containing Open Enrollment PY2024-PY2026, quarterly 2025-Q1 through 2026-Q2 and source dictionaries. Pre-PY2024 federal-platform history retains CMS lineage. **Grain.** One source-native metric observation within one immutable Virginia artifact, publisher snapshot/as-of date, page and source row or metric ID. Query it: `query_substrate` with `SELECT ... FROM va_vim_enrollment_metrics WHERE ... LIMIT 100`; read `describe_data_source("va_vim_enrollment_metrics")` first. # Payer dimension + carrier hierarchy `vlada_curated.dim_payer` · Insurer negotiated rates · status live Canonical payer slugs, human names, and carrier ownership hierarchy (e.g. Cigna Healthspring under Cigna). Resolves free-text payer names. **Grain.** One row per canonical payer_id. | column | type | meaning | |---|---|---| | payer_id | string | | | payer_name | string | | | payer_name_normalized | string | | | parent_company | string | | | covered_lives_millions | double | | | market_share_pct | string | | | toc_url | string | | | toc_format | string | | | mrf_format | string | | | extraction_status | string | | | extraction_started_at | string | | | extraction_completed_at | string | | | last_extraction_version | string | | | total_files | string | | | files_extracted | bigint | | | total_rates | bigint | | | total_providers | bigint | | | unique_codes | string | | | s3_base_path | string | | | status | string | | | created_at | timestamp | | | updated_at | timestamp | | | metadata | string | | | display_name | string | | | active_flag | boolean | | | priority_rank | bigint | | | national_flag | boolean | | | states_covered_count | string | | | regions_covered | string | | | toc_last_checked_at | timestamp | | | toc_file_count_current | double | | | toc_file_count_deduped | double | | | toc_total_bytes_current | double | | | toc_total_bytes_deduped | double | | | latest_version_id | string | | | linkage_status | string | | | normalization_status | string | | | aggregation_status | string | | | quality_status | string | | | serving_status | string | | | status_summary | string | | | raw_provider_count_current | bigint | | | raw_linkage_count_current | string | | | raw_bytes_current | string | | | normalized_bytes_current | string | | | aggregate_bytes_current | string | | | entity_assignment_pct | string | | | valid_code_pct | string | | | notes | string | | | payer_family | string | | | toc_snapshot_id_current | double | | | current_version_id | string | | | entity_compaction_status | string | | | raw_rates_count_current | bigint | | | quality_score_current | string | | | parent_payer_id | string | | | toc_s3_path | string | | | toc_verified_at | timestamp | | | toc_status | string | | | extraction_priority | bigint | | | last_toc_sync | timestamp | | | current_version | string | | | toc_file_count | bigint | | | toc_total_bytes | bigint | | | rates_extracted | bigint | | | npis_extracted | bigint | | | last_extraction_at | string | | | _synced_at | timestamp | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_payer WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_payer")` first. # Commercial negotiated rates (TiC) `vlada_curated.fact_rate` · Insurer negotiated rates · status partial Cleaned commercial-insurer negotiated rates extracted from payer Transparency-in-Coverage machine-readable files. The substrate of "what does this payer actually pay this provider for this code." **Grain.** One row per (payer, plan, NPI, code, modifier, billing_class, POS, negotiated_type) at a snapshot. | column | type | meaning | |---|---|---| | rate_id | string | | | payer_id | string | | | entity | string | | | state | string | | | state_source | string | | | code | string | | | code_system | string | | | code_version | string | | | code_prefix | string | | | modifiers | array | | | description | string | | | billing_class | string | | | negotiation_arrangement | string | | | negotiated_type | string | | | negotiated_rate | double | | | setting | string | | | service_codes | array | | | bundled_codes | array | | | expiration_date | string | | | provider_group_hash | string | | | raw_rate_identity | string | | | raw_provider_group_ids | array | | | schema_version | string | | | version_id | string | | | canonical_source_file | string | | | source_hash | string | | | loaded_at | timestamp | | | commercial_mrf_version_id | string | FK to dim_commercial_mrf_version (RDS, migration 033). UUID as string. NULL for pre-Phase-C rows; populated by C.J re-extraction. Audit chain: row → dim → raw_s3_key → archived bytes → replay tool. | | observed_period | date | M-2 universal: period the data describes. For commercial TiC MRFs, the YYYY-MM-01 of the manifest version. Substrate-wide name; distinct from version_id (payer's filename convention). | | asserted_at | date | M-2 universal: date the source published this bytes-version. For commercial MRFs, derived from MRF's last_updated_on field (preferred) or HTTP Last-Modified header (fallback). Quality in asserted_at_source. | | effective_period_start | date | M-2 universal: start of period this data is effective for reasoning. For commercial rates, equals observed_period (point-in-time pricing snapshot). M-3 catalogs per-table convention. | | effective_period_end | date | M-2 universal: end of effective period. Equals start for point-in-time snapshots (typical for commercial TiC). Range for spans. | | asserted_at_source | string | M-2 universal ENUM: mrf_last_updated_on / http_last_modified / filename_inferred / unknown_default. Quality marker for asserted_at. | | calculation_epoch | date | M-2 universal NULLABLE: for sources with mid-cycle recalculation. Expected NULL for commercial TiC (no mid-cycle rerun semantics — payers republish full monthly manifests). | | vintage | string | M-2 universal ENUM: as_published / as_restated. Binary display category. Commercial payers rarely restate but the column is required substrate-wide. | | cms_vintage_sequence | int | M-2 universal: 1 for first publication, 2 for first restatement, etc. Advances ONLY on bronze sha256 change (payer-side). For commercial, advances when a payer republishes the same source file. | | parse_revision | int | M-2 universal: substrate-side parser-bug-fix sequence. Advances on parser_artifact_hash bump for the same bronze object. Initial 1. Distinct from cms_vintage_sequence (payer-side changes). | | restatement_of | string | M-2 universal NULLABLE (UUID-as-string): FK to prior vintage's commercial_mrf_version_id when a payer restates. NULL for cms_vintage_sequence=1 rows. | | is_current | boolean | M-2 universal: TRUE for the most recent (cms_vintage_sequence, parse_revision) of this (natural_key, observed_period) tuple. Invariant: exactly one TRUE per natural key. | | snapshot_set | string | M-2 universal: JSON-encoded MAP covering every silver table read to produce this row. Bronze-anchored: single-entry self-reference. Derived: multi-entry upstream map. Phase 1 JSON; native MAP later. | | s3_version_id | string | M-2 universal NULLABLE: exact S3 VersionId of the bronze object this row was parsed from. NULL for derived rows. Detects silent payer republishes that don't bump filename. | | bronze_object_key | string | M-2 universal: full S3 key of bronze object (substrate-wide name). ALIAS of raw_s3_key (dim_commercial_mrf_version.raw_s3_key) during transition. Future migration drops the legacy name. | | sha256_content_hash | string | M-2 universal: SHA-256 of bronze content (substrate-wide name). Populated by Rust extractor FU-9 streaming primitive. Same value as dim_commercial_mrf_version.content_sha256. | | source_lineage | string | M-2 universal NULLABLE: JSON-encoded ARRAY>. Derived-row lineage. NULL on bronze-anchored fact_rate; populated on mart_unified_pricing joins. Phase 1 JSON; native ARRAY later. | | parent_vintage_fingerprint | string | M-2 universal NULLABLE: SHA-256 of sorted-concatenated upstream (s3_version_id // snapshot_id) tuples. Used by query helper to emit cascade_stale caveat when upstream vintages advance. | | source_id | string | M-2 universal: stable source-family identifier from M-1's source registry. For commercial fact_rate, value like 'commercial_in_network_tic' or 'commercial_allowed_amount_tic'. | | source_url | string | M-2 universal: original download URL for this row's bronze object. For commercial, the MRF URL from payer_toc_files.file_url at fetch time. Useful for replay-tool re-fetch if archived bytes corrupt. | | parser_artifact_hash | string | M-2 universal: SHA-256 of parser code artifact (Rust extractor binary). Stamped at compile time via VLADA_PARSER_ARTIFACT_HASH env var. Reparse decisions key on this hash. Same value as dim_commercial_mrf_version.parser_artifact_hash. | | ingested_at | timestamp | M-2 universal: UTC timestamp of silver write. Audit-only; never used for query semantics. Distinct from existing loaded_at if present (ALIAS during transition). | | methodology_version | string | | | substrate_schema_version | string | | | builder_sha | string | | | nppes_vintage_at | timestamp | | | lookup_snapshot_id | string | | Tools that read it: get_negotiated_rate, lookup_rates_for_npi, lookup_rates_for_tin, plan_commercial_price_proof, prove_commercial_price, replay_commercial_price_proof Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_rate WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_rate")` first. # Canonical-graph rate lookup index `vlada_curated.idx_rate_lookup` · Insurer negotiated rates · status partial Inverted index in the canonical-graph resolution engine. The resolution engine traverses it instead of materializing payer-wide rate x NPI edges. idx_tin_provider_group (2026-07-05 TIN identity engine Phase 1) adds the EIN entry point, one row per (source_file, pg_id, tin_value) with tin_scope_class fanout metadata and tin_index_path provenance ('membership' | 'bridge' -- bridge rows are npi-link-capped whole-system groups, system-shared evidence with lower-bound fanout). **Grain.** Inverted index keyed by rate identity; traversed via idx_npi_provider_group (NPI entry) or idx_tin_provider_group (EIN entry, tin_type='ein' slice only) -> idx_pg_set_provider_group. Tools that read it: get_negotiated_rate, lookup_rates_for_npi, lookup_rates_for_tin Query it: `query_substrate` with `SELECT ... FROM vlada_curated.idx_rate_lookup WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.idx_rate_lookup")` first. # Commercial gold mart — rate by entity `vlada_curated.mart_rate_by_entity` · Insurer negotiated rates · status live Gold serving mart projecting fact_rate by negotiating entity: payer, entity, code (+prefix), negotiated_rate/type, billing_class, state. Entity-level rate serving (complements mart_rate_by_code). **Grain.** One row per individual negotiated-rate observation, uniquely identified by rate_id alone. Verified: exact COUNT(DISTINCT rate_id) = 140,360,334 = total row_count, so rate_id is a per-row surrogate key. (payer_id, entity_id, version_id, code, code_system, code_prefix, state, negotiated_rate, negotiated_type, billing_class are all attributes of that one rate_id row, not part of the minimal key — the profiler's 7-column key is a SUPERSET.) **How to use it.** To get the median in-network DOLLAR price for CPT 99213 under Fallon's own network in Massachusetts: SELECT approx_percentile(negotiated_rate, 0.5) FROM vlada_curated.mart_rate_by_entity WHERE payer_id='fallon' AND entity_id='fallon_health' AND state='MA' AND code='99213' AND code_system='CPT' AND negotiated_type='negotiated'. The negotiated_type='negotiated' filter is essential — it excludes percentage-of-charge and per-diem rows that would otherwise pollute the dollar distribution. **Traps.** - rate_id is the TRUE grain (one row each, 140,360,334 distinct = row count). The profiler-reported 7-column key (payer_id, entity_id, version_id, rate_id, code, code_system, code_prefix) is a superset — every column except rate_id is an attribute, so do NOT treat the composite as the key. - UNITS OF negotiated_rate are NOT uniform: 11.8% of rows are negotiated_type='percentage' where the value is a PERCENT of billed charges (median ~99), and a few thousand are 'per diem' (per-day dollars). Averaging negotiated_rate across negotiated_type silently corrupts dollar statistics — always filter negotiated_type='negotiated' for true dollar amounts. - `state` is provider-NPPES-derived (where the in-network providers are registered), NOT the plan's, member's, or rate-file's geography. The MRF is national; state is an inferred per-rate attribute. Check state_source: ~25% of rows are 'nppes_plurality' (best-guess across multiple states) and ~29K are 'unknown'. - modifiers is an EMPTY array for all 140.36M rows here, and quality_flags.is_ghost_candidate is always false / n_similar always 0 — these columns are present but unpopulated in this mart. Do not build logic that expects modifier splits or ghost-candidate flags from this table. - Scope is narrow and snapshot-only: ONLY payer 'fallon', ONLY version 2026-04, and fallon_health is 99.1% of rows. loaded_at is one constant timestamp, version_id is single-valued, and there is NO is_current column — history is kept as Iceberg snapshots, not as rows, so this table is a single live snapshot (do not expect time series or dedup-by-is_current). - This is a reshuffle of fact_rate (sibling: mart_rate_by_code keyed for code lookups). This entity mart DROPPED the provider/NPI dimension entirely — there is no NPI or provider_count here, only the entity/network and provider-derived state. Join on rate_id to fact_rate or query the resolution engine if you need the providers behind a rate. | column | type | meaning | |---|---|---| | payer_id | string | Payer/carrier slug that published the MRF. Single value in the whole table: 'fallon' (Fallon Health). One of the three partition columns. | | entity_id | string | Normalized network-entity key = lowercase(trim(raw entity)) with internal whitespace collapsed to '_'. This is the named in-network entity from the MRF (the payer's own network or a RENTED network). 4 distinct values: fallon_health (139.16M rows, 99.1%), carelon (1.20M), eyemed_vision_care,_llc (145), fallon (93). Used for entity/network-level pruning. | | version_id | string | MRF publication version (year-month). Single value: '2026-04'. Partition column. This is the data vintage, not a row-validity range. | | entity_display | string | Original raw entity label before normalization (e.g. 'Carelon', 'EyeMed Vision Care, LLC'). 1:1 with entity_id here. Use for display. | | state | string | Two-letter US state, DERIVED from the in-network providers' NPPES state per rate (NOT the rate's own geography and NOT the patient/plan state). 43 distinct states; heavily MA-skewed (~131.5M of 140.36M rows = Fallon's home state). See state_source for how it was derived. | | rate_id | string | The grain. A surrogate hash key (32-hex) unique per row across the whole table (140,360,334 distinct = row count). Carried straight from fact_rate; joins this mart to its sibling (mart_rate_by_code) and to fact_rate. | | code | string | The billed procedure/service code (e.g. CPT '99213', HCPCS 'G0247', revenue code, or MS-DRG number). The thing being priced. | | code_system | string | Coding system of `code`. Distribution: CPT 119.52M (85.1%), HCPCS 20.77M (14.8%), RC (institutional revenue codes) 72,619, MS-DRG 771. RC and MS-DRG rows are always billing_class='institutional'. | | code_prefix | string | First two characters of `code` (e.g. '93', '99', 'G0', 'Q4'), a coarse category rollup. Fully derivable from `code`; a convenience/pruning column, carries no information beyond `code`. | | negotiated_rate | double | The negotiated price as a double. UNITS DEPEND ON negotiated_type: for 'negotiated' it is a USD dollar amount (min 0.01, median ~271, max ~99,896); for 'percentage' it is a PERCENT of billed charges (17–256, median ~99), NOT dollars; for 'per diem' it is a USD per-day amount. No nulls and no values <= 0 observed. | | negotiated_type | string | Pricing basis. 'negotiated' = fixed dollar (123.75M, 88.2%), 'percentage' = % of billed charges (16.61M, 11.8%), 'per diem' = daily dollar rate (3,968, mostly revenue-code institutional). Determines how to read negotiated_rate. | | billing_class | string | MRF billing class: 'institutional' (82.48M, facility billing) or 'professional' (57.88M, clinician billing). Only these two values. | | modifiers | array | array of code modifiers. EMPTY ([]) for every one of the 140.36M rows in this mart — present in schema but carries no information here (a trap: filtering/grouping on modifiers yields nothing). Note the siblings/fact_rate may populate it; the reference/component_split_modifiers memo treats modifiers as the rate-component splitter, but it is not materialized in THIS table. | | quality_flags | struct | struct. Only two states occur: clean (is_outlier=false, 140.17M, 99.86%) and is_outlier=true (194,765, 0.14%). is_ghost_candidate is ALWAYS false and n_similar is ALWAYS 0 in this table — those sub-fields are unpopulated here (do not rely on ghost detection from this mart). | | loaded_at | timestamp | timestamp the mart build wrote the row, appended at build time. A single constant for the entire table (2026-04-23 18:07:41.189878 UTC) — it marks the build, not any per-row event time, hence the table reads as a single static snapshot. | | state_source | string | How `state` was derived per rate from NPPES provider states: 'nppes_single_state' (105.20M, all the rate's NPIs in one state), 'nppes_plurality' (35.13M, >=2 states, picked the most common; ties alphabetical), 'unknown' (29,466, nothing resolved). 'payer_default' is a possible value in the pipeline but is absent here. Added to fact_rate/marts via additive ALTER; reflects provider geography confidence, not rate confidence. | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.mart_rate_by_entity WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.mart_rate_by_entity")` first. # Commercial rate ↔ provider (NPI) edge `vlada_curated.rate_provider_edge` · Insurer negotiated rates · status live The normalized rate↔provider edge of the commercial substrate: rate_id → NPI (bucketed), payer, state, version, code, negotiated_rate/type. The join that attaches TiC negotiated rates to specific providers (NPI lookups). **Grain.** One row per (rate_id, npi) = one (negotiated-rate-record x provider) edge. Verified: the builder dedups on exactly GROUP BY rate_id, npi (and a seen-set keyed on (rate_id,npi)); and on two independent partition slices the row count equals the distinct (rate_id||npi) count (fallon/VT/npi_bucket=7: 55,926 rows = 55,926 distinct pairs, while distinct rate_id alone = 55,867 < rows; fallon/WY/npi_bucket=20: 59 rows = 59 distinct pairs). Whole table = 2,430,077,970 rows, all payer_id='fallon', version_id='2026-04'. A single rate_id fans out to many NPIs (so rate_id alone is NOT the key); within any rate_id, code/code_system/negotiated_rate/negotiated_type are constant (max 1 distinct each) — only npi (and its derived npi_bucket/state/state_source) vary. **How to use it.** Get the negotiated dollar prices a specific provider carries for a code from this payer, staying inside scan limits by pruning on the npi_bucket partition. Example: SELECT npi, code, negotiated_rate, state FROM vlada_curated.rate_provider_edge WHERE payer_id='fallon' AND npi_bucket = (conv(substr(sha256(to_utf8('1558096297')),1,8),16,10) % 64) AND npi='1558096297' AND code='99213' AND negotiated_type='negotiated'; — returns Fallon's per-NPI negotiated rate(s) for CPT 99213 (e.g. ~$95). For aggregate per-provider serving queries prefer the resolution engine (idx_rate_lookup + fact_rate). **Traps.** - DEPRECATED ARCHITECTURE: this is the LEGACY full rate-by-NPI materialization. The locked canonical architecture (2026-04-29 graph-resolution-engine ADR; v8.1 two-payer proof 2026-05-01) explicitly forbids 'payer-wide rate x NPI edge tables' — they were judged infeasible (~394B estimated rows at payer scale) and replaced by scope-filtered edges + the canonical provider-group primitives graph. build_rate_provider_edge.py is documented as 'legacy, deprecated, not invoked by any active pipeline.' This 2.43B-row table is a FROZEN Fallon-only proof snapshot, not a live/growing source (acceptance gate = CANDIDATE, not CERTIFIED). Do not assume it covers other payers or will refresh. - CATALOG MISLABELS THE GRAIN: catalog_glue_discovered.json auto-profiles this as grain='one row per npi (auto-profiled)' with identity_key='npi'. That is WRONG — npi has only ~90K distinct values vs 2.43B rows (off by ~27,000x). The real grain is (rate_id, npi). rate_id alone is also NOT unique (it fans out to many NPIs). Trust the verified (rate_id, npi) grain, not the catalog. - rate_id is NOT a working foreign key to fact_rate. Joining edge.rate_id -> fact_rate.rate_id returns almost nothing (0/10 sampled, 59 of 55,867 in a slice) because the edge's rate_ids come from the deprecated Spark edge_staging id generation, divergent from the current fact_rate build. Do not enrich this table by joining to fact_rate on rate_id; the hot rate attributes (code, rate, type) are already denormalized onto every edge row anyway. - negotiated_rate UNITS are not uniform: you MUST filter/branch on negotiated_type. type='percentage' rows store a percent (17-255, can exceed 100), not dollars; mixing them into a dollar AVG/median silently contaminates the result. For dollar price analytics use negotiated_type='negotiated' (and beware real $0.01 penny rates and component-split low values). - state is NULLABLE even though it is a partition key, and ~0.07% of rows have state_source='unknown' with NULL/ambiguous state. WHERE state='XX' silently drops these edges. Also `state` is the PROVIDER's NPPES state, NOT the payer's market — Fallon edges legitimately span all 54 states. - SCALE TRAP: at 2.43B rows, full-table count(distinct ...) and unfiltered SELECT * both blow the vlada-mcp-readonly 10GB scan cap / 90s timeout (observed: the profiler's SELECT * and a full count(distinct npi) both failed). ALWAYS prune by the partition keys payer_id + state + npi_bucket; the profiler's empty 'sample' and null grain-test cells are timeout artifacts, not real data. | column | type | meaning | |---|---|---| | rate_id | string | 32-hex-char hash identifying ONE negotiated-rate record (a payer's price for one code/type). Half of the grain key. Fans out to many NPIs. CAVEAT: does NOT join to the current fact_rate Iceberg table — probed edge rate_ids returned 0/10 and 59/55,867 matches because this edge's rate_ids were generated by the (now-deprecated) Spark edge_staging path, a different id generation than today's fact_rate. Treat as an internal dedup key, not a live FK. | | npi | string | 10-digit National Provider Identifier of the provider attached to this rate (the other half of the grain key). ~90,115 distinct NPIs across the table (approx_distinct; exact count(distinct) over 2.4B rows times out at the 10GB workgroup cap). | | npi_bucket | int | Integer 0-63 = conv(sha256(npi)[0:8 hex],16,10) % 64. A deterministic hash bucket of npi used as a physical PARTITION key (cross-engine-stable: DuckDB and Spark produce identical buckets). Not business data; purely for parallelism/partition pruning. Always query with a bucket filter to stay under scan limits. | | payer_id | string | Payer slug. Partition key. CONSTANT 'fallon' for the entire table today (single-payer proof). | | state | string | Two-letter state code, PARTITION key. This is the PROVIDER's state, derived from NPPES (not the payer's geography). 54 distinct values observed (50 states + DC + a few territories from the 56-code VALID_US_STATES set). Fallon (a Massachusetts payer) spans all 54 because its MRF rents national ancillary networks (e.g. Eyemed); MA dominates (e.g. 31.4M edges in just npi_bucket=7 MA) with a long national tail. NULLABLE despite being a partition key — NULL-state rows exist (130 in one bucket alone). | | version_id | string | MRF data version, format 'YYYY-MM'. CONSTANT '2026-04' for the whole table. This is the real time dimension (not loaded_at). | | code | string | The procedure/service code the rate is for (e.g. CPT '99213', HCPCS 'J0873', a revenue code, or an MS-DRG). Functionally determined by rate_id (constant within a rate_id). | | code_system | string | Code system for `code`. Observed values: CPT (dominant), HCPCS, RC (revenue codes), MS-DRG. Functionally determined by rate_id. | | negotiated_rate | double | The negotiated price. UNITS DEPEND ON negotiated_type: for type='negotiated' it is a dollar amount (CPT median ~$305, min $0.01 penny rates are real); for type='percentage' it is a PERCENT (range 17-255, can exceed 100), NOT dollars; for 'per diem' a daily dollar amount. Functionally determined by rate_id. | | negotiated_type | string | Pricing basis. Observed: 'negotiated' (~84%, dollar), 'percentage' (~16%, percent-of-billed), 'per diem' (rare). Determines how to interpret negotiated_rate. Functionally determined by rate_id. | | source_file | string | Filename of the originating MRF gzip (e.g. '20260323_Eyemed_Fallon_in-network-rates.json.gz'). Provenance. Set to min(source_file) when an edge appears in multiple files, so it is the alphabetically-first source, not necessarily the only one. | | loaded_at | timestamp | Build timestamp, IDENTICAL (2026-04-23 17:49:55.901632 UTC) for every row — it is the table build time, not a record observation date and not a usable time dimension. No is_current / snapshot semantics; the table is a single overwrite. | | state_source | string | How `state` was derived (provenance/quality of the state attribution). Enum of 6 possible values (nppes_single_state, nppes_plurality, source_file_default, network_level_ambiguous, payer_default, unknown), but only TWO appear in this Fallon data: nppes_single_state (2,428,342,135 rows = 99.93%) and unknown (1,735,835 = 0.07%). 'unknown' marks providers whose NPI did not resolve to a clean NPPES state (correlates with NULL/ambiguous state). Added by the Spark builder via schema evolution — the legacy DuckDB builder left state NULL with no state_source. | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.rate_provider_edge WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.rate_provider_edge")` first. # Washington Health Benefit Exchange enrollment reports — state publisher history `wa_hbe_enrollment_reports` · Insurer negotiated rates · status partial · 2,190 rows Washington Healthplanfinder QHP, Apple Health, dental, carrier, county, subsidy, premium, demographic, movement and Cascade Care reporting; all 51,568 populated cells in eight exact spring/fall workbooks are losslessly profiled, with 935 spring-core observations normalized separately and five unique legacy PDFs Wayback-recovered. **Grain.** One source-native observation within one immutable Washington HBE workbook or report, release, sheet/cell, period, population, measure and optional geography/carrier/dimension. Query it: `query_substrate` with `SELECT ... FROM wa_hbe_enrollment_reports WHERE ... LIMIT 100`; read `describe_data_source("wa_hbe_enrollment_reports")` first. # ICD-10-CM Diagnosis Code Dimension `drug_silver.dim_icd10cm` · Curated datasets · status live · 1,490,532 rows The full ICD-10-CM diagnosis code set (code + description) by federal fiscal-year vintage — the diagnosis vocabulary that grounds claim-line diagnosis fields, the ICD-10→HCC crosswalk, and clinical interpretation. Distinct from the medicare_dim_icd10_hcc_crosswalk (which only maps the HCC-relevant subset); this is the complete code dimension. **Grain.** One row per ICD-10-CM code per ingest snapshot. The full table has 196,372 rows = the same 98,186 codes ingested TWICE (an 05-16 parse and an 05-18 parse of the identical FY2026 file). On the current snapshot (is_current = true) it is exactly one row per code: 98,186 rows = 98,186 distinct codes. To get a clean code-level dimension, always filter is_current = true (or pick one vintage_tag); code alone is NOT unique across the full table. **How to use it.** Look up the human-readable label and billability of a diagnosis code, filtering to the current snapshot: SELECT code_dotted, long_description, is_header FROM drug_silver.dim_icd10cm WHERE is_current = true AND code = 'E1165'; — returns the dotted form 'E11.65', the full description (Type 2 diabetes mellitus with hyperglycemia), and is_header=false (billable). More generally, join a fact table's ICD-10 column to this dimension on code (or code_dotted) WHERE is_current = true to enrich diagnosis codes with descriptions, and filter is_header = false when you need only billable/codable diagnoses. **Traps.** - code is NOT unique on the full table — each of the 98,186 codes appears twice (one per ingest snapshot), so the full table is 196,372 rows. You MUST filter is_current = true (or one vintage_tag) before treating `code` as a primary key, or every code-level join/count will double. - The two 'history' snapshots are the SAME data, not two code years: sha256_content_hash and the code set are identical; drug_source_version_id is '2026' and cms_vintage_sequence is 1 for both. The 05-16 vs 05-18 difference is just a re-parse 2 days apart (only parser_artifact_hash and the null-vs-populated bronze fields differ). Do not interpret it as a year-over-year code change. - is_header is a billable flag, and its sense is inverted/non-obvious: is_header=True means NON-billable (a header/category needing a more specific child), is_header=False means billable. You cannot infer billability from code length — many 4/5/6-char codes are billable leaves while some are headers (only 7-char codes are uniformly billable). Filter is_header=False for codes you can actually report. - The date columns are ingest/provenance dates, not clinical effective dates. effective_period_start = the snapshot load date (2026-05-16/18), NOT the CMS FY2026 effective date (2025-10-01); effective_period_end is a constant '2099-12-31' sentinel meaning 'open', not a real retirement date; observed_period = asserted_at = effective_period_start in every row. - bronze_object_key and s3_version_id are NULL on the non-current (2026-05-16) snapshot. A null there does not mean missing provenance for a code — it just marks the superseded ingest. The current snapshot has them populated. - order_number is a dense 1..98,186 CMS tabular-order sequence (clinical chapter order), unique per snapshot. It is stable across these two identical snapshots but is release-specific — do NOT use it as a durable code key across future fiscal years, since CMS re-sequences when codes are added or removed. - This table is a label/reference dimension only — it contains NO prices, NPIs, or rates. It exists to attach diagnosis descriptions (prefer long_description) to codes; join via `code` (undotted) or `code_dotted` depending on how the fact table stores ICD-10 codes. | column | type | meaning | |---|---|---| | code | string | ICD-10-CM diagnosis code WITHOUT the decimal point (e.g. 'A000', 'C441021'). Lengths 3-7 chars. Unique within a snapshot (98,186 distinct on is_current). This is the natural join key. NOT unique across the full table (each code appears once per snapshot). | | code_dotted | string | Same code in standard dotted display form (e.g. 'A00.0', 'C44.1021'). The dot is inserted after the 3rd character; for 3-char codes it equals `code` exactly (no dot). 1:1 with `code` (also 98,186 distinct). Use this for display; use `code` for matching against systems that store undotted codes. | | is_header | boolean | Billable flag, inverted: True = a non-billable header/category (a more specific child code exists and must be used), False = a billable terminal/leaf code you can actually report. On the current snapshot: 23,467 headers (True) vs 74,719 billable (False). ALL 7-char codes are billable (is_header=False); shorter codes are mixed. Example: 'A00' Cholera is a header (True) while its children 'A00.0/.1/.9' are billable (False). Do NOT infer billability from code length alone — use this flag. | | order_number | int | The code's 1-based position in CMS's official tabular-order listing (1 to 98,186, a dense gapless sequence). Reflects clinical chapter/category ordering, not numeric sort of the code. Unique within a snapshot and byte-identical across the two snapshots here, but it is presentation order tied to a fiscal-year release — do not treat it as a stable cross-year identifier; CMS re-sequences when codes are added/removed. | | short_description | string | CMS abbreviated description, max ~60 chars, using clinical shorthand ('d/t' = due to, 'NEC' = not elsewhere classified, 'oth' = other, 'unspec'). Never null. Differs from long_description for 55,443 of 98,186 codes; identical for the other 42,743. | | long_description | string | CMS full-text description, up to 228 chars, fully spelled out. Never null. This is the human-readable label to prefer in reports. | | observed_period | date | Date the source file was observed/ingested for this snapshot (2026-05-16 or 2026-05-18). Within each snapshot it is identical to asserted_at and effective_period_start — a bitemporal triple that carries no extra signal in this single-vintage data. | | asserted_at | date | Bitemporal 'as-asserted' date for the snapshot; equals observed_period and effective_period_start in every row (2026-05-16 or 2026-05-18). Provenance scaffolding for future multi-vintage history. | | effective_period_start | date | Start of the validity window for the row's assertion; equals the snapshot ingest date (2026-05-16 / 2026-05-18). NOTE: this is the ingest/assertion date, not the CMS fiscal-year effective date (FY2026 codes are effective 2025-10-01) — do not read clinical effective dating from it. It is the profiler's chosen 'time column'. | | effective_period_end | date | End of the validity window. Always the sentinel '2099-12-31' for every row (100%) — meaning open/not-yet-superseded. No code is retired in this data; this is a placeholder, not a real expiry. | | cms_vintage_sequence | int | Ordinal of the CMS vintage. Constant = 1 across the whole table (only the first/FY2026 vintage has been loaded). Would increment as additional fiscal-year code sets are added. | | parse_revision | int | Parser revision counter. Constant = 1 for all rows. Reserved for re-parses of the same source under a changed parser. | | parser_artifact_hash | string | SHA-256 of the parser artifact/run that produced the row. Has TWO distinct values — one per snapshot (the 05-16 parse vs the 05-18 parse) — so it distinguishes the two ingests even though the underlying CMS content is identical. | | source_url | string | CMS download URL of the source ZIP. Constant: 'https://www.cms.gov/files/zip/2026-code-descriptions-tabular-order.zip' for all rows. | | sha256_content_hash | string | SHA-256 of the source file content. IDENTICAL ('55a9124a...') for BOTH snapshots — proving the two ingests are the same bytes re-parsed, not new data. The 'history' is a re-ingest, not a code-set change. | | source_id | string | Logical source identifier. Constant = 'icd10cm' for all rows. | | is_current | boolean | Snapshot-dedup flag: True for the latest ingest (2026-05-18, 98,186 rows), False for the superseded one (2026-05-16, 98,186 rows). ALWAYS filter is_current = true to get a one-row-per-code dimension; omitting it doubles every code. | | bronze_object_key | string | S3 key of the bronze object this row was built from. Populated ONLY on the current snapshot; NULL on the superseded 2026-05-16 snapshot. A null here therefore means 'this is the older/non-current ingest', not 'no source'. | | s3_version_id | string | S3 object version id of the bronze file. Same pattern as bronze_object_key: present on the current snapshot, NULL on the superseded 05-16 snapshot. | | vintage_tag | string | Human-readable snapshot label combining source, fiscal year and ingest date: 'icd10cm_fy2026_2026-05-16' (non-current) and 'icd10cm_fy2026_2026-05-18' (current). This is the cleanest single-column snapshot discriminator; (code, vintage_tag) is unique across the full table. | | drug_source_version_id | string | Version id of the source within the drug substrate. Constant = '2026' (the only code year loaded). Would carry the fiscal-year/version when more vintages are added. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_icd10cm WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_icd10cm")` first. # ICD-10-PCS Inpatient Procedure Code Dimension `drug_silver.dim_icd10pcs` · Curated datasets · status live · 1,221,444 rows The full ICD-10-PCS inpatient procedure code set (code + description) by federal fiscal-year vintage — the inpatient procedure vocabulary that feeds MS-DRG grouping logic and inpatient claim interpretation. **Grain.** One row per ICD-10-PCS code per ingestion run. On is_current=true there are exactly 79,115 rows = 79,115 distinct codes (one row per code). The full table is 158,230 rows = that same 79,115-code FY2026 file loaded TWICE (an is_current=false copy dated 2026-05-16 and an is_current=true copy dated 2026-05-18). So the real, usable grain is one row per code after filtering is_current=true. **How to use it.** Use it to decode or validate ICD-10-PCS inpatient procedure codes. Example: SELECT code, description FROM drug_silver.dim_icd10pcs WHERE is_current = true AND code = '0016070' returns 'Bypass Cerebral Ventricle to Nasopharynx with Autologous Tissue Substitute, Open Approach'. ALWAYS include WHERE is_current = true (otherwise every code returns 2 rows). To filter to a PCS section, use substr(code,1,1) (e.g. ='0' for Medical & Surgical, ='B' for Imaging, ='X' for New Technology). **Traps.** - DOUBLE-COUNT TRAP: the table is 158,230 rows but only 79,115 distinct codes. Every code appears exactly twice — the SAME FY2026 file (identical sha256_content_hash) was ingested on 2026-05-16 (is_current=false) and 2026-05-18 (is_current=true). ALWAYS filter WHERE is_current = true; then 'code' alone is a unique key. - FAKE TIME DIMENSION: the profiler reports earliest 2026-05-16 -> latest 2026-05-18, 2 periods, 'daily' periodicity. That is NOT code history — it is just the two re-ingestion dates of one file. effective_period_start/observed_period/asserted_at all carry the ingestion date, not the CMS fiscal-year effective date (~2025-10-01). Treat this table as STATIC FY2026, single vintage (cms_vintage_sequence=1, source_url has one FY2026 file). - MEANINGFUL NULL: s3_version_id is NULL for the entire older (is_current=false) copy and populated for the current copy. A null s3_version_id reliably flags the superseded run; it is not random missing data. - WRONG CODE SYSTEM TRAP: this is ICD-10-PCS = inpatient PROCEDURE codes (7-char alphanumeric, used for hospital inpatient procedures and MS-DRG assignment). The sibling dim_icd10cm (98,186 codes) is ICD-10-CM = DIAGNOSIS codes. Do not join PCS codes to diagnosis fields or vice-versa. Also note dim_msdrg is the related DRG grouping table. - PURE DECODE TABLE, NO COST: this dimension contains NO prices, rates, or payment amounts — only code + description. Its role in a cost catalog is to translate/validate ICD-10-PCS codes that appear in inpatient claims/MS-DRG cost data; pricing lives in fact_* tables (e.g. drug spending, reimbursement) and in the Medicare/commercial rate marts elsewhere. - PROVENANCE COLUMNS DON'T VARY BY CODE: parser_artifact_hash (2 values) and vintage_tag (2 values) differ only by ingestion run, and every other provenance column (source_url, sha256_content_hash, bronze_object_key, source_id, drug_source_version_id, cms_vintage_sequence) is single-valued. Don't mistake parser_artifact_hash/vintage_tag for per-code attributes. | column | type | meaning | |---|---|---| | code | string | The 7-character ICD-10-PCS procedure code. THE business key. Verified: all 79,115 codes are exactly 7 chars, no nulls, all match the PCS alphanumeric alphabet (0-9 plus A-H,J-N,P-Z; letters I and O are excluded to avoid 1/0 confusion). First character = PCS section: '0'=Medical & Surgical (68,419 codes, the bulk), '1'=Obstetrics, '2'=Placement, '3'=Administration, '4'=Measurement/Monitoring, '5'-'9'=other procedure sections, 'B'=Imaging (2,978), 'C'=Nuclear Medicine, 'D'=Radiation Therapy, 'F'=Phys Rehab/Audiology, 'G'=Mental Health, 'H'=Substance Abuse Treatment, 'X'=New Technology (476). Range '0016070' to 'XY0YX37'. | | description | string | Official CMS long description of the procedure (e.g. 'Bypass Cerebral Ventricle to Nasopharynx with Autologous Tissue Substitute, Open Approach'). 8-198 chars, never null, never empty. Identical across both ingestion runs for every code (0 codes drift). | | observed_period | date | Date the source file was observed/ingested. Only two values: 2026-05-16 (the is_current=false copy) and 2026-05-18 (the is_current=true copy). NOT a real code-validity date — it is the ingestion timestamp, identical for all codes in a run. | | asserted_at | date | Bitemporal 'asserted' date; equals observed_period in every row (2026-05-16 or 2026-05-18). Ingestion-run marker, not code semantics. | | effective_period_start | date | Start of the row's effective window; equals observed_period (2026-05-16 or 2026-05-18). The profiler picks this as the time column, but it reflects the ingestion date, NOT the CMS fiscal-year effective date (which would be 2025-10-01 for FY2026). Do not read code-history into it. | | effective_period_end | date | End of the effective window. Uniformly the sentinel '2099-12-31' for all current rows = open-ended / still in effect. No code is retired in this snapshot. | | cms_vintage_sequence | int | Sequence number of the CMS vintage. Constant = 1 (single FY2026 vintage present). Would increment if multiple fiscal-year files were loaded. | | parse_revision | int | Parser revision number. Constant = 1. | | parser_artifact_hash | string | SHA256 of the parser artifact/run. Has 2 distinct values — one per ingestion run (the 2026-05-16 run vs the 2026-05-18 run). This is one of the columns that distinguishes the duplicate copies; it does NOT vary by code. | | source_url | string | CMS download URL. Single value: 'https://www.cms.gov/files/zip/2026-icd-10-pcs-codes-file.zip'. Confirms exactly one fiscal-year source (FY2026). | | sha256_content_hash | string | SHA256 of the raw source file content. SINGLE value across the whole table ('d37ad06e...') — proving both the is_current=true and is_current=false copies are byte-identical content (the same file re-ingested), not a content change. | | source_id | string | Logical source identifier. Constant = 'icd10pcs'. | | is_current | boolean | Snapshot/dedup flag. THE column you must filter on. Exactly half the rows are true and half false; each code has one true and one false row. Filter is_current=true to get the clean one-row-per-code FY2026 set (79,115). Without it you double-count every code. | | bronze_object_key | string | S3 key of the bronze landing object: 'drug/bronze/icd10pcs/fy2026/d37ad06e37275baf-icd10pcs_fy2026_codes_file.zip'. Single value across the table. | | s3_version_id | string | S3 object version id of the bronze file. MEANINGFUL NULL: it is NULL for all 79,115 is_current=false rows (2026-05-16 run) and populated ('owTFqIErx6...') for all is_current=true rows (2026-05-18 run). So a null here marks the older superseded ingestion. | | vintage_tag | string | Human-readable vintage label. 2 distinct values: 'icd10pcs_fy2026_2026-05-16' (non-current) and 'icd10pcs_fy2026_2026-05-18' (current). Encodes fiscal year + ingestion date; the date part is what differs between the two copies. | | drug_source_version_id | string | Drug-platform source version id. Constant = '2026' (the fiscal year). One version present. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_icd10pcs WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_icd10pcs")` first. # CPT/HCPCS → modal UB-04 Revenue Code mapping `medicare_silver.cpt_revcode_modal` · Curated datasets · status live Empirical CPT/HCPCS → UB-04 revenue-code mapping: for each billing code, the MODAL revenue code observed, the modal count, total rows, and modal share. Lets facility lines be related to a revenue code (and vice versa) — part of the fix for revenue-only facility lines being unpriceable. **Grain.** One row per billing_code — its modal (most-common) UB-04 revenue code + support. | column | type | meaning | |---|---|---| | billing_code | string | | | modal_rc | string | | | modal_n | bigint | | | total_rc_rows | bigint | | | modal_share | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.cpt_revcode_modal WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cpt_revcode_modal")` first. # Code Vintage Validity (which years a billing code is valid) `medicare_silver.dim_code_validity` · Curated datasets · status live · 20,523 rows For each billing code (HCPCS/CPT/DRG/etc.) the years it is valid: first_year, last_year, and the count of years observed. The reference that lets repricing resolve a claim's code against the RIGHT vintage and flag retired/not-yet-introduced codes instead of guessing — the code-vintage gap, now grounded in data (20,523 codes). **Grain.** One row per (code, code_system) — first_year, last_year, year_count of validity. | column | type | meaning | |---|---|---| | code | string | | | code_system | varchar(6) | | | first_year | bigint | | | last_year | bigint | | | year_count | bigint | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_code_validity WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_code_validity")` first. # Care-site × payer coverage aggregate `vlada_curated.agg_care_site_payer_coverage` · Curated datasets · status live Aggregate of which payers have rates for each care site: NPI × class × county × payer with resolved flag, provider_group_count, rate_count, contract_shape. Backs county payer-coverage answers + the pricing flywheel. **Grain.** One row per (NPI, care_site_class, county, payer) — coverage + rate/contract shape. | column | type | meaning | |---|---|---| | npi | string | | | care_site_class | string | | | county_fips | string | | | payer_id | string | | | resolved | boolean | | | provider_group_count | int | | | rate_count | int | | | contract_shape | string | | | vintage | date | | | source | string | | Tools that read it: state_expert Query it: `query_substrate` with `SELECT ... FROM vlada_curated.agg_care_site_payer_coverage WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.agg_care_site_payer_coverage")` first. # County intelligence aggregate (supply by class) `vlada_curated.agg_county_intelligence` · Curated datasets · status live County-fleet serving aggregate: per county and care-site class, the verified site_count, tier, ownership_resolved and ccn_linked flags. Backs the county_intelligence / county_expert supply answers. **Grain.** One row per (county_fips, care_site_class) — verified site count + ownership/ccn flags. | column | type | meaning | |---|---|---| | county_fips | string | | | county_name | string | | | state_code | string | | | tier | int | | | care_site_class | string | | | site_count | bigint | | | ownership_resolved | bigint | | | ccn_linked | bigint | | | vintage | date | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.agg_county_intelligence WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.agg_county_intelligence")` first. # County × payer landscape aggregate `vlada_curated.agg_county_payer_landscape` · Curated datasets · status live Per county and payer, the hospital MRF coverage (hospital_mrf_rows) + status. A coverage map of which payers have hospital pricing in each county. **Grain.** One row per (county_fips, payer_id) — hospital MRF row count + status. | column | type | meaning | |---|---|---| | county_fips | string | | | payer_id | string | | | hospital_mrf_rows | bigint | | | status | string | | | vintage | date | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.agg_county_payer_landscape WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.agg_county_payer_landscape")` first. # State × payer roster aggregate `vlada_curated.agg_state_payer_roster` · Curated datasets · status live Per state and payer, coverage counts (ct_hospitals, mrf_rows), in_rds/built flags, and a recommended action. The operator-facing roster of payer coverage + what to build next per state. **Grain.** One row per (state, payer_id) — coverage + build/action status. | column | type | meaning | |---|---|---| | state | string | | | payer_id | string | | | ct_hospitals | int | | | mrf_rows | bigint | | | in_rds | boolean | | | built | boolean | | | action | string | | | vintage | date | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.agg_state_payer_roster WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.agg_state_payer_roster")` first. # Billing Code Vocabulary (HCPCS/CPT/etc.) `vlada_curated.dim_code` · Curated datasets · status live · 20,196 rows The canonical billing-code dimension: code + code_system + descriptions + effective window + source. The vocabulary tools join to for a human label on any HCPCS code. Derived CURRENT vocabulary: exact union of valid HCPCS codes across the five canonical Medicare/ASP Iceberg tables (PFS/OPPS/ASC/CLFS/ASP is_current) at pinned snapshots, fail-closed validated. **Grain.** One row per distinct procedure/service code. Verified: 19,766 rows = 19,766 distinct `code` values (also distinct case-insensitively), so `code` alone is the full, minimal primary key. `code_system` adds nothing to the key (it is the constant 'HCPCS' on every row), and the profiler's reported (code, code_system) composite is a superset — code by itself is sufficient. **How to use it.** Use it as a code->label lookup to enrich coded cost/rate facts. Example: SELECT f.code, c.description FROM vlada_curated.fact_rate f LEFT JOIN vlada_curated.dim_code c ON f.code = c.code WHERE regexp_like(c.code,'^[0-9A-Z]{5}$') — answers 'what procedure does this billed code mean?' (returns the CMS short descriptor; expect NULL descriptions for the ~14% of codes flagged source='medicare_other' that aren't in the Medicare fee schedule). **Traps.** - Column names are inverted/misleading: the human-readable label is in `description` (and it is only the CMS ~28-char SHORT descriptor, max len exactly 28 — not a full long description), while `short_description` is 100% NULL. Never select short_description expecting text. - `source` partitions the table into two NON-overlapping halves. Only medicare_pfs (17,040) rows have description/source_year/effective_start; all 2,726 medicare_other rows have those three columns NULL. So a NULL description here means 'code not in the Medicare fee schedule', not 'missing data'. If you LEFT JOIN this table to label codes, ~14% of codes resolve to no description. - Dirty rows leaked into the primary key: 7 medicare_other rows are footnote text fragments (code='NOTE 1: Pa', etc.) and 1 medicare_pfs row is an Excel control-char artifact (code='_x001A_'). They are length>5 (or '_x...') — exclude with regexp_like(code,'^[0-9A-Z]{5}$') to get the ~19,758 legitimate codes. - Not a time-series / SCD table despite having source_year, effective_start, effective_end and loaded_at. loaded_at is one constant value (single 2026-04-17 snapshot), effective_end is 100% NULL, there is no is_current/version column, and source_year skips 2025 with 2026 holding 84% of rows. Treat it as a static current-as-of-2026 code dictionary, not a history of code validity. Do NOT filter on is_current — no such column exists. - code_system is the constant 'HCPCS' everywhere and is therefore useless for distinguishing CPT (Category I numeric), HCPCS Level II (alpha-prefixed), or Category II/III / PLA codes. Derive the code family from the shape of `code` itself, not from code_system. | column | type | meaning | |---|---|---| | code | string | The procedure/service billing code and the sole primary key. 5 chars for nearly all real codes. Three families observed: pure-numeric 5-digit CPT Category I (9,810 e.g. '99213','70551'); alpha+4-digit HCPCS Level II (8,209 e.g. 'J9299','G0008','S-codes'); 4-digit+trailing-letter CPT Category II/III & PLA/MAAA (1,739, e.g. '0001A','0001U' PLA lab,'0001M' MAAA). WARNING: 8 rows are dirty non-codes — 7 footnote text fragments like 'NOTE 1: Pa' and one Excel artifact '_x001A_' — filter with regexp_like(code,'^[0-9A-Z]{5}$') if you need clean codes. | | code_system | string | Constant 'HCPCS' on all 19,766 rows (HCPCS is the CMS umbrella that contains CPT). Carries zero discriminating information today; do NOT rely on it to distinguish CPT vs HCPCS-Level-II — derive that from the code's own shape instead. | | description | string | The code's text label. MISLEADINGLY NAMED: it holds the CMS ~28-character SHORT descriptor, not a long description (max length observed is exactly 28; '99213'->'Office o/p est low 20 min', '70551'->'Mri brain stem w/o dye'). Populated only for medicare_pfs rows (17,037 of 17,040; 3 PFS rows null). NULL for ALL 2,726 medicare_other rows. | | short_description | string | 100% NULL across the entire table. Despite the name, the actual short descriptor lives in `description`. Treat this column as unused/reserved. | | source_year | double | Vintage year of the source file the code/description came from, as a double. Only populated for medicare_pfs (NULL for all medicare_other). Distinct values: 2026 (16,648 rows = the bulk current annual load), and sparse residuals 2024 (133), 2023 (140), 2022 (119). NO 2025. This is NOT a clean year-by-year history — older years are just codes whose latest sourced descriptor predates the 2026 file; do not treat as an as-of-year snapshot dimension. | | effective_start | date | Date the code/description became effective, perfectly correlated 1:1 with source_year (2026->2026-01-01, 2024->2024-01-01, 2023->2023-10-01, 2022->2022-10-01). Populated only for medicare_pfs; NULL for all medicare_other. Useful as a coarse 'when this code entered the fee schedule' signal, not an exact code-introduction date. | | effective_end | string | Declared as date in the profiler but actually varchar, and 100% NULL on every row. No code-retirement / end-dating is captured. Do not use for point-in-time validity logic. | | source | string | Provenance / coverage flag with exactly 2 disjoint values. 'medicare_pfs' (17,040) = code is priced in the Medicare Physician Fee Schedule and carries description+source_year+effective_start. 'medicare_other' (2,726) = code exists but is NOT in the PFS, so ALL of description/source_year/effective_start are NULL; dominated by PLA lab codes (0xxxU, 499) and HCPCS Level II (2,205). The two sources share ZERO codes (intersection = 0). | | loaded_at | timestamp | ETL load timestamp, identical single value '2026-04-17 18:47:42 UTC' on every row. Confirms this is a one-shot static snapshot with no incremental/versioned loading. Not a per-row event time. | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_code WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_code")` first. # Billing-code institutional-vs-professional class `vlada_curated.dim_code_billing_class` · Curated datasets · status live For each billing code, the learned billing class (institutional vs professional) from observed counts: n_institutional, n_professional, institutional_frac, learned_class. Routes a claim line to the right benchmark (facility vs professional). **Grain.** One row per (code_system, billing_code) — learned institutional/professional class. | column | type | meaning | |---|---|---| | code_system | string | | | billing_code | string | | | n_institutional | bigint | | | n_professional | bigint | | | n_stated | bigint | | | institutional_frac | double | | | learned_class | varchar(13) | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_code_billing_class WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_code_billing_class")` first. # Geography Hierarchy (ZIP → county → CBSA → CSA → state) `vlada_curated.dim_geography` · Curated datasets · status live · 33,791 rows The geography spine: ZIP → county (FIPS) → CBSA → CSA → state, with centroid, population, and land area. The geographic join key for county/market rollups across the substrate. **Grain.** One row per 5-digit U.S. ZIP code. Verified: 33,791 rows = 33,791 distinct zip_code = 33,791 distinct geo_id, all zip_code values exactly 5 chars. geo_id is just the string 'ZIP_' + zip_code (confirmed equal in all 33,791 rows), so it is a redundant restated key, not an independent grain. No time/version/is_current dimension exists (single static snapshot), so zip_code alone is the full minimal key. **How to use it.** Use it to roll cost facts up to county/metro/state. Best join is a fact's 5-digit ZIP to g.zip_code to attach county_fips, cbsa_code/cbsa_name (metro market), csa_code, and the metro/micro/rural class. Example: SELECT g.cbsa_name, g.urban_rural, COUNT(*) FROM some_fact f JOIN dim_geography g ON f.provider_zip = g.zip_code GROUP BY 1,2 -- answers 'which metro area and urban-vs-rural bucket does each provider/rate sit in?'. Do NOT use it for demographics, lat/lon, or Medicare locality (all NULL)." **Traps.** - ROUGHLY HALF THE COLUMNS ARE 100% NULL PLACEHOLDERS (verified empty across all 33,791 rows): every demographic (zip_population, county_population, median_household_income, poverty_rate, uninsured_rate, hospital_count, physician_density), every geospatial field (zip_centroid_lat/lon, zip_land_area_sqmi), ALL THREE Medicare-locality fields (medicare_carrier, medicare_locality, medicare_locality_name), and metro_status. The data dictionary lists these as if they exist, but the data does not. Treat this as a ZIP->county->CBSA/CSA->state crosswalk ONLY. - CRITICAL for cost analysis: this table CANNOT map ZIP to Medicare physician-fee-schedule locality or carrier (those columns are all NULL). Anyone needing ZIP->Medicare-locality must use the dedicated Medicare fee-schedule benchmark tables, NOT this dim. - geo_id is NOT an independent key: it is literally 'ZIP_' + zip_code in 100% of rows. The minimal grain is zip_code alone (33,791 rows). Do not treat geo_id and zip_code as if they could diverge. - 'urban_rural' value 'large_metro' is misleading: it means 'in any metro CBSA' (a 1:1 relabel of cbsa_type='metro'), NOT a large-population tier; small metros like Aguadilla, PR are tagged 'large_metro'. The three classes large_metro/micropolitan/rural are exactly metro/micro/non-CBSA. - csa_code is stored with a spurious trailing '.0' (e.g. '364.0') from float-to-string coercion; strip it before joining to clean CSA codes. cbsa_code does not have this issue. - Static single snapshot: data_source='census_bureau' and source_version='2020' are constant; created_at=updated_at=_synced_at are each one constant timestamp. There is NO is_current flag, version, or temporal/price dimension (pure reference geography). Each ZIP maps to exactly ONE county (real ZIPs can cross counties), so it is a simplified crosswalk. | column | type | meaning | |---|---|---| | geo_id | string | Surrogate key, ALWAYS literally 'ZIP_' concatenated with zip_code (verified equal in all 33,791 rows). Redundant alias of zip_code; use it only to join to other dims that reference geo_id (e.g. dim_hospital_system.hq_geo_id). Carries no info beyond the ZIP. | | zip_code | string | 5-digit U.S. ZIP code, zero-padded string (length is always 5, e.g. '00601'). The true grain key; 33,791 distinct values. Stored as string so leading zeros are preserved (NE/PR ZIPs start with 0). | | zip_centroid_lat | string | INTENDED ZIP centroid latitude but 100% NULL across all 33,791 rows (genuinely NULL, not empty-string). Unusable placeholder. | | zip_centroid_lon | string | INTENDED ZIP centroid longitude but 100% NULL across all rows. Unusable placeholder. For hospital coordinates use dim_hospital_external.latitude/longitude instead. | | zip_population | string | INTENDED ZIP population but 100% NULL. Unusable placeholder. | | zip_land_area_sqmi | string | INTENDED ZIP land area in square miles but 100% NULL. Unusable placeholder. | | county_fips | string | 5-digit county FIPS code (state2 + county3), string, POPULATED for all rows (0 null). Its first 2 chars equal state_fips in 100% of rows. 3,211 distinct counties. Each ZIP maps to exactly one county here (a simplification; real ZIPs can span counties). | | county_name | string | County name (or PR 'Municipio', LA 'Parish'), POPULATED for all rows. Paired with county_fips. | | county_population | string | INTENDED county population but 100% NULL. Unusable placeholder. | | cbsa_code | string | 5-digit Core-Based Statistical Area (metro/micro area) code. NULL for 9,057 rows (26.8%), exactly the ZIPs not in any CBSA (i.e. urban_rural='rural'). 928 distinct CBSAs when present. | | cbsa_name | string | CBSA name (e.g. 'Aguadilla, PR'). NULL on the same 9,057 rural rows as cbsa_code. | | cbsa_type | string | CBSA class: 'metro' (18,475 rows) or 'micro' (6,259 rows); NULL for the 9,057 rural/non-CBSA rows. Aligns 1:1 with urban_rural (metro<->large_metro, micro<->micropolitan, NULL<->rural). | | csa_code | string | Combined Statistical Area code (aggregation of adjacent CBSAs). NULL for 15,192 rows (45%); many CBSAs belong to no CSA. Stored with a trailing '.0' (e.g. '364.0') from float-to-string conversion, so strip it before joining to clean CSA codes. CSA never appears without a CBSA (0 such rows). | | csa_name | string | CSA name (e.g. 'Mayaguez-Aguadilla, PR'). NULL wherever csa_code is NULL (15,192 rows). 183 distinct CSAs. | | state_code | string | 2-letter USPS state/territory abbreviation (e.g. 'TX','PR'), POPULATED for all rows. 56 distinct = 50 states + DC + 5 territories (PR, GU, VI, MP, AS). Largest TX 1,989 ZIPs; smallest AS 1 ZIP. | | state_name | string | Full state/territory name (e.g. 'Texas','Puerto Rico'), POPULATED for all rows. Paired 1:1 with state_code. | | state_fips | string | 2-digit state FIPS code (e.g. '72'=PR), POPULATED for all rows. Equals the first 2 chars of county_fips in 100% of rows. | | census_region | string | Census region, POPULATED for all rows. 5 values: South (11,590), Midwest (10,150), Northeast (6,103), West (5,799), plus a non-standard 'Territories' (149) for PR/GU/VI/MP/AS. | | census_division | string | Census division, POPULATED for all rows. 11 values (9 standard divisions e.g. 'South Atlantic','Pacific', plus 'Caribbean' for PR/VI and 'Pacific Islands' for GU/MP/AS). | | medicare_carrier | string | INTENDED Medicare carrier/MAC code but 100% NULL. CRITICAL for cost work: this table CANNOT map ZIP to Medicare carrier despite the column existing. | | medicare_locality | string | INTENDED Medicare physician-fee-schedule locality code (the GPCI geography) but 100% NULL. CRITICAL: do NOT use this table to attach Medicare locality to a ZIP; the data is absent. Use the Medicare fee-schedule benchmark tables instead. | | medicare_locality_name | string | INTENDED Medicare locality name but 100% NULL. Unusable placeholder. | | urban_rural | string | Derived urban/rural class, POPULATED for all rows. 3 values: 'large_metro' (18,475), 'rural' (9,057), 'micropolitan' (6,259). NAME IS MISLEADING: 'large_metro' means 'in any metro CBSA' (a 1:1 relabel of cbsa_type='metro', including small metros like Aguadilla PR); it is NOT a population-size tier. Equivalent to cbsa_type. | | metro_status | string | INTENDED metro-status flag but 100% NULL. Use urban_rural / cbsa_type instead. | | median_household_income | string | INTENDED demographic but 100% NULL. Unusable placeholder. | | poverty_rate | string | INTENDED demographic but 100% NULL. Unusable placeholder. | | uninsured_rate | string | INTENDED demographic but 100% NULL. Unusable placeholder. | | hospital_count | string | INTENDED count of hospitals per ZIP but 100% NULL. Unusable placeholder (count hospitals from dim_hospital_external instead). | | physician_density | string | INTENDED physician-density metric but 100% NULL. Unusable placeholder. | | data_source | string | Provenance, POPULATED for all rows; constant 'census_bureau' across all 33,791 rows. | | source_version | string | Source vintage, POPULATED for all rows; constant '2020' (2020 Census geography) across all rows. | | created_at | timestamp | Row creation timestamp; a single constant value (2026-04-04 01:44:15 UTC) in all rows, confirming a one-shot bulk load with no row-level history. | | updated_at | timestamp | Update timestamp; identical to created_at in 100% of rows (single constant). No row has been individually updated. | | metadata | string | Free-form JSON string (sourced from RDS JSONB), POPULATED but always the empty object literal '{}', so it carries no extra data. | | _synced_at | timestamp | Pipeline timestamp when the row was synced from RDS geography_hierarchy into this Iceberg dim; single constant value (2026-04-17 18:45:59 UTC). Operational lineage, not business data. | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_geography WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_geography")` first. # HCPCS code dimension `vlada_curated.dim_hcpcs` · Curated datasets · status live · 24,855 rows The resolving dimension for HCPCS, built because 19 catalogued assets carried the identifier and the only candidate authority was dim_provider_service, a provider-by-service fact holding roughly 1,988 rows per code. Population is the union of codes across the PFS RVU, OPPS Addendum B, ASC Addendum, CLFS and ASP fee schedules plus the provider-service fact. Descriptions are taken in source precedence, a CMS fee-schedule descriptor before a claims-aggregate label, and description_source records which supplied it. **Grain.** One row per HCPCS code — the authority for cms:hcpcs. | column | type | meaning | |---|---|---| | hcpcs_code | string | | | hcpcs_level | varchar(16) | | | hcpcs_prefix | string | | | description | string | | | description_source | varchar(36) | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_hcpcs WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_hcpcs")` first. # US state and territory dimension `vlada_curated.dim_state` · Curated datasets · status live · 56 rows The resolving dimension for USPS state codes, built because the only candidate authority was dim_state_metric, a metrics fact grained (state_code, domain, metric) holding roughly 37 rows per state. Population is dim_geography's state set unioned with every state code actually observed in the assets that use the identifier, so a state referenced by a metrics table but absent from the ZIP-derived geography is still resolvable. **Grain.** One row per USPS state or territory code — the authority for usps:state. | column | type | meaning | |---|---|---| | state_code | string | | | state_name | string | | | state_fips | string | | | census_region | string | | | census_division | string | | | attribute_source | varchar(27) | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_state WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_state")` first. # State Metrics (demographics / health context, integrated) `vlada_curated.dim_state_metric` · Curated datasets · status live Integrated state-level metrics across domains (demographics, health outcomes, access) with value, unit, geo_level, source, and data_year. Backs the state-agent/state-KB context. **Grain.** One row per (state_code, domain, metric, data_year) — a metric value. | column | type | meaning | |---|---|---| | state_code | string | | | domain | string | | | metric | string | | | value | double | | | unit | string | | | geo_level | string | | | source | string | | | source_url | string | | | vintage | string | | | ingested_at | string | | | data_year | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_state_metric WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_state_metric")` first. # Provider-type → procedure (HCPCS) profile `vlada_curated.dim_taxonomy_procedures` · Curated datasets · status live Which HCPCS each provider type performs, with provider_count, total_services, and rank. Helps map a specialty to its typical procedures (and sanity-check provider↔procedure plausibility). **Grain.** One row per (provider_type x hcpcs_cd) — i.e. one row per Medicare specialty + procedure-code pair, restricted to pairs billed by at least 5 distinct providers. 28,605 rows = 103 provider types x their respective procedure lists (2 to 1,538 codes each). Both (provider_type, hcpcs_cd) AND (provider_type, rank) are independently verified minimal unique keys (each = 28,605 distinct). The profiler's reported (provider_type, hcpcs_cd, provider_count) is a non-minimal superset; provider_count is a measure, not part of the key. **How to use it.** "SELECT hcpcs_cd, provider_count, total_services, rank FROM vlada_curated.dim_taxonomy_procedures WHERE provider_type = 'Family Practice' ORDER BY rank LIMIT 10" answers 'what are the most common procedures Family Practice physicians bill to Medicare, and how many providers bill each' (returns 99214 then 99213 ~69K providers, etc.). To sanity-check whether a specialty plausibly performs a given code (ghost-rate filter): "SELECT provider_count FROM vlada_curated.dim_taxonomy_procedures WHERE provider_type = :pt AND hcpcs_cd = :code" — a hit means >=5 distinct Medicare providers of that type bill it; no row means rare or suppressed (treat as weak negative, not definitive). **Traps.** - rank is ordered by provider_count DESC, NOT by total_services. Verified: 13,824 rows violate total_services-descending order, but 0 rows violate provider_count-descending order. If you want 'highest-volume procedure for a specialty', sort by total_services yourself — do not trust rank=1 for that. - provider_count = 5 is a CENSORSHIP FLOOR, not real data. The builder drops every (specialty, code) pair billed by <5 distinct providers (HAVING COUNT(DISTINCT npi) >= 5). So absence of a row does NOT mean 'no provider of that type performs the code' — it may just be a rare/suppressed pairing. Use this table for 'is this common', not 'is this impossible'. - No time column at all. The output schema deliberately drops data_year and loaded_at — this is a single STATIC snapshot blending CMS years 2021, 2022, 2023 (deduped to the most-recent year per NPI+HCPCS+place in the upstream dim_provider_service before aggregation). There is no is_current, no snapshot, no history; it is fully overwritten on each rebuild. - provider_count and total_services count DISTINCT NPIs / SUM services across the blended 2021-2023 window, not a single year. A provider billing the code in any of the three years is counted once. So these are coverage/footprint figures, not an annual rate. - This is Medicare Part B FEE-FOR-SERVICE utilization only (no Medicare Advantage, no commercial, no Part A/inpatient). provider_type is CMS's specialty descriptor, not a NUCC/clinical taxonomy code despite the table name 'dim_taxonomy_procedures'. It is a specialty->procedure footprint map, NOT a fee schedule or a rate table — it carries no prices. - Sibling relationship: this is a pre-aggregated rollup of vlada_curated.dim_provider_service (14.2M rows, the granular NPI x HCPCS x place-of-service table with hcpcs_desc, state, zip, and Medicare allowed/payment amounts). For descriptions, geography, NPIs, or dollar amounts, query dim_provider_service; this table only has counts and the rank. | column | type | meaning | |---|---|---| | provider_type | string | CMS Medicare provider/specialty taxonomy label (the Rndrng_Prvdr_Type field from the CMS source), e.g. 'Addiction Medicine', 'Nurse Practitioner', 'Family Practice', 'Physical Therapist in Private Practice', 'Ambulance Service Provider', 'Clinic or Group Practice'. 103 distinct values. NOT a clinical NUCC taxonomy code — it is CMS's own free-text specialty descriptor (note quirky spacing like 'Allergy/ Immunology'). Never null. Partition dimension: each provider_type owns an independent, dense rank 1..N. | | hcpcs_cd | string | The HCPCS / CPT procedure code billed by that specialty. Always exactly 5 characters: numeric CPT (e.g. '99214', '97110') and HCPCS Level II alphanumeric (e.g. 'G2087', 'G0439'). 4,895 distinct codes; a code recurs across many specialties (e.g. '99213' appears in 77 provider types), so hcpcs_cd alone is NOT a key. No description column here — join to dim_provider_service.hcpcs_desc for the procedure name. Never null. | | provider_count | bigint | COUNT(DISTINCT npi) — number of distinct providers of that provider_type who billed that HCPCS code to Medicare FFS across 2021-2023. Range 5 to 118,245. The value 5 is a hard FLOOR, not a real minimum: the build applies HAVING COUNT(DISTINCT npi) >= 5, so any specialty/code pair billed by fewer than 5 providers is dropped entirely. This is the popularity measure rank is computed from. | | total_services | decimal(38,0) | SUM(Tot_Srvcs) — total number of services (line-item service counts, summing beneficiaries x times performed) for that specialty/code pair across all providers and years. decimal(38,0), range 57 to 102,684,527. A volume measure. It does NOT drive rank (rank is by provider_count, not total_services — they frequently disagree). | | rank | bigint | ROW_NUMBER() OVER (PARTITION BY provider_type ORDER BY provider_count DESC) — the popularity rank of this procedure WITHIN its provider_type, 1 = most providers bill it. Dense 1..N with NO duplicates within a type (ROW_NUMBER, ties broken arbitrarily/deterministically, not RANK/DENSE_RANK), and max(rank) per provider_type always equals that type's row count (verified 0 mismatches). Range 1..1538. It is a per-specialty ordinal, NOT a global rank and NOT meaningful across provider_types. | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_taxonomy_procedures WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_taxonomy_procedures")` first. # Policy document chunks (retrieval units with citations) `vlada_curated.fact_policy_doc_chunk` · Curated datasets · status live Chunked policy text for retrieval: doc_id, chunk_no, anchor, citation, text. The retrieval grain for document-grounded policy answers (every claim ties to a cited chunk). **Grain.** One row per (doc_id, chunk_no) — a citation-anchored text chunk. | column | type | meaning | |---|---|---| | doc_id | string | | | state | string | | | chunk_no | int | | | anchor | string | | | citation | string | | | source_url | string | | | vintage | string | | | text | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_policy_doc_chunk WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_policy_doc_chunk")` first. # Policy document corpus (state/federal regulation docs) `vlada_curated.fact_policy_document` · Curated datasets · status live The document-grounded policy corpus: per regulation document, title, citation, authority, format, size, status, and S3 raw/text pointers. The foundation that grounds state/federal effective-policy claims in cited docs. **Grain.** One row per policy document (doc_id) — title, citation, authority, S3 refs. | column | type | meaning | |---|---|---| | doc_id | string | | | state | string | | | title | string | | | citation | string | | | authority | string | | | source_url | string | | | format | string | | | sha256 | string | | | bytes | bigint | | | char_count | bigint | | | status | string | | | s3_raw | string | | | s3_text | string | | | vintage | string | | | fetched_at | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_policy_document WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_policy_document")` first. # Vlada ontology layer one (edge) `vlada_ontology.l1_edge` · Curated datasets · status live · 279,515 rows The Vlada ontology, layer one (who holds and who owns every Medicare, Medicaid and Marketplace instrument, over time), SIGNED by Ben on build v3o (2026-10-28; docs/architecture/ontology-v2/L1-SIGNOFF.md). Permanent IDs; a legal entity is not its brand nor the contract it holds; history is dated events with filings; every fact graded A/B/C with its evidence; two clocks. Built by tools/ontology2/build.py, served by tools/ontology2/serve.py (the view moves only to a signed build). Tools: resolve_entity, describe_entity; API: /v1/entities. **Grain.** One row per SERVED dated relationship: held_by, reported_parent, member_of_group, owned_by, controlled_by (basis, grade), brand_of, merged_into, part_of, continues_as; from_basis, observed and confirmed windows; candidate and refuted rows never appear. | column | type | meaning | |---|---|---| | rel | string | | | from_id | string | | | to_id | string | | | basis | string | | | valid_from | string | | | valid_to | string | | | grade | string | | | status | string | | | event_id | string | | | evidence_id | string | | | recorded_version | string | | | from_basis | string | | | observed_from | string | | | observed_to | string | | | confirmed_to | string | | | confirmed_by | string | | Tools that read it: describe_entity, resolve_entity Query it: `query_substrate` with `SELECT ... FROM vlada_ontology.l1_edge WHERE ... LIMIT 100`; read `describe_data_source("vlada_ontology.l1_edge")` first. # Vlada ontology layer one (entity) `vlada_ontology.l1_entity` · Curated datasets · status live · 153,681 rows The Vlada ontology, layer one (who holds and who owns every Medicare, Medicaid and Marketplace instrument, over time), SIGNED by Ben on build v3o (2026-10-28; docs/architecture/ontology-v2/L1-SIGNOFF.md). Permanent IDs; a legal entity is not its brand nor the contract it holds; history is dated events with filings; every fact graded A/B/C with its evidence; two clocks. Built by tools/ontology2/build.py, served by tools/ontology2/serve.py (the view moves only to a signed build). Tools: resolve_entity, describe_entity; API: /v1/entities. **Grain.** One row per entity (entity_id): legal entity, brand, NAIC group, instrument (contract, plan, Medicaid plan, HIOS issuer), place; status active, redirected (with redirect_to) or ended. | column | type | meaning | |---|---|---| | entity_id | string | | | kind | string | | | label | string | | | status | string | | | redirect_to | string | | | recorded_version | string | | Tools that read it: describe_entity, resolve_entity Query it: `query_substrate` with `SELECT ... FROM vlada_ontology.l1_entity WHERE ... LIMIT 100`; read `describe_data_source("vlada_ontology.l1_entity")` first. # Vlada ontology layer one (event) `vlada_ontology.l1_event` · Curated datasets · status live · 565 rows The Vlada ontology, layer one (who holds and who owns every Medicare, Medicaid and Marketplace instrument, over time), SIGNED by Ben on build v3o (2026-10-28; docs/architecture/ontology-v2/L1-SIGNOFF.md). Permanent IDs; a legal entity is not its brand nor the contract it holds; history is dated events with filings; every fact graded A/B/C with its evidence; two clocks. Built by tools/ontology2/build.py, served by tools/ontology2/serve.py (the view moves only to a signed build). Tools: resolve_entity, describe_entity; API: /v1/entities. **Grain.** One row per sourced corporate event: acquisition, merger, formation, transfer of business, divestiture, rename, with announced and closed dates, buyer and targets. | column | type | meaning | |---|---|---| | event_id | string | | | type | string | | | status | string | | | announced | string | | | closed | string | | | buyer | string | | | targets | string | | | label | string | | | evidence_id | string | | | recorded_version | string | | Tools that read it: describe_entity, resolve_entity Query it: `query_substrate` with `SELECT ... FROM vlada_ontology.l1_event WHERE ... LIMIT 100`; read `describe_data_source("vlada_ontology.l1_event")` first. # Vlada ontology layer one (evidence) `vlada_ontology.l1_evidence` · Curated datasets · status live · 14,210 rows The Vlada ontology, layer one (who holds and who owns every Medicare, Medicaid and Marketplace instrument, over time), SIGNED by Ben on build v3o (2026-10-28; docs/architecture/ontology-v2/L1-SIGNOFF.md). Permanent IDs; a legal entity is not its brand nor the contract it holds; history is dated events with filings; every fact graded A/B/C with its evidence; two clocks. Built by tools/ontology2/build.py, served by tools/ontology2/serve.py (the view moves only to a signed build). Tools: resolve_entity, describe_entity; API: /v1/entities. **Grain.** One row per evidence record (evidence_id): source_type, document reference, field. | column | type | meaning | |---|---|---| | evidence_id | string | | | source_type | string | | | doc_ref | string | | | field | string | | Tools that read it: describe_entity, resolve_entity Query it: `query_substrate` with `SELECT ... FROM vlada_ontology.l1_evidence WHERE ... LIMIT 100`; read `describe_data_source("vlada_ontology.l1_evidence")` first. # Vlada ontology layer one (identifier) `vlada_ontology.l1_identifier` · Curated datasets · status live · 4,716 rows The Vlada ontology, layer one (who holds and who owns every Medicare, Medicaid and Marketplace instrument, over time), SIGNED by Ben on build v3o (2026-10-28; docs/architecture/ontology-v2/L1-SIGNOFF.md). Permanent IDs; a legal entity is not its brand nor the contract it holds; history is dated events with filings; every fact graded A/B/C with its evidence; two clocks. Built by tools/ontology2/build.py, served by tools/ontology2/serve.py (the view moves only to a signed build). Tools: resolve_entity, describe_entity; API: /v1/entities. **Grain.** One row per identifier that names an entity: namespace (cms_org_name, ein, naic, cik, hios, ...), value, value_norm, validity window, evidence. | column | type | meaning | |---|---|---| | entity_id | string | | | namespace | string | | | value | string | | | value_norm | string | | | valid_from | string | | | valid_to | string | | | evidence_id | string | | Tools that read it: describe_entity, resolve_entity Query it: `query_substrate` with `SELECT ... FROM vlada_ontology.l1_identifier WHERE ... LIMIT 100`; read `describe_data_source("vlada_ontology.l1_identifier")` first. # FDA Drug Master Files (DMF) `drug_silver.dim_dmf` · Drugs and formularies · status live FDA Drug Master Files — confidential filings (type, status, holder, subject, submit date) referenced by drug applications. Supply-chain / API-source reference for a drug. **Grain.** One row per FDA DMF filing per ingest snapshot. The table holds 80,730 rows = exactly 2 full snapshots of the same FDA file. On the live slice (WHERE is_current = true) the minimal verified key is dmf_number alone: 40,365 rows = 40,365 distinct dmf_number. Across ALL rows the minimal key is (dmf_number, observed_period): 80,730 distinct = the full row count. Always filter is_current = true (or pick one observed_period) before treating dmf_number as a primary key. **How to use it.** Use it to identify the manufacturers and substances behind a drug's supply chain (active-ingredient/API makers, excipient and packaging suppliers) and join that context to the drug cost facts. Example: SELECT holder, COUNT(*) AS active_filings FROM drug_silver.dim_dmf WHERE is_current = true AND status = 'A' AND dmf_type = 'II' GROUP BY holder ORDER BY active_filings DESC — answers 'which companies hold the most active drug-substance (API) master files', a proxy for who supplies the most APIs. Always include WHERE is_current = true. **Traps.** - The raw table is DOUBLE-COUNTED: 80,730 rows = two identical snapshots of the same FDA file. ALWAYS filter WHERE is_current = true (or pick one observed_period) — otherwise every dmf_number appears twice and counts/joins double. On the live slice it is 40,365 rows. - is_current is the ONLY trustworthy current-version flag. effective_period_end is 2099-12-31 (open) for BOTH the live and the superseded snapshot, so the older version was never end-dated — do NOT use effective_period_end to pick the current row. - The 2026-05-16 → 2026-05-18 'update' carries NO data change: identical sha256_content_hash, 0 rows changed/added/removed. It is just a re-ingest/re-parse (parser_artifact_hash differs, s3_version_id newly populated). Don't read it as new FDA data; temporal range (2026-05-16→05-18) reflects ingest dates, not real-world change cadence. - This is a manufacturer/supply-chain DIMENSION, not a cost/price table — it has NO NDC, no drug product code, and no price. It does not directly key to the drug spine (dim_drug) or to the cost facts; holder/subject are free text. Joining it to cost data requires fuzzy substance/manufacturer matching, not a clean ID. - dmf_number = 0 is a legitimate filing (HEXCEL CHEMICAL PRODUCTS / 'CPC'), not a null/sentinel placeholder — keep it. status uses single letters A=Active, I=Inactive; dmf_type uses Roman numerals II/III/IV/V (Type I discontinued by FDA, absent here). | column | type | meaning | |---|---|---| | dmf_number | int | FDA-assigned Drug Master File number; the natural primary key on the is_current slice (40,365 distinct, range 0–44,003). NOT globally unique in the raw table because each filing appears once per snapshot. dmf_number = 0 is a REAL filing (HEXCEL CHEMICAL PRODUCTS / 'CPC'), not a sentinel — do not filter it out. | | status | string | DMF lifecycle status, single-letter code. Only two values observed: 'A' = Active (22,039 on is_current) and 'I' = Inactive/closed (18,326). No nulls. | | dmf_type | string | FDA DMF type (Roman numeral). Observed values: 'II' = drug substance / API / drug intermediate (28,872, the bulk), 'III' = packaging material (7,305), 'IV' = excipient, colorant, flavor or other additive (3,616), 'V' = FDA-accepted reference information (572). (Type I was discontinued by FDA and is absent.) No nulls. | | submit_date | date | Date the DMF was originally submitted to FDA. Real historical depth: ranges 1939-07-18 to 2026-03-31. Some early dates are Jan-1 placeholders (e.g. 1940-01-01, 1950-01-01) reflecting year-only original records. No nulls. | | holder | string | Name of the DMF holder — the manufacturer/company that owns the filing (e.g. EASTMAN CHEMICAL CO, MONSANTO CO). 8,722 distinct holders on the live slice. Free-text, not normalized to an entity ID. No nulls. | | subject | string | Free-text description of what the DMF covers — the substance, material, excipient, or (for Type V) the reference topic (e.g. 'PENICILLIN', 'HYDROXYPROPYL METHYLCELLULOSE'). 27,155 distinct values. Not a coded field and carries no NDC. No nulls. | | observed_period | date | The snapshot/as-of date the FDA list was observed (ingested). Two values: 2026-05-16 and 2026-05-18. This is the second half of the grain key across all rows; together with dmf_number it uniquely identifies every row (80,730). | | asserted_at | date | Bitemporal 'assertion' / knowledge date — when this snapshot's facts were asserted by the pipeline. Equals observed_period in all rows (2026-05-16 or 2026-05-18). | | effective_period_start | date | SCD-2 valid-from date for the row's version; equals observed_period (2026-05-16 or 2026-05-18). The temporal column the profiler keys on. | | effective_period_end | date | SCD-2 valid-to date. TRAP: it is 2099-12-31 (open/infinity) for BOTH snapshots, including the superseded 2026-05-16 one — the older version was never end-dated. So effective_period_end CANNOT be used to find the current record; use is_current instead. | | cms_vintage_sequence | int | Pipeline vintage sequence number for the source vintage. Constant value 1 in all observed rows. | | parse_revision | int | Parser revision counter for this row's extraction. Constant value 1 in all observed rows. | | parser_artifact_hash | string | SHA-256 of the parser artifact/build that produced the row. DIFFERS between the two snapshots (1f5e8223… for 2026-05-16 vs 8589ceaa… for 2026-05-18) even though the underlying FDA file content is identical — i.e. the 05-18 snapshot is a re-parse of the same file with a newer parser build. | | source_url | string | FDA download URL of the source file. Constant: https://www.fda.gov/media/192069/download?attachment (the public FDA DMF list). Confirms origin = FDA, single file. | | sha256_content_hash | string | SHA-256 of the raw source file content. IDENTICAL across both snapshots (efed3bd6…) — proving the 2026-05-16 and 2026-05-18 snapshots are byte-for-byte the same FDA file (0 rows changed, 0 added, 0 removed between them). | | source_id | string | Logical source identifier. Constant 'fda_dmf' for the whole table. | | is_current | boolean | Boolean SCD flag marking the live snapshot. Exactly half the rows (40,365) are true (the 2026-05-18 snapshot) and half false (2026-05-16). This is the ONLY reliable way to dedup to the current version (effective_period_end is unreliable). Filter is_current = true for the live dimension. | | bronze_object_key | string | S3 key of the bronze landing object for the snapshot (e.g. drug/bronze/fda_dmf/2026-05-18/…-fda_dmf_2026-05-18.xlsx). Provenance lineage; one key per snapshot. | | s3_version_id | string | S3 object version id of the bronze file. Populated for the current 2026-05-18 snapshot but NULL for the superseded 2026-05-16 snapshot — a null that signals the older/non-current vintage. | | vintage_tag | string | Human-readable vintage label, pattern fda_dmf_ (e.g. fda_dmf_2026-05-18). One per snapshot; encodes the same date as observed_period. | | drug_source_version_id | string | Intended cross-source drug lineage/version id, but 100% NULL in this table — unused placeholder. Do not rely on it for joins. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_dmf WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_dmf")` first. # FDA NDC Directory (drug product dimension) `drug_silver.dim_drug` · Drugs and formularies · status live The FDA National Drug Code Directory — the authoritative drug product dimension (NDC11, product code, package code, labeler, proprietary/ non-proprietary name, dosage form, route). The identity spine for every NDC that appears in NADAC, ASP, WAC, Part D pricing, and formulary tables. **Grain.** One row per drug package (NDC-11) per weekly FDA-NDC-Directory snapshot. Verified: ndc11 x observed_period = 642,379 distinct = 642,379 total rows. The table currently holds 3 full snapshots (2026-05-15, 2026-05-25, 2026-06-01); within any single snapshot ndc11 (equivalently package_ndc) is unique. ndc11 alone is NOT unique across the table (214,924 distinct ndc11 but 642,379 rows — ~3 snapshot copies each). **How to use it.** Resolve a drug's identity/attributes and join it to cost data. Example (current GLP-1 packages with their identity, ready to join to ASP/price facts): SELECT ndc11, proprietary_name, nonproprietary_name, labeler_name, dosage_form_name, route_name, marketing_category_name, package_description FROM drug_silver.dim_drug WHERE observed_period = (SELECT MAX(observed_period) FROM drug_silver.dim_drug) AND nonproprietary_name IN ('tirzepatide','semaglutide'). Answers 'what packages/NDCs exist for this drug, who makes them, and what is their FDA identity' — then join ndc11 to fact_drug_asp_quarterly / fact_drug_consumer_price / fact_part_d_plan_drug_pricing to attach prices. Always pin to one snapshot via observed_period (do NOT use is_current). **Traps.** - is_current is useless for dedup: ALL 642,379 rows have is_current=true (no false rows exist yet). To get a single current view you MUST filter on a snapshot date, e.g. WHERE observed_period = (SELECT MAX(observed_period) FROM dim_drug). Treating is_current=true as 'the latest' returns ~3x duplicate NDCs. - ndc11 is NOT unique table-wide — it repeats once per weekly snapshot (214,924 distinct ndc11 vs 642,379 rows). Any join on ndc11 alone fans out ~3x; always pair ndc11 with a snapshot filter (the true grain is ndc11 x observed_period). - Three columns are 100% NULL across every row and look like real fields but carry no data: active_numerator_strength, active_ingred_unit, and drug_source_version_id. Do not rely on them for strength/units — strength is only available inside the package_description free-text (and richer detail lives in dim_drug_label / dim_orange_book_product). - start_marketing_date and end_marketing_date are STRINGS in YYYYMMDD format, not DATE types — cast before comparing. start_marketing_date uses '19000101' as a sentinel for old/unknown dates. end_marketing_date is ~97.5% NULL, and NULL means 'still actively marketed' (not missing); is_active is always true so it cannot flag discontinued packages — use a non-null end_marketing_date or cross-snapshot disappearance instead. - This is the drug spine/master only (package identity + descriptors). It contains NO prices. Drug cost lives in sibling fact tables in drug_silver (fact_drug_asp_quarterly, fact_drug_acquisition_cost, fact_drug_consumer_price, fact_drug_va_fss_price, fact_drug_medicaid_rebate_product, fact_part_d_plan_drug_pricing, fact_drug_formulary, etc.), which you join back to this table on ndc11. Deeper FDA label/approval/patent attributes live in dim_drug_label, dim_drug_application, dim_orange_book_product, and dim_purple_book_product — not here. - Snapshots are point-in-time, not SCD2 ranges: effective_period_start == effective_period_end == observed_period == asserted_at for every row (single-day). Across the 3 snapshots ~1,145 NDCs were added between 2026-05-15 and 2026-06-01, so the NDC universe grows week to week — pick a snapshot deliberately when reproducing results. | column | type | meaning | |---|---|---| | ndc11 | string | Canonical 11-digit National Drug Code, zero-padded, no dashes (the package-level drug identifier). VERIFIED = labeler_code(5) + product_code(4) + package_code(2) concatenated (0 mismatches). This is the primary join key to every fact_drug_* cost table. 214,924 distinct values; ~3 copies (one per snapshot). | | labeler_code | string | First NDC segment (5 chars) = FDA-assigned manufacturer/labeler code. 5,354 distinct. Always 5 chars. | | product_code | string | Second NDC segment (4 chars) = the product (drug formulation) within a labeler. 9,573 distinct. | | package_code | string | Third NDC segment (2 chars) = the specific package size/configuration of the product. | | product_ndc | string | Product-level NDC in dashed format, e.g. '0002-0152' (labeler-product, no package segment). 112,469 distinct products in latest snapshot vs 214,474 packages. One ndc11 maps to exactly one product_ndc. Use this to roll packages up to the product. | | package_ndc | string | Full package-level NDC in FDA dashed format, e.g. '0002-0152-01'. 1:1 with ndc11 (same identity, dashed presentation). 214,924 distinct. | | is_active | boolean | Boolean. TRAP: it is TRUE for 100% of rows in every snapshot — the FDA NDC Directory file lists currently-marketed finished products, so this is effectively a constant, not a useful filter. To find discontinued packages use end_marketing_date instead, or compare across snapshots. | | proprietary_name | string | Brand / trade name, e.g. 'Zepbound', 'Humulin'. Always populated (0 null). | | nonproprietary_name | string | Generic / nonproprietary name, e.g. 'tirzepatide', 'Insulin human'. Always populated (0 null). | | dosage_form_name | string | FDA dosage form, e.g. 'INJECTION, SOLUTION', 'TABLET'. 137 distinct forms. Always populated. | | route_name | string | Route of administration, e.g. 'SUBCUTANEOUS', 'ORAL' (top route, ~140K), 'TOPICAL', 'INTRAVENOUS'. 192 distinct; multi-route combos use '; ' delimiter (e.g. 'INTRADERMAL; PERCUTANEOUS; SUBCUTANEOUS'). ~1% null. | | marketing_category_name | string | FDA marketing/approval pathway: ANDA (generic, ~107K, the plurality), OTC MONOGRAPH DRUG, UNAPPROVED HOMEOPATHIC, NDA (brand new drug), BLA (biologic), NDA AUTHORIZED GENERIC, EMERGENCY USE AUTHORIZATION, etc. | | application_number | string | FDA submission identifier with a pathway prefix that mirrors marketing_category_name: ANDA##### (generic), NDA##### (new drug), BLA##### (biologic), M###/part### (OTC monograph citations). ~15% null in latest snapshot — OTC-monograph and homeopathic products often have none. | | labeler_name | string | Manufacturer / labeler name, e.g. 'Eli Lilly and Company'. 7,726 distinct in latest snapshot. Always populated. | | substance_name | string | Active ingredient(s), UPPERCASE; combination drugs delimit multiple actives with '; ' (e.g. 'TROSPIUM CHLORIDE; XANOMELINE' for Cobenfy). ~1.3% null. | | active_numerator_strength | string | DEAD COLUMN — 100% NULL across all 642,379 rows. Exists in schema but never populated; the silver build does not split strength out. Get strength from package_description text or downstream tables. | | active_ingred_unit | string | DEAD COLUMN — 100% NULL across all 642,379 rows. Companion to active_numerator_strength, also never populated. | | pharm_classes | string | FDA Established Pharmacologic Class string(s), comma-separated with bracketed type tags: [EPC] established class, [MoA] mechanism of action, [CS] chemical structure, [PE] physiologic effect. ~34% null (homeopathic/OTC monograph products often lack a class). | | dea_schedule | string | DEA controlled-substance schedule: NULL = non-controlled (~95% of rows / 202,889), else CII / CIII / CIV / CV. NULL is meaningful (= not a controlled substance), not missing data. | | product_type_name | string | FDA product type: HUMAN PRESCRIPTION DRUG (~118K), HUMAN OTC DRUG (~91K), NON-STANDARDIZED ALLERGENIC, PLASMA DERIVATIVE, STANDARDIZED ALLERGENIC, VACCINE, CELLULAR THERAPY. | | package_description | string | Free-text human-readable package contents incl. quantities and unit sizes, e.g. '1 VIAL, SINGLE-DOSE in 1 CARTON (0002-0152-01) / .5 mL in 1 VIAL, SINGLE-DOSE'. This is where pack size / unit strength effectively lives (since the strength columns are null). | | start_marketing_date | string | Date the package began marketing. STRING in YYYYMMDD format (length always 8), NOT a date type. Range 19000101 (sentinel/placeholder for very old/unknown) to 20260529. Parse/cast before date math. | | end_marketing_date | string | Date marketing ends/ended, STRING YYYYMMDD. ~97.5% NULL — NULL is meaningful: package is still actively marketed with no scheduled end. A non-null value (e.g. '20261215') indicates a planned/known discontinuation. | | observed_period | date | Snapshot date = the day this FDA NDC Directory file was ingested. One of 3 values (2026-05-15, 2026-05-25, 2026-06-01). Part of the grain key. Equal to asserted_at, effective_period_start, and effective_period_end for the same row. | | asserted_at | date | When this snapshot's facts were asserted; identical to observed_period (1:1 with the snapshot). Redundant with observed_period. | | effective_period_start | date | Start of the row's validity window; equals the snapshot date and equals effective_period_end (single-day, point-in-time snapshot — this is NOT a true SCD2 range). Profiler's chosen time column; interchangeable with observed_period as the snapshot key. | | effective_period_end | date | End of validity window; equals effective_period_start for every row (no open-ended or multi-day ranges). Confirms snapshot, not range, semantics. | | cms_vintage_sequence | int | Vintage sequence integer; constant value 1 for all rows (not a useful discriminator here). | | parse_revision | int | Parser revision number; constant 1 for all rows. | | parser_artifact_hash | string | SHA-256 of the parser artifact used to build the snapshot. 3 distinct values (one per snapshot). Provenance/lineage. | | source_url | string | Origin URL of the raw file; single constant value 'https://www.accessdata.fda.gov/cder/ndctext.zip' (FDA NDC Directory zip). | | sha256_content_hash | string | SHA-256 of the raw source file content; 3 distinct values, 1:1 with the snapshot (changes week to week as FDA updates the file). Provenance/dedup key. | | source_id | string | Logical source identifier; single constant 'fda_ndc_directory'. Confirms the whole table is sourced solely from the FDA NDC Directory. | | is_current | boolean | Boolean is-current flag. MAJOR TRAP: TRUE for 100% of rows (all 3 snapshots), so it does NOT isolate the latest snapshot. Do not filter on is_current to dedup — use MAX(observed_period) or the specific snapshot date instead. | | bronze_object_key | string | S3 key of the bronze raw object backing the snapshot, e.g. 'drug/bronze/fda_ndc_directory/2026-06-01/0776ac0c...-ndctext.zip'. 3 distinct, 1:1 with snapshot; the date is embedded in the path. | | s3_version_id | string | S3 object version id of the bronze file; 3 distinct (one per snapshot). Lineage. | | vintage_tag | string | Vintage label; constant literal 'none' for all rows (unused). | | drug_source_version_id | string | DEAD COLUMN — 100% NULL across all 642,379 rows. Intended cross-source version linkage but never populated. | Tools that read it: ira_mfp_exposure, recall_spend_window Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_drug WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_drug")` first. # FDA Drug Applications (NDA/ANDA/BLA dimension) `drug_silver.dim_drug_application` · Drugs and formularies · status live FDA drug applications — application type (NDA/ANDA/BLA), sponsor, product and submission counts, earliest/latest submission dates + status. The application-level spine linking Orange Book, labels, and approvals. **Grain.** One row per FDA application_number per weekly snapshot. On the current slice (is_current=true) it is exactly one row per application_number: 29,101 rows = 29,101 distinct application_numbers (verified equal). The full table holds 119,326 rows = five weekly snapshots stacked, so the table-wide unique key is (application_number, vintage_tag); (application_number, vintage_tag) distinct count = 119,326 = total rows. **How to use it.** SELECT application_type, COUNT(*) AS apps, SUM(products_count) AS products FROM drug_silver.dim_drug_application WHERE is_current = true GROUP BY application_type — returns the current count of FDA applications and total drug products by pathway (ANDA generic / NDA brand / BLA biologic). To resolve a specific drug's approval and sponsor, filter WHERE is_current = true AND application_number = 'NDA050565'. Always include WHERE is_current = true; join out to NDC/product tables for cost (ASP/NADAC) rather than expecting prices here (this table has none). **Traps.** - is_current is mandatory for the live view. The table stacks 5 weekly snapshots (119,326 rows); application_number is only unique WITHIN a snapshot. Querying without WHERE is_current = true returns ~4x duplicated applications. Only the 2026-05-28 vintage is current (29,101 rows). - effective_period_end is a trap: it is ALWAYS 2099-12-31, even for superseded/historical rows. SCD-2 supersession is driven ONLY by the is_current flag, never by closing effective_period_end. Do not filter on effective_period_end to find the live record. - drug_source_version_id is 100% NULL for every row despite its key-like name and presence in the profiler's candidate-key list. It is unpopulated; never join or filter on it. - NULL latest_submission_status carries meaning: it (plus NULL dates and submissions_count=0) marks 2,706 current applications that exist in Drugs@FDA but have no submission history in the feed. Treat NULL status as 'no submissions', not 'unknown approval'. Status vocabulary is only AP/TA/NULL — not a complete FDA status set. - application_type is redundant with the application_number prefix (verified perfect match), and sponsor_name is raw un-normalized FDA text (e.g. MERCK vs MERCK SHARP DOHME), so do not treat sponsor_name as a clean manufacturer key. This is an application-level roll-up: products_count/submissions_count are aggregates, so the table is one-row-per-application, not one-row-per-product or per-submission. - latest_submission_date can be future-dated relative to the snapshot (max 2026-08-19 vs snapshot 2026-05-28) because FDA records scheduled action dates; do not assume submission dates are <= the observed_period. - observed_period, asserted_at, effective_period_start, and vintage_tag are four redundant stamps of the same snapshot date (all equal per vintage). The 2026-05-16 snapshot is a partial load (only 3,000 rows vs ~29,071 for full snapshots) — exclude it from historical comparisons. | column | type | meaning | |---|---|---| | application_number | string | FDA application identifier and the primary business key, e.g. NDA000734, ANDA060362, BLA125514. The leading letters encode the application type and ALWAYS equal application_type (verified: ANDA->ANDA, NDA->NDA, BLA->BLA, no mismatches). Unique per snapshot. | | application_type | string | FDA application pathway, exactly 3 values: ANDA (abbreviated/generic, 22,778 current rows), NDA (new drug/brand, 5,850), BLA (biologics license, 473). Fully derivable from the application_number prefix; redundant. | | sponsor_name | string | The company that holds/submitted the application (manufacturer or marketer), e.g. LILLY, MERCK SHARP DOHME, ASPEN GLOBAL INC. Free-text FDA label name, NOT normalized (e.g. MERCK vs MERCK SHARP DOHME both appear). Never null on the current slice. | | products_count | int | Count of distinct drug products (strength/form SKUs) under this application. Range 0-53 on current slice; 359 current rows have 0 products. A roll-up, so this table is one-per-application, NOT one-per-product. | | submissions_count | int | Count of FDA regulatory submissions (original + supplements) recorded for the application. Range 0-229; 2,706 current rows have 0 submissions (no submission history in the feed). | | earliest_submission_date | date | Date of the first submission for the application. Min observed 1939-02-09 (the Drugs@FDA dataset epoch). NULL when the application has no submission records (~2,708 current rows). | | latest_submission_date | date | Date of the most recent submission. Can be slightly future-dated relative to the snapshot (max 2026-08-19 vs snapshot 2026-05-28) because FDA records scheduled/post-dated action dates. NULL when no submissions (~2,708 current rows). | | latest_submission_status | string | Status code of the latest submission. Vocabulary is only 3 values: AP = Approved (dominant, 25,291 current rows), TA = Tentative Approval (1,101), and NULL = application has no submissions (2,709). Not a full FDA status list — only AP/TA/NULL appear. | | observed_period | date | Snapshot date the data was observed/extracted. Identical to asserted_at and effective_period_start within each snapshot (one distinct value per vintage). 5 values: 2026-05-16, 05-17, 05-18, 05-21, 05-28. | | asserted_at | date | Date the snapshot was asserted into silver. Redundant with observed_period and effective_period_start (all three equal per snapshot). | | effective_period_start | date | SCD-2 effective-from date; the profiler's chosen time column. Equals observed_period/asserted_at. Earliest 2026-05-16, latest 2026-05-28, ~3-day cadence (weekly business cadence with mid-week loads). | | effective_period_end | date | SCD-2 effective-to date, but ALWAYS the open-ended sentinel 2099-12-31 for every row including superseded ones. The period is NEVER closed on supersession, so do not use this to find the live row — use is_current. | | cms_vintage_sequence | int | Vintage sequence integer; constant value 1 across all current rows. Provenance scaffolding, not yet used to differentiate vintages here. | | parse_revision | int | Parser revision number; constant 1. Bumps if the parse logic is re-run with new code. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row (provenance for which code version parsed it). | | source_url | string | Origin URL; always https://api.fda.gov/drug/drugsfda.json (the openFDA Drugs@FDA API). Confirms a single upstream source. | | sha256_content_hash | string | Content hash of the source extract. Single distinct value per current vintage (one logical extract per snapshot). | | source_id | string | Source system id; always 'drugsfda'. Single source. | | is_current | boolean | Boolean SCD-2 flag marking the live snapshot. TRUE only for the latest vintage (drugsfda_2026-05-28 = 29,101 rows); FALSE for all 90,225 rows of the 4 prior snapshots. This is the ONLY reliable way to select the current view. | | bronze_object_key | string | S3 key of the bronze JSON batch the row came from. 15 distinct keys on the current slice (the openFDA JSON was sharded into ~15 bronze batch files). | | s3_version_id | string | S3 object version id of the bronze file, for exact-byte provenance. | | vintage_tag | string | Human-readable snapshot label, drugsfda_, e.g. drugsfda_2026-05-28. 1:1 with observed_period and the snapshot; the partitioning dimension that makes (application_number, vintage_tag) table-wide unique. | | drug_source_version_id | string | Intended source-version linkage, but 100% NULL across all 119,326 rows. Dead/unpopulated column — do not join on it. | Tools that read it: ira_drug_label_risk_screen Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_drug_application WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_drug_application")` first. # FDA Structured Product Labels (SPL) — drug label dimension `drug_silver.dim_drug_label` · Drugs and formularies · status live FDA Structured Product Labels — brand/generic, product NDC, product type, substance, manufacturer, and safety flags (boxed warning, pregnancy, pediatric/geriatric use, REMS). The label-level safety reference per drug. **Grain.** One row per FDA drug-label DOCUMENT VERSION (one SPL document, keyed by spl_id) within the current snapshot. Verified: on is_current=true, spl_id is unique with 229,807 distinct = 229,807 rows. The full table holds 1,071,488 rows because every prior daily/weekly snapshot vintage is retained (is_current=false), where the same spl_id recurs. **How to use it.** Use it to resolve a drug's identity/warnings for cost context. Example: SELECT brand_name, generic_name, substance_name, product_ndc, has_boxed_warning FROM drug_silver.dim_drug_label WHERE is_current = true AND generic_name LIKE '%TENOFOVIR%' — returns the current FDA label record(s) for tenofovir products (brand, active substance, product NDC, whether it carries a boxed warning). Always include WHERE is_current = true, and expect the openfda-derived identity columns to be NULL for ~71% of rows. **Traps.** - spl_id is the key ONLY on is_current=true (229,807 unique). Over the full 1,071,488-row table the same spl_id repeats across 5 snapshot vintages — spl_id is NOT unique there. ALWAYS filter is_current=true (or one vintage_tag) before treating spl_id as a key. - is_current is SCD 'last-seen-wins', NOT max(observed_period). The current set is 228,887 rows from the 2026-05-28 snapshot PLUS 920 rows from 05-18/05-21 that dropped out of the latest pull. Filtering by observed_period='2026-05-28' or vintage_tag='drug_label_2026-05-28' silently MISSES ~920 current labels — use is_current=true. - The identity columns (brand_name, generic_name, product_ndc, product_type, substance_name, manufacturer_name) come from the openFDA 'openfda' enrichment block, which is ABSENT for ~71% of SPL documents — so all six are NULL together for ~163,771 of 229,807 current rows. NULL = no-openfda-metadata, not 'no brand/no NDC'. The has_* flags and effective_time/spl_id are populated regardless and are the reliable columns when openfda is missing. - No price/cost field exists here — this is a regulatory LABEL DIMENSION (FDA SPL metadata: brand/generic/substance/NDC/warnings), used to ENRICH or join drug-cost facts (ASP/NADAC/MRF), not a cost source itself. And product_ndc is the 9-digit PRODUCT NDC (not 11-digit package NDC) and is non-unique (multiple SPL docs per NDC), so it is unreliable as a join KEY to package-level pricing. - has_rems is FALSE for 100% of current rows (0 true) — a known gap; do not use it to identify REMS drugs. manufacturer_name is the SPL labeler and is dominated by REPACKAGERS (Bryant Ranch Prepack, A-S Medication Solutions, REMEDYREPACK...), not originator brand owners — which is also why one drug/NDC yields multiple co-current spl_id rows. - The bitemporal date columns (asserted_at, observed_period, effective_period_start) are all IDENTICAL per row (= the ingest snapshot date), effective_period_end is a constant '2099-12-31' sentinel, and cms_vintage_sequence/parse_revision are constant 1. drug_source_version_id is 100% NULL. The profiler's 'weekly' temporal span (2026-05-16..28) reflects the INGEST cadence (effective_period_start), NOT drug-label history; the real label-revision timeline is in effective_time (1987→2027). | column | type | meaning | |---|---|---| | spl_id | string | PRIMARY KEY (on is_current). UUID of one specific SPL (Structured Product Labeling) label DOCUMENT VERSION from the FDA. e.g. 'a9a21507-d564-4f36-8745-63e77f473978'. Unique only within is_current=true (229,807 distinct); the SAME spl_id repeats across snapshot vintages in the full 1.07M-row table, so it is NOT a key over the whole table. | | spl_set_id | string | UUID identifying the LABEL FAMILY / drug-product across all its revisions (the stable 'set' that successive spl_id versions belong to). NOT unique even on is_current: 906 sets carry 2-3 distinct spl_id simultaneously (multiple co-current label versions of the same product). 228,894 distinct on is_current. Often equals spl_id for single-version products. | | effective_time | date | The label's own author-stated effective/revision DATE as printed in the SPL document (date). Fully populated. Ranges 1987-04-03 to 2027-01-27 on is_current — INCLUDES FUTURE-DATED labels. This is the ONLY column carrying the drug's real label-revision timeline (all other date columns collapse to the ingest snapshot date). | | application_number | string | FDA marketing-application ID, prefixed by type: ANDA (generic, ~26,759), NDA0/NDA2 (brand new-drug), BLA0/1/2/7 (biologic). NULL for ~86.5% of is_current rows (31,031 populated of 229,807) — OTC-monograph and homeopathic products legitimately have no application number. 10,483 distinct. | | brand_name | string | Proprietary/brand name from the openFDA enrichment block (e.g. 'CIMDUO', 'ACYCLOVIR'). NULL for ~71% of is_current rows (only 66,036 populated) because most SPL documents lack the openfda block. NULL = missing-metadata, not 'no brand'. | | generic_name | string | Non-proprietary/generic name from the openFDA block (e.g. 'LAMIVUDINE AND TENOFOVIR DISOPROXIL FUMARATE'). For combo/homeopathic products this can be a long comma-joined active-ingredient list. NULL whenever the openfda block is absent (same ~66,036 populated as brand_name). | | product_ndc | string | 9-digit FDA PRODUCT NDC (labeler-product, e.g. '0338-0190'), NOT the 11-digit PACKAGE NDC. From openFDA block. NULL ~71% (66,036 populated, 64,838 distinct). NOT unique even on is_current — one NDC maps to multiple SPL docs (1,014 NDCs have 2 labels, one has 10), so it cannot be used as a join KEY to package-level pricing. | | product_type | string | FDA product category from openFDA block. Values on is_current: NULL (163,771, no openfda block), 'HUMAN OTC DRUG' (37,743), 'HUMAN PRESCRIPTION DRUG' (28,276), 'CELLULAR THERAPY' (17). Only 4 distinct values. | | substance_name | string | Active substance / ingredient name from the openFDA block (e.g. 'EPINEPHRINE' even when brand is 'Adrenalinum'). Slightly less null than brand (64,892 populated on is_current). Represents the active moiety, may differ from generic_name's labeled name. | | manufacturer_name | string | Labeler/manufacturer name from the openFDA block. GOTCHA: top values are REPACKAGERS not originators (Bryant Ranch Prepack, A-S Medication Solutions, Proficient Rx, REMEDYREPACK, NuCare) — this is the SPL labeler, which explains multiple SPL docs per NDC. NULL ~71% (66,036 populated). | | has_boxed_warning | boolean | Boolean derived from presence of the boxed-warning SECTION in the label text. TRUE for 28,644 of 229,807 is_current rows. Populated INDEPENDENT of the openfda block (so it is reliable even when brand/NDC are NULL). False = section absent. | | has_pregnancy_warning | boolean | Boolean: pregnancy-related section present in label text. TRUE for 94,103 is_current rows. Independent of openfda block. | | has_pediatric_use | boolean | Boolean: pediatric-use section present. TRUE for 59,797 is_current rows. Independent of openfda block. | | has_geriatric_use | boolean | Boolean: geriatric-use section present. TRUE for 50,599 is_current rows. Independent of openfda block. | | has_rems | boolean | Boolean: REMS (Risk Evaluation and Mitigation Strategy) section present. GOTCHA: currently FALSE for 100% of is_current rows (0 true) — either a parser gap or REMS text is not captured. Do NOT trust this flag to find REMS drugs. | | observed_period | date | The DATED SNAPSHOT when the openFDA pull was ingested (date). Drives the snapshot cadence: 2026-05-16, -17, -18, -21, -28 (every few days). On is_current, identical to asserted_at and effective_period_start per row. GOTCHA: is_current is NOT max(observed_period) — 920 current rows come from 05-18/05-21 (last-seen before they dropped out of the 05-28 pull). | | asserted_at | date | Bitemporal 'as-asserted' date for this row's facts (date). On the current snapshot it always equals observed_period (= snapshot date). Provenance scaffolding; carries no independent meaning here. | | effective_period_start | date | Bitemporal validity-start date for this row version (date). On is_current always equals the snapshot date (asserted_at/observed_period). The profiler's reported 'temporal' span (2026-05-16..28, weekly) is THIS column = ingest cadence, NOT drug-label history (that's effective_time). | | effective_period_end | date | Bitemporal validity-end date. ALWAYS '2099-12-31' (open-ended sentinel) on is_current — i.e. the current version has no expiry. Constant column on the current snapshot. | | cms_vintage_sequence | int | Integer vintage-sequence counter. Constant = 1 on all is_current rows. Provenance/versioning scaffold; not analytically useful here. | | parse_revision | int | Integer parser-revision number. Constant = 1 on all is_current rows. Bumped if the silver parser logic is re-run with new code; constant currently. | | parser_artifact_hash | string | SHA-256 of the parser code/artifact that produced the row (e.g. 'fe9e1e25...'). Lineage/reproducibility column; same hash across a build. | | source_url | string | Origin URL of the raw data. Constant 'https://api.fda.gov/drug/label.json' — confirms the source is the openFDA Drug Label API. | | sha256_content_hash | string | SHA-256 of the source content batch (raw bronze object). Change-detection / dedup lineage; shared by rows from the same bronze file. | | source_id | string | Logical source identifier. Constant 'drugsfda_label' — the openFDA drug-label feed registered in the source catalog. | | is_current | boolean | THE snapshot/dedup flag. TRUE = the latest-known version of that spl_id (SCD 'current' semantics, last-seen-wins per spl_id), 229,807 rows. FALSE = superseded historical snapshot rows, 841,681 rows. ALWAYS filter is_current=true for the live label set; spl_id is unique ONLY under this filter. | | bronze_object_key | string | S3 key of the raw bronze JSON batch this row was parsed from (e.g. 'drug/bronze/drugsfda_label/2026-05-18/...batch_00006.json'). Per-batch lineage; embeds the ingest date. | | s3_version_id | string | S3 object version-id of the bronze file (versioned bucket). Pins the exact immutable source object for reproducibility. | | vintage_tag | string | Human-readable snapshot label, 'drug_label_' (e.g. 'drug_label_2026-05-28'). is_current=true is dominated by drug_label_2026-05-28 (228,887) plus small residual 05-18/05-21 vintages. Useful for picking a specific snapshot. | | drug_source_version_id | string | Source-version FK into the drug source-version registry. 100% NULL in this table (not yet wired); carries no information currently. | Tools that read it: ira_drug_label_risk_screen Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_drug_label WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_drug_label")` first. # FDA Orange Book (patents + exclusivity) `drug_silver.dim_orange_book_product` · Drugs and formularies · status partial FDA approved-drug products with therapeutic-equivalence, patent, and exclusivity metadata. Drives generic-launch timing queries. **Grain.** One row per (application_number, product_id, observed_month). | column | type | meaning | |---|---|---| | appl_type | string | | | appl_no | string | | | product_no | string | | | ingredient | string | | | dosage_form | string | | | route | string | | | trade_name | string | | | applicant_short | string | | | applicant_full_name | string | | | strength | string | | | te_code | string | | | approval_date_text | string | | | rld | boolean | | | rs | boolean | | | product_type | 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.dim_orange_book_product WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_orange_book_product")` first. # Part D plan dimension (CMS SPUF) `drug_silver.dim_part_d_plan` · Drugs and formularies · status live · 160,922 rows The Part D plan-identity dim from CMS SPUF: the plan -> formulary bridge and carrier/plan attribution for the whole SPUF family. Columns (from DIM_PART_D_PLAN_SCHEMA in pipelines/drug/silver/spuf_writers.py): contract_name, plan_name, formulary_id, premium, deductible, ma_region_code, pdp_region_code, snp, plan_suppressed_yn, plan_type, plus the is_current vintage flag. Resolve contract_id/plan_id -> formulary_id here before joining fact_drug_formulary. Geography (state, county_code) is NOT here — it moved to fact_part_d_plan_service_area on 2026-05-17 after Gate A.5 caught 4,587 PK collisions (one dim row was being written once per served county). **Grain.** One row per (contract_id, plan_id, segment_id, report_quarter). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_quarter | string | | | contract_name | string | | | plan_name | string | | | formulary_id | string | | | premium | double | | | deductible | double | | | ma_region_code | string | | | pdp_region_code | string | | | snp | string | | | plan_suppressed_yn | boolean | | | plan_type | 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 | | Tools that read it: formulary_churn Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_part_d_plan WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_part_d_plan")` first. # FDA Purple Book — licensed biologics + biosimilars (silver) `drug_silver.dim_purple_book_product` · Drugs and formularies · status partial The promoted silver Purple Book: FDA licensed biological products with license_type (351(a) reference biologic vs 351(k) biosimilar / interchangeable), reference-product linkage, and exclusivity dates. The biosimilar-substitution lens behind the biosimilar_window MCP tool. **Grain.** One row per (bla_number, product_number) per snapshot. | column | type | meaning | |---|---|---| | bla_number | string | | | product_number | string | | | applicant | string | | | proprietary_name | string | | | proper_name | string | | | license_type | string | 351(a) original biologic, 351(k) Biosimilar / 351(k) Interchangeable | | strength | string | | | dosage_form | string | | | route_of_administration | string | | | product_presentation | string | | | marketing_status | string | | | licensure_status | string | | | approval_date | date | | | ref_product_proper_name | string | | | ref_product_proprietary_name | string | | | submission_type | string | | | license_number | string | | | center | string | | | date_of_first_licensure | date | | | exclusivity_expiration_date | date | | | ref_product_exclusivity_exp_date | date | | | orphan_exclusivity_exp_date | date | | | patent_list_provided | 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.dim_purple_book_product WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_purple_book_product")` first. # NLM RxClass — drug class dimension `drug_silver.dim_rxclass_class` · Drugs and formularies · status live The NLM RxClass class dimension — drug classes across class systems (ATC, Established Pharmacologic Class, Mechanism of Action, therapeutic, etc.). The vocabulary for rolling drugs up to a clinical/therapeutic class. **Grain.** One row per class node, uniquely identified by class_id. Verified: 2,847 rows, 2,847 distinct class_id, 0 nulls, and no class_id collides across class_types — so class_id alone is the minimal key (you do NOT need class_type with it). The 2,847 nodes split across 3 classification systems: ATC1-4 = 1,319, MOA = 778, EPC = 750. All 2,847 rows are the single current snapshot (is_current=true for every row). **How to use it.** Use it to label and group drug classes. Example: SELECT class_id, class_name FROM drug_silver.dim_rxclass_class WHERE is_current = true AND class_type = 'EPC' ORDER BY class_name — returns the 750 Established Pharmacologic Class names with their NUI codes, which you then join (via a separate RxClass membership table on class_id) to drug-level cost facts to report, say, average ASP by pharmacologic class. For ATC therapeutic-area rollups, filter class_type='ATC1-4' and pick the desired depth via length(class_id) (3 = therapeutic subgroup, 5 = chemical subgroup)." **Traps.** - class_id is the ONLY key and it is globally unique across all 3 class systems — do NOT assume you must pair it with class_type to dedup. Verified zero class_id collisions across ATC1-4/MOA/EPC. - class_name is NOT unique and is not a key: e.g. 'Antibiotics' maps to 8 different ATC class_ids and 'Corticosteroids' to 4 (the same label recurs at different points in the ATC tree). Always join/lookup on class_id, never on the name. - Two different code systems live in one column: ATC1-4 rows use ATC alpha-numeric codes where string LENGTH = hierarchy depth (1/3/4/5 → main/therapeutic/pharmacological/chemical subgroup), while MOA and EPC rows use NUI codes shaped 'N0000NNNNNN'. Parse class_id format by class_type; there is also a synthetic ATC root node class_id='0'. - This is a single static snapshot: every row is is_current=true, one sha256_content_hash, one vintage_tag ('rxclass_2026-06-03'), effective_period_start=2026-06-03, effective_period_end=2099-12-31 (open-ended sentinel, NOT a real expiry). No history exists yet, so the SCD2/is_current machinery is currently a no-op — but write WHERE is_current = true anyway so queries stay correct once re-pulls add superseded rows. - drug_source_version_id is 100% NULL here — never join or filter on it. Also note cms_vintage_sequence is a generic template column: despite the 'cms' name the source is NIH RxClass (rxnav.nlm.nih.gov), not CMS. - This table holds class DEFINITIONS only — it does not contain drug-to-class membership (which RxCUIs/NDCs belong to each class) and contains no cost/price measures. To attach cost data you must join class_id to a separate RxClass membership/mapping table, then to the drug pricing facts (ASP/NADAC/etc.). | column | type | meaning | |---|---|---| | class_id | string | PRIMARY KEY — the class node's code, globally unique across all class systems (2,847 distinct = row count, 0 nulls). Format depends on class_type: ATC1-4 uses hierarchical ATC alphanumeric codes whose LENGTH encodes depth (len 1 = anatomical main group e.g. 'A'; len 3 = therapeutic subgroup e.g. 'A01'; len 4 = pharmacological subgroup e.g. 'A01A'; len 5 = chemical subgroup e.g. 'A01AA'), plus one synthetic root '0'. MOA and EPC use NUI codes of the form 'N0000NNNNNN' (e.g. 'N0000000069', 'N0000175413'). | | class_type | string | Which RxClass classification system the node belongs to. Exactly 3 values observed: 'ATC1-4' (1,319 rows — WHO Anatomical Therapeutic Chemical hierarchy levels 1-4), 'MOA' (778 rows — Mechanism of Action), 'EPC' (750 rows — Established Pharmacologic Class). 0 nulls. Use this to filter to one taxonomy before traversing/joining. | | class_name | string | Human-readable label for the class (0 nulls, 0 empty). NOT unique — many class_ids share a name (e.g. 'Antibiotics' = 8 distinct ATC nodes, 'Corticosteroids' = 4). For ATC, casing is a soft hierarchy signal (upper-case names like 'ALIMENTARY TRACT AND METABOLISM' tend to be higher anatomical/therapeutic levels; mixed-case like 'Caries prophylactic agents' tend to be lower chemical levels). Always join on class_id, never class_name. | | observed_period | date | Date the source content was observed/ingested. Single value: 2026-06-03 for all rows (one snapshot). | | asserted_at | date | Date this fact was asserted into the silver table. Single value: 2026-06-03. Part of the bitemporal scaffolding (asserted vs effective). | | effective_period_start | date | Start of the validity window for this row's class definition. Single value: 2026-06-03 (the table's only temporal column with content). Designed for SCD2 versioning across future pulls. | | effective_period_end | date | End of the validity window. Single value: 2099-12-31 — the open-ended/sentinel 'still active' marker. Every current row carries this; a future re-pull that changes a class would close the old row to the change date. Treat 2099-12-31 as 'currently in effect', not a real expiry. | | cms_vintage_sequence | int | Monotonic vintage/version counter for the source pull. All rows = 1 (first and only vintage so far). Would increment on each new RxClass ingestion; useful later to order snapshots. Name says 'cms' but the source here is NIH RxClass, not CMS — it is a generic vintage sequence reused from the drug-silver template. | | parse_revision | int | Revision number of the parser run that produced these rows. All rows = 1. Bumps if the same source is re-parsed with updated logic. | | parser_artifact_hash | string | SHA-256 of the parser artifact (code/config) that generated the rows — provenance of HOW the data was parsed. Single value across all rows ('26d57599...'). Lets you tie output to an exact parser version. | | source_url | string | Origin endpoint. Single value: 'https://rxnav.nlm.nih.gov/REST/rxclass' (the NLM RxNav RxClass REST API). | | sha256_content_hash | string | SHA-256 of the raw downloaded source CONTENT — provenance of WHAT was ingested. Single value ('e898a741...'), confirming all 2,847 rows came from one identical source document. | | source_id | string | Logical source identifier. Single value: 'nih_rxclass'. The stable handle for this dataset across the drug-silver layer. | | is_current | boolean | SCD2 current-version flag. TRUE for all 2,847 rows (0 nulls, 0 false) because there is only one snapshot. The intended dedup/filter for serving: always add WHERE is_current = true so that when historical (superseded) rows arrive later, you read only the live definition per class_id. | | bronze_object_key | string | S3 key of the bronze (raw landed) object this silver row derives from. Single value: 'drug/bronze/nih_rxclass/2026-06-03/e898a741...-nih_rxclass_2026-06-03.json'. Lineage pointer back to the raw JSON. | | s3_version_id | string | S3 object-version id of that bronze object (bucket versioning). Single value. Pins the exact immutable byte-version of the raw file. | | vintage_tag | string | Human-readable vintage label. Single value: 'rxclass_2026-06-03'. Convenient snapshot name; will differ per future pull. | | drug_source_version_id | string | Foreign-key slot to a drug-source-version registry. 100% NULL (2,847/2,847) for this table — present in the shared schema but not populated for the RxClass source. Do NOT join or filter on it; treat as absent. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_rxclass_class WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_rxclass_class")` first. # 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. # NADAC — National Average Drug Acquisition Cost `drug_silver.fact_drug_acquisition_cost` · Drugs and formularies · status live · 16,260,115 rows Pharmacy ACQUISITION cost ("what the pharmacy paid" — a cost FLOOR, not a payment, list price, or ASP). unit_price_usd is per pricing_unit (EA/ML/GM); normalize to the same unit + package_size before comparing across NDCs. **Grain.** One row per (ndc11, observed_period_start/week, price_type). CERTIFIED 2026-06-03; history gap CLOSED and re-measured 2026-08-10 (see known_gaps). | column | type | meaning | |---|---|---| | ndc11 | string | | | observed_period_start | date | | | price_type | string | | | unit_price_usd | double | | | ndc_description | string | | | pricing_unit | string | | | package_size | double | | | is_otc | boolean | | | explanation_code | string | | | effective_date | date | | | pharmacy_type_indicator | string | | | classification_for_rate_setting | string | | | corresponding_generic_unit_price_usd | double | | | corresponding_generic_effective_date | date | | | 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_drug_acquisition_cost WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_acquisition_cost")` first. # ASP Pricing File — Medicare Part B quarterly ASP (raw CMS drop) `drug_silver.fact_drug_asp_quarterly` · Drugs and formularies · status live · 18,027 rows The raw CMS Medicare Part B ASP Pricing File, quarter by quarter: HCPCS payment limit (ASP+6%), coinsurance %, and the vaccine / blood / clotting-factor pricing columns. This is the physical table the asp_pricing_lookup MCP tool reads; drug_asp is the product-level logical alias over the same served table. **Grain.** One row per (hcpcs_code, release_quarter). | column | type | meaning | |---|---|---| | hcpcs_code | string | | | short_description | string | | | hcpcs_dosage | string | | | payment_limit_usd | double | | | coinsurance_percentage | double | | | vaccine_awp_percentage | double | | | vaccine_limit_usd | double | | | blood_awp_percentage | double | | | blood_limit_usd | double | | | clotting_factor_usd | double | | | notes | string | | | 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_drug_asp_quarterly WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_asp_quarterly")` first. # ASP — Medicare Part B drug Average Sales Price `drug_silver.fact_drug_asp_quarterly#drug_asp` · Drugs and formularies · status live · 18,027 rows Medicare Part B quarterly ASP/payment-limit benchmark by HCPCS billing unit. This is the denominator for J-code drug markup analysis against commercial infusion rates. **Grain.** One row per (HCPCS code, effective quarter). Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_asp_quarterly#drug_asp WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_asp_quarterly#drug_asp")` first. # ASP Pricing File, Medicare Part B quarterly payment limits (parse revision 2, every CMS revision kept) `drug_silver.fact_drug_asp_quarterly_v2` · Drugs and formularies · status live · 55,035 rows Medicare Part B payment limits per HCPCS billing unit, every quarter Q1 2005 onward, parse revision 2 (ASP parser 2.0.0). Each CMS revision of a quarter is kept (cms_vintage_sequence); use WHERE is_current for the latest. The payment limit is 106% of ASP on a two-quarter lag, not the ASP. 2005-2009 limits are the publisher's '$' text parsed exactly; clotting_factor_flag marks clotting-factor codes (a flag, not dollars). Infusion AWP% / DME infusion limit exist 2005-2016 only; Independent ESRD limit 2005 only. asp_pricing_lookup, drug_price_composite and prove_drug_reimbursement_decision read this table from 2026-10-05. **Grain.** One row per (hcpcs_code, release_quarter, cms_vintage_sequence); among is_current rows (hcpcs_code, effective_period_start) is unique: 55,035 rows = 55,035 keys over 88 quarterly editions, Q1 2005 to Q4 2026 (Athena e3c215d1, f0abf87e). | column | type | meaning | |---|---|---| | hcpcs_code | string | | | short_description | string | | | hcpcs_dosage | string | | | payment_limit_usd | double | | | coinsurance_percentage | double | | | vaccine_awp_percentage | double | | | vaccine_limit_usd | double | | | blood_awp_percentage | double | | | blood_limit_usd | double | | | notes | string | | | release_quarter | string | | | independent_esrd_limit_usd | double | | | infusion_awp_percentage | double | | | dme_infusion_limit_usd | double | | | clotting_factor_flag | boolean | | | source_member_name | 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 | | Tools that read it: asp_pricing_lookup Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_asp_quarterly_v2 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_asp_quarterly_v2")` first. # Clinical Trials (ClinicalTrials.gov, drug-regulated) `drug_silver.fact_drug_clinical_trial` · Drugs and formularies · status live ClinicalTrials.gov records (drug-regulated): NCT id, title, overall status, study type, phase, enrollment, lead sponsor + class, FDA-regulated flag, has_results. The pipeline/evidence context for a drug. **Grain.** One row per clinical trial, keyed by nct_id (the ClinicalTrials.gov registry ID). Verified: 208,178 distinct nct_id = 208,178 total rows, and every row has is_current=true. nct_id alone is the minimal unique key; the profiler's longer key sets (adding source_id/bronze_object_key/s3_version_id/drug_source_version_id) are a redundant superset since those lineage columns are constant or 1-per-bronze-page. **How to use it.** Find FDA-regulated, industry-sponsored Phase 3 oncology trials with posted results: SELECT nct_id, brief_title, lead_sponsor_name, first_drug_intervention_name, enrollment_count FROM drug_silver.fact_drug_clinical_trial WHERE primary_phase='PHASE3' AND lead_sponsor_class='INDUSTRY' AND is_fda_regulated_drug=true AND has_results=true AND first_condition LIKE '%Cancer%'. Answers: which sponsors are running late-stage trials for which drugs/indications — useful as drug-pipeline context alongside drug-cost tables. **Traps.** - NOT a cost table and NOT drug-code-joinable: there are zero dollar amounts, and first_drug_intervention_name is FREE TEXT (92,976 distinct, case-variant dupes like 'Carboplatin'/'carboplatin', top value 'Placebo') with no RxNorm/NDC/ATC. You cannot reliably join this to drug-pricing tables on a code; only fuzzy name matching is possible. - data_year is the FIRST-POSTED year (== year(study_first_post_date), verified 100%), NOT the trial start year. A given data_year mixes start_dates spanning decades. Use start_date for when a trial ran, data_year/study_first_post_date for when it was registered. - first_drug_intervention_name and first_condition keep only the FIRST element of multi-item arrays. A multi-drug or multi-condition trial loses the rest — these columns under-represent the real intervention/indication set and 'Placebo' floating to the top is an ordering artifact. - Single-snapshot table: every row is is_current=true (no history) and the entire lineage block is constant scaffolding — observed_period/asserted_at = 2026-06-03, source_id='clinicaltrials_gov', vintage_tag='none', cms_vintage_sequence=1, parse_revision=1. sha256_content_hash is the literal string 'pending' (never computed) and drug_source_version_id is ALWAYS NULL. The 'cms_vintage_sequence' name is a misnomer (source is CT.gov, not CMS). - Nulls/sentinels carry meaning: is_fda_regulated_drug is NULL for 49% (101,289) — do not read NULL as False. start_date contains placeholder sentinels 1900-01-01 and 2099-01-01 (on withdrawn/never-started trials). enrollment_count maxes at 36.5M because OBSERVATIONAL pharmacovigilance studies (e.g. VigiBase) report database sizes, not enrolled patients — filter study_type='INTERVENTIONAL' for true enrollment. primary_phase has BOTH a literal 'NA' (21,409) and SQL NULL (11,037). | column | type | meaning | |---|---|---| | nct_id | string | PRIMARY KEY. ClinicalTrials.gov registry identifier (e.g. 'NCT01202227'). Globally unique, 1 row each (208,178 distinct = row_count). The only true grain key; this is the join key to any external CT.gov data. | | data_year | int | Partition/snapshot year = year(study_first_post_date) for 100% of rows (verified). The year the trial was FIRST POSTED to the registry, NOT the year it started. Ranges 1999-2026. Never null. Do NOT treat as trial start year (data_year=2010 contains start_dates from 1988 to 2025). | | brief_title | string | Short human-readable trial title from CT.gov (e.g. 'A Study of RO5190591 (Danoprevir) in Healthy Volunteers'). Free text, never null. | | overall_status | string | Trial recruitment/lifecycle status, CT.gov enum (13 values). Top: COMPLETED 118,384; UNKNOWN 26,123; RECRUITING 19,740; TERMINATED 18,607; ACTIVE_NOT_RECRUITING; NOT_YET_RECRUITING; WITHDRAWN; ENROLLING_BY_INVITATION; SUSPENDED; NO_LONGER_AVAILABLE; APPROVED_FOR_MARKETING; AVAILABLE; TEMPORARILY_NOT_AVAILABLE. Never null. | | study_type | string | CT.gov study design type, 3 values: INTERVENTIONAL (197,148 = 95%), OBSERVATIONAL (10,273), EXPANDED_ACCESS (757). Never null. Filter to INTERVENTIONAL when reasoning about real patient enrollment. | | primary_phase | string | Trial phase, CT.gov enum: PHASE2 65,545; PHASE3 38,674; PHASE1 38,523; PHASE4 28,869; NA (literal 'NA' = not applicable, e.g. device/behavioral) 21,409; EARLY_PHASE1 4,121; plus NULL 11,037. TWO kinds of missing: literal 'NA' AND SQL NULL — handle both. | | enrollment_count | int | Number of participants. INT, range 0 to 36,580,288, p50=59, p95=735; 7,444 rows = 0. Million-scale values are real but belong to OBSERVATIONAL pharmacovigilance/database studies (e.g. VigiBase queries), not enrolled patients. 3,478 rows null. | | enrollment_type | string | Whether enrollment_count is ACTUAL (138,428) or ESTIMATED/projected (60,157); NULL for 9,593. ESTIMATED means the trial hadn't completed enrollment at snapshot time. | | lead_sponsor_name | string | Free-text name of the lead sponsor (22,384 distinct). NOT normalized — can include merger notes (e.g. "Pfizer's Upjohn has merged with Mylan to form Viatris Inc."). Never null in samples. | | lead_sponsor_class | string | Sponsor category, CT.gov enum (8 values): OTHER (academic/hospital) 112,238; INDUSTRY 82,501; NIH 5,759; OTHER_GOV 3,932; NETWORK 2,326; FED 1,044; INDIV 314; UNKNOWN 64. Use INDUSTRY to isolate pharma-sponsored trials. | | is_fda_regulated_drug | boolean | Boolean: trial involves an FDA-regulated drug. True 46,769; False 60,120; NULL 101,289 (49% — meaningful gap, field not provided by sponsor / pre-FDAAA trials). Do NOT assume NULL=False. | | has_results | boolean | Boolean: results have been posted to CT.gov. True 48,414; False 159,764. NO nulls (always populated). Note ~23% have results. | | first_drug_intervention_name | string | FREE-TEXT name of the FIRST drug intervention only (92,976 distinct). NOT a code — no RxNorm/NDC/ATC. Case-variant duplicates exist ('cisplatin' vs 'Carboplatin' vs 'carboplatin'). Top value is 'Placebo' (2,279), an ordering artifact. 1 row null. This column does NOT cleanly join to drug-pricing tables. | | first_condition | string | FREE-TEXT name of the FIRST condition/indication only (33,833 distinct, e.g. 'Asthma', 'Metastatic Breast Cancer'). Not coded (no ICD/MeSH). 22 rows null. A trial may target many conditions; only the first is kept. | | start_date | date | Trial start date (DATE). Real range mostly 1931-2030; contains placeholder sentinels 1900-01-01 and 2099-01-01 (seen on WITHDRAWN trials with no real start). 2,820 null. Future dates are legitimate (estimated starts of not-yet-recruiting trials). | | primary_completion_date | date | Date of final data collection for the primary outcome (DATE). May be in the future for ongoing trials. | | completion_date | date | Overall trial completion date (DATE). 8,957 null; 4,444 rows > 2030 (real projected/estimated completions of active trials). | | study_first_post_date | date | Date the trial was first posted to CT.gov (DATE). Range 1999-09-20 to 2026-06-02. This is the canonical 'when it entered the registry' signal and DRIVES data_year (year(study_first_post_date)==data_year for 100% of rows). | | last_update_post_date | date | Date the trial record was last updated on CT.gov (DATE). Range 2005-06-24 to 2026-06-02. Freshness indicator for the underlying registry record. | | observed_period | date | Lineage: the snapshot/ingest date. CONSTANT = 2026-06-03 for every row (single load). Not a trial date — do not confuse with study dates. | | asserted_at | date | Lineage: when this fact was asserted by the pipeline. CONSTANT = 2026-06-03 (single snapshot). Equal to observed_period here. | | effective_period_start | date | Iceberg temporal-validity start. Derived: equals start_date for 98.6% of rows (205,358), with a fallback when start_date is null so it is NEVER null. Used by the bitemporal framework, not a CT.gov field. | | effective_period_end | date | Iceberg temporal-validity end. Derived: equals completion_date for 95.7% (199,221), fallback otherwise; NEVER null. Framework column, not a native CT.gov date. | | cms_vintage_sequence | int | Lineage vintage counter. CONSTANT = 1 (first/only ingestion). Generic drug-spine scaffolding column; 'cms_' prefix is a misnomer here (source is CT.gov, not CMS). | | parse_revision | int | Parser revision number. CONSTANT = 1. Bumps only if the bronze JSON is re-parsed with new logic. | | parser_artifact_hash | string | SHA256 of the parser code/config artifact. Single constant value across all rows (one parser version). Provenance/reproducibility token. | | source_url | string | Origin API endpoint. CONSTANT = 'https://clinicaltrials.gov/api/v2/studies' for all rows. Identifies the upstream source as CT.gov API v2. | | sha256_content_hash | string | Intended content hash of the source record. NOT computed — literal placeholder string 'pending' for all 208,178 rows. Do not use for dedup/integrity yet. | | source_id | string | Logical source identifier. CONSTANT = 'clinicaltrials_gov'. Single-source table. | | is_current | boolean | Bitemporal current-version flag. TRUE for 100% of rows (208,178). No superseded/historical versions exist in this single-snapshot table, so filtering on is_current is a no-op today (but required for forward-compatibility). | | bronze_object_key | string | S3 key of the bronze JSON page this row was parsed from, e.g. 'drug/bronze/clinicaltrials_gov/2026-06-03/-ct_page_00070.json'. 209 distinct = the 209 paginated API response pages (~1000 studies/page). Snapshot date is embedded in the path. | | s3_version_id | string | S3 object version id of the bronze page. 209 distinct (1 per bronze page). Provenance pointer back to the exact stored object. | | vintage_tag | string | Human label for the data vintage. CONSTANT = 'none' (no special vintage tagged for this load). | | drug_source_version_id | string | Intended FK to a drug source-version registry. ALWAYS NULL (0 distinct non-null) in this table. Reserved/unused for the CT.gov source. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_clinical_trial WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_clinical_trial")` first. # Consumer cash-price reference (Cost Plus Drugs snapshot) `drug_silver.fact_drug_consumer_price` · Drugs and formularies · status partial · 2,386 rows Consumer cash-price reference table; currently a single snapshot of the Cost Plus Drugs (Mark Cuban CPD) public catalog (source='costplusdrugs'). Columns: source, ndc11, total_price_usd, quantity, retail_comparison_price_usd, drug_name, unit, source_captured_at. Read by employer_cpd_carve_out for the CPD reprice demo. **Grain.** One row per consumer cash-price SKU (source x sku x quantity); current snapshot includes Cost Plus Drugs plus a second consumer-price source. | column | type | meaning | |---|---|---| | source | string | | | sku | string | | | quantity | int | | | product_name | string | | | variant_name | string | | | slug | string | | | total_price_usd | double | | | manufacturing_cost_usd | double | | | markup_usd | double | | | markup_percent | double | | | labor_usd | double | | | shipping_usd | double | | | retail_comparison_price_usd | double | | | is_generic | boolean | | | stock_status | 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 | | | pharmacy_name | string | per-pharmacy source | | price_tier | string | coupon/companion_subscription/online_only/cpd_full_price | | zip_code | string | GoodRx ZIP-context | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_consumer_price WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_consumer_price")` first. # CMS Medicare Part B Discarded Drug Units (JW/JZ waste) `drug_silver.fact_drug_discarded_units` · Drugs and formularies · status live · 824 rows CMS Medicare Part B Discarded Drug Units — per drug HCPCS the total Medicare allowed amount split into administered vs discarded, plus % administered/ discarded units. The drug-WASTE / IRA single-dose-vial refund overpayment vector — join to ASP to value waste and surface JW-refund recovery. **Grain.** One row per (data_year, HCPCS) — administered vs discarded allowed amount + % units. | column | type | meaning | |---|---|---| | data_year | int | | | hcpcs_cd | string | | | brand_name | string | | | generic_name | string | | | tot_medicare_allowed_amt | double | | | tot_allowed_administered_amt | double | | | tot_allowed_discarded_amt | double | | | pct_administered_units | double | | | pct_discarded_units | 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 drug_silver.fact_drug_discarded_units WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_discarded_units")` first. # Part D formulary coverage (CMS SPUF) `drug_silver.fact_drug_formulary` · Drugs and formularies · status live · 42,858,106 rows NDC-grained Part D formulary coverage from CMS SPUF: tier_level_value, prior authorization, step therapy, quantity limits, and selected-drug flag across all MA-PD + PDP formularies. The coverage lens for employer audits. Resolve plan -> formulary_id via dim_part_d_plan. **Grain.** One row per (formulary_id, NDC11, report_quarter). | column | type | meaning | |---|---|---| | formulary_id | string | | | formulary_version | int | | | contract_year | int | | | rxcui | string | | | ndc11 | string | | | report_quarter | string | | | tier_level_value | int | | | quantity_limit_yn | boolean | | | quantity_limit_amount | double | | | quantity_limit_days | int | | | prior_authorization_yn | boolean | | | step_therapy_yn | boolean | | | selected_drug_yn | boolean | | | 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: formulary_churn Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_formulary WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_formulary")` first. # Part D formulary exclusion list (CMS SPUF) `drug_silver.fact_drug_formulary_excluded` · Drugs and formularies · status live · 355,140 rows Plan-level explicit drug-exclusion list from CMS SPUF, with tier, prior-auth, step-therapy, quantity-limit, and capped-benefit flags. The cross-cut "which plans exclude drug X / how the exclusion list grew" lens. **Grain.** One row per (contract_id, plan_id, drug_identifier, drug_identifier_type, report_quarter). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | drug_identifier | string | | | drug_identifier_type | string | | | report_quarter | string | | | tier | int | | | quantity_limit_yn | boolean | | | quantity_limit_amount | double | | | quantity_limit_days | int | | | prior_auth_yn | boolean | | | step_therapy_yn | boolean | | | capped_benefit_yn | boolean | | | 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_drug_formulary_excluded WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_formulary_excluded")` first. # Part D excluded-drug coverage in the coverage gap (GAP_COV), CMS SPUF sidecar, 2019-Q1 to 2024-Q3 `drug_silver.fact_drug_formulary_excluded_gap_coverage` · Drugs and formularies · status live · 268,567 rows Whether a plan covers each drug on its excluded-drug list (the supplemental coverage of drugs excluded from the basic Part D benefit) in the coverage gap: gap_cov true = Y, false = N, from the GAP_COV field of the quarterly SPUF excluded drugs file, which the original SPUF parser never read. A sidecar of drug_silver.fact_drug_formulary_excluded: join on (contract_id, plan_id, drug_identifier, drug_identifier_type, report_quarter) to the parent's is_current = true rows; every sidecar row joins exactly one parent row and every parent row in 2019-Q1..2024-Q3 has one. 268,567 rows in 23 quarters: 189,204 covered, 79,363 not, 0 NULL; 19,537 NDC-keyed and 249,030 RxCUI-keyed rows (Athena d3768534). **Grain.** One row per (report_quarter, contract_id, plan_id, drug_identifier, drug_identifier_type), the key of drug_silver.fact_drug_formulary_excluded. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | drug_identifier | string | | | drug_identifier_type | string | | | gap_cov | boolean | | | report_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_drug_formulary_excluded_gap_coverage WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_formulary_excluded_gap_coverage")` first. # Part D excluded drugs covered as a supplemental benefit, monthly (CMS) `drug_silver.fact_drug_formulary_excluded_monthly` · Drugs and formularies · status live · 1,103,415 rows Drugs excluded from Part D that a plan covers as a supplemental benefit, with tier and utilization management, every monthly edition 2019-01..2026-09. 2026-09: 13,717 rows, 44 drugs. **Grain.** One row per (release_month, contract_id, plan_id, drug_identifier). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | drug_identifier | string | | | drug_identifier_type | string | | | release_month | string | | | contract_year | int | | | tier | int | | | quantity_limit_yn | boolean | | | quantity_limit_amount | double | | | quantity_limit_days | int | | | prior_auth_yn | boolean | | | step_therapy_yn | boolean | | | capped_benefit_yn | boolean | | | 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_drug_formulary_excluded_monthly WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_formulary_excluded_monthly")` first. # WAC increases — California HCAI SB 17 notices `drug_silver.fact_drug_hcai_sb17_wac_increase` · Drugs and formularies · status partial Event-level Wholesale Acquisition Cost increase notices with manufacturer explanations (CA HCAI SB 17). The public lens on WAC list-price actions. **Grain.** One row per (report_year, oshpd_id, NDC11, wac_effective_date, drug_category) increase notice; NULL drug_category coalesces to '' in the certified key (revised per the 2026-07-02 accepted gate design -- a genuine 2025 Brand/Generic publisher pair shares the old 4-column key). | column | type | meaning | |---|---|---| | report_year | int | | | oshpd_id | string | | | ndc11 | string | | | manufacturer_name | string | | | date_reported | date | | | drug_product_description | string | | | drug_category | string | | | drug_category_source | string | | | wac_effective_date | date | | | wac_increase_amount_usd | double | | | wac_after_increase_usd | double | | | patent_expiration_date | date | | | drug_source_type | string | | | gross_sales_volume_us_dollars | double | | | gross_sales_volume_nonpublic | boolean | | | cost_increase_factors | string | | | cost_increase_factors_nonpublic | boolean | | | change_improvement_desc | string | | | change_improvement_nonpublic | boolean | | | acquisition_date | date | | | acquired_from_company | string | | | acquisition_price_usd | double | | | acquisition_price_nonpublic | boolean | | | acquisition_price_comment | string | | | wac_at_acquisition_usd | double | | | wac_year_prior_to_acq_usd | double | | | year_introduced | int | | | wac_at_introduction_usd | double | | | supporting_documents | string | | | general_comments | string | | | source_resource_id | string | | | source_resource_last_modified | string | | | source_resource_hash | string | | | source_resource_size_bytes | 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 drug_silver.fact_drug_hcai_sb17_wac_increase WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_hcai_sb17_wac_increase")` first. # Medicaid Drug Rebate Program — product file `drug_silver.fact_drug_medicaid_rebate_product` · Drugs and formularies · status live The Medicaid Drug Rebate Program product file by NDC and quarter — labeler, FDA product name + application number, drug category/type, unit type, units per package, therapeutic-equivalence code, COD status. The drug-product reference for Medicaid rebate eligibility (pairs with the utilization file). **Grain.** One row per NDC-11 package per quarterly Medicaid snapshot. Verified: COUNT(DISTINCT ndc11 || effective_period_start) = 1,954,970 = exact row_count (and equivalently ndc11 × data_year × data_quarter). Within any single quarter ndc11 is unique (max rows per ndc11×quarter = 1) and maps to exactly one labeler/product, so ndc11 alone is the per-period natural key. The profiler's 14-column key is a large superset; 11 of those columns (all the labeler/product/provenance/period fields) are either constant table-wide or fully derivable. **How to use it.** To find all single-source innovator drugs that were actively on-market in Q4 2024: SELECT ndc11, labeler_name, fda_product_name, unit_type FROM drug_silver.fact_drug_medicaid_rebate_product WHERE effective_period_start = DATE '2024-10-01' AND drug_category = 'S' AND (termination_date IS NULL OR termination_date >= effective_period_start). This answers 'which NDCs are rebate-eligible single-source drugs active in a given quarter' and gives the canonical FDA identity (labeler, product name, NDC decomposition, unit type) you then join by (ndc11, period) to price/rebate-dollar tables (ASP/NADAC/AMP) for actual cost analysis. **Traps.** - NOT a rebate-AMOUNT table. There are ZERO price/dollar/URA/rebate-percent columns — only drug identity + classification + eligibility metadata. The 'rebate' in the name means 'Medicaid Drug Rebate PROGRAM product list.' For actual rebate/price dollars use a different table (e.g. ASP/NADAC/AMP sources). This is the drug MASTER, not the money. - Minimal grain is just ndc11 × effective_period_start (= ndc11 × data_year × data_quarter), 1,954,970 rows. The profiler's 14-column key is a huge superset: 11 of those columns are either constant table-wide (source_id, bronze_object_key, s3_version_id, sha256, asserted_at) or fully derivable from the NDC/period (labeler_code, product_code, package_size_code, observed_period). Do NOT carry them as grain. - cod_status code-system trap: the SAME status is stored both zero-padded ('01','03','10') and unpadded ('1','3','9') depending on vintage (pre-2019 mostly unpadded, 2019+ padded, 2021 mixed). Grouping or joining on raw cod_status will double-count; normalize with lpad(cod_status,2,'0'). units_per_pkg_size has the same dual-encoding problem ('0000001.000' vs '1000') and is a string, so it cannot be summed without parsing. - It is a CUMULATIVE snapshot, not incremental: one CMS file (filename says '1q_2026') contains all 47 quarters back to 2014 Q3, and it RETAINS terminated NDCs — 44,120 rows have a termination_date earlier than their own quarter. A row's presence does NOT mean the drug was active that quarter; you must filter on termination_date IS NULL OR termination_date >= effective_period_start to get products actually on-market. - ndc11 is NOT a static dimension across periods: 19,208 NDCs change labeler_name over time (relabeling / purchased products via purchased_product_date). The labeler/product attributes are the values AS OF that quarter. Join to other tables on (ndc11, period), and treat null termination_date / reactivation_date / purchased_product_date as 'not terminated / never reactivated / not purchased' — these nulls carry meaning. is_current is true for every row (single load), so it currently filters nothing. | column | type | meaning | |---|---|---| | ndc11 | string | 11-digit National Drug Code identifying a specific drug PACKAGE. Always exactly 11 digits. Decomposes 100%: digits 1-5 = labeler_code, 6-9 = product_code, 10-11 = package_size_code. This is the per-quarter natural key. | | data_year | int | Calendar year of the snapshot quarter (2014-2026). Collinear with effective_period_start. | | data_quarter | int | Quarter number 1-4 of the snapshot. Together (data_year, data_quarter) is equivalent to effective_period_start. | | labeler_name | string | Name of the labeler/manufacturer (e.g. 'AMERICAN HEALTH PACKAGING'). 1,464 distinct. A SLOWLY-CHANGING attribute: 19,208 NDCs show >1 distinct labeler_name across history (relabeling / purchased products), so it is the labeler AS OF that quarter, not a static value. | | labeler_code | string | 5-digit labeler segment of the NDC (FDA Labeler Code). 1,186 distinct. Equals substr(ndc11,1,5) for 100% of rows. | | product_code | string | Product segment of the NDC (digits 6-9 of ndc11). Identifies the drug formulation within the labeler. Equals substr(ndc11,6,4) for 100% of rows. | | package_size_code | string | Package-size segment of the NDC (digits 10-11). Identifies the package within the product. Equals substr(ndc11,10,2) for 100% of rows. | | fda_product_name | string | FDA/labeler product name and form (e.g. 'Carbidopa & Levodopa Tablet'). Free-text proprietary/established name. | | fda_application_number | string | FDA application number (NDA/ANDA, e.g. '0074260'). Empty/null for 2,316 rows (OTC/unapproved or pre-1938 products with no application). | | drug_category | string | MDRP covered-outpatient-drug category. Observed values: N = non-innovator multiple-source / generic (1.52M), I = innovator multiple-source (227K), S = single-source innovator (206K). Drives which rebate formula a drug falls under. | | drug_type_indicator | string | MDRP drug type: '1' = single-source / innovator (1.72M), '2' = multiple-source / non-innovator (237K). Determines the basic vs generic rebate calculation. | | unit_type | string | Unit of measure for pricing/rebate: TAB, ML, CAP, EA, GM, TDP, AHF, SUP, MCI. (e.g. TAB=tablet, ML=milliliter). 9 distinct values. | | units_per_pkg_size | string | Quantity of units in the package, stored as STRING. TWO incompatible encodings across vintages: zero-padded decimal ('0000001.000','0000100.000') vs plain integer ('1000','100000','30000'). Must be normalized before numeric use. | | fda_therapeutic_equivalence_code | string | FDA Orange Book TE rating (AB, AP, AA, AT, NR=not rated, BX=not equivalent, etc.). 'AB' dominant (1.0M). Indicates generic substitutability. | | cod_status | string | Covered-Outpatient-Drug status code (rebate eligibility/period status). CODE-SYSTEM TRAP: stored both zero-padded ('01','03','10') and unpadded ('1','3','9') depending on vintage — 2014-2018 mostly unpadded, 2019+ padded. Normalize with lpad(cod_status,2,'0') before grouping/joining. | | clotting_factor_indicator | boolean | Boolean: product is a blood clotting factor (true for 9,163 rows). Relevant to special rebate/coverage handling. | | pediatric_indicator | boolean | Boolean: product has a pediatric indication/limit (true for 4,550 rows). | | line_extension_drug_indicator | boolean | Boolean: product is a line-extension of an existing innovator drug (true for 22,298 rows). Affects the alternative-rebate (line-extension) calculation under MDRP. | | fda_approval_date | date | FDA approval date. Fully populated (0 nulls). | | market_date | date | Date the product was first marketed. Fully populated (0 nulls). | | package_size_intro_date | date | Date this specific package size was introduced to market. | | termination_date | date | Date the product was terminated from the market; NULL for 1.80M rows (92%) = not terminated. NULL-MEANS-ACTIVE. The cumulative file RETAINS terminated NDCs (44,120 rows have a termination_date before their own quarter's start), so use this date to determine active-in-period status. | | purchased_product_date | date | Date the product/NDC was acquired by the current labeler (M&A relabeling). NULL for 1.47M rows = not a purchased product. | | reactivation_date | date | Date a previously terminated product was reactivated. NULL for 1.94M rows (99.4%) = never reactivated. | | observed_period | date | Snapshot period anchor; equals effective_period_start (quarter-start date) for every row. Redundant with effective_period_start/data_year/data_quarter. | | asserted_at | date | Date this fact was asserted/loaded into the silver layer. Constant table-wide = 2026-05-16 (single ingestion of the cumulative CMS file). | | effective_period_start | date | First day of the snapshot quarter (e.g. 2024-10-01). The canonical period key. 47 distinct quarters, 2014-07-01 to 2026-01-01, ~91-day cadence. | | effective_period_end | date | Last day of the snapshot quarter (e.g. 2024-12-31). Fully derivable from effective_period_start. | | cms_vintage_sequence | int | Sequence number of the CMS file vintage. Constant = 1 for all rows (only one vintage loaded so far). | | parse_revision | int | Parser revision number. Constant = 1 for all rows. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the rows (lineage). Single value table-wide. | | source_url | string | CMS download URL of the source CSV. Single value: https://download.medicaid.gov/data/drugproducts1q_2026_05082026.csv. NOTE the file name says '1q_2026' yet the file is CUMULATIVE and contains all 47 quarters back to 2014. | | sha256_content_hash | string | SHA-256 of the raw source file content. Single value table-wide (one source file). | | source_id | string | Logical source identifier. Constant = 'medicaid_mdrp_drug_products' for all rows. | | is_current | boolean | Boolean is-current/dedup flag. TRUE for 100% of rows — the versioning machinery is dormant (only one load exists), so filtering on is_current=true is currently a no-op but should still be applied for forward-compatibility. | | bronze_object_key | string | S3 key of the bronze-layer object this row came from. Single value table-wide. | | s3_version_id | string | S3 object version id of the bronze object. Single value table-wide. | | vintage_tag | string | Vintage label; constant = 'none' for all rows. | | drug_source_version_id | string | Drug source-version lineage id. NULL for 100% of rows — an unpopulated placeholder column (appears in the profiler's 'unique' key only because a constant NULL is harmless). | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_medicaid_rebate_product WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_medicaid_rebate_product")` first. # Medicaid State Drug Utilization (by state × NDC × quarter) `drug_silver.fact_drug_medicaid_utilization` · Drugs and formularies · status live CMS State Drug Utilization Data — Medicaid units reimbursed, prescriptions, and total / Medicaid / non-Medicaid amounts reimbursed by state, NDC, and quarter (FFS vs MCO via utilization_type). The Medicaid DRUG spend lens by state (NOTE: this is Medicaid drug utilization, not Medicaid MEDICAL rates, which remain absent). **Grain.** One row per (utilization_type x state x NDC-11 package x calendar quarter). Verified: across all 25,810,702 rows, COUNT(*) exactly equals COUNT(DISTINCT (utilization_type, state, ndc11, data_year, data_quarter)) = 25,810,702, with no filter needed (entire physical table is is_current=true). It is a measured fact row: how many Rx of that drug package were reimbursed by that state's Medicaid program (FFS or managed care) in that quarter, and the dollars paid. **How to use it.** National 2024 spend on a specific drug across all of Medicaid: SELECT data_year, data_quarter, SUM(total_amount_reimbursed_usd) AS spend, SUM(number_of_prescriptions) AS rx FROM drug_silver.fact_drug_medicaid_utilization WHERE state='XX' AND data_year=2024 AND suppression_used=false AND ndc11='' GROUP BY data_year, data_quarter; — returns quarterly Medicaid-paid dollars and Rx counts for that drug package nationally (use state='XX' for national, or state<>'XX' grouped by state for a state breakdown), and SUM utilization_type FFSU+MCOU for the full program. **Traps.** - HALF THE TABLE HAS NO NUMBERS: suppression_used=true on 12.78M rows (~49.5%) and on those EVERY metric (units_reimbursed, number_of_prescriptions, all *_amount_reimbursed_usd) is NULL — CMS privacy-suppressed small cells. Always filter WHERE suppression_used=false (or guard NULLs) before SUM/AVG, and remember unsuppressed rows always have >=11 prescriptions, so low-volume drugs are systematically missing. - state='XX' IS THE NATIONAL ROLL-UP, NOT A STATE. Including it alongside per-state rows double-counts. Worse, XX is NOT the simple sum of the visible state rows: for 2023-Q1 unsuppressed, XX total=$27.86B vs sum-of-states=$26.14B, because the national figure also absorbs cells that were suppressed at the state level. Pick state<>'XX' for state analysis OR state='XX' for national totals — never mix, and don't reconstruct national by summing states (you'll undercount). - GRAIN NEEDS BOTH utilization_type AND state. ndc11 alone is far from unique (71,806 distinct vs 25.8M rows); dropping utilization_type drops to 19.16M distinct (FFSU and MCOU rows collide on the same drug/state/quarter), and dropping state collapses to 1.56M. The full minimal key is (utilization_type, state, ndc11, data_year, data_quarter). - labeler_code, product_code, package_size, observed_period, effective_period_start/end are all DERIVED, not independent: ndc11 is byte-for-byte concat(labeler_code,product_code,package_size) (0 mismatches) and the date columns are just the quarter boundaries from data_year/data_quarter. They add no grain and shouldn't be treated as separate keys. Note package_size is the NDC package CODE, not a dispensed quantity. - product_name is unreliable free text — one ndc11 can appear under 12+ different name spellings across filings. Identify drugs by ndc11 (or labeler/product code), never by product_name. - Provenance/SCD columns are inert in this snapshot: is_current=true, cms_vintage_sequence=1, parse_revision=1, vintage_tag='none', asserted_at=2026-05-16, drug_source_version_id=NULL are all single-valued. is_current filtering is currently a no-op and drug_source_version_id can't be joined yet — they're forward-compat scaffolding, so don't read meaning into them today. PR (Puerto Rico) data exists only from 2023 onward (52 states 2020-2022, 53 from 2023). | column | type | meaning | |---|---|---| | utilization_type | string | Medicaid program channel. EXACTLY 2 values: FFSU = Fee-For-Service Utilization (12.30M rows), MCOU = Managed Care Org Utilization (13.51M rows). Part of the grain — the same drug/state/quarter appears once per channel. Sum both for total Medicaid; do not assume one. | | state | string | 2-letter postal code of the state Medicaid program. 53 distinct values: 50 states + DC + PR (Puerto Rico, appears only from 2023) + 'XX'. 'XX' (1.56M rows) is the CMS NATIONAL aggregate, NOT a state — see gotchas. Part of grain. | | ndc11 | string | 11-digit National Drug Code identifying the exact drug package (labeler+product+package). 71,806 distinct. Always exactly = concat(labeler_code, product_code, package_size) (0 mismatches). The drug-join key. Part of grain. | | data_year | int | Calendar year of the utilization quarter (2020-2024). Part of grain; redundant with effective_period_start's year. | | data_quarter | int | Calendar quarter 1-4 of utilization. Part of grain; together with data_year fully determines all period columns. | | labeler_code | string | First 5 digits of the NDC = the drug labeler/manufacturer (FDA labeler code). 1,069 distinct. Derived from ndc11; descriptive, not independent grain. | | product_code | string | NDC product segment, the 4 digits after the labeler code (drug+strength+form). 7,182 distinct. Derived from ndc11; descriptive only. | | package_size | string | NDC package-size segment (trailing digits of the NDC, the package code — NOT a quantity/volume). Derived from ndc11; descriptive only. | | product_name | string | CMS-reported short drug name (free text, often truncated e.g. 'TRIAMCINOL','CLOBETASOL'). NOT stable per NDC — a single ndc11 can carry 12+ different spellings across filings. Use ndc11 to identify the drug, never product_name. | | suppression_used | boolean | CMS privacy flag. true (12.78M rows, ~49.5%) = the cell was suppressed for low volume and ALL metric columns are NULL. false (13.03M rows) = metrics populated. This is the single biggest data-handling fact: half the rows have no numbers. | | units_reimbursed | double | Total drug units (e.g. tablets/mL) reimbursed in the quarter. double. NULL when suppression_used=true. Range on populated rows: 0.003 to 6.15e8. No negatives observed. | | number_of_prescriptions | int | Count of reimbursed prescription claims (Rx) for that drug/state/channel/quarter. int. NULL when suppressed. On populated rows MIN=11 — confirming CMS suppresses any cell with <11 Rx. Max 1,812,525. | | total_amount_reimbursed_usd | double | Total dollars reimbursed for the drug (Medicaid + non-Medicaid). double USD. NULL when suppressed. 0 to 6.27e8, no negatives. Equals medicaid + non_medicaid (matches for all but 8 rounding rows). | | medicaid_amount_reimbursed_usd | double | Portion of total reimbursed paid by the state Medicaid program itself. double USD. NULL when suppressed. | | non_medicaid_amount_reimbursed_usd | double | Portion of total reimbursed paid by third parties / patient cost-share (non-Medicaid). double USD. NULL when suppressed. medicaid + non_medicaid = total. | | observed_period | date | date = first day of the utilization quarter. Fully derived from data_year/data_quarter (e.g. 2021-Q4 -> 2021-10-01). Equals effective_period_start. | | asserted_at | date | date the ingest pipeline asserted this snapshot. Constant 2026-05-16 for every row (single load). Lineage scaffolding, not analytic. | | effective_period_start | date | date = first day of the quarter the utilization covers (= observed_period). The profiler's temporal column. Derived from year+quarter. | | effective_period_end | date | date = last day of the quarter (e.g. 2020-03-31, 2020-06-30). Derived from year+quarter; with start it bounds the quarter. | | cms_vintage_sequence | int | Intended CMS restatement-vintage ordinal. Constant = 1 for all rows (only one vintage loaded). Currently carries no discriminating value. | | parse_revision | int | Parser revision number. Constant = 1 for all rows. Lineage scaffolding. | | parser_artifact_hash | string | SHA-256 of the parser code/artifact that produced the row (lineage). Single value observed across the load. | | source_url | string | CMS download URL of the annual source CSV. 5 distinct values, one per year: https://download.medicaid.gov/data/StateDrugUtilizationData-YYYY.csv (2020-2024). | | sha256_content_hash | string | SHA-256 of the source CSV content (the bronze object), for provenance/dedup. | | source_id | string | Logical source identifier. Constant 'medicaid_sdud' for every row — single-source table. | | is_current | boolean | SCD-2 current-version flag. true for 100% of rows (no superseded versions yet). Filtering on it is a no-op today but keep it for forward compatibility. | | bronze_object_key | string | S3 key of the raw bronze CSV this row was parsed from (lineage), e.g. drug/bronze/medicaid_sdud/2021/-StateDrugUtilizationData-2021.csv. | | s3_version_id | string | S3 object version id of the bronze source file (lineage). | | vintage_tag | string | Human vintage label. Constant 'none' for all rows (no vintage tagging applied yet). | | drug_source_version_id | string | FK to a drug source-version registry. NULL for every row currently — not yet populated; do not rely on it for joins. | Tools that read it: ira_mfp_exposure, recall_spend_window Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_medicaid_utilization WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_medicaid_utilization")` first. # CMS Open Payments (Sunshine Act) `drug_silver.fact_drug_payment_to_prescriber` · Drugs and formularies · status live · 56,372,438 rows CMS Open Payments General Payment transfers from drug and device manufacturers/GPOs to covered recipients, filtered here to drug/biological payment slots and joined by NPI/NDC for conflict-of-interest and integrity analysis. **Grain.** One row per exploded General Payment drug/biological slot at (program_year, payment_id, npi, ndc11/drug name) grain; pure device/no-drug rows are intentionally out of this drug fact. | column | type | meaning | |---|---|---| | npi | string | | | ndc11 | string | | | payment_date | date | | | payment_id | string | | | program_year | int | | | manufacturer_party_id | string | | | manufacturer_name | string | | | payment_amount_usd | double | | | payment_nature | string | | | drug_or_biological_name | string | | | recipient_state | string | | | form_of_payment | 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 | | Tools that read it: excluded_prescriber_payment_screen Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_payment_to_prescriber WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_payment_to_prescriber")` first. # FDA Drug Recalls (Enforcement Reports) `drug_silver.fact_drug_recall` · Drugs and formularies · status live FDA Enforcement Reports for drug recalls — classification (Class I/II/III), status, voluntary/mandated, product description, quantity, reason for recall, recalling firm + location, distribution pattern. Quality/safety signal. **Grain.** One row per FDA drug recall (one unique recall_number). recall_number alone is the verified minimal key — 17,679 distinct values across 17,679 rows, zero duplicates. event_id groups multiple recalls into one enforcement action and is NOT the grain. **How to use it.** Find every active (not-yet-terminated) Class I (most serious) drug recall and what was wrong: SELECT recall_number, recalling_firm, product_description, reason_for_recall, recall_initiation_date FROM drug_silver.fact_drug_recall WHERE classification='Class I' AND status='Ongoing' ORDER BY recall_initiation_date DESC. Answers 'which serious drug recalls are currently open and why'. To check if a specific drug was ever recalled when openfda fields are null, also match product_description (it embeds brand/generic/NDC as text). **Traps.** - recall_number is the ENTIRE grain by itself (0 duplicates, 17,679 distinct = 17,679 rows). The profiler's 10-column candidate key is a bloated SUPERSET — most of those extra columns (s3_version_id, bronze_object_key, source_id, drug_source_version_id, openfda_product_ndc_first) are either constants or 100% NULL and add nothing. Join/dedup on recall_number alone. - openfda_product_ndc_first and drug_source_version_id are 100% NULL; cms_vintage_sequence, parse_revision (=1), vintage_tag (='none'), product_type (='Drugs'), source_id, source_url, sha256_content_hash, bronze_object_key, observed_period/asserted_at (=2026-06-02) are all CONSTANTS. None of these are usable join/filter keys despite some being flagged as 'candidate keys' — they're unique only because they're constant or null. - This is a SINGLE full-replace snapshot, NOT SCD2 history: is_current=true for every row and there is exactly one asserted_at (2026-06-02). There is nothing to dedup and filtering is_current=true is a no-op. A later snapshot would replace the whole table, so do not expect to find superseded versions of a recall here. - effective_period_end is BITEMPORAL, not the real recall end: it equals termination_date only for closed recalls; for the 2,883 Ongoing/Completed recalls with NULL termination_date it is back-filled to the snapshot date 2026-06-02. Using effective_period_end as 'when the recall ended' will be wrong for every open recall — use termination_date (and treat NULL as 'not yet terminated'). - Two date traps: (1) data_year = year(recall_initiation_date), NOT the year in the recall_number suffix (suffix matches only ~56%). (2) effective_period_start is an exact alias of recall_initiation_date. The four real FDA dates run init <= center_classification <= report <= termination; report_date is the best 'made public' date but only exists from 2012 onward, while initiation dates reach back to 2006. - This is a drug-SAFETY/recall table, not a COST table. It is the openFDA Drug Enforcement feed (source_id='fda_drug_enforcement') and contains no prices — unlike its cost-bearing siblings in drug_silver (fact_drug_asp_quarterly, fact_drug_acquisition_cost, fact_drug_va_fss_price, fact_drug_spending_part_b/part_d). Use it to flag whether a drug/lot was recalled, not for pricing. - Product/NDC identity is mostly trapped in free text: structured NDC is unusable (all NULL) and the openfda_* normalized fields (brand/generic/mfr/route/app#) cover only ~18% of rows (EPC only ~6%). For the other ~82% you must parse product_description / code_info text to get NDC, lot, manufacturer. recalling_firm is frequently a repackager/distributor (Aidapak, Attix, Cardinal), not the original labeler. | column | type | meaning | |---|---|---| | recall_number | string | FDA recall identifier, e.g. 'D-1448-2014'. THE GRAIN KEY: globally unique, one row per value (17,679 distinct = 17,679 rows). Format is --. CAUTION: the 4-digit year suffix is the FDA cohort/case year and matches data_year only ~56% of the time (9,908/17,679) — do not treat the suffix as the recall year. | | data_year | int | Integer year. VERIFIED to equal year(recall_initiation_date) = year(effective_period_start) for 100% of rows — i.e. the year the firm initiated the recall, NOT the recall_number suffix year. Ranges 2006-2026; heavily back-loaded (2013+ is the bulk; 2006-2011 are a handful of stragglers). | | event_id | string | FDA enforcement-event id grouping related recalls. NOT unique — 17,679 recalls map to only 4,562 events. One event can span hundreds of recall_numbers (largest events: 470, 465, 382 recalls). Use to group a multi-product recall action; never as a row key. | | classification | string | FDA recall severity (health-hazard) class. Exactly 3 values: 'Class II' (14,259, most common = could cause temporary/reversible harm), 'Class I' (1,727 = serious/death risk), 'Class III' (1,693 = unlikely to cause harm). Never null. | | status | string | Recall lifecycle state. 3 values: 'Terminated' (14,793 = FDA closed it), 'Ongoing' (2,452 = still active), 'Completed' (434 = firm finished but FDA not yet terminated). Drives termination_date nullness (see gotchas). | | voluntary_mandated | string | Who initiated. Almost always 'Voluntary: Firm initiated' (17,615); 'FDA Mandated' is rare (29); 35 nulls. | | product_type | string | CONSTANT 'Drugs' for every row — this table is the drug slice of FDA enforcement only. Carries no information; do not filter on it. | | product_description | string | Free-text description of the recalled product: brand/generic name, strength, package/NDC, manufacturer & distributor. The richest product identifier in the table since structured NDC columns are unusable (see openfda_product_ndc_first). NDCs are often embedded here as text. | | product_quantity | string | Free-text amount recalled, e.g. '20 vials', '73,800 cups', '31,704 bottles'. Non-numeric/non-normalized; ~2,064 rows null (15,615 populated). Parse with care. | | code_info | string | Free-text lot numbers / expiration dates / product codes identifying the specific affected units. High-cardinality (14,042 distinct) but NOT unique and not a key. | | distribution_pattern | string | Free-text geographic distribution scope, e.g. 'Nationwide', 'PA, CA', or a sentence listing states. Effectively always present (1 null). | | reason_for_recall | string | Free-text reason, e.g. 'Presence of Particulate Matter', 'Labeling: Label Mix-Up', 'Misbranded', 'cGMP Deviations'. 4,376 distinct values — descriptive, not coded. | | recalling_firm | string | Name of the firm conducting the recall (1,629 distinct). Top firms are repackagers/compounders/distributors (Aidapak 538, Attix 470, King Bio 465, Cardinal Health 213), not just original manufacturers. | | firm_city | string | City of the recalling firm. Free text. | | firm_state | string | US state abbreviation of the recalling firm (49 distinct values present). | | firm_country | string | Country of the recalling firm. Overwhelmingly 'United States' (16,632); foreign firms exist (Canada 572, India 250, China 85, etc.). | | firm_postal_code | string | ZIP/postal code of the recalling firm (often ZIP+4). | | initial_firm_notification | string | How the firm first notified customers: 'Letter' (9,003), 'Telephone' (2,706), 'Press Release' (2,571), a combined 'Two or more...' bucket (1,725), 'E-Mail', 'Other', 'FAX', 'Visit'; 279 null. Note 'E-Mail' and the legacy 'FAX' both appear. | | observed_period | date | Bitemporal: the snapshot/ingest date when these facts were observed. CONSTANT 2026-06-02 across ALL rows — the whole table is one snapshot. Not a recall date; do not use for recall timing. | | asserted_at | date | Bitemporal assertion date = 2026-06-02 for every row (same single snapshot as observed_period). Provenance bookkeeping, not recall timing. | | effective_period_start | date | Bitemporal validity start. VERIFIED IDENTICAL to recall_initiation_date for 100% of rows — it is an alias of the recall-initiation date. Range 2006-02-24 to 2026-05-12. | | effective_period_end | date | Bitemporal validity end. Equals termination_date when the recall is terminated (14,796 rows), BUT when termination_date is NULL (2,883 Ongoing/Completed rows) it is set to the SNAPSHOT date 2026-06-02 (an open-ended 'still in effect as of snapshot' floor), NOT a real recall end. Never null. See gotchas. | | cms_vintage_sequence | int | Provenance vintage sequence. CONSTANT 1 — single ingested vintage. No information for analysis. | | parse_revision | int | Parser revision number. CONSTANT 1 across all rows. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the rows. Single constant value (one parser build). | | source_url | string | Origin API endpoint. CONSTANT 'https://api.fda.gov/drug/enforcement.json' — this table is openFDA Drug Enforcement (recall) data. | | sha256_content_hash | string | SHA-256 of the ingested source content (bronze object). Single constant value — the whole table came from one bronze file/snapshot. | | source_id | string | Logical source identifier. CONSTANT 'fda_drug_enforcement'. | | is_current | boolean | SCD/current-flag. TRUE for 100% of rows — this is a full-replace snapshot with NO retained history. Filtering is_current=true is a harmless no-op; there are no is_current=false rows to dedup against. | | bronze_object_key | string | S3 key of the bronze source object (e.g. 'drug/bronze/fda_drug_enforcement/2026-06-02/...json'). Single constant value for the snapshot. Provenance only. | | s3_version_id | string | S3 object version id of the bronze file. Single constant value. Provenance only; the profiler mis-listed it as a candidate key because it is constant. | | vintage_tag | string | Vintage label. CONSTANT literal string 'none' for every row — carries no information. | | drug_source_version_id | string | Intended drug-source version linkage. 100% NULL — unused/unpopulated in this table. Do not rely on it. | | recall_initiation_date | date | Date the firm started the recall. The canonical recall start; equals effective_period_start exactly. First in the FDA date chain (init <= center_classification <= report <= termination). Never null; range 2006-02-24 to 2026-05-12. | | center_classification_date | date | Date the FDA center assigned the hazard classification. Never null. Falls between recall_initiation_date and report_date in 17,151/17,679 rows. | | report_date | date | Date FDA published the recall in the enforcement report. Never null; range 2012-06-20 to 2026-05-27. This is the best 'when did it become public' date and the most useful for recency/feed-style queries (note it starts in 2012 even though initiation dates go back to 2006). | | termination_date | date | Date FDA terminated (closed) the recall. NULL for 2,883 rows — essentially all 'Ongoing' (2,452) and most 'Completed' (430), plus 1 'Terminated' edge case. Presence ≈ a closed recall. Last in the date chain. | | openfda_brand_name | string | openFDA-enriched brand name (e.g. 'VENTOLIN'). SPARSE: only 3,157/17,679 rows (~18%) enriched; rest NULL because FDA could not match the product to an openFDA drug record. Often equals the generic name for generics. | | openfda_generic_name | string | openFDA-enriched generic/established name (e.g. 'ALBUTEROL SULFATE'). Same ~18% coverage as brand (3,157 populated). | | openfda_manufacturer_name | string | openFDA-enriched labeler/manufacturer name. ~18% coverage (3,157). May differ from recalling_firm (which is often a repackager/distributor). | | openfda_product_ndc_first | string | Intended first product NDC from openFDA. 100% NULL across the entire table — completely unpopulated. The profiler listed it as part of a candidate key only because an all-NULL column is trivially 'unique'. DO NOT use for NDC joins; get NDCs from product_description text instead. | | openfda_application_number_first | string | openFDA FDA application number (NDA/ANDA/BN...), e.g. 'NDA020983', 'ANDA076477'. Populated for 3,098 rows (~18%); NULL elsewhere. Useful key into FDA drug-application data when present. | | openfda_route | string | openFDA route of administration (e.g. 'ORAL', 'INTRAVENOUS', 'RESPIRATORY (INHALATION)'). ~18% coverage (3,106). | | openfda_dosage_form | string | openFDA dosage form (tablet, injection, etc.). Same ~18% enrichment coverage as the other openfda_* columns. | | openfda_pharm_class_epc | string | openFDA Established Pharmacologic Class (EPC), e.g. 'Angiotensin 2 Receptor Blocker [EPC]', 'Corticosteroid [EPC]'. Sparsest enrichment: only 1,092 rows (~6%) — present only when the matched product has an EPC. | Tools that read it: recall_spend_window Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_recall WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_recall")` first. # IRA Maximum Fair Price (CMS-negotiated) `drug_silver.fact_drug_reimbursement#ira_mfp` · Drugs and formularies · status live CMS Inflation-Reduction-Act negotiated maximum fair prices. Current official selected-drug publication has valid priced periods effective in 2026 and 2027; selected-only 2028 rows are not price facts until CMS publishes MFP amounts. **Grain.** One row per valid (NDC11, IPAY program_year, MFP effective_period_start, MFP effective_period_end) negotiated MFP price period. Tools that read it: ira_drug_label_risk_screen, ira_mfp_exposure Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_reimbursement#ira_mfp WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_reimbursement#ira_mfp")` first. # FDA Drug Shortages `drug_silver.fact_drug_shortage` · Drugs and formularies · status live · 1,733 rows The FDA drug-shortage list — current/resolved shortages by package NDC with availability status, generic name, manufacturer, route, and openFDA enrichments (brand, RxCUI, application number). Supply-risk signal for a drug book (1,733 records). **Grain.** One row per drug-shortage EVENT = one (package_ndc x initial_posting_date) pair, restricted to the SCD-current slice (is_current=true). Verified: 1700 rows, and DISTINCT (package_ndc, initial_posting_date) = exactly 1700. package_ndc alone is NOT unique (1663 distinct) because 37 NDCs have two concurrent open shortage events distinguished only by their FDA posting date. effective_period_start and observed_period are byte-identical aliases of initial_posting_date, so either also completes the key, but initial_posting_date is the cleanest semantic choice. **How to use it.** Find shorted/discontinued drugs that have measurable acquisition-cost exposure: SELECT s.package_ndc, s.generic_name, s.availability, s.update_type, s.related_info FROM fact_drug_shortage s JOIN (SELECT DISTINCT package_ndc, ndc11 FROM dim_drug WHERE package_ndc IS NOT NULL AND ndc11 IS NOT NULL) d ON s.package_ndc = d.package_ndc JOIN (SELECT DISTINCT ndc11 FROM fact_drug_acquisition_cost) c ON d.ndc11 = c.ndc11 WHERE s.is_current = true AND s.availability IN ('Unavailable','Limited Availability'). This answers 'which drugs currently in (or with constrained) supply have a NADAC price, so I can quantify shortage-driven cost/price-spike risk' — it returned 596 priced shorted NDCs in this snapshot. **Traps.** - is_current is TRUE for ALL 1700 rows and is an SCD-CURRENT flag, NOT a 'latest snapshot' flag. The table merges 7 ingest snapshots (1676 rows from the 2026-06-03 master + 24 carried over from 6 earlier daily snapshots) keeping one current row per NDC; the 24 carryovers have ZERO NDC overlap with the master. Always filter WHERE is_current = true, and never assume all current rows share one bronze_object_key/asserted_at. - package_ndc alone is NOT the grain (1663 distinct vs 1700 rows). 37 NDCs have two simultaneous open shortage events distinguished only by initial_posting_date. The profiler's 10-column grain is a massive superset; the true minimal key is just (package_ndc, initial_posting_date). - Three date columns are byte-identical copies: initial_posting_date == observed_period == effective_period_start (event start) for all 1700 rows; and effective_period_end == asserted_at (the snapshot date) for all 1700 rows. effective_period_end is the snapshot-seen date, NOT an open-ended validity sentinel. Do not treat these as independent dimensions. - Two columns are 100% NULL despite appearing in the profiler's reported grain key: openfda_product_ndc_first and drug_source_version_id. Never key, filter, or join on them. - availability NULL is meaningful, not missing-at-random: it is NULL for every 'New' row (515) and 29 'Revised' rows (status not yet classified). Also two raw FDA source typos are preserved verbatim ('Unavailabld', 'Avaliable') — normalize availability before grouping. update_type has only 3 values: Reverified/New/Revised. - NDC format mismatch blocks naive cost joins. package_ndc is FDA dashed 5-4-2 ('0078-0405-05'), while cost tables (e.g. fact_drug_acquisition_cost) use zero-padded 11-digit ndc11 ('00780040505'). A plain replace('-','') join returns 0 matches. Join through dim_drug.package_ndc (same dashed format; matches 1458/1663 = 87.7%) to pick up ndc11, then to NADAC (596 NDCs get an acquisition cost). The openfda_* enrichment columns are ~85-89% populated (NULL = no openFDA label match, e.g. compounded/unapproved products). | column | type | meaning | |---|---|---| | package_ndc | string | FDA package-level NDC in dashed 5-4-2 format (e.g. '0078-0405-05'); uniformly 12 chars / dashed for all 1700 rows. This is the de-dashed-10-digit FDA convention, NOT the zero-padded 11-digit HIPAA ndc11. Identifies the specific drug package on FDA's shortage list. 1663 distinct values. | | initial_posting_date | date | DATE FDA first posted this shortage event. The real event-start dimension and the second half of the grain key. Spans 2012-01-01 to 2026-06-01 (211 distinct dates). A drug can have >1 posting date if FDA opened separate shortage events for the same NDC (e.g. Dextrose 50% NDC 0409-4902-34 has events from 2022-01-13 AND 2025-11-07). IDENTICAL to observed_period and effective_period_start in every one of the 1700 rows. | | update_type | string | FDA's update classification for the shortage record. Exactly 3 values: 'Reverified' (769) = FDA re-confirmed an ongoing shortage, 'New' (515) = newly posted, 'Revised' (416) = details updated. NOT a uniqueness key (package_ndc+update_type = 1699, not 1700). | | availability | string | Current supply status of the drug. Values: 'Available' (733, supply recovered), 'Unavailable' (296), 'Limited Availability' (125), NULL (544). Plus 2 source typos preserved verbatim: 'Unavailabld' (1) and 'Avaliable' (1). NULL is meaningful: it is NULL for ALL 515 'New' rows and 29 'Revised' rows (status not yet classified on a fresh posting). | | generic_name | string | FDA's free-text drug name as listed on the shortage notice (e.g. 'Docetaxel Injection', 'Amlodipine Besylate; Benazepril Hydrochloride Capsule'). Includes dosage form. 254 distinct values. 100% populated. This is FDA's own string, distinct from the cleaner openfda_generic_name. | | contact_info | string | Manufacturer contact phone number as a free-text string (e.g. '888-669-6682'). 100% populated. | | related_info | string | FDA free-text reason/note for the shortage. 520 NULL; common values: 'Discontinuation of the manufacture of the drug' (317), 'Check wholesalers for inventory' (100), 'Estimated recovery: TBD' (90). Text is non-normalized (multiple near-duplicate phrasings of 'discontinuation'). | | observed_period | date | Provenance/temporal alias. DATE the shortage was observed. IDENTICAL to initial_posting_date and effective_period_start for all 1700 rows — a redundant copy, not an independent dimension. 100% populated. | | asserted_at | date | DATE this row was asserted/loaded by Vlada's pipeline = the snapshot/observation date. IDENTICAL to effective_period_end for all 1700 rows. Takes 7 values matching the 7 ingest snapshots: 2026-05-16, -19, -23, -26, -28, -30 (2-7 rows each) and 2026-06-03 (1676 rows). | | effective_period_start | date | SCD effective-from date. IDENTICAL to initial_posting_date / observed_period for all 1700 rows. Profiler's named temporal column. | | effective_period_end | date | SCD effective-to date. IDENTICAL to asserted_at (the snapshot date) for all 1700 rows — i.e. the record is considered valid through the snapshot in which it was last seen, NOT an open-ended 9999 sentinel. | | cms_vintage_sequence | int | Vestigial provenance integer from the shared drug-silver schema. Constant = 1 for all rows (this is an FDA/openFDA source, not a CMS-vintaged one). No analytic meaning here. | | parse_revision | int | Parser revision integer. Constant = 1 for all rows. | | parser_artifact_hash | string | SHA-256 of the parser artifact used. 7 distinct values, one per ingest snapshot. Provenance, not analytic. | | source_url | string | Origin endpoint. Constant = 'https://api.fda.gov/drug/shortages.json' (the openFDA Drug Shortages API) for all rows. | | sha256_content_hash | string | SHA-256 of the bronze source file content. One value per snapshot (used for change detection / dedup). | | source_id | string | Logical source identifier. Constant = 'fda_drug_shortages' for all rows. | | is_current | boolean | SCD-current flag. TRUE for ALL 1700 rows. Means 'latest known state of this NDC's shortage record across ALL snapshots', NOT 'rows from the latest snapshot' — the silver builder merges snapshots and keeps one current row per NDC. Verified: the 24 rows carried over from the 6 earlier snapshots have 0 NDC overlap with the 2026-06-03 master. Always filter WHERE is_current = true. | | bronze_object_key | string | S3 key of the bronze JSON the row came from (e.g. 'drug/bronze/fda_drug_shortages/2026-06-03/...json'). 7 distinct values = the 7 snapshots. The date in the path = the snapshot/asserted_at date. Provenance; NOT a grain key. | | s3_version_id | string | S3 object version id of the bronze file. 7 distinct values (one per snapshot). Provenance. | | vintage_tag | string | Vintage label. Constant = 'none' for all rows. | | drug_source_version_id | string | TRAP: 100% NULL for all 1700 rows. Despite being included in the profiler's reported grain superset, it carries no value. Do not key or join on it. | | openfda_brand_name | string | openFDA-enriched brand name (e.g. 'LOTREL', 'DOCETAXEL'). 89.4% populated (1520/1700). NULL = the FDA shortage NDC had no matching openFDA drug-label record (compounded / unapproved / unmatched products). | | openfda_generic_name | string | openFDA-enriched, normalized generic name (e.g. 'AMLODIPINE BESYLATE AND BENAZEPRIL HYDROCHLORIDE'). 89.4% populated. Cleaner counterpart to the free-text generic_name column. | | openfda_manufacturer_name | string | openFDA-enriched manufacturer/labeler name (e.g. 'Novartis Pharmaceuticals Corporation'). 89.4% populated. 155 distinct values. | | openfda_product_ndc_first | string | TRAP: 100% NULL for all 1700 rows. Intended to hold the first openFDA product-NDC but never populated. Included in the profiler's grain superset but useless. Do not rely on it; use package_ndc. | | openfda_application_number_first | string | openFDA FDA application number, first of any matches (e.g. 'NDA020364', 'NDA022234'). 88.5% populated. Bridges to Orange Book / approval data. | | openfda_route | string | openFDA route of administration (e.g. 'ORAL', 'INTRAVENOUS'). 88.9% populated. | | openfda_substance_name | string | openFDA active substance name (e.g. 'AMLODIPINE BESYLATE', 'DOCETAXEL ANHYDROUS'). 88.8% populated. | | openfda_rxcui_first | string | RxNorm RXCUI, first of any matches (e.g. '898342'). 85.2% populated. The clinical-concept bridge to RxNorm-keyed tables. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_shortage WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_shortage")` first. # Medicare Part B Drug Spending (by HCPCS × year) `drug_silver.fact_drug_spending_part_b` · Drugs and formularies · status live · 3,164 rows The CMS Medicare Part B Spending by Drug public-use file — physician- administered (Part B) drug spend per HCPCS J-code per year: total_spending, dosage units, claims, beneficiaries, avg spend per unit/claim/beneficiary, the ASP price, and unit-cost trend (YoY change + CAGR). The Part B counterpart to the Part D spending PUF. **Grain.** One row per HCPCS drug code per data year. Minimal verified key is (hcpcs_code, data_year): 3,164 distinct combinations = 3,164 total rows (every row is is_current=true; no history/dupes). hcpcs_description, brand_name, generic_name never vary within a code, so they are attributes of the code, not part of the grain. The profiler's 9-column key is a superset padded with provenance columns that are constant across the whole table. **How to use it.** Benchmark a Part B drug's Medicare cost and trend. Example: SELECT data_year, total_spending_usd, total_beneficiaries, avg_spending_per_dosage_unit_usd FROM drug_silver.fact_drug_spending_part_b WHERE hcpcs_code='90670' ORDER BY data_year; answers 'how did Medicare spending and per-unit price for Prevnar 13 move 2019->2023?' (spending collapses $389M->$14M as Prevnar 20 displaces it, while per-unit price rises). For a code's headline 2023 ASP price and long-run growth, read avg_dy23_asp_price_usd and cagr_avg_spending_per_dsg_unt_19_23_pct from any single row of that code (they're constant). To rank top Part B drug spend: SELECT hcpcs_code, hcpcs_description, total_spending_usd FROM ... WHERE data_year=2023 ORDER BY total_spending_usd DESC. **Traps.** - avg_dy23_asp_price_usd, chg_avg_spending_per_dsg_unt_22_23_usd, and cagr_avg_spending_per_dsg_unt_19_23_pct are NOT per-year values — they are single full-period / 2023-snapshot trend figures stamped IDENTICALLY onto all 5 year-rows of a code (verified on Prevnar 13: total_spending falls 389M->14M across years while these three stay 257.99 / 0.0026 / 0.041). For a per-year price use avg_spending_per_dosage_unit_usd; only read the three trend columns once per code (e.g. WHERE data_year=2023). - The grain is (hcpcs_code, data_year) = 3,164 rows. Do NOT add hcpcs_description/brand_name/generic_name or any provenance column to a join/dedup key — descriptions/names are constant per code and every provenance column (source_id, source_url, sha256, bronze_object_key, s3_version_id, cms_vintage_sequence, parse_revision, asserted_at, vintage_tag) has exactly ONE value across the whole table. The profiler's 9-column 'verified grain' is a padded superset. - CMS privacy suppression: rows with <11 claims/beneficiaries are dropped by CMS, so total_claims and total_beneficiaries floor at 11 and low-volume drugs are MISSING entirely (absence != zero spending). Also each year has a different drug roster (559 codes in 2019 -> 734 in 2023), so a code missing in an early year may simply not have existed/met threshold then. - Nulls carry meaning: generic_name null (~8%) = vaccine/biologic/blood product with no listed generic; chg_22_23 null = no 2022 baseline; cagr_19_23 null = no 2019 baseline (i.e. newer drug). Do not coalesce these to 0. - This is a single CMS Release-Year-2025 vintage (asserted_at=2025-04-30, data through 2023), loaded once: is_current is true for all rows and cms_vintage_sequence=1, so the bitemporal columns are present but inert. Don't assume multiple vintages exist. data_year/observed_period/effective_period_start/effective_period_end are 1:1 redundant — pick one (data_year) for filtering. - Percent columns are FRACTIONS not percentages despite '_pct'/'_usd' suffixes: cagr 0.041 = 4.1%, chg_22_23 -0.045 = -4.5% (the chg column name says _usd but the values are ratios). This is Medicare-paid (allowed) amount data, NOT commercial or list/AWP price — pair with the commercial substrate to compute commercial-to-Medicare drug ratios. | column | type | meaning | |---|---|---| | hcpcs_code | string | HCPCS code identifying the Part B drug/biological (e.g. '90670' Prevnar 13, '90662' Fluzone High-Dose). Part of the grain. 734 distinct codes; not all codes appear in all years (559 in 2019 growing to 734 in 2023 as new drugs enter). | | data_year | int | Calendar year the spending/utilization is measured over. Part of the grain. 5 values: 2019-2023. Maps 1:1 to observed_period / effective_period_start (Jan 1) and effective_period_end (Dec 31). | | hcpcs_description | string | Short CMS text label for the HCPCS code (e.g. 'Pneumococcal vaccine, 13-valent'). One description per code (verified: zero codes have >1 description); functionally a code attribute, never null. | | brand_name | string | CMS-listed brand/trade name(s) of products billed under the code (e.g. 'Prevnar 13', 'Fluzone High-Dose 2017-2018*'). Constant per code across years. Never null. A trailing '*' is a CMS convention flagging the drug may also be billed under other/multiple codes or has noted billing caveats. | | generic_name | string | Generic/active-ingredient name (e.g. 'Pneumoc 13-Val Conj-Dip Crm/PF'). Constant per code. NULLABLE — ~8% null (536 of 559 populated in 2019, 684 of 734 in 2023); null typically for vaccines/biologics/blood products where CMS lists no single generic. A null here means 'no generic name on file,' not a data error. | | total_spending_usd | double | Total Medicare Part B spending (allowed amount: program + beneficiary cost share) for the drug in that year, USD. Never null. Wide range $3.26 to $5.43B. THE primary measure. | | total_dosage_units | double | Total dosage units administered (HCPCS-defined billing units; the unit differs by drug, so do NOT compare units across drugs). Never null. Range 11 to 921M. | | total_claims | int | Total number of Part B claims for the drug that year. Never null. Minimum observed is 11 because CMS suppresses cells with <11 claims (privacy floor). | | total_beneficiaries | int | Distinct Medicare beneficiaries who received the drug that year. Never null. Also floored at 11 by CMS suppression. Usually <= total_claims (a beneficiary can have multiple claims). | | avg_spending_per_dosage_unit_usd | double | total_spending_usd / total_dosage_units — Medicare's effective per-unit price that year (the key Part-B price benchmark). Range $0.011 to $485,160. | | avg_spending_per_claim_usd | double | total_spending_usd / total_claims for the year. Derived average. | | avg_spending_per_beneficiary_usd | double | total_spending_usd / total_beneficiaries for the year. Derived average. | | outlier_flag | boolean | Boolean CMS flag marking the drug as a spending/price outlier (per CMS PUF methodology) for that year-row. Never null; ~9-10% true per year (49-64 of the rows). Same code can be flagged in some years and not others. | | avg_dy23_asp_price_usd | double | TRAP: the drug's average 2023 (DY2023) ASP-based payment price, USD — a SINGLE 2023-snapshot value STAMPED ONTO EVERY year-row for that code (verified identical across all 5 years per code). It is NOT the per-year price; for the per-year price use avg_spending_per_dosage_unit_usd. Range $0.011 to $494,962. | | chg_avg_spending_per_dsg_unt_22_23_usd | double | TRAP: percent change in average spending per dosage unit from 2022 to 2023 (a fraction, e.g. -0.045 = -4.5%). A full-period trend value CONSTANT across all year-rows of a code, not a year-specific delta. NULLABLE when the drug lacks a 2022 or 2023 baseline (e.g. 78 of 734 codes null in 2023) — null means new/insufficient-history drug. | | cagr_avg_spending_per_dsg_unt_19_23_pct | double | TRAP: compound annual growth rate of average spending per dosage unit 2019->2023 (fraction, e.g. 0.041 = 4.1%). Single full-period value CONSTANT across all year-rows of a code. NULLABLE when no 2019 baseline (new drugs). Range -0.63 to 13024 (extreme positive values reflect drugs going from near-zero to high price). | | observed_period | date | Date = Jan 1 of data_year (the measurement period anchor). 5 distinct values, redundant with data_year. | | asserted_at | date | Date CMS asserted/published this vintage = 2025-04-30 for ALL rows (single value). Bitemporal 'assertion time' marker, not row-specific. | | effective_period_start | date | Jan 1 of data_year. Used as the table's temporal column. Redundant with data_year/observed_period. | | effective_period_end | date | Dec 31 of data_year (5 distinct values). Closes the annual measurement window. | | cms_vintage_sequence | int | Integer CMS-release vintage sequence; constant = 1 for all rows (only one vintage ingested). Would increment if a newer CMS release were layered in. | | parse_revision | int | Internal parser revision number; constant = 1 across the table. | | parser_artifact_hash | string | SHA256 of the parser artifact that produced these rows; single value for the whole table (governance/lineage). | | source_url | string | CMS download URL of the source CSV; single value: the RY25 P06 V10 DYT23 HCPCS file dated 250430 on data.cms.gov. | | sha256_content_hash | string | SHA256 of the source file content; single value (one source file). Provenance/integrity. | | source_id | string | Logical source identifier; constant = 'medicare_part_b_spending_puf' for every row. | | is_current | boolean | Bitemporal current-version flag. 100% true here (3,164/3,164) — only one vintage loaded, so there are no superseded rows. Filtering is_current=true is the correct convention but currently a no-op. | | bronze_object_key | string | S3 key of the bronze (raw landed) object this silver row derives from; single value (drug/bronze/medicare_part_b_spending_puf/2025/...). Lineage. | | s3_version_id | string | S3 object version id of the bronze file; single value. Lineage. | | vintage_tag | string | Vintage label; literal string 'none' for all rows (no special vintage tagging applied). | | drug_source_version_id | string | Drug source version id — 100% NULL in this table (0 non-null of 3,164). Placeholder column from the shared drug-silver schema, unused for this PUF. | Tools that read it: ira_mfp_exposure Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_spending_part_b WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_spending_part_b")` first. # Medicare Part D Spending by Drug (PUF) `drug_silver.fact_drug_spending_part_d` · Drugs and formularies · status live The Medicare Part D Spending by Drug public-use file — annual aggregate Part D spend, claim counts, beneficiary counts, and unit cost trend per drug. The macro drug-spend lens (which drugs drive Part D dollars and how unit costs move year over year), complementing the NDC-level pricing tables. **Grain.** One row per (brand_name, generic_name, manufacturer_name, data_year) — i.e. one drug (brand+generic) per manufacturer-slice per calendar year, where manufacturer_name='Overall' is itself a row holding the all-manufacturers aggregate. Verified: COUNT(DISTINCT(brand_name,generic_name,manufacturer_name,data_year)) = 60,695 = exact row_count. Every (brand,generic,year) group has exactly one 'Overall' row (16,368 total) plus zero-or-more specific-manufacturer rows (44,327 total). Dropping any one of the four columns breaks uniqueness. **How to use it.** Top Medicare Part D drugs by 2023 spend, all-manufacturer view: SELECT brand_name, generic_name, total_spending_usd, total_claims, avg_spend_per_claim_usd, total_beneficiaries FROM drug_silver.fact_drug_spending_part_d WHERE data_year=2023 AND manufacturer_name='Overall' AND is_current ORDER BY total_spending_usd DESC LIMIT 20; — answers 'which drugs drive Medicare Part D cost and what does Medicare pay per fill/beneficiary'. For a manufacturer-competition view drop the Overall filter and use manufacturer_name<>'Overall'. For multi-year cost trend, filter manufacturer_name='Overall' and pivot total_spending_usd / avg_spend_per_dosage_unit_weighted_usd across data_year (do NOT use the denormalized chg/cagr columns per-year). **Traps.** - DOUBLE-COUNTING TRAP #1 (Overall vs manufacturer): manufacturer_name='Overall' rows are aggregates that already sum the specific-manufacturer rows for the same brand+generic+year. NEVER SUM across manufacturers without filtering — total Part D spend for a drug-year = the single Overall row, OR the sum of the non-Overall rows, but never both together. 16,368 Overall + 44,327 specific = 60,695. - DOUBLE-COUNTING TRAP #2 (denormalized trend columns): chg_avg_spend_per_dsg_unt_22_23_usd and cagr_avg_spend_per_dsg_unt_19_23_pct are FIXED per-drug trend values copied onto ALL FIVE year-rows (2019..2023) of a drug — verified identical across years. They are NOT per-year deltas. Take them from one row (e.g. the 2023 row); summing or averaging them across data_year multiplies them ~5x. - SUPPRESSION NULLS carry meaning (CMS privacy, <11 threshold): total_spending/claims/dosage_units are NULL on 217 rows; total_beneficiaries is NULL on 1,959 rows and avg_spend_per_beneficiary on 2,176 — beneficiary-based fields are suppressed MORE than claims-based ones. Treat NULL as 'suppressed small cell', not zero; COUNT/SUM silently drop them. - REDUNDANT/DEAD provenance columns: observed_period, effective_period_start (=Jan 1 of data_year), effective_period_end (=Dec 31) and asserted_at (=2025-05-01) are all derived constants — use data_year as the time axis. drug_source_version_id is 100% NULL, vintage_tag is the literal 'none', and is_current is 100% True; all other provenance columns (source_url, sha256, s3_version_id, etc.) are single constants because the entire table is one wide CMS CSV (DSD_PTD_RY25...DY23_BGM.csv) unpivoted into long form. - brand_name is essential to the key and NOT redundant with generic_name: the same generic_name appears under multiple brands (e.g. generic 'Abacavir Sulfate' under brand 'Abacavir' AND brand 'Ziagen', each with its own Overall row), and avg_spend_per_dosage_unit_weighted_usd is CMS's claim-WEIGHTED average (not total_spending/total_dosage_units), so don't recompute it; avg_spend_per_claim_usd, however, equals total_spending_usd/total_claims exactly. | column | type | meaning | |---|---|---| | brand_name | string | Drug brand / trade name as reported by CMS (e.g. 'Abilify', 'Ziagen', '1st Tier Unifine Pentips'). 3,474 distinct. Part of the grain. The same generic can appear under several brands (brand 'Abacavir' vs brand 'Ziagen', both generic_name 'Abacavir Sulfate'), which is exactly why brand_name is needed in the key. Includes diabetic supplies (pen needles), not only pharmaceuticals. | | generic_name | string | Active-ingredient / generic name (e.g. 'Abacavir Sulfate', 'Pen Needle, Diabetic'). 1,938 distinct. Part of the grain. Multiple brands share a generic; multiple generics can share a brand string, so neither brand nor generic alone is unique. | | manufacturer_name | string | Drug manufacturer/labeler name (962 distinct INCLUDING the sentinel 'Overall'). THE KEY DIMENSION: value 'Overall' (16,368 rows) is the all-manufacturers AGGREGATE for that brand+generic+year; any other value (44,327 rows) is one specific manufacturer's slice. Names are CMS-truncated (e.g. 'Aurobindo Pharm', 'Camber Pharmace'). Part of the grain. | | data_year | int | Calendar year the spending pertains to. Int, 5 values 2019-2023. Part of the grain. Rows grow by year (2019=10,211 ... 2023=14,309) as the drug universe expands. This is the real time axis (observed_period/effective_period_* are all derived from it). | | total_manufacturers | int | Count of distinct manufacturers contributing to the row. On an 'Overall' row = number of manufacturers that made the drug that year (1-45, e.g. Abacavir 2019 = 5). On a specific-manufacturer row it is always 1. Never null. | | total_spending_usd | double | Aggregate gross Medicare Part D spending in USD for that brand+generic+manufacturer+year (sum of ingredient cost + dispensing/sales tax across all claims; before manufacturer rebates). Double. NULL for 217 rows (CMS privacy suppression, <11 claims). On 'Overall' rows ≈ sum of the specific-manufacturer rows. | | total_dosage_units | double | Total dosage units dispensed (pills, mL, grams, etc. — unit varies by drug, not standardized across rows). Double. NULL for the same 217 suppressed rows. Denominator for the weighted per-dosage-unit average. | | total_claims | int | Number of Part D claims (prescription fills, including refills) for the row. Int. NULL for 217 suppressed rows. CMS suppresses when <11 claims. | | total_beneficiaries | int | Number of distinct Medicare beneficiaries who received the drug. Int. NULL for 1,959 rows — suppressed MORE aggressively than claims/spending (CMS hides beneficiary counts under 11), so beneficiary nulls strictly exceed the 217 spending nulls. | | avg_spend_per_dosage_unit_weighted_usd | double | CMS-computed WEIGHTED average spending per dosage unit (weighted across claims; not a simple spending/units ratio). Double. NULL for 217 suppressed rows. This is the metric the change/CAGR trend columns track. | | avg_spend_per_claim_usd | double | Average spending per claim. Double. Verified = total_spending_usd / total_claims exactly (precomputed but trivially derivable). NULL for the 217 suppressed rows. | | avg_spend_per_beneficiary_usd | double | Average spending per beneficiary = total_spending_usd / total_beneficiaries. Double. NULL for 2,176 rows — inherits the heavier beneficiary suppression (more nulls than the per-claim metric). | | outlier_flag | boolean | Boolean CMS flag marking the drug as an outlier on year-over-year spend-per-dosage-unit change. True=5,911, False=54,535, NULL=249. NULL = 217 fully-suppressed rows + 32 rows that have spending but no outlier determination. | | chg_avg_spend_per_dsg_unt_22_23_usd | double | FIXED 2022->2023 change in weighted avg spend per dosage unit. GOTCHA: this is a single per-DRUG trend value DENORMALIZED onto ALL FIVE year-rows of that brand+generic+manufacturer — identical on the 2019,2020,2021,2022 and 2023 rows. It is NOT a per-year delta. 1,679 nulls (drugs lacking both endpoints). | | cagr_avg_spend_per_dsg_unt_19_23_pct | double | FIXED 2019->2023 compound annual growth rate of weighted avg spend per dosage unit (fraction, e.g. 0.0079 = 0.79%/yr). Same denormalization trap as the change column: one per-drug value repeated on every year-row. 1,184 nulls (drugs not present across the full 2019-2023 span). | | observed_period | date | Date = Jan 1 of data_year. Fully derived from data_year (redundant). Provenance/temporal bookkeeping, not an independent dimension. | | asserted_at | date | Date the data was asserted/published by CMS — constant 2025-05-01 for every row (the RY2025 release date). Not a per-row event date. | | effective_period_start | date | Date = Jan 1 of data_year (the profiler's chosen time column). Redundant with data_year/observed_period. | | effective_period_end | date | Date = Dec 31 of data_year. Marks the row as covering a full calendar year. Redundant with data_year. | | cms_vintage_sequence | int | Ingest vintage sequence number. Constant = 1 (only one vintage of this PUF is loaded). Would increment if a newer CMS release were ingested. | | parse_revision | int | Parser revision number. Constant = 1. Provenance bookkeeping. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row. Constant across all rows (single parse run). Provenance/lineage only. | | source_url | string | CMS download URL of the source CSV. Constant = the RY2025 P04 V10 DY23 By-Generic-Manufacturer (BGM) file (DSD_PTD_RY25_P04_V10_DY23_BGM.csv). Confirms the whole table comes from ONE wide CSV unpivoted into long form. | | sha256_content_hash | string | SHA-256 of the raw source file content. Constant (one source file). Used for content-addressed dedup/integrity. | | source_id | string | Logical source identifier. Constant = 'medicare_part_d_spending_puf'. Identifies the dataset family. | | is_current | boolean | Boolean current-vintage flag. 100% True (60,695/60,695). Only one vintage is loaded so it never filters anything today, but it is the dedup hook for when a future CMS release supersedes this one — filter is_current=true to stay forward-safe. | | bronze_object_key | string | S3 key of the bronze (raw) object backing the row. Constant. Lineage pointer to bronze storage. | | s3_version_id | string | S3 object version id of the bronze file. Constant (single file/version). Lineage/integrity. | | vintage_tag | string | Vintage label. Constant literal string 'none' (not NULL) for every row. Currently carries no information. | | drug_source_version_id | string | Intended drug-source version identifier — 100% NULL (60,695/60,695). A dead/unpopulated provenance column for this table; do not rely on it. | Tools that read it: ira_mfp_exposure, recall_spend_window Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_spending_part_d WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_spending_part_d")` first. # VA Federal Supply Schedule (FSS) drug prices `drug_silver.fact_drug_va_fss_price` · Drugs and formularies · status live VA Federal Supply Schedule drug prices by NDC — the negotiated federal contract price (price_usd, price_type), vendor, contract window, generic flag, VA class. A government-negotiated price benchmark distinct from ASP / NADAC / WAC — useful as a low-water reference for drug pricing. **Grain.** One row per ndc11 per contract_number per price_type. That 3-col key is unique for all 21751 rows; ndc11 alone is 16283 distinct because a drug recurs across contracts and price types. price_start_date is redundant inside the key. **How to use it.** Filter by ndc11 and price_type, take the currently-effective row: select price_usd, package_description, vendor_name from drug_silver.fact_drug_va_fss_price where ndc11=70370106001 and price_type=fss and price_stop_date at-or-after 2026-05-16. Gives the current VA FSS price for Ingrezza 60mg per 30-count pack; price_type=big4 gives the lower Federal Ceiling Price, ratioable vs commercial/Medicare ASP on ndc11. **Traps.** - Grain needs price_type: ndc11 alone is 16283 not 21751, and ndc11+contract_number is still not unique (up to 2 price types per contract). Include price_type or you double/triple-count. price_start_date is redundant in the key. - price_type is load-bearing and not comparable across types: big4 (Federal Ceiling Price) sits at or below fss (5338 of 5341 pairs). Use fss for catalog price, big4 for lowest mandated price, nc for generic/standardization. Do not average across price_type. - Single static snapshot, not a time series: is_current true for all rows; observed_period/asserted_at/source_url/sha256/bronze_object_key are constants (2026-05-16). The weekly/2016 history is the spread of price_start_date, not a refresh cadence. - Aliases/dead: effective_period_start=price_start_date and effective_period_end=price_stop_date exactly; sub_item_identifier and drug_source_version_id are 100% NULL though drug_source_version_id is listed as a candidate key. vintage_tag=none, cms_vintage_sequence=2, parse_revision=1 are constants. - Includes lapsed prices: ~2151 rows have price_stop_date before the snapshot; filter price_stop_date at-or-after your as-of date. covered_flag is text T/F not boolean; price_usd is per the free-text package size so cross-NDC compares need pack-size normalization. | column | type | meaning | |---|---|---| | ndc11 | string | 11-digit NDC drug package; 16283 distinct; join key to drug spine | | contract_number | string | VA contract, 657 distinct; 36F797/V797D-=FSS, 36E797/36W797=nc | | price_start_date | date | price effective start; equals effective_period_start; redundant in key | | vendor_name | string | vendor, 520 distinct; one per contract | | contract_start_date | date | umbrella contract start | | contract_stop_date | date | contract end (to 2031); ~2097 already lapsed | | sub_item_identifier | string | 100% NULL, dead | | package_description | string | free-text pack size (100, 10ML); unit for price_usd | | trade_name | string | brand name, 9698 distinct | | generic_name | string | generic name, 7811 distinct | | is_generic | boolean | generic flag ~41% true | | va_class | string | VA drug class code, 413 distinct, 13 nulls | | covered_flag | string | text T/F covered-drug status; T=12517 F=9234 | | prime_vendor_flag | boolean | prime-vendor bool ~93% true | | price_usd | double | package price USD; min 0.01 median ~157 max 3.48M; meaning depends on price_type | | observed_period | date | snapshot date, const 2026-05-16 | | asserted_at | date | record date, const 2026-05-16 | | effective_period_start | date | alias of price_start_date | | effective_period_end | date | alias of price_stop_date | | cms_vintage_sequence | int | const 2 | | parse_revision | int | const 1 | | parser_artifact_hash | string | parser hash, const | | source_url | string | VA vaFssPharmPrices.xlsx, const | | sha256_content_hash | string | raw file hash, const (one file) | | source_id | string | va_fss_pharm_prices, const | | is_current | boolean | TRUE all rows; no-op (one snapshot) | | bronze_object_key | string | S3 bronze key, const | | s3_version_id | string | S3 version id, const | | vintage_tag | string | literal none | | drug_source_version_id | string | 100% NULL, dead (listed as candidate key but empty) | | price_type | string | fss(15417)=FSS price; big4(5343)=Federal Ceiling Price at-or-below fss; nc(991)=national-contract, mostly generics | | price_stop_date | date | price end; alias of effective_period_end; ~2151 already expired | | non_taa_status | string | TAA status Compliant(21332)/Non-Compliant(419) | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_drug_va_fss_price WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_drug_va_fss_price")` first. # FDA FAERS — Adverse-Event Drug Involvement (DRUG file) `drug_silver.fact_faers_drug` · Drugs and formularies · status live · 11,131,453 rows FDA FAERS (Adverse Event Reporting System) DRUG file — per adverse-event report × drug: the drug's role (PS primary-suspect / SS secondary / C concomitant / I interacting), drug name, active ingredient, NDA number, route/dose, dechallenge/ rechallenge. The drug-safety surveillance signal — links adverse events to the drug substrate (join drugname/prod_ai/nda_num to dim_drug / dim_drug_application). ~1.6-2.2M rows/quarter; 2025Q1-2026Q2 loaded (six quarters). **Grain.** One row per line of a quarter's FAERS DRUG file: physical key (report_quarter, row_seq), row_seq = the line's position in that quarter's file (accepted 2026-09-23). (report_quarter, primaryid, drug_seq) is NOT a key: the publisher repeats it (21,797 duplicate groups / 68,550 rows in 2025Q1). Quarters are noncumulative and case-versioned; count cases with the current-case rule in the context doc, never rows or distinct primaryid. | column | type | meaning | |---|---|---| | report_quarter | string | | | row_seq | bigint | | | primaryid | string | | | caseid | string | | | role_cod | string | | | drugname | string | | | prod_ai | string | | | val_vbm | string | | | route | string | | | dose_vbm | string | | | cum_dose_chr | string | | | cum_dose_unit | string | | | dechal | string | | | rechal | string | | | nda_num | string | | | dose_amt | string | | | dose_unit | string | | | dose_form | string | | | dose_freq | string | | | drug_seq | 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 drug_silver.fact_faers_drug WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_faers_drug")` first. # FDA Warning Letters `drug_silver.fact_fda_warning_letter` · Drugs and formularies · status live · 3,673 rows FDA warning letters — issuing office, company, subject, issue/posted dates, and response/closeout dates. Regulatory-accountability signal on manufacturers/firms (pairs with recalls + OIG for the integrity picture). **Grain.** One row per FDA warning letter, keyed by letter_id (a 16-char hex surrogate hash). Verified: 2,571 rows = 2,571 distinct letter_id. The natural key (company_name + letter_issue_date + subject) is also exactly 2,571 distinct, confirming letter_id is a deterministic 1:1 hash of letter identity, not an arbitrary row id. **How to use it.** Surface drug-supply-disruption / enforcement risk for a manufacturer or compounder. Example: SELECT company_name, letter_issue_date, subject, issuing_office, closeout_letter_date FROM drug_silver.fact_fda_warning_letter WHERE (lower(issuing_office) LIKE '%cder%' OR lower(issuing_office) LIKE '%pharmaceutical quality%' OR lower(subject) LIKE '%pharmaceutical%' OR lower(subject) LIKE '%compounding%' OR lower(subject) LIKE '%api%') ORDER BY letter_issue_date DESC; — returns recent FDA drug-side warning letters (GMP/adulteration/unapproved-drug actions). closeout_letter_date IS NULL flags violations not yet formally resolved. Join to cost/manufacturer tables is name-based only (no shared code). **Traps.** - NOT a cost/price table and NOT drug-only. It holds zero prices, NDCs, NPIs, or labeler codes. It spans ALL FDA centers — tobacco (868 letters) is actually the single biggest bucket, ahead of drugs. Drug-relevant rows are a large minority: ~773 by CDER/pharma-quality issuing_office, ~687 by drug-related subject. Always filter by subject/issuing_office (with LIKE, never equality) before treating it as a drug signal. - letter_id looks like a content hash but IS the verified primary key (16-char hex, 2,571 unique = row count). Do not assume it's an unstable surrogate — the natural key (company+issue_date+subject) collapses to the exact same 2,571, so it is a deterministic 1:1 letter identifier. - Single snapshot only (observed_period = asserted_at = vintage_tag date = 2026-05-16; cms_vintage_sequence, parse_revision, source_id, source_url, sha256_content_hash, s3_version_id are ALL single constants; is_current is trivially all-true). There is no history/time series here despite the bitemporal columns — periodicity is effectively static until the next pull. Do NOT read effective_period_start as a snapshot dimension: it just mirrors letter_issue_date 1:1. - Three columns are null-as-meaning / dead: response_letter_date is 100% null (1 stray row), closeout_letter_date is 89% null where non-null = FDA formally resolved the violation (and null does NOT reliably mean 'still open' — it may just be un-closed-out publicly), and drug_source_version_id is 100% null. effective_period_end is always the 2099-12-31 open sentinel. - issuing_office is unnormalized free text with 120+ values and heavy spelling drift for the same office (e.g. CDER appears as 'Center for Drug Evaluation and Research (CDER)', '... | CDER', 'Center for Drug Evaluation and Research', 'Drug'). Bucketing requires fuzzy/LIKE logic; an exact GROUP BY will badly fragment counts. company_name has the same risk for entity joins (free text, no identifier). | column | type | meaning | |---|---|---| | letter_id | string | PRIMARY KEY. 16-char lowercase-hex surrogate hash (verified: all 2,571 are 16 hex chars, all unique). Deterministically derived from letter identity (company+issue_date+subject all collapse to the same 2,571 distinct count). Stable join key for a single letter. | | letter_issue_date | date | Date FDA issued/sent the warning letter. Non-null 100%. Ranges 2021-01-04 to 2026-04-21. This is the primary event date. (effective_period_start mirrors it exactly.) | | posted_date | date | Date the letter was published to FDA's public website. Non-null 100%. Always >= letter_issue_date except 1 row (posting lags issuance by days–weeks). Ranges 2021-01-05 to 2026-04-28. | | company_name | string | Free-text name of the recipient firm (manufacturer, compounder, importer, vape shop, food processor, telehealth seller, etc.). Non-null, no blanks; 2,508 distinct over 2,571 rows (a few firms got multiple letters). NOT keyed to any NPI / labeler / DUNS code — join to cost entities requires fuzzy name matching. | | issuing_office | string | FDA office/center that issued the letter. VERY dirty free text: 120+ values with many near-duplicate spellings (e.g. 'Center for Drug Evaluation and Research (CDER)' vs '... / CDER'). Top buckets: Center for Tobacco Products (868), CDER drug offices (~600 across variants), Devices (158), Food/CFSAN, import divisions, Veterinary, Biologics. 3 rows null. Use LIKE-based bucketing, not equality, to find drug letters. | | subject | string | FDA's official violation-category string, slash-delimited (e.g. 'CGMP/Finished Pharmaceuticals/Adulterated', 'Unapproved New Drugs/Misbranded', 'Compounding Pharmacy/Adulterated Drug Products', 'Foreign Supplier Verification Program (FSVP)'). Non-null, no blanks. This is the 'reason' field — the most analytically useful column for filtering drug-relevant enforcement. | | response_letter_date | date | DEAD COLUMN in this snapshot: 100% null except 1 row (and that single row's issuing_office is mislabeled). Intended to hold the date FDA acknowledged the firm's response, but effectively unpopulated — do not rely on it. | | closeout_letter_date | date | Date FDA issued a close-out letter formally resolving the violation. 89.1% null (set on only 279 rows). Non-null => the warning was closed out / corrected; null => open OR simply never closed-out-publicly. Ranges 2021-05-12 to 2026-04-28. | | observed_period | date | Snapshot/ingest provenance date (bitemporal 'observed'). Constant 2026-05-16 for all rows — the single date this dataset was pulled. Not a per-letter date. | | asserted_at | date | Bitemporal 'asserted' timestamp (when the fact was written to silver). Constant 2026-05-16 — equals observed_period; single ingest. | | effective_period_start | date | Bitemporal validity start. Verified to EQUAL letter_issue_date on 100% of rows — carries no new information beyond letter_issue_date. The profiler labels this the time column. | | effective_period_end | date | Bitemporal validity end. Always the sentinel 2099-12-31 (open / not superseded) on all 2,571 rows — every record is the current version. | | cms_vintage_sequence | int | Vintage sequence counter for the source pull. Constant = 1 (only one vintage ingested). 'cms_' prefix is a shared-schema artifact; this is FDA data, not CMS. | | parse_revision | int | Parser revision number. Constant = 1 — only one parse generation present. | | parser_artifact_hash | string | SHA-256 of the parser code/artifact that produced these rows (lineage). Single constant value across all rows (one parser version). | | source_url | string | Origin URL: the FDA warning-letters 'datatables-data' export page (https://www.fda.gov/.../warning-letters/datatables-data). Single constant value. | | sha256_content_hash | string | SHA-256 of the raw downloaded source file. Single constant value (one source file underlies all rows). | | source_id | string | Logical source identifier = 'fda_warning_letters' on every row. Single constant. | | is_current | boolean | Snapshot currency flag. TRUE on 100% of rows — there is only one snapshot, so no superseded/historical rows exist yet. Filtering on is_current=true is a no-op today but is the forward-compatible pattern. | | bronze_object_key | string | S3 key of the bronze source object: drug/bronze/fda_warning_letters/2026-05-16/-fda_warning_letters_2026-05-16.xlsx (an Excel export). Single constant — confirms one source file. | | s3_version_id | string | S3 object version id of that bronze file (lineage). Single constant value. | | vintage_tag | string | Human-readable vintage label = 'fda_warning_letters_2026-05-16'. Single constant — identifies the one snapshot. | | drug_source_version_id | string | DEAD COLUMN: 100% null. Intended FK to a drug source-version registry but never populated for this source. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_fda_warning_letter WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_fda_warning_letter")` first. # Form 5500 filings (DOL EFAST2 main filing) `drug_silver.fact_form5500_filing` · Drugs and formularies · status live · 4,330,525 rows DOL EBSA public Form 5500 main-filing rows. The certified EFAST2 table is served for plan years 2009-2025 through pipelines/drug/ingest/form5500_runner.py; all pre-EFAST2 1999-2008 archive bytes are secured but remain outside the certified EFAST2 facts pending the exact deferred legacy lane. **Grain.** One row per DOL EFAST2 Form 5500 main filing (natural key ack_id); served plan years 2009-2025. Pre-EFAST2 1999-2008 is secured but deferred to a separate legacy table family keyed by FILING_ID. | column | type | meaning | |---|---|---| | ack_id | string | | | plan_year | int | | | form_plan_year_begin_date | string | | | form_tax_prd | string | | | plan_number | string | | | plan_name | string | | | plan_effective_date | string | | | sponsor_name | string | | | sponsor_dba_name | string | | | sponsor_ein | string | | | sponsor_state | string | | | sponsor_zip | string | | | business_code | string | | | total_participants_boy | int | | | type_pension_benefit_code | string | | | type_welfare_benefit_code | string | | | is_health_plan | boolean | | | 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 | | | funding_insurance_ind | boolean | | | funding_sec412_ind | boolean | | | funding_trust_ind | boolean | | | funding_gen_asset_ind | boolean | | | benefit_insurance_ind | boolean | | | benefit_sec412_ind | boolean | | | benefit_trust_ind | boolean | | | benefit_gen_asset_ind | boolean | | | admin_name | string | | | admin_ein | string | | | admin_signed_date | string | | | admin_signed_name | string | | | sponsor_signed_date | string | | | sponsor_signed_name | string | | | date_received | string | | | admin_name_same_as_sponsor_ind | boolean | | | amended_ind | boolean | | | final_filing_ind | boolean | | | short_plan_year_ind | boolean | | | welfare_health_ind | boolean | | | welfare_life_insurance_ind | boolean | | | welfare_supp_unemployment_ind | boolean | | | welfare_dental_ind | boolean | | | welfare_vision_ind | boolean | | | welfare_temp_disability_ind | boolean | | | welfare_prepaid_legal_ind | boolean | | | welfare_long_term_disability_ind | boolean | | | welfare_severance_pay_ind | boolean | | | welfare_apprenticeship_training_ind | boolean | | | welfare_scholarship_ind | boolean | | | welfare_death_benefit_ind | boolean | | | welfare_housing_assistance_ind | boolean | | | welfare_other_benefit_ind | boolean | | | welfare_will_not_file_next_year_ind | boolean | | | welfare_stopped_filing_earlier_ind | boolean | | | welfare_ten_or_more_employer_ind | boolean | | | welfare_collectively_bargained_ind | boolean | | | active_participants_eoy | int | | | retired_separated_receiving_eoy | int | | | total_participants_eoy | int | | Tools that read it: pbm_compensation_rollup Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_form5500_filing WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_form5500_filing")` first. # Form 5500 Schedule H plan financials (claims paid, admin expenses, assets) `drug_silver.fact_form5500_financials` · Drugs and formularies · status live · 1,513,019 rows DOL EFAST2 Form 5500 Schedule H rows: benefits actually paid (tot_distrib_bnft_usd), carrier-paid benefits, the itemized administrative-expense block including contract-administrator/TPA fees, contributions, income and beginning/end-of-year assets. This is the CLAIMS-PAID denominator: Schedule C says what the plan paid its vendors, Schedule A says what it paid its carrier and broker, and only Schedule H says what it paid for CARE. All 1,513,019 rows join to fact_form5500_filing on ack_id. First loaded 2026-07-26. **Grain.** One row per filing that attached a Schedule H - key ack_id ALONE (Schedule H has no FORM_ID column); served plan years 2009-2025. Plan year 2025 is PARTIAL. | column | type | meaning | |---|---|---| | ack_id | string | | | plan_year | int | | | sch_h_tax_prd | string | | | plan_number | string | | | sponsor_ein | string | | | tot_distrib_bnft_usd | double | | | ins_carrier_bnfts_usd | double | | | tot_corrective_distrib_usd | double | | | professional_fees_usd | double | | | contract_admin_fees_usd | double | | | invst_mgmt_fees_usd | double | | | other_admin_fees_usd | double | | | tot_admin_expenses_usd | double | | | tot_expenses_usd | double | | | tot_contrib_usd | double | | | tot_income_usd | double | | | tot_assets_boy_usd | double | | | tot_assets_eoy_usd | 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 drug_silver.fact_form5500_financials WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_form5500_financials")` first. # Form 5500 Schedule A insurance contracts (carrier, premiums, broker totals) `drug_silver.fact_form5500_insurance` · Drugs and formularies · status live · 5,112,373 rows DOL EFAST2 Form 5500 Schedule A insurance-contract rows: carrier identity and NAIC, premiums, persons covered, aggregate broker commission and fee totals, and welfare-benefit-type indicators (health/dental/vision/stop-loss/HMO/PPO/indemnity). Presence of a Schedule A row is evidence the plan is at least partially insured; is_stop_loss disambiguates insured from self-funded-with-stop-loss. First loaded 2026-07-26. **Grain.** One row per (filing, Schedule A attachment) - key (ack_id, plan_year, form_id); served plan years 2009-2025. Plan year 2025 is PARTIAL. | column | type | meaning | |---|---|---| | ack_id | string | | | plan_year | int | | | form_id | int | | | sch_a_plan_year_begin_date | string | | | sch_a_plan_year_end_date | string | | | plan_number | string | | | sponsor_ein | string | | | carrier_name | string | | | carrier_ein | string | | | carrier_naic_code | string | | | contract_number | string | | | persons_covered_eoy | int | | | policy_from_date | string | | | policy_to_date | string | | | broker_comm_tot_usd | double | | | broker_fees_tot_usd | double | | | is_health | boolean | | | is_dental | boolean | | | is_vision | boolean | | | is_stop_loss | boolean | | | is_hmo | boolean | | | is_ppo | boolean | | | is_indemnity | boolean | | | premium_received_usd | double | | | total_earned_premium_usd | double | | | claims_paid_usd | double | | | incurred_claims_usd | double | | | retained_total_usd | 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 drug_silver.fact_form5500_insurance WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_form5500_insurance")` first. # Form 5500 Schedule A named brokers (per-broker commission and fees paid) `drug_silver.fact_form5500_insurance_broker` · Drugs and formularies · status live · 6,733,606 rows DOL EFAST2 Form 5500 Schedule A PART1 rows: the named broker on each insurance contract with the commission and fees actually paid to them. 6,733,606 rows across 17 plan years - the per-broker compensation record for insured arrangements. First loaded 2026-07-26. **Grain.** One row per (filing, Schedule A attachment, named broker) - key (ack_id, plan_year, form_id, row_order); served plan years 2009-2025. Plan year 2025 is PARTIAL. | column | type | meaning | |---|---|---| | ack_id | string | | | plan_year | int | | | form_id | int | | | row_order | int | Broker sequence number within the Schedule A attachment (1-based). Joins to fact_form5500_insurance on (ack_id, plan_year, form_id). | | broker_name | string | | | broker_city | string | | | broker_state | string | | | broker_zip | string | | | broker_comm_paid_usd | double | | | broker_fees_paid_usd | double | | | broker_code | 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_form5500_insurance_broker WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_form5500_insurance_broker")` first. # Form 5500 Schedule C service providers (PBM compensation) `drug_silver.fact_form5500_service_provider` · Drugs and formularies · status live · 4,147,907 rows DOL EFAST2 Form 5500 Schedule C Part 1 Item 2 service-provider rows served for plan years 2009-2025 through pipelines/drug/ingest/form5500_runner.py. The pre-EFAST2 Schedule C main/PART1/PART2 archive is byte-secured but is not merged into this certified EFAST2 table. **Grain.** One row per Form 5500 Schedule C Part 1 Item 2 service provider per filing (ack_id x row_order); served plan years 2009-2025. Pre-EFAST2 1999-2008 is secured but deferred to a separate legacy table family. | column | type | meaning | |---|---|---| | ack_id | string | | | plan_year | int | | | row_order | int | | | provider_name | string | | | provider_ein | string | | | provider_state | string | | | provider_zip | string | | | provider_relation | string | | | direct_comp_usd | double | | | indirect_comp_indicator | string | | | eligible_indirect_comp_indicator | string | | | total_indirect_comp_usd | double | | | comp_formula_indicator | 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 | | Tools that read it: pbm_compensation_rollup Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_form5500_service_provider WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_form5500_service_provider")` first. # Form 5500 — service provider codes (Schedule C) `drug_silver.fact_form5500_service_provider_code` · Drugs and formularies · status live · 10,564,656 rows The EFAST2 Form 5500 Schedule C service-provider service codes per filing for plan years 2009-2025. The pre-EFAST2 Schedule C archive is byte-secured but is not merged into this certified EFAST2 sidecar. **Grain.** One row per service-code position on a service-provider line within a single Form 5500 filing — i.e. one row per (filing, provider line, code slot). Verified minimal unique key is (ack_id, row_order, code_order) = exactly 3,419,239 distinct = the full table row_count (3,419,239). ack_id picks the filing (420,651 of them), row_order picks the provider line within that filing (1-908), code_order picks the position of one declared service code within that provider's list (1-23, dense). A given provider line carries ~2.5 service codes on average. **How to use it.** Classify benefit-plan vendors and their spend by service type: e.g., to find the top PBMs/recordkeepers paid by plans in 2023, join codes to the parent provider table — SELECT p.provider_name, array_join(array_agg(c.service_code ORDER BY c.code_order),',') AS codes, p.direct_comp_usd FROM fact_form5500_service_provider_code c JOIN fact_form5500_service_provider p ON c.ack_id=p.ack_id AND c.row_order=p.row_order WHERE c.plan_year=2023 GROUP BY ... ORDER BY p.direct_comp_usd DESC. This returns real rows like OPTUMRX, INC. with codes '12,50,62,99' and ~$221M direct comp, telling you both who was paid and what services they declared. **Traps.** - service_code is NOT part of the grain and is NOT unique within a provider line — 1,198 provider lines list the same service_code twice, so (ack_id, row_order, service_code) yields 3,418,014 distinct vs 3,419,239 rows and silently drops 1,225 rows. Always use code_order (the positional slot) as the third key, never service_code. - ack_id alone is only 420,651 distinct and a provider line spans multiple code rows, so any per-filing or per-provider aggregation must DISTINCT/GROUP appropriately. plan_year is redundant in the key (functionally determined by ack_id) and code_order resets to 1 on every new provider line, so neither plan_year nor code_order is unique on its own. - is_current is TRUE for 100% of rows and asserted_at is a single constant (2026-05-15) — there is currently no version history or SCD churn to dedup, but filter is_current=true to stay correct if future loads add superseded rows. - The period columns (observed_period, effective_period_start, effective_period_end) are 100% derived from plan_year as calendar Jan 1 - Dec 31 — they are NOT the filing's true ERISA plan-period dates and will be wrong for off-calendar plan years. Use plan_year as the real time dimension. - This table holds NO dollar amounts and NO provider identity — only category codes. To get the actual cost/compensation (direct_comp_usd, indirect comp) and provider_name/EIN/state, JOIN to the parent fact_form5500_service_provider on (ack_id, row_order) (100% FK integrity from this side; ~8,730 provider lines in the parent declared no code and are absent here). drug_source_version_id is 100% NULL and source_id is the single constant 'dol_efast2_schedule_c_p1i2_codes'. | column | type | meaning | |---|---|---| | ack_id | string | DOL EFAST2 acknowledgement ID of the Form 5500 filing this row came from (string, e.g. '20240905083006NAL0043218194001'). 420,651 distinct filings. First leg of the grain. Functionally determines plan_year (each ack_id = exactly one plan year). Join key to the sibling parent table fact_form5500_service_provider on (ack_id, row_order). | | plan_year | int | ERISA plan year the filing reports on. int, 5 values 2020-2024 (~76K-89K filings each). Functionally dependent on ack_id (NOT needed in the grain). Drives all the period columns. NOTE: this is the reported plan year; the table treats it as a calendar year regardless of off-calendar plan periods. | | row_order | int | Positional index (1-based) of the service-PROVIDER line within the filing's Schedule C Part 1 Item 2 list. int, range 1-908 (avg ~3.3 provider lines per filing). Second leg of the grain. Joins to the same row_order in fact_form5500_service_provider, which holds that provider's name/EIN/state and compensation (direct_comp_usd). | | code_order | int | Positional index (1-based) of the service-CODE within a single provider line's list of declared service codes. int, range 1-23, DENSE (always 1..n, no gaps), avg ~2.5 codes per provider line. Third and final leg of the grain. THIS, not service_code, is what makes a row unique within a provider line (a provider can list the same service_code twice). | | service_code | string | DOL EFAST2 Form 5500 Schedule C service-code category the provider self-declared (2-char string '10'-'99', 55 distinct values, 0 nulls). Identifies WHAT TYPE of service the provider rendered to the plan (e.g. '50' recordkeeping-related is most common at 438K, '64','15','27','37'... ; '99' = 'Other services'). NOT unique within a provider line. This is a category code, not a dollar amount. | | observed_period | date | date. Derived 100% from plan_year = Jan 1 of the plan year (2020-01-01 ... 2024-01-01). 1 distinct value per plan_year. A snapshot/as-of proxy, not a real observation date. | | asserted_at | date | date the row was asserted/loaded by the Vlada pipeline. Single constant value 2026-05-15 for ALL 3.4M rows (this whole table was built in one batch). Bitemporal-lineage column; carries no per-row variation. | | effective_period_start | date | date. Derived 100% from plan_year = Jan 1 of plan year. The profiler picks this as the temporal column (2020-01-01 -> 2024-01-01, annual). It is a calendar-year proxy, NOT the filing's actual ERISA plan-period start. | | effective_period_end | date | date. Derived 100% from plan_year = Dec 31 of plan year. Calendar-year proxy, NOT the actual plan-period end. Zero rows deviate from Jan1-Dec31 of plan_year. | | cms_vintage_sequence | int | int. Lineage/vintage sequence number. Constant value 1 across all rows (the 'CMS' naming is a generic pipeline lineage field reused for this DOL source; only one vintage loaded). | | parse_revision | int | int. Parser revision number for the extraction. Constant value 1 across all rows (single parse revision). | | parser_artifact_hash | string | string sha256 of the parser code artifact that produced the row. Single constant value across all rows. Provenance/reproducibility field. | | source_url | string | string. URL of the DOL EFAST2 source ZIP this row was parsed from (e.g. https://askebsa.dol.gov/FOIA Files/2023/Latest/F_SCH_C_PART1_ITEM2_CODES_2023_Latest.zip). 5 distinct values = one annual 'Latest' file per plan_year 2020-2024. | | sha256_content_hash | string | string. sha256 of the raw source file content. 5 distinct (one per plan_year file). Content-addressed provenance of the bronze object. | | source_id | string | string. Logical source identifier. Single constant value 'dol_efast2_schedule_c_p1i2_codes' for the entire table (DOL EFAST2 Schedule C, Part 1, Item 2 service codes). | | is_current | boolean | boolean SCD/current-version flag. TRUE for 100% of rows (3,419,239 / 3,419,239); zero non-current rows exist. No version-dedup filtering is needed today, but query with is_current=true to stay future-proof. | | bronze_object_key | string | string. S3 key of the bronze-layer object this row was derived from (drug/bronze/dol_efast2_schedule_c_p1i2_codes//-...zip). 5 distinct (one per plan_year). Data-lake lineage pointer. | | s3_version_id | string | string. S3 object version-id of the bronze file. 5 distinct (one per plan_year). Pins the exact immutable S3 object version for reproducibility. | | vintage_tag | string | string vintage label. Single constant value 'none' across all rows (no special vintage tagging applied to this source). | | drug_source_version_id | string | string. Cross-source drug version linkage id. 100% NULL across all 3.4M rows (0 distinct). Not populated for this table; do not rely on it. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_form5500_service_provider_code WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_form5500_service_provider_code")` first. # FDA Orange Book — exclusivity `drug_silver.fact_orange_book_exclusivity` · Drugs and formularies · status live FDA Orange Book exclusivity periods by application/product — exclusivity code and expiry. Complements patents for generic/biosimilar entry-timing analysis. **Grain.** One row per (FDA application type + application number + product number + exclusivity code + exclusivity expiry-date text) per monthly Orange Book snapshot. In plain words: one row = one specific exclusivity grant on one drug product, as it appeared in one captured edition of the Orange Book. Full table = 36,485 rows. Restricting to is_current=true collapses each exclusivity grant to its most-recently-observed version = 4,446 rows (one row per appl_type+appl_no+product_no+exclusivity_code+exclusivity_date_text). **How to use it.** "Generic-entry / loss-of-exclusivity scan: SELECT e.appl_no, e.product_no, p.ingredient, p.trade_name, e.exclusivity_code, date_parse(e.exclusivity_date_text,'%b %e, %Y') AS expiry FROM fact_orange_book_exclusivity e JOIN dim_orange_book_product p ON e.appl_type=p.appl_type AND e.appl_no=p.appl_no AND e.product_no=p.product_no AND p.is_current=true WHERE e.observed_period=(SELECT max(observed_period) FROM fact_orange_book_exclusivity) AND date_parse(e.exclusivity_date_text,'%b %e, %Y') BETWEEN DATE '2026-01-01' AND DATE '2026-12-31' ORDER BY expiry — answers 'which branded drugs lose an FDA exclusivity in 2026', the upstream signal for generic competition and downstream price/cost reductions." **Traps.** - is_current=true is NOT a single point-in-time snapshot. It flags the last-seen version of each exclusivity grant, and those rows span 10 different observed_periods. For a true 'Orange Book as of latest edition' view, filter observed_period = (SELECT max(observed_period) ...) instead. Use is_current only when you want each grant's most recent record regardless of edition. - appl_no+product_no+exclusivity_code is NOT unique even within is_current. One product+code can have several rows because exclusivity_date_text differs (multiple PED/ODE grants with different expiry dates). The minimal unique key must include exclusivity_date_text (and observed_period for the full table). Profiler reported 'no unique grain' because it never tested exclusivity_date_text. - exclusivity_date_text is the EXCLUSIVITY EXPIRY date and is stored as a STRING ('Apr 26, 2021'), not a date column. You must date_parse(exclusivity_date_text,'%b %e, %Y') to do date math (e.g. 'which exclusivities expire in 2026 → generic-entry opportunity'). Do NOT use effective_period_end for this — that column just mirrors the snapshot date. - exclusivity_code mixes a type prefix with a per-grant sequence (ODE-209, I-766, M-225) AND an FDA footnote asterisk (NCE*, ODE*, 748 rows). To analyze by exclusivity TYPE, strip both the numeric suffix and the trailing '*' (e.g. regexp_extract prefix). Counting raw exclusivity_code over-fragments (828 distinct current codes for ~16 real types). - Despite the cms_vintage_sequence / drug_source_version_id column names, this is FDA Orange Book data and those lineage columns are inert (cms_vintage_sequence=1, drug_source_version_id all NULL, vintage_tag='none', parse_revision=1). Join to dim_orange_book_product on (appl_type, appl_no, product_no) for ingredient/trade_name/applicant (100% match on the current slice); fact_orange_book_patent is the patent sibling. effective_period_start=effective_period_end=observed_period on every row. | column | type | meaning | |---|---|---| | appl_type | string | FDA application type. Two values: 'N' = NDA (brand/innovator drug, 35,430 rows / 4,095 current) and 'A' = ANDA (generic, 1,055 rows / 351 current). Part of the join key to dim_orange_book_product and fact_orange_book_patent. | | appl_no | string | FDA application (NDA/ANDA) number, stored as a 6-char zero-padded string (e.g. '009190', '211155'). 1,137 distinct on the current slice. With appl_type+product_no it identifies a marketed drug product. Keep as string — leading zeros are significant. | | product_no | string | Product/strength number within an application, 3-char zero-padded string ('001','002',...). One application can have several products (different strengths/forms). appl_no+product_no = 2,054 distinct current products. | | exclusivity_code | string | FDA exclusivity-type code = the reason and length of market protection. Prefix is the type, suffix (where present) is a per-grant sequence counter. Current-slice frequency: ODE-### (Orphan Drug Exclusivity, 7yr) 1,069; NCE/NCE* (New Chemical Entity, 5yr) 732; PED (Pediatric, +6mo) 545; I-### (New Indication, 3yr) 532; M-### (new patient-population/labeling, 3yr) 431; NPP 335; NP 301; CGT (Competitive Generic Therapy) 187; PC 164; GAIN (antibiotic) 56; D-### (new dosage form) 52; plus NS, NC, W, NDF, RTO. A trailing '*' (NCE*, ODE*, 748 rows total) is an FDA footnote/delisting marker on the same code type. | | exclusivity_date_text | string | The exclusivity EXPIRY date — the date the protection ends and generic/biosimilar entry becomes possible. Stored as a STRING in 'Mon D, YYYY' form (e.g. 'Apr 26, 2021'); 100% parseable with date_parse(...,'%b %e, %Y'). Across all snapshots parsed values span 2019-05-23 to 2035-12-12. This is a discriminator in the grain: one product+code can carry several distinct expiry dates (e.g. multiple PED or ODE grants). | | observed_period | date | The snapshot month — which captured Orange Book edition this row came from (1st-of-month date). 18 distinct values 2021-03-01 to 2026-04-01. This is the time/vintage dimension; the same exclusivity grant reappears across consecutive snapshots while it is still active. Equal to effective_period_start and effective_period_end for every row. | | asserted_at | date | Date the snapshot was asserted/parsed into the lake (a few days to weeks after observed_period, e.g. observed 2026-04-01 → asserted 2026-05-08). Exactly 1:1 with observed_period; metadata, not a business date. | | effective_period_start | date | Start of the validity window for this snapshot row. Identical to observed_period for ALL 36,485 rows (point-in-time snapshot, not a true SCD interval). | | effective_period_end | date | End of the validity window. Identical to effective_period_start (and observed_period) for ALL rows — carries no independent information; do NOT read it as 'exclusivity end date' (that is exclusivity_date_text). | | cms_vintage_sequence | int | Lineage counter, constant = 1 for every row. Despite the 'cms_' name this source is FDA, not CMS — a shared drug_silver schema column that is inert here. | | parse_revision | int | Parser revision number, constant = 1 for all rows. Inert lineage field. | | parser_artifact_hash | string | Hash of the parser build that produced the rows. 18 distinct values, exactly one per snapshot (1:1 with observed_period). | | source_url | string | Origin URL, constant = 'https://www.fda.gov/media/76860/download' (the FDA Orange Book data-file download). | | sha256_content_hash | string | SHA-256 of the downloaded source file. 18 distinct values, one per snapshot — the integrity fingerprint of each Orange Book ZIP edition. | | source_id | string | Logical source name, constant = 'fda_orange_book'. | | is_current | boolean | Boolean dedup flag. TRUE marks the row from the LATEST snapshot in which that exact exclusivity grant (appl_type+appl_no+product_no+exclusivity_code+exclusivity_date_text) was last observed — exactly one TRUE per such natural key. It is NOT a single-snapshot filter: is_current=TRUE rows span 10 different observed_periods because grants that have since dropped out of the Orange Book stay 'current' at their last-seen month. 4,446 of 36,485 rows are TRUE. | | bronze_object_key | string | S3 key of the raw bronze object for the snapshot (e.g. 'drug/bronze/fda_orange_book/2026-04-01/...-EOBZIP_2026_04.zip'). 18 distinct, one per observed_period. | | s3_version_id | string | S3 object version id of the bronze file. 18 distinct, no nulls, 1:1 with snapshot. | | vintage_tag | string | Free-text vintage label, constant = 'none' for all rows. Inert. | | drug_source_version_id | string | Cross-source version linkage id — NULL for every row in this table. Not populated for the Orange Book exclusivity source. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_orange_book_exclusivity WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_orange_book_exclusivity")` first. # FDA Orange Book — patents `drug_silver.fact_orange_book_patent` · Drugs and formularies · status live FDA Orange Book patent listings — patents protecting approved drugs by application/product, with patent number, use code, expiry, and substance/product flags. Drives generic-entry timing analysis (when patent protection lapses). **Grain.** One row per listed patent-use entry per FDA snapshot: the natural key is (appl_no, product_no, patent_no, patent_use_code) within a single effective_period_start. On is_current=true that natural key is unique and yields 28,168 rows (each = one patent + one use-code listed against one approved product, frozen at its last-observed FDA values). Across the full table, (appl_no, product_no, patent_no, patent_use_code, effective_period_start) is unique = exactly 318,983 rows (the same key repeated across 18 quarterly snapshots). Note patent_no carries FDA suffixes like *PED (pediatric-exclusivity extension), so the same base USPTO patent can appear as multiple rows (e.g. 7452872 and 7452872*PED) with different expiration dates; and patent_use_code='' (empty string, 42% of rows) is a real value meaning "drug-substance/drug-product patent with no method-of-use claim", not missing data. **How to use it.** To find the current loss-of-exclusivity timeline for a drug, query the latest snapshot and parse the expiration text. Example: SELECT appl_no, product_no, patent_no, patent_use_code, patent_expire_date_text, date_parse(patent_expire_date_text, '%b %e, %Y') AS expire_date, delist_flag FROM drug_silver.fact_orange_book_patent WHERE effective_period_start = DATE '2026-04-01' AND appl_no = '020610' ORDER BY expire_date DESC. This answers 'which patents protect this drug product and when does the last one (including any *PED pediatric extension) expire?' — i.e. the earliest date generic competition / price erosion can begin. Join appl_no(+product_no) to the drug-product/NDC spine to attach drug names and prices; aggregate max(expire_date) per product for the headline LOE date. Use the full snapshot history (effective_period_start over 18 quarters) to see when a patent was first listed or dropped/delisted over time. **Traps.** - is_current=true does NOT mean 'currently in the Orange Book.' It is SCD2 last-seen state: 28,168 rows = every patent-use entry ever observed, frozen at its last snapshot. 7,056 of them (incl. long-expired/delisted patents) are absent from the newest file. To get TODAY'S actual Orange Book patents, filter effective_period_start = (SELECT max(effective_period_start)) — i.e. DATE '2026-04-01' (21,112 rows), not is_current. - The grain is the 4-part FDA natural key (appl_no, product_no, patent_no, patent_use_code) per snapshot — NOT patent_no (8,828 distinct, heavily repeated), patent_use_code, or any single column. The profiler failed to find the key because it never tested these natural-key columns; verified here as exactly unique (28,168 on is_current, 318,983 with effective_period_start across all 18 snapshots). - patent_no is NOT a clean USPTO number: FDA appends suffixes, most importantly '*PED' for a 6-month pediatric-exclusivity extension. The same base patent appears as two rows (e.g. '7452872' expiring Aug 24 2026 and '7452872*PED' expiring Feb 24 2027). Strip/parse the suffix before joining to external patent data, and use the *PED row for the true latest exclusivity date. - patent_use_code is never NULL but uses empty string '' (42% of rows) as a real value meaning 'no method-of-use code' (a drug-substance or drug-product patent). Don't treat '' as missing. The U-#### codes reference indications defined in a SEPARATE FDA use-code dictionary that is NOT in this table. - The three boolean flags (drug_substance_flag, drug_product_flag, delist_flag) are TRUE-or-NULL only (never false). NULL means 'not flagged' (effectively false), not 'unknown'. Counting NULLs as missing data will mislead — e.g. delist_flag is true for only 223 rows and NULL for the other 27,945. - All dates that matter (patent_expire_date_text, submission_date_text) are stored as 'Mon D, YYYY' TEXT, not date types, and submission_date_text is null for ~5K older rows. Parse to real dates before any expiration/sorting logic. effective_period_end always equals effective_period_start (snapshots, not ranges). - Many columns are constant filler in this table and carry no signal: appl_type='N', cms_vintage_sequence=1, parse_revision=1, vintage_tag='none', source_id='fda_orange_book', single source_url, and drug_source_version_id is 100% NULL. The 'cms_' prefix on cms_vintage_sequence is a schema-template misnomer — this is FDA, not CMS, data. | column | type | meaning | |---|---|---| | appl_type | string | FDA application type. Constant 'N' (New Drug Application / NDA = brand) for 100% of rows in this table — ANDAs (generics, type 'A') do not list patents, so only NDAs appear. Not useful as a filter here. | | appl_no | string | FDA NDA application number, fixed 6-char zero-padded string (e.g. '020610', '206073'). Joins to the drug-product / approval spine. Part of the natural key. 1,537 distinct applications on is_current. | | product_no | string | Product number within the application, fixed 3-char zero-padded string (e.g. '001','002'). Distinguishes strengths/dosage forms under one NDA. appl_no+product_no identifies one approved drug product (3,044 distinct on is_current). Part of the natural key. | | patent_no | string | The listed patent, as printed by FDA — usually a USPTO number string (e.g. '7625884') but MAY carry FDA suffixes, notably '*PED' for a 6-month pediatric-exclusivity extension (e.g. '7452872*PED'). The *PED variant is a separate row with a LATER patent_expire_date_text than the base patent. Do NOT treat as a clean integer patent id. 8,828 distinct values on is_current. | | patent_use_code | string | FDA Patent Use Code identifying the specific approved indication/method-of-use the patent claims, formatted 'U-####' (e.g. 'U-141'); the code maps to an indication phrase in FDA's separate use-code dictionary (not in this table). Empty string '' (NEVER null) = no use code = a drug-substance or drug-product (compound/formulation) patent rather than a method-of-use patent; '' accounts for 11,807 of 28,168 is_current rows (42%). Part of the natural key. | | patent_expire_date_text | string | Patent expiration date as a human text string in 'Mon D, YYYY' format (e.g. 'Aug 24, 2026'); never null/empty. THIS IS THE KEY ECONOMIC FIELD — it dates when patent protection ends (loss-of-exclusivity). Stored as text, so must be parsed to a real date for comparisons. *PED rows carry the extended (later) date. Already-past dates appear because expired patents are retained via the last-seen is_current logic. | | drug_substance_flag | boolean | Boolean presence flag: true = FDA flagged this as a drug-substance (active-ingredient/compound) patent. TRUE-or-NULL only (4,622 true / 23,546 NULL / 0 false on is_current). NULL means 'not a substance patent' (effectively false), NOT unknown/missing. | | drug_product_flag | boolean | Boolean presence flag: true = FDA flagged this as a drug-product (formulation/composition) patent. TRUE-or-NULL only (12,940 true / 15,228 NULL / 0 false on is_current). NULL = 'not a product patent' (effectively false), not missing. A patent can be flagged both substance and product. | | delist_flag | boolean | Boolean presence flag: true = the sponsor has REQUESTED that this patent be delisted from the Orange Book. TRUE-or-NULL only and rare (223 true / 27,945 NULL / 0 false on is_current). NULL = no delist request. Material signal: a delist-requested patent may no longer block generics. | | submission_date_text | string | Text date ('Mon D, YYYY') the patent/use-code information was submitted to FDA; null for 5,365 of 28,168 is_current rows (older listings predate FDA's capture of this field). Stored as text. | | observed_period | date | Date the FDA snapshot represents; equals effective_period_start in every row. One of 18 quarterly snapshot dates 2021-03-01 .. 2026-04-01. | | asserted_at | date | Date Vlada parsed/loaded that snapshot (a few days to ~5 weeks after observed_period; e.g. 2026-04-01 snapshot asserted 2026-05-08). One value per snapshot. Use for lineage, not as the data effective date. | | effective_period_start | date | Snapshot effective date — the PRIMARY time dimension and partition. Equals observed_period. 18 distinct quarterly values 2021-03-01 .. 2026-04-01. Filter to the MAX value (2026-04-01) to get the actual current Orange Book. | | effective_period_end | date | Snapshot end date; ALWAYS equals effective_period_start (0 rows differ). These are point-in-time snapshots, not validity ranges — do not interpret as an interval. | | cms_vintage_sequence | int | Provenance sequence integer; constant value 1 for 100% of rows. The 'cms_' prefix is a misnomer inherited from the drug-silver schema template — this is FDA data, not CMS. Carries no information here. | | parse_revision | int | Parser revision number; constant 1 for 100% of rows. Would increment if data were re-parsed with a newer parser. No information here. | | parser_artifact_hash | string | SHA-256 of the parser code/artifact that produced the row, for reproducibility lineage. Constant per parse generation (single value observed). | | source_url | string | Origin URL of the source file; constant 'https://www.fda.gov/media/76860/download' (the FDA Electronic Orange Book ZIP) for 100% of rows. | | sha256_content_hash | string | SHA-256 of the source ZIP file content for that snapshot. 18 distinct values = one per snapshot; immutable content fingerprint for provenance/dedup. | | source_id | string | Logical source identifier; constant 'fda_orange_book' for 100% of rows. | | is_current | boolean | SCD2 'latest-known-state' flag, NOT 'in the current Orange Book file'. true marks the most recent snapshot in which each natural key was last seen, so is_current=true = the union of every patent-use entry frozen at its last-observed values (28,168 rows). 7,056 of those are NOT in the latest 2026-04-01 file (delisted/dropped patents retained at last-seen). The latest snapshot (2026-04-01, 21,112 rows) is 100% is_current. Keys are globally unique on is_current=true. | | bronze_object_key | string | S3 key of the raw bronze ZIP this row was extracted from (e.g. 'drug/bronze/fda_orange_book/2026-04-01/...EOBZIP_2026_04.zip'). 18 distinct = one source file per snapshot. | | s3_version_id | string | S3 object version id of the bronze file for immutable lineage. 18 distinct (one per snapshot). | | vintage_tag | string | Vintage label; constant 'none' for 100% of rows. Unused in this table. | | drug_source_version_id | string | Drug-spine source version id; NULL for 100% of rows (never populated in this table). Do not rely on it for joins/filters. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_orange_book_patent WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_orange_book_patent")` first. # Part D indication-based coverage (CMS SPUF member), 2020-Q1 to 2026-Q2 `drug_silver.fact_part_d_indication_based_coverage` · Drugs and formularies · status live · 10,669 rows The quarterly SPUF's indication-based coverage member: the drugs a Part D plan covers only for listed FDA indications, with each indication, 2020-Q1 onward. 2026-Q2: 397 rows, 31 plans, 8 RxCUIs. **Grain.** One row per (report_quarter, contract_id, plan_id, rxcui, disease). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | rxcui | string | | | disease | string | | | report_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_part_d_indication_based_coverage WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_indication_based_coverage")` first. # Part D insulin beneficiary cost sharing (CMS SPUF member), 2023-Q4 to 2026-Q2 `drug_silver.fact_part_d_insulin_cost_share` · Drugs and formularies · status live · 441,006 rows The quarterly SPUF's insulin beneficiary cost file: per Part D plan, tier and days-supply code, the insulin copay or coinsurance at preferred / standard retail and mail-order pharmacies, 2023-Q4 onward. 2026-Q2: 43,057 rows for 5,496 plans; the 30-day preferred-retail copay tops out at $35. **Grain.** One row per (report_quarter, contract_id, plan_id, segment_id, tier, days_supply). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | tier | int | | | days_supply | int | | | copay_amt_pref_insln | double | | | copay_amt_nonpref_insln | double | | | copay_amt_mail_pref_insln | double | | | copay_amt_mail_nonpref_insln | double | | | coin_amt_pref_insln | double | | | coin_amt_nonpref_insln | double | | | coin_amt_mail_pref_insln | double | | | coin_amt_mail_nonpref_insln | double | | | report_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_part_d_insulin_cost_share WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_insulin_cost_share")` first. # Part D pharmacy networks and dispensing fees, CMS SPUF member, 2019-Q1 to 2026-Q3 `drug_silver.fact_part_d_pharmacy_network` · Drugs and formularies · status live · 10,248,730,900 rows CMS quarterly Part D pharmacy network membership, preferred retail/mail flags, in-area flag, floor price and brand/generic/selected-drug dispensing fees by plan and pharmacy. 31 quarters, including 306,634,467 rows in 2026-Q3. **Grain.** One row per (report_quarter, contract_id, plan_id, segment_id, pharmacy_number). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | pharmacy_number | string | | | pharmacy_zipcode | string | | | preferred_status_retail | boolean | | | preferred_status_mail | boolean | | | pharmacy_retail | boolean | | | pharmacy_mail | boolean | | | in_area_flag | int | | | floor_price | double | | | brand_dispensing_fee_30 | double | | | brand_dispensing_fee_60 | double | | | brand_dispensing_fee_90 | double | | | generic_dispensing_fee_30 | double | | | generic_dispensing_fee_60 | double | | | generic_dispensing_fee_90 | double | | | selected_dispensing_fee_30 | double | | | selected_dispensing_fee_60 | double | | | selected_dispensing_fee_90 | double | | | report_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_part_d_pharmacy_network WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_pharmacy_network")` first. # Part D plan cost-share (CMS SPUF) `drug_silver.fact_part_d_plan_cost_share` · Drugs and formularies · status live · 4,939,689 rows Beneficiary cost-share fact from CMS SPUF — copay/coinsurance by coverage phase x tier x days_supply. The fact stores cost as cost_type_pref (CMS enum: 1=copay/dollar, 2=coinsurance/fraction) + cost_amt_pref plus min/max and preferred/non-preferred/mail-order variants (see FACT_PART_D_PLAN_COST_SHARE_SCHEMA). coverage_level int maps (per CMS SPUF Tech Notes) 0=pre_initial/deductible, 1=initial_coverage, 2=coverage_gap (donut hole), 3=catastrophic. Carries tier_specialty_yn, ded_applies_yn, and a methodology_era stamp. **Grain.** One row per (contract_id, plan_id, segment_id, coverage_level, tier, days_supply, report_quarter). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | coverage_level | int | | | tier | int | | | days_supply | int | | | report_quarter | string | | | cost_type_pref | int | | | cost_amt_pref | double | | | cost_min_amt_pref | double | | | cost_max_amt_pref | double | | | cost_type_nonpref | int | | | cost_amt_nonpref | double | | | cost_min_amt_nonpref | double | | | cost_max_amt_nonpref | double | | | cost_type_mail_pref | int | | | cost_amt_mail_pref | double | | | cost_min_amt_mail_pref | double | | | cost_max_amt_mail_pref | double | | | cost_type_mail_nonpref | int | | | cost_amt_mail_nonpref | double | | | cost_min_amt_mail_nonpref | double | | | cost_max_amt_mail_nonpref | double | | | tier_specialty_yn | boolean | | | ded_applies_yn | boolean | | | methodology_era | 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_part_d_plan_cost_share WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_cost_share")` first. # Part D tier coverage in the coverage gap (GAP_COV_TIER), CMS SPUF sidecar, 2019-Q1 to 2024-Q3 `drug_silver.fact_part_d_plan_cost_share_gap_coverage` · Drugs and formularies · status live · 3,933,149 rows Whether each cost-sharing tier of a Part D plan is covered in the coverage gap: gap_cov_tier 1 = fully covered, 2 = partially covered, 3 = not covered (PUFRecordLayout-2024), from the GAP_COV_TIER field of the quarterly SPUF beneficiary cost file, which the original SPUF parser never read. A sidecar of drug_silver.fact_part_d_plan_cost_share: join on (contract_id, plan_id, segment_id, coverage_level, tier, days_supply, report_quarter) to the parent's is_current = true rows (in vw_fact_part_d_plan_cost_share_v3 the days_supply column is days_supply_code). Every sidecar row joins exactly one parent row and every parent row in 2019-Q1..2024-Q3 has one. 3,933,149 rows in 23 quarters: 753,954 fully, 139,770 partially, 3,039,425 not covered, 0 NULL (Athena 0f3b8f11). **Grain.** One row per (report_quarter, contract_id, plan_id, segment_id, coverage_level, tier, days_supply), the key of drug_silver.fact_part_d_plan_cost_share. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | coverage_level | int | | | tier | int | | | days_supply | int | | | gap_cov_tier | int | | | report_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_part_d_plan_cost_share_gap_coverage WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_cost_share_gap_coverage")` first. # Part D plan beneficiary cost sharing, monthly (CMS) `drug_silver.fact_part_d_plan_cost_share_monthly` · Drugs and formularies · status live · 15,305,647 rows Per Part D plan, coverage level, tier and days-supply code: the copay or coinsurance at preferred / standard retail and mail-order pharmacies, specialty-tier and deductible flags, every monthly edition 2019-01..2026-09. 2026-09: 172,549 rows. **Grain.** One row per (release_month, contract_id, plan_id, segment_id, coverage_level, tier, days_supply). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | coverage_level | int | | | tier | int | | | days_supply | int | | | release_month | string | | | contract_year | int | | | cost_type_pref | int | | | cost_amt_pref | double | | | cost_min_amt_pref | double | | | cost_max_amt_pref | double | | | cost_type_nonpref | int | | | cost_amt_nonpref | double | | | cost_min_amt_nonpref | double | | | cost_max_amt_nonpref | double | | | cost_type_mail_pref | int | | | cost_amt_mail_pref | double | | | cost_min_amt_mail_pref | double | | | cost_max_amt_mail_pref | double | | | cost_type_mail_nonpref | int | | | cost_amt_mail_nonpref | double | | | cost_min_amt_mail_nonpref | double | | | cost_max_amt_mail_nonpref | double | | | tier_specialty_yn | boolean | | | ded_applies_yn | boolean | | | methodology_era | 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_part_d_plan_cost_share_monthly WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_cost_share_monthly")` first. # Part D plan drug pricing (CMS SPUF) `drug_silver.fact_part_d_plan_drug_pricing` · Drugs and formularies · status live · 1,593,644,611 rows Plan x NDC unit-cost fact from CMS SPUF — THE BIG ONE (~43M-61M rows/quarter). Columns: contract_id, plan_id, segment_id, ndc11, days_supply, report_quarter, unit_cost (USD), methodology_era, plus is_current. The unit-cost / pricing-trend / plan-to-plan variance axis. Resolve brand_name -> NDC via dim_drug_label (uncatalogued shared label dim) and plan identity via dim_part_d_plan. **Grain.** One row per (contract_id, plan_id, segment_id, ndc11, days_supply, report_quarter). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | ndc11 | string | | | days_supply | int | | | report_quarter | string | | | unit_cost | double | | | methodology_era | 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_part_d_plan_drug_pricing WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_drug_pricing")` first. # Part D plan initial coverage limit (ICL), CMS SPUF sidecar, 2019-Q1 to 2024-Q3 `drug_silver.fact_part_d_plan_initial_coverage_limit` · Drugs and formularies · status live · 127,086 rows Each Part D plan segment's initial coverage limit (ICL, dollars): the total drug spend at which the initial coverage phase ends and the coverage gap (donut hole) begins, from the ICL field of the quarterly SPUF plan information file, which the original SPUF parser never read. A sidecar of drug_silver.dim_part_d_plan: join on (contract_id, plan_id, segment_id, report_quarter) to the parent's is_current = true rows; every sidecar row joins exactly one parent row and every parent row in 2019-Q1..2024-Q3 has one. 127,086 rows in 23 quarters; icl runs $2,750 to $11,000 (Athena 693d78a1). **Grain.** One row per (report_quarter, contract_id, plan_id, segment_id), the key of drug_silver.dim_part_d_plan. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | icl | double | | | report_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_part_d_plan_initial_coverage_limit WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_initial_coverage_limit")` first. # Part D plan service area (CMS SPUF) `drug_silver.fact_part_d_plan_service_area` · Drugs and formularies · status live · 2,387,499 rows Plan x geography fact from CMS SPUF — which counties each Part D plan serves. Split out of dim_part_d_plan on 2026-05-17 (Gate A.5) because a plan serves many counties and the source row is plan x service-area, not plan alone. Columns: contract_id, plan_id, segment_id, state, county_code (FIPS), report_quarter, plus is_current. The geographic-filter axis for plan_landscape. **Grain.** One row per (contract_id, plan_id, segment_id, state, county_code, report_quarter). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | state | string | | | county_code | string | | | report_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_part_d_plan_service_area WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_service_area")` first. # Part D plan service area (geographic locator), monthly (CMS) `drug_silver.fact_part_d_plan_service_area_monthly` · Drugs and formularies · status live · 7,581,448 rows For every local MA-PD plan segment, the states and SSA counties it serves, in every monthly edition 2019-01..2026-09. 2026-09: 111,899 rows, 5,123 plan segments, 3,155 counties. **Grain.** One row per (release_month, contract_id, plan_id, segment_id, state, county_code). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | state | string | | | county_code | string | | | release_month | string | | | contract_year | int | | | 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_part_d_plan_service_area_monthly WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_plan_service_area_monthly")` first. # Medicare Part D Prescriber PUF (prescribing by provider × drug × year) `drug_silver.fact_part_d_prescriber` · Drugs and formularies · status live · 103,105,990 rows The CMS Medicare Part D Prescriber public-use file — prescribing volume and cost per prescriber, drug, and year: total_claims, 30-day fills, day supply, total_drug_cost_usd, beneficiaries, prescriber type/specialty/geography. The provider-level drug-prescribing lens (~103M rows) — outlier prescribing, drug-mix by specialty, brand-vs-generic behavior. **Grain.** One row per (prescriber NPI x brand_name x generic_name x data_year). VERIFIED: 103,105,990 rows = 103,105,990 distinct values of (prescriber_npi, brand_name, generic_name, data_year), both with and without the is_current filter. BOTH brand_name and generic_name are required: the same (npi, brand, year) appears with multiple generic strings (192,828 such groups) and the same (npi, generic, year) appears with multiple brands (4,687,328 such groups), so neither alone is unique. Covers 1,339,949 distinct prescribers across 4 data years (2020-2023), ~25-27M rows per year. **How to use it.** Example: total Medicare Part D gross drug cost and claim volume for a drug by specialty/state in a year. SELECT prescriber_state, sum(total_drug_cost_usd) AS gross_cost, sum(total_claims) AS claims, count(DISTINCT prescriber_npi) AS prescribers FROM fact_part_d_prescriber WHERE is_current AND data_year=2023 AND brand_name='Eliquis' AND prescriber_type='Cardiology' GROUP BY prescriber_state ORDER BY gross_cost DESC. Answers which states' cardiologists drive the most Part D spend on Eliquis and at what volume. Sum claims/cost, not beneficiaries (suppressed in 57% of rows). **Traps.** - The grain needs BOTH brand_name and generic_name -- it is NOT (npi, generic, year) [only 97.6M distinct] nor (npi, brand, year) [only 102.9M distinct]. Only (npi, brand, generic, year) hits 103,105,990 = exact row count. Dropping either column double-counts a prescriber's spend. - Claims floor = 11, and suppressed combos are DELETED not flagged: min(total_claims)=11 and 0 rows have <11. A prescriber-drug pair absent from the table means it was either never prescribed OR had <=10 claims -- you cannot tell which, and absence must NOT be read as zero. This biases per-prescriber and long-tail-drug totals downward. - Two independent suppression systems on the >=65 block: ge65_suppression_flag (non-null => ALL five ge65_* metrics NULL: '*'=<=10 benes, '#'=count 11-110) AND a separate ge65_bene_suppression_flag that NULLs only ge65_total_beneficiaries. NULL in any ge65 metric = redacted, never zero. The non-suppressed total_* metrics (claims/30day_fills/day_supply/drug_cost) are ALWAYS populated. - total_beneficiaries (the all-ages bene count) is NULL in 57% of rows due to 1-10-beneficiary privacy suppression -- you cannot reliably sum beneficiary counts, only claims/fills/cost. Beneficiary-based denominators are heavily missing. - total_drug_cost_usd is GROSS pharmacy cost (ingredient + dispensing fee + tax), NOT the Medicare-paid amount and NOT net of manufacturer rebates -- do not treat it as Medicare program net spend or as a negotiated/contracted price. - Four columns (data_year, observed_period, effective_period_start, effective_period_end) all encode the same single calendar year; one source file per year. is_current is 100% true and asserted_at is ingestion date (2026-05), so none of the snapshot/provenance columns subdivide the grain. drug_source_version_id is entirely NULL and vintage_tag is the constant 'none'. - prescriber_type is per-file/per-year derived (ranked Claim-Specialty > NPPES-Specialty > NPPES-Taxonomy via prescriber_type_source), so the SAME NPI can carry different specialties across years -- do not treat prescriber_type as a stable attribute of the NPI. | column | type | meaning | |---|---|---| | prescriber_npi | string | 10-digit National Provider Identifier of the prescriber. Always present. 1,339,949 distinct. 17 rows are organization NPIs (prescriber_first_name NULL). Part of the grain key. | | brand_name | string | Drug brand/trade name as labeled by CMS (e.g. 'Eliquis'). 3,516 distinct. For generically-dispensed drugs CMS sets brand_name = generic_name (70,791,854 rows = 69%). Part of the grain key. | | generic_name | string | Active-ingredient / generic name (e.g. 'Apixaban' for Eliquis). 1,947 distinct. Part of the grain key. A single brand can map to multiple generic strings and vice-versa, which is why both are in the key. | | data_year | int | Integer calendar year the prescribing activity occurred (2020, 2021, 2022, 2023). Part of the grain key. Maps 1:1 to one source file per year. | | prescriber_last_org_name | string | Prescriber last name, or organization name for org NPIs. Descriptive only; not part of the key. | | prescriber_first_name | string | Prescriber first name. NULL for the 17 organization-NPI rows. Descriptive only. | | prescriber_city | string | City of the prescriber's primary practice location (from NPPES). Descriptive only. | | prescriber_state | string | 2-letter state/territory of practice. Always present. 63 distinct values including territories (PR=1.34M rows, VI, GU) and special codes: 'ZZ' (foreign, 4,359), 'XX' (unknown, 2,479), and military 'AA'/'AE'/'AP'. Top states CA/FL/TX/NY/PA. | | prescriber_state_fips | string | Numeric FIPS state code matching prescriber_state. 61 distinct (vs 63 states) because some territory/special codes lack or share a numeric FIPS. | | prescriber_type | string | Prescriber specialty (e.g. 'Family Practice', 'Internal Medicine', 'Nurse Practitioner'). NULL in only 71 rows. Derived per-file, so the same NPI can show different specialties across years. | | prescriber_type_source | string | Provenance of prescriber_type: 'Claim-Specialty' (90%, assigned from claims), 'NPPES-Specialty' (8%), or 'NPPES-Taxonomy' (2%) fallback when claim specialty is unavailable. | | total_claims | int | Total Part D claim count (incl. refills) for this prescriber-drug-year. ALWAYS populated (0 nulls). CMS suppression floor: minimum value is 11 -- any combo with <=10 claims is omitted from the file entirely (NOT flagged), so absence != zero. | | total_30day_fills | double | Claims normalized to 30-day equivalents (a 90-day script counts ~3). Double. Always >= total_claims (0 violations observed). Always populated. | | total_day_supply | int | Sum of days-supply across all claims for this prescriber-drug-year. Always populated. | | total_drug_cost_usd | double | Total GROSS drug cost in USD (ingredient cost + dispensing fee + sales tax = amount paid to pharmacy; NOT Medicare/patient-paid, NOT net of rebates). Always populated. Range $0 to $81.78M, median ~$668, mean ~$6,894. Core COST column. | | total_beneficiaries | int | Distinct Part D beneficiaries who received the drug from this prescriber. NULL in 58,606,644 rows (57%) -- CMS SUPPRESSES when 1-10 beneficiaries. NULL means 'suppressed small count', not zero. Main suppressed column on the row. | | ge65_total_claims | int | Subset of total_claims for beneficiaries aged >=65. NULL whenever ge65_suppression_flag is non-null (46M rows). Always <= total_claims (0 violations). | | ge65_total_30day_fills | double | 30-day-equivalent fills for the >=65 subgroup. NULL when ge65_suppression_flag is set. | | ge65_total_drug_cost_usd | double | Total gross drug cost (USD) for the >=65 subgroup. NULL when ge65_suppression_flag is set. | | ge65_total_day_supply | int | Day supply for the >=65 subgroup. NULL when ge65_suppression_flag is set. | | ge65_total_beneficiaries | int | Distinct >=65 beneficiaries. NULL whenever EITHER ge65_suppression_flag OR ge65_bene_suppression_flag is set; populated in only 11,147,609 rows. | | ge65_suppression_flag | string | Controls the WHOLE >=65 metric block. NULL=metrics shown (57.1M); '*'=group <=10 benes, entire >=65 block redacted (13.0M); '#'=counts 11-110, >=65 metrics redacted (33.0M). When non-null, all five ge65_* fields are NULL. | | ge65_bene_suppression_flag | string | Separately gates ONLY ge65_total_beneficiaries. NULL=shown (11.1M); '*'=1-10 benes suppressed (62.8M); '#'=11-110 suppressed (29.2M). Can suppress the >=65 bene count even when the rest of the >=65 block is visible. | | observed_period | date | Date the activity was observed = January 1 of data_year. Redundant with data_year (one of four temporal columns encoding the same year). | | asserted_at | date | Vlada/CMS ingestion (assertion) date, NOT data time: 2026-05-16 for DY2023, 2026-05-19 for DY2020-2022. When this batch was loaded. | | effective_period_start | date | Start of the reporting period = Jan 1 of data_year (2020/2021/2022/2023-01-01). Profiler's 'time column'; same year as data_year. | | effective_period_end | date | End of reporting period = Dec 31 of data_year. With start, defines the full calendar-year window. | | cms_vintage_sequence | int | Vintage/version sequence of the CMS release. Constant = 1 (only one vintage loaded; no restated versions present). | | parse_revision | int | Parser revision number. Constant = 1. | | parser_artifact_hash | string | SHA-256 of the parser artifact/code that produced the rows. 3 distinct values (~one parser run per yearly batch). Provenance. | | source_url | string | Public CMS download URL of the source CSV (e.g. data.cms.gov/.../MUP_DPR_RY24_P04_V10_DY22_NPIBN.csv). One distinct URL per data_year. | | sha256_content_hash | string | SHA-256 of the raw source file content. One distinct value per data_year; pins the exact file the rows came from. | | source_id | string | Logical source identifier, constant 'medicare_part_d_prescriber_by_drug' for every row. | | is_current | boolean | Snapshot flag for the bitemporal model. 100% TRUE here -- NO superseded rows, so it never disambiguates the grain today, but filter is_current=true defensively for future restatements. | | bronze_object_key | string | S3 key of the bronze (raw landed) object. 4 distinct values (one per year). Lineage to the bronze layer. | | s3_version_id | string | S3 object version id of the bronze object. Lineage pin to the exact stored bytes. | | vintage_tag | string | Human vintage label. Constant literal string 'none' for all rows (no special vintage tagging in use). | | drug_source_version_id | string | Drug-source version identifier. 100% NULL in this table -- unused column. | Tools that read it: excluded_prescriber_payment_screen Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_part_d_prescriber WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_part_d_prescriber")` first. # NLM RxClass — drug → class membership `drug_silver.fact_rxclass_membership` · Drugs and formularies · status live RxClass membership edges — maps each RxNorm concept (RxCUI + name + term type) to its drug class(es), with the relationship + source. Bridges NDC/drug (via RxCUI) to clinical/therapeutic classes for class-level analysis. **Grain.** One row per (class_id, rxcui) pair — i.e. one row for each membership of a single RxNorm drug ingredient in a single drug class. 35,389 rows = 35,389 distinct class_id×rxcui pairs (verified). A drug appears in as many rows as it has classes (up to 16+); a class appears in as many rows as it has member drugs. **How to use it.** To roll drug prices up to a therapeutic class or mechanism: join a price fact (e.g. ASP/NADAC by rxcui) to this table on rxcui, then GROUP BY class_id/class_type. Example — list all RxNorm ingredients in ATC subgroup L01 (antineoplastics): SELECT DISTINCT rxcui, rxnorm_name FROM fact_rxclass_membership WHERE class_type='ATC1-4' AND class_id='L01'; this returns the 277 drugs that define the 'chemo' cohort you would then price. Use rela='DIRECT' to restrict to primary assignments. Remember the rxcui join fans out across classes, so deduplicate/aggregate prices before summing. **Traps.** - MINIMAL GRAIN is just (class_id, rxcui) — 35,389 distinct = full row count. The profiler's reported 6-column key (adding source_id, bronze_object_key, s3_version_id, drug_source_version_id) is a SUPERSET inflated by 4 constant/NULL provenance columns; they add zero discrimination. Do not key or join on them. - drug_source_version_id is 100% NULL — never use it as a key or join column despite its name and its appearance in the auto-profiler key. - This is a single static snapshot: every temporal/provenance column (observed_period, asserted_at, effective_period_start='2026-06-03', effective_period_end='2099-12-31', cms_vintage_sequence=1, vintage_tag) holds exactly one value, and is_current is true for 100% of rows (no is_current=false rows exist). There is NO time series and is_current-filtering is currently a no-op — but it is bitemporally structured so future reloads will add vintages. - Many-to-many fan-out is intentional and large: a drug (rxcui) can be in 16+ classes and one class can have thousands of drugs. Joining this table to a price/fact table on rxcui MULTIPLIES rows by the number of classes — aggregate (e.g. price first, then roll up by class_id) or you will double-count spend. - class_id is a MULTI-SCHEME code: ATC1-4 rows use short ATC alphanumeric codes (incl. pseudo-code '0' = the 'all drugs' root bucket holding all 3,112 ATC drugs) while EPC/MOA rows use NDF-RT identifiers like 'N0000175413'. Always interpret class_id together with class_type; the same string space is not shared across schemes. Note 'ATC1-4' means levels 1-4 only (no level-5 chemical-substance codes). - rela_source is fully redundant with class_type (ATC1-4->ATC, EPC/MOA->DAILYMED) and class_type is fully determined by class_id — treat class_type/rela_source as derived labels, not independent filter dimensions. Use rela='DIRECT' to get only primary class assignments vs the larger INDIRECT (hierarchy-inferred) set. | column | type | meaning | |---|---|---| | class_id | string | The drug-class identifier (the class side of the membership). Code SYSTEM depends on class_type: for ATC1-4 it is an ATC code — 1 char = anatomical main group (e.g. 'A','N','L','J','C'), 3 chars = therapeutic subgroup (e.g. 'L01'), 4-5 chars = deeper ATC level (no level-5 substance codes present), plus a pseudo-code '0' = the ATC root/'all drugs' bucket (3,112 members, the single largest class); for EPC and MOA it is an NDF-RT/NUI identifier of the form 'N0000175413'. 2,295 distinct classes. NOT unique on its own. | | class_type | string | Which classification system the class belongs to. Exactly 3 values: 'ATC1-4' (WHO Anatomical Therapeutic Chemical, levels 1-4; 17,783 rows / 1,039 classes), 'EPC' (FDA Established Pharmacologic Class; 10,584 rows / 677 classes), 'MOA' (Mechanism of Action; 7,022 rows / 579 classes). Strictly functionally determined by class_id (one class_id maps to exactly one class_type) — it is a derived attribute, not part of the key. | | rxcui | string | RxNorm Concept Unique Identifier of the drug (the drug side of the membership), stored as a numeric string e.g. '2555'=cisplatin. 4,159 distinct drugs. These are ingredient-level concepts (see rxnorm_tty: IN/PIN/MIN), the join key to other drug_silver price/identity tables. NOT unique on its own. | | rxnorm_name | string | Human-readable RxNorm name of the rxcui, e.g. 'cisplatin', 'doxorubicin', 'dutasteride / tamsulosin'. Functionally determined by rxcui (1:1). Convenience label, not a key. | | rxnorm_tty | string | RxNorm term type of the rxcui — the granularity of the drug concept. 3 values: 'IN' = ingredient (32,404 rows, the bulk), 'PIN' = precise ingredient (2,149), 'MIN' = multiple ingredient / combination drug (836). Determined by rxcui. Tells you the membership is at ingredient level, not packaged-product (NDC) level. | | rela | string | Relationship directness of the drug-to-class link as reported by RxClass. 2 values: 'INDIRECT' (27,568) = the drug is assigned to the class via the RxNorm hierarchy/transitive relationship; 'DIRECT' (7,821) = the class is asserted directly on the drug. Functionally determined by (class_id, rxcui). Filter to rela='DIRECT' if you want only primary/explicit class assignments. | | rela_source | string | Source pipeline RxClass used to derive the membership. 2 values, strictly determined by class_type: 'ATC' (17,783) for all ATC1-4 rows; 'DAILYMED' (17,606) for all EPC and MOA rows (FDA structured-product-label / DailyMed source). Redundant with class_type — not an independent dimension. | | observed_period | date | Date the data was observed/snapshotted. Constant '2026-06-03' for every row (single snapshot). Provenance/bitemporal field, not analytical. | | asserted_at | date | Date this assertion was recorded into the silver table. Constant '2026-06-03'. Provenance. | | effective_period_start | date | Start of the bitemporal validity window. Constant '2026-06-03'. Provenance; despite being the profiler's 'time column', it carries no real history (1 distinct value). | | effective_period_end | date | End of the validity window. Constant '2099-12-31' = open/current sentinel (this snapshot is the live one). Provenance. | | cms_vintage_sequence | int | Vintage ordinal for this source. Constant 1 (only one vintage loaded). Provenance; would increment on a re-load. | | parse_revision | int | Parser revision number. Constant 1. Provenance. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced these rows. Single constant value. Provenance/lineage. | | source_url | string | Origin endpoint. Constant 'https://rxnav.nlm.nih.gov/REST/rxclass' (NIH/NLM RxNav RxClass REST API). Confirms the authoritative source. | | sha256_content_hash | string | SHA-256 of the raw bronze source content. Single constant value (one source file). Provenance/dedup key. | | source_id | string | Logical source identifier. Constant 'nih_rxclass'. Provenance; the profiler listed it in the 'unique key' only because it is constant (1 distinct), not because it discriminates rows. | | is_current | boolean | Snapshot-currency flag. Constant true for ALL 35,389 rows; zero rows have is_current=false. The table holds only the current vintage — superseded snapshots are not retained here — so filtering on is_current is a no-op today (but keep it for forward compatibility). | | bronze_object_key | string | S3 key of the bronze source object, e.g. 'drug/bronze/nih_rxclass/2026-06-03/...json'. Single constant value. Provenance; the profiler put it in the 'unique key' only because it is constant. | | s3_version_id | string | S3 object version id of the bronze file. Single constant value. Provenance. | | vintage_tag | string | Human vintage label, constant 'rxclass_2026-06-03'. Provenance; the readable handle for this snapshot. | | drug_source_version_id | string | 100% NULL across all 35,389 rows (0 distinct). An unpopulated lineage passthrough. TRAP: the profiler included it in its 'verified unique key', but a column that is entirely NULL cannot be part of a real grain — ignore it. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_rxclass_membership WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_rxclass_membership")` first. # Part D plan dimension, monthly (CMS), plan type from CMS's organization type `drug_silver.vw_dim_part_d_plan_monthly_v3` · Drugs and formularies · status live · 499,050 rows Every MA-PD and PDP plan segment in every monthly edition 2019-01..2026-09: names, formulary, premium, deductible, region codes, SNP type, and plan_type from CMS's organization type. 2026-09: 5,518 segments (5,141 MA-PD, 10 COST, 367 PDP). **Grain.** One row per (release_month, contract_id, plan_id, segment_id). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | release_month | string | | | contract_year | int | | | contract_name | string | | | plan_name | string | | | formulary_id | string | | | premium | double | | | deductible | double | | | ma_region_code | string | | | pdp_region_code | string | | | snp | string | | | plan_suppressed_yn | boolean | | | plan_type | varchar(5) | | | cms_organization_type | string | | | plan_type_source | varchar(24) | | | contract_id_prefix | string | | | plan_type_legacy | 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.vw_dim_part_d_plan_monthly_v3 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_dim_part_d_plan_monthly_v3")` first. # Part D plan dimension, monthly (CMS), plan type from CMS's organization type, names as CMS wrote them `drug_silver.vw_dim_part_d_plan_monthly_v4` · Drugs and formularies · status live · 499,050 rows Every MA-PD and PDP plan segment in every monthly edition 2019-01..2026-09: names, formulary, premium, deductible, region codes, SNP type, and plan_type from CMS's organization type. 2026-09: 5,518 segments (5,141 MA-PD, 10 COST, 367 PDP). Plan names carry CMS's accented letters (v4). **Grain.** One row per (release_month, contract_id, plan_id, segment_id). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | release_month | string | | | contract_year | int | | | contract_name | string | | | plan_name | string | | | formulary_id | string | | | premium | double | | | deductible | double | | | ma_region_code | string | | | pdp_region_code | string | | | snp | string | | | plan_suppressed_yn | boolean | | | plan_type | varchar(5) | | | cms_organization_type | string | | | plan_type_source | varchar(24) | | | contract_id_prefix | string | | | plan_type_legacy | 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 | | | plan_name_legacy | string | | | plan_name_source | varchar(20) | | Query it: `query_substrate` with `SELECT ... FROM drug_silver.vw_dim_part_d_plan_monthly_v4 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_dim_part_d_plan_monthly_v4")` first. # Part D plan dimension (CMS SPUF), plan type from CMS's organization type `drug_silver.vw_dim_part_d_plan_v3` · Drugs and formularies · status live · 166,440 rows The SPUF Part D plan dim (every column of drug_silver.dim_part_d_plan) with plan_type from CMS's own organization type for the contract, read from CMS Monthly Enrollment by Contract/Plan (medicare_silver.enrollment_monthly_plan): 'MA-PD' (Local CCP, Regional CCP, PFFS, MSA), 'COST' (1876 Cost, HCPP - 1833 Cost), 'DEMO' (Demo: Medicare-Medicaid Plans), 'PACE' (National PACE), 'PDP'. cms_organization_type carries CMS's wording verbatim; plan_type_source says 'cms_contract_file' or, where CMS's contract file has no row for the contract, 'contract_prefix_fallback' (the record layout's H/R = MA, S = PDP rule); contract_id_prefix is the letter alone; plan_type_legacy keeps the stored value, which called every local MA-PD plan 'OTHER'. **Grain.** One row per (contract_id, plan_id, segment_id, report_quarter) among is_current rows; 0 duplicate keys, 166,440 rows = drug_silver.dim_part_d_plan (Athena 622fdb61-469e-4096-90b8-2719a68c363b). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_quarter | string | | | contract_name | string | | | plan_name | string | | | formulary_id | string | | | premium | double | | | deductible | double | | | ma_region_code | string | | | pdp_region_code | string | | | snp | string | | | plan_suppressed_yn | boolean | | | plan_type | varchar(5) | | | cms_organization_type | string | | | plan_type_source | varchar(24) | | | contract_id_prefix | string | | | plan_type_legacy | 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.vw_dim_part_d_plan_v3 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_dim_part_d_plan_v3")` first. # Part D plan dimension (CMS SPUF), plan type from CMS's organization type, names as CMS wrote them `drug_silver.vw_dim_part_d_plan_v4` · Drugs and formularies · status live · 166,440 rows The SPUF Part D plan dim (every column of drug_silver.dim_part_d_plan) with plan_type from CMS's own organization type for the contract, read from CMS Monthly Enrollment by Contract/Plan (medicare_silver.enrollment_monthly_plan): 'MA-PD' (Local CCP, Regional CCP, PFFS, MSA), 'COST' (1876 Cost, HCPP - 1833 Cost), 'DEMO' (Demo: Medicare-Medicaid Plans), 'PACE' (National PACE), 'PDP'. cms_organization_type carries CMS's wording verbatim; plan_type_source says 'cms_contract_file' or, where CMS's contract file has no row for the contract, 'contract_prefix_fallback' (the record layout's H/R = MA, S = PDP rule); contract_id_prefix is the letter alone; plan_type_legacy keeps the stored value, which called every local MA-PD plan 'OTHER'. Plan names carry CMS's accented letters (v4). **Grain.** One row per (contract_id, plan_id, segment_id, report_quarter) among is_current rows; 0 duplicate keys, 166,440 rows = drug_silver.dim_part_d_plan (Athena 622fdb61-469e-4096-90b8-2719a68c363b). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_quarter | string | | | contract_name | string | | | plan_name | string | | | formulary_id | string | | | premium | double | | | deductible | double | | | ma_region_code | string | | | pdp_region_code | string | | | snp | string | | | plan_suppressed_yn | boolean | | | plan_type | varchar(5) | | | cms_organization_type | string | | | plan_type_source | varchar(24) | | | contract_id_prefix | string | | | plan_type_legacy | 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 | | | plan_name_legacy | string | | | plan_name_source | varchar(20) | | Query it: `query_substrate` with `SELECT ... FROM drug_silver.vw_dim_part_d_plan_v4 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_dim_part_d_plan_v4")` first. # Part D formulary coverage, monthly (CMS), selected-drug flag only where CMS published it `drug_silver.vw_fact_drug_formulary_monthly_v2` · Drugs and formularies · status live · 130,452,180 rows Every Part D formulary's covered drugs (proxy NDC, RxCUI, tier, quantity limit, prior authorization, step therapy, negotiation-selected flag) in every monthly edition 2019-01..2026-09. 2026-09: 328 formularies, 1,129,364 rows, 12,424 selected-drug rows. **Grain.** One row per (release_month, formulary_id, ndc11). | column | type | meaning | |---|---|---| | formulary_id | string | | | formulary_version | int | | | contract_year | int | | | rxcui | string | | | ndc11 | string | | | release_month | string | | | tier_level_value | int | | | quantity_limit_yn | boolean | | | quantity_limit_amount | double | | | quantity_limit_days | int | | | prior_authorization_yn | boolean | | | step_therapy_yn | boolean | | | selected_drug_yn | boolean | | | selected_drug_yn_legacy | boolean | | | 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.vw_fact_drug_formulary_monthly_v2 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_fact_drug_formulary_monthly_v2")` first. # Part D formulary coverage (CMS SPUF), selected-drug flag only where CMS published it `drug_silver.vw_fact_drug_formulary_v2` · Drugs and formularies · status live · 43,982,692 rows Every column of drug_silver.fact_drug_formulary, with selected_drug_yn as CMS published it: the flag (Does this NDC represent one of the Part D drugs selected for negotiation under the Medicare Drug Price Negotiation Program?, PUFRecordLayout-2026 p.7) from 2025-Q4 on, NULL for 2019-Q1..2025-Q3, whose files carry no such column. selected_drug_yn_legacy keeps the stored FALSE. **Grain.** One row per (formulary_id, NDC11, report_quarter); the rows of drug_silver.fact_drug_formulary (43,982,692 on 2026-09-30, Athena fb131d6c-9b07-4531-9918-737b89902038; view minus table = 0, bbce86c6-7078-4783-a6d6-0c0027744f12). | column | type | meaning | |---|---|---| | formulary_id | string | | | formulary_version | int | | | contract_year | int | | | rxcui | string | | | ndc11 | string | | | report_quarter | string | | | tier_level_value | int | | | quantity_limit_yn | boolean | | | quantity_limit_amount | double | | | quantity_limit_days | int | | | prior_authorization_yn | boolean | | | step_therapy_yn | boolean | | | selected_drug_yn | boolean | | | selected_drug_yn_legacy | boolean | | | 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.vw_fact_drug_formulary_v2 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_fact_drug_formulary_v2")` first. # Medicare Part D Spending by Drug (PUF), the file's change and CAGR columns named for their window `drug_silver.vw_fact_drug_spending_part_d_v2` · Drugs and formularies · status live · 71,853 rows Part D spending by drug and manufacturer per data year, gross of rebates. file_chg_* / file_cagr_* are drug-level constants of the SOURCE FILE, as fractions, repeated on every data_year row: they do not describe the row's year. The change runs DY-1->DY. The CAGR runs from the drug's first year with data (file_cagr_from_year, 2020 for most RY26 drugs, later for drugs new to the market) to DY, over file_cagr_years years; file_cagr_from_year is NULL on 100 data_year-2019 rows whose start year is not held. 'Overall' manufacturer rows are the brand total; filter manufacturer_name or you double count. **Grain.** One row per (brand_name, generic_name, manufacturer_name, data_year); row for row drug_silver.fact_drug_spending_part_d (71,853 = 71,853 rows, total_spending_usd sums equal; Athena 3e7c390d). | column | type | meaning | |---|---|---| | brand_name | string | | | generic_name | string | | | manufacturer_name | string | | | data_year | int | | | total_manufacturers | int | | | total_spending_usd | double | | | total_dosage_units | double | | | total_claims | int | | | total_beneficiaries | int | | | avg_spend_per_dosage_unit_weighted_usd | double | | | avg_spend_per_claim_usd | double | | | avg_spend_per_beneficiary_usd | double | | | outlier_flag | boolean | | | file_data_year_end | int | | | file_chg_avg_spend_per_dosage_unit_frac | double | | | file_chg_from_year | int | | | file_chg_to_year | int | | | file_cagr_avg_spend_per_dosage_unit_frac | double | | | file_cagr_from_year | int | | | file_cagr_to_year | int | | | file_cagr_years | int | | | 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.vw_fact_drug_spending_part_d_v2 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_fact_drug_spending_part_d_v2")` first. # Part D plan cost share (CMS SPUF), days supply in days, era by contract year, catastrophic statutory-minimum tokens `drug_silver.vw_fact_part_d_plan_cost_share_v3` · Drugs and formularies · status live · 5,112,331 rows Quarterly SPUF beneficiary cost share by plan x coverage level x tier x days supply. days_supply_code is CMS's code (1=30, 2=90, 3=other, 4=60 days); days_supply_days is the days it means: filter and join pricing on days_supply_days. contract_year / methodology_era / ira_phase as the pricing view (a Q4 release carries the next contract year). cost_min_amt_*_code and cost_min_amt_*_basis carry CMS's '*' (generic statutory minimum) and '**' (brand statutory minimum) tokens where the catastrophic minimum cell printed a token instead of dollars (2020-Q2..2023-Q3). cost_share_lens reads this view from 2026-10-05. **Grain.** One row per (contract_id, plan_id, segment_id, coverage_level, tier, days_supply_code, report_quarter); row for row drug_silver.fact_part_d_plan_cost_share (5,112,331 = 5,112,331 rows, 30 of 30 quarters equal, no fan-out from the token join; every cost_type_pref / cost_amt_pref equal; Athena 948b3c7d, 00dc28ba). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | coverage_level | int | | | tier | int | | | days_supply_code | int | | | days_supply_days | int | | | report_quarter | string | | | contract_year | int | | | methodology_era | varchar(11) | | | ira_phase | varchar(26) | | | methodology_era_legacy | string | | | cost_type_pref | int | | | cost_amt_pref | double | | | cost_min_amt_pref | double | | | cost_max_amt_pref | double | | | cost_type_nonpref | int | | | cost_amt_nonpref | double | | | cost_min_amt_nonpref | double | | | cost_max_amt_nonpref | double | | | cost_type_mail_pref | int | | | cost_amt_mail_pref | double | | | cost_min_amt_mail_pref | double | | | cost_max_amt_mail_pref | double | | | cost_type_mail_nonpref | int | | | cost_amt_mail_nonpref | double | | | cost_min_amt_mail_nonpref | double | | | cost_max_amt_mail_nonpref | double | | | tier_specialty_yn | boolean | | | ded_applies_yn | boolean | | | 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 | | | cost_min_amt_pref_code | string | | | cost_min_amt_nonpref_code | string | | | cost_min_amt_mail_pref_code | string | | | cost_min_amt_mail_nonpref_code | string | | | cost_min_amt_pref_basis | varchar(25) | | | cost_min_amt_nonpref_basis | varchar(25) | | | cost_min_amt_mail_pref_basis | varchar(25) | | | cost_min_amt_mail_nonpref_basis | varchar(25) | | Query it: `query_substrate` with `SELECT ... FROM drug_silver.vw_fact_part_d_plan_cost_share_v3 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_fact_part_d_plan_cost_share_v3")` first. # Part D plan drug pricing (CMS SPUF), per-unit price with the CY2019 cost-per-fill set apart and the era by contract year `drug_silver.vw_fact_part_d_plan_drug_pricing_v2` · Drugs and formularies · status live · 1,647,406,675 rows Quarterly SPUF Plan Finder retail point-of-sale price per unit (not net of rebates), by plan x NDC x days supply (days). 2019-Q1..Q3 published only a cost per fill: unit_cost is NULL there and fill_cost_cy2019 holds it. contract_year is the plan year the release describes (a Q4 release carries the next year); methodology_era is pre_ira through CY2024 and ira_oop_cap from CY2025; 'pre_ira' means before the CY2025 benefit redesign, not untouched by the IRA (CY2023 insulin cap, CY2024 catastrophic cost share removed): filter on contract_year for those. ira_phase splits CY2025 (redesign) from CY2026 (first negotiated prices). unit_cost_legacy and methodology_era_legacy keep the stored values. **Grain.** One row per (contract_id, plan_id, segment_id, ndc11, days_supply, report_quarter, cms_vintage_sequence); row for row drug_silver.fact_part_d_plan_drug_pricing (1,647,406,675 = 1,647,406,675 rows over 30 of 30 quarters, 2019-Q1..2026-Q2; Athena 2d01f782). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | ndc11 | string | | | days_supply | int | | | report_quarter | string | | | unit_cost | double | | | fill_cost_cy2019 | double | | | unit_cost_basis | varchar(22) | | | unit_cost_legacy | double | | | contract_year | int | | | methodology_era | varchar(11) | | | ira_phase | varchar(26) | | | methodology_era_legacy | 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.vw_fact_part_d_plan_drug_pricing_v2 WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.vw_fact_part_d_plan_drug_pricing_v2")` first. # Medicare Part D Opioid Prescribing Rates by Geography, 2013-2024 `medicare_silver.fact_part_d_opioid_prescribing_geo` · Drugs and formularies · status live · 359,139 rows Part D opioid and long-acting opioid prescribing per year for the nation, states, counties and ZIP codes, with rural / urban breakouts: prescribers, opioid prescribers, claims and the published rates with 1- and 5-year changes. 2024 national: 3.52 opioid claims per 100 Part D claims. **Grain.** One row per (year, prscrbr_geo_lvl, prscrbr_geo_cd, breakout_type, breakout) per release. | column | type | meaning | |---|---|---| | publisher_version | string | | | year | int | | | prscrbr_geo_lvl | string | | | prscrbr_geo_cd | string | | | prscrbr_geo_desc | string | | | ruca_cd | string | | | breakout_type | string | | | breakout | string | | | tot_prscrbrs | bigint | | | tot_opioid_prscrbrs | bigint | | | tot_opioid_clms | double | | | tot_clms | double | | | opioid_prscrbng_rate | double | | | opioid_prscrbng_rate_5y_chg | double | | | opioid_prscrbng_rate_1y_chg | double | | | la_tot_opioid_clms | double | | | la_opioid_prscrbng_rate | double | | | la_opioid_prscrbng_rate_5y_chg | double | | | la_opioid_prscrbng_rate_1y_chg | 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_part_d_opioid_prescribing_geo WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_part_d_opioid_prescribing_geo")` first. # Medicare Part D Prescribers by Provider (NPI x year), 2013-2024 `medicare_silver.fact_part_d_prescriber_by_provider` · Drugs and formularies · status live · 14,636,994 rows One row per Part D prescriber NPI per year, 2013-2024: identity, address, specialty, claims, fills, cost, day supply and beneficiaries, split by 65+, brand / generic, MAPD / PDP and LIS; opioid, antibiotic and antipsychotic prescribing; beneficiary demographics and risk. 2024: 1,416,883 NPIs, 1,709,828,271 claims. **Grain.** One row per (publisher_version = data year, prscrbr_npi) per release. | column | type | meaning | |---|---|---| | publisher_version | string | | | data_year | int | | | prscrbr_npi | string | | | prscrbr_last_org_name | string | | | prscrbr_first_name | string | | | prscrbr_mi | string | | | prscrbr_crdntls | string | | | prscrbr_ent_cd | string | | | prscrbr_st1 | string | | | prscrbr_st2 | string | | | prscrbr_city | string | | | prscrbr_state_abrvtn | string | | | prscrbr_state_fips | string | | | prscrbr_zip5 | string | | | prscrbr_ruca | string | | | prscrbr_ruca_desc | string | | | prscrbr_cntry | string | | | prscrbr_type | string | | | prscrbr_type_src | string | | | tot_clms | bigint | | | tot_30day_fills | double | | | tot_drug_cst | double | | | tot_day_suply | bigint | | | tot_benes | bigint | | | ge65_sprsn_flag | string | | | ge65_tot_clms | bigint | | | ge65_tot_30day_fills | double | | | ge65_tot_drug_cst | double | | | ge65_tot_day_suply | bigint | | | ge65_bene_sprsn_flag | string | | | ge65_tot_benes | bigint | | | brnd_sprsn_flag | string | | | brnd_tot_clms | bigint | | | brnd_tot_drug_cst | double | | | gnrc_sprsn_flag | string | | | gnrc_tot_clms | bigint | | | gnrc_tot_drug_cst | double | | | othr_sprsn_flag | string | | | othr_tot_clms | bigint | | | othr_tot_drug_cst | double | | | mapd_sprsn_flag | string | | | mapd_tot_clms | bigint | | | mapd_tot_drug_cst | double | | | pdp_sprsn_flag | string | | | pdp_tot_clms | bigint | | | pdp_tot_drug_cst | double | | | lis_sprsn_flag | string | | | lis_tot_clms | bigint | | | lis_drug_cst | double | | | nonlis_sprsn_flag | string | | | nonlis_tot_clms | bigint | | | nonlis_drug_cst | double | | | opioid_tot_clms | bigint | | | opioid_tot_drug_cst | double | | | opioid_tot_suply | bigint | | | opioid_tot_benes | bigint | | | opioid_prscrbr_rate | double | | | opioid_la_tot_clms | bigint | | | opioid_la_tot_drug_cst | double | | | opioid_la_tot_suply | bigint | | | opioid_la_tot_benes | bigint | | | opioid_la_prscrbr_rate | double | | | antbtc_tot_clms | bigint | | | antbtc_tot_drug_cst | double | | | antbtc_tot_benes | bigint | | | antpsyct_ge65_sprsn_flag | string | | | antpsyct_ge65_tot_clms | bigint | | | antpsyct_ge65_tot_drug_cst | double | | | antpsyct_ge65_bene_suprsn_flag | string | | | antpsyct_ge65_tot_benes | bigint | | | bene_avg_age | double | | | bene_age_lt_65_cnt | bigint | | | bene_age_65_74_cnt | bigint | | | bene_age_75_84_cnt | bigint | | | bene_age_gt_84_cnt | bigint | | | bene_feml_cnt | bigint | | | bene_male_cnt | bigint | | | bene_race_wht_cnt | bigint | | | bene_race_black_cnt | bigint | | | bene_race_api_cnt | bigint | | | bene_race_hspnc_cnt | bigint | | | bene_race_natind_cnt | bigint | | | bene_race_othr_cnt | bigint | | | bene_dual_cnt | bigint | | | bene_ndual_cnt | bigint | | | bene_avg_risk_scre | 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_part_d_prescriber_by_provider WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_part_d_prescriber_by_provider")` first. # Medicare Quarterly Part D Spending by Drug (preliminary), 2025-2026 `medicare_silver.fact_part_d_spending_by_drug_quarterly` · Drugs and formularies · status live · 27,748 rows Preliminary Part D gross spending per drug (brand x generic x manufacturer, plus an Overall row) for the prior full year and the current year to date: beneficiaries, claims, spending and per-claim / per-beneficiary averages. 2025 (Q1-Q4): $350.87B over Overall rows; Eliquis $24.05B. **Grain.** One row per (brnd_name, gnrc_name, mftr_name, period_label) per quarterly release. | column | type | meaning | |---|---|---| | publisher_version | string | | | brnd_name | string | | | gnrc_name | string | | | mftr_name | string | | | is_overall_row | boolean | | | tot_mftr | int | | | period_label | string | | | year | int | | | ytd_through_quarter | int | | | tot_benes | bigint | | | tot_clms | bigint | | | tot_spndng | double | | | avg_spnd_per_bene | double | | | avg_spnd_per_clm | double | | | benes_status | string | | | drug_uses | 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 medicare_silver.fact_part_d_spending_by_drug_quarterly WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_part_d_spending_by_drug_quarterly")` first. # States W7 Employer coverage: state_employer_plan_v1 `vlada_curated.state_employer_plan_v1` · Drugs and formularies · status partial · 138,488 rows State product W7 (Employer coverage) of the States lane: employer health plans filed on Form 5500: sponsor, size, funding, carriers, brokers and premiums. One row per filing (ack_id) x plan year. funding_class says insured vs self-funded; premiums and broker commissions come from Schedule A and are blank on self-funded plans. 11 state(s): CA FL GA IL MI NC NJ NY OH PA TX. **Grain.** Employer health plans filed on Form 5500: sponsor, size, funding, carriers, brokers and premiums. 138,488 rows (Athena, 2026-10-29). Period 2022 to 2025 (plan_year). | column | type | meaning | |---|---|---| | state_code | string | | | county_fips | string | | | county_status | string | | | plan_year | int | | | plan_year_begin | string | | | plan_year_status | string | | | ack_id | string | | | plan_key | string | | | plan_number | string | | | plan_name | string | | | sponsor_ein | string | | | sponsor_name | string | | | sponsor_zip5 | string | | | business_code | string | | | participants_boy | int | | | active_participants_eoy | int | | | total_participants_eoy | int | | | size_band | string | | | funding_insurance_ind | boolean | | | funding_trust_ind | boolean | | | funding_gen_asset_ind | boolean | | | funding_sec412_ind | boolean | | | benefit_insurance_ind | boolean | | | benefit_trust_ind | boolean | | | benefit_gen_asset_ind | boolean | | | medical_insured_ind | boolean | | | stop_loss_ind | boolean | | | funding_class | string | | | funding_method | string | | | medical_persons_covered | bigint | | | medical_premium_usd | double | | | stop_loss_premium_usd | double | | | broker_comm_usd | double | | | broker_fees_usd | double | | | carrier_count | int | | | medical_carrier_count | int | | | tpa_count | int | | | broker_count | int | | | amended_ind | boolean | | | short_plan_year_ind | boolean | | | final_filing_ind | boolean | | | collectively_bargained_ind | boolean | | | multiple_employer_ind | boolean | | | admin_name | string | | | admin_ein | string | | | source_sha256 | string | | | source_url | string | | | source_locator | string | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.state_employer_plan_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.state_employer_plan_v1")` first. # CMS Care Compare Hospital General Information (overall star rating per CCN) `medicare_silver.dim_hospital_quality` · Hospital price transparency · status live · 5,432 rows The compact hospital quality summary from CMS Care Compare "Hospital General Information": one row per CCN with the headline overall star rating (1-5), hospital type, ownership, emergency-services flag, and birthing-friendly designation. The quality spine; per-measure detail lives in fact_hospital_quality_measure. **Grain.** One row per Medicare-certified hospital (by CCN) — overall star rating + type + ownership. | column | type | meaning | |---|---|---| | ccn | string | | | facility_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_parish | string | | | hospital_type | string | | | hospital_ownership | string | | | emergency_services | boolean | | | birthing_friendly | string | | | overall_rating | int | | | overall_rating_footnote | 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 | | | latitude | double | | | longitude | double | | Tools that read it: get_hospital_quality Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_hospital_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_hospital_quality")` first. # CMS Hospital-Acquired Condition Reduction Program (HACRP) `medicare_silver.fact_hacrp` · Hospital price transparency · status live · 3,055 rows The CMS HAC Reduction Program hospital file. It carries PSI-90, CLABSI, CAUTI, SSI, CDI, and MRSA values and standardized scores, the Total HAC Score, and whether the hospital receives the one-percent Medicare payment reduction. **Grain.** One row per (fiscal_year, hospital CCN) with PSI-90, five HAI measures, Total HAC Score, and payment-reduction status. | column | type | meaning | |---|---|---| | fiscal_year | int | | | ccn | string | | | facility_name | string | | | state | string | | | psi_90_composite_value_footnote | string | | | psi_90_w_z_footnote | string | | | psi_90_start_date | string | | | psi_90_end_date | string | | | clabsi_sir_footnote | string | | | clabsi_w_z_footnote | string | | | cauti_sir_footnote | string | | | cauti_w_z_footnote | string | | | ssi_sir_footnote | string | | | ssi_w_z_footnote | string | | | cdi_sir_footnote | string | | | cdi_w_z_footnote | string | | | mrsa_sir_footnote | string | | | mrsa_w_z_footnote | string | | | hai_measures_start_date | string | | | hai_measures_end_date | string | | | total_hac_score_footnote | string | | | payment_reduction | string | | | payment_reduction_footnote | string | | | psi_90_composite_value | double | | | psi_90_w_z_score | double | | | clabsi_sir | double | | | clabsi_w_z_score | double | | | cauti_sir | double | | | cauti_w_z_score | double | | | ssi_sir | double | | | ssi_w_z_score | double | | | cdi_sir | double | | | cdi_w_z_score | double | | | mrsa_sir | double | | | mrsa_w_z_score | double | | | total_hac_score | 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_hacrp WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hacrp")` first. # CMS Care Compare Hospital Quality Measures (mortality / readmissions / timely / infections / imaging / maternal) `medicare_silver.fact_hospital_quality_measure` · Hospital price transparency · status live · 510,084 rows Long-format hospital quality measures from the CMS Provider Data Catalog (Care Compare), unioned across SIX source datasets into one fact, partitioned by measure_source: "Complications and Deaths" (mortality + complication rates), "Unplanned Hospital Visits" (readmission / ED-return rates), "Timely and Effective Care" (timeliness), "Healthcare Associated Infections" (HAI / SIR), "Outpatient Imaging Efficiency" (appropriate-imaging measures), and "Maternal Health" (maternal-care measures). Each row carries the raw score string + a parsed score_numeric, plus compared-to-national, denominator/sample, lower/higher estimate, footnote, and the measurement start/end dates. The QUALITY axis joinable by CCN to the hospital chargemaster spine — i.e. expensive-and-low-quality detection. **Grain.** One row per (measure_source, hospital CCN, measure_id) — the measure score + bounds. | column | type | meaning | |---|---|---| | measure_source | string | | | ccn | string | | | facility_name | string | | | state | string | | | county_parish | string | | | measure_id | string | | | measure_name | string | | | condition | string | | | score | string | | | score_numeric | double | | | compared_to_national | string | | | denominator | string | | | sample | string | | | lower_estimate | double | | | higher_estimate | double | | | footnote | string | | | start_date | string | | | end_date | 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 | | Tools that read it: get_hospital_quality Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_hospital_quality_measure WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hospital_quality_measure")` first. # CMS Hospital Service Area (referral geography by CCN × ZIP) `medicare_silver.fact_hospital_service_area` · Hospital price transparency · status live · 1,155,777 rows The CMS Hospital Service Area file — for each hospital (CCN) the ZIP codes its Medicare FFS patients reside in, with total_cases, total_days_of_care, total_charges. The referral-GEOGRAPHY layer: which markets a hospital draws from, and (inverted) which hospitals serve a ZIP / compete in a market. Multi-year (2015–2024), partitioned by data_year. **Grain.** One row per (data_year, hospital CCN, patient ZIP) — cases/days/charges. | column | type | meaning | |---|---|---| | data_year | int | | | ccn | string | | | zip_code | string | | | total_cases | double | | | total_days_of_care | double | | | total_charges | 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_hospital_service_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hospital_service_area")` first. # CMS Hospital Readmissions Reduction Program (HRRP) `medicare_silver.fact_hrrp` · Hospital price transparency · status live · 245,914 rows The CMS Hospital Readmissions Reduction Program file — per hospital CCN, fiscal year, and condition measure, carrying excess readmission ratio, predicted and expected readmission rates, discharges, and readmissions. **Grain.** One row per (fiscal_year, ccn, measure_name) — full HRRP program history FY2013-FY2026 | column | type | meaning | |---|---|---| | state | string | | | ccn | string | | | facility_name | string | | | measure_name | string | | | footnote | string | | | start_date | string | | | end_date | string | | | number_of_discharges | double | | | excess_readmission_ratio | double | | | predicted_readmission_rate | double | | | expected_readmission_rate | double | | | number_of_readmissions | 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 | | | fiscal_year | int | | Tools that read it: get_hospital_quality Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_hrrp WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hrrp")` first. # CMS Hospital Value-Based Purchasing (HVBP) Total Performance Score `medicare_silver.fact_hvbp` · Hospital price transparency · status live · 2,455 rows The CMS Hospital Value-Based Purchasing Total Performance Score file — per hospital and fiscal year the four domain scores (Clinical Outcomes, Person & Community Engagement, Safety, Efficiency & Cost Reduction; unweighted + weighted) and the overall Total Performance Score that drives the VBP payment adjustment. The value-based-purchasing accountability layer. **Grain.** One row per (fiscal_year, hospital CCN) — domain scores + total performance score. | column | type | meaning | |---|---|---| | fiscal_year | int | | | ccn | string | | | facility_name | string | | | state | string | | | zip_code | string | | | clinical_outcomes_unweighted | double | | | clinical_outcomes_weighted | double | | | person_community_unweighted | double | | | person_community_weighted | double | | | safety_unweighted | double | | | safety_weighted | double | | | efficiency_unweighted | double | | | efficiency_weighted | double | | | total_performance_score | 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_hvbp WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hvbp")` first. # Medicare Inpatient Hospitals by Geography (avg payments per MS-DRG) `medicare_silver.fact_inpatient_payment_by_geo` · Hospital price transparency · status live · 331,464 rows CMS public-use file "Medicare Inpatient Hospitals - by Geography and Service" — annual, claims-derived: discharges + avg submitted covered charge / total payment / Medicare payment per MS-DRG at national + per-state. The DRG-level Medicare INPATIENT payment benchmark — pairs with the hospital chargemaster (HPT) and the IPPS relative weights (dim_msdrg) to anchor inpatient repricing. Claims-derived averages, NOT the contractual IPPS rate tables. **Grain.** One row per (geography [National|State], MS-DRG) per data year. | column | type | meaning | |---|---|---| | data_year | int | | | geo_level | string | | | geo_cd | string | | | geo_desc | string | | | drg_cd | string | | | drg_desc | string | | | tot_dschrgs | bigint | | | avg_submtd_cvrd_chrg | double | | | avg_tot_pymt_amt | double | | | avg_mdcr_pymt_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_inpatient_payment_by_geo WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_inpatient_payment_by_geo")` first. # Medicare Outpatient Hospitals by Geography (avg payments per APC/HCPCS) `medicare_silver.fact_outpatient_payment_by_geo` · Hospital price transparency · status live · 758,776 rows CMS public-use file "Medicare Outpatient Hospitals - by Geography and Service" — annual, claims-derived: beneficiary/service counts + avg submitted charge / Medicare allowed / Medicare payment / outlier per APC (Ambulatory Payment Classification) or HCPCS at national + per-state. The OUTPATIENT facility payment benchmark — pairs with the chargemaster to anchor outpatient repricing. Claims-derived averages, NOT the contractual OPPS rate tables. **Grain.** One row per (geography [National|State], APC or HCPCS) per data year. | column | type | meaning | |---|---|---| | data_year | int | | | geo_level | string | | | geo_cd | string | | | geo_desc | string | | | srvc_lvl | string | | | apc_cd | string | | | apc_desc | string | | | hcpcs_cd | string | | | hcpcs_desc | string | | | bene_cnt | bigint | | | capc_srvcs | double | | | avg_tot_sbmtd_chrgs | double | | | avg_mdcr_alowd_amt | double | | | avg_mdcr_pymt_amt | double | | | outlier_srvcs | double | | | avg_mdcr_outlier_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_outpatient_payment_by_geo WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_outpatient_payment_by_geo")` first. # States W2 Facilities, ownership + finances: state_facility_v1 `medicare_silver.state_facility_v1` · Hospital price transparency · status partial · 239,616 rows State product W2 (Facilities, ownership + finances) of the States lane: every licensed facility in the state with its owner, chain, 340B status and latest cost report finances. One row per facility. facility_class separates hospitals, SNFs, labs and the rest; owner_status and cost_report_status say when the owner or finances are missing, never read a null margin as zero. 15 state(s): AZ CA FL GA IL MI NC NJ NY OH PA TN TX VA WA. **Grain.** Every licensed facility in the state with its owner, chain, 340B status and latest cost report finances. 239,616 rows (Athena, 2026-10-29). Period 2026-06-25 to 2026-10-18 (as_of). | column | type | meaning | |---|---|---| | row_key | string | | | state_code | string | | | county_fips | string | | | county_basis | string | | | as_of | date | | | facility_id | string | | | facility_class | string | | | ccn | string | | | clia_number | string | | | enrollment_id | string | | | npi | string | | | facility_name | string | | | city | string | | | zip_code | string | | | lab_cert_type_cd | string | | | parent_ccn | string | | | fleet_canonical_site_id | string | | | fleet_status | string | | | roster_table | string | | | roster_sha256 | string | | | roster_locator | string | | | owner_status | string | | | owner_basis | string | | | owner_org_name | string | | | chain_name | string | | | owner_count | int | | | is_private_equity | boolean | | | is_reit | boolean | | | ownership_since | date | | | ownership_last_change | date | | | ownership_as_of | date | | | ownership_sha256 | string | | | ownership_locator | string | | | is_340b | boolean | | | id_340b | string | | | hrsa_sha256 | string | | | hrsa_locator | string | | | cost_report_status | string | | | cost_report_fy | int | | | cost_report_rpt_rec_num | string | | | overall_ccr | double | | | ccr_fy | int | | | net_patient_revenue | double | | | operating_margin | double | | | total_margin | double | | | margin_status | string | | | cost_report_sha256 | string | | | cost_report_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_facility_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_facility_v1")` first. # Raw HPT machine-readable files (bronze) `s3://vlada-platform-raw/hospital` · Hospital price transparency · status live Archived raw bytes of hospital standard-charges files, partitioned ccn=/version=/. **Grain.** One object per (CCN, version) raw HPT file. Query it: `query_substrate` with `SELECT ... FROM s3://vlada-platform-raw/hospital WHERE ... LIMIT 100`; read `describe_data_source("s3://vlada-platform-raw/hospital")` first. # Hospital chargemaster + payer-specific rates (HPT) `vlada_curated.fact_hospital_chargemaster` · Hospital price transparency · status live · 4,350,000,000 rows Cleaned hospital prices extracted from CMS Hospital Price Transparency machine-readable files. Gross / cash / min / max / payer_specific + v3.0 allowed-amount percentile charge types. **Grain.** One row per (CCN, payer_name, plan, code, code_type, methodology, charge_type) at the file snapshot. | column | type | meaning | |---|---|---| | rate_id | string | | | hospital_ccn | string | | | hospital_name | string | | | hospital_state | string | | | billing_code | string | | | code_system | string | | | alt_codes_hash | string | | | code_1 | string | | | code_1_type | string | | | code_2 | string | | | code_2_type | string | | | code_3 | string | | | code_3_type | string | | | code_4 | string | | | code_4_type | string | | | code_5 | string | | | code_5_type | string | | | description | string | | | payer_name | string | | | plan_name | string | | | rate_type | string | | | rate | double | | | min_rate | double | | | max_rate | double | | | billing_class | string | | | setting | string | | | modifiers | string | | | additional_info | string | | | collected_at | string | | | code_valid | boolean | | | gross_charge | double | | | cash_price | double | | | methodology | string | | | negotiated_pct | double | | | negotiated_algo | string | | | estimated_amount | double | | | drug_unit | string | | | drug_type | string | | | median_amount | double | | | tenth_percentile | double | | | ninetieth_percentile | double | | | allowed_count | bigint | | | version_id | string | | | source_files | array | | | loaded_at | timestamp | | | methodology_statement | string | | | lookback_window_start | date | | | lookback_window_end | date | | | attestation_statement | string | | | confirm_attestation | boolean | | | attester_name | string | | | attester_title | string | | | npi_type2 | array | | | cms_hpt_txt_probed | boolean | | | cms_hpt_txt_url | string | | | homepage_footer_link_present | boolean | | | content_sha256 | string | | | parser_version | string | | | mrf_schema_version | string | | | fetched_at | timestamp | | | raw_s3_key | string | | | pbd_npi | string | | | is_off_campus_pbd | boolean | | | parent_ccn | string | | | mrf_version_id | string | | | rate_outlier_flag | string | | | observed_period | date | | | asserted_at | date | | | effective_period_start | date | | | effective_period_end | date | | | asserted_at_source | string | | | calculation_epoch | date | | | vintage | string | | | cms_vintage_sequence | int | | | parse_revision | int | | | restatement_of | string | | | is_current | boolean | | | snapshot_set | string | | | s3_version_id | string | | | bronze_object_key | string | | | sha256_content_hash | string | | | source_lineage | string | | | parent_vintage_fingerprint | string | | | source_id | string | | | source_url | string | | | parser_artifact_hash | string | | | ingested_at | timestamp | | | count_of_compared_rates | bigint | | | additional_payer_notes | string | | | footnote | string | | | cbsa_code | string | | | chain_parent_id | string | | | payer_canonical_id | string | | | percentage_source | string | | | fact_builder_version | string | | | payment_grain | string | | | grain_confidence | string | | | allowed_count_band | string | CMS per-payer allowed-count enum: 0 / 1 through 10 / count >=11 as digits. NULL = absent, invalid, or row built before migration 034. | Tools that read it: plan_hospital_price, prove_hospital_price, replay_hospital_price, state_expert Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_hospital_chargemaster WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_hospital_chargemaster")` first. # Hospital price rollup by code x state x payer parent x line of business `vlada_curated.mart_code_state_payer_rollup` · Hospital price transparency · status live Negotiated-rate min / median / max, the Medicare multiple, and hospital, plan and rate counts per code, state, payer parent and program, with the counts of rows excluded as non-comparable. **Grain.** One row per (billing_code, code_system_resolved, hospital_state, payer_parent_name, line_of_business). | column | type | meaning | |---|---|---| | billing_code | string | | | code_system_resolved | string | | | hospital_state | string | | | payer_parent_name | string | | | line_of_business | string | | | n_hospitals | bigint | | | n_plans | bigint | | | n_rates | bigint | | | neg_min | double | | | neg_med | double | | | neg_max | double | | | x_med | double | | | cell_vintage | string | | | rollup_vintage | string | | | n_real_negotiated | bigint | | | n_excluded_pct_of_charges | bigint | | | n_excluded_other | bigint | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.mart_code_state_payer_rollup WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.mart_code_state_payer_rollup")` first. # Hospital price rollup by code x state x line of business `vlada_curated.mart_code_state_rollup` · Hospital price transparency · status live Negotiated-rate min / median / max, the Medicare multiple, gross and cash medians, hospital and rate counts, and the count of rows excluded as percent-of-charges or other non-comparable classes, per code, state and program. **Grain.** One row per (billing_code, code_system_resolved, hospital_state, line_of_business). | column | type | meaning | |---|---|---| | billing_code | string | | | code_system_resolved | string | | | hospital_state | string | | | line_of_business | string | | | n_hospitals | bigint | | | n_rates | bigint | | | neg_min | double | | | neg_med | double | | | neg_max | double | | | x_med | double | | | gross_med | double | | | cash_med | double | | | cell_vintage | string | | | rollup_vintage | string | | | n_real_negotiated | bigint | | | n_excluded_pct_of_charges | bigint | | | n_excluded_other | bigint | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.mart_code_state_rollup WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.mart_code_state_rollup")` first. # Hospital price-cell mart `vlada_curated.mart_hospital_cell` · Hospital price transparency · status live The hospital price-cell serving mart — one materialized cell per (hospital, code, payer, plan, line_of_business, methodology, rate_type) with the rate. The precomputed serving grain for hospital price answers. **Grain.** One row per (CCN, billing_code, payer, plan, LOB, methodology, rate_type) price cell. | column | type | meaning | |---|---|---| | hospital_ccn | string | | | hospital_name | string | | | billing_code | string | | | code_system_resolved | string | | | code_system_precision | string | | | billing_class_resolved | string | | | payer_parent_name | string | | | payer_name | string | | | plan_name | string | | | line_of_business | string | | | methodology_norm | string | | | rate_type | string | | | payment_grain | string | | | grain_confidence | string | | | rate | double | | | gross_charge | double | | | cash_price | double | | | x_medicare | double | | | negotiated_pct | double | | | negotiated_algo | string | | | derived_amount | double | | | derived_amount_basis | string | | | code_gross | double | | | n_payers | bigint | | | n_rates | bigint | | | comparability_class | string | | | comparability_reason | string | | | cell_vintage | string | | | hospital_state | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.mart_hospital_cell WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.mart_hospital_cell")` first. # Hospital department cost ratios from Medicare cost reports (latest fiscal year per department) `vlada_curated.mart_hospital_dept_ccr` · Hospital price transparency · status live · 138,458 rows The normalized cost lens over the raw HCRIS Worksheet C table (medicare_silver.hospital_cost_report_dept): typed dept_ccr (double), the charge_as_cost 1.0 sentinel excluded, ratios at or above 10 excluded as parse or units defects, one row per hospital and department. Estimated cost of a service = its gross charge x the dept_ccr of the service's own cost center, found through medicare_silver.hcpcs_cost_center_crosswalk (hcpcs -> cost_center_line). An inpatient MS-DRG spans departments and uses the __OVERALL__ row, labelled by ccr_basis. **Grain.** One row per (hospital_ccn, cost_center_line), the latest usable fiscal year of that pair, plus one whole-hospital row per CCN under cost_center_line '__OVERALL__' (ccr_basis 'overall'). 138,458 rows, 6,909 hospitals (6,708 with the overall row), FY2011-2024 (measured 2026-09-27, qid 2d22e8a5). | column | type | meaning | |---|---|---| | hospital_ccn | string | | | cost_center_line | string | | | ccr_basis | string | | | dept_ccr | double | | | fy_year | string | | | ccr_vintage | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.mart_hospital_dept_ccr WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.mart_hospital_dept_ccr")` first. # Hospital department cost ratio history from Medicare cost reports (FY2011-2024) `vlada_curated.mart_hospital_dept_ccr_history` · Hospital price transparency · status live · 1,359,025 rows The same normalized department ratios as mart_hospital_dept_ccr for every recoverable fiscal year, for trends (a department's cost ratio over time) and for matching a price to the cost report of its own year. **Grain.** One row per (hospital_ccn, cost_center_line, fy_year), with cost_center_label; the whole-hospital ratio under '__OVERALL__'. 1,359,025 rows, 6,909 hospitals, 14 fiscal years, 533 cost centers (measured 2026-09-27, qid 582e78d9). | column | type | meaning | |---|---|---| | hospital_ccn | string | | | cost_center_line | string | | | cost_center_label | string | | | ccr_basis | string | | | dept_ccr | double | | | fy_year | string | | | ccr_vintage | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.mart_hospital_dept_ccr_history WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.mart_hospital_dept_ccr_history")` first. # States W3 Networks + affiliations: state_affiliation_edge_v1 `vlada_curated.state_affiliation_edge_v1` · Hospital price transparency · status partial · 7,013,685 rows State product W3 (Networks + affiliations) of the States lane: affiliation edges: which clinician, group or facility belongs to which system, dated, with evidence. One row per child -> parent edge (child_kind, parent_kind, edge_type) with first_seen / last_seen; filter state_code. last_seen is the last file the edge appeared in, not an end date. 5 state(s): CA FL NY PA TX. **Grain.** Affiliation edges: which clinician, group or facility belongs to which system, dated, with evidence. 7,013,685 rows (Athena, 2026-10-29). Period 2016-08-30 to 2026-10-29 (as_of). | column | type | meaning | |---|---|---| | state_code | string | | | county_fips | string | | | period | string | | | as_of | string | | | child_kind | varchar(12) | | | child_id | string | | | parent_kind | varchar(12) | | | parent_id | string | | | edge_type | string | | | first_seen | string | | | last_seen | string | | | effective_start | string | | | effective_end | string | | | evidence_type | varchar(33) | | | evidence_table | varchar(64) | | | source_sha256 | string | | | source_locator | string | | | source_url | string | | | source_row_key | string | | | review_status | varchar(34) | | | child_name | string | | | parent_name | string | | | canonical_parent_system | string | | | facility_type | string | | | w2_facility_id | string | | | w2_facility_class | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.state_affiliation_edge_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.state_affiliation_edge_v1")` first. # States W5 Pricing coverage: state_pricing_coverage_v1 `vlada_curated.state_pricing_coverage_v1` · Hospital price transparency · status partial · 256,223 rows State product W5 (Pricing coverage) of the States lane: pricing coverage: for each site x payer, whether we hold a negotiated price, why not, and the members a gap affects. One row per site x payer x price_kind; has_price false rows carry missing_reason and members_affected. This is coverage of our price holdings, never a price. 9 state(s): CA FL GA IL NC NY OH PA TX. **Grain.** Pricing coverage: for each site x payer, whether we hold a negotiated price, why not, and the members a gap affects. 256,223 rows (Athena, 2026-10-29). Period 2026-10-28 to 2026-10-29 (as_of). | column | type | meaning | |---|---|---| | row_key | string | | | state_code | string | | | county_fips | string | | | county_name | string | | | period | string | | | as_of | date | | | canonical_site_id | string | | | npi | string | | | ccn | string | | | legal_name | string | | | care_site_class | string | | | site_parent_system | string | | | site_parent_as_of | string | | | payer_id | string | | | payer_name | string | | | payer_parent_as_of | string | | | price_kind | string | | | has_price | boolean | | | missing_reason | string | | | lines_of_business | string | | | n_rates | bigint | | | detail | string | | | source_table | string | | | source_version | string | | | source_sha256 | string | | | source_locator | string | | | members_affected | bigint | | | gap_rank | int | | | members_basis | string | | | members_source_sha256 | string | | | members_locator | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.state_pricing_coverage_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.state_pricing_coverage_v1")` first. # States W6 Quality: state_quality_v1 `vlada_curated.state_quality_v1` · Hospital price transparency · status partial · 538,616 rows State product W6 (Quality) of the States lane: quality by entity (plans, hospitals, facilities) with its parent, every measure and rating status. One row per entity x program x measure x period. Filter quality_program and is_latest; rating_status and not_rated_reason explain a missing value, which is never zero. 8 state(s): CA FL GA IL NY OH PA TX. **Grain.** Quality by entity (plans, hospitals, facilities) with its parent, every measure and rating status. 538,616 rows (Athena, 2026-10-29). Period 2015-01-01 to 2026-10-08 (as_of). | column | type | meaning | |---|---|---| | state_code | string | | | county_fips | string | | | line | string | | | entity_type | string | | | entity_id | string | | | entity_id_type | string | | | canonical_entity_id | string | | | canonical_id_source | string | | | entity_name | string | | | parent_id | string | | | parent_name | string | | | parent_source | string | | | parent_as_of | string | | | parent_status | string | | | quality_program | string | | | measure_code | string | | | measure_label | string | | | record_level | string | | | period_label | string | | | period_start | date | | | period_end | date | | | as_of | date | | | value_num | double | | | value_raw | string | | | value_unit | string | | | rating_status | string | | | not_rated_reason | string | | | is_latest | boolean | | | source_table | string | | | source_sha256 | string | | | source_url | string | | | source_locator | string | | | row_key | string | | | build_id | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.state_quality_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.state_quality_v1")` first. # Hospital chargemaster — canonical view `vlada_curated.vw_fact_hospital_chargemaster_canonical` · Hospital price transparency · status live Canonical hospital-chargemaster view: resolved code system, payer/plan, rate type, billing class, rate, gross charge. The canonicalized rate surface (broader than _comparable; before the comparability filter). **Grain.** One row per canonical hospital rate (CCN, billing_code, payer, plan). | column | type | meaning | |---|---|---| | hospital_ccn | string | | | hospital_name | string | | | hospital_state | string | | | billing_code | string | | | code_system | string | | | code_system_resolved | string | | | code_system_precision | varchar(14) | | | payer_name | string | | | plan_name | string | | | rate_type | string | | | billing_class | string | | | rate | double | | | gross_charge | double | | | cash_price | double | | | methodology | string | | | methodology_norm | varchar(17) | | | payment_grain | string | | | grain_confidence | string | | | negotiated_pct | double | | | negotiated_algo | string | | | estimated_amount | double | | | median_amount | double | | | allowed_count | bigint | | | billing_code_comparable | string | | | billing_code_precision | varchar(14) | | | billing_class_norm | varchar(13) | | | billing_class_resolved | varchar(13) | | | billing_class_source | varchar(21) | | | billing_class_learned_inst_frac | double | | | payer_canonical_id | string | | | payer_parent_name | string | | | payer_entity_class | string | | | payer_match_method | string | | | line_of_business | string | | | plan_product_structure | string | | | plan_classify_method | string | | | plan_classify_confidence | double | | | plan_label_scope | varchar(16) | | | build_vintage | string | | | fact_builder_version | string | | | on_fixed_build | boolean | | | state_certification | varchar(15) | | | state_certified | boolean | | Tools that read it: compare_hospital_rates, coverage_status Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_fact_hospital_chargemaster_canonical WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_fact_hospital_chargemaster_canonical")` first. # Hospital chargemaster — comparable view (real-negotiated, classified) `vlada_curated.vw_fact_hospital_chargemaster_comparable` · Hospital price transparency · status live The serving view over the hospital chargemaster, FILTERED to comparable / real-negotiated rates with payer entity/plan structure resolved and a comparability class. The surface the pricing engine reads for hospital rates (backed by fact_hospital_comparability_mat). **Grain.** One row per (CCN, billing_code, payer, plan, billing_class) — comparable rate. | column | type | meaning | |---|---|---| | hospital_ccn | string | | | hospital_name | string | | | hospital_state | string | | | billing_code | string | | | code_system_resolved | string | | | billing_class_resolved | varchar(13) | | | facility_type | varchar(9) | | | payer_parent_name | string | | | payer_name | string | | | plan_name | string | | | payer_entity_class | string | | | plan_product_structure | string | | | line_of_business | string | | | rate_type | string | | | methodology_norm | varchar(17) | | | payment_grain | string | | | grain_confidence | string | | | rate | double | | | gross_charge | double | | | cash_price | double | | | x_medicare | double | | | negotiated_pct | double | | | negotiated_algo | string | | | derived_amount | double | | | derived_amount_basis | string | | | comparability_class | varchar(18) | | | comparability_reason | string | | | methodology_filed | varchar(17) | | | methodology_basis | varchar(28) | | | plausibility_band | varchar(23) | | | price_basis | varchar(21) | | | billing_class_basis | varchar(29) | | | code_bucket | bigint | | Tools that read it: compare_hospital_rates Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_fact_hospital_chargemaster_comparable WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_fact_hospital_chargemaster_comparable")` first. # Hospital chargemaster — current (full, wide) view `vlada_curated.vw_fact_hospital_chargemaster_current` · Hospital price transparency · status live The widest current-vintage hospital-chargemaster view (rate_id grain, ~93 cols incl alt-code arrays, all payer/plan/rate attributes). The full-detail surface for deep inspection / lineage; downstream views project from it. **Grain.** One row per current chargemaster rate_id (full 93-column detail). | column | type | meaning | |---|---|---| | rate_id | string | | | hospital_ccn | string | | | hospital_name | string | | | hospital_state | string | | | billing_code | string | | | code_system | string | | | alt_codes_hash | string | | | code_1 | string | | | code_1_type | string | | | code_2 | string | | | code_2_type | string | | | code_3 | string | | | code_3_type | string | | | code_4 | string | | | code_4_type | string | | | code_5 | string | | | code_5_type | string | | | description | string | | | payer_name | string | | | plan_name | string | | | rate_type | string | | | rate | double | | | min_rate | double | | | max_rate | double | | | billing_class | string | | | setting | string | | | modifiers | string | | | additional_info | string | | | collected_at | string | | | code_valid | boolean | | | gross_charge | double | | | cash_price | double | | | methodology | string | | | negotiated_pct | double | | | negotiated_algo | string | | | estimated_amount | double | | | drug_unit | string | | | drug_type | string | | | median_amount | double | | | tenth_percentile | double | | | ninetieth_percentile | double | | | allowed_count | bigint | | | version_id | string | | | source_files | array | | | loaded_at | timestamp | | | methodology_statement | string | | | lookback_window_start | date | | | lookback_window_end | date | | | attestation_statement | string | | | confirm_attestation | boolean | | | attester_name | string | | | attester_title | string | | | npi_type2 | array | | | cms_hpt_txt_probed | boolean | | | cms_hpt_txt_url | string | | | homepage_footer_link_present | boolean | | | content_sha256 | string | | | parser_version | string | | | mrf_schema_version | string | | | fetched_at | timestamp | | | raw_s3_key | string | | | pbd_npi | string | | | is_off_campus_pbd | boolean | | | parent_ccn | string | | | mrf_version_id | string | | | rate_outlier_flag | string | | | observed_period | date | | | asserted_at | date | | | effective_period_start | date | | | effective_period_end | date | | | asserted_at_source | string | | | calculation_epoch | date | | | vintage | string | | | cms_vintage_sequence | int | | | parse_revision | int | | | restatement_of | string | | | is_current | boolean | | | snapshot_set | string | | | s3_version_id | string | | | bronze_object_key | string | | | sha256_content_hash | string | | | source_lineage | string | | | parent_vintage_fingerprint | string | | | source_id | string | | | source_url | string | | | parser_artifact_hash | string | | | ingested_at | timestamp | | | count_of_compared_rates | bigint | | | additional_payer_notes | string | | | footnote | string | | | cbsa_code | string | | | chain_parent_id | string | | | payer_canonical_id | string | | | percentage_source | string | | | fact_builder_version | string | | | payment_grain | string | | | grain_confidence | string | | | allowed_count_band | string | | Tools that read it: coverage_status Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_fact_hospital_chargemaster_current WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_fact_hospital_chargemaster_current")` first. # Hospital price comparison mart (answered layer) `vlada_curated.vw_hospital_comparison_mart` · Hospital price transparency · status live The precomputed answers compare_hospital_rates reads first (p10 / median / p90, n rows, n hospitals, the Medicare multiple and the cheapest window) per code, state, program and methodology family, built from the comparable surface with the tool's own floors and quarantine list. Each row carries build_id and as_of. **Grain.** One row per (grain_level, code_system, billing_code, hospital_state, line_of_business, billing_class, methodology family, payer parent) statistic, plus the stored cheapest window rows (grain_level = 'cheapest'). | column | type | meaning | |---|---|---| | grain_level | varchar(11) | | | code_system | string | | | billing_code | string | | | line_of_business | string | | | billing_class | varchar(18) | | | methodology_family | varchar(12) | | | methodology_norm | varchar(17) | | | payer_parent_name | string | | | n_rows | bigint | | | n_rows_all | bigint | | | n_hospitals | bigint | | | n_hospitals_all | bigint | | | n_payers | bigint | | | n_payers_all | bigint | | | n_below_floor | bigint | | | p10 | double | | | median | double | | | p90 | double | | | min_rate | double | | | max_rate | double | | | p10_all | double | | | median_all | double | | | p90_all | double | | | min_all | double | | | max_all | double | | | median_rate_over_gross | double | | | ccn_median | double | | | ccn_p10 | double | | | ccn_p90 | double | | | ccn_n_hospitals | bigint | | | ccn_n_hospitals_fully_excluded | bigint | | | max_parents_sharing_price | bigint | | | max_labels_sharing_price | bigint | | | floor_value | double | | | floor_multiple | double | | | medicare_allowed | double | | | medicare_source | varchar(19) | | | medicare_year | int | | | medicare_bases_json | string | | | median_x_medicare | double | | | quarantine_hash | varchar(16) | | | build_id | varchar(17) | | | as_of | varchar(17) | | | cheapest_rank | int | | | cheapest_bucket | string | | | cheapest_k | int | | | row_hospital_state | string | | | hospital_ccn | string | | | hospital_name | string | | | payer_name | string | | | plan_name | string | | | payer_entity_class | string | | | plan_product_structure | string | | | billing_class_norm | string | | | facility_type | string | | | comparability_reason | string | | | rate | double | | | gross_charge | double | | | cash_price | double | | | hospital_state | string | | Tools that read it: compare_hospital_rates Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_hospital_comparison_mart WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_hospital_comparison_mart")` first. # Medicare IPPS inpatient acuity (MS-DRG relative weights) `drug_silver.dim_msdrg` · Medicare Advantage, Part D, Medicaid · status live · 764 rows The Medicare INPATIENT acuity benchmark — MS-DRG relative weight (weight_after_cap = final applied weight) + geometric/arithmetic LOS. RELATIVE weight only; an ABSOLUTE IPPS dollar payment is NOT computable (the IPPS base operating rate + hospital wage index are NOT loaded). Match hospital inpatient charges on MS-DRG, present relative acuity — do NOT quote an absolute Medicare inpatient payment. Physically in drug_silver (M-2 envelope sharing) but it is the Medicare inpatient benchmark. **Grain.** One row per (ms_drg, effective_period_start/fiscal-year) — CMS IPPS Table 5 relative weight + LOS. CERTIFIED 2026-06-03. | column | type | meaning | |---|---|---| | ms_drg | string | | | title | string | | | mdc | string | | | type_code | string | | | post_acute_flag | boolean | | | special_pay_flag | boolean | | | weight_before_cap | double | | | weight_after_cap | double | | | los_geometric | double | | | los_arithmetic | 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 drug_silver.dim_msdrg WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_msdrg")` first. # MA plan networks: plan year x CMS plan x NPI x listed location (2026, 2027) `medicare_bronze.ma_directory_plan_npi_site_v1` · Medicare Advantage, Part D, Medicaid · status partial The Data Tracker's plan-network build (docs/data-tracker/SERVING-HANDOFF-PLAN-NETWORKS.md): which NPIs each Medicare Advantage plan lists, from the payer's own Plan-Net API, the printed directory, a name match to NPPES, or the Medicare Plan Finder export (npi_basis), with a grade on matched rows (A name+ZIP unique, B name+state unique, N name unique nationally: name-matched, never presented as printed) and plan_key_basis saying how the row reached its CMS plan id (the publisher's own id, a network map, or the CMS crosswalk carry-back: 2027 rows carrying plan_key_basis cy2026_directory_2027_not_yet_posted: 42 contracts / 1,132,045 members at stage 21 whose 2026 directory stands in; label or exclude them). A contract with no rows is UNCOVERED (the handoff's open-gap list), never "no network"; absence of an NPI is a claim only for a covered contract and only "not listed in the published directory". Typed tools (get_plan_network, is_provider_in_plan, get_network_change) are proposed and start on Ben's go. **Grain.** One row per listing observation: plan_year x cms_plan_id (H1234-001-000) x npi x the location as listed (location_name, city, state, zip5, phone) x the source page (url, page, raw_sha256). No unique row key: the membership grain is (plan_year, cms_plan_id, npi), served DISTINCT, never as raw row counts. Stage 20 (dataset_id 7bceef45cc9e5910e64caa428a1f3e40869f91d149c4e19f08cc55f5e468ba7c, 2026-11-02): 2026 218,950,666 rows / 645 contracts / 3,581 plans / 2,437,003 NPIs; 2027 289,906,332 / 614 / 4,305 / 2,421,994; plan_year unknown 826,292 rows (4 contracts), excluded from answers. | column | type | meaning | |---|---|---| | plan_year | string | | | cms_plan_id | string | | | contract_id | string | | | plan_key_basis | string | | | npi | string | | | npi_basis | string | | | grade | string | | | provider_name_printed | string | | | specialty | string | | | location_name | string | | | city | string | | | state | string | | | zip5 | string | | | phone | string | | | page | string | | | source_group | string | | | url | string | | | raw_sha256 | string | | Tools that read it: get_network_change, get_plan_network, is_provider_in_plan Query it: `query_substrate` with `SELECT ... FROM medicare_bronze.ma_directory_plan_npi_site_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_bronze.ma_directory_plan_npi_site_v1")` first. # Vlada locked 2027 allowance dollars like for like by company (v20261007a), same members 2026 vs 2027, dental / hearing / OTC / eyewear / flex card `medicare_semantic.benefit_company_cells_sd_v20261007a` · Medicare Advantage, Part D, Medicaid · status live · 138,014 rows Allowance dollars like for like (REPORT-FAMILY-PLAN.md section 0; rule in benefits_same_design.py): each 2026 continuing member (atoms kind = book, followed) paired 1:1 with their 2027 plan (kind = next, same county_ssa + base_key, same weight). For each allowance k in dental, hearing, OTC, eyewear and card: sd__l0 / sd__l1 = SUM(w x PMPM dollars) in 2026 / 2027 over the comparable pairs (same form both years, or offered without a stated amount both years), so the 2026 and 2027 levels are sd__l0 / w and sd__l1 / w and the like-for-like change is (sd__l1 - sd__l0) / w; sd__sw = members whose design changed form (a form switch is a design change, never a raise or a cut) and sd__kn = members with the design known both years. Tie-out: 7,250 values against same_design.json, 0 mismatches. Versioned, never replaced. Owner: the Benefits lane. **Grain.** One row per lvl x state x county_ssa x bucket x plan_type x parent, the same keys and 'ALL' rollups as benefit_company_cells_v20261007a without per (every row is the paired 2026 -> 2027 members). 138,014 rows (county 133,094, state 4,035, national 885; CELLS-MANIFEST.md 2026-10-07). | column | type | meaning | |---|---|---| | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | plan_type | string | | | parent | string | | | w | double | | | sd_dental_l0 | double | | | sd_dental_l1 | double | | | sd_dental_sw | double | | | sd_dental_kn | double | | | sd_hearing_l0 | double | | | sd_hearing_l1 | double | | | sd_hearing_sw | double | | | sd_hearing_kn | double | | | sd_otc_l0 | double | | | sd_otc_l1 | double | | | sd_otc_sw | double | | | sd_otc_kn | double | | | sd_eyewear_l0 | double | | | sd_eyewear_l1 | double | | | sd_eyewear_sw | double | | | sd_eyewear_kn | double | | | sd_card_l0 | double | | | sd_card_l1 | double | | | sd_card_sw | double | | | sd_card_kn | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_company_cells_sd_v20261007a WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_company_cells_sd_v20261007a")` first. # Vlada locked 2027 benefit tables by company (v20261007a), national / state / county x product type x plan type x parent, 2026 all members, 2026 continuing members and the same members in 2027, every benefit as weighted sums `medicare_semantic.benefit_company_cells_v20261007a` · Medicare Advantage, Part D, Medicaid · status live · 427,355 rows The locked 2027 company benefit cells (Benefits lane, Edition 1.1, locked 2026-10-07): every metric of the locked benefit engine (medicare_semantic.benefit_engine_atoms_v20261007a, base year 2026) rolled up by GROUPING SETS to national, state and county x product type x plan type x parent, keeping the weighted SUMS rather than the averages, so any reader can reproduce the published figure exactly. For each metric m: m__s = SUM(weight x m) and m__w = SUM(weight) over the members with m filed, so the value is m__s / m__w (a ratio of weighted sums, never an average of cell values); for metrics with a coverage column, m__c = SUM(weight x coverage) and coverage = m__c / members. members = September 2026 county enrollment on the plan segment; plans = distinct plan segments. Metrics: dental, hearing, OTC, eyewear and flex card (offered share, form shares, PMPM dollars if offered and over all members, design known), giveback (offered, token under $10, PMPM), $0 premium share, transportation / fitness / meals / podiatry, deductibles by scope, then premium, MOOP, the medical and Part D deductibles, and every medical cost share (copay and coinsurance by form, low and high ends, switches) and the Part D tier 1/2 copays and tier 4/5 coinsurance. Like-for-like allowance dollars on paired members are the sibling table benefit_company_cells_sd_v20261007a. Tie-out (company_cells_check.py): 73,986 national values against the report data and 7,250 like-for-like values, 0 mismatches; members roll county to state to national with 0 breaks (30,069,277 members, September 2026). Versioned, never replaced; a new lock is a new table. Owner: the Benefits lane. **Grain.** One row per lvl ('national' | 'state' | 'county') x state ('US' on national rows) x county_ssa (county rows only) x bucket (product type; 'ALL' = the company total across product types) x plan_type ('ALL' = every plan type of the bucket) x parent ('ALL' = the market; 'Unaffiliated' when no canonical parent) x per ('b' = 2026 all members, 'f' = 2026 members who continue, 'n' = those same members in their 2027 plan). 427,355 rows (county b 145,909, f 133,094, n 133,094; state b 4,459, f 4,035, n 4,035; national b 959, f 885, n 885; CELLS-MANIFEST.md 2026-10-07). | column | type | meaning | |---|---|---| | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | plan_type | string | | | parent | string | | | per | varchar(1) | | | members | double | | | plans | bigint | | | dental_pct_offered__s | double | | | dental_pct_offered__w | double | | | dental_pct_max__s | double | | | dental_pct_max__w | double | | | dental_pct_no_max__s | double | | | dental_pct_no_max__w | double | | | dental_pct_card__s | double | | | dental_pct_card__w | double | | | dental_dollars_pmpm_if__s | double | | | dental_dollars_pmpm_if__w | double | | | dental_dollars_pmpm_all__s | double | | | dental_dollars_pmpm_all__w | double | | | dental_design_known__s | double | | | dental_design_known__w | double | | | hearing_pct_offered__s | double | | | hearing_pct_offered__w | double | | | hearing_pct_allowance__s | double | | | hearing_pct_allowance__w | double | | | hearing_pct_copay__s | double | | | hearing_pct_copay__w | double | | | hearing_pct_card__s | double | | | hearing_pct_card__w | double | | | hearing_dollars_pmpm_if__s | double | | | hearing_dollars_pmpm_if__w | double | | | hearing_dollars_pmpm_all__s | double | | | hearing_dollars_pmpm_all__w | double | | | hearing_design_known__s | double | | | hearing_design_known__w | double | | | otc_pct_offered__s | double | | | otc_pct_offered__w | double | | | otc_pct_own__s | double | | | otc_pct_own__w | double | | | otc_pct_card__s | double | | | otc_pct_card__w | double | | | otc_pct_no_amount__s | double | | | otc_pct_no_amount__w | double | | | otc_dollars_pmpm_if__s | double | | | otc_dollars_pmpm_if__w | double | | | otc_dollars_pmpm_all__s | double | | | otc_dollars_pmpm_all__w | double | | | otc_design_known__s | double | | | otc_design_known__w | double | | | eyewear_pct_offered__s | double | | | eyewear_pct_offered__w | double | | | eyewear_pct_allowance__s | double | | | eyewear_pct_allowance__w | double | | | eyewear_pct_card__s | double | | | eyewear_pct_card__w | double | | | eyewear_pct_no_max__s | double | | | eyewear_pct_no_max__w | double | | | eyewear_dollars_pmpm_if__s | double | | | eyewear_dollars_pmpm_if__w | double | | | eyewear_dollars_pmpm_all__s | double | | | eyewear_dollars_pmpm_all__w | double | | | eyewear_design_known__s | double | | | eyewear_design_known__w | double | | | hearing_copay_per_aid__s | double | | | hearing_copay_per_aid__w | double | | | otc_pct_filed_own_zero_card__s | double | | | otc_pct_filed_own_zero_card__w | double | | | card_pct_offered__s | double | | | card_pct_offered__w | double | | | card_dollars_pmpm_if__s | double | | | card_dollars_pmpm_if__w | double | | | card_dollars_pmpm_all__s | double | | | card_dollars_pmpm_all__w | double | | | allowance_total_pmpm_all__s | double | | | allowance_total_pmpm_all__w | double | | | giveback_pct_offered__s | double | | | giveback_pct_offered__w | double | | | giveback_pct_token__s | double | | | giveback_pct_token__w | double | | | giveback_pmpm_if__s | double | | | giveback_pmpm_if__w | double | | | premium_pct_zero__s | double | | | premium_pct_zero__w | double | | | svc_transportation_pct_offered__s | double | | | svc_transportation_pct_offered__w | double | | | svc_transportation_known__s | double | | | svc_transportation_known__w | double | | | svc_fitness_pct_offered__s | double | | | svc_fitness_pct_offered__w | double | | | svc_fitness_known__s | double | | | svc_fitness_known__w | double | | | svc_meals_post_discharge_pct_offered__s | double | | | svc_meals_post_discharge_pct_offered__w | double | | | svc_meals_post_discharge_known__s | double | | | svc_meals_post_discharge_known__w | double | | | svc_meals_any_pct_offered__s | double | | | svc_meals_any_pct_offered__w | double | | | svc_meals_any_known__s | double | | | svc_meals_any_known__w | double | | | svc_podiatry_pct_offered__s | double | | | svc_podiatry_pct_offered__w | double | | | svc_podiatry_known__s | double | | | svc_podiatry_known__w | double | | | svc_transportation_trips__s | double | | | svc_transportation_trips__w | double | | | svc_transportation_pct_unlimited__s | double | | | svc_transportation_pct_unlimited__w | double | | | svc_podiatry_visits__s | double | | | svc_podiatry_visits__w | double | | | deductible_pct_none__s | double | | | deductible_pct_none__w | double | | | deductible_pct_partb__s | double | | | deductible_pct_partb__w | double | | | deductible_pct_plan__s | double | | | deductible_pct_plan__w | double | | | deductible_plan_amount__s | double | | | deductible_plan_amount__w | double | | | deductible_design_known__s | double | | | deductible_design_known__w | double | | | deductible_pct_scope_oon__s | double | | | deductible_pct_scope_oon__w | double | | | premium__s | double | | | premium__w | double | | | moop__s | double | | | moop__w | double | | | medical_deductible__s | double | | | medical_deductible__w | double | | | partd_deductible__s | double | | | partd_deductible__w | double | | | primary_care__s | double | | | primary_care__w | double | | | specialist__s | double | | | specialist__w | double | | | telehealth__s | double | | | telehealth__w | double | | | mental_health_ind__s | double | | | mental_health_ind__w | double | | | er__s | double | | | er__w | double | | | urgent__s | double | | | urgent__w | double | | | ambulance_ground__s | double | | | ambulance_ground__w | double | | | hosp_5day__s | double | | | hosp_5day__w | double | | | inpatient__s | double | | | inpatient__w | double | | | snf__s | double | | | snf__w | double | | | outpatient_hosp__s | double | | | outpatient_hosp__w | double | | | asc__s | double | | | asc__w | double | | | imaging_complex__s | double | | | imaging_complex__w | double | | | radiology__s | double | | | radiology__w | double | | | lab__s | double | | | lab__w | double | | | physical_therapy__s | double | | | physical_therapy__w | double | | | dme__s | double | | | dme__w | double | | | partb_drugs__s | double | | | partb_drugs__w | double | | | partb_insulin__s | double | | | partb_insulin__w | double | | | dialysis__s | double | | | dialysis__w | double | | | partd_tier1_copay__s | double | | | partd_tier1_copay__w | double | | | partd_tier2_copay__s | double | | | partd_tier2_copay__w | double | | | partd_tier4_coins__s | double | | | partd_tier4_coins__w | double | | | partd_tier5_coins__s | double | | | partd_tier5_coins__w | double | | | primary_care_pct_copay__s | double | | | primary_care_pct_copay__w | double | | | primary_care_pct_coins__s | double | | | primary_care_pct_coins__w | double | | | primary_care_coins__s | double | | | primary_care_coins__w | double | | | specialist_pct_copay__s | double | | | specialist_pct_copay__w | double | | | specialist_pct_coins__s | double | | | specialist_pct_coins__w | double | | | specialist_coins__s | double | | | specialist_coins__w | double | | | telehealth_pct_copay__s | double | | | telehealth_pct_copay__w | double | | | telehealth_pct_coins__s | double | | | telehealth_pct_coins__w | double | | | telehealth_coins__s | double | | | telehealth_coins__w | double | | | mental_health_ind_pct_copay__s | double | | | mental_health_ind_pct_copay__w | double | | | mental_health_ind_pct_coins__s | double | | | mental_health_ind_pct_coins__w | double | | | mental_health_ind_coins__s | double | | | mental_health_ind_coins__w | double | | | physical_therapy_pct_copay__s | double | | | physical_therapy_pct_copay__w | double | | | physical_therapy_pct_coins__s | double | | | physical_therapy_pct_coins__w | double | | | physical_therapy_coins__s | double | | | physical_therapy_coins__w | double | | | er_pct_copay__s | double | | | er_pct_copay__w | double | | | er_pct_coins__s | double | | | er_pct_coins__w | double | | | er_coins__s | double | | | er_coins__w | double | | | urgent_pct_copay__s | double | | | urgent_pct_copay__w | double | | | urgent_pct_coins__s | double | | | urgent_pct_coins__w | double | | | urgent_coins__s | double | | | urgent_coins__w | double | | | ambulance_ground_pct_copay__s | double | | | ambulance_ground_pct_copay__w | double | | | ambulance_ground_pct_coins__s | double | | | ambulance_ground_pct_coins__w | double | | | ambulance_ground_coins__s | double | | | ambulance_ground_coins__w | double | | | outpatient_hosp_pct_copay__s | double | | | outpatient_hosp_pct_copay__w | double | | | outpatient_hosp_pct_coins__s | double | | | outpatient_hosp_pct_coins__w | double | | | outpatient_hosp_coins__s | double | | | outpatient_hosp_coins__w | double | | | imaging_complex_pct_copay__s | double | | | imaging_complex_pct_copay__w | double | | | imaging_complex_pct_coins__s | double | | | imaging_complex_pct_coins__w | double | | | imaging_complex_coins__s | double | | | imaging_complex_coins__w | double | | | radiology_pct_copay__s | double | | | radiology_pct_copay__w | double | | | radiology_pct_coins__s | double | | | radiology_pct_coins__w | double | | | radiology_coins__s | double | | | radiology_coins__w | double | | | lab_pct_copay__s | double | | | lab_pct_copay__w | double | | | lab_pct_coins__s | double | | | lab_pct_coins__w | double | | | lab_coins__s | double | | | lab_coins__w | double | | | inpatient_pct_copay__s | double | | | inpatient_pct_copay__w | double | | | inpatient_pct_coins__s | double | | | inpatient_pct_coins__w | double | | | inpatient_coins__s | double | | | inpatient_coins__w | double | | | snf_pct_copay__s | double | | | snf_pct_copay__w | double | | | snf_pct_coins__s | double | | | snf_pct_coins__w | double | | | snf_coins__s | double | | | snf_coins__w | double | | | primary_care_ll_known__s | double | | | primary_care_ll_known__w | double | | | primary_care_llc_from__s | double | | | primary_care_llc_from__w | double | | | primary_care_llc_to__s | double | | | primary_care_llc_to__w | double | | | primary_care_lli_from__s | double | | | primary_care_lli_from__w | double | | | primary_care_lli_to__s | double | | | primary_care_lli_to__w | double | | | primary_care_sw_coins__s | double | | | primary_care_sw_coins__w | double | | | primary_care_sw_copay__s | double | | | primary_care_sw_copay__w | double | | | specialist_ll_known__s | double | | | specialist_ll_known__w | double | | | specialist_llc_from__s | double | | | specialist_llc_from__w | double | | | specialist_llc_to__s | double | | | specialist_llc_to__w | double | | | specialist_lli_from__s | double | | | specialist_lli_from__w | double | | | specialist_lli_to__s | double | | | specialist_lli_to__w | double | | | specialist_sw_coins__s | double | | | specialist_sw_coins__w | double | | | specialist_sw_copay__s | double | | | specialist_sw_copay__w | double | | | telehealth_ll_known__s | double | | | telehealth_ll_known__w | double | | | telehealth_llc_from__s | double | | | telehealth_llc_from__w | double | | | telehealth_llc_to__s | double | | | telehealth_llc_to__w | double | | | telehealth_lli_from__s | double | | | telehealth_lli_from__w | double | | | telehealth_lli_to__s | double | | | telehealth_lli_to__w | double | | | telehealth_sw_coins__s | double | | | telehealth_sw_coins__w | double | | | telehealth_sw_copay__s | double | | | telehealth_sw_copay__w | double | | | mental_health_ind_ll_known__s | double | | | mental_health_ind_ll_known__w | double | | | mental_health_ind_llc_from__s | double | | | mental_health_ind_llc_from__w | double | | | mental_health_ind_llc_to__s | double | | | mental_health_ind_llc_to__w | double | | | mental_health_ind_lli_from__s | double | | | mental_health_ind_lli_from__w | double | | | mental_health_ind_lli_to__s | double | | | mental_health_ind_lli_to__w | double | | | mental_health_ind_sw_coins__s | double | | | mental_health_ind_sw_coins__w | double | | | mental_health_ind_sw_copay__s | double | | | mental_health_ind_sw_copay__w | double | | | physical_therapy_ll_known__s | double | | | physical_therapy_ll_known__w | double | | | physical_therapy_llc_from__s | double | | | physical_therapy_llc_from__w | double | | | physical_therapy_llc_to__s | double | | | physical_therapy_llc_to__w | double | | | physical_therapy_lli_from__s | double | | | physical_therapy_lli_from__w | double | | | physical_therapy_lli_to__s | double | | | physical_therapy_lli_to__w | double | | | physical_therapy_sw_coins__s | double | | | physical_therapy_sw_coins__w | double | | | physical_therapy_sw_copay__s | double | | | physical_therapy_sw_copay__w | double | | | er_ll_known__s | double | | | er_ll_known__w | double | | | er_llc_from__s | double | | | er_llc_from__w | double | | | er_llc_to__s | double | | | er_llc_to__w | double | | | er_lli_from__s | double | | | er_lli_from__w | double | | | er_lli_to__s | double | | | er_lli_to__w | double | | | er_sw_coins__s | double | | | er_sw_coins__w | double | | | er_sw_copay__s | double | | | er_sw_copay__w | double | | | urgent_ll_known__s | double | | | urgent_ll_known__w | double | | | urgent_llc_from__s | double | | | urgent_llc_from__w | double | | | urgent_llc_to__s | double | | | urgent_llc_to__w | double | | | urgent_lli_from__s | double | | | urgent_lli_from__w | double | | | urgent_lli_to__s | double | | | urgent_lli_to__w | double | | | urgent_sw_coins__s | double | | | urgent_sw_coins__w | double | | | urgent_sw_copay__s | double | | | urgent_sw_copay__w | double | | | ambulance_ground_ll_known__s | double | | | ambulance_ground_ll_known__w | double | | | ambulance_ground_llc_from__s | double | | | ambulance_ground_llc_from__w | double | | | ambulance_ground_llc_to__s | double | | | ambulance_ground_llc_to__w | double | | | ambulance_ground_lli_from__s | double | | | ambulance_ground_lli_from__w | double | | | ambulance_ground_lli_to__s | double | | | ambulance_ground_lli_to__w | double | | | ambulance_ground_sw_coins__s | double | | | ambulance_ground_sw_coins__w | double | | | ambulance_ground_sw_copay__s | double | | | ambulance_ground_sw_copay__w | double | | | outpatient_hosp_ll_known__s | double | | | outpatient_hosp_ll_known__w | double | | | outpatient_hosp_llc_from__s | double | | | outpatient_hosp_llc_from__w | double | | | outpatient_hosp_llc_to__s | double | | | outpatient_hosp_llc_to__w | double | | | outpatient_hosp_lli_from__s | double | | | outpatient_hosp_lli_from__w | double | | | outpatient_hosp_lli_to__s | double | | | outpatient_hosp_lli_to__w | double | | | outpatient_hosp_sw_coins__s | double | | | outpatient_hosp_sw_coins__w | double | | | outpatient_hosp_sw_copay__s | double | | | outpatient_hosp_sw_copay__w | double | | | imaging_complex_ll_known__s | double | | | imaging_complex_ll_known__w | double | | | imaging_complex_llc_from__s | double | | | imaging_complex_llc_from__w | double | | | imaging_complex_llc_to__s | double | | | imaging_complex_llc_to__w | double | | | imaging_complex_lli_from__s | double | | | imaging_complex_lli_from__w | double | | | imaging_complex_lli_to__s | double | | | imaging_complex_lli_to__w | double | | | imaging_complex_sw_coins__s | double | | | imaging_complex_sw_coins__w | double | | | imaging_complex_sw_copay__s | double | | | imaging_complex_sw_copay__w | double | | | radiology_ll_known__s | double | | | radiology_ll_known__w | double | | | radiology_llc_from__s | double | | | radiology_llc_from__w | double | | | radiology_llc_to__s | double | | | radiology_llc_to__w | double | | | radiology_lli_from__s | double | | | radiology_lli_from__w | double | | | radiology_lli_to__s | double | | | radiology_lli_to__w | double | | | radiology_sw_coins__s | double | | | radiology_sw_coins__w | double | | | radiology_sw_copay__s | double | | | radiology_sw_copay__w | double | | | lab_ll_known__s | double | | | lab_ll_known__w | double | | | lab_llc_from__s | double | | | lab_llc_from__w | double | | | lab_llc_to__s | double | | | lab_llc_to__w | double | | | lab_lli_from__s | double | | | lab_lli_from__w | double | | | lab_lli_to__s | double | | | lab_lli_to__w | double | | | lab_sw_coins__s | double | | | lab_sw_coins__w | double | | | lab_sw_copay__s | double | | | lab_sw_copay__w | double | | | inpatient_ll_known__s | double | | | inpatient_ll_known__w | double | | | inpatient_llc_from__s | double | | | inpatient_llc_from__w | double | | | inpatient_llc_to__s | double | | | inpatient_llc_to__w | double | | | inpatient_lli_from__s | double | | | inpatient_lli_from__w | double | | | inpatient_lli_to__s | double | | | inpatient_lli_to__w | double | | | inpatient_sw_coins__s | double | | | inpatient_sw_coins__w | double | | | inpatient_sw_copay__s | double | | | inpatient_sw_copay__w | double | | | snf_ll_known__s | double | | | snf_ll_known__w | double | | | snf_llc_from__s | double | | | snf_llc_from__w | double | | | snf_llc_to__s | double | | | snf_llc_to__w | double | | | snf_lli_from__s | double | | | snf_lli_from__w | double | | | snf_lli_to__s | double | | | snf_lli_to__w | double | | | snf_sw_coins__s | double | | | snf_sw_coins__w | double | | | snf_sw_copay__s | double | | | snf_sw_copay__w | double | | | premium__c | double | | | moop__c | double | | | medical_deductible__c | double | | | partd_deductible__c | double | | | primary_care__c | double | | | specialist__c | double | | | telehealth__c | double | | | mental_health_ind__c | double | | | er__c | double | | | urgent__c | double | | | ambulance_ground__c | double | | | hosp_5day__c | double | | | inpatient__c | double | | | snf__c | double | | | outpatient_hosp__c | double | | | asc__c | double | | | imaging_complex__c | double | | | radiology__c | double | | | lab__c | double | | | physical_therapy__c | double | | | dme__c | double | | | partb_drugs__c | double | | | partb_insulin__c | double | | | dialysis__c | double | | | partd_tier1_copay__c | double | | | partd_tier2_copay__c | double | | | partd_tier4_coins__c | double | | | partd_tier5_coins__c | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_company_cells_v20261007a WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_company_cells_v20261007a")` first. # Vlada locked benefit engine atoms, version v20261005 (the table behind vw_benefit_engine_atoms) `medicare_semantic.benefit_engine_atoms_v20261005` · Medicare Advantage, Part D, Medicaid · status live · 802,687 rows The versioned, immutable atom table of the locked benefit engine as locked on 2026-10-05 (Parquet, one file per base year). Read the pointer view vw_benefit_engine_atoms unless a question must pin this exact version; the same rules apply (ratio of weighted sums, one bucket at a time, the 2027 level is the 2026 members followed). Superseded 2026-10-06 by benefit_engine_atoms_v20261006 (the pointer now reads that version); kept queryable by name, never rewritten. Owner: the Benefits lane. **Grain.** Identical to medicare_semantic.vw_benefit_engine_atoms (the pointer view selects this version whole). 802,687 rows (measured 2026-10-05). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_engine_atoms_v20261005 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_engine_atoms_v20261005")` first. # Vlada locked benefit engine atoms, version v20261006 (the table behind vw_benefit_engine_atoms) `medicare_semantic.benefit_engine_atoms_v20261006` · Medicare Advantage, Part D, Medicaid · status live · 802,687 rows The versioned, immutable atom table of the locked benefit engine as locked on 2026-10-06 (rebuilt on benefit vector v20261006b: the CY2025 in-network medical deductible read from the filing per plan segment; only the deductible columns of base 2025 book rows and base 2024 next rows differ from v20261005) (Parquet, one file per base year). Read the pointer view vw_benefit_engine_atoms unless a question must pin this exact version; the same rules apply (ratio of weighted sums, one bucket at a time, the 2027 level is the 2026 members followed). Superseded by benefit_engine_atoms_v20261006b; kept queryable by name. Owner: the Benefits lane. **Grain.** Identical to medicare_semantic.vw_benefit_engine_atoms (the pointer view selects this version whole). 802,687 rows (measured 2026-10-05). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_engine_atoms_v20261006 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_engine_atoms_v20261006")` first. # Vlada locked benefit engine atoms, version v20261006b (the table behind vw_benefit_engine_atoms) `medicare_semantic.benefit_engine_atoms_v20261006b` · Medicare Advantage, Part D, Medicaid · status live · 802,687 rows The versioned, immutable atom table of the locked benefit engine as locked on 2026-10-06 (rebuilt on benefit vector v20261006bb: the CY2025 in-network medical deductible read from the filing per plan segment; only the deductible columns of base 2025 book rows and base 2024 next rows differ from v20261005) (Parquet, one file per base year). Read the pointer view vw_benefit_engine_atoms unless a question must pin this exact version; the same rules apply (ratio of weighted sums, one bucket at a time, the 2027 level is the 2026 members followed). Superseded by benefit_engine_atoms_v20261006c; kept queryable by name. Owner: the Benefits lane. **Grain.** Identical to medicare_semantic.vw_benefit_engine_atoms (the pointer view selects this version whole). 802,687 rows (measured 2026-10-05). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_engine_atoms_v20261006b WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_engine_atoms_v20261006b")` first. # Vlada locked benefit engine atoms, version v20261006c (the table behind vw_benefit_engine_atoms) `medicare_semantic.benefit_engine_atoms_v20261006c` · Medicare Advantage, Part D, Medicaid · status live · 802,687 rows The versioned, immutable atom table of the locked benefit engine as locked on 2026-10-06 (rebuilt on benefit vector v20261006c: regional PPO members are assigned and followed through their CMS region, so their 2027 benefits are now followed; D-SNP deductibles are the filed design, with what a full dual pays ($0) is kept separate in the benefit vector's dual-effective columns, never mixed in) (Parquet, one file per base year). Read the pointer view vw_benefit_engine_atoms unless a question must pin this exact version; the same rules apply (ratio of weighted sums, one bucket at a time, the 2027 level is the 2026 members followed). Superseded by benefit_engine_atoms_v20261007a; kept queryable by name. Owner: the Benefits lane. **Grain.** Identical to medicare_semantic.vw_benefit_engine_atoms (the pointer view selects this version whole). 802,687 rows (measured 2026-10-05). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_engine_atoms_v20261006c WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_engine_atoms_v20261006c")` first. # Vlada locked benefit engine atoms, version v20261007a (the table behind vw_benefit_engine_atoms) `medicare_semantic.benefit_engine_atoms_v20261007a` · Medicare Advantage, Part D, Medicaid · status live · 802,687 rows The versioned, immutable atom table of the locked benefit engine as locked on 2026-10-07, Edition 1.1 (rebuilt on benefit vector v20261007a: a deductible filed without a service scope is out of network only, $0 in network, footnoted; any Part B buydown above $0 counts as offered, with buydowns under $10 a month in their own column giveback_pct_token; CPSC revision 4 enrollment, identical rows) (Parquet, one file per base year). Read the pointer view vw_benefit_engine_atoms unless a question must pin this exact version; the same rules apply (ratio of weighted sums, one bucket at a time, the 2027 level is the 2026 members followed). Superseded by benefit_engine_atoms_v20261008a; kept queryable by name. Owner: the Benefits lane. **Grain.** Identical to medicare_semantic.vw_benefit_engine_atoms (the pointer view selects this version whole). 802,687 rows (measured 2026-10-05). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pct_token | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_engine_atoms_v20261007a WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_engine_atoms_v20261007a")` first. # Vlada locked benefit engine atoms, version v20261008a (the table behind vw_benefit_engine_atoms) `medicare_semantic.benefit_engine_atoms_v20261008a` · Medicare Advantage, Part D, Medicaid · status live · 824,757 rows The versioned, immutable atom table of the locked benefit engine as locked on 2026-10-08 (v20261007a, Edition 1.1, with regional PPOs followed for base years 2022-2024: PlanRegionArea's blank 2017-2025 segment_id reads as segment 0; base_year 2026 value-identical to v20261007a; on benefit vector v20261007a: a deductible filed without a service scope is out of network only, $0 in network, footnoted; any Part B buydown above $0 counts as offered, with buydowns under $10 a month in their own column giveback_pct_token; CPSC revision 4 enrollment, identical rows) (Parquet, one file per base year). Read the pointer view vw_benefit_engine_atoms unless a question must pin this exact version; the same rules apply (ratio of weighted sums, one bucket at a time, the 2027 level is the 2026 members followed). Owner: the Benefits lane. **Grain.** Identical to medicare_semantic.vw_benefit_engine_atoms (the pointer view selects this version whole). 824,757 rows (measured 2026-10-08). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pct_token | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.benefit_engine_atoms_v20261008a WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.benefit_engine_atoms_v20261008a")` first. # Vlada County Volatility Index v4 by county and product type (Report 2's audited table): members, plan ended, moved, material cut, stable and gains, 2016-2027 `medicare_semantic.cvi_county_v4` · Medicare Advantage, Part D, Medicaid · status live · 140,775 rows Report 2's audited County Volatility Index table: Of the members in a county's individual Medicare Advantage plans the September before a plan year, those whose plan ended (no successor sold in the county), who were moved by the insurer into another plan ID, or whose plan stayed and made a material cut (premium up $10+ a month, in-network MOOP up $500+ outside CMS's ceiling-to-ceiling move, comprehensive dental max down $500+ or dropped), per 100. Each member counts once, in the first bucket that applies (plan ended > moved > material cut > stable); gains are counted beside, never netted. Per county x product type x plan year: members, plans, must_pick (plan ended), moved, cut, stable, no_benefit_row, benefit_any_unknown, gain_any, gain_only, the cut by benefit (cut_premium, cut_moop, cut_dental; cut_moop_raw = the raw rise before the ceiling rule), moop_ceiling_to_ceiling, the OTC and Part B giveback side columns, benefit_part_locked and thin. Index = 100 x (must_pick + moved + cut) / members, from 2021. **Grain.** One row per plan_year x state x county_ssa x product (unique: 140,775 rows = 140,775 keys, Athena 45461f1a); nine product types, 3,164 SSA counties. Rows by plan_year: 2016 8,930; 2017 8,957; 2018 9,052; 2019 9,710; 2020 10,393; 2021 11,097; 2022 11,734; 2023 12,632; 2024 13,587; 2025 14,380; 2026 15,013; 2027 15,290 (Athena 2b51c797). No FIPS column (cvi_plan_county_v4 carries it). | column | type | meaning | |---|---|---| | plan_year | int | | | state | string | | | county_ssa | string | | | county_name | string | | | product | varchar(13) | | | members | bigint | | | plans | bigint | | | must_pick | bigint | | | moved | bigint | | | cut | bigint | | | stable | bigint | | | no_benefit_row | bigint | | | benefit_any_unknown | bigint | | | gain_any | bigint | | | gain_only | bigint | | | cut_premium | bigint | | | cut_moop | bigint | | | cut_moop_raw | bigint | | | moop_ceiling_to_ceiling | bigint | | | cut_otc_side | bigint | | | cut_dental | bigint | | | cut_giveback_side | bigint | | | benefit_part_locked | boolean | | | thin | boolean | | | version | varchar(2) | | | reading | varchar(296) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.cvi_county_v4 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.cvi_county_v4")` first. # Vlada County Volatility Index v4 by plan and county: each MA plan's September members and what happened to them the next plan year (plan ended, moved, material cut, stable), 2016-2027 `medicare_semantic.cvi_plan_county_v4` · Medicare Advantage, Part D, Medicaid · status live · 691,982 rows The County Volatility Index (Report 2) at its own grain, the rows medicare_semantic.cvi_county_v4 sums: Of the members in a county's individual Medicare Advantage plans the September before a plan year, those whose plan ended (no successor sold in the county), who were moved by the insurer into another plan ID, or whose plan stayed and made a material cut (premium up $10+ a month, in-network MOOP up $500+ outside CMS's ceiling-to-ceiling move, comprehensive dental max down $500+ or dropped), per 100. Each member counts once, in the first bucket that applies (plan ended > moved > material cut > stable); gains are counted beside, never netted. One row per plan in a county with its September members, its bucket, which benefit was cut (cut_premium, cut_moop, cut_dental), the ceiling-to-ceiling MOOP flag, any_gain, the two years' premium, MOOP and dental values (prem_old/new, moop_old/new, dent_old/new), the plan name and CMS's parent the September before (parent_raw). The read layer of get_volatility_index and get_county_view sections=volatility. The index of a group = 100 x sum(members where bucket IN ('plan_ended','moved','material_cut')) / sum(members). **Grain.** One row per plan_year x state x county_ssa x contract_id x plan_id (unique: 691,982 rows = 691,982 keys, Athena a6054eb1), individual H/R plans 001-799 with members the September before. Rows by plan_year: 2016 28,272; 2017 29,496; 2018 30,350; 2019 34,225; 2020 40,924; 2021 48,591; 2022 58,066; 2023 68,999; 2024 78,640; 2025 88,940; 2026 91,821; 2027 93,658 (Athena 7e8f6cb5). 3,163 county FIPS, 10,971 plans, every row with a FIPS. | column | type | meaning | |---|---|---| | plan_year | int | | | state | string | | | county_ssa | string | | | county_fips | string | | | county_name | string | | | product | varchar(13) | | | contract_id | string | | | plan_id | string | | | plan_name | string | | | parent_raw | string | | | members | bigint | | | bucket | varchar(21) | | | cut_premium | boolean | | | cut_moop | boolean | | | cut_dental | boolean | | | moop_ceiling_to_ceiling | boolean | | | any_gain | boolean | | | benefit_any_unknown | boolean | | | prem_old | double | | | prem_new | double | | | moop_old | double | | | moop_new | double | | | dent_old | double | | | dent_new | double | | | version | varchar(2) | | | reading | varchar(173) | | Tools that read it: get_county_view, get_volatility_index Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.cvi_plan_county_v4 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.cvi_plan_county_v4")` first. # MA parent alias dictionary, every CMS parent_org_raw string mapped to a canonical parent, effective-dated and cited `medicare_semantic.dim_parent_alias_v1` · Medicare Advantage, Part D, Medicaid · status live · 1,076 rows The alias half of ADR M-6 (docs/architecture/2026-05-09-medicare-substrate-m6-alias-lineage.md, built 2026-09-30). Every raw parent string carries canonical_parent_id / canonical_parent_name, effective_start / effective_end, event_type (self_identity, string_variant, label_change, rename, brand_of_acquirer, or the acquisition event type of a later segment), lineage_event_id, method_tier (tier0_exact 826 strings, tier0_normalized 78, tier1_corroborated 26, tier2_reasoned 66), confidence, one citation (source type, url, accessed_at, snippet), the corroboration the CMS file gives, and the string's span and size. Renames map for every month; an acquired book joins the acquirer from the close month; Aetna is the CVS Health brand for every month by decision. Seed: pipelines/medicare/data/ma_parent_lineage_v1.yaml plus lineage_event.yaml. **Grain.** One row per parent_org_raw string x effective period. 1,076 rows over all 995 distinct strings of medicare_silver.monthly_contract_enrollment_summary 2006-08 to 2026-09 (measured 2026-09-30); a string has more than one row only where an acquisition moves it to another canonical from the close month. | column | type | meaning | |---|---|---| | parent_org_raw | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | effective_start | date | | | effective_end | date | | | event_type | string | | | lineage_event_id | string | | | method_tier | string | | | confidence | string | | | citation_source_type | string | | | citation_url | string | | | citation_accessed_at | date | | | citation_snippet | string | | | corroboration | string | | | notes | string | | | raw_first_month | date | | | raw_last_month | date | | | raw_contracts | bigint | | | raw_member_months | bigint | | | built_at | string | | | seed_version | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.dim_parent_alias_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.dim_parent_alias_v1")` first. # Vlada Stars measure spine, one row per Star measure identity per rating year 2015 to 2027, with that year's code and cut points `medicare_semantic.dim_stars_measure_identity_v7` · Medicare Advantage, Part D, Medicaid · status live · 583 rows The one place a Star measure keeps its identity across rating years. CMS reuses measure codes (for RY2026, 27 of the 33 Part C codes moved; C14 has named five different measures since 2015). Each row carries that year's measure_id, measure_name, part_type, domain, weight, direction (that year's flag) and direction_latest (the identity's current direction), methodology_version and era, is_new_this_year and is_retired, prior_year_measure_id and next_year_measure_id, cmit_number where CMS gives one, and the cut points for stars 2 to 5 as star_k_threshold with star_k_op (RY2026 Controlling Blood Pressure: star_4_threshold 80, op >=), with ladder_direction and cutpoint_epoch. Built by tools/ma_brain/stars_measure_spine_publish.py; checked cell for cell against an independent derivation with 0 differences; seven invariants pass, including that the direction flag agrees with CMS's own cut point ladder in every year. Tools: get_stars, get_stars_cutpoints. **Grain.** One row per measure_identity_key (part and canonical name, e.g. c:controlling_blood_pressure) x rating_year (2015 to 2027, partition). 583 rows, 40 to 48 identities a year (v7 2026-10-15 corrects 12 historical ladders where CMS printed NA for the lowest bands, op 'floor', and differs from v6 in nothing else; v6 2026-10-08 added series breaks, aliases, guardrail exemption and the final RY2027 release; v6 medicare_semantic.dim_stars_measure_identity_v6 is superseded and the untouched rollback). | column | type | meaning | |---|---|---| | measure_identity_key | string | | | measure_id | string | | | measure_name | string | | | canonical_name | string | | | part_type | string | | | domain | string | | | weight | double | | | direction | string | | | direction_latest | string | | | direction_break | boolean | | | methodology_version | string | | | era | string | | | is_new_this_year | boolean | | | is_retired | boolean | | | prev_rated_year | int | | | next_rated_year | int | | | prior_year_measure_id | string | | | next_year_measure_id | string | | | code_moved | boolean | | | first_rating_year | int | | | last_rating_year | int | | | years_rated | bigint | | | cmit_number | string | | | cmit_number_identity | string | | | dual_numbered_with | string | | | has_cutpoints | boolean | | | cutpoint_org_subtype | string | | | cutpoint_epoch | string | | | ladder_direction | string | | | star_2_threshold | double | | | star_2_op | string | | | star_3_threshold | double | | | star_3_op | string | | | star_4_threshold | double | | | star_4_op | string | | | star_5_threshold | double | | | star_5_op | string | | | star_2_text | string | | | star_3_text | string | | | star_4_text | string | | | star_5_text | string | | | series_break | boolean | | | series_start_year | int | | | years_in_series | int | | | guardrail_exempt | boolean | | | series_break_kind | string | | | built_at | string | | Tools that read it: get_star_decomposition, get_stars, get_stars_cutpoints, get_stars_rollup Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.dim_stars_measure_identity_v7 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.dim_stars_measure_identity_v7")` first. # Vlada Landscape benefit change at county grain, the same members' plan design in year Y and year Y+1, 2023 to 2027 `medicare_semantic.fact_landscape_benefits_county_v1` · Medicare Advantage, Part D, Medicaid · status live · 419,954 rows fact_landscape_benefits_v1 with the county in the key (the launch lane's "your county, 2027"): the same cells and the same member-weighted numerator and denominator per metric and weight set (a = the Y design on every September-Y member, b = the Y+1 design on members whose plan continues in their county, r = routed through the crosswalk where held), built by the same SQL with the county kept. A NEW table, never a rewrite of v1. Checked 0-diff on 2026-09-30 three ways per transition: every county x product type x parent row of the Landscape lane's county CSV (members, continue, departing, D1 to D5; 43,211 rows for 2026), every metric of the product-type and national CSVs to the 4th decimal, and every one of the 144 sums against fact_landscape_benefits_v1 at product type x Day-One bucket. Tool: get_landscape_benefit_change with group_by county or a county filter (state required). **Grain.** One row per transition_year (2023 to 2026, partition) x parent x state x county x product_type_y x product_type_y1 x dayone_bucket x truth_class, with cells, members and the same 144 sum columns as fact_landscape_benefits_v1 (24 metrics x 3 weight sets x numerator / denominator). 419,954 rows over four transitions, the row count of fact_landscape_disposition_v1 partition for partition (measured 2026-09-30). | column | type | meaning | |---|---|---| | parent | string | | | state | string | | | county | string | | | product_type_y | string | | | product_type_y1 | string | | | dayone_bucket | string | | | truth_class | string | | | cells | bigint | | | members | bigint | | | a_prem_n | double | | | a_prem_d | double | | | a_prem0_n | double | | | a_prem0_d | double | | | a_cprem_n | double | | | a_cprem_d | double | | | a_cprem0_n | double | | | a_cprem0_d | double | | | a_dprem_n | double | | | a_dprem_d | double | | | a_dprem0_n | double | | | a_dprem0_d | double | | | a_dbasic_n | double | | | a_dbasic_d | double | | | a_dsupp_n | double | | | a_dsupp_d | double | | | a_dlis_n | double | | | a_dlis_d | double | | | a_dlis0_n | double | | | a_dlis0_d | double | | | a_moop_n | double | | | a_moop_d | double | | | a_moop5k_n | double | | | a_moop5k_d | double | | | a_moopmax_n | double | | | a_moopmax_d | double | | | a_haspd_n | double | | | a_haspd_d | double | | | a_enh_n | double | | | a_enh_d | double | | | a_ded_n | double | | | a_ded_d | double | | | a_ded0_n | double | | | a_ded0_d | double | | | a_dedstd_n | double | | | a_dedstd_d | double | | | a_tiernd_n | double | | | a_tiernd_d | double | | | a_dsnp0_n | double | | | a_dsnp0_d | double | | | a_fide_n | double | | | a_fide_d | double | | | a_hide_n | double | | | a_hide_d | double | | | a_star_n | double | | | a_star_d | double | | | a_star4_n | double | | | a_star4_d | double | | | b_prem_n | double | | | b_prem_d | double | | | b_prem0_n | double | | | b_prem0_d | double | | | b_cprem_n | double | | | b_cprem_d | double | | | b_cprem0_n | double | | | b_cprem0_d | double | | | b_dprem_n | double | | | b_dprem_d | double | | | b_dprem0_n | double | | | b_dprem0_d | double | | | b_dbasic_n | double | | | b_dbasic_d | double | | | b_dsupp_n | double | | | b_dsupp_d | double | | | b_dlis_n | double | | | b_dlis_d | double | | | b_dlis0_n | double | | | b_dlis0_d | double | | | b_moop_n | double | | | b_moop_d | double | | | b_moop5k_n | double | | | b_moop5k_d | double | | | b_moopmax_n | double | | | b_moopmax_d | double | | | b_haspd_n | double | | | b_haspd_d | double | | | b_enh_n | double | | | b_enh_d | double | | | b_ded_n | double | | | b_ded_d | double | | | b_ded0_n | double | | | b_ded0_d | double | | | b_dedstd_n | double | | | b_dedstd_d | double | | | b_tiernd_n | double | | | b_tiernd_d | double | | | b_dsnp0_n | double | | | b_dsnp0_d | double | | | b_fide_n | double | | | b_fide_d | double | | | b_hide_n | double | | | b_hide_d | double | | | b_star_n | double | | | b_star_d | double | | | b_star4_n | double | | | b_star4_d | double | | | r_prem_n | double | | | r_prem_d | double | | | r_prem0_n | double | | | r_prem0_d | double | | | r_cprem_n | double | | | r_cprem_d | double | | | r_cprem0_n | double | | | r_cprem0_d | double | | | r_dprem_n | double | | | r_dprem_d | double | | | r_dprem0_n | double | | | r_dprem0_d | double | | | r_dbasic_n | double | | | r_dbasic_d | double | | | r_dsupp_n | double | | | r_dsupp_d | double | | | r_dlis_n | double | | | r_dlis_d | double | | | r_dlis0_n | double | | | r_dlis0_d | double | | | r_moop_n | double | | | r_moop_d | double | | | r_moop5k_n | double | | | r_moop5k_d | double | | | r_moopmax_n | double | | | r_moopmax_d | double | | | r_haspd_n | double | | | r_haspd_d | double | | | r_enh_n | double | | | r_enh_d | double | | | r_ded_n | double | | | r_ded_d | double | | | r_ded0_n | double | | | r_ded0_d | double | | | r_dedstd_n | double | | | r_dedstd_d | double | | | r_tiernd_n | double | | | r_tiernd_d | double | | | r_dsnp0_n | double | | | r_dsnp0_d | double | | | r_fide_n | double | | | r_fide_d | double | | | r_hide_n | double | | | r_hide_d | double | | | r_star_n | double | | | r_star_d | double | | | r_star4_n | double | | | r_star4_d | double | | | next_year | int | | | enrollment_month | date | | | l0_edition | string | | | l1_edition | string | | | crosswalk_held | boolean | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.fact_landscape_benefits_county_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.fact_landscape_benefits_county_v1")` first. # Vlada Landscape benefit change at county grain, the same members' plan design in year Y and year Y+1, 2023 to 2027 `medicare_semantic.fact_landscape_benefits_county_v2` · Medicare Advantage, Part D, Medicaid · status live fact_landscape_benefits_v2 with the county in the key (the launch lane's "your county, 2027"): the same cells and the same member-weighted numerator and denominator per metric and weight set (a = the Y design on every September-Y member, b = the Y+1 design on members whose plan continues in their county, r = routed through the crosswalk where held), built by the same SQL with the county kept. A NEW table, never a rewrite of v1 (2026-10-13, the one MOOP rule). v1 was checked 0-diff on 2026-09-30 against the Landscape lane's county, product-type and national CSVs; v2 equals v1 on every key, members, cells and every sum column but the three MOOP metrics, which move only in the cells holding a filed-$0 plan (railed). Tool: get_landscape_benefit_change with group_by county or a county filter (state required). **Grain.** One row per transition_year (2023 to 2026, partition) x parent x state x county x product_type_y x product_type_y1 x dayone_bucket x truth_class, with cells, members and the same 144 sum columns as fact_landscape_benefits_v2 (24 metrics x 3 weight sets x numerator / denominator). The same rows as fact_landscape_benefits_county_v1, key for key (railed 2026-10-13). | column | type | meaning | |---|---|---| | parent | string | | | state | string | | | county | string | | | product_type_y | string | | | product_type_y1 | string | | | dayone_bucket | string | | | truth_class | string | | | cells | bigint | | | members | bigint | | | a_prem_n | double | | | a_prem_d | double | | | a_prem0_n | double | | | a_prem0_d | double | | | a_cprem_n | double | | | a_cprem_d | double | | | a_cprem0_n | double | | | a_cprem0_d | double | | | a_dprem_n | double | | | a_dprem_d | double | | | a_dprem0_n | double | | | a_dprem0_d | double | | | a_dbasic_n | double | | | a_dbasic_d | double | | | a_dsupp_n | double | | | a_dsupp_d | double | | | a_dlis_n | double | | | a_dlis_d | double | | | a_dlis0_n | double | | | a_dlis0_d | double | | | a_moop_n | double | | | a_moop_d | double | | | a_moop5k_n | double | | | a_moop5k_d | double | | | a_moopmax_n | double | | | a_moopmax_d | double | | | a_haspd_n | double | | | a_haspd_d | double | | | a_enh_n | double | | | a_enh_d | double | | | a_ded_n | double | | | a_ded_d | double | | | a_ded0_n | double | | | a_ded0_d | double | | | a_dedstd_n | double | | | a_dedstd_d | double | | | a_tiernd_n | double | | | a_tiernd_d | double | | | a_dsnp0_n | double | | | a_dsnp0_d | double | | | a_fide_n | double | | | a_fide_d | double | | | a_hide_n | double | | | a_hide_d | double | | | a_star_n | double | | | a_star_d | double | | | a_star4_n | double | | | a_star4_d | double | | | b_prem_n | double | | | b_prem_d | double | | | b_prem0_n | double | | | b_prem0_d | double | | | b_cprem_n | double | | | b_cprem_d | double | | | b_cprem0_n | double | | | b_cprem0_d | double | | | b_dprem_n | double | | | b_dprem_d | double | | | b_dprem0_n | double | | | b_dprem0_d | double | | | b_dbasic_n | double | | | b_dbasic_d | double | | | b_dsupp_n | double | | | b_dsupp_d | double | | | b_dlis_n | double | | | b_dlis_d | double | | | b_dlis0_n | double | | | b_dlis0_d | double | | | b_moop_n | double | | | b_moop_d | double | | | b_moop5k_n | double | | | b_moop5k_d | double | | | b_moopmax_n | double | | | b_moopmax_d | double | | | b_haspd_n | double | | | b_haspd_d | double | | | b_enh_n | double | | | b_enh_d | double | | | b_ded_n | double | | | b_ded_d | double | | | b_ded0_n | double | | | b_ded0_d | double | | | b_dedstd_n | double | | | b_dedstd_d | double | | | b_tiernd_n | double | | | b_tiernd_d | double | | | b_dsnp0_n | double | | | b_dsnp0_d | double | | | b_fide_n | double | | | b_fide_d | double | | | b_hide_n | double | | | b_hide_d | double | | | b_star_n | double | | | b_star_d | double | | | b_star4_n | double | | | b_star4_d | double | | | r_prem_n | double | | | r_prem_d | double | | | r_prem0_n | double | | | r_prem0_d | double | | | r_cprem_n | double | | | r_cprem_d | double | | | r_cprem0_n | double | | | r_cprem0_d | double | | | r_dprem_n | double | | | r_dprem_d | double | | | r_dprem0_n | double | | | r_dprem0_d | double | | | r_dbasic_n | double | | | r_dbasic_d | double | | | r_dsupp_n | double | | | r_dsupp_d | double | | | r_dlis_n | double | | | r_dlis_d | double | | | r_dlis0_n | double | | | r_dlis0_d | double | | | r_moop_n | double | | | r_moop_d | double | | | r_moop5k_n | double | | | r_moop5k_d | double | | | r_moopmax_n | double | | | r_moopmax_d | double | | | r_haspd_n | double | | | r_haspd_d | double | | | r_enh_n | double | | | r_enh_d | double | | | r_ded_n | double | | | r_ded_d | double | | | r_ded0_n | double | | | r_ded0_d | double | | | r_dedstd_n | double | | | r_dedstd_d | double | | | r_tiernd_n | double | | | r_tiernd_d | double | | | r_dsnp0_n | double | | | r_dsnp0_d | double | | | r_fide_n | double | | | r_fide_d | double | | | r_hide_n | double | | | r_hide_d | double | | | r_star_n | double | | | r_star_d | double | | | r_star4_n | double | | | r_star4_d | double | | | next_year | int | | | enrollment_month | date | | | l0_edition | string | | | l1_edition | string | | | crosswalk_held | boolean | | | built_at | string | | Tools that read it: get_landscape_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.fact_landscape_benefits_county_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.fact_landscape_benefits_county_v2")` first. # Vlada Landscape benefit change, the same members' plan design in year Y and year Y+1, 2023 to 2027 `medicare_semantic.fact_landscape_benefits_v1` · Medicare Advantage, Part D, Medicaid · status live The benefit half of the defined Landscape analysis (spec section 4): for the cells of fact_landscape_disposition_v1 without county, the member-weighted numerator and denominator of every metric (premiums and $0 shares, MOOP, Part D deductible shares, MA-PD and enhanced shares, D-SNP $0 cost sharing, FIDE, HIDE, stars) on three weight sets: a = the Y design on every September-Y member, b = the Y+1 design on members whose plan continues in their county, r = the Y+1 design routed through the crosswalk where held. Tool: get_landscape_benefit_change for every grain but county; the county grain is fact_landscape_benefits_county_v1 (2026-09-30, the same cells with the county kept; this table is as built). **Grain.** One row per transition_year (partition) x parent x state x product_type_y x product_type_y1 x dayone_bucket x truth_class, with cells, members and 144 sum columns (24 metrics x 3 weight sets x numerator / denominator). | column | type | meaning | |---|---|---| | parent | string | | | state | string | | | product_type_y | string | | | product_type_y1 | string | | | dayone_bucket | string | | | truth_class | string | | | cells | bigint | | | members | bigint | | | a_prem_n | double | | | a_prem_d | double | | | a_prem0_n | double | | | a_prem0_d | double | | | a_cprem_n | double | | | a_cprem_d | double | | | a_cprem0_n | double | | | a_cprem0_d | double | | | a_dprem_n | double | | | a_dprem_d | double | | | a_dprem0_n | double | | | a_dprem0_d | double | | | a_dbasic_n | double | | | a_dbasic_d | double | | | a_dsupp_n | double | | | a_dsupp_d | double | | | a_dlis_n | double | | | a_dlis_d | double | | | a_dlis0_n | double | | | a_dlis0_d | double | | | a_moop_n | double | | | a_moop_d | double | | | a_moop5k_n | double | | | a_moop5k_d | double | | | a_moopmax_n | double | | | a_moopmax_d | double | | | a_haspd_n | double | | | a_haspd_d | double | | | a_enh_n | double | | | a_enh_d | double | | | a_ded_n | double | | | a_ded_d | double | | | a_ded0_n | double | | | a_ded0_d | double | | | a_dedstd_n | double | | | a_dedstd_d | double | | | a_tiernd_n | double | | | a_tiernd_d | double | | | a_dsnp0_n | double | | | a_dsnp0_d | double | | | a_fide_n | double | | | a_fide_d | double | | | a_hide_n | double | | | a_hide_d | double | | | a_star_n | double | | | a_star_d | double | | | a_star4_n | double | | | a_star4_d | double | | | b_prem_n | double | | | b_prem_d | double | | | b_prem0_n | double | | | b_prem0_d | double | | | b_cprem_n | double | | | b_cprem_d | double | | | b_cprem0_n | double | | | b_cprem0_d | double | | | b_dprem_n | double | | | b_dprem_d | double | | | b_dprem0_n | double | | | b_dprem0_d | double | | | b_dbasic_n | double | | | b_dbasic_d | double | | | b_dsupp_n | double | | | b_dsupp_d | double | | | b_dlis_n | double | | | b_dlis_d | double | | | b_dlis0_n | double | | | b_dlis0_d | double | | | b_moop_n | double | | | b_moop_d | double | | | b_moop5k_n | double | | | b_moop5k_d | double | | | b_moopmax_n | double | | | b_moopmax_d | double | | | b_haspd_n | double | | | b_haspd_d | double | | | b_enh_n | double | | | b_enh_d | double | | | b_ded_n | double | | | b_ded_d | double | | | b_ded0_n | double | | | b_ded0_d | double | | | b_dedstd_n | double | | | b_dedstd_d | double | | | b_tiernd_n | double | | | b_tiernd_d | double | | | b_dsnp0_n | double | | | b_dsnp0_d | double | | | b_fide_n | double | | | b_fide_d | double | | | b_hide_n | double | | | b_hide_d | double | | | b_star_n | double | | | b_star_d | double | | | b_star4_n | double | | | b_star4_d | double | | | r_prem_n | double | | | r_prem_d | double | | | r_prem0_n | double | | | r_prem0_d | double | | | r_cprem_n | double | | | r_cprem_d | double | | | r_cprem0_n | double | | | r_cprem0_d | double | | | r_dprem_n | double | | | r_dprem_d | double | | | r_dprem0_n | double | | | r_dprem0_d | double | | | r_dbasic_n | double | | | r_dbasic_d | double | | | r_dsupp_n | double | | | r_dsupp_d | double | | | r_dlis_n | double | | | r_dlis_d | double | | | r_dlis0_n | double | | | r_dlis0_d | double | | | r_moop_n | double | | | r_moop_d | double | | | r_moop5k_n | double | | | r_moop5k_d | double | | | r_moopmax_n | double | | | r_moopmax_d | double | | | r_haspd_n | double | | | r_haspd_d | double | | | r_enh_n | double | | | r_enh_d | double | | | r_ded_n | double | | | r_ded_d | double | | | r_ded0_n | double | | | r_ded0_d | double | | | r_dedstd_n | double | | | r_dedstd_d | double | | | r_tiernd_n | double | | | r_tiernd_d | double | | | r_dsnp0_n | double | | | r_dsnp0_d | double | | | r_fide_n | double | | | r_fide_d | double | | | r_hide_n | double | | | r_hide_d | double | | | r_star_n | double | | | r_star_d | double | | | r_star4_n | double | | | r_star4_d | double | | | next_year | int | | | enrollment_month | date | | | l0_edition | string | | | l1_edition | string | | | crosswalk_held | boolean | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.fact_landscape_benefits_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.fact_landscape_benefits_v1")` first. # Vlada Landscape benefit change, the same members' plan design in year Y and year Y+1, 2023 to 2027 `medicare_semantic.fact_landscape_benefits_v2` · Medicare Advantage, Part D, Medicaid · status live The benefit half of the defined Landscape analysis (spec section 4): for the cells of fact_landscape_disposition_v1 without county, the member-weighted numerator and denominator of every metric (premiums and $0 shares, MOOP, Part D deductible shares, MA-PD and enhanced shares, D-SNP $0 cost sharing, FIDE, HIDE, stars) on three weight sets: a = the Y design on every September-Y member, b = the Y+1 design on members whose plan continues in their county, r = the Y+1 design routed through the crosswalk where held. Tool: get_landscape_benefit_change for every grain but county; the county grain is fact_landscape_benefits_county_v2 (the same cells with the county kept). Built 2026-10-13 by the same SQL as v1 with the one MOOP rule; v1 is as built and superseded for MOOP. **Grain.** One row per transition_year (partition) x parent x state x product_type_y x product_type_y1 x dayone_bucket x truth_class, with cells, members and 144 sum columns (24 metrics x 3 weight sets x numerator / denominator). | column | type | meaning | |---|---|---| | parent | string | | | state | string | | | product_type_y | string | | | product_type_y1 | string | | | dayone_bucket | string | | | truth_class | string | | | cells | bigint | | | members | bigint | | | a_prem_n | double | | | a_prem_d | double | | | a_prem0_n | double | | | a_prem0_d | double | | | a_cprem_n | double | | | a_cprem_d | double | | | a_cprem0_n | double | | | a_cprem0_d | double | | | a_dprem_n | double | | | a_dprem_d | double | | | a_dprem0_n | double | | | a_dprem0_d | double | | | a_dbasic_n | double | | | a_dbasic_d | double | | | a_dsupp_n | double | | | a_dsupp_d | double | | | a_dlis_n | double | | | a_dlis_d | double | | | a_dlis0_n | double | | | a_dlis0_d | double | | | a_moop_n | double | | | a_moop_d | double | | | a_moop5k_n | double | | | a_moop5k_d | double | | | a_moopmax_n | double | | | a_moopmax_d | double | | | a_haspd_n | double | | | a_haspd_d | double | | | a_enh_n | double | | | a_enh_d | double | | | a_ded_n | double | | | a_ded_d | double | | | a_ded0_n | double | | | a_ded0_d | double | | | a_dedstd_n | double | | | a_dedstd_d | double | | | a_tiernd_n | double | | | a_tiernd_d | double | | | a_dsnp0_n | double | | | a_dsnp0_d | double | | | a_fide_n | double | | | a_fide_d | double | | | a_hide_n | double | | | a_hide_d | double | | | a_star_n | double | | | a_star_d | double | | | a_star4_n | double | | | a_star4_d | double | | | b_prem_n | double | | | b_prem_d | double | | | b_prem0_n | double | | | b_prem0_d | double | | | b_cprem_n | double | | | b_cprem_d | double | | | b_cprem0_n | double | | | b_cprem0_d | double | | | b_dprem_n | double | | | b_dprem_d | double | | | b_dprem0_n | double | | | b_dprem0_d | double | | | b_dbasic_n | double | | | b_dbasic_d | double | | | b_dsupp_n | double | | | b_dsupp_d | double | | | b_dlis_n | double | | | b_dlis_d | double | | | b_dlis0_n | double | | | b_dlis0_d | double | | | b_moop_n | double | | | b_moop_d | double | | | b_moop5k_n | double | | | b_moop5k_d | double | | | b_moopmax_n | double | | | b_moopmax_d | double | | | b_haspd_n | double | | | b_haspd_d | double | | | b_enh_n | double | | | b_enh_d | double | | | b_ded_n | double | | | b_ded_d | double | | | b_ded0_n | double | | | b_ded0_d | double | | | b_dedstd_n | double | | | b_dedstd_d | double | | | b_tiernd_n | double | | | b_tiernd_d | double | | | b_dsnp0_n | double | | | b_dsnp0_d | double | | | b_fide_n | double | | | b_fide_d | double | | | b_hide_n | double | | | b_hide_d | double | | | b_star_n | double | | | b_star_d | double | | | b_star4_n | double | | | b_star4_d | double | | | r_prem_n | double | | | r_prem_d | double | | | r_prem0_n | double | | | r_prem0_d | double | | | r_cprem_n | double | | | r_cprem_d | double | | | r_cprem0_n | double | | | r_cprem0_d | double | | | r_dprem_n | double | | | r_dprem_d | double | | | r_dprem0_n | double | | | r_dprem0_d | double | | | r_dbasic_n | double | | | r_dbasic_d | double | | | r_dsupp_n | double | | | r_dsupp_d | double | | | r_dlis_n | double | | | r_dlis_d | double | | | r_dlis0_n | double | | | r_dlis0_d | double | | | r_moop_n | double | | | r_moop_d | double | | | r_moop5k_n | double | | | r_moop5k_d | double | | | r_moopmax_n | double | | | r_moopmax_d | double | | | r_haspd_n | double | | | r_haspd_d | double | | | r_enh_n | double | | | r_enh_d | double | | | r_ded_n | double | | | r_ded_d | double | | | r_ded0_n | double | | | r_ded0_d | double | | | r_dedstd_n | double | | | r_dedstd_d | double | | | r_tiernd_n | double | | | r_tiernd_d | double | | | r_dsnp0_n | double | | | r_dsnp0_d | double | | | r_fide_n | double | | | r_fide_d | double | | | r_hide_n | double | | | r_hide_d | double | | | r_star_n | double | | | r_star_d | double | | | r_star4_n | double | | | r_star4_d | double | | | next_year | int | | | enrollment_month | date | | | l0_edition | string | | | l1_edition | string | | | crosswalk_held | boolean | | | built_at | string | | Tools that read it: get_county_view, get_landscape_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.fact_landscape_benefits_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.fact_landscape_benefits_v2")` first. # Vlada Landscape disposition, every September member placed against next year's Landscape file, 2023 to 2027 `medicare_semantic.fact_landscape_disposition_v1` · Medicare Advantage, Part D, Medicaid · status live · 419,954 rows The served grain of the defined Landscape analysis (Ben 2026-09-25, tools/ma_brain/landscape_analysis.py): every September-Y member (H/R contracts, plans 001-799) matched to the Y Landscape by plan and county, then placed against the Y+1 file: continues, or departing in five Day-One buckets (D1 same-named plan in the county, D2 plan sold elsewhere, D3 contract in the county, D4 parent in the county, D5 parent gone). Where the Y+1 crosswalk is held (2024 to 2026) truth_class says what really happened (moved, split, stranded_sar, terminated). Every cell of 2026 to 2027 was recomputed from the raw CMS zips with 0 differences (landscape_table_audit.py, 2026-09-28) and every partition checked 0-diff against the lane's CSVs. Tool: get_landscape_exits, which since 2026-09-30 also groups by county (state required) and filters to one county; the industry scope is product_type_y NOT IN ('non-SNP Cost', 'non-SNP MMP'), with which the four bases tie to 25,970,589 / 27,665,108 / 28,931,650 / 29,855,373 members (measured 2026-09-30). **Grain.** One row per transition_year (2023 to 2026, partition) x parent x state x county x product_type_y x product_type_y1 x dayone_bucket x truth_class, with cells (plan-county cells) and members (September-Y enrollment). 419,954 rows over four transitions (measured 2026-09-29). | column | type | meaning | |---|---|---| | parent | string | | | state | string | | | county | string | | | product_type_y | string | | | product_type_y1 | string | | | dayone_bucket | string | | | truth_class | string | | | cells | bigint | | | members | bigint | | | next_year | int | | | enrollment_month | date | | | l0_edition | string | | | l1_edition | string | | | crosswalk_held | boolean | | | built_at | string | | Tools that read it: get_county_view, get_landscape_exits Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.fact_landscape_disposition_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.fact_landscape_disposition_v1")` first. # MA parent lineage events, acquisitions, mergers, novations, renames and divestitures with a citation and what the CMS file measured `medicare_semantic.fact_parent_lineage_event_v1` · Medicare Advantage, Part D, Medicaid · status live · 58 rows The event half of ADR M-6. Each row carries event_name, event_type (acquisition, merger, novation, divestiture, rebrand), announced_date, effective_date (the close), cms_recognition_month (the first month the CMS file carries the successor on the moved contracts, measured), predecessor and successor parents, the contracts the seed cites and the contracts the CMS file shows moving within six months of the close (with members moved), enrollment_at_event and transaction_value_usd where cited, cascade_strategy, and one citation. Entity-level events drive the acquisition segments of dim_parent_alias_v1; contract-level divestitures (a PDP book sold while the parent continues) are recorded here only. **Grain.** One row per event_id. 58 events (measured 2026-09-30), 20 from the M-6 Phase 1 seed (lineage_event.yaml) and 38 from ma_parent_lineage_v1.yaml. | column | type | meaning | |---|---|---| | event_id | string | | | event_name | string | | | event_type | string | | | announced_date | date | | | effective_date | date | | | cms_recognition_month | date | | | predecessor_parents | string | | | successor_parents | string | | | affected_contracts_cited | string | | | affected_contracts_measured | string | | | contracts_moved_measured | bigint | | | members_moved_measured | bigint | | | enrollment_at_event_cited | bigint | | | transaction_value_usd | bigint | | | cascade_strategy | string | | | citation_source_type | string | | | citation_url | string | | | citation_accessed_at | date | | | citation_snippet | string | | | registry | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.fact_parent_lineage_event_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.fact_parent_lineage_event_v1")` first. # MA spine: enrollment per plan x county x month (known counts) `medicare_semantic.ma_spine_enroll_plan_county_v20261012a` · Medicare Advantage, Part D, Medicaid · status partial Part of the MA spine (one connected, normalized Medicare Advantage layer: docs/architecture/2026-10-12-ma-spine.md). Built by tools/ma_spine/, rails pass (docs/architecture/ma-spine/STATUS.md). Accepted for the raw door 2026-11-02 (acceptance gate CANDIDATE, reachable, has data, schema captured; Omega's MA enrollment master reads it). **Grain.** One row per contract-plan x county SSA x month with a published count (MA contracts H/R), market, product, lineage, parent as was / as now. Partitioned by year. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | county_ssa | string | | | county_fips | string | | | state | string | | | report_month | date | | | members | int | | | egwp_plan_id | boolean | | | market_key | string | | | product_type | string | | | lineage_id | string | | | parent_id_as_was | string | | | parent_id_as_now | string | | | spine_version | varchar(10) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.ma_spine_enroll_plan_county_v20261012a WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.ma_spine_enroll_plan_county_v20261012a")` first. # MA spine: parent per contract x month (as was, as now) `medicare_semantic.ma_spine_parent_month_v20261017a` · Medicare Advantage, Part D, Medicaid · status partial Part of the MA spine (docs/architecture/2026-10-12-ma-spine.md; Alpha lane; rebuilds take the next letter, never overwrite). Joins enroll_plan_county / enroll_plan_month on contract_id + report_month; read parent_*_as_now to restate history to today's parent, parent_*_as_was for the parent of the day. Accepted for the raw door 2026-11-02 (acceptance gate CANDIDATE, reachable, has data, schema captured; Omega's MA enrollment master reads it). **Grain.** One row per contract_id x report_month: the parent organization as CMS printed it that month (parent_of_record), the parent as it was then (parent_id_as_was, parent_name_as_was) and the parent as it is today (parent_id_as_now, parent_name_as_now, with as_now_rule and as_now_events naming the restatement), method_tier, confidence, organization_type, plan_type, enrollment_count, spine_version. | column | type | meaning | |---|---|---| | contract_id | string | | | report_month | date | | | parent_id_as_was | string | | | parent_name_as_was | string | | | parent_id_as_now | string | | | parent_name_as_now | string | | | as_now_rule | varchar(16) | | | as_now_events | varchar(33) | | | parent_of_record | string | | | method_tier | string | | | confidence | string | | | applied_event_id | string | | | organization_type | string | | | plan_type | string | | | enrollment_count | int | | | spine_version | varchar(10) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.ma_spine_parent_month_v20261017a WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.ma_spine_parent_month_v20261017a")` first. # MA spine: plan-year keys (market, product, Part D, parent, lineage) `medicare_semantic.ma_spine_plan_year_v20261012c` · Medicare Advantage, Part D, Medicaid · status partial Part of the MA spine (one connected, normalized Medicare Advantage layer: docs/architecture/2026-10-12-ma-spine.md). Built by tools/ma_spine/, rails pass (docs/architecture/ma-spine/STATUS.md). Accepted for the raw door 2026-11-02 (acceptance gate CANDIDATE, reachable, has data, schema captured; Omega's MA enrollment master reads it). **Grain.** One row per plan segment x plan year, 2008-2027: market (MA, PACE, Cost, MMP, PDP) and market_key (EGWP suffixed), product type, SNP class, Part D with its source, parent as was / as now, lineage, classification_source. | column | type | meaning | |---|---|---| | plan_year | bigint | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | plan_segment_key | string | | | plan | string | | | plan_name | string | | | market_raw | string | | | market | string | | | market_key | string | | | is_employer_group | boolean | | | product_type | string | | | snp_class | string | | | dsnp_integration_status | string | | | part_d | string | | | part_d_source | varchar(13) | | | parent_id_as_was | string | | | parent_name_as_was | string | | | parent_id_as_now | string | | | parent_name_as_now | string | | | parent_source | varchar(15) | | | parent_ref_month | string | | | parent_provisional | boolean | | | lineage_id | string | | | lineage_link | string | | | classification_source | varchar(24) | | | spine_version | varchar(10) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.ma_spine_plan_year_v20261012c WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.ma_spine_plan_year_v20261012c")` first. # Vlada Plan Value v18 parent shelf + ranking (who cut, who added), national / state / county x product type x parent `medicare_semantic.plan_value_shelf_v18` · Medicare Advantage, Part D, Medicaid · status live · 80,160 rows Every parent in a place, for one product type, on two bases side by side. SAME MEMBERS (wtd_plan_value_2026 / _2027 / wtd_change, members_followed, members_valued_both_years): the signed same-member numbers of vw_plan_value_pairs_v18 at plan_type ALL, equal on every row. PLANS ON THE SHELF (avg_plan_value_2026 / _2027 / avg_change, avg_xpd_* without Part D): the simple average over the distinct plan-segments the parent offers in the geography each contract year (CMS service area, vw_pbp_plan_county_service_area; regional PPOs over every county of their CMS region; employer plans 800-899 excluded; valued plans only), with plans_offered / new / dropped / valued counts and ranks (1 = biggest increase among parents, ties by members_2026). State and national averages are over the DISTINCT plan-segments offered anywhere in the state / nation. Parent of a 2027 plan = parent_organization_2027, else the contract's resolved parent (vw_ma_parent_resolved_v1), else 'NEW CONTRACT: ' + the landscape parent. Built by ops/scripts/plan_value_shelf_sql.py; gates ops/scripts/plan_value_shelf_check.py. Owner source: register w3 vlada_w3_benvat. **Grain.** One row per geography_level x state x county_ssa x product_type x parent_organization, parent ALL = the market (80,160 rows = 80,160 distinct keys, measured 2026-10-09 in Athena - national 408, state 1,905, county 77,847; nine product types, never pooled). | column | type | meaning | |---|---|---| | geography_level | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | product_type | string | | | parent_organization | string | | | members_2026 | double | | | members_followed | double | | | members_valued_both_years | double | | | wtd_plan_value_2026 | double | | | wtd_plan_value_2027 | double | | | wtd_change | double | | | plans_offered_2026 | bigint | | | plans_offered_2027 | bigint | | | plans_new_2027 | bigint | | | plans_dropped_2027 | bigint | | | plans_valued_2027 | bigint | | | plans_valued_xpd_2027 | bigint | | | avg_plan_value_2026 | double | | | avg_plan_value_2027 | double | | | avg_change | double | | | avg_xpd_2026 | double | | | avg_xpd_2027 | double | | | avg_xpd_change | double | | | rank_wtd_change | bigint | | | rank_avg_change | bigint | | | rank_avg_xpd_change | bigint | | | n_parents_in_market | int | | | build | varchar(20) | | | basis | varchar(536) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.plan_value_shelf_v18 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.plan_value_shelf_v18")` first. # Vlada Plan Value v18 parent shelf + ranking, v18b (who cut, who added; new contracts rolled into their parent), national / state / county x product type x parent `medicare_semantic.plan_value_shelf_v18b` · Medicare Advantage, Part D, Medicaid · status live · 80,012 rows Every parent in a place, for one product type, on two bases side by side. SAME MEMBERS (wtd_plan_value_2026 / _2027 / wtd_change, members_followed, members_valued_both_years): the signed same-member numbers of vw_plan_value_pairs_v18 at plan_type ALL, equal on every row. PLANS ON THE SHELF (avg_plan_value_2026 / _2027 / avg_change, avg_xpd_* without Part D): the simple average over the distinct plan-segments the parent offers in the geography each contract year (CMS service area, vw_pbp_plan_county_service_area; regional PPOs over every county of their CMS region; employer plans 800-899 excluded; valued plans only), with plans_offered / new / dropped / valued counts and ranks (1 = biggest increase among parents, ties by members_2026). State and national averages are over the DISTINCT plan-segments offered anywhere in the state / nation. Parent of a 2027 plan = parent_organization_2027, else the contract's resolved parent (vw_ma_parent_resolved_v1), else the landscape parent: that parent itself when it is already a resolved parent (v18b: a new contract of a known parent rolls into it), else 'NEW CONTRACT: ' + the name. /ma reads v18b. Built by ops/scripts/plan_value_shelf_sql.py; gates ops/scripts/plan_value_shelf_check.py. Owner source: register w3 vlada_w3_benvat. **Grain.** One row per geography_level x state x county_ssa x product_type x parent_organization, parent ALL = the market (80,012 rows = 80,012 distinct keys, measured 2026-10-09 in Athena - national 389, state 1,895, county 77,728; nine product types, never pooled). | column | type | meaning | |---|---|---| | geography_level | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | product_type | string | | | parent_organization | string | | | members_2026 | double | | | members_followed | double | | | members_valued_both_years | double | | | wtd_plan_value_2026 | double | | | wtd_plan_value_2027 | double | | | wtd_change | double | | | plans_offered_2026 | bigint | | | plans_offered_2027 | bigint | | | plans_new_2027 | bigint | | | plans_dropped_2027 | bigint | | | plans_valued_2027 | bigint | | | plans_valued_xpd_2027 | bigint | | | avg_plan_value_2026 | double | | | avg_plan_value_2027 | double | | | avg_change | double | | | avg_xpd_2026 | double | | | avg_xpd_2027 | double | | | avg_xpd_change | double | | | rank_wtd_change | bigint | | | rank_avg_change | bigint | | | rank_avg_xpd_change | bigint | | | n_parents_in_market | int | | | build | varchar(21) | | | basis | varchar(536) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.plan_value_shelf_v18b WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.plan_value_shelf_v18b")` first. # Vlada Plan Value v19d parent shelf + ranking (Method Lock 1.0; who cut, who added; new contracts rolled into their parent), national / state / county x product type x parent `medicare_semantic.plan_value_shelf_v19d` · Medicare Advantage, Part D, Medicaid · status live · 80,002 rows Every parent in a place, for one product type, on two bases side by side. SAME MEMBERS (wtd_plan_value_2026 / _2027 / wtd_change, members_followed, members_valued_both_years): the signed same-member numbers of vw_plan_value_pairs_v19d at plan_type ALL, equal on every row. PLANS ON THE SHELF (avg_plan_value_2026 / _2027 / avg_change, avg_xpd_* without Part D): the simple average over the distinct plan-segments the parent offers in the geography each contract year (CMS service area, vw_pbp_plan_county_service_area; regional PPOs over every county of their CMS region; employer plans 800-899 excluded; valued plans only), with plans_offered / new / dropped / valued counts and ranks (1 = biggest increase among parents, ties by members_2026). State and national averages are over the DISTINCT plan-segments offered anywhere in the state / nation. Parent of a 2027 plan = parent_organization_2027, else the contract's resolved parent (vw_ma_parent_resolved_v1), else the landscape parent: that parent itself when it is already a resolved parent (a new contract of a known parent rolls into it, as v18b), else 'NEW CONTRACT: ' + the name. /ma reads v19d after the flip. Built by ops/scripts/plan_value_shelf_sql.py; gates ops/scripts/plan_value_shelf_check.py. Owner source: register w3 vlada_w3_benvat. **Grain.** One row per geography_level x state x county_ssa x product_type x parent_organization, parent ALL = the market (80,002 rows = 80,002 distinct keys, measured 2026-10-16 in Athena - national 390, state 1,896, county 77,716; nine product types, never pooled). | column | type | meaning | |---|---|---| | geography_level | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | product_type | string | | | parent_organization | string | | | members_2026 | double | | | members_followed | double | | | members_valued_both_years | double | | | wtd_plan_value_2026 | double | | | wtd_plan_value_2027 | double | | | wtd_change | double | | | plans_offered_2026 | bigint | | | plans_offered_2027 | bigint | | | plans_new_2027 | bigint | | | plans_dropped_2027 | bigint | | | plans_valued_2027 | bigint | | | plans_valued_xpd_2027 | bigint | | | avg_plan_value_2026 | double | | | avg_plan_value_2027 | double | | | avg_change | double | | | avg_xpd_2026 | double | | | avg_xpd_2027 | double | | | avg_xpd_change | double | | | rank_wtd_change | bigint | | | rank_avg_change | bigint | | | rank_avg_xpd_change | bigint | | | n_parents_in_market | int | | | build | varchar(21) | | | basis | varchar(543) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.plan_value_shelf_v19d WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.plan_value_shelf_v19d")` first. # Vlada Plan Value v19e parent shelf + ranking (Method Lock 1.0 + PV-55; who cut, who added; new contracts rolled into their parent), national / state / county x product type x parent `medicare_semantic.plan_value_shelf_v19e` · Medicare Advantage, Part D, Medicaid · status live · 80,002 rows Every parent in a place, for one product type, on two bases side by side. SAME MEMBERS (wtd_plan_value_2026 / _2027 / wtd_change, members_followed, members_valued_both_years): the signed same-member numbers of vw_plan_value_pairs_v19e at plan_type ALL, equal on every row. PLANS ON THE SHELF (avg_plan_value_2026 / _2027 / avg_change, avg_xpd_* without Part D): the simple average over the distinct plan-segments the parent offers in the geography each contract year (CMS service area, vw_pbp_plan_county_service_area; regional PPOs over every county of their CMS region; employer plans 800-899 excluded; valued plans only), with plans_offered / new / dropped / valued counts and ranks (1 = biggest increase among parents, ties by members_2026). State and national averages are over the DISTINCT plan-segments offered anywhere in the state / nation. Parent of a 2027 plan = parent_organization_2027, else the contract's resolved parent (vw_ma_parent_resolved_v1), else the landscape parent: that parent itself when it is already a resolved parent (a new contract of a known parent rolls into it, as v18b), else 'NEW CONTRACT: ' + the name. /ma reads v19e after the v19e flip. Built by ops/scripts/plan_value_shelf_sql.py; gates ops/scripts/plan_value_shelf_check.py. Owner source: register w3 vlada_w3_benvat. **Grain.** One row per geography_level x state x county_ssa x product_type x parent_organization, parent ALL = the market (80,002 rows = 80,002 distinct keys, measured 2026-10-17 in Athena - national 390, state 1,896, county 77,716; nine product types, never pooled). | column | type | meaning | |---|---|---| | geography_level | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | product_type | string | | | parent_organization | string | | | members_2026 | double | | | members_followed | double | | | members_valued_both_years | double | | | wtd_plan_value_2026 | double | | | wtd_plan_value_2027 | double | | | wtd_change | double | | | plans_offered_2026 | bigint | | | plans_offered_2027 | bigint | | | plans_new_2027 | bigint | | | plans_dropped_2027 | bigint | | | plans_valued_2027 | bigint | | | plans_valued_xpd_2027 | bigint | | | avg_plan_value_2026 | double | | | avg_plan_value_2027 | double | | | avg_change | double | | | avg_xpd_2026 | double | | | avg_xpd_2027 | double | | | avg_xpd_change | double | | | rank_wtd_change | bigint | | | rank_avg_change | bigint | | | rank_avg_xpd_change | bigint | | | n_parents_in_market | int | | | build | varchar(21) | | | basis | varchar(543) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.plan_value_shelf_v19e WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.plan_value_shelf_v19e")` first. # Vlada benefit reading by contract (edition v20261018b): every benefit number by national / state / county x product type x plan type x the member's base contract `medicare_semantic.vw_benefit_contract_cells` · Medicare Advantage, Part D, Medicaid · status live · 1,429,127 rows The cells' sums with the member's BASE contract (from base_key) in place of the parent; parent_org beside. For contract-vs-contract comparisons. Pointer -> medicare_semantic.benefit_contract_cells_v20261018b. Owner: the Benefits lane. **Grain.** One row per base_year x lvl x state x county_ssa x bucket x plan_type x contract_id x per (no market rows). | column | type | meaning | |---|---|---| | base_year | int | | | value_year | int | | | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | plan_type | string | | | contract_id | string | | | per | varchar(1) | | | parent_org | string | | | members | double | | | plans | bigint | | | dental_pct_offered__s | double | | | dental_pct_offered__w | double | | | dental_pct_max__s | double | | | dental_pct_max__w | double | | | dental_pct_no_max__s | double | | | dental_pct_no_max__w | double | | | dental_pct_card__s | double | | | dental_pct_card__w | double | | | dental_dollars_pmpm_if__s | double | | | dental_dollars_pmpm_if__w | double | | | dental_dollars_pmpm_all__s | double | | | dental_dollars_pmpm_all__w | double | | | dental_design_known__s | double | | | dental_design_known__w | double | | | hearing_pct_offered__s | double | | | hearing_pct_offered__w | double | | | hearing_pct_allowance__s | double | | | hearing_pct_allowance__w | double | | | hearing_pct_copay__s | double | | | hearing_pct_copay__w | double | | | hearing_pct_card__s | double | | | hearing_pct_card__w | double | | | hearing_dollars_pmpm_if__s | double | | | hearing_dollars_pmpm_if__w | double | | | hearing_dollars_pmpm_all__s | double | | | hearing_dollars_pmpm_all__w | double | | | hearing_design_known__s | double | | | hearing_design_known__w | double | | | otc_pct_offered__s | double | | | otc_pct_offered__w | double | | | otc_pct_own__s | double | | | otc_pct_own__w | double | | | otc_pct_card__s | double | | | otc_pct_card__w | double | | | otc_pct_no_amount__s | double | | | otc_pct_no_amount__w | double | | | otc_dollars_pmpm_if__s | double | | | otc_dollars_pmpm_if__w | double | | | otc_dollars_pmpm_all__s | double | | | otc_dollars_pmpm_all__w | double | | | otc_design_known__s | double | | | otc_design_known__w | double | | | eyewear_pct_offered__s | double | | | eyewear_pct_offered__w | double | | | eyewear_pct_allowance__s | double | | | eyewear_pct_allowance__w | double | | | eyewear_pct_card__s | double | | | eyewear_pct_card__w | double | | | eyewear_pct_no_max__s | double | | | eyewear_pct_no_max__w | double | | | eyewear_dollars_pmpm_if__s | double | | | eyewear_dollars_pmpm_if__w | double | | | eyewear_dollars_pmpm_all__s | double | | | eyewear_dollars_pmpm_all__w | double | | | eyewear_design_known__s | double | | | eyewear_design_known__w | double | | | hearing_copay_per_aid__s | double | | | hearing_copay_per_aid__w | double | | | otc_pct_filed_own_zero_card__s | double | | | otc_pct_filed_own_zero_card__w | double | | | card_pct_offered__s | double | | | card_pct_offered__w | double | | | card_dollars_pmpm_if__s | double | | | card_dollars_pmpm_if__w | double | | | card_dollars_pmpm_all__s | double | | | card_dollars_pmpm_all__w | double | | | allowance_total_pmpm_all__s | double | | | allowance_total_pmpm_all__w | double | | | giveback_pct_offered__s | double | | | giveback_pct_offered__w | double | | | giveback_pct_token__s | double | | | giveback_pct_token__w | double | | | giveback_pmpm_if__s | double | | | giveback_pmpm_if__w | double | | | premium_pct_zero__s | double | | | premium_pct_zero__w | double | | | svc_transportation_pct_offered__s | double | | | svc_transportation_pct_offered__w | double | | | svc_transportation_known__s | double | | | svc_transportation_known__w | double | | | svc_fitness_pct_offered__s | double | | | svc_fitness_pct_offered__w | double | | | svc_fitness_known__s | double | | | svc_fitness_known__w | double | | | svc_meals_post_discharge_pct_offered__s | double | | | svc_meals_post_discharge_pct_offered__w | double | | | svc_meals_post_discharge_known__s | double | | | svc_meals_post_discharge_known__w | double | | | svc_meals_any_pct_offered__s | double | | | svc_meals_any_pct_offered__w | double | | | svc_meals_any_known__s | double | | | svc_meals_any_known__w | double | | | svc_podiatry_pct_offered__s | double | | | svc_podiatry_pct_offered__w | double | | | svc_podiatry_known__s | double | | | svc_podiatry_known__w | double | | | svc_transportation_trips__s | double | | | svc_transportation_trips__w | double | | | svc_transportation_pct_unlimited__s | double | | | svc_transportation_pct_unlimited__w | double | | | svc_podiatry_visits__s | double | | | svc_podiatry_visits__w | double | | | deductible_pct_none__s | double | | | deductible_pct_none__w | double | | | deductible_pct_partb__s | double | | | deductible_pct_partb__w | double | | | deductible_pct_plan__s | double | | | deductible_pct_plan__w | double | | | deductible_plan_amount__s | double | | | deductible_plan_amount__w | double | | | deductible_design_known__s | double | | | deductible_design_known__w | double | | | deductible_pct_scope_oon__s | double | | | deductible_pct_scope_oon__w | double | | | premium__s | double | | | premium__w | double | | | moop__s | double | | | moop__w | double | | | medical_deductible__s | double | | | medical_deductible__w | double | | | partd_deductible__s | double | | | partd_deductible__w | double | | | primary_care__s | double | | | primary_care__w | double | | | specialist__s | double | | | specialist__w | double | | | telehealth__s | double | | | telehealth__w | double | | | mental_health_ind__s | double | | | mental_health_ind__w | double | | | er__s | double | | | er__w | double | | | urgent__s | double | | | urgent__w | double | | | ambulance_ground__s | double | | | ambulance_ground__w | double | | | hosp_5day__s | double | | | hosp_5day__w | double | | | inpatient__s | double | | | inpatient__w | double | | | snf__s | double | | | snf__w | double | | | outpatient_hosp__s | double | | | outpatient_hosp__w | double | | | asc__s | double | | | asc__w | double | | | imaging_complex__s | double | | | imaging_complex__w | double | | | radiology__s | double | | | radiology__w | double | | | lab__s | double | | | lab__w | double | | | physical_therapy__s | double | | | physical_therapy__w | double | | | dme__s | double | | | dme__w | double | | | partb_drugs__s | double | | | partb_drugs__w | double | | | partb_insulin__s | double | | | partb_insulin__w | double | | | dialysis__s | double | | | dialysis__w | double | | | partd_tier1_copay__s | double | | | partd_tier1_copay__w | double | | | partd_tier2_copay__s | double | | | partd_tier2_copay__w | double | | | partd_tier4_coins__s | double | | | partd_tier4_coins__w | double | | | partd_tier5_coins__s | double | | | partd_tier5_coins__w | double | | | primary_care_pct_copay__s | double | | | primary_care_pct_copay__w | double | | | primary_care_pct_coins__s | double | | | primary_care_pct_coins__w | double | | | primary_care_coins__s | double | | | primary_care_coins__w | double | | | specialist_pct_copay__s | double | | | specialist_pct_copay__w | double | | | specialist_pct_coins__s | double | | | specialist_pct_coins__w | double | | | specialist_coins__s | double | | | specialist_coins__w | double | | | telehealth_pct_copay__s | double | | | telehealth_pct_copay__w | double | | | telehealth_pct_coins__s | double | | | telehealth_pct_coins__w | double | | | telehealth_coins__s | double | | | telehealth_coins__w | double | | | mental_health_ind_pct_copay__s | double | | | mental_health_ind_pct_copay__w | double | | | mental_health_ind_pct_coins__s | double | | | mental_health_ind_pct_coins__w | double | | | mental_health_ind_coins__s | double | | | mental_health_ind_coins__w | double | | | physical_therapy_pct_copay__s | double | | | physical_therapy_pct_copay__w | double | | | physical_therapy_pct_coins__s | double | | | physical_therapy_pct_coins__w | double | | | physical_therapy_coins__s | double | | | physical_therapy_coins__w | double | | | er_pct_copay__s | double | | | er_pct_copay__w | double | | | er_pct_coins__s | double | | | er_pct_coins__w | double | | | er_coins__s | double | | | er_coins__w | double | | | urgent_pct_copay__s | double | | | urgent_pct_copay__w | double | | | urgent_pct_coins__s | double | | | urgent_pct_coins__w | double | | | urgent_coins__s | double | | | urgent_coins__w | double | | | ambulance_ground_pct_copay__s | double | | | ambulance_ground_pct_copay__w | double | | | ambulance_ground_pct_coins__s | double | | | ambulance_ground_pct_coins__w | double | | | ambulance_ground_coins__s | double | | | ambulance_ground_coins__w | double | | | outpatient_hosp_pct_copay__s | double | | | outpatient_hosp_pct_copay__w | double | | | outpatient_hosp_pct_coins__s | double | | | outpatient_hosp_pct_coins__w | double | | | outpatient_hosp_coins__s | double | | | outpatient_hosp_coins__w | double | | | imaging_complex_pct_copay__s | double | | | imaging_complex_pct_copay__w | double | | | imaging_complex_pct_coins__s | double | | | imaging_complex_pct_coins__w | double | | | imaging_complex_coins__s | double | | | imaging_complex_coins__w | double | | | radiology_pct_copay__s | double | | | radiology_pct_copay__w | double | | | radiology_pct_coins__s | double | | | radiology_pct_coins__w | double | | | radiology_coins__s | double | | | radiology_coins__w | double | | | lab_pct_copay__s | double | | | lab_pct_copay__w | double | | | lab_pct_coins__s | double | | | lab_pct_coins__w | double | | | lab_coins__s | double | | | lab_coins__w | double | | | inpatient_pct_copay__s | double | | | inpatient_pct_copay__w | double | | | inpatient_pct_coins__s | double | | | inpatient_pct_coins__w | double | | | inpatient_coins__s | double | | | inpatient_coins__w | double | | | snf_pct_copay__s | double | | | snf_pct_copay__w | double | | | snf_pct_coins__s | double | | | snf_pct_coins__w | double | | | snf_coins__s | double | | | snf_coins__w | double | | | otc_pct_one_pot__s | double | | | otc_pct_one_pot__w | double | | | card_pct_dvh_same_pot__s | double | | | card_pct_dvh_same_pot__w | double | | | dental_any_pct_offered__s | double | | | dental_any_pct_offered__w | double | | | dental_comprehensive_pct_offered__s | double | | | dental_comprehensive_pct_offered__w | double | | | svc_transportation_pct_optional_only__s | double | | | svc_transportation_pct_optional_only__w | double | | | svc_fitness_pct_optional_only__s | double | | | svc_fitness_pct_optional_only__w | double | | | svc_meals_post_discharge_pct_optional_only__s | double | | | svc_meals_post_discharge_pct_optional_only__w | double | | | svc_meals_any_pct_optional_only__s | double | | | svc_meals_any_pct_optional_only__w | double | | | svc_podiatry_pct_optional_only__s | double | | | svc_podiatry_pct_optional_only__w | double | | | allowance_total_pct_no_cap__s | double | | | allowance_total_pct_no_cap__w | double | | | otc_pct_d5_pot__s | double | | | otc_pct_d5_pot__w | double | | | card_pct_dvh_shared_pot__s | double | | | card_pct_dvh_shared_pot__w | double | | | allowance_shared_pot_overlap_pmpm__s | double | | | allowance_shared_pot_overlap_pmpm__w | double | | | card_targeted_pct_offered__s | double | | | card_targeted_pct_offered__w | double | | | card_targeted_dollars_pmpm_if__s | double | | | card_targeted_dollars_pmpm_if__w | double | | | svc_transportation_round_trips__s | double | | | svc_transportation_round_trips__w | double | | | moop_pct_not_in_network__s | double | | | moop_pct_not_in_network__w | double | | | card_targeted_pct_ssbci__s | double | | | card_targeted_pct_ssbci__w | double | | | card_targeted_pct_vbid_uf__s | double | | | card_targeted_pct_vbid_uf__w | double | | | card_targeted_pct_no_amount__s | double | | | card_targeted_pct_no_amount__w | double | | | card_targeted_pct_pooled_in_card__s | double | | | card_targeted_pct_pooled_in_card__w | double | | | card_pct_dvh_kind_only__s | double | | | card_pct_dvh_kind_only__w | double | | | allowance_pooled_pct_any__s | double | | | allowance_pooled_pct_any__w | double | | | eyewear_pct_preferred_tier__s | double | | | eyewear_pct_preferred_tier__w | double | | | eyewear_preferred_dollars_pmpm_if__s | double | | | eyewear_preferred_dollars_pmpm_if__w | double | | | dental_pct_d9_added__s | double | | | dental_pct_d9_added__w | double | | | dental_pct_max_combined__s | double | | | dental_pct_max_combined__w | double | | | card_pays_dental__s | double | | | card_pays_dental__w | double | | | card_pays_eyewear__s | double | | | card_pays_eyewear__w | double | | | card_pays_hearing__s | double | | | card_pays_hearing__w | double | | | card_pays_otc__s | double | | | card_pays_otc__w | double | | | card_pays_food_living__s | double | | | card_pays_food_living__w | double | | | card_pays_other__s | double | | | card_pays_other__w | double | | | card_pct_kind_flex__s | double | | | card_pct_kind_flex__w | double | | | card_pct_kind_dvh__s | double | | | card_pct_kind_dvh__w | double | | | card_pct_kind_otc__s | double | | | card_pct_kind_otc__w | double | | | card_pct_kind_food_living__s | double | | | card_pct_kind_food_living__w | double | | | card_pct_kind_wellness__s | double | | | card_pct_kind_wellness__w | double | | | dental_pct_cap_plus_card__s | double | | | dental_pct_cap_plus_card__w | double | | | hearing_pct_cap_plus_card__s | double | | | hearing_pct_cap_plus_card__w | double | | | otc_pct_cap_plus_card__s | double | | | otc_pct_cap_plus_card__w | double | | | eyewear_pct_cap_plus_card__s | double | | | eyewear_pct_cap_plus_card__w | double | | | primary_care_pct_zero__s | double | | | primary_care_pct_zero__w | double | | | specialist_pct_zero__s | double | | | specialist_pct_zero__w | double | | | telehealth_pct_zero__s | double | | | telehealth_pct_zero__w | double | | | mental_health_ind_pct_zero__s | double | | | mental_health_ind_pct_zero__w | double | | | physical_therapy_pct_zero__s | double | | | physical_therapy_pct_zero__w | double | | | er_pct_zero__s | double | | | er_pct_zero__w | double | | | urgent_pct_zero__s | double | | | urgent_pct_zero__w | double | | | ambulance_ground_pct_zero__s | double | | | ambulance_ground_pct_zero__w | double | | | outpatient_hosp_pct_zero__s | double | | | outpatient_hosp_pct_zero__w | double | | | imaging_complex_pct_zero__s | double | | | imaging_complex_pct_zero__w | double | | | radiology_pct_zero__s | double | | | radiology_pct_zero__w | double | | | lab_pct_zero__s | double | | | lab_pct_zero__w | double | | | inpatient_pct_zero__s | double | | | inpatient_pct_zero__w | double | | | snf_pct_zero__s | double | | | snf_pct_zero__w | double | | | dsnp_enrolls_full_duals__s | double | | | dsnp_enrolls_full_duals__w | double | | | primary_care_dual_effective__s | double | | | primary_care_dual_effective__w | double | | | specialist_dual_effective__s | double | | | specialist_dual_effective__w | double | | | telehealth_dual_effective__s | double | | | telehealth_dual_effective__w | double | | | mental_health_ind_dual_effective__s | double | | | mental_health_ind_dual_effective__w | double | | | physical_therapy_dual_effective__s | double | | | physical_therapy_dual_effective__w | double | | | er_dual_effective__s | double | | | er_dual_effective__w | double | | | urgent_dual_effective__s | double | | | urgent_dual_effective__w | double | | | ambulance_ground_dual_effective__s | double | | | ambulance_ground_dual_effective__w | double | | | outpatient_hosp_dual_effective__s | double | | | outpatient_hosp_dual_effective__w | double | | | imaging_complex_dual_effective__s | double | | | imaging_complex_dual_effective__w | double | | | radiology_dual_effective__s | double | | | radiology_dual_effective__w | double | | | lab_dual_effective__s | double | | | lab_dual_effective__w | double | | | inpatient_dual_effective__s | double | | | inpatient_dual_effective__w | double | | | snf_dual_effective__s | double | | | snf_dual_effective__w | double | | | moop_dual_effective__s | double | | | moop_dual_effective__w | double | | | medical_deductible_dual_effective__s | double | | | medical_deductible_dual_effective__w | double | | | telehealth_pct_offered__s | double | | | telehealth_pct_offered__w | double | | | primary_care_ll_known__s | double | | | primary_care_ll_known__w | double | | | primary_care_llc_from__s | double | | | primary_care_llc_from__w | double | | | primary_care_llc_to__s | double | | | primary_care_llc_to__w | double | | | primary_care_lli_from__s | double | | | primary_care_lli_from__w | double | | | primary_care_lli_to__s | double | | | primary_care_lli_to__w | double | | | primary_care_sw_coins__s | double | | | primary_care_sw_coins__w | double | | | primary_care_sw_copay__s | double | | | primary_care_sw_copay__w | double | | | specialist_ll_known__s | double | | | specialist_ll_known__w | double | | | specialist_llc_from__s | double | | | specialist_llc_from__w | double | | | specialist_llc_to__s | double | | | specialist_llc_to__w | double | | | specialist_lli_from__s | double | | | specialist_lli_from__w | double | | | specialist_lli_to__s | double | | | specialist_lli_to__w | double | | | specialist_sw_coins__s | double | | | specialist_sw_coins__w | double | | | specialist_sw_copay__s | double | | | specialist_sw_copay__w | double | | | telehealth_ll_known__s | double | | | telehealth_ll_known__w | double | | | telehealth_llc_from__s | double | | | telehealth_llc_from__w | double | | | telehealth_llc_to__s | double | | | telehealth_llc_to__w | double | | | telehealth_lli_from__s | double | | | telehealth_lli_from__w | double | | | telehealth_lli_to__s | double | | | telehealth_lli_to__w | double | | | telehealth_sw_coins__s | double | | | telehealth_sw_coins__w | double | | | telehealth_sw_copay__s | double | | | telehealth_sw_copay__w | double | | | mental_health_ind_ll_known__s | double | | | mental_health_ind_ll_known__w | double | | | mental_health_ind_llc_from__s | double | | | mental_health_ind_llc_from__w | double | | | mental_health_ind_llc_to__s | double | | | mental_health_ind_llc_to__w | double | | | mental_health_ind_lli_from__s | double | | | mental_health_ind_lli_from__w | double | | | mental_health_ind_lli_to__s | double | | | mental_health_ind_lli_to__w | double | | | mental_health_ind_sw_coins__s | double | | | mental_health_ind_sw_coins__w | double | | | mental_health_ind_sw_copay__s | double | | | mental_health_ind_sw_copay__w | double | | | physical_therapy_ll_known__s | double | | | physical_therapy_ll_known__w | double | | | physical_therapy_llc_from__s | double | | | physical_therapy_llc_from__w | double | | | physical_therapy_llc_to__s | double | | | physical_therapy_llc_to__w | double | | | physical_therapy_lli_from__s | double | | | physical_therapy_lli_from__w | double | | | physical_therapy_lli_to__s | double | | | physical_therapy_lli_to__w | double | | | physical_therapy_sw_coins__s | double | | | physical_therapy_sw_coins__w | double | | | physical_therapy_sw_copay__s | double | | | physical_therapy_sw_copay__w | double | | | er_ll_known__s | double | | | er_ll_known__w | double | | | er_llc_from__s | double | | | er_llc_from__w | double | | | er_llc_to__s | double | | | er_llc_to__w | double | | | er_lli_from__s | double | | | er_lli_from__w | double | | | er_lli_to__s | double | | | er_lli_to__w | double | | | er_sw_coins__s | double | | | er_sw_coins__w | double | | | er_sw_copay__s | double | | | er_sw_copay__w | double | | | urgent_ll_known__s | double | | | urgent_ll_known__w | double | | | urgent_llc_from__s | double | | | urgent_llc_from__w | double | | | urgent_llc_to__s | double | | | urgent_llc_to__w | double | | | urgent_lli_from__s | double | | | urgent_lli_from__w | double | | | urgent_lli_to__s | double | | | urgent_lli_to__w | double | | | urgent_sw_coins__s | double | | | urgent_sw_coins__w | double | | | urgent_sw_copay__s | double | | | urgent_sw_copay__w | double | | | ambulance_ground_ll_known__s | double | | | ambulance_ground_ll_known__w | double | | | ambulance_ground_llc_from__s | double | | | ambulance_ground_llc_from__w | double | | | ambulance_ground_llc_to__s | double | | | ambulance_ground_llc_to__w | double | | | ambulance_ground_lli_from__s | double | | | ambulance_ground_lli_from__w | double | | | ambulance_ground_lli_to__s | double | | | ambulance_ground_lli_to__w | double | | | ambulance_ground_sw_coins__s | double | | | ambulance_ground_sw_coins__w | double | | | ambulance_ground_sw_copay__s | double | | | ambulance_ground_sw_copay__w | double | | | outpatient_hosp_ll_known__s | double | | | outpatient_hosp_ll_known__w | double | | | outpatient_hosp_llc_from__s | double | | | outpatient_hosp_llc_from__w | double | | | outpatient_hosp_llc_to__s | double | | | outpatient_hosp_llc_to__w | double | | | outpatient_hosp_lli_from__s | double | | | outpatient_hosp_lli_from__w | double | | | outpatient_hosp_lli_to__s | double | | | outpatient_hosp_lli_to__w | double | | | outpatient_hosp_sw_coins__s | double | | | outpatient_hosp_sw_coins__w | double | | | outpatient_hosp_sw_copay__s | double | | | outpatient_hosp_sw_copay__w | double | | | imaging_complex_ll_known__s | double | | | imaging_complex_ll_known__w | double | | | imaging_complex_llc_from__s | double | | | imaging_complex_llc_from__w | double | | | imaging_complex_llc_to__s | double | | | imaging_complex_llc_to__w | double | | | imaging_complex_lli_from__s | double | | | imaging_complex_lli_from__w | double | | | imaging_complex_lli_to__s | double | | | imaging_complex_lli_to__w | double | | | imaging_complex_sw_coins__s | double | | | imaging_complex_sw_coins__w | double | | | imaging_complex_sw_copay__s | double | | | imaging_complex_sw_copay__w | double | | | radiology_ll_known__s | double | | | radiology_ll_known__w | double | | | radiology_llc_from__s | double | | | radiology_llc_from__w | double | | | radiology_llc_to__s | double | | | radiology_llc_to__w | double | | | radiology_lli_from__s | double | | | radiology_lli_from__w | double | | | radiology_lli_to__s | double | | | radiology_lli_to__w | double | | | radiology_sw_coins__s | double | | | radiology_sw_coins__w | double | | | radiology_sw_copay__s | double | | | radiology_sw_copay__w | double | | | lab_ll_known__s | double | | | lab_ll_known__w | double | | | lab_llc_from__s | double | | | lab_llc_from__w | double | | | lab_llc_to__s | double | | | lab_llc_to__w | double | | | lab_lli_from__s | double | | | lab_lli_from__w | double | | | lab_lli_to__s | double | | | lab_lli_to__w | double | | | lab_sw_coins__s | double | | | lab_sw_coins__w | double | | | lab_sw_copay__s | double | | | lab_sw_copay__w | double | | | inpatient_ll_known__s | double | | | inpatient_ll_known__w | double | | | inpatient_llc_from__s | double | | | inpatient_llc_from__w | double | | | inpatient_llc_to__s | double | | | inpatient_llc_to__w | double | | | inpatient_lli_from__s | double | | | inpatient_lli_from__w | double | | | inpatient_lli_to__s | double | | | inpatient_lli_to__w | double | | | inpatient_sw_coins__s | double | | | inpatient_sw_coins__w | double | | | inpatient_sw_copay__s | double | | | inpatient_sw_copay__w | double | | | snf_ll_known__s | double | | | snf_ll_known__w | double | | | snf_llc_from__s | double | | | snf_llc_from__w | double | | | snf_llc_to__s | double | | | snf_llc_to__w | double | | | snf_lli_from__s | double | | | snf_lli_from__w | double | | | snf_lli_to__s | double | | | snf_lli_to__w | double | | | snf_sw_coins__s | double | | | snf_sw_coins__w | double | | | snf_sw_copay__s | double | | | snf_sw_copay__w | double | | | dental_st_dedicated__s | double | | | dental_st_dedicated__w | double | | | dental_st_pooled_card__s | double | | | dental_st_pooled_card__w | double | | | dental_st_offered_no_max__s | double | | | dental_st_offered_no_max__w | double | | | dental_st_optional_rider__s | double | | | dental_st_optional_rider__w | double | | | dental_st_period_unknown__s | double | | | dental_st_period_unknown__w | double | | | dental_st_not_offered__s | double | | | dental_st_not_offered__w | double | | | dental_st_not_filed__s | double | | | dental_st_not_filed__w | double | | | dental_st_other__s | double | | | dental_st_other__w | double | | | eyewear_st_dedicated__s | double | | | eyewear_st_dedicated__w | double | | | eyewear_st_pooled_card__s | double | | | eyewear_st_pooled_card__w | double | | | eyewear_st_offered_no_max__s | double | | | eyewear_st_offered_no_max__w | double | | | eyewear_st_period_unknown__s | double | | | eyewear_st_period_unknown__w | double | | | eyewear_st_not_offered__s | double | | | eyewear_st_not_offered__w | double | | | eyewear_st_not_filed__s | double | | | eyewear_st_not_filed__w | double | | | eyewear_st_other__s | double | | | eyewear_st_other__w | double | | | hearing_st_dedicated__s | double | | | hearing_st_dedicated__w | double | | | hearing_st_pooled_card__s | double | | | hearing_st_pooled_card__w | double | | | hearing_st_offered_no_max__s | double | | | hearing_st_offered_no_max__w | double | | | hearing_st_period_unknown__s | double | | | hearing_st_period_unknown__w | double | | | hearing_st_not_offered__s | double | | | hearing_st_not_offered__w | double | | | hearing_st_not_filed__s | double | | | hearing_st_not_filed__w | double | | | hearing_st_other__s | double | | | hearing_st_other__w | double | | | otc_st_dedicated__s | double | | | otc_st_dedicated__w | double | | | otc_st_pooled_card__s | double | | | otc_st_pooled_card__w | double | | | otc_st_offered_no_max__s | double | | | otc_st_offered_no_max__w | double | | | otc_st_not_offered__s | double | | | otc_st_not_offered__w | double | | | otc_st_not_filed__s | double | | | otc_st_not_filed__w | double | | | otc_st_other__s | double | | | otc_st_other__w | double | | | giveback_st_filed__s | double | | | giveback_st_filed__w | double | | | giveback_st_not_filed__s | double | | | giveback_st_not_filed__w | double | | | giveback_st_other__s | double | | | giveback_st_other__w | double | | | dental_pkg_mand_only__s | double | | | dental_pkg_mand_only__w | double | | | dental_pkg_mand_and_rider__s | double | | | dental_pkg_mand_and_rider__w | double | | | dental_pkg_rider_only__s | double | | | dental_pkg_rider_only__w | double | | | dental_pkg_none__s | double | | | dental_pkg_none__w | double | | | premium__c | double | | | moop__c | double | | | medical_deductible__c | double | | | partd_deductible__c | double | | | primary_care__c | double | | | specialist__c | double | | | telehealth__c | double | | | mental_health_ind__c | double | | | er__c | double | | | urgent__c | double | | | ambulance_ground__c | double | | | hosp_5day__c | double | | | inpatient__c | double | | | snf__c | double | | | outpatient_hosp__c | double | | | asc__c | double | | | imaging_complex__c | double | | | radiology__c | double | | | lab__c | double | | | physical_therapy__c | double | | | dme__c | double | | | partb_drugs__c | double | | | partb_insulin__c | double | | | dialysis__c | double | | | partd_tier1_copay__c | double | | | partd_tier2_copay__c | double | | | partd_tier4_coins__c | double | | | partd_tier5_coins__c | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_contract_cells WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_contract_cells")` first. # Vlada benefit reading, each contract's closest contracts by footprint (edition v20261018b) `medicare_semantic.vw_benefit_contract_match` · Medicare Advantage, Part D, Medicaid · status live · 15,180 rows For each contract, product type and plan type: the other contracts with the same product and plan type and shared counties, ranked by the member-weighted county Jaccard (SUM(min) / SUM(max)); floors: 1,000 shared-county members on side A and a Jaccard of 0.05. overlap_share_a / _b = each side's members in the shared counties. Pointer -> medicare_semantic.benefit_contract_match_v20261018b. Owner: the Benefits lane. **Grain.** One row per base_year x bucket x plan_type x contract_id x match_contract_id (top 10). | column | type | meaning | |---|---|---| | base_year | int | | | bucket | string | | | plan_type | string | | | contract_id | string | | | parent_a | string | | | match_contract_id | string | | | parent_b | string | | | members_a | double | | | members_b | double | | | counties_a | bigint | | | counties_b | bigint | | | shared_counties | bigint | | | shared_a | double | | | shared_b | double | | | overlap_share_a | double | | | overlap_share_b | double | | | jaccard | double | | | match_rank | bigint | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_contract_match WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_contract_match")` first. # Vlada locked benefit engine atoms (pointer view), every county x plan segment's benefits 2022 to 2027, its members followed to next year's plan `medicare_semantic.vw_benefit_engine_atoms` · Medicare Advantage, Part D, Medicaid · status live · 802,687 rows The served atom table of the locked national benefit engine (ops/sb_llm/tools/benefit_engine.py, docs/research/benefits-2027/CALC-LOCK.md and METHODS.md), version v20261008a: the pointer view over medicare_semantic.benefit_engine_atoms_v20261008a (rebuilt 2026-10-08 on benefit vector v20261007a; regional PPOs followed for base years 2022-2024). Book rows are each year's members in that year's plan; next rows are the same members followed to the plan serving them in the next year (same plan or CMS's crosswalk), so base 2026 next rows are the 2027 benefits of the 2026 members. Columns: kind, base_year, value_year, county_ssa, state, county_fips, county_name, bucket (non-SNP HMO, non-SNP PPO, D-SNP HMO, D-SNP PPO, C-SNP HMO, C-SNP PPO, plus I-SNP and non-SNP other), parent (canonical_parent_name, vw_ma_parent_resolved_v1), base_key, plan_segment_key, followed, weight, plan_type, product_type, successor, then the metric and pair columns. Every engine metric = SUM(weight x column) / SUM(weight where the column is not null) over a slice; verified 46 of 46 against the engine on 2026-10-05, and the MA data platform's snapshot rails tie its sums to the engine TSV for every bucket and the largest parents on every build. Owner: the Benefits lane. **Grain.** One row per kind ('book' | 'next') x base_year (2022 to 2026) x county_ssa x plan segment (base_key; the followed successor's plan_segment_key on next rows), with weight (September county members), the engine's 155 OUT_METRICS columns and 98 like-for-like cost-share pair columns on next rows. 802,687 rows, 432,333 of them book (measured 2026-10-05). | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pct_token | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | otc_pct_one_pot | double | | | card_pct_dvh_same_pot | double | | | dental_any_pct_offered | double | | | dental_comprehensive_pct_offered | double | | | svc_transportation_pct_optional_only | double | | | svc_fitness_pct_optional_only | double | | | svc_meals_post_discharge_pct_optional_only | double | | | svc_meals_any_pct_optional_only | double | | | svc_podiatry_pct_optional_only | double | | | allowance_total_pct_no_cap | double | | | otc_pct_d5_pot | double | | | card_pct_dvh_shared_pot | double | | | allowance_shared_pot_overlap_pmpm | double | | | card_targeted_pct_offered | double | | | card_targeted_dollars_pmpm_if | double | | | svc_transportation_round_trips | double | | | moop_pct_not_in_network | double | | | card_targeted_pct_ssbci | double | | | card_targeted_pct_vbid_uf | double | | | card_targeted_pct_no_amount | double | | | card_targeted_pct_pooled_in_card | double | | | card_pct_dvh_kind_only | double | | | allowance_pooled_pct_any | double | | | eyewear_pct_preferred_tier | double | | | eyewear_preferred_dollars_pmpm_if | double | | | dental_pct_d9_added | double | | | dental_pct_max_combined | double | | | card_pays_dental | double | | | card_pays_eyewear | double | | | card_pays_hearing | double | | | card_pays_otc | double | | | card_pays_food_living | double | | | card_pays_other | double | | | card_pct_kind_flex | double | | | card_pct_kind_dvh | double | | | card_pct_kind_otc | double | | | card_pct_kind_food_living | double | | | card_pct_kind_wellness | double | | | dental_pct_cap_plus_card | double | | | hearing_pct_cap_plus_card | double | | | otc_pct_cap_plus_card | double | | | eyewear_pct_cap_plus_card | double | | | primary_care_pct_zero | double | | | specialist_pct_zero | double | | | telehealth_pct_zero | double | | | mental_health_ind_pct_zero | double | | | physical_therapy_pct_zero | double | | | er_pct_zero | double | | | urgent_pct_zero | double | | | ambulance_ground_pct_zero | double | | | outpatient_hosp_pct_zero | double | | | imaging_complex_pct_zero | double | | | radiology_pct_zero | double | | | lab_pct_zero | double | | | inpatient_pct_zero | double | | | snf_pct_zero | double | | | dsnp_enrolls_full_duals | double | | | primary_care_dual_effective | double | | | specialist_dual_effective | double | | | telehealth_dual_effective | double | | | mental_health_ind_dual_effective | double | | | physical_therapy_dual_effective | double | | | er_dual_effective | double | | | urgent_dual_effective | double | | | ambulance_ground_dual_effective | double | | | outpatient_hosp_dual_effective | double | | | imaging_complex_dual_effective | double | | | radiology_dual_effective | double | | | lab_dual_effective | double | | | inpatient_dual_effective | double | | | snf_dual_effective | double | | | moop_dual_effective | double | | | medical_deductible_dual_effective | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | | telehealth_pct_offered | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_engine_atoms WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_engine_atoms")` first. # Vlada benefit engine atoms (edition v20261018b): one plan segment in one county in one year, every benefit reading column (the drill) `medicare_semantic.vw_benefit_reading_atoms` · Medicare Advantage, Part D, Medicaid · status live · 824,757 rows The benefit engine's unit (benefit_engine.py, edition v20261018b): September county members (weight) on the segment serving the county, every metric per atom. Every reading cell is SUM(weight x m) / SUM(weight) over these. /ma reads vw_benefit_engine_atoms (edition v20261015d); this pointer serves the reading edition. Pointer -> medicare_semantic.benefit_engine_atoms_v20261018b. Owner: the Benefits lane. **Grain.** One row per kind ('book' | 'next') x base_year x county_ssa x base_key (the plan segment the member started in); plan_segment_key = the segment the row describes. | column | type | meaning | |---|---|---| | kind | string | | | base_year | int | | | value_year | int | | | county_ssa | string | | | state | string | | | county_fips | string | | | county_name | string | | | bucket | string | | | parent | string | | | base_key | string | | | plan_segment_key | string | | | followed | boolean | | | weight | double | | | plan_type | string | | | product_type | string | | | successor | string | | | dental_pct_offered | double | | | dental_pct_max | double | | | dental_pct_no_max | double | | | dental_pct_card | double | | | dental_dollars_pmpm_if | double | | | dental_dollars_pmpm_all | double | | | dental_design_known | double | | | hearing_pct_offered | double | | | hearing_pct_allowance | double | | | hearing_pct_copay | double | | | hearing_pct_card | double | | | hearing_dollars_pmpm_if | double | | | hearing_dollars_pmpm_all | double | | | hearing_design_known | double | | | otc_pct_offered | double | | | otc_pct_own | double | | | otc_pct_card | double | | | otc_pct_no_amount | double | | | otc_dollars_pmpm_if | double | | | otc_dollars_pmpm_all | double | | | otc_design_known | double | | | eyewear_pct_offered | double | | | eyewear_pct_allowance | double | | | eyewear_pct_card | double | | | eyewear_pct_no_max | double | | | eyewear_dollars_pmpm_if | double | | | eyewear_dollars_pmpm_all | double | | | eyewear_design_known | double | | | hearing_copay_per_aid | double | | | otc_pct_filed_own_zero_card | double | | | card_pct_offered | double | | | card_dollars_pmpm_if | double | | | card_dollars_pmpm_all | double | | | allowance_total_pmpm_all | double | | | allowance_total_coverage | double | | | giveback_pct_offered | double | | | giveback_pct_token | double | | | giveback_pmpm_if | double | | | premium_pct_zero | double | | | svc_transportation_pct_offered | double | | | svc_transportation_known | double | | | svc_fitness_pct_offered | double | | | svc_fitness_known | double | | | svc_meals_post_discharge_pct_offered | double | | | svc_meals_post_discharge_known | double | | | svc_meals_any_pct_offered | double | | | svc_meals_any_known | double | | | svc_podiatry_pct_offered | double | | | svc_podiatry_known | double | | | svc_transportation_trips | double | | | svc_transportation_pct_unlimited | double | | | svc_podiatry_visits | double | | | deductible_pct_none | double | | | deductible_pct_partb | double | | | deductible_pct_plan | double | | | deductible_plan_amount | double | | | deductible_design_known | double | | | deductible_pct_scope_oon | double | | | premium | double | | | premium_coverage | double | | | moop | double | | | moop_coverage | double | | | medical_deductible | double | | | medical_deductible_coverage | double | | | partd_deductible | double | | | partd_deductible_coverage | double | | | primary_care | double | | | primary_care_coverage | double | | | specialist | double | | | specialist_coverage | double | | | telehealth | double | | | telehealth_coverage | double | | | mental_health_ind | double | | | mental_health_ind_coverage | double | | | er | double | | | er_coverage | double | | | urgent | double | | | urgent_coverage | double | | | ambulance_ground | double | | | ambulance_ground_coverage | double | | | hosp_5day | double | | | hosp_5day_coverage | double | | | inpatient | double | | | inpatient_coverage | double | | | snf | double | | | snf_coverage | double | | | outpatient_hosp | double | | | outpatient_hosp_coverage | double | | | asc | double | | | asc_coverage | double | | | imaging_complex | double | | | imaging_complex_coverage | double | | | radiology | double | | | radiology_coverage | double | | | lab | double | | | lab_coverage | double | | | physical_therapy | double | | | physical_therapy_coverage | double | | | dme | double | | | dme_coverage | double | | | partb_drugs | double | | | partb_drugs_coverage | double | | | partb_insulin | double | | | partb_insulin_coverage | double | | | dialysis | double | | | dialysis_coverage | double | | | partd_tier1_copay | double | | | partd_tier1_copay_coverage | double | | | partd_tier2_copay | double | | | partd_tier2_copay_coverage | double | | | partd_tier4_coins | double | | | partd_tier4_coins_coverage | double | | | partd_tier5_coins | double | | | partd_tier5_coins_coverage | double | | | primary_care_pct_copay | double | | | primary_care_pct_coins | double | | | primary_care_coins | double | | | specialist_pct_copay | double | | | specialist_pct_coins | double | | | specialist_coins | double | | | telehealth_pct_copay | double | | | telehealth_pct_coins | double | | | telehealth_coins | double | | | mental_health_ind_pct_copay | double | | | mental_health_ind_pct_coins | double | | | mental_health_ind_coins | double | | | physical_therapy_pct_copay | double | | | physical_therapy_pct_coins | double | | | physical_therapy_coins | double | | | er_pct_copay | double | | | er_pct_coins | double | | | er_coins | double | | | urgent_pct_copay | double | | | urgent_pct_coins | double | | | urgent_coins | double | | | ambulance_ground_pct_copay | double | | | ambulance_ground_pct_coins | double | | | ambulance_ground_coins | double | | | outpatient_hosp_pct_copay | double | | | outpatient_hosp_pct_coins | double | | | outpatient_hosp_coins | double | | | imaging_complex_pct_copay | double | | | imaging_complex_pct_coins | double | | | imaging_complex_coins | double | | | radiology_pct_copay | double | | | radiology_pct_coins | double | | | radiology_coins | double | | | lab_pct_copay | double | | | lab_pct_coins | double | | | lab_coins | double | | | inpatient_pct_copay | double | | | inpatient_pct_coins | double | | | inpatient_coins | double | | | snf_pct_copay | double | | | snf_pct_coins | double | | | snf_coins | double | | | otc_pct_one_pot | double | | | card_pct_dvh_same_pot | double | | | dental_any_pct_offered | double | | | dental_comprehensive_pct_offered | double | | | svc_transportation_pct_optional_only | double | | | svc_fitness_pct_optional_only | double | | | svc_meals_post_discharge_pct_optional_only | double | | | svc_meals_any_pct_optional_only | double | | | svc_podiatry_pct_optional_only | double | | | allowance_total_pct_no_cap | double | | | otc_pct_d5_pot | double | | | card_pct_dvh_shared_pot | double | | | allowance_shared_pot_overlap_pmpm | double | | | card_targeted_pct_offered | double | | | card_targeted_dollars_pmpm_if | double | | | svc_transportation_round_trips | double | | | moop_pct_not_in_network | double | | | card_targeted_pct_ssbci | double | | | card_targeted_pct_vbid_uf | double | | | card_targeted_pct_no_amount | double | | | card_targeted_pct_pooled_in_card | double | | | card_pct_dvh_kind_only | double | | | allowance_pooled_pct_any | double | | | eyewear_pct_preferred_tier | double | | | eyewear_preferred_dollars_pmpm_if | double | | | dental_pct_d9_added | double | | | dental_pct_max_combined | double | | | card_pays_dental | double | | | card_pays_eyewear | double | | | card_pays_hearing | double | | | card_pays_otc | double | | | card_pays_food_living | double | | | card_pays_other | double | | | card_pct_kind_flex | double | | | card_pct_kind_dvh | double | | | card_pct_kind_otc | double | | | card_pct_kind_food_living | double | | | card_pct_kind_wellness | double | | | dental_pct_cap_plus_card | double | | | hearing_pct_cap_plus_card | double | | | otc_pct_cap_plus_card | double | | | eyewear_pct_cap_plus_card | double | | | primary_care_pct_zero | double | | | specialist_pct_zero | double | | | telehealth_pct_zero | double | | | mental_health_ind_pct_zero | double | | | physical_therapy_pct_zero | double | | | er_pct_zero | double | | | urgent_pct_zero | double | | | ambulance_ground_pct_zero | double | | | outpatient_hosp_pct_zero | double | | | imaging_complex_pct_zero | double | | | radiology_pct_zero | double | | | lab_pct_zero | double | | | inpatient_pct_zero | double | | | snf_pct_zero | double | | | dsnp_enrolls_full_duals | double | | | primary_care_dual_effective | double | | | specialist_dual_effective | double | | | telehealth_dual_effective | double | | | mental_health_ind_dual_effective | double | | | physical_therapy_dual_effective | double | | | er_dual_effective | double | | | urgent_dual_effective | double | | | ambulance_ground_dual_effective | double | | | outpatient_hosp_dual_effective | double | | | imaging_complex_dual_effective | double | | | radiology_dual_effective | double | | | lab_dual_effective | double | | | inpatient_dual_effective | double | | | snf_dual_effective | double | | | moop_dual_effective | double | | | medical_deductible_dual_effective | double | | | telehealth_pct_offered | double | | | primary_care_ll_known | double | | | primary_care_llc_from | double | | | primary_care_llc_to | double | | | primary_care_lli_from | double | | | primary_care_lli_to | double | | | primary_care_sw_coins | double | | | primary_care_sw_copay | double | | | specialist_ll_known | double | | | specialist_llc_from | double | | | specialist_llc_to | double | | | specialist_lli_from | double | | | specialist_lli_to | double | | | specialist_sw_coins | double | | | specialist_sw_copay | double | | | telehealth_ll_known | double | | | telehealth_llc_from | double | | | telehealth_llc_to | double | | | telehealth_lli_from | double | | | telehealth_lli_to | double | | | telehealth_sw_coins | double | | | telehealth_sw_copay | double | | | mental_health_ind_ll_known | double | | | mental_health_ind_llc_from | double | | | mental_health_ind_llc_to | double | | | mental_health_ind_lli_from | double | | | mental_health_ind_lli_to | double | | | mental_health_ind_sw_coins | double | | | mental_health_ind_sw_copay | double | | | physical_therapy_ll_known | double | | | physical_therapy_llc_from | double | | | physical_therapy_llc_to | double | | | physical_therapy_lli_from | double | | | physical_therapy_lli_to | double | | | physical_therapy_sw_coins | double | | | physical_therapy_sw_copay | double | | | er_ll_known | double | | | er_llc_from | double | | | er_llc_to | double | | | er_lli_from | double | | | er_lli_to | double | | | er_sw_coins | double | | | er_sw_copay | double | | | urgent_ll_known | double | | | urgent_llc_from | double | | | urgent_llc_to | double | | | urgent_lli_from | double | | | urgent_lli_to | double | | | urgent_sw_coins | double | | | urgent_sw_copay | double | | | ambulance_ground_ll_known | double | | | ambulance_ground_llc_from | double | | | ambulance_ground_llc_to | double | | | ambulance_ground_lli_from | double | | | ambulance_ground_lli_to | double | | | ambulance_ground_sw_coins | double | | | ambulance_ground_sw_copay | double | | | outpatient_hosp_ll_known | double | | | outpatient_hosp_llc_from | double | | | outpatient_hosp_llc_to | double | | | outpatient_hosp_lli_from | double | | | outpatient_hosp_lli_to | double | | | outpatient_hosp_sw_coins | double | | | outpatient_hosp_sw_copay | double | | | imaging_complex_ll_known | double | | | imaging_complex_llc_from | double | | | imaging_complex_llc_to | double | | | imaging_complex_lli_from | double | | | imaging_complex_lli_to | double | | | imaging_complex_sw_coins | double | | | imaging_complex_sw_copay | double | | | radiology_ll_known | double | | | radiology_llc_from | double | | | radiology_llc_to | double | | | radiology_lli_from | double | | | radiology_lli_to | double | | | radiology_sw_coins | double | | | radiology_sw_copay | double | | | lab_ll_known | double | | | lab_llc_from | double | | | lab_llc_to | double | | | lab_lli_from | double | | | lab_lli_to | double | | | lab_sw_coins | double | | | lab_sw_copay | double | | | inpatient_ll_known | double | | | inpatient_llc_from | double | | | inpatient_llc_to | double | | | inpatient_lli_from | double | | | inpatient_lli_to | double | | | inpatient_sw_coins | double | | | inpatient_sw_copay | double | | | snf_ll_known | double | | | snf_llc_from | double | | | snf_llc_to | double | | | snf_lli_from | double | | | snf_lli_to | double | | | snf_sw_coins | double | | | snf_sw_copay | double | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_reading_atoms WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_reading_atoms")` first. # Vlada benefit reading cells (edition v20261018b): every benefit number by national / state / county x product type x plan type x parent x base year x view, as weighted sums `medicare_semantic.vw_benefit_reading_cells` · Medicare Advantage, Part D, Medicaid · status live · 2,115,880 rows The benefit reading's member-weighted cells (Benefits lane, edition v20261018b, BENEFIT-READING.md): every metric of the benefit engine atoms (benefit_engine_atoms_v20261018b) rolled up by GROUPING SETS, kept as weighted sums so any reader reproduces the published figure: value = m__s / m__w, measurable = m__w / members, coverage = m__c / members. Edition v20261018b adds, beside every v20261015d column (identical, rail R-cells): what each card pays for (card_pays_*), the card kinds, each allowance's card role (_pct_cap_plus_card = an own dollar cap AND a card that also pays it), the cost-share $0 leg (_pct_zero), the D-SNP full-dual lens (_dual_effective, dsnp_enrolls_full_duals). Registry of every number: ops/sb_llm/benefit_reading_registry.yaml. Pointer -> medicare_semantic.benefit_company_cells_v20261018b. Owner: the Benefits lane. **Grain.** One row per base_year (2022-2026) x lvl x state x county_ssa x bucket ('ALL' = a parent's overall) x plan_type ('ALL') x parent ('ALL' = the market) x per ('b' = that year's members, 'f' = base members who continue, 'n' = those members in their next-year plan; base 2026 'n' = 2027). | column | type | meaning | |---|---|---| | base_year | int | | | value_year | int | | | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | plan_type | string | | | parent | string | | | per | varchar(1) | | | members | double | | | plans | bigint | | | dental_pct_offered__s | double | | | dental_pct_offered__w | double | | | dental_pct_max__s | double | | | dental_pct_max__w | double | | | dental_pct_no_max__s | double | | | dental_pct_no_max__w | double | | | dental_pct_card__s | double | | | dental_pct_card__w | double | | | dental_dollars_pmpm_if__s | double | | | dental_dollars_pmpm_if__w | double | | | dental_dollars_pmpm_all__s | double | | | dental_dollars_pmpm_all__w | double | | | dental_design_known__s | double | | | dental_design_known__w | double | | | hearing_pct_offered__s | double | | | hearing_pct_offered__w | double | | | hearing_pct_allowance__s | double | | | hearing_pct_allowance__w | double | | | hearing_pct_copay__s | double | | | hearing_pct_copay__w | double | | | hearing_pct_card__s | double | | | hearing_pct_card__w | double | | | hearing_dollars_pmpm_if__s | double | | | hearing_dollars_pmpm_if__w | double | | | hearing_dollars_pmpm_all__s | double | | | hearing_dollars_pmpm_all__w | double | | | hearing_design_known__s | double | | | hearing_design_known__w | double | | | otc_pct_offered__s | double | | | otc_pct_offered__w | double | | | otc_pct_own__s | double | | | otc_pct_own__w | double | | | otc_pct_card__s | double | | | otc_pct_card__w | double | | | otc_pct_no_amount__s | double | | | otc_pct_no_amount__w | double | | | otc_dollars_pmpm_if__s | double | | | otc_dollars_pmpm_if__w | double | | | otc_dollars_pmpm_all__s | double | | | otc_dollars_pmpm_all__w | double | | | otc_design_known__s | double | | | otc_design_known__w | double | | | eyewear_pct_offered__s | double | | | eyewear_pct_offered__w | double | | | eyewear_pct_allowance__s | double | | | eyewear_pct_allowance__w | double | | | eyewear_pct_card__s | double | | | eyewear_pct_card__w | double | | | eyewear_pct_no_max__s | double | | | eyewear_pct_no_max__w | double | | | eyewear_dollars_pmpm_if__s | double | | | eyewear_dollars_pmpm_if__w | double | | | eyewear_dollars_pmpm_all__s | double | | | eyewear_dollars_pmpm_all__w | double | | | eyewear_design_known__s | double | | | eyewear_design_known__w | double | | | hearing_copay_per_aid__s | double | | | hearing_copay_per_aid__w | double | | | otc_pct_filed_own_zero_card__s | double | | | otc_pct_filed_own_zero_card__w | double | | | card_pct_offered__s | double | | | card_pct_offered__w | double | | | card_dollars_pmpm_if__s | double | | | card_dollars_pmpm_if__w | double | | | card_dollars_pmpm_all__s | double | | | card_dollars_pmpm_all__w | double | | | allowance_total_pmpm_all__s | double | | | allowance_total_pmpm_all__w | double | | | giveback_pct_offered__s | double | | | giveback_pct_offered__w | double | | | giveback_pct_token__s | double | | | giveback_pct_token__w | double | | | giveback_pmpm_if__s | double | | | giveback_pmpm_if__w | double | | | premium_pct_zero__s | double | | | premium_pct_zero__w | double | | | svc_transportation_pct_offered__s | double | | | svc_transportation_pct_offered__w | double | | | svc_transportation_known__s | double | | | svc_transportation_known__w | double | | | svc_fitness_pct_offered__s | double | | | svc_fitness_pct_offered__w | double | | | svc_fitness_known__s | double | | | svc_fitness_known__w | double | | | svc_meals_post_discharge_pct_offered__s | double | | | svc_meals_post_discharge_pct_offered__w | double | | | svc_meals_post_discharge_known__s | double | | | svc_meals_post_discharge_known__w | double | | | svc_meals_any_pct_offered__s | double | | | svc_meals_any_pct_offered__w | double | | | svc_meals_any_known__s | double | | | svc_meals_any_known__w | double | | | svc_podiatry_pct_offered__s | double | | | svc_podiatry_pct_offered__w | double | | | svc_podiatry_known__s | double | | | svc_podiatry_known__w | double | | | svc_transportation_trips__s | double | | | svc_transportation_trips__w | double | | | svc_transportation_pct_unlimited__s | double | | | svc_transportation_pct_unlimited__w | double | | | svc_podiatry_visits__s | double | | | svc_podiatry_visits__w | double | | | deductible_pct_none__s | double | | | deductible_pct_none__w | double | | | deductible_pct_partb__s | double | | | deductible_pct_partb__w | double | | | deductible_pct_plan__s | double | | | deductible_pct_plan__w | double | | | deductible_plan_amount__s | double | | | deductible_plan_amount__w | double | | | deductible_design_known__s | double | | | deductible_design_known__w | double | | | deductible_pct_scope_oon__s | double | | | deductible_pct_scope_oon__w | double | | | premium__s | double | | | premium__w | double | | | moop__s | double | | | moop__w | double | | | medical_deductible__s | double | | | medical_deductible__w | double | | | partd_deductible__s | double | | | partd_deductible__w | double | | | primary_care__s | double | | | primary_care__w | double | | | specialist__s | double | | | specialist__w | double | | | telehealth__s | double | | | telehealth__w | double | | | mental_health_ind__s | double | | | mental_health_ind__w | double | | | er__s | double | | | er__w | double | | | urgent__s | double | | | urgent__w | double | | | ambulance_ground__s | double | | | ambulance_ground__w | double | | | hosp_5day__s | double | | | hosp_5day__w | double | | | inpatient__s | double | | | inpatient__w | double | | | snf__s | double | | | snf__w | double | | | outpatient_hosp__s | double | | | outpatient_hosp__w | double | | | asc__s | double | | | asc__w | double | | | imaging_complex__s | double | | | imaging_complex__w | double | | | radiology__s | double | | | radiology__w | double | | | lab__s | double | | | lab__w | double | | | physical_therapy__s | double | | | physical_therapy__w | double | | | dme__s | double | | | dme__w | double | | | partb_drugs__s | double | | | partb_drugs__w | double | | | partb_insulin__s | double | | | partb_insulin__w | double | | | dialysis__s | double | | | dialysis__w | double | | | partd_tier1_copay__s | double | | | partd_tier1_copay__w | double | | | partd_tier2_copay__s | double | | | partd_tier2_copay__w | double | | | partd_tier4_coins__s | double | | | partd_tier4_coins__w | double | | | partd_tier5_coins__s | double | | | partd_tier5_coins__w | double | | | primary_care_pct_copay__s | double | | | primary_care_pct_copay__w | double | | | primary_care_pct_coins__s | double | | | primary_care_pct_coins__w | double | | | primary_care_coins__s | double | | | primary_care_coins__w | double | | | specialist_pct_copay__s | double | | | specialist_pct_copay__w | double | | | specialist_pct_coins__s | double | | | specialist_pct_coins__w | double | | | specialist_coins__s | double | | | specialist_coins__w | double | | | telehealth_pct_copay__s | double | | | telehealth_pct_copay__w | double | | | telehealth_pct_coins__s | double | | | telehealth_pct_coins__w | double | | | telehealth_coins__s | double | | | telehealth_coins__w | double | | | mental_health_ind_pct_copay__s | double | | | mental_health_ind_pct_copay__w | double | | | mental_health_ind_pct_coins__s | double | | | mental_health_ind_pct_coins__w | double | | | mental_health_ind_coins__s | double | | | mental_health_ind_coins__w | double | | | physical_therapy_pct_copay__s | double | | | physical_therapy_pct_copay__w | double | | | physical_therapy_pct_coins__s | double | | | physical_therapy_pct_coins__w | double | | | physical_therapy_coins__s | double | | | physical_therapy_coins__w | double | | | er_pct_copay__s | double | | | er_pct_copay__w | double | | | er_pct_coins__s | double | | | er_pct_coins__w | double | | | er_coins__s | double | | | er_coins__w | double | | | urgent_pct_copay__s | double | | | urgent_pct_copay__w | double | | | urgent_pct_coins__s | double | | | urgent_pct_coins__w | double | | | urgent_coins__s | double | | | urgent_coins__w | double | | | ambulance_ground_pct_copay__s | double | | | ambulance_ground_pct_copay__w | double | | | ambulance_ground_pct_coins__s | double | | | ambulance_ground_pct_coins__w | double | | | ambulance_ground_coins__s | double | | | ambulance_ground_coins__w | double | | | outpatient_hosp_pct_copay__s | double | | | outpatient_hosp_pct_copay__w | double | | | outpatient_hosp_pct_coins__s | double | | | outpatient_hosp_pct_coins__w | double | | | outpatient_hosp_coins__s | double | | | outpatient_hosp_coins__w | double | | | imaging_complex_pct_copay__s | double | | | imaging_complex_pct_copay__w | double | | | imaging_complex_pct_coins__s | double | | | imaging_complex_pct_coins__w | double | | | imaging_complex_coins__s | double | | | imaging_complex_coins__w | double | | | radiology_pct_copay__s | double | | | radiology_pct_copay__w | double | | | radiology_pct_coins__s | double | | | radiology_pct_coins__w | double | | | radiology_coins__s | double | | | radiology_coins__w | double | | | lab_pct_copay__s | double | | | lab_pct_copay__w | double | | | lab_pct_coins__s | double | | | lab_pct_coins__w | double | | | lab_coins__s | double | | | lab_coins__w | double | | | inpatient_pct_copay__s | double | | | inpatient_pct_copay__w | double | | | inpatient_pct_coins__s | double | | | inpatient_pct_coins__w | double | | | inpatient_coins__s | double | | | inpatient_coins__w | double | | | snf_pct_copay__s | double | | | snf_pct_copay__w | double | | | snf_pct_coins__s | double | | | snf_pct_coins__w | double | | | snf_coins__s | double | | | snf_coins__w | double | | | otc_pct_one_pot__s | double | | | otc_pct_one_pot__w | double | | | card_pct_dvh_same_pot__s | double | | | card_pct_dvh_same_pot__w | double | | | dental_any_pct_offered__s | double | | | dental_any_pct_offered__w | double | | | dental_comprehensive_pct_offered__s | double | | | dental_comprehensive_pct_offered__w | double | | | svc_transportation_pct_optional_only__s | double | | | svc_transportation_pct_optional_only__w | double | | | svc_fitness_pct_optional_only__s | double | | | svc_fitness_pct_optional_only__w | double | | | svc_meals_post_discharge_pct_optional_only__s | double | | | svc_meals_post_discharge_pct_optional_only__w | double | | | svc_meals_any_pct_optional_only__s | double | | | svc_meals_any_pct_optional_only__w | double | | | svc_podiatry_pct_optional_only__s | double | | | svc_podiatry_pct_optional_only__w | double | | | allowance_total_pct_no_cap__s | double | | | allowance_total_pct_no_cap__w | double | | | otc_pct_d5_pot__s | double | | | otc_pct_d5_pot__w | double | | | card_pct_dvh_shared_pot__s | double | | | card_pct_dvh_shared_pot__w | double | | | allowance_shared_pot_overlap_pmpm__s | double | | | allowance_shared_pot_overlap_pmpm__w | double | | | card_targeted_pct_offered__s | double | | | card_targeted_pct_offered__w | double | | | card_targeted_dollars_pmpm_if__s | double | | | card_targeted_dollars_pmpm_if__w | double | | | svc_transportation_round_trips__s | double | | | svc_transportation_round_trips__w | double | | | moop_pct_not_in_network__s | double | | | moop_pct_not_in_network__w | double | | | card_targeted_pct_ssbci__s | double | | | card_targeted_pct_ssbci__w | double | | | card_targeted_pct_vbid_uf__s | double | | | card_targeted_pct_vbid_uf__w | double | | | card_targeted_pct_no_amount__s | double | | | card_targeted_pct_no_amount__w | double | | | card_targeted_pct_pooled_in_card__s | double | | | card_targeted_pct_pooled_in_card__w | double | | | card_pct_dvh_kind_only__s | double | | | card_pct_dvh_kind_only__w | double | | | allowance_pooled_pct_any__s | double | | | allowance_pooled_pct_any__w | double | | | eyewear_pct_preferred_tier__s | double | | | eyewear_pct_preferred_tier__w | double | | | eyewear_preferred_dollars_pmpm_if__s | double | | | eyewear_preferred_dollars_pmpm_if__w | double | | | dental_pct_d9_added__s | double | | | dental_pct_d9_added__w | double | | | dental_pct_max_combined__s | double | | | dental_pct_max_combined__w | double | | | card_pays_dental__s | double | | | card_pays_dental__w | double | | | card_pays_eyewear__s | double | | | card_pays_eyewear__w | double | | | card_pays_hearing__s | double | | | card_pays_hearing__w | double | | | card_pays_otc__s | double | | | card_pays_otc__w | double | | | card_pays_food_living__s | double | | | card_pays_food_living__w | double | | | card_pays_other__s | double | | | card_pays_other__w | double | | | card_pct_kind_flex__s | double | | | card_pct_kind_flex__w | double | | | card_pct_kind_dvh__s | double | | | card_pct_kind_dvh__w | double | | | card_pct_kind_otc__s | double | | | card_pct_kind_otc__w | double | | | card_pct_kind_food_living__s | double | | | card_pct_kind_food_living__w | double | | | card_pct_kind_wellness__s | double | | | card_pct_kind_wellness__w | double | | | dental_pct_cap_plus_card__s | double | | | dental_pct_cap_plus_card__w | double | | | hearing_pct_cap_plus_card__s | double | | | hearing_pct_cap_plus_card__w | double | | | otc_pct_cap_plus_card__s | double | | | otc_pct_cap_plus_card__w | double | | | eyewear_pct_cap_plus_card__s | double | | | eyewear_pct_cap_plus_card__w | double | | | primary_care_pct_zero__s | double | | | primary_care_pct_zero__w | double | | | specialist_pct_zero__s | double | | | specialist_pct_zero__w | double | | | telehealth_pct_zero__s | double | | | telehealth_pct_zero__w | double | | | mental_health_ind_pct_zero__s | double | | | mental_health_ind_pct_zero__w | double | | | physical_therapy_pct_zero__s | double | | | physical_therapy_pct_zero__w | double | | | er_pct_zero__s | double | | | er_pct_zero__w | double | | | urgent_pct_zero__s | double | | | urgent_pct_zero__w | double | | | ambulance_ground_pct_zero__s | double | | | ambulance_ground_pct_zero__w | double | | | outpatient_hosp_pct_zero__s | double | | | outpatient_hosp_pct_zero__w | double | | | imaging_complex_pct_zero__s | double | | | imaging_complex_pct_zero__w | double | | | radiology_pct_zero__s | double | | | radiology_pct_zero__w | double | | | lab_pct_zero__s | double | | | lab_pct_zero__w | double | | | inpatient_pct_zero__s | double | | | inpatient_pct_zero__w | double | | | snf_pct_zero__s | double | | | snf_pct_zero__w | double | | | dsnp_enrolls_full_duals__s | double | | | dsnp_enrolls_full_duals__w | double | | | primary_care_dual_effective__s | double | | | primary_care_dual_effective__w | double | | | specialist_dual_effective__s | double | | | specialist_dual_effective__w | double | | | telehealth_dual_effective__s | double | | | telehealth_dual_effective__w | double | | | mental_health_ind_dual_effective__s | double | | | mental_health_ind_dual_effective__w | double | | | physical_therapy_dual_effective__s | double | | | physical_therapy_dual_effective__w | double | | | er_dual_effective__s | double | | | er_dual_effective__w | double | | | urgent_dual_effective__s | double | | | urgent_dual_effective__w | double | | | ambulance_ground_dual_effective__s | double | | | ambulance_ground_dual_effective__w | double | | | outpatient_hosp_dual_effective__s | double | | | outpatient_hosp_dual_effective__w | double | | | imaging_complex_dual_effective__s | double | | | imaging_complex_dual_effective__w | double | | | radiology_dual_effective__s | double | | | radiology_dual_effective__w | double | | | lab_dual_effective__s | double | | | lab_dual_effective__w | double | | | inpatient_dual_effective__s | double | | | inpatient_dual_effective__w | double | | | snf_dual_effective__s | double | | | snf_dual_effective__w | double | | | moop_dual_effective__s | double | | | moop_dual_effective__w | double | | | medical_deductible_dual_effective__s | double | | | medical_deductible_dual_effective__w | double | | | telehealth_pct_offered__s | double | | | telehealth_pct_offered__w | double | | | primary_care_ll_known__s | double | | | primary_care_ll_known__w | double | | | primary_care_llc_from__s | double | | | primary_care_llc_from__w | double | | | primary_care_llc_to__s | double | | | primary_care_llc_to__w | double | | | primary_care_lli_from__s | double | | | primary_care_lli_from__w | double | | | primary_care_lli_to__s | double | | | primary_care_lli_to__w | double | | | primary_care_sw_coins__s | double | | | primary_care_sw_coins__w | double | | | primary_care_sw_copay__s | double | | | primary_care_sw_copay__w | double | | | specialist_ll_known__s | double | | | specialist_ll_known__w | double | | | specialist_llc_from__s | double | | | specialist_llc_from__w | double | | | specialist_llc_to__s | double | | | specialist_llc_to__w | double | | | specialist_lli_from__s | double | | | specialist_lli_from__w | double | | | specialist_lli_to__s | double | | | specialist_lli_to__w | double | | | specialist_sw_coins__s | double | | | specialist_sw_coins__w | double | | | specialist_sw_copay__s | double | | | specialist_sw_copay__w | double | | | telehealth_ll_known__s | double | | | telehealth_ll_known__w | double | | | telehealth_llc_from__s | double | | | telehealth_llc_from__w | double | | | telehealth_llc_to__s | double | | | telehealth_llc_to__w | double | | | telehealth_lli_from__s | double | | | telehealth_lli_from__w | double | | | telehealth_lli_to__s | double | | | telehealth_lli_to__w | double | | | telehealth_sw_coins__s | double | | | telehealth_sw_coins__w | double | | | telehealth_sw_copay__s | double | | | telehealth_sw_copay__w | double | | | mental_health_ind_ll_known__s | double | | | mental_health_ind_ll_known__w | double | | | mental_health_ind_llc_from__s | double | | | mental_health_ind_llc_from__w | double | | | mental_health_ind_llc_to__s | double | | | mental_health_ind_llc_to__w | double | | | mental_health_ind_lli_from__s | double | | | mental_health_ind_lli_from__w | double | | | mental_health_ind_lli_to__s | double | | | mental_health_ind_lli_to__w | double | | | mental_health_ind_sw_coins__s | double | | | mental_health_ind_sw_coins__w | double | | | mental_health_ind_sw_copay__s | double | | | mental_health_ind_sw_copay__w | double | | | physical_therapy_ll_known__s | double | | | physical_therapy_ll_known__w | double | | | physical_therapy_llc_from__s | double | | | physical_therapy_llc_from__w | double | | | physical_therapy_llc_to__s | double | | | physical_therapy_llc_to__w | double | | | physical_therapy_lli_from__s | double | | | physical_therapy_lli_from__w | double | | | physical_therapy_lli_to__s | double | | | physical_therapy_lli_to__w | double | | | physical_therapy_sw_coins__s | double | | | physical_therapy_sw_coins__w | double | | | physical_therapy_sw_copay__s | double | | | physical_therapy_sw_copay__w | double | | | er_ll_known__s | double | | | er_ll_known__w | double | | | er_llc_from__s | double | | | er_llc_from__w | double | | | er_llc_to__s | double | | | er_llc_to__w | double | | | er_lli_from__s | double | | | er_lli_from__w | double | | | er_lli_to__s | double | | | er_lli_to__w | double | | | er_sw_coins__s | double | | | er_sw_coins__w | double | | | er_sw_copay__s | double | | | er_sw_copay__w | double | | | urgent_ll_known__s | double | | | urgent_ll_known__w | double | | | urgent_llc_from__s | double | | | urgent_llc_from__w | double | | | urgent_llc_to__s | double | | | urgent_llc_to__w | double | | | urgent_lli_from__s | double | | | urgent_lli_from__w | double | | | urgent_lli_to__s | double | | | urgent_lli_to__w | double | | | urgent_sw_coins__s | double | | | urgent_sw_coins__w | double | | | urgent_sw_copay__s | double | | | urgent_sw_copay__w | double | | | ambulance_ground_ll_known__s | double | | | ambulance_ground_ll_known__w | double | | | ambulance_ground_llc_from__s | double | | | ambulance_ground_llc_from__w | double | | | ambulance_ground_llc_to__s | double | | | ambulance_ground_llc_to__w | double | | | ambulance_ground_lli_from__s | double | | | ambulance_ground_lli_from__w | double | | | ambulance_ground_lli_to__s | double | | | ambulance_ground_lli_to__w | double | | | ambulance_ground_sw_coins__s | double | | | ambulance_ground_sw_coins__w | double | | | ambulance_ground_sw_copay__s | double | | | ambulance_ground_sw_copay__w | double | | | outpatient_hosp_ll_known__s | double | | | outpatient_hosp_ll_known__w | double | | | outpatient_hosp_llc_from__s | double | | | outpatient_hosp_llc_from__w | double | | | outpatient_hosp_llc_to__s | double | | | outpatient_hosp_llc_to__w | double | | | outpatient_hosp_lli_from__s | double | | | outpatient_hosp_lli_from__w | double | | | outpatient_hosp_lli_to__s | double | | | outpatient_hosp_lli_to__w | double | | | outpatient_hosp_sw_coins__s | double | | | outpatient_hosp_sw_coins__w | double | | | outpatient_hosp_sw_copay__s | double | | | outpatient_hosp_sw_copay__w | double | | | imaging_complex_ll_known__s | double | | | imaging_complex_ll_known__w | double | | | imaging_complex_llc_from__s | double | | | imaging_complex_llc_from__w | double | | | imaging_complex_llc_to__s | double | | | imaging_complex_llc_to__w | double | | | imaging_complex_lli_from__s | double | | | imaging_complex_lli_from__w | double | | | imaging_complex_lli_to__s | double | | | imaging_complex_lli_to__w | double | | | imaging_complex_sw_coins__s | double | | | imaging_complex_sw_coins__w | double | | | imaging_complex_sw_copay__s | double | | | imaging_complex_sw_copay__w | double | | | radiology_ll_known__s | double | | | radiology_ll_known__w | double | | | radiology_llc_from__s | double | | | radiology_llc_from__w | double | | | radiology_llc_to__s | double | | | radiology_llc_to__w | double | | | radiology_lli_from__s | double | | | radiology_lli_from__w | double | | | radiology_lli_to__s | double | | | radiology_lli_to__w | double | | | radiology_sw_coins__s | double | | | radiology_sw_coins__w | double | | | radiology_sw_copay__s | double | | | radiology_sw_copay__w | double | | | lab_ll_known__s | double | | | lab_ll_known__w | double | | | lab_llc_from__s | double | | | lab_llc_from__w | double | | | lab_llc_to__s | double | | | lab_llc_to__w | double | | | lab_lli_from__s | double | | | lab_lli_from__w | double | | | lab_lli_to__s | double | | | lab_lli_to__w | double | | | lab_sw_coins__s | double | | | lab_sw_coins__w | double | | | lab_sw_copay__s | double | | | lab_sw_copay__w | double | | | inpatient_ll_known__s | double | | | inpatient_ll_known__w | double | | | inpatient_llc_from__s | double | | | inpatient_llc_from__w | double | | | inpatient_llc_to__s | double | | | inpatient_llc_to__w | double | | | inpatient_lli_from__s | double | | | inpatient_lli_from__w | double | | | inpatient_lli_to__s | double | | | inpatient_lli_to__w | double | | | inpatient_sw_coins__s | double | | | inpatient_sw_coins__w | double | | | inpatient_sw_copay__s | double | | | inpatient_sw_copay__w | double | | | snf_ll_known__s | double | | | snf_ll_known__w | double | | | snf_llc_from__s | double | | | snf_llc_from__w | double | | | snf_llc_to__s | double | | | snf_llc_to__w | double | | | snf_lli_from__s | double | | | snf_lli_from__w | double | | | snf_lli_to__s | double | | | snf_lli_to__w | double | | | snf_sw_coins__s | double | | | snf_sw_coins__w | double | | | snf_sw_copay__s | double | | | snf_sw_copay__w | double | | | dental_st_dedicated__s | double | | | dental_st_dedicated__w | double | | | dental_st_pooled_card__s | double | | | dental_st_pooled_card__w | double | | | dental_st_offered_no_max__s | double | | | dental_st_offered_no_max__w | double | | | dental_st_optional_rider__s | double | | | dental_st_optional_rider__w | double | | | dental_st_period_unknown__s | double | | | dental_st_period_unknown__w | double | | | dental_st_not_offered__s | double | | | dental_st_not_offered__w | double | | | dental_st_not_filed__s | double | | | dental_st_not_filed__w | double | | | dental_st_other__s | double | | | dental_st_other__w | double | | | eyewear_st_dedicated__s | double | | | eyewear_st_dedicated__w | double | | | eyewear_st_pooled_card__s | double | | | eyewear_st_pooled_card__w | double | | | eyewear_st_offered_no_max__s | double | | | eyewear_st_offered_no_max__w | double | | | eyewear_st_period_unknown__s | double | | | eyewear_st_period_unknown__w | double | | | eyewear_st_not_offered__s | double | | | eyewear_st_not_offered__w | double | | | eyewear_st_not_filed__s | double | | | eyewear_st_not_filed__w | double | | | eyewear_st_other__s | double | | | eyewear_st_other__w | double | | | hearing_st_dedicated__s | double | | | hearing_st_dedicated__w | double | | | hearing_st_pooled_card__s | double | | | hearing_st_pooled_card__w | double | | | hearing_st_offered_no_max__s | double | | | hearing_st_offered_no_max__w | double | | | hearing_st_period_unknown__s | double | | | hearing_st_period_unknown__w | double | | | hearing_st_not_offered__s | double | | | hearing_st_not_offered__w | double | | | hearing_st_not_filed__s | double | | | hearing_st_not_filed__w | double | | | hearing_st_other__s | double | | | hearing_st_other__w | double | | | otc_st_dedicated__s | double | | | otc_st_dedicated__w | double | | | otc_st_pooled_card__s | double | | | otc_st_pooled_card__w | double | | | otc_st_offered_no_max__s | double | | | otc_st_offered_no_max__w | double | | | otc_st_not_offered__s | double | | | otc_st_not_offered__w | double | | | otc_st_not_filed__s | double | | | otc_st_not_filed__w | double | | | otc_st_other__s | double | | | otc_st_other__w | double | | | giveback_st_filed__s | double | | | giveback_st_filed__w | double | | | giveback_st_not_filed__s | double | | | giveback_st_not_filed__w | double | | | giveback_st_other__s | double | | | giveback_st_other__w | double | | | dental_pkg_mand_only__s | double | | | dental_pkg_mand_only__w | double | | | dental_pkg_mand_and_rider__s | double | | | dental_pkg_mand_and_rider__w | double | | | dental_pkg_rider_only__s | double | | | dental_pkg_rider_only__w | double | | | dental_pkg_none__s | double | | | dental_pkg_none__w | double | | | premium__c | double | | | moop__c | double | | | medical_deductible__c | double | | | partd_deductible__c | double | | | primary_care__c | double | | | specialist__c | double | | | telehealth__c | double | | | mental_health_ind__c | double | | | er__c | double | | | urgent__c | double | | | ambulance_ground__c | double | | | hosp_5day__c | double | | | inpatient__c | double | | | snf__c | double | | | outpatient_hosp__c | double | | | asc__c | double | | | imaging_complex__c | double | | | radiology__c | double | | | lab__c | double | | | physical_therapy__c | double | | | dme__c | double | | | partb_drugs__c | double | | | partb_insulin__c | double | | | dialysis__c | double | | | partd_tier1_copay__c | double | | | partd_tier2_copay__c | double | | | partd_tier4_coins__c | double | | | partd_tier5_coins__c | double | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_reading_cells WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_reading_cells")` first. # Vlada benefit reading, allowance dollars like for like (edition v20261018b), same members base -> next year `medicare_semantic.vw_benefit_reading_cells_sd` · Medicare Advantage, Part D, Medicaid · status live · 691,438 rows Allowance dollars on paired members (book followed <-> next), like for like: level = sd__l0 / w and sd__l1 / w; sd__sw = members whose design changed form (a design change, never a raise or a cut). Pointer -> medicare_semantic.benefit_company_cells_sd_v20261018b. Owner: the Benefits lane. **Grain.** One row per base_year x lvl x state x county_ssa x bucket x plan_type x parent. | column | type | meaning | |---|---|---| | base_year | int | | | value_year | int | | | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | plan_type | string | | | parent | string | | | w | double | | | sd_dental_l0 | double | | | sd_dental_l1 | double | | | sd_dental_sw | double | | | sd_dental_kn | double | | | sd_hearing_l0 | double | | | sd_hearing_l1 | double | | | sd_hearing_sw | double | | | sd_hearing_kn | double | | | sd_otc_l0 | double | | | sd_otc_l1 | double | | | sd_otc_sw | double | | | sd_otc_kn | double | | | sd_eyewear_l0 | double | | | sd_eyewear_l1 | double | | | sd_eyewear_sw | double | | | sd_eyewear_kn | double | | | sd_card_l0 | double | | | sd_card_l1 | double | | | sd_card_sw | double | | | sd_card_kn | double | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_reading_cells_sd WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_reading_cells_sd")` first. # Vlada benefit reading, a contract against its closest contracts on their shared counties (edition v20261018b) `medicare_semantic.vw_benefit_reading_matched` · Medicare Advantage, Part D, Medicaid · status live · 33,306 rows Both sides on the counties both serve with the product and plan type, where both carry the number; side B re-weighted to side A's members in each county. value = a___s / a___w and b___s / b___w. Pointer -> medicare_semantic.benefit_reading_matched_v20261018b. Owner: the Benefits lane. **Grain.** One row per base_year x bucket x plan_type x contract_id x match_contract_id (top 5) x per. | column | type | meaning | |---|---|---| | base_year | int | | | value_year | int | | | bucket | string | | | plan_type | string | | | contract_id | string | | | parent_a | string | | | match_contract_id | string | | | parent_b | string | | | match_rank | bigint | | | jaccard | double | | | overlap_share_a | double | | | per | varchar(1) | | | counties | bigint | | | members_a | double | | | members_b | double | | | a_dental_pct_offered__s | double | | | a_dental_pct_offered__w | double | | | b_dental_pct_offered__s | double | | | b_dental_pct_offered__w | double | | | a_dental_pct_max__s | double | | | a_dental_pct_max__w | double | | | b_dental_pct_max__s | double | | | b_dental_pct_max__w | double | | | a_dental_pct_no_max__s | double | | | a_dental_pct_no_max__w | double | | | b_dental_pct_no_max__s | double | | | b_dental_pct_no_max__w | double | | | a_dental_pct_card__s | double | | | a_dental_pct_card__w | double | | | b_dental_pct_card__s | double | | | b_dental_pct_card__w | double | | | a_dental_design_known__s | double | | | a_dental_design_known__w | double | | | b_dental_design_known__s | double | | | b_dental_design_known__w | double | | | a_dental_dollars_pmpm_if__s | double | | | a_dental_dollars_pmpm_if__w | double | | | b_dental_dollars_pmpm_if__s | double | | | b_dental_dollars_pmpm_if__w | double | | | a_dental_dollars_pmpm_all__s | double | | | a_dental_dollars_pmpm_all__w | double | | | b_dental_dollars_pmpm_all__s | double | | | b_dental_dollars_pmpm_all__w | double | | | a_hearing_pct_offered__s | double | | | a_hearing_pct_offered__w | double | | | b_hearing_pct_offered__s | double | | | b_hearing_pct_offered__w | double | | | a_hearing_pct_allowance__s | double | | | a_hearing_pct_allowance__w | double | | | b_hearing_pct_allowance__s | double | | | b_hearing_pct_allowance__w | double | | | a_hearing_pct_copay__s | double | | | a_hearing_pct_copay__w | double | | | b_hearing_pct_copay__s | double | | | b_hearing_pct_copay__w | double | | | a_hearing_pct_card__s | double | | | a_hearing_pct_card__w | double | | | b_hearing_pct_card__s | double | | | b_hearing_pct_card__w | double | | | a_hearing_design_known__s | double | | | a_hearing_design_known__w | double | | | b_hearing_design_known__s | double | | | b_hearing_design_known__w | double | | | a_hearing_dollars_pmpm_if__s | double | | | a_hearing_dollars_pmpm_if__w | double | | | b_hearing_dollars_pmpm_if__s | double | | | b_hearing_dollars_pmpm_if__w | double | | | a_hearing_dollars_pmpm_all__s | double | | | a_hearing_dollars_pmpm_all__w | double | | | b_hearing_dollars_pmpm_all__s | double | | | b_hearing_dollars_pmpm_all__w | double | | | a_otc_pct_offered__s | double | | | a_otc_pct_offered__w | double | | | b_otc_pct_offered__s | double | | | b_otc_pct_offered__w | double | | | a_otc_pct_own__s | double | | | a_otc_pct_own__w | double | | | b_otc_pct_own__s | double | | | b_otc_pct_own__w | double | | | a_otc_pct_card__s | double | | | a_otc_pct_card__w | double | | | b_otc_pct_card__s | double | | | b_otc_pct_card__w | double | | | a_otc_pct_no_amount__s | double | | | a_otc_pct_no_amount__w | double | | | b_otc_pct_no_amount__s | double | | | b_otc_pct_no_amount__w | double | | | a_otc_design_known__s | double | | | a_otc_design_known__w | double | | | b_otc_design_known__s | double | | | b_otc_design_known__w | double | | | a_otc_dollars_pmpm_if__s | double | | | a_otc_dollars_pmpm_if__w | double | | | b_otc_dollars_pmpm_if__s | double | | | b_otc_dollars_pmpm_if__w | double | | | a_otc_dollars_pmpm_all__s | double | | | a_otc_dollars_pmpm_all__w | double | | | b_otc_dollars_pmpm_all__s | double | | | b_otc_dollars_pmpm_all__w | double | | | a_eyewear_pct_offered__s | double | | | a_eyewear_pct_offered__w | double | | | b_eyewear_pct_offered__s | double | | | b_eyewear_pct_offered__w | double | | | a_eyewear_pct_allowance__s | double | | | a_eyewear_pct_allowance__w | double | | | b_eyewear_pct_allowance__s | double | | | b_eyewear_pct_allowance__w | double | | | a_eyewear_pct_card__s | double | | | a_eyewear_pct_card__w | double | | | b_eyewear_pct_card__s | double | | | b_eyewear_pct_card__w | double | | | a_eyewear_pct_no_max__s | double | | | a_eyewear_pct_no_max__w | double | | | b_eyewear_pct_no_max__s | double | | | b_eyewear_pct_no_max__w | double | | | a_eyewear_design_known__s | double | | | a_eyewear_design_known__w | double | | | b_eyewear_design_known__s | double | | | b_eyewear_design_known__w | double | | | a_eyewear_dollars_pmpm_if__s | double | | | a_eyewear_dollars_pmpm_if__w | double | | | b_eyewear_dollars_pmpm_if__s | double | | | b_eyewear_dollars_pmpm_if__w | double | | | a_eyewear_dollars_pmpm_all__s | double | | | a_eyewear_dollars_pmpm_all__w | double | | | b_eyewear_dollars_pmpm_all__s | double | | | b_eyewear_dollars_pmpm_all__w | double | | | a_hearing_copay_per_aid__s | double | | | a_hearing_copay_per_aid__w | double | | | b_hearing_copay_per_aid__s | double | | | b_hearing_copay_per_aid__w | double | | | a_otc_pct_filed_own_zero_card__s | double | | | a_otc_pct_filed_own_zero_card__w | double | | | b_otc_pct_filed_own_zero_card__s | double | | | b_otc_pct_filed_own_zero_card__w | double | | | a_otc_pct_one_pot__s | double | | | a_otc_pct_one_pot__w | double | | | b_otc_pct_one_pot__s | double | | | b_otc_pct_one_pot__w | double | | | a_otc_pct_d5_pot__s | double | | | a_otc_pct_d5_pot__w | double | | | b_otc_pct_d5_pot__s | double | | | b_otc_pct_d5_pot__w | double | | | a_dental_any_pct_offered__s | double | | | a_dental_any_pct_offered__w | double | | | b_dental_any_pct_offered__s | double | | | b_dental_any_pct_offered__w | double | | | a_eyewear_pct_preferred_tier__s | double | | | a_eyewear_pct_preferred_tier__w | double | | | b_eyewear_pct_preferred_tier__s | double | | | b_eyewear_pct_preferred_tier__w | double | | | a_eyewear_preferred_dollars_pmpm_if__s | double | | | a_eyewear_preferred_dollars_pmpm_if__w | double | | | b_eyewear_preferred_dollars_pmpm_if__s | double | | | b_eyewear_preferred_dollars_pmpm_if__w | double | | | a_card_pct_offered__s | double | | | a_card_pct_offered__w | double | | | b_card_pct_offered__s | double | | | b_card_pct_offered__w | double | | | a_card_dollars_pmpm_if__s | double | | | a_card_dollars_pmpm_if__w | double | | | b_card_dollars_pmpm_if__s | double | | | b_card_dollars_pmpm_if__w | double | | | a_card_dollars_pmpm_all__s | double | | | a_card_dollars_pmpm_all__w | double | | | b_card_dollars_pmpm_all__s | double | | | b_card_dollars_pmpm_all__w | double | | | a_card_pct_dvh_kind_only__s | double | | | a_card_pct_dvh_kind_only__w | double | | | b_card_pct_dvh_kind_only__s | double | | | b_card_pct_dvh_kind_only__w | double | | | a_card_pct_dvh_same_pot__s | double | | | a_card_pct_dvh_same_pot__w | double | | | b_card_pct_dvh_same_pot__s | double | | | b_card_pct_dvh_same_pot__w | double | | | a_card_pct_dvh_shared_pot__s | double | | | a_card_pct_dvh_shared_pot__w | double | | | b_card_pct_dvh_shared_pot__s | double | | | b_card_pct_dvh_shared_pot__w | double | | | a_allowance_pooled_pct_any__s | double | | | a_allowance_pooled_pct_any__w | double | | | b_allowance_pooled_pct_any__s | double | | | b_allowance_pooled_pct_any__w | double | | | a_card_targeted_pct_offered__s | double | | | a_card_targeted_pct_offered__w | double | | | b_card_targeted_pct_offered__s | double | | | b_card_targeted_pct_offered__w | double | | | a_card_targeted_dollars_pmpm_if__s | double | | | a_card_targeted_dollars_pmpm_if__w | double | | | b_card_targeted_dollars_pmpm_if__s | double | | | b_card_targeted_dollars_pmpm_if__w | double | | | a_card_targeted_pct_ssbci__s | double | | | a_card_targeted_pct_ssbci__w | double | | | b_card_targeted_pct_ssbci__s | double | | | b_card_targeted_pct_ssbci__w | double | | | a_card_targeted_pct_vbid_uf__s | double | | | a_card_targeted_pct_vbid_uf__w | double | | | b_card_targeted_pct_vbid_uf__s | double | | | b_card_targeted_pct_vbid_uf__w | double | | | a_card_targeted_pct_no_amount__s | double | | | a_card_targeted_pct_no_amount__w | double | | | b_card_targeted_pct_no_amount__s | double | | | b_card_targeted_pct_no_amount__w | double | | | a_card_targeted_pct_pooled_in_card__s | double | | | a_card_targeted_pct_pooled_in_card__w | double | | | b_card_targeted_pct_pooled_in_card__s | double | | | b_card_targeted_pct_pooled_in_card__w | double | | | a_allowance_total_pmpm_all__s | double | | | a_allowance_total_pmpm_all__w | double | | | b_allowance_total_pmpm_all__s | double | | | b_allowance_total_pmpm_all__w | double | | | a_allowance_total_pct_no_cap__s | double | | | a_allowance_total_pct_no_cap__w | double | | | b_allowance_total_pct_no_cap__s | double | | | b_allowance_total_pct_no_cap__w | double | | | a_allowance_shared_pot_overlap_pmpm__s | double | | | a_allowance_shared_pot_overlap_pmpm__w | double | | | b_allowance_shared_pot_overlap_pmpm__s | double | | | b_allowance_shared_pot_overlap_pmpm__w | double | | | a_giveback_pct_offered__s | double | | | a_giveback_pct_offered__w | double | | | b_giveback_pct_offered__s | double | | | b_giveback_pct_offered__w | double | | | a_giveback_pct_token__s | double | | | a_giveback_pct_token__w | double | | | b_giveback_pct_token__s | double | | | b_giveback_pct_token__w | double | | | a_giveback_pmpm_if__s | double | | | a_giveback_pmpm_if__w | double | | | b_giveback_pmpm_if__s | double | | | b_giveback_pmpm_if__w | double | | | a_premium_pct_zero__s | double | | | a_premium_pct_zero__w | double | | | b_premium_pct_zero__s | double | | | b_premium_pct_zero__w | double | | | a_deductible_pct_none__s | double | | | a_deductible_pct_none__w | double | | | b_deductible_pct_none__s | double | | | b_deductible_pct_none__w | double | | | a_deductible_pct_plan__s | double | | | a_deductible_pct_plan__w | double | | | b_deductible_pct_plan__s | double | | | b_deductible_pct_plan__w | double | | | a_deductible_pct_partb__s | double | | | a_deductible_pct_partb__w | double | | | b_deductible_pct_partb__s | double | | | b_deductible_pct_partb__w | double | | | a_deductible_pct_scope_oon__s | double | | | a_deductible_pct_scope_oon__w | double | | | b_deductible_pct_scope_oon__s | double | | | b_deductible_pct_scope_oon__w | double | | | a_deductible_plan_amount__s | double | | | a_deductible_plan_amount__w | double | | | b_deductible_plan_amount__s | double | | | b_deductible_plan_amount__w | double | | | a_deductible_design_known__s | double | | | a_deductible_design_known__w | double | | | b_deductible_design_known__s | double | | | b_deductible_design_known__w | double | | | a_svc_transportation_pct_offered__s | double | | | a_svc_transportation_pct_offered__w | double | | | b_svc_transportation_pct_offered__s | double | | | b_svc_transportation_pct_offered__w | double | | | a_svc_transportation_pct_optional_only__s | double | | | a_svc_transportation_pct_optional_only__w | double | | | b_svc_transportation_pct_optional_only__s | double | | | b_svc_transportation_pct_optional_only__w | double | | | a_svc_fitness_pct_offered__s | double | | | a_svc_fitness_pct_offered__w | double | | | b_svc_fitness_pct_offered__s | double | | | b_svc_fitness_pct_offered__w | double | | | a_svc_fitness_pct_optional_only__s | double | | | a_svc_fitness_pct_optional_only__w | double | | | b_svc_fitness_pct_optional_only__s | double | | | b_svc_fitness_pct_optional_only__w | double | | | a_svc_meals_post_discharge_pct_offered__s | double | | | a_svc_meals_post_discharge_pct_offered__w | double | | | b_svc_meals_post_discharge_pct_offered__s | double | | | b_svc_meals_post_discharge_pct_offered__w | double | | | a_svc_meals_post_discharge_pct_optional_only__s | double | | | a_svc_meals_post_discharge_pct_optional_only__w | double | | | b_svc_meals_post_discharge_pct_optional_only__s | double | | | b_svc_meals_post_discharge_pct_optional_only__w | double | | | a_svc_meals_any_pct_offered__s | double | | | a_svc_meals_any_pct_offered__w | double | | | b_svc_meals_any_pct_offered__s | double | | | b_svc_meals_any_pct_offered__w | double | | | a_svc_meals_any_pct_optional_only__s | double | | | a_svc_meals_any_pct_optional_only__w | double | | | b_svc_meals_any_pct_optional_only__s | double | | | b_svc_meals_any_pct_optional_only__w | double | | | a_svc_podiatry_pct_offered__s | double | | | a_svc_podiatry_pct_offered__w | double | | | b_svc_podiatry_pct_offered__s | double | | | b_svc_podiatry_pct_offered__w | double | | | a_svc_podiatry_pct_optional_only__s | double | | | a_svc_podiatry_pct_optional_only__w | double | | | b_svc_podiatry_pct_optional_only__s | double | | | b_svc_podiatry_pct_optional_only__w | double | | | a_svc_transportation_trips__s | double | | | a_svc_transportation_trips__w | double | | | b_svc_transportation_trips__s | double | | | b_svc_transportation_trips__w | double | | | a_svc_transportation_round_trips__s | double | | | a_svc_transportation_round_trips__w | double | | | b_svc_transportation_round_trips__s | double | | | b_svc_transportation_round_trips__w | double | | | a_svc_transportation_pct_unlimited__s | double | | | a_svc_transportation_pct_unlimited__w | double | | | b_svc_transportation_pct_unlimited__s | double | | | b_svc_transportation_pct_unlimited__w | double | | | a_svc_podiatry_visits__s | double | | | a_svc_podiatry_visits__w | double | | | b_svc_podiatry_visits__s | double | | | b_svc_podiatry_visits__w | double | | | a_premium__s | double | | | a_premium__w | double | | | b_premium__s | double | | | b_premium__w | double | | | a_moop__s | double | | | a_moop__w | double | | | b_moop__s | double | | | b_moop__w | double | | | a_medical_deductible__s | double | | | a_medical_deductible__w | double | | | b_medical_deductible__s | double | | | b_medical_deductible__w | double | | | a_partd_deductible__s | double | | | a_partd_deductible__w | double | | | b_partd_deductible__s | double | | | b_partd_deductible__w | double | | | a_primary_care__s | double | | | a_primary_care__w | double | | | b_primary_care__s | double | | | b_primary_care__w | double | | | a_specialist__s | double | | | a_specialist__w | double | | | b_specialist__s | double | | | b_specialist__w | double | | | a_telehealth__s | double | | | a_telehealth__w | double | | | b_telehealth__s | double | | | b_telehealth__w | double | | | a_mental_health_ind__s | double | | | a_mental_health_ind__w | double | | | b_mental_health_ind__s | double | | | b_mental_health_ind__w | double | | | a_er__s | double | | | a_er__w | double | | | b_er__s | double | | | b_er__w | double | | | a_urgent__s | double | | | a_urgent__w | double | | | b_urgent__s | double | | | b_urgent__w | double | | | a_ambulance_ground__s | double | | | a_ambulance_ground__w | double | | | b_ambulance_ground__s | double | | | b_ambulance_ground__w | double | | | a_hosp_5day__s | double | | | a_hosp_5day__w | double | | | b_hosp_5day__s | double | | | b_hosp_5day__w | double | | | a_inpatient__s | double | | | a_inpatient__w | double | | | b_inpatient__s | double | | | b_inpatient__w | double | | | a_snf__s | double | | | a_snf__w | double | | | b_snf__s | double | | | b_snf__w | double | | | a_outpatient_hosp__s | double | | | a_outpatient_hosp__w | double | | | b_outpatient_hosp__s | double | | | b_outpatient_hosp__w | double | | | a_asc__s | double | | | a_asc__w | double | | | b_asc__s | double | | | b_asc__w | double | | | a_imaging_complex__s | double | | | a_imaging_complex__w | double | | | b_imaging_complex__s | double | | | b_imaging_complex__w | double | | | a_radiology__s | double | | | a_radiology__w | double | | | b_radiology__s | double | | | b_radiology__w | double | | | a_lab__s | double | | | a_lab__w | double | | | b_lab__s | double | | | b_lab__w | double | | | a_physical_therapy__s | double | | | a_physical_therapy__w | double | | | b_physical_therapy__s | double | | | b_physical_therapy__w | double | | | a_dme__s | double | | | a_dme__w | double | | | b_dme__s | double | | | b_dme__w | double | | | a_partb_drugs__s | double | | | a_partb_drugs__w | double | | | b_partb_drugs__s | double | | | b_partb_drugs__w | double | | | a_partb_insulin__s | double | | | a_partb_insulin__w | double | | | b_partb_insulin__s | double | | | b_partb_insulin__w | double | | | a_dialysis__s | double | | | a_dialysis__w | double | | | b_dialysis__s | double | | | b_dialysis__w | double | | | a_partd_tier1_copay__s | double | | | a_partd_tier1_copay__w | double | | | b_partd_tier1_copay__s | double | | | b_partd_tier1_copay__w | double | | | a_partd_tier2_copay__s | double | | | a_partd_tier2_copay__w | double | | | b_partd_tier2_copay__s | double | | | b_partd_tier2_copay__w | double | | | a_partd_tier4_coins__s | double | | | a_partd_tier4_coins__w | double | | | b_partd_tier4_coins__s | double | | | b_partd_tier4_coins__w | double | | | a_partd_tier5_coins__s | double | | | a_partd_tier5_coins__w | double | | | b_partd_tier5_coins__s | double | | | b_partd_tier5_coins__w | double | | | a_primary_care_pct_copay__s | double | | | a_primary_care_pct_copay__w | double | | | b_primary_care_pct_copay__s | double | | | b_primary_care_pct_copay__w | double | | | a_primary_care_pct_coins__s | double | | | a_primary_care_pct_coins__w | double | | | b_primary_care_pct_coins__s | double | | | b_primary_care_pct_coins__w | double | | | a_primary_care_coins__s | double | | | a_primary_care_coins__w | double | | | b_primary_care_coins__s | double | | | b_primary_care_coins__w | double | | | a_specialist_pct_copay__s | double | | | a_specialist_pct_copay__w | double | | | b_specialist_pct_copay__s | double | | | b_specialist_pct_copay__w | double | | | a_specialist_pct_coins__s | double | | | a_specialist_pct_coins__w | double | | | b_specialist_pct_coins__s | double | | | b_specialist_pct_coins__w | double | | | a_specialist_coins__s | double | | | a_specialist_coins__w | double | | | b_specialist_coins__s | double | | | b_specialist_coins__w | double | | | a_telehealth_pct_copay__s | double | | | a_telehealth_pct_copay__w | double | | | b_telehealth_pct_copay__s | double | | | b_telehealth_pct_copay__w | double | | | a_telehealth_pct_coins__s | double | | | a_telehealth_pct_coins__w | double | | | b_telehealth_pct_coins__s | double | | | b_telehealth_pct_coins__w | double | | | a_telehealth_coins__s | double | | | a_telehealth_coins__w | double | | | b_telehealth_coins__s | double | | | b_telehealth_coins__w | double | | | a_mental_health_ind_pct_copay__s | double | | | a_mental_health_ind_pct_copay__w | double | | | b_mental_health_ind_pct_copay__s | double | | | b_mental_health_ind_pct_copay__w | double | | | a_mental_health_ind_pct_coins__s | double | | | a_mental_health_ind_pct_coins__w | double | | | b_mental_health_ind_pct_coins__s | double | | | b_mental_health_ind_pct_coins__w | double | | | a_mental_health_ind_coins__s | double | | | a_mental_health_ind_coins__w | double | | | b_mental_health_ind_coins__s | double | | | b_mental_health_ind_coins__w | double | | | a_physical_therapy_pct_copay__s | double | | | a_physical_therapy_pct_copay__w | double | | | b_physical_therapy_pct_copay__s | double | | | b_physical_therapy_pct_copay__w | double | | | a_physical_therapy_pct_coins__s | double | | | a_physical_therapy_pct_coins__w | double | | | b_physical_therapy_pct_coins__s | double | | | b_physical_therapy_pct_coins__w | double | | | a_physical_therapy_coins__s | double | | | a_physical_therapy_coins__w | double | | | b_physical_therapy_coins__s | double | | | b_physical_therapy_coins__w | double | | | a_er_pct_copay__s | double | | | a_er_pct_copay__w | double | | | b_er_pct_copay__s | double | | | b_er_pct_copay__w | double | | | a_er_pct_coins__s | double | | | a_er_pct_coins__w | double | | | b_er_pct_coins__s | double | | | b_er_pct_coins__w | double | | | a_er_coins__s | double | | | a_er_coins__w | double | | | b_er_coins__s | double | | | b_er_coins__w | double | | | a_urgent_pct_copay__s | double | | | a_urgent_pct_copay__w | double | | | b_urgent_pct_copay__s | double | | | b_urgent_pct_copay__w | double | | | a_urgent_pct_coins__s | double | | | a_urgent_pct_coins__w | double | | | b_urgent_pct_coins__s | double | | | b_urgent_pct_coins__w | double | | | a_urgent_coins__s | double | | | a_urgent_coins__w | double | | | b_urgent_coins__s | double | | | b_urgent_coins__w | double | | | a_ambulance_ground_pct_copay__s | double | | | a_ambulance_ground_pct_copay__w | double | | | b_ambulance_ground_pct_copay__s | double | | | b_ambulance_ground_pct_copay__w | double | | | a_ambulance_ground_pct_coins__s | double | | | a_ambulance_ground_pct_coins__w | double | | | b_ambulance_ground_pct_coins__s | double | | | b_ambulance_ground_pct_coins__w | double | | | a_ambulance_ground_coins__s | double | | | a_ambulance_ground_coins__w | double | | | b_ambulance_ground_coins__s | double | | | b_ambulance_ground_coins__w | double | | | a_outpatient_hosp_pct_copay__s | double | | | a_outpatient_hosp_pct_copay__w | double | | | b_outpatient_hosp_pct_copay__s | double | | | b_outpatient_hosp_pct_copay__w | double | | | a_outpatient_hosp_pct_coins__s | double | | | a_outpatient_hosp_pct_coins__w | double | | | b_outpatient_hosp_pct_coins__s | double | | | b_outpatient_hosp_pct_coins__w | double | | | a_outpatient_hosp_coins__s | double | | | a_outpatient_hosp_coins__w | double | | | b_outpatient_hosp_coins__s | double | | | b_outpatient_hosp_coins__w | double | | | a_imaging_complex_pct_copay__s | double | | | a_imaging_complex_pct_copay__w | double | | | b_imaging_complex_pct_copay__s | double | | | b_imaging_complex_pct_copay__w | double | | | a_imaging_complex_pct_coins__s | double | | | a_imaging_complex_pct_coins__w | double | | | b_imaging_complex_pct_coins__s | double | | | b_imaging_complex_pct_coins__w | double | | | a_imaging_complex_coins__s | double | | | a_imaging_complex_coins__w | double | | | b_imaging_complex_coins__s | double | | | b_imaging_complex_coins__w | double | | | a_radiology_pct_copay__s | double | | | a_radiology_pct_copay__w | double | | | b_radiology_pct_copay__s | double | | | b_radiology_pct_copay__w | double | | | a_radiology_pct_coins__s | double | | | a_radiology_pct_coins__w | double | | | b_radiology_pct_coins__s | double | | | b_radiology_pct_coins__w | double | | | a_radiology_coins__s | double | | | a_radiology_coins__w | double | | | b_radiology_coins__s | double | | | b_radiology_coins__w | double | | | a_lab_pct_copay__s | double | | | a_lab_pct_copay__w | double | | | b_lab_pct_copay__s | double | | | b_lab_pct_copay__w | double | | | a_lab_pct_coins__s | double | | | a_lab_pct_coins__w | double | | | b_lab_pct_coins__s | double | | | b_lab_pct_coins__w | double | | | a_lab_coins__s | double | | | a_lab_coins__w | double | | | b_lab_coins__s | double | | | b_lab_coins__w | double | | | a_inpatient_pct_copay__s | double | | | a_inpatient_pct_copay__w | double | | | b_inpatient_pct_copay__s | double | | | b_inpatient_pct_copay__w | double | | | a_inpatient_pct_coins__s | double | | | a_inpatient_pct_coins__w | double | | | b_inpatient_pct_coins__s | double | | | b_inpatient_pct_coins__w | double | | | a_inpatient_coins__s | double | | | a_inpatient_coins__w | double | | | b_inpatient_coins__s | double | | | b_inpatient_coins__w | double | | | a_snf_pct_copay__s | double | | | a_snf_pct_copay__w | double | | | b_snf_pct_copay__s | double | | | b_snf_pct_copay__w | double | | | a_snf_pct_coins__s | double | | | a_snf_pct_coins__w | double | | | b_snf_pct_coins__s | double | | | b_snf_pct_coins__w | double | | | a_snf_coins__s | double | | | a_snf_coins__w | double | | | b_snf_coins__s | double | | | b_snf_coins__w | double | | | a_telehealth_pct_offered__s | double | | | a_telehealth_pct_offered__w | double | | | b_telehealth_pct_offered__s | double | | | b_telehealth_pct_offered__w | double | | | a_moop_pct_not_in_network__s | double | | | a_moop_pct_not_in_network__w | double | | | b_moop_pct_not_in_network__s | double | | | b_moop_pct_not_in_network__w | double | | | a_dental_pct_cap_plus_card__s | double | | | a_dental_pct_cap_plus_card__w | double | | | b_dental_pct_cap_plus_card__s | double | | | b_dental_pct_cap_plus_card__w | double | | | a_hearing_pct_cap_plus_card__s | double | | | a_hearing_pct_cap_plus_card__w | double | | | b_hearing_pct_cap_plus_card__s | double | | | b_hearing_pct_cap_plus_card__w | double | | | a_otc_pct_cap_plus_card__s | double | | | a_otc_pct_cap_plus_card__w | double | | | b_otc_pct_cap_plus_card__s | double | | | b_otc_pct_cap_plus_card__w | double | | | a_eyewear_pct_cap_plus_card__s | double | | | a_eyewear_pct_cap_plus_card__w | double | | | b_eyewear_pct_cap_plus_card__s | double | | | b_eyewear_pct_cap_plus_card__w | double | | | a_card_pays_dental__s | double | | | a_card_pays_dental__w | double | | | b_card_pays_dental__s | double | | | b_card_pays_dental__w | double | | | a_card_pays_eyewear__s | double | | | a_card_pays_eyewear__w | double | | | b_card_pays_eyewear__s | double | | | b_card_pays_eyewear__w | double | | | a_card_pays_hearing__s | double | | | a_card_pays_hearing__w | double | | | b_card_pays_hearing__s | double | | | b_card_pays_hearing__w | double | | | a_card_pays_otc__s | double | | | a_card_pays_otc__w | double | | | b_card_pays_otc__s | double | | | b_card_pays_otc__w | double | | | a_card_pays_food_living__s | double | | | a_card_pays_food_living__w | double | | | b_card_pays_food_living__s | double | | | b_card_pays_food_living__w | double | | | a_card_pays_other__s | double | | | a_card_pays_other__w | double | | | b_card_pays_other__s | double | | | b_card_pays_other__w | double | | | a_card_pct_kind_flex__s | double | | | a_card_pct_kind_flex__w | double | | | b_card_pct_kind_flex__s | double | | | b_card_pct_kind_flex__w | double | | | a_card_pct_kind_dvh__s | double | | | a_card_pct_kind_dvh__w | double | | | b_card_pct_kind_dvh__s | double | | | b_card_pct_kind_dvh__w | double | | | a_card_pct_kind_otc__s | double | | | a_card_pct_kind_otc__w | double | | | b_card_pct_kind_otc__s | double | | | b_card_pct_kind_otc__w | double | | | a_card_pct_kind_food_living__s | double | | | a_card_pct_kind_food_living__w | double | | | b_card_pct_kind_food_living__s | double | | | b_card_pct_kind_food_living__w | double | | | a_card_pct_kind_wellness__s | double | | | a_card_pct_kind_wellness__w | double | | | b_card_pct_kind_wellness__s | double | | | b_card_pct_kind_wellness__w | double | | | a_primary_care_pct_zero__s | double | | | a_primary_care_pct_zero__w | double | | | b_primary_care_pct_zero__s | double | | | b_primary_care_pct_zero__w | double | | | a_specialist_pct_zero__s | double | | | a_specialist_pct_zero__w | double | | | b_specialist_pct_zero__s | double | | | b_specialist_pct_zero__w | double | | | a_telehealth_pct_zero__s | double | | | a_telehealth_pct_zero__w | double | | | b_telehealth_pct_zero__s | double | | | b_telehealth_pct_zero__w | double | | | a_mental_health_ind_pct_zero__s | double | | | a_mental_health_ind_pct_zero__w | double | | | b_mental_health_ind_pct_zero__s | double | | | b_mental_health_ind_pct_zero__w | double | | | a_physical_therapy_pct_zero__s | double | | | a_physical_therapy_pct_zero__w | double | | | b_physical_therapy_pct_zero__s | double | | | b_physical_therapy_pct_zero__w | double | | | a_er_pct_zero__s | double | | | a_er_pct_zero__w | double | | | b_er_pct_zero__s | double | | | b_er_pct_zero__w | double | | | a_urgent_pct_zero__s | double | | | a_urgent_pct_zero__w | double | | | b_urgent_pct_zero__s | double | | | b_urgent_pct_zero__w | double | | | a_ambulance_ground_pct_zero__s | double | | | a_ambulance_ground_pct_zero__w | double | | | b_ambulance_ground_pct_zero__s | double | | | b_ambulance_ground_pct_zero__w | double | | | a_outpatient_hosp_pct_zero__s | double | | | a_outpatient_hosp_pct_zero__w | double | | | b_outpatient_hosp_pct_zero__s | double | | | b_outpatient_hosp_pct_zero__w | double | | | a_imaging_complex_pct_zero__s | double | | | a_imaging_complex_pct_zero__w | double | | | b_imaging_complex_pct_zero__s | double | | | b_imaging_complex_pct_zero__w | double | | | a_radiology_pct_zero__s | double | | | a_radiology_pct_zero__w | double | | | b_radiology_pct_zero__s | double | | | b_radiology_pct_zero__w | double | | | a_lab_pct_zero__s | double | | | a_lab_pct_zero__w | double | | | b_lab_pct_zero__s | double | | | b_lab_pct_zero__w | double | | | a_inpatient_pct_zero__s | double | | | a_inpatient_pct_zero__w | double | | | b_inpatient_pct_zero__s | double | | | b_inpatient_pct_zero__w | double | | | a_snf_pct_zero__s | double | | | a_snf_pct_zero__w | double | | | b_snf_pct_zero__s | double | | | b_snf_pct_zero__w | double | | | a_dsnp_enrolls_full_duals__s | double | | | a_dsnp_enrolls_full_duals__w | double | | | b_dsnp_enrolls_full_duals__s | double | | | b_dsnp_enrolls_full_duals__w | double | | | a_primary_care_dual_effective__s | double | | | a_primary_care_dual_effective__w | double | | | b_primary_care_dual_effective__s | double | | | b_primary_care_dual_effective__w | double | | | a_specialist_dual_effective__s | double | | | a_specialist_dual_effective__w | double | | | b_specialist_dual_effective__s | double | | | b_specialist_dual_effective__w | double | | | a_telehealth_dual_effective__s | double | | | a_telehealth_dual_effective__w | double | | | b_telehealth_dual_effective__s | double | | | b_telehealth_dual_effective__w | double | | | a_mental_health_ind_dual_effective__s | double | | | a_mental_health_ind_dual_effective__w | double | | | b_mental_health_ind_dual_effective__s | double | | | b_mental_health_ind_dual_effective__w | double | | | a_physical_therapy_dual_effective__s | double | | | a_physical_therapy_dual_effective__w | double | | | b_physical_therapy_dual_effective__s | double | | | b_physical_therapy_dual_effective__w | double | | | a_er_dual_effective__s | double | | | a_er_dual_effective__w | double | | | b_er_dual_effective__s | double | | | b_er_dual_effective__w | double | | | a_urgent_dual_effective__s | double | | | a_urgent_dual_effective__w | double | | | b_urgent_dual_effective__s | double | | | b_urgent_dual_effective__w | double | | | a_ambulance_ground_dual_effective__s | double | | | a_ambulance_ground_dual_effective__w | double | | | b_ambulance_ground_dual_effective__s | double | | | b_ambulance_ground_dual_effective__w | double | | | a_outpatient_hosp_dual_effective__s | double | | | a_outpatient_hosp_dual_effective__w | double | | | b_outpatient_hosp_dual_effective__s | double | | | b_outpatient_hosp_dual_effective__w | double | | | a_imaging_complex_dual_effective__s | double | | | a_imaging_complex_dual_effective__w | double | | | b_imaging_complex_dual_effective__s | double | | | b_imaging_complex_dual_effective__w | double | | | a_radiology_dual_effective__s | double | | | a_radiology_dual_effective__w | double | | | b_radiology_dual_effective__s | double | | | b_radiology_dual_effective__w | double | | | a_lab_dual_effective__s | double | | | a_lab_dual_effective__w | double | | | b_lab_dual_effective__s | double | | | b_lab_dual_effective__w | double | | | a_inpatient_dual_effective__s | double | | | a_inpatient_dual_effective__w | double | | | b_inpatient_dual_effective__s | double | | | b_inpatient_dual_effective__w | double | | | a_snf_dual_effective__s | double | | | a_snf_dual_effective__w | double | | | b_snf_dual_effective__s | double | | | b_snf_dual_effective__w | double | | | a_moop_dual_effective__s | double | | | a_moop_dual_effective__w | double | | | b_moop_dual_effective__s | double | | | b_moop_dual_effective__w | double | | | a_medical_deductible_dual_effective__s | double | | | a_medical_deductible_dual_effective__w | double | | | b_medical_deductible_dual_effective__s | double | | | b_medical_deductible_dual_effective__w | double | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_reading_matched WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_reading_matched")` first. # Vlada benefit reading, the simple average across plans (edition v20261018b): each plan segment counted once per cell `medicare_semantic.vw_benefit_reading_simple` · Medicare Advantage, Part D, Medicaid · status live · 2,115,880 rows The simple lens beside the member-weighted cells: value = m__ps / m__pn, each plan segment counted once in the cell (national once, state once per state, county once per county), 'plans with reported members'. A segment's filed value is the same in every county it serves (rail R-simple). Pointer -> medicare_semantic.benefit_reading_simple_v20261018b. Owner: the Benefits lane. **Grain.** The cells' keys (base_year x lvl x state x county_ssa x bucket x plan_type x parent x per). | column | type | meaning | |---|---|---| | base_year | int | | | value_year | int | | | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | plan_type | string | | | parent | string | | | per | varchar(1) | | | plans | bigint | | | dental_pct_offered__ps | double | | | dental_pct_offered__pn | bigint | | | dental_pct_max__ps | double | | | dental_pct_max__pn | bigint | | | dental_pct_no_max__ps | double | | | dental_pct_no_max__pn | bigint | | | dental_pct_card__ps | double | | | dental_pct_card__pn | bigint | | | dental_dollars_pmpm_if__ps | double | | | dental_dollars_pmpm_if__pn | bigint | | | dental_dollars_pmpm_all__ps | double | | | dental_dollars_pmpm_all__pn | bigint | | | dental_design_known__ps | double | | | dental_design_known__pn | bigint | | | hearing_pct_offered__ps | double | | | hearing_pct_offered__pn | bigint | | | hearing_pct_allowance__ps | double | | | hearing_pct_allowance__pn | bigint | | | hearing_pct_copay__ps | double | | | hearing_pct_copay__pn | bigint | | | hearing_pct_card__ps | double | | | hearing_pct_card__pn | bigint | | | hearing_dollars_pmpm_if__ps | double | | | hearing_dollars_pmpm_if__pn | bigint | | | hearing_dollars_pmpm_all__ps | double | | | hearing_dollars_pmpm_all__pn | bigint | | | hearing_design_known__ps | double | | | hearing_design_known__pn | bigint | | | otc_pct_offered__ps | double | | | otc_pct_offered__pn | bigint | | | otc_pct_own__ps | double | | | otc_pct_own__pn | bigint | | | otc_pct_card__ps | double | | | otc_pct_card__pn | bigint | | | otc_pct_no_amount__ps | double | | | otc_pct_no_amount__pn | bigint | | | otc_dollars_pmpm_if__ps | double | | | otc_dollars_pmpm_if__pn | bigint | | | otc_dollars_pmpm_all__ps | double | | | otc_dollars_pmpm_all__pn | bigint | | | otc_design_known__ps | double | | | otc_design_known__pn | bigint | | | eyewear_pct_offered__ps | double | | | eyewear_pct_offered__pn | bigint | | | eyewear_pct_allowance__ps | double | | | eyewear_pct_allowance__pn | bigint | | | eyewear_pct_card__ps | double | | | eyewear_pct_card__pn | bigint | | | eyewear_pct_no_max__ps | double | | | eyewear_pct_no_max__pn | bigint | | | eyewear_dollars_pmpm_if__ps | double | | | eyewear_dollars_pmpm_if__pn | bigint | | | eyewear_dollars_pmpm_all__ps | double | | | eyewear_dollars_pmpm_all__pn | bigint | | | eyewear_design_known__ps | double | | | eyewear_design_known__pn | bigint | | | hearing_copay_per_aid__ps | double | | | hearing_copay_per_aid__pn | bigint | | | otc_pct_filed_own_zero_card__ps | double | | | otc_pct_filed_own_zero_card__pn | bigint | | | card_pct_offered__ps | double | | | card_pct_offered__pn | bigint | | | card_dollars_pmpm_if__ps | double | | | card_dollars_pmpm_if__pn | bigint | | | card_dollars_pmpm_all__ps | double | | | card_dollars_pmpm_all__pn | bigint | | | allowance_total_pmpm_all__ps | double | | | allowance_total_pmpm_all__pn | bigint | | | allowance_total_coverage__ps | double | | | allowance_total_coverage__pn | bigint | | | giveback_pct_offered__ps | double | | | giveback_pct_offered__pn | bigint | | | giveback_pct_token__ps | double | | | giveback_pct_token__pn | bigint | | | giveback_pmpm_if__ps | double | | | giveback_pmpm_if__pn | bigint | | | premium_pct_zero__ps | double | | | premium_pct_zero__pn | bigint | | | svc_transportation_pct_offered__ps | double | | | svc_transportation_pct_offered__pn | bigint | | | svc_transportation_known__ps | double | | | svc_transportation_known__pn | bigint | | | svc_fitness_pct_offered__ps | double | | | svc_fitness_pct_offered__pn | bigint | | | svc_fitness_known__ps | double | | | svc_fitness_known__pn | bigint | | | svc_meals_post_discharge_pct_offered__ps | double | | | svc_meals_post_discharge_pct_offered__pn | bigint | | | svc_meals_post_discharge_known__ps | double | | | svc_meals_post_discharge_known__pn | bigint | | | svc_meals_any_pct_offered__ps | double | | | svc_meals_any_pct_offered__pn | bigint | | | svc_meals_any_known__ps | double | | | svc_meals_any_known__pn | bigint | | | svc_podiatry_pct_offered__ps | double | | | svc_podiatry_pct_offered__pn | bigint | | | svc_podiatry_known__ps | double | | | svc_podiatry_known__pn | bigint | | | svc_transportation_trips__ps | double | | | svc_transportation_trips__pn | bigint | | | svc_transportation_pct_unlimited__ps | double | | | svc_transportation_pct_unlimited__pn | bigint | | | svc_podiatry_visits__ps | double | | | svc_podiatry_visits__pn | bigint | | | deductible_pct_none__ps | double | | | deductible_pct_none__pn | bigint | | | deductible_pct_partb__ps | double | | | deductible_pct_partb__pn | bigint | | | deductible_pct_plan__ps | double | | | deductible_pct_plan__pn | bigint | | | deductible_plan_amount__ps | double | | | deductible_plan_amount__pn | bigint | | | deductible_design_known__ps | double | | | deductible_design_known__pn | bigint | | | deductible_pct_scope_oon__ps | double | | | deductible_pct_scope_oon__pn | bigint | | | premium__ps | double | | | premium__pn | bigint | | | premium_coverage__ps | double | | | premium_coverage__pn | bigint | | | moop__ps | double | | | moop__pn | bigint | | | moop_coverage__ps | double | | | moop_coverage__pn | bigint | | | medical_deductible__ps | double | | | medical_deductible__pn | bigint | | | medical_deductible_coverage__ps | double | | | medical_deductible_coverage__pn | bigint | | | partd_deductible__ps | double | | | partd_deductible__pn | bigint | | | partd_deductible_coverage__ps | double | | | partd_deductible_coverage__pn | bigint | | | primary_care__ps | double | | | primary_care__pn | bigint | | | primary_care_coverage__ps | double | | | primary_care_coverage__pn | bigint | | | specialist__ps | double | | | specialist__pn | bigint | | | specialist_coverage__ps | double | | | specialist_coverage__pn | bigint | | | telehealth__ps | double | | | telehealth__pn | bigint | | | telehealth_coverage__ps | double | | | telehealth_coverage__pn | bigint | | | mental_health_ind__ps | double | | | mental_health_ind__pn | bigint | | | mental_health_ind_coverage__ps | double | | | mental_health_ind_coverage__pn | bigint | | | er__ps | double | | | er__pn | bigint | | | er_coverage__ps | double | | | er_coverage__pn | bigint | | | urgent__ps | double | | | urgent__pn | bigint | | | urgent_coverage__ps | double | | | urgent_coverage__pn | bigint | | | ambulance_ground__ps | double | | | ambulance_ground__pn | bigint | | | ambulance_ground_coverage__ps | double | | | ambulance_ground_coverage__pn | bigint | | | hosp_5day__ps | double | | | hosp_5day__pn | bigint | | | hosp_5day_coverage__ps | double | | | hosp_5day_coverage__pn | bigint | | | inpatient__ps | double | | | inpatient__pn | bigint | | | inpatient_coverage__ps | double | | | inpatient_coverage__pn | bigint | | | snf__ps | double | | | snf__pn | bigint | | | snf_coverage__ps | double | | | snf_coverage__pn | bigint | | | outpatient_hosp__ps | double | | | outpatient_hosp__pn | bigint | | | outpatient_hosp_coverage__ps | double | | | outpatient_hosp_coverage__pn | bigint | | | asc__ps | double | | | asc__pn | bigint | | | asc_coverage__ps | double | | | asc_coverage__pn | bigint | | | imaging_complex__ps | double | | | imaging_complex__pn | bigint | | | imaging_complex_coverage__ps | double | | | imaging_complex_coverage__pn | bigint | | | radiology__ps | double | | | radiology__pn | bigint | | | radiology_coverage__ps | double | | | radiology_coverage__pn | bigint | | | lab__ps | double | | | lab__pn | bigint | | | lab_coverage__ps | double | | | lab_coverage__pn | bigint | | | physical_therapy__ps | double | | | physical_therapy__pn | bigint | | | physical_therapy_coverage__ps | double | | | physical_therapy_coverage__pn | bigint | | | dme__ps | double | | | dme__pn | bigint | | | dme_coverage__ps | double | | | dme_coverage__pn | bigint | | | partb_drugs__ps | double | | | partb_drugs__pn | bigint | | | partb_drugs_coverage__ps | double | | | partb_drugs_coverage__pn | bigint | | | partb_insulin__ps | double | | | partb_insulin__pn | bigint | | | partb_insulin_coverage__ps | double | | | partb_insulin_coverage__pn | bigint | | | dialysis__ps | double | | | dialysis__pn | bigint | | | dialysis_coverage__ps | double | | | dialysis_coverage__pn | bigint | | | partd_tier1_copay__ps | double | | | partd_tier1_copay__pn | bigint | | | partd_tier1_copay_coverage__ps | double | | | partd_tier1_copay_coverage__pn | bigint | | | partd_tier2_copay__ps | double | | | partd_tier2_copay__pn | bigint | | | partd_tier2_copay_coverage__ps | double | | | partd_tier2_copay_coverage__pn | bigint | | | partd_tier4_coins__ps | double | | | partd_tier4_coins__pn | bigint | | | partd_tier4_coins_coverage__ps | double | | | partd_tier4_coins_coverage__pn | bigint | | | partd_tier5_coins__ps | double | | | partd_tier5_coins__pn | bigint | | | partd_tier5_coins_coverage__ps | double | | | partd_tier5_coins_coverage__pn | bigint | | | primary_care_pct_copay__ps | double | | | primary_care_pct_copay__pn | bigint | | | primary_care_pct_coins__ps | double | | | primary_care_pct_coins__pn | bigint | | | primary_care_coins__ps | double | | | primary_care_coins__pn | bigint | | | specialist_pct_copay__ps | double | | | specialist_pct_copay__pn | bigint | | | specialist_pct_coins__ps | double | | | specialist_pct_coins__pn | bigint | | | specialist_coins__ps | double | | | specialist_coins__pn | bigint | | | telehealth_pct_copay__ps | double | | | telehealth_pct_copay__pn | bigint | | | telehealth_pct_coins__ps | double | | | telehealth_pct_coins__pn | bigint | | | telehealth_coins__ps | double | | | telehealth_coins__pn | bigint | | | mental_health_ind_pct_copay__ps | double | | | mental_health_ind_pct_copay__pn | bigint | | | mental_health_ind_pct_coins__ps | double | | | mental_health_ind_pct_coins__pn | bigint | | | mental_health_ind_coins__ps | double | | | mental_health_ind_coins__pn | bigint | | | physical_therapy_pct_copay__ps | double | | | physical_therapy_pct_copay__pn | bigint | | | physical_therapy_pct_coins__ps | double | | | physical_therapy_pct_coins__pn | bigint | | | physical_therapy_coins__ps | double | | | physical_therapy_coins__pn | bigint | | | er_pct_copay__ps | double | | | er_pct_copay__pn | bigint | | | er_pct_coins__ps | double | | | er_pct_coins__pn | bigint | | | er_coins__ps | double | | | er_coins__pn | bigint | | | urgent_pct_copay__ps | double | | | urgent_pct_copay__pn | bigint | | | urgent_pct_coins__ps | double | | | urgent_pct_coins__pn | bigint | | | urgent_coins__ps | double | | | urgent_coins__pn | bigint | | | ambulance_ground_pct_copay__ps | double | | | ambulance_ground_pct_copay__pn | bigint | | | ambulance_ground_pct_coins__ps | double | | | ambulance_ground_pct_coins__pn | bigint | | | ambulance_ground_coins__ps | double | | | ambulance_ground_coins__pn | bigint | | | outpatient_hosp_pct_copay__ps | double | | | outpatient_hosp_pct_copay__pn | bigint | | | outpatient_hosp_pct_coins__ps | double | | | outpatient_hosp_pct_coins__pn | bigint | | | outpatient_hosp_coins__ps | double | | | outpatient_hosp_coins__pn | bigint | | | imaging_complex_pct_copay__ps | double | | | imaging_complex_pct_copay__pn | bigint | | | imaging_complex_pct_coins__ps | double | | | imaging_complex_pct_coins__pn | bigint | | | imaging_complex_coins__ps | double | | | imaging_complex_coins__pn | bigint | | | radiology_pct_copay__ps | double | | | radiology_pct_copay__pn | bigint | | | radiology_pct_coins__ps | double | | | radiology_pct_coins__pn | bigint | | | radiology_coins__ps | double | | | radiology_coins__pn | bigint | | | lab_pct_copay__ps | double | | | lab_pct_copay__pn | bigint | | | lab_pct_coins__ps | double | | | lab_pct_coins__pn | bigint | | | lab_coins__ps | double | | | lab_coins__pn | bigint | | | inpatient_pct_copay__ps | double | | | inpatient_pct_copay__pn | bigint | | | inpatient_pct_coins__ps | double | | | inpatient_pct_coins__pn | bigint | | | inpatient_coins__ps | double | | | inpatient_coins__pn | bigint | | | snf_pct_copay__ps | double | | | snf_pct_copay__pn | bigint | | | snf_pct_coins__ps | double | | | snf_pct_coins__pn | bigint | | | snf_coins__ps | double | | | snf_coins__pn | bigint | | | otc_pct_one_pot__ps | double | | | otc_pct_one_pot__pn | bigint | | | card_pct_dvh_same_pot__ps | double | | | card_pct_dvh_same_pot__pn | bigint | | | dental_any_pct_offered__ps | double | | | dental_any_pct_offered__pn | bigint | | | dental_comprehensive_pct_offered__ps | double | | | dental_comprehensive_pct_offered__pn | bigint | | | svc_transportation_pct_optional_only__ps | double | | | svc_transportation_pct_optional_only__pn | bigint | | | svc_fitness_pct_optional_only__ps | double | | | svc_fitness_pct_optional_only__pn | bigint | | | svc_meals_post_discharge_pct_optional_only__ps | double | | | svc_meals_post_discharge_pct_optional_only__pn | bigint | | | svc_meals_any_pct_optional_only__ps | double | | | svc_meals_any_pct_optional_only__pn | bigint | | | svc_podiatry_pct_optional_only__ps | double | | | svc_podiatry_pct_optional_only__pn | bigint | | | allowance_total_pct_no_cap__ps | double | | | allowance_total_pct_no_cap__pn | bigint | | | otc_pct_d5_pot__ps | double | | | otc_pct_d5_pot__pn | bigint | | | card_pct_dvh_shared_pot__ps | double | | | card_pct_dvh_shared_pot__pn | bigint | | | allowance_shared_pot_overlap_pmpm__ps | double | | | allowance_shared_pot_overlap_pmpm__pn | bigint | | | card_targeted_pct_offered__ps | double | | | card_targeted_pct_offered__pn | bigint | | | card_targeted_dollars_pmpm_if__ps | double | | | card_targeted_dollars_pmpm_if__pn | bigint | | | svc_transportation_round_trips__ps | double | | | svc_transportation_round_trips__pn | bigint | | | moop_pct_not_in_network__ps | double | | | moop_pct_not_in_network__pn | bigint | | | card_targeted_pct_ssbci__ps | double | | | card_targeted_pct_ssbci__pn | bigint | | | card_targeted_pct_vbid_uf__ps | double | | | card_targeted_pct_vbid_uf__pn | bigint | | | card_targeted_pct_no_amount__ps | double | | | card_targeted_pct_no_amount__pn | bigint | | | card_targeted_pct_pooled_in_card__ps | double | | | card_targeted_pct_pooled_in_card__pn | bigint | | | card_pct_dvh_kind_only__ps | double | | | card_pct_dvh_kind_only__pn | bigint | | | allowance_pooled_pct_any__ps | double | | | allowance_pooled_pct_any__pn | bigint | | | eyewear_pct_preferred_tier__ps | double | | | eyewear_pct_preferred_tier__pn | bigint | | | eyewear_preferred_dollars_pmpm_if__ps | double | | | eyewear_preferred_dollars_pmpm_if__pn | bigint | | | dental_pct_d9_added__ps | double | | | dental_pct_d9_added__pn | bigint | | | dental_pct_max_combined__ps | double | | | dental_pct_max_combined__pn | bigint | | | card_pays_dental__ps | double | | | card_pays_dental__pn | bigint | | | card_pays_eyewear__ps | double | | | card_pays_eyewear__pn | bigint | | | card_pays_hearing__ps | double | | | card_pays_hearing__pn | bigint | | | card_pays_otc__ps | double | | | card_pays_otc__pn | bigint | | | card_pays_food_living__ps | double | | | card_pays_food_living__pn | bigint | | | card_pays_other__ps | double | | | card_pays_other__pn | bigint | | | card_pct_kind_flex__ps | double | | | card_pct_kind_flex__pn | bigint | | | card_pct_kind_dvh__ps | double | | | card_pct_kind_dvh__pn | bigint | | | card_pct_kind_otc__ps | double | | | card_pct_kind_otc__pn | bigint | | | card_pct_kind_food_living__ps | double | | | card_pct_kind_food_living__pn | bigint | | | card_pct_kind_wellness__ps | double | | | card_pct_kind_wellness__pn | bigint | | | dental_pct_cap_plus_card__ps | double | | | dental_pct_cap_plus_card__pn | bigint | | | hearing_pct_cap_plus_card__ps | double | | | hearing_pct_cap_plus_card__pn | bigint | | | otc_pct_cap_plus_card__ps | double | | | otc_pct_cap_plus_card__pn | bigint | | | eyewear_pct_cap_plus_card__ps | double | | | eyewear_pct_cap_plus_card__pn | bigint | | | primary_care_pct_zero__ps | double | | | primary_care_pct_zero__pn | bigint | | | specialist_pct_zero__ps | double | | | specialist_pct_zero__pn | bigint | | | telehealth_pct_zero__ps | double | | | telehealth_pct_zero__pn | bigint | | | mental_health_ind_pct_zero__ps | double | | | mental_health_ind_pct_zero__pn | bigint | | | physical_therapy_pct_zero__ps | double | | | physical_therapy_pct_zero__pn | bigint | | | er_pct_zero__ps | double | | | er_pct_zero__pn | bigint | | | urgent_pct_zero__ps | double | | | urgent_pct_zero__pn | bigint | | | ambulance_ground_pct_zero__ps | double | | | ambulance_ground_pct_zero__pn | bigint | | | outpatient_hosp_pct_zero__ps | double | | | outpatient_hosp_pct_zero__pn | bigint | | | imaging_complex_pct_zero__ps | double | | | imaging_complex_pct_zero__pn | bigint | | | radiology_pct_zero__ps | double | | | radiology_pct_zero__pn | bigint | | | lab_pct_zero__ps | double | | | lab_pct_zero__pn | bigint | | | inpatient_pct_zero__ps | double | | | inpatient_pct_zero__pn | bigint | | | snf_pct_zero__ps | double | | | snf_pct_zero__pn | bigint | | | dsnp_enrolls_full_duals__ps | double | | | dsnp_enrolls_full_duals__pn | bigint | | | primary_care_dual_effective__ps | double | | | primary_care_dual_effective__pn | bigint | | | specialist_dual_effective__ps | double | | | specialist_dual_effective__pn | bigint | | | telehealth_dual_effective__ps | double | | | telehealth_dual_effective__pn | bigint | | | mental_health_ind_dual_effective__ps | double | | | mental_health_ind_dual_effective__pn | bigint | | | physical_therapy_dual_effective__ps | double | | | physical_therapy_dual_effective__pn | bigint | | | er_dual_effective__ps | double | | | er_dual_effective__pn | bigint | | | urgent_dual_effective__ps | double | | | urgent_dual_effective__pn | bigint | | | ambulance_ground_dual_effective__ps | double | | | ambulance_ground_dual_effective__pn | bigint | | | outpatient_hosp_dual_effective__ps | double | | | outpatient_hosp_dual_effective__pn | bigint | | | imaging_complex_dual_effective__ps | double | | | imaging_complex_dual_effective__pn | bigint | | | radiology_dual_effective__ps | double | | | radiology_dual_effective__pn | bigint | | | lab_dual_effective__ps | double | | | lab_dual_effective__pn | bigint | | | inpatient_dual_effective__ps | double | | | inpatient_dual_effective__pn | bigint | | | snf_dual_effective__ps | double | | | snf_dual_effective__pn | bigint | | | moop_dual_effective__ps | double | | | moop_dual_effective__pn | bigint | | | medical_deductible_dual_effective__ps | double | | | medical_deductible_dual_effective__pn | bigint | | | telehealth_pct_offered__ps | double | | | telehealth_pct_offered__pn | bigint | | | primary_care_ll_known__ps | double | | | primary_care_ll_known__pn | bigint | | | primary_care_llc_from__ps | double | | | primary_care_llc_from__pn | bigint | | | primary_care_llc_to__ps | double | | | primary_care_llc_to__pn | bigint | | | primary_care_lli_from__ps | double | | | primary_care_lli_from__pn | bigint | | | primary_care_lli_to__ps | double | | | primary_care_lli_to__pn | bigint | | | primary_care_sw_coins__ps | double | | | primary_care_sw_coins__pn | bigint | | | primary_care_sw_copay__ps | double | | | primary_care_sw_copay__pn | bigint | | | specialist_ll_known__ps | double | | | specialist_ll_known__pn | bigint | | | specialist_llc_from__ps | double | | | specialist_llc_from__pn | bigint | | | specialist_llc_to__ps | double | | | specialist_llc_to__pn | bigint | | | specialist_lli_from__ps | double | | | specialist_lli_from__pn | bigint | | | specialist_lli_to__ps | double | | | specialist_lli_to__pn | bigint | | | specialist_sw_coins__ps | double | | | specialist_sw_coins__pn | bigint | | | specialist_sw_copay__ps | double | | | specialist_sw_copay__pn | bigint | | | telehealth_ll_known__ps | double | | | telehealth_ll_known__pn | bigint | | | telehealth_llc_from__ps | double | | | telehealth_llc_from__pn | bigint | | | telehealth_llc_to__ps | double | | | telehealth_llc_to__pn | bigint | | | telehealth_lli_from__ps | double | | | telehealth_lli_from__pn | bigint | | | telehealth_lli_to__ps | double | | | telehealth_lli_to__pn | bigint | | | telehealth_sw_coins__ps | double | | | telehealth_sw_coins__pn | bigint | | | telehealth_sw_copay__ps | double | | | telehealth_sw_copay__pn | bigint | | | mental_health_ind_ll_known__ps | double | | | mental_health_ind_ll_known__pn | bigint | | | mental_health_ind_llc_from__ps | double | | | mental_health_ind_llc_from__pn | bigint | | | mental_health_ind_llc_to__ps | double | | | mental_health_ind_llc_to__pn | bigint | | | mental_health_ind_lli_from__ps | double | | | mental_health_ind_lli_from__pn | bigint | | | mental_health_ind_lli_to__ps | double | | | mental_health_ind_lli_to__pn | bigint | | | mental_health_ind_sw_coins__ps | double | | | mental_health_ind_sw_coins__pn | bigint | | | mental_health_ind_sw_copay__ps | double | | | mental_health_ind_sw_copay__pn | bigint | | | physical_therapy_ll_known__ps | double | | | physical_therapy_ll_known__pn | bigint | | | physical_therapy_llc_from__ps | double | | | physical_therapy_llc_from__pn | bigint | | | physical_therapy_llc_to__ps | double | | | physical_therapy_llc_to__pn | bigint | | | physical_therapy_lli_from__ps | double | | | physical_therapy_lli_from__pn | bigint | | | physical_therapy_lli_to__ps | double | | | physical_therapy_lli_to__pn | bigint | | | physical_therapy_sw_coins__ps | double | | | physical_therapy_sw_coins__pn | bigint | | | physical_therapy_sw_copay__ps | double | | | physical_therapy_sw_copay__pn | bigint | | | er_ll_known__ps | double | | | er_ll_known__pn | bigint | | | er_llc_from__ps | double | | | er_llc_from__pn | bigint | | | er_llc_to__ps | double | | | er_llc_to__pn | bigint | | | er_lli_from__ps | double | | | er_lli_from__pn | bigint | | | er_lli_to__ps | double | | | er_lli_to__pn | bigint | | | er_sw_coins__ps | double | | | er_sw_coins__pn | bigint | | | er_sw_copay__ps | double | | | er_sw_copay__pn | bigint | | | urgent_ll_known__ps | double | | | urgent_ll_known__pn | bigint | | | urgent_llc_from__ps | double | | | urgent_llc_from__pn | bigint | | | urgent_llc_to__ps | double | | | urgent_llc_to__pn | bigint | | | urgent_lli_from__ps | double | | | urgent_lli_from__pn | bigint | | | urgent_lli_to__ps | double | | | urgent_lli_to__pn | bigint | | | urgent_sw_coins__ps | double | | | urgent_sw_coins__pn | bigint | | | urgent_sw_copay__ps | double | | | urgent_sw_copay__pn | bigint | | | ambulance_ground_ll_known__ps | double | | | ambulance_ground_ll_known__pn | bigint | | | ambulance_ground_llc_from__ps | double | | | ambulance_ground_llc_from__pn | bigint | | | ambulance_ground_llc_to__ps | double | | | ambulance_ground_llc_to__pn | bigint | | | ambulance_ground_lli_from__ps | double | | | ambulance_ground_lli_from__pn | bigint | | | ambulance_ground_lli_to__ps | double | | | ambulance_ground_lli_to__pn | bigint | | | ambulance_ground_sw_coins__ps | double | | | ambulance_ground_sw_coins__pn | bigint | | | ambulance_ground_sw_copay__ps | double | | | ambulance_ground_sw_copay__pn | bigint | | | outpatient_hosp_ll_known__ps | double | | | outpatient_hosp_ll_known__pn | bigint | | | outpatient_hosp_llc_from__ps | double | | | outpatient_hosp_llc_from__pn | bigint | | | outpatient_hosp_llc_to__ps | double | | | outpatient_hosp_llc_to__pn | bigint | | | outpatient_hosp_lli_from__ps | double | | | outpatient_hosp_lli_from__pn | bigint | | | outpatient_hosp_lli_to__ps | double | | | outpatient_hosp_lli_to__pn | bigint | | | outpatient_hosp_sw_coins__ps | double | | | outpatient_hosp_sw_coins__pn | bigint | | | outpatient_hosp_sw_copay__ps | double | | | outpatient_hosp_sw_copay__pn | bigint | | | imaging_complex_ll_known__ps | double | | | imaging_complex_ll_known__pn | bigint | | | imaging_complex_llc_from__ps | double | | | imaging_complex_llc_from__pn | bigint | | | imaging_complex_llc_to__ps | double | | | imaging_complex_llc_to__pn | bigint | | | imaging_complex_lli_from__ps | double | | | imaging_complex_lli_from__pn | bigint | | | imaging_complex_lli_to__ps | double | | | imaging_complex_lli_to__pn | bigint | | | imaging_complex_sw_coins__ps | double | | | imaging_complex_sw_coins__pn | bigint | | | imaging_complex_sw_copay__ps | double | | | imaging_complex_sw_copay__pn | bigint | | | radiology_ll_known__ps | double | | | radiology_ll_known__pn | bigint | | | radiology_llc_from__ps | double | | | radiology_llc_from__pn | bigint | | | radiology_llc_to__ps | double | | | radiology_llc_to__pn | bigint | | | radiology_lli_from__ps | double | | | radiology_lli_from__pn | bigint | | | radiology_lli_to__ps | double | | | radiology_lli_to__pn | bigint | | | radiology_sw_coins__ps | double | | | radiology_sw_coins__pn | bigint | | | radiology_sw_copay__ps | double | | | radiology_sw_copay__pn | bigint | | | lab_ll_known__ps | double | | | lab_ll_known__pn | bigint | | | lab_llc_from__ps | double | | | lab_llc_from__pn | bigint | | | lab_llc_to__ps | double | | | lab_llc_to__pn | bigint | | | lab_lli_from__ps | double | | | lab_lli_from__pn | bigint | | | lab_lli_to__ps | double | | | lab_lli_to__pn | bigint | | | lab_sw_coins__ps | double | | | lab_sw_coins__pn | bigint | | | lab_sw_copay__ps | double | | | lab_sw_copay__pn | bigint | | | inpatient_ll_known__ps | double | | | inpatient_ll_known__pn | bigint | | | inpatient_llc_from__ps | double | | | inpatient_llc_from__pn | bigint | | | inpatient_llc_to__ps | double | | | inpatient_llc_to__pn | bigint | | | inpatient_lli_from__ps | double | | | inpatient_lli_from__pn | bigint | | | inpatient_lli_to__ps | double | | | inpatient_lli_to__pn | bigint | | | inpatient_sw_coins__ps | double | | | inpatient_sw_coins__pn | bigint | | | inpatient_sw_copay__ps | double | | | inpatient_sw_copay__pn | bigint | | | snf_ll_known__ps | double | | | snf_ll_known__pn | bigint | | | snf_llc_from__ps | double | | | snf_llc_from__pn | bigint | | | snf_llc_to__ps | double | | | snf_llc_to__pn | bigint | | | snf_lli_from__ps | double | | | snf_lli_from__pn | bigint | | | snf_lli_to__ps | double | | | snf_lli_to__pn | bigint | | | snf_sw_coins__ps | double | | | snf_sw_coins__pn | bigint | | | snf_sw_copay__ps | double | | | snf_sw_copay__pn | bigint | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_reading_simple WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_reading_simple")` first. # Vlada benefit reading, design transitions (edition v20261018b): members by base-year design x next-year design per benefit, same members `medicare_semantic.vw_benefit_reading_transitions` · Medicare Advantage, Part D, Medicaid · status live · 17,670,144 rows Base-year members followed 1:1 into their next-year plan (book <-> next on county_ssa + base_key); not followed = to_design 'exit'. Designs: allowances cap | cap_plus_card | no_max (copay_per_aid for hearing) | card | none | unknown; cost shares zero | copay | coinsurance | unknown; premium zero | paid; MOOP in_network | not_in_network; deductible none | plan | partb | none_in_network; giveback none | token | giveback; services offered | optional_only | none. v0__s / v1__s over pair_w = the like-for-like value both sides (allowances dollars a year; cost shares the copay pair, q = the coinsurance pair). The successor mix (same / other segment, crosswalk consolidated / renumbered, left county, plan not filed) and to_contract_changed / to_parent_changed (next contract's parent in the base parent's name space) / to_type_changed ride beside. Pointer -> medicare_semantic.benefit_reading_transitions_v20261018b. Owner: the Benefits lane. **Grain.** One row per base_year x lvl x state x county_ssa x bucket ('ALL') x parent ('ALL') x benefit x from_design x to_design. | column | type | meaning | |---|---|---| | base_year | int | | | value_year | int | | | lvl | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | bucket | string | | | parent | string | | | benefit | string | | | from_design | string | | | to_design | string | | | members | double | | | plans_from | bigint | | | plans_to | bigint | | | pair_w | double | | | v0__s | double | | | v1__s | double | | | coins_w | double | | | q0__s | double | | | q1__s | double | | | succ_same_segment | double | | | succ_other_segment | double | | | succ_crosswalk_consolidated | double | | | succ_crosswalk_renumbered | double | | | succ_left_county | double | | | succ_plan_not_filed | double | | | to_contract_changed | double | | | to_parent_changed | double | | | to_parent_unknown | double | | | to_type_changed | double | | Tools that read it: get_benefit_change Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_reading_transitions WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_reading_transitions")` first. # Vlada benefit vector, every MA plan's filed benefit design, one row per plan-segment-year, 2015 to 2026 `medicare_semantic.vw_benefit_vector` · Medicare Advantage, Part D, Medicaid · status live · 72,414 rows The one defined benefit set for analysis (Ben 2026-09-28; Benefits lane CH): the PBP filing of record read by the platform's own rule into 63 metrics from primary care to the OTC card, each with a status column (a NULL is never $0), the D-SNP design headline with __dual_effective on the Medicare A/B cost shares, the five clocks (benefit_design_year, rebate_payment_year, stars_rating_year_paid, enrollment_weight_month), product_type as one column, market and is_employer_group, plan_enrollment, prev_contract_plans from the crosswalk and yoy_break_metrics. Reproduces the platform's national series to the cent (10 of 33,488 fields differ; two 2024 plans where the vector is right per segment). Registry ops/sb_llm/benefit_vector_registry.yaml; doc docs/skills/pbp-semantics/BENEFIT-VECTOR.md. **Grain.** One row per contract_id x plan_id x segment_id x report_year (2015-2026), 72,414 rows, 1,457 contracts, 243 columns (63 metrics each with __status; measured 2026-09-29, Athena ae557f34). The pointer follows the current version (v20260929g, promoted 13:53Z, a deterministic build with the pre-2019 fills; 2019-2026 identical to e); S (PDP) contracts excluded. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_year | int | | | plan_segment_key | string | | | benefit_design_year | int | | | rebate_payment_year | int | | | stars_rating_year_paid | int | | | stars_release_month_paid | string | | | stars_overall_paid | double | | | enrollment_weight_month | string | | | plan_name | string | | | org_name | string | | | org_marketing_name | string | | | parent_org | string | | | parent_org_labels | bigint | | | plan_type | string | | | filing_plan_type | string | | | snp_class | varchar(6) | | | snp_class_source | varchar(16) | | | snp_type | string | | | filing_snp_type | string | | | dsnp_integration_status | string | | | dsnp_zero_dollar_filed | boolean | | | product_type | string | | | product_type_source | varchar(21) | | | part_d | varchar(4) | | | market | varchar(7) | | | is_employer_group | boolean | | | is_ma_type | boolean | | | states | array | | | plan_enrollment | bigint | | | plan_enrollment_september | bigint | | | segments_in_plan | bigint | | | prev_contract_plans | array | | | crosswalk_status | string | | | lineage_id | string | | | yoy_break_metrics | array | | | primary_care | double | | | primary_care__status | varchar(18) | | | specialist | double | | | specialist__status | varchar(18) | | | telehealth | double | | | telehealth__status | varchar(18) | | | mental_health_ind | double | | | mental_health_ind__status | varchar(18) | | | mental_health_grp | double | | | mental_health_grp__status | varchar(18) | | | podiatry | double | | | podiatry__status | varchar(18) | | | preventive | double | | | preventive__status | varchar(18) | | | physical_exam | double | | | physical_exam__status | varchar(18) | | | inpatient | double | | | inpatient__status | varchar(18) | | | inpatient_stay | double | | | inpatient_stay__status | varchar(18) | | | inpatient_stay_share | double | | | inpatient_stay_share__status | varchar(17) | | | inpatient_psych | double | | | inpatient_psych__status | varchar(18) | | | inpatient_psych_stay | double | | | inpatient_psych_stay__status | varchar(18) | | | inpatient_psych_stay_share | double | | | inpatient_psych_stay_share__status | varchar(17) | | | snf | double | | | snf__status | varchar(18) | | | outpatient_hosp | double | | | outpatient_hosp__status | varchar(18) | | | observation | double | | | observation__status | varchar(18) | | | observation_stay | double | | | observation_stay__status | varchar(18) | | | observation_stay_share | double | | | observation_stay_share__status | varchar(17) | | | partial_hosp | double | | | partial_hosp__status | varchar(18) | | | er | double | | | er__status | varchar(18) | | | urgent | double | | | urgent__status | varchar(18) | | | ambulance_ground | double | | | ambulance_ground__status | varchar(18) | | | ambulance_air | double | | | ambulance_air__status | varchar(18) | | | lab | double | | | lab__status | varchar(18) | | | radiology | double | | | radiology__status | varchar(18) | | | imaging_complex | double | | | imaging_complex__status | varchar(18) | | | radiation | double | | | radiation__status | varchar(18) | | | physical_therapy | double | | | physical_therapy__status | varchar(18) | | | occupational_therapy | double | | | occupational_therapy__status | varchar(18) | | | cardiac_rehab | double | | | cardiac_rehab__status | varchar(18) | | | pulmonary_rehab | double | | | pulmonary_rehab__status | varchar(18) | | | dme | double | | | dme__status | varchar(18) | | | prosthetics | double | | | prosthetics__status | varchar(18) | | | medical_supplies | double | | | medical_supplies__status | varchar(17) | | | home_health | double | | | home_health__status | varchar(18) | | | dialysis | double | | | dialysis__status | varchar(18) | | | partb_drugs | double | | | partb_drugs__status | varchar(18) | | | dental_comprehensive | double | | | dental_comprehensive__status | varchar(18) | | | dental_comprehensive__pooled_card_year | double | | | dental_comprehensive__item_copay | double | | | vision_eyewear | double | | | vision_eyewear__status | varchar(18) | | | vision_eyewear__pooled_card_year | double | | | vision_eyewear__item_copay | double | | | hearing_aids | double | | | hearing_aids__status | varchar(18) | | | hearing_aids__pooled_card_year | double | | | hearing_aids__item_copay | double | | | otc | double | | | otc__status | varchar(18) | | | otc__pooled_card_year | double | | | otc__item_copay | double | | | dental_comprehensive__filed_amount | double | | | dental_comprehensive__filed_period_code | string | | | vision_eyewear__filed_amount | double | | | vision_eyewear__filed_period_code | string | | | hearing_aids__filed_amount | double | | | hearing_aids__filed_period_code | string | | | otc__filed_amount | double | | | otc__filed_period_code | string | | | asc | double | | | asc__status | varchar(17) | | | asc__rows | bigint | | | eye_exam_medicare | double | | | eye_exam_medicare__status | varchar(17) | | | eye_exam_medicare__rows | bigint | | | hearing_exam_medicare | double | | | hearing_exam_medicare__status | varchar(17) | | | hearing_exam_medicare__rows | bigint | | | partd_tier1_copay | double | | | partd_tier1_copay__status | varchar(17) | | | partd_tier1_copay__rows | bigint | | | eye_exam_routine | double | | | eye_exam_routine__status | varchar(17) | | | eye_exam_routine__rows | bigint | | | hearing_exam_routine | double | | | hearing_exam_routine__status | varchar(17) | | | hearing_exam_routine__rows | bigint | | | partd_tier2_copay | double | | | partd_tier2_copay__status | varchar(17) | | | partd_tier2_copay__rows | bigint | | | partd_tier5_coins | double | | | partd_tier5_coins__status | varchar(17) | | | partd_tier5_coins__rows | bigint | | | partb_insulin | double | | | partb_insulin__status | varchar(17) | | | partb_insulin__rows | bigint | | | dental_preventive | double | | | dental_preventive__status | varchar(17) | | | dental_preventive__rows | bigint | | | partd_tier4_coins | double | | | partd_tier4_coins__status | varchar(17) | | | partd_tier4_coins__rows | bigint | | | chemo | double | | | chemo__status | varchar(17) | | | chemo__rows | bigint | | | eyewear_medicare | double | | | eyewear_medicare__status | varchar(17) | | | eyewear_medicare__rows | bigint | | | diag_tests | double | | | diag_tests__status | varchar(17) | | | diag_tests__rows | bigint | | | meals | double | | | meals__status | varchar(17) | | | meals__rows | bigint | | | premium | double | | | premium__status | varchar(16) | | | medical_deductible | double | | | medical_deductible__status | varchar(16) | | | medical_deductible__basis | string | | | medical_deductible_filed | double | | | medical_deductible_filed__status | varchar(17) | | | moop | double | | | moop__status | varchar(16) | | | partd_deductible | double | | | partd_deductible__status | varchar(16) | | | partb_giveback | double | | | partb_giveback__status | varchar(17) | | | dsnp_zero_dollar_view | int | | | primary_care__dual_effective | double | | | specialist__dual_effective | double | | | telehealth__dual_effective | double | | | mental_health_ind__dual_effective | double | | | mental_health_grp__dual_effective | double | | | podiatry__dual_effective | double | | | preventive__dual_effective | double | | | physical_exam__dual_effective | double | | | inpatient__dual_effective | double | | | inpatient_stay__dual_effective | double | | | inpatient_psych__dual_effective | double | | | inpatient_psych_stay__dual_effective | double | | | snf__dual_effective | double | | | outpatient_hosp__dual_effective | double | | | observation__dual_effective | double | | | observation_stay__dual_effective | double | | | partial_hosp__dual_effective | double | | | er__dual_effective | double | | | urgent__dual_effective | double | | | ambulance_ground__dual_effective | double | | | ambulance_air__dual_effective | double | | | lab__dual_effective | double | | | radiology__dual_effective | double | | | imaging_complex__dual_effective | double | | | radiation__dual_effective | double | | | physical_therapy__dual_effective | double | | | occupational_therapy__dual_effective | double | | | cardiac_rehab__dual_effective | double | | | pulmonary_rehab__dual_effective | double | | | dme__dual_effective | double | | | prosthetics__dual_effective | double | | | medical_supplies__dual_effective | double | | | home_health__dual_effective | double | | | dialysis__dual_effective | double | | | partb_drugs__dual_effective | double | | | asc__dual_effective | double | | | eye_exam_medicare__dual_effective | double | | | hearing_exam_medicare__dual_effective | double | | | partb_insulin__dual_effective | double | | | chemo__dual_effective | double | | | eyewear_medicare__dual_effective | double | | | diag_tests__dual_effective | double | | | moop__dual_effective | double | | | medical_deductible__dual_effective | double | | | medical_deductible_filed__dual_effective | double | | | vector_version | varchar(10) | | | premium__basis | string | | | moop__basis | varchar(11) | | | inpatient__medicare_defined_basis | string | | | inpatient_psych__medicare_defined_basis | string | | | snf__medicare_defined_basis | string | | | otc__pooled_group_amount | double | | | otc__pooled_group_period_code | string | | | vision_eyewear__pooled_group_amount | double | | | vision_eyewear__pooled_group_period_code | string | | | hearing_aids__pooled_group_amount | double | | | hearing_aids__pooled_group_period_code | string | | | vision_eyewear__tier_class | string | | | vision_eyewear__standard_annual | double | | | vision_eyewear__preferred_annual | double | | | vision_eyewear__preferred_vendor | string | | | vision_eyewear__filed_tier | varchar(14) | | | vision_eyewear__headline | double | | | vision_eyewear__headline_basis | varchar(27) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_vector WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_vector")` first. # Vlada benefit vector v2 extension, 191 more benefit columns per plan-segment-year with a catalog status each `medicare_semantic.vw_benefit_vector_v2_ext` · Medicare Advantage, Part D, Medicaid · status live · 90,464 rows The catalog v2 extension of the benefit vector (Benefits lane CI, 2026-09-29): every MA benefit the catalog names beyond the 63 vector metrics (core medical cost shares, Part D and the insulin caps, supplemental benefits, SSBCI, VBID, D-SNP facts, money anchors), each column with a catalog status in ops/sb_llm/benefit_catalog_v2.yaml (trusted / filed_only / held / not_in_filing) that says whether the number is served with a tie to the filing, filed but not yet tied, held elsewhere, or not in the filing at all. Doc docs/skills/pbp-semantics/BENEFIT-CATALOG-V2.md. **Grain.** One row per contract_id x plan_id x segment_id x report_year, 90,464 rows, report_year 2015-2027, 1,582 contracts, 187 columns (measured 2026-09-29, Athena 7c1728a2); exactly one row per live vector key 2015-2026, plus S contracts and 2027 Landscape keys the vector excludes. The pointer follows the current version (v20260929co, a materialized Parquet table behind it, 195 columns with 8 SNF filed-coinsurance columns added; a contract-year probe answers in about 2 s). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_year | int | | | air_ambulance_copay | double | | | ambulance_ground_coins | double | | | pulmonary_rehab_coins | double | | | cardiac_rehab_coins | double | | | setpad_copay | double | | | setpad_coins | double | | | radiation_copay | double | | | imaging_complex_coins | double | | | radiology_coins | double | | | lab_coins | double | | | diag_tests_coins | double | | | dental_medicare_copay | double | | | dental_comp_coins | double | | | dental_medicare_coins | double | | | dental_comp_offered | int | | | dental_prev_offered | int | | | dental_comp_copay | double | | | dental_preventive_coins | double | | | dental_exams_limit | double | | | dental_cleanings_limit | double | | | supplies_copay | double | | | shoes_coins | double | | | shoes_copay | double | | | routine_podiatry_copay | double | | | physical_therapy_coins | double | | | occupational_therapy_coins | double | | | mental_health_ind_coins | double | | | specialist_coins | double | | | primary_care_coins | double | | | podiatry_coins | double | | | mental_health_grp_coins | double | | | routine_podiatry_coins | double | | | routine_podiatry_limit | double | | | hearing_aid_limit | double | | | hearing_exam_limit | double | | | hearing_exam_medicare_coins | double | | | otc_hearing_aid_copay | double | | | hearing_fitting_copay | double | | | hearing_fitting_limit | double | | | hearing_aids_offered | int | | | hearing_exam_offered | int | | | inpatient_coins | double | | | inpatient_unlimited_days | int | | | psych_days | double | | | inpatient_psych_coins | double | | | meals_offered | int | | | optional_premium | double | | | optional_max | double | | | otc_offered | int | | | substance_use_copay | double | | | outpatient_hosp_coins | double | | | asc_coins | double | | | observation_coins | double | | | substance_use_coins | double | | | partb_insulin_coins | double | | | chemo_copay | double | | | partb_insulin_month_max | double | | | partb_drugs_copay | double | | | partd_insulin_copay | double | | | partd_tier3_coins | double | | | partd_insulin_coins | double | | | partd_tier3_copay | double | | | partd_tier4_copay | double | | | partd_tier5_copay | double | | | partd_tier6_copay | double | | | partd_tier2_offered | int | | | partd_tier5_offered | int | | | preventive_coins | double | | | transport_copay | double | | | transport_offered | int | | | transport_trips_limit | double | | | eye_exam_limit | double | | | eye_exam_medicare_coins | double | | | eyewear_medicare_coins | double | | | eyewear_copay | double | | | contacts_copay | double | | | eye_exam_allowance | double | | | eyewear_limit | double | | | contacts_limit | double | | | eyewear_offered | int | | | partd_tier1_retail_preferred_1m_copay | double | | | partd_tier1_retail_preferred_1m_coins | double | | | partd_tier1_retail_standard_3m_copay | double | | | partd_tier1_retail_standard_3m_coins | double | | | partd_tier1_retail_preferred_3m_copay | double | | | partd_tier1_retail_preferred_3m_coins | double | | | partd_tier1_mail_standard_3m_copay | double | | | partd_tier1_mail_standard_3m_coins | double | | | partd_tier1_mail_preferred_3m_copay | double | | | partd_tier1_mail_preferred_3m_coins | double | | | partd_tier2_retail_preferred_1m_copay | double | | | partd_tier2_retail_preferred_1m_coins | double | | | partd_tier2_retail_standard_3m_copay | double | | | partd_tier2_retail_standard_3m_coins | double | | | partd_tier2_retail_preferred_3m_copay | double | | | partd_tier2_retail_preferred_3m_coins | double | | | partd_tier2_mail_standard_3m_copay | double | | | partd_tier2_mail_standard_3m_coins | double | | | partd_tier2_mail_preferred_3m_copay | double | | | partd_tier2_mail_preferred_3m_coins | double | | | partd_tier3_retail_preferred_1m_copay | double | | | partd_tier3_retail_preferred_1m_coins | double | | | partd_tier3_retail_standard_3m_copay | double | | | partd_tier3_retail_standard_3m_coins | double | | | partd_tier3_retail_preferred_3m_copay | double | | | partd_tier3_retail_preferred_3m_coins | double | | | partd_tier3_mail_standard_3m_copay | double | | | partd_tier3_mail_standard_3m_coins | double | | | partd_tier3_mail_preferred_3m_copay | double | | | partd_tier3_mail_preferred_3m_coins | double | | | partd_tier4_retail_preferred_1m_copay | double | | | partd_tier4_retail_preferred_1m_coins | double | | | partd_tier4_retail_standard_3m_copay | double | | | partd_tier4_retail_standard_3m_coins | double | | | partd_tier4_retail_preferred_3m_copay | double | | | partd_tier4_retail_preferred_3m_coins | double | | | partd_tier4_mail_standard_3m_copay | double | | | partd_tier4_mail_standard_3m_coins | double | | | partd_tier4_mail_preferred_3m_copay | double | | | partd_tier4_mail_preferred_3m_coins | double | | | partd_tier5_retail_preferred_1m_copay | double | | | partd_tier5_retail_preferred_1m_coins | double | | | partd_tier5_retail_standard_3m_copay | double | | | partd_tier5_retail_standard_3m_coins | double | | | partd_tier5_retail_preferred_3m_copay | double | | | partd_tier5_retail_preferred_3m_coins | double | | | partd_tier5_mail_standard_3m_copay | double | | | partd_tier5_mail_standard_3m_coins | double | | | partd_tier5_mail_preferred_3m_coins | double | | | partd_tier6_retail_preferred_1m_copay | double | | | partd_tier6_retail_standard_3m_copay | double | | | partd_tier6_retail_standard_3m_coins | double | | | partd_tier6_retail_preferred_3m_copay | double | | | partd_tier6_mail_standard_3m_copay | double | | | partd_tier6_mail_standard_3m_coins | double | | | partd_tier6_mail_preferred_3m_copay | double | | | worldwide_er_copay | double | | | worldwide_urgent_copay | double | | | worldwide_transport_copay | double | | | worldwide_cap | double | | | worldwide_cap_period | string | | | fitness_offered | int | | | fitness_copay | double | | | fitness_copay_basis | varchar(33) | | | fitness_max_annualized | double | | | fitness_type_physical | boolean | | | fitness_type_memory | boolean | | | fitness_type_activity_tracker | boolean | | | premium_part_c | double | | | premium_part_d_basic | double | | | premium_part_d_supplemental | double | | | premium_full_lis | double | | | moop_combined | double | | | moop_oon | double | | | medical_deductible_in_network | double | | | medical_deductible_oon | double | | | dsnp_state_covers_cost_share | string | | | ssbci_offered | boolean | | | ssbci_food_own_dollar_annual | double | | | ssbci_general_supports_own_dollar_annual | double | | | ssbci_package_pot | double | | | ssbci_food_offered | boolean | | | ssbci_general_supports_offered | boolean | | | ssbci_transportation_offered | boolean | | | ssbci_pest_control_offered | boolean | | | ssbci_indoor_air_offered | boolean | | | ssbci_social_needs_offered | boolean | | | ssbci_meals_offered | boolean | | | ssbci_home_modifications_offered | boolean | | | flex_card_pot | double | | | flex_card_period | varchar(18) | | | flex_card_includes_otc | boolean | | | flex_card_includes_food_or_utilities | boolean | | | flex_card_includes_dental | boolean | | | b19a_reduced_cost_sharing_package | boolean | | | b19b_additional_benefits_package | boolean | | | acupuncture_copay | double | | | pers_offered | boolean | | | in_home_support_offered | boolean | | | bathroom_safety_offered | boolean | | | nurse_line_offered | boolean | | | chiropractic_routine_copay | double | | | vbid_participant | int | | | snf_coins_interval1_begin_day | double | | | snf_coins_interval1_end_day | double | | | snf_coins_interval1_pct | double | | | snf_coins_interval2_begin_day | double | | | snf_coins_interval2_end_day | double | | | snf_coins_interval2_pct | double | | | snf_coins_interval_count | string | | | snf_coins_per_stay_pct | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_benefit_vector_v2_ext WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_benefit_vector_v2_ext")` first. # Each D-SNP plan segment x state with its integration status and the state's Medicaid wrap (dental, eyeglasses, hearing, NEMT, overriding SMAC rules) `medicare_semantic.vw_dsnp_medicaid_wrap_v5` · Medicare Advantage, Part D, Medicaid · status live · 4,795 rows Joins dsnp_integration_status_v1 to the state duals KB v5: per plan_year, state and benefit the KB row in effect that year for a full-benefit dual (latest effective_from, ties exact > rule > judged); dental, eyeglasses, hearing aids, NEMT, eye exam, personal care, adult day, home services, home modifications and MCO value-added fitness, plus the SMAC rules that override plan filings in the plan year. **Grain.** Same as medicare_silver.dsnp_integration_status_v1. | column | type | meaning | |---|---|---| | plan_year | int | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | state_code | string | | | plan_name | string | | | parent_org_name | string | | | plan_type | string | | | integration_status | string | | | cms_list_integration_status | string | | | applicable_integrated_plan | boolean | | | zero_dollar_cost_sharing | boolean | | | cms_list_dual_categories_raw | string | | | cms_list_enrolls_full_benefit_duals | boolean | | | cms_list_enrolls_partial_duals | boolean | | | snp_report_partial_dual_only | boolean | | | snp_report_plan_segment_enrollment | bigint | | | plan_segment_state_rank | int | | | medicaid_wrap_delivery | varchar(48) | | | medicaid_adult_dental_level | string | | | medicaid_adult_dental_as_of | string | | | medicaid_adult_dental_source_id | string | | | medicaid_eyeglasses | string | | | medicaid_eyeglasses_as_of | string | | | medicaid_hearing_aids | string | | | medicaid_hearing_aids_as_of | string | | | medicaid_nemt | string | | | state_rules_overriding_plan_filing | string | | | state_rules_overriding_plan_filing_n | bigint | | | integration_source_url | string | | | integration_sha256_content_hash | string | | | medicaid_eye_exam | string | | | medicaid_personal_care | string | | | medicaid_adult_day | string | | | medicaid_home_services | string | | | medicaid_home_modifications | string | | | medicaid_mco_value_added_fitness | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_dsnp_medicaid_wrap_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_dsnp_medicaid_wrap_v5")` first. # MA/Part D enrollment, CPSC county grain, parent names as CMS wrote them `medicare_semantic.vw_enrollment_monthly_county_v2` · Medicare Advantage, Part D, Medicaid · status live · 629,025,628 rows CMS CPSC (Contract/Plan/State/County) monthly MA and Part D enrollment at county grain: every row of medicare_silver.enrollment_monthly_county with parent_org_raw restored where CMS's mixed encodings garbled it, and the stored value kept in parent_org_raw_legacy. **Grain.** One row per (contract_id, plan_id, state_code, county_fips, month) enrollment count. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | state_code | string | | | county_fips | string | | | report_month | date | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | suppression_reason_code | string | | | parent_org_raw | string | | | enrollment_grain_era | 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 | | | county_ssa | string | | | county_name_raw | string | | | parent_org_raw_legacy | string | | | text_corrected | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_enrollment_monthly_county_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_enrollment_monthly_county_v2")` first. # MA/Part D enrollment, CPSC county grain, every published row with the revision-3 flag `medicare_semantic.vw_enrollment_monthly_county_v3` · Medicare Advantage, Part D, Medicaid · status live · 630,792,948 rows CMS CPSC monthly MA and Part D enrollment at county grain over medicare_silver.enrollment_monthly_county_v4, with CMS's parent names restored as in vw_enrollment_monthly_county_v2. in_revision3_table marks the rows the revision-3 table holds (plan_id <> '', state_code present, a county code present); county_code_system says whether a row carries a FIPS code ('fips'), only an SSA code ('ssa') or none ('none'). **Grain.** One row per (contract_id, plan_id, state_code, county_fips, county_ssa, report_month): 630,792,948 rows in 243 months, 2006-07..2026-09 (2026-09: 3,398,007 rows, 3,387,662 with in_revision3_table; Athena fc666995). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | state_code | string | | | county_fips | string | | | report_month | date | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | suppression_reason_code | string | | | parent_org_raw | string | | | enrollment_grain_era | 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 | | | county_ssa | string | | | county_name_raw | string | | | county_code_system | string | | | in_revision3_table | boolean | | | parent_org_raw_legacy | string | | | text_corrected | boolean | | Tools that read it: get_county_view, get_market_share Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_enrollment_monthly_county_v3 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_enrollment_monthly_county_v3")` first. # MA monthly enrollment by contract and plan, names as CMS wrote them `medicare_semantic.vw_enrollment_monthly_plan_v2` · Medicare Advantage, Part D, Medicaid · status live · 1,416,620 rows CMS Monthly Enrollment by Contract/Plan: every row of medicare_silver.enrollment_monthly_plan with organization, marketing, plan and parent names restored where CMS's mixed encodings garbled them; the stored values are kept in _legacy. **Grain.** One row per (contract_id, plan_id, month) plan-level enrollment count. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | report_month | date | | | organization_type | string | | | plan_type | string | | | offers_part_d | boolean | | | organization_name_raw | string | | | organization_marketing_name_raw | string | | | plan_name_raw | string | | | parent_org_raw | string | | | contract_effective_date | date | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | enrollment_suppression_reason | 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 | | | organization_name_raw_legacy | string | | | organization_marketing_name_raw_legacy | string | | | plan_name_raw_legacy | string | | | parent_org_raw_legacy | string | | | text_corrected | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_enrollment_monthly_plan_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_enrollment_monthly_plan_v2")` first. # HCC risk-model coefficients, current posting per payment year, package-labelled `medicare_semantic.vw_hcc_coefficients_current_v2` · Medicare Advantage, Part D, Medicaid · status live · 52,463 rows Every CMS-HCC / ESRD / RxHCC coefficient package of the current CMS model-software posting per payment year (midyear final or final when held, else the initial: 2027 is the initial posting until CMS posts its midyear final), each row joined to the 92-row package seed that cites the year's Rate Announcement page: package_calibration, package_applies_to (all / non-PACE / PACE / non-PACE;PACE / MA-PD;PACE / PDP), payment_use (CMS's blend weight for the year), announcement_url, announcement_pages, value_check. Same columns as medicare_silver.dim_hcc_coefficients_v2 otherwise, including xw_model_version and hcc_number for the join from medicare_semantic.vw_icd10_hcc_crosswalk_current_v1. **Grain.** One row per (rate_year, software_package, segment, variable) for the one CMS posting chosen per payment year: 52,463 rows, 12 payment years 2016-2027, 66 packages, unique on that key (Athena 52d9f563-a9cf-4679-b35c-cac14d8bcbf1, 882c4101-b8f0-4c5b-9999-4db6d06ad7e2). | column | type | meaning | |---|---|---| | rate_year | int | | | software_edition | string | | | model_family | string | | | model_version | string | | | xw_model_version | string | | | software_package | string | | | package_variant | string | | | package_description | string | | | package_calibration | varchar(81) | | | package_applies_to | varchar(13) | | | payment_use | varchar(101) | | | announcement_url | varchar(99) | | | announcement_pages | varchar(96) | | | value_check | varchar(185) | | | segment | string | | | segment_code | string | | | variable | string | | | hcc_number | int | | | coefficient_value | double | | | label | string | | | sas_variable | string | | | source_member | string | | | coefficient_file_sha256 | string | | | source_zip_sha256 | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hcc_coefficients_current_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hcc_coefficients_current_v2")` first. # MA HEDIS contract file (general sheet), documented names `medicare_semantic.vw_hedis_general_v2` · Medicare Advantage, Part D, Medicaid · status live · 3,549 rows The MA HEDIS PUF general sheet per contract and report year, under the names CMS documents for each code: organization_type (General-0010), plan_type (-0011), offers_snp (-0014, Yes/No/N/A), offers_part_d (-0016 in the workbook, documented as -0015), enrollment (-0050, December of report_year - 1, MARx), region / region_name (-0060 / -0070), patient_population (-0080), submitted_hedis_to_ncqa (-0085), included_in_hos (-0087). **Grain.** One row per (report_year, contract_id); 0 duplicate keys in every year (451 / 530 / 592 / 648 / 667 / 661 rows in 2019 / 2021-2025 = publisher rows). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_name_raw | string | | | organization_type | string | | | plan_type | string | | | offers_snp | string | | | offers_part_d | string | | | enrollment | int | | | region | string | | | region_name | string | | | patient_population | string | | | submitted_hedis_to_ncqa | string | | | included_in_hos | string | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hedis_general_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hedis_general_v2")` first. # MA HEDIS national benchmark rates, documented names `medicare_semantic.vw_hedis_national_rates_v2` · Medicare Advantage, Part D, Medicaid · status live · 471 rows CMS's national enrollment-weighted HEDIS rate per measure indicator and report year, from the MA HEDIS PUF national_rates sheet, under the names CMS documents (HEDIS2025Documentation.pdf, REPORTING LEVEL - National, p.3): report_year (NR-0010), measure_code (-0020), indicator_name (-0030 "Field"), indicator_key (-0040), weighted_rate (-0050, the national rate), contracts_count (-0060, contracts with a numeric rate) and reporting_contract_enrollment (-0070, the enrollees of those contracts: TotE, the weight of the average). The national sheet publishes no eligible population. **Grain.** One row per (report_year, measure_code, indicator_key); 0 duplicate keys; 68 / 64 / 85 / 82 / 88 / 84 rows in 2019 / 2021-2025 = the rows of medicare_silver.hedis_national_rates (Athena 206a952a-ffad-4240-a192-075b9b1d34d7). | column | type | meaning | |---|---|---| | report_year | int | | | measure_code | string | | | indicator_name | string | | | indicator_key | string | | | weighted_rate | double | | | contracts_count | int | | | reporting_contract_enrollment | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hedis_national_rates_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hedis_national_rates_v2")` first. # MA HEDIS contract service area, documented names `medicare_semantic.vw_hedis_service_area_v2` · Medicare Advantage, Part D, Medicaid · status live · 2,453,366 rows The counties in each MA contract's service area per HEDIS report year, from the HEDIS PUF service_area sheet, under CMS's documented names: ssa_state_county_code (SA-0030), fips_state_county_code (SA-0040, ANSI/FIPS INCITS 31-2009), fips_state_code (first two digits of SA-0040), state_code (SA-0050), county_name_raw (SA-0060), eghp_only_county (SA-0070: 1 = the county serves only Employer Group Health Plan members). **Grain.** One row per (report_year, contract_id, ssa_state_county_code, fips_state_county_code, eghp_only_county): 0 duplicate groups in every year (Athena 2e4d240e, ccba7dde). 2,453,366 rows 2019, 2021-2025. | column | type | meaning | |---|---|---| | contract_id | string | | | ssa_state_county_code | string | | | fips_state_county_code | string | | | fips_state_code | string | | | state_code | string | | | county_name_raw | string | | | eghp_only_county | int | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hedis_service_area_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hedis_service_area_v2")` first. # Medicare HOS public use files, respondent level (documented names), cohorts 18-27 `medicare_semantic.vw_hos_puf_respondent_v2` · Medicare Advantage, Part D, Medicaid · status live · 2,712,105 rows Anonymised Medicare Advantage HOS respondents per cohort file with the publisher's item codes: VR-12 health status, ADLs, chronic conditions, pain, depression, incontinence, activity, falls, sleep, survey mode and disposition, demographics (age_group, race, sex, education) and the CMS plan region. c27b: 341,557 respondents. **Grain.** One row per (puf_file, case_id): one anonymised respondent in one cohort file. | column | type | meaning | |---|---|---| | puf_file | string | | | cohort_number | int | | | puf_type | string | | | survey_years | string | | | source_url | string | | | sha256_content_hash | string | | | parser_artifact_hash | string | | | asserted_at | timestamp | | | is_current | boolean | | | case_id | string | | | age_group | string | | | race | string | | | sex | string | | | maritl | string | | | educ | string | | | bmicat | string | | | b_vrgenhth | string | | | b_vrmact | string | | | b_vrstair | string | | | b_vrpaccl | string | | | b_vrpwork | string | | | b_vrmaccl | string | | | b_vrmwork | string | | | b_vrpain | string | | | b_vrcalm | string | | | b_vrenergy | string | | | b_vrdown | string | | | b_vrsact | string | | | b_vrphcmp | string | | | b_vrmhcmp | string | | | b_adlbth | string | | | b_adldrs | string | | | b_adleat | string | | | b_adlchr | string | | | b_adlwlk | string | | | b_adltlt | string | | | b_difmeals | string | | | b_difmoney | string | | | b_difmeds | string | | | b_hdphy | string | | | b_hdmen | string | | | b_hdact | string | | | b_difsee | string | | | b_difhear | string | | | b_difremem | string | | | b_diferrnd | string | | | b_difmprob | string | | | b_cchbp | string | | | b_cc_cad | string | | | b_cc_chf | string | | | b_ccmi | string | | | b_cchrtoth | string | | | b_ccstroke | string | | | b_cc_copd | string | | | b_ccgi | string | | | b_ccosteo | string | | | b_ccdiabet | string | | | b_ccdep | string | | | b_ccanyca | string | | | b_cacolon | string | | | b_calung | string | | | b_cabrst | string | | | b_capros | string | | | b_caother | string | | | b_paindact | string | | | b_painsact | string | | | b_painrate | string | | | b_depnopls | string | | | b_depdown | string | | | b_cmphth | string | | | b_muilkg | string | | | b_muidact | string | | | b_muitlk | string | | | b_muitrt | string | | | b_paotlk | string | | | b_paoadv | string | | | b_frmtlk | string | | | b_frmfall | string | | | b_frmbal | string | | | b_frmprev | string | | | b_sleephrs | string | | | b_sleepqua | string | | | b_speaklng | string | | | b_cmpwho | string | | | b_srvdisp | string | | | b_srvmode | string | | | b_pctans | string | | | cohort | string | | | b_plregcde | string | | | b_srvlang | string | | | b_pctcmp | string | | | mrstat | string | | | f_vrgenhth | string | | | f_vrmact | string | | | f_vrstair | string | | | f_vrpaccl | string | | | f_vrpwork | string | | | f_vrmaccl | string | | | f_vrmwork | string | | | f_vrpain | string | | | f_vrcalm | string | | | f_vrenergy | string | | | f_vrdown | string | | | f_vrsact | string | | | f_vrphcmp | string | | | f_vrmhcmp | string | | | f_adlbth | string | | | f_adldrs | string | | | f_adleat | string | | | f_adlchr | string | | | f_adlwlk | string | | | f_adltlt | string | | | f_difmeals | string | | | f_difmoney | string | | | f_difmeds | string | | | f_hdphy | string | | | f_hdmen | string | | | f_hdact | string | | | f_difsee | string | | | f_difhear | string | | | f_difremem | string | | | f_diferrnd | string | | | f_difmprob | string | | | f_cchbp | string | | | f_cc_cad | string | | | f_cc_chf | string | | | f_ccmi | string | | | f_cchrtoth | string | | | f_ccstroke | string | | | f_cc_copd | string | | | f_ccgi | string | | | f_ccosteo | string | | | f_ccdiabet | string | | | f_ccdep | string | | | f_ccanyca | string | | | f_cacolon | string | | | f_calung | string | | | f_cabrst | string | | | f_capros | string | | | f_caother | string | | | f_paindact | string | | | f_painsact | string | | | f_painrate | string | | | f_depnopls | string | | | f_depdown | string | | | f_cmphth | string | | | f_muilkg | string | | | f_muidact | string | | | f_muitlk | string | | | f_muitrt | string | | | f_paotlk | string | | | f_paoadv | string | | | f_frmtlk | string | | | f_frmfall | string | | | f_frmbal | string | | | f_frmprev | string | | | f_sleephrs | string | | | f_sleepqua | string | | | f_speaklng | string | | | f_cmpwho | string | | | f_srvdisp | string | | | f_srvmode | string | | | f_pctans | string | | | f_srvlang | string | | | p_plregcde | string | | | sampled | string | | | sflag | string | | | b_ccarthip | string | | | b_ccarthnd | string | | | b_ccsciati | string | | | b_smoke | string | | | f_pctcmp | string | | | b_ototest | string | | | f_ccarthip | string | | | f_ccarthnd | string | | | f_ccsciati | string | | | f_smoke | string | | | f_ototest | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_hos_puf_respondent_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_hos_puf_respondent_v2")` first. # ICD-10 to HCC / RxHCC crosswalk, current edition per payment year `medicare_semantic.vw_icd10_hcc_crosswalk_current_v1` · Medicare Advantage, Part D, Medicaid · status live · 457,917 rows The CMS ICD-10-CM to HCC / RxHCC mapping with one edition per payment year: the midyear final or final when CMS has posted it, else the initial. 2027 serves the initial edition (the 2026 final code set) until CMS posts the 2027 midyear final, then switches with no code change. Same columns as medicare_silver.dim_icd10_hcc_crosswalk_v3, including model_version + hcc_number for the join to medicare_semantic.vw_hcc_coefficients_current_v2. **Grain.** One row per (rate_year, model_version, icd_code, hcc_category) for the one CMS edition chosen per payment year: 457,917 rows, 12 payment years 2016-2027, 12 editions (Athena 5ca177af). 2025 = midyear final (54,440), 2026 = final (44,860), 2027 = initial (44,860). | column | type | meaning | |---|---|---| | rate_year | int | | | mapping_edition | string | | | model_family | string | | | model_version | string | | | coefficient_model_version | string | | | icd_code | string | | | hcc_category | string | | | hcc_number | int | | | icd_description | string | | | payment_year_flag | string | | | source_column | string | | | payment_year_flag_column | string | | | source_member | string | | | source_row_number | int | | | source_zip_sha256 | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_icd10_hcc_crosswalk_current_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_icd10_hcc_crosswalk_current_v1")` first. # MA county ratebook, exact cents, one state key, territory rows kept `medicare_semantic.vw_ma_county_ratebook_v3` · Medicare Advantage, Part D, Medicaid · status live · 42,218 rows The county benchmark CMS publishes with each Rate Announcement, per SSA county and rate year: the rate at the 5%, 3.5% and 0% quality-bonus tiers and the ESRD rate, in exact cents (decimal(10,2)), with state_code taken from the SSA prefix so one key finds every year. A view over medicare_silver.ma_county_ratebook_v2 (parser 0.2.0); get_ma_county_ratebook reads it from 2026-10-05 and filters on state_code. **Grain.** One row per (rate_year, ssa_county_code). 42,218 rows over rate years 2015-2027: the served table's 42,200 rows plus 18 territory-wide rows (Athena 3800cd23). | column | type | meaning | |---|---|---| | rate_year | int | | | ssa_county_code | string | | | state_code | varchar(2) | | | state_name | varchar(24) | | | state_name_legacy | string | | | county_name | string | | | territory_wide_row | boolean | | | rate_5pct_bonus | decimal(10,2) | | | rate_3_5pct_bonus | decimal(10,2) | | | rate_0pct_bonus | decimal(10,2) | | | rate_esrd | decimal(10,2) | | | effective_period_start | date | | | effective_period_end | date | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parse_revision | int | | | parser_artifact_hash | string | | | cms_vintage_sequence | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ma_county_ratebook_v3 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ma_county_ratebook_v3")` first. # MA contract enrollment by month with the canonical parent as of that month (the parent series spine) `medicare_semantic.vw_ma_parent_resolved_v1` · Medicare Advantage, Part D, Medicaid · status live · 203,755 rows medicare_silver.monthly_contract_enrollment_summary joined to dim_parent_alias_v1 on the raw string and the month: parent_of_record (CMS's name that month), canonical_parent_id, canonical_parent_name, applied_event_id (the acquisition that opened the current segment, if any), alias_event_type, method_tier, confidence, plus the contract's organization, plan_type and the enrollment counts (enrollment_count, ma_only_count, part_d_count). Proved 2026-09-30: Aetna Inc. resolves to cvs_health_corporation for all 5,156 of its contract-months 2006-08 to 2018-12 and the CVS Health series is continuous across the 2019-01 string flip (10.21M -> 8.27M, the WellCare PDP divestiture, not a gap); The Cigna Group is its own canonical through 2025-02 and its 17 contracts are HCSC's from 2025-03 (HCSC 485,178 -> 4,211,247 members). Read by the certified measure pct_enrollment_4plus_stars_by_canonical_parent. **Grain.** One row per contract_id x report_month, 203,755 rows = 203,755 keys, 2006-08 to 2026-09 (measured 2026-09-30, Athena d09a09de); every row of medicare_silver.monthly_contract_enrollment_summary with a parent string, none dropped, none unresolved. | column | type | meaning | |---|---|---| | contract_id | string | | | report_month | date | | | parent_of_record | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | applied_event_id | string | | | alias_event_type | string | | | method_tier | string | | | confidence | string | | | organization_type | string | | | plan_type | string | | | organization_name_raw | string | | | organization_marketing_name_raw | string | | | enrollment_count | int | | | ma_only_count | int | | | part_d_count | int | | | offers_part_d | boolean | | | source_url | string | | | sha256_content_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ma_parent_resolved_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ma_parent_resolved_v1")` first. # MA State/County Penetration, county codes at their documented width `medicare_semantic.vw_ma_state_county_penetration_v2` · Medicare Advantage, Part D, Medicaid · status live · 707,500 rows Medicare eligibles, MA enrollees and MA penetration per county and month from CMS's MA State/County Penetration files, with FIPSST / SSAST padded to 2 digits, FIPSCNTY / SSACNTY to 3, and FIPS / SSA rebuilt as the concatenated state + county codes the publisher's readme defines (Read_Me_SC_Penetration_MA_YYYY.txt). CMS printed the codes without leading zeros in 2025-01, 2025-02, 2025-03 and 2026-08; every other month is unchanged. codes_padded_by_view marks the rows the view changed. **Grain.** One row per (fipsst, fipscnty, report_month); the rows of medicare_silver.ma_state_county_penetration (707,500 over 220 months, view minus table = 0 and 0 duplicate (fips, report_month); Athena 8614613f-53f9-495e-966d-95afcc5eb49c). | column | type | meaning | |---|---|---| | fipsst | string | | | fipscnty | string | | | report_month | date | | | state_name | string | | | county_name | string | | | fips | string | | | ssast | string | | | ssacnty | string | | | ssa | string | | | eligibles | int | | | enrolled | int | | | enrolled_lower_bound | int | | | enrolled_upper_bound | int | | | penetration | double | | | suppression_reason_code | string | | | codes_padded_by_view | boolean | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ma_state_county_penetration_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ma_state_county_penetration_v2")` first. # MA State/County Penetration with blank cells, Pending rows and combined territory figures marked `medicare_semantic.vw_ma_state_county_penetration_v3` · Medicare Advantage, Part D, Medicaid · status live · 707,500 rows Medicare eligibles, MA enrollees and MA penetration per county and month from CMS's MA State/County Penetration files, codes padded (MASCP-1), with three corrections a reader cannot make alone: a blank Enrolled cell is coded not_reported (MASCP-3); CMS's Pending State / Pending County Designation rows carry pending_designation; and the figure CMS prints once on every county of a combined territory group (VI St. John and St. Thomas; NMI Rota, Saipan and Tinian) is flagged, with eligibles_counts_once / enrolled_counts_once so a sum counts it once (MASCP-4). The tools read medicare_semantic.vw_ma_state_county_penetration_v4 (the same projection over the reconciled table); this view is its rollback. **Grain.** One row per (fipsst, fipscnty, report_month); the rows and values of medicare_semantic.vw_ma_state_county_penetration_v2 (707,500 over 220 months, 0 value differences; Athena 00f12625, 10f1ad30). | column | type | meaning | |---|---|---| | fipsst | string | | | fipscnty | string | | | report_month | date | | | state_name | string | | | county_name | string | | | fips | string | | | ssast | string | | | ssacnty | string | | | ssa | string | | | eligibles | int | | | enrolled | int | | | enrolled_lower_bound | int | | | enrolled_upper_bound | int | | | penetration | double | | | suppression_reason_code | string | | | suppression_reason_code_legacy | string | | | codes_padded_by_view | boolean | | | pending_designation | boolean | | | combined_county_group | varchar(21) | | | eligibles_repeated_across_group | boolean | | | enrolled_repeated_across_group | boolean | | | figures_repeated_across_group | boolean | | | penetration_is_group_figure | boolean | | | eligibles_counts_once | boolean | | | enrolled_counts_once | boolean | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ma_state_county_penetration_v3 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ma_state_county_penetration_v3")` first. # MA State/County Penetration over the reconciled parse, with Pending rows, blank cells and combined territory figures marked `medicare_semantic.vw_ma_state_county_penetration_v4` · Medicare Advantage, Part D, Medicaid · status live · 709,490 rows Medicare eligibles, MA enrollees and MA penetration per county and month from CMS's MA State/County Penetration files, the v3 projection over the reconciled parse-revision-2 table medicare_silver.ma_state_county_penetration_v2: codes padded (MASCP-1), blank Enrolled coded not_reported (MASCP-3), CMS's Pending State / Pending County Designation rows in every month (MASCP-2: +1,990 rows 2008-2016) with pending_designation set by the parser from CMS's labels, the 2016-02 Bedford City penetration recovered (36.0), and the figure CMS prints once on every county of a combined territory group flagged with eligibles_counts_once / enrolled_counts_once (MASCP-4). get_ma_penetration, get_market_share and get_county_view read this view from 2026-10-05. **Grain.** One row per (fipsst, fipscnty, state_name, report_month); 709,490 rows over 220 months 2008-06..2026-09, 2,202 Pending rows, 0 duplicate keys. Every row of vw_ma_state_county_penetration_v3 is here with equal values (707,500 joined, 0 differences except the 2016-02 Bedford City penetration; Athena 0a9416a2, 1c79d799). | column | type | meaning | |---|---|---| | fipsst | string | | | fipscnty | string | | | report_month | date | | | state_name | string | | | county_name | string | | | fips | string | | | ssast | string | | | ssacnty | string | | | ssa | string | | | eligibles | int | | | enrolled | int | | | enrolled_lower_bound | int | | | enrolled_upper_bound | int | | | penetration | double | | | suppression_reason_code | string | | | suppression_reason_code_legacy | string | | | codes_padded_by_view | boolean | | | pending_designation | boolean | | | combined_county_group | varchar(21) | | | eligibles_repeated_across_group | boolean | | | enrolled_repeated_across_group | boolean | | | figures_repeated_across_group | boolean | | | penetration_is_group_figure | boolean | | | eligibles_counts_once | boolean | | | enrolled_counts_once | boolean | | | 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 | | Tools that read it: get_county_view, get_market_share Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ma_state_county_penetration_v4 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ma_state_county_penetration_v4")` first. # USPCC (United States Per Capita Costs), one series key per CMS series, rate years 2003-2027 `medicare_semantic.vw_ma_uspcc_v2` · Medicare Advantage, Part D, Medicaid · status live · 6,033 rows Every column of medicare_silver.ma_uspcc plus series: the non-ESRD USPCC that CMS labels 'Aged + Disabled' (2007-2018), 'Total USPCC' (2019-2020) and 'Non-ESRD total USPCC' (2021-2027) is series 'non_esrd_total' in every year; every other population keeps its code (aged, disabled, esrd, esrd_dialysis_only, non_esrd_ffs). population keeps the code as published. **Grain.** One row per published value, the rows of medicare_silver.ma_uspcc (6,033; view minus table = 0, Athena b604a051-7993-489d-9688-272c1827670c). | column | type | meaning | |---|---|---| | rate_year | int | | | rate_period | string | | | effective_period_start | date | | | effective_period_end | date | | | as_of_label | string | | | block | string | | | part | string | | | row_kind | string | | | row_label | string | | | calendar_year | int | | | calendar_year_correction | string | | | calendar_period | string | | | footnote_ref | string | | | footnote_text | string | | | column_index | int | | | column_header | string | | | series | string | | | population | string | | | estimate_basis | string | | | value_text | string | | | value_num | double | | | value_unit | string | | | source_member | string | | | source_url | string | | | member_sha256 | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ma_uspcc_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ma_uspcc_v2")` first. # MA monthly enrollment by contract, names as CMS wrote them `medicare_semantic.vw_monthly_contract_enrollment_summary_v2` · Medicare Advantage, Part D, Medicaid · status live · 203,758 rows CMS Monthly Enrollment by Contract: every row of medicare_silver.monthly_contract_enrollment_summary with organization, marketing and parent names restored where CMS's 2006-2019 files carry DOS glyphs; the stored values are kept in _legacy. **Grain.** One row per (contract_id, report_month) — CMS Monthly Enrollment by Contract (member counts). CERTIFIED 2026-06-03. | column | type | meaning | |---|---|---| | contract_id | string | | | report_month | date | | | organization_type | string | | | plan_type | string | | | organization_name_raw | string | | | organization_marketing_name_raw | string | | | parent_org_raw | string | | | contract_effective_date | date | | | offers_part_d | boolean | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | enrollment_suppression_reason | string | | | ma_only_count | int | | | ma_only_lower_bound | int | | | ma_only_upper_bound | int | | | ma_only_suppression_reason | string | | | part_d_count | int | | | part_d_lower_bound | int | | | part_d_upper_bound | int | | | part_d_suppression_reason | 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 | | | organization_name_raw_legacy | string | | | organization_marketing_name_raw_legacy | string | | | parent_org_raw_legacy | string | | | text_corrected | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_monthly_contract_enrollment_summary_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_monthly_contract_enrollment_summary_v2")` first. # PBP ambulance cost share (cleaned view) `medicare_semantic.vw_pbp_ambulance` · Medicare Advantage, Part D, Medicaid · status live · 289,486 rows Ambulance cost share per plan and plan year, from PBP section B10a, 2015 on. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(10) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | string | | | benefit_amount_period_code | string | | | benefit_amount_period_label | string | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | string | | | normalization_basis | string | | | aggregation_policy | string | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | ambulance_sub_benefit | string | | | coinsurance_pct_max | double | | | copay_amount_max | double | | | has_coinsurance | boolean | | | has_copay | boolean | | | source_pbp_section | varchar(4) | | | source_silver_table | varchar(41) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_ambulance WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_ambulance")` first. # PBP b19 combined package (cleaned view) `medicare_semantic.vw_pbp_b19_combined_package` · Medicare Advantage, Part D, Medicaid · status partial Cleaned source-faithful PBP b19 combined package rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning su **Grain.** One row per VBID combined-package, per MA plan-segment, per benefit-year, per source PBP sub-section. Minimal verified unique key = (report_year, contract_id, plan_id, segment_id, combined_package_id, source_pbp_section), which is unique across all 17,013 rows (= row_count). A single plan-year typically declares 1 package (9,124 plan-years) but can declare up to 6; the same package can appear once from the B19a feed and once from the B19b feed, which is why source_pbp_section is required to make the key unique. **How to use it.** "Find which MA plans offer a VBID 'Reduction in Cost Sharing' package for 2026 and what standard benefits it touches: SELECT contract_id, plan_id, segment_id, combined_package_id, reduced_copay_mc_categories_list, exemption_categories_list, vbid_targeting_model_code FROM medicare_semantic.vw_pbp_b19_combined_package WHERE report_year=2026 AND combined_package_type_code='3'. Always dedup/group by the full grain (report_year, contract_id, plan_id, segment_id, combined_package_id, source_pbp_section) and remember this returns structural flags and category code-lists, not dollar amounts." **Traps.** - NOT a dollar table. Every numeric/cost column is 100% NULL on purpose — copay_amount, coinsurance_pct, benefit_amount* (and annualized/pmpm), all limit_* and cost_share_string are CAST(null) in the view to fit the shared benefit-card schema. This view tells you WHICH VBID packages exist and their structural flags; for the actual cost-sharing dollars you must crosswalk to the underlying benefit sections (null_amount_reason='unknown_requires_crosswalk'). - Grain trap: (contract_id, plan_id, segment_id) is NOT unique, and neither is adding combined_package_id alone. The same combined_package_id recurs across plans and years (it is a per-plan-year sequence 1..6), AND the same package is emitted by both the B19a and B19b feeds. You MUST include report_year AND source_pbp_section to reach one-row-per (17,013 unique). combined_package_type_code is functionally determined by the package so it is not needed in the key. - No is_current column and no snapshot dedup needed: version (1..23) is exactly one per (report_year,contract,plan,segment), so don't filter on a 'latest version' — every plan-year already appears once. quarter is a constant 1 and is a red herring as a time axis; report_year is the real period and 2023 is missing (years present: 2021,2022,2024,2025,2026). - Many governance/enum columns are dead constants (same value on all 17,013 rows): offered_status='offered', numeric_amount_observability='offered_without_numeric_amounts', null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status='not_checked', confidence_tier='source_faithful', network_type, benefit_category, lmi_authorities. Don't filter/segment on them expecting variation. - Boolean flags are 3-valued and NULL carries meaning: NULL = 'not applicable to this package type' (e.g. reduces_copay/reduces_coinsurance are ~81% NULL because they only apply to cost-sharing-reduction contexts), not 'unknown=false'. The category columns are semicolon-delimited PBP benefit-category code strings (e.g. '7b;7f;13d;') and states_ehc_* are positional bitmask strings (length 20 or 27) — both need the LMI/PBP code crosswalk (see lmi_authorities) to interpret; raw codes are not self-explanatory. - Provenance columns are file-level, not row-level: sha256_content_hash and source_url have only 5 distinct values (one per year). The underlying silver tables are named '..._model_test_vbid_uf', and only package types 1/2/3 of the 01-07 taxonomy actually occur in the data. | column | type | meaning | |---|---|---| | contract_id | string | MA contract id (e.g. H0028). Part of the grain. 723 distinct. | | plan_id | string | Plan id within the contract (e.g. '007', zero-padded 3-char). Part of grain. 485 distinct. | | segment_id | string | Plan benefit segment id (e.g. '0'). Part of grain. 18 distinct. (contract_id, plan_id, segment_id) is the standard CMS PBP plan key. | | version | double | PBP submission/revision number for that plan-year (1..23). Functionally determined by (report_year,contract,plan,segment) — exactly one version per plan-year, 0 multi-version groups — so it is NOT part of the grain and there is NO snapshot/is_current dedup to do; the view already exposes a single version per plan-year. | | report_year | double | Benefit/contract year the PBP filing applies to (2021,2022,2024,2025,2026). THIS is the real time dimension (the profiler mis-picked 'quarter'). 2023 is missing. | | quarter | double | Always 1.0 (constant). Reflects the CMS PBP release file used, not a quarterly cadence. Do not treat as a time grain. | | benefit_category | string | Constant literal 'b19_combined_package'. A tag identifying this view inside the shared benefit-card schema. | | cost_share_string | string | 100% NULL by design (view emits CAST(null)). VBID combined packages carry no parsed cost-share text here. | | copay_amount | double | 100% NULL by design. No dollar copays in this table. | | coinsurance_pct | double | 100% NULL by design. No coinsurance percentages in this table. | | limit_text | string | 100% NULL by design. | | auth_required | boolean | 100% NULL by design (boolean stub). | | referral_required | boolean | 100% NULL by design. | | network_type | varchar(20) | Constant 'n_a_combined_package' — network concept does not apply to a VBID package wrapper. | | max_oop_applies | boolean | 100% NULL by design. | | limit_quantity | double | 100% NULL by design. | | limit_unit | string | 100% NULL by design. | | limit_period_code | string | 100% NULL by design. | | limit_period_label | string | 100% NULL by design. | | limit_quantity_per_year | double | 100% NULL by design. | | benefit_amount | double | 100% NULL by design. No benefit dollar amount in this table. | | benefit_amount_kind | string | 100% NULL by design. | | benefit_amount_period_code | string | 100% NULL by design. | | benefit_amount_period_label | string | 100% NULL by design. | | benefit_amount_annualized | double | 100% NULL by design. | | benefit_amount_pmpm | double | 100% NULL by design. | | normalization_status | string | 100% NULL by design. | | normalization_basis | string | 100% NULL by design. | | aggregation_policy | string | 100% NULL by design. | | offered_status | varchar(15) | Constant 'offered'. Computed from a hard-coded true in the view (every row in this table represents an offered package), so it carries no discriminating signal. | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' — a governance flag stating this table has no numeric cost amounts (because all numeric cols are null). | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' — declares that to get actual dollar effects you must cross-walk to the underlying benefit sections; this view does not hold them. | | annualization_policy | varchar(17) | Constant 'not_numeric' (nothing to annualize). | | combined_limit_policy | varchar(29) | Constant 'none_detected'. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' — not reconciled against consumer documents (e.g. plan finder). | | confidence_tier | varchar(23) | Constant 'source_faithful' — values are taken faithfully from the PBP source, not cross-document verified. | | aggregate_cap_period_code | string | Period code for an aggregate cap when has_aggregate_cap; ~73% NULL. From pbp_b19a_agg_mode / pbp_b19b_agg_period. Mixed encoding: some single-digit period codes (3,5,7) and some bitmask-like strings ('10000','00100') — raw PBP code, treat cautiously. | | combined_package_id | string | The VBID package/group number within the plan-year (pbp_vbid_group_id), integer 1..6. REQUIRED part of the grain. NOTE: this is a per-plan-year sequence, NOT a globally unique id — '1' recurs across plans. | | combined_package_plan_package_count | double | | | combined_package_sub_benefit | varchar(28) | 100% NULL in current data (view emits CAST(null)). Placeholder for a sub-benefit breakout. | | combined_package_type_code | string | VBID package type. Stored single-digit in data ('1','2','3'); the view CASE also accepts zero-padded '01'..'07'. Taxonomy: 01=VBID Hospice, 02=VBID Wellness/Health Care Planning, 03=VBID Reduction in Cost Sharing, 04=VBID Additional Supplemental Benefits, 05=VBID Rewards & Incentives, 06=MA Uniformity Flexibility, 07=SSBCI. Only types 1/2/3 actually occur (3=Reduction in Cost Sharing is most common, 8,621 rows). Functionally determined by the package within a (year,plan,pkg,section), so NOT needed in the key. | | combined_package_type_label | varchar(25) | Human label decoded from combined_package_type_code (e.g. 'VBID Reduction in Cost Sharing'). NULL if code outside 01-07. | | cost_share_to_zero | boolean | Boolean (Y/N→true/false, else NULL): does the package reduce cost sharing to $0. From pbp_b19a_reduct_zero_yn. ~84% NULL; populated mainly where cost-sharing fields apply. | | exemption_categories_list | string | Semicolon-delimited list of PBP benefit-category codes exempt from the reduction (e.g. '13d;' or '7b;7f;10b;13a;...'). Non-null on 6,503 rows. From pbp_b19a_red_exempt_mc_cats. | | has_aggregate_cap | boolean | Boolean: package has an aggregate cap (pbp_b19a_agg_yn). True 6,014 / False 10,999 (no NULLs). | | has_deductible_reduction | boolean | Boolean: package reduces a deductible (pbp_b19a_reduct_deduct_yn). Almost always NULL/False (True on just 1 row) — effectively unused. | | has_exemption | boolean | Boolean: package has exemption categories (pbp_b19a_reduct_exempt_yn). True 6,503 / False 9,847 / NULL 663. | | has_prereq | boolean | Boolean: package has a prerequisite/eligibility condition (pbp_b19a_reduct_prereq_yn). True 6,538 / False 10,475. | | otc_component_amount_status | varchar(41) | | | package_aggregate_amount | double | | | package_aggregate_amount_scope | varchar(34) | | | package_aggregate_categories_list | string | | | package_aggregate_delivery_mode_code | string | | | package_aggregate_delivery_mode_description | string | | | package_aggregate_delivery_mode_label | string | | | package_aggregate_period_code | string | | | package_aggregate_period_label | string | | | package_includes_otc | boolean | | | package_name | string | | | reduced_benefits_list | string | Semicolon list of PBP benefit codes whose cost sharing is reduced (pbp_b19a_red_bens). Non-null 3,243 rows. | | reduced_coins_benefits_list | string | Semicolon list of benefit codes with reduced coinsurance (pbp_b19a_red_coins_bens). Non-null 763 rows. | | reduced_coins_mc_categories_list | string | Semicolon list of Medicare-covered (MC) categories with reduced coinsurance. Non-null 763 rows. | | reduced_coinsurance_pct_max | double | | | reduced_coinsurance_pct_min | double | | | reduced_copay_amount_max | double | | | reduced_copay_amount_min | double | | | reduced_copay_benefits_list | string | Semicolon list of benefit codes with reduced copay (pbp_b19a_red_copay_bens). Non-null 2,576 rows. | | reduced_copay_mc_categories_list | string | Semicolon list of Medicare-covered categories with reduced copay. Non-null 2,568 rows. | | reduced_copay_nmc_categories_list | string | Semicolon list of non-Medicare-covered (NMC, i.e. supplemental) categories with reduced copay. Non-null 333 rows. | | reduced_mc_categories_list | string | Semicolon list of Medicare-covered benefit-description categories that are reduced (pbp_b19a_red_mc_bendesc_cats). Non-null 3,235 rows. | | reduced_nmc_categories_list | string | Semicolon list of non-Medicare-covered (supplemental) categories that are reduced (pbp_b19a_red_nmc_bendesc_cats). Most-populated list (13,546 rows). | | reduced_service_code | string | | | reduced_service_label | string | | | reduces_coinsurance | boolean | Boolean: package reduces coinsurance (pbp_b19a_coins_yn). NULL ~81% — NULL means 'not a cost-sharing-reduction context for this row', not unknown. | | reduces_copay | boolean | Boolean: package reduces copay (pbp_b19a_copay_yn). True 2,576 / False 600 / NULL 13,837 (NULL = not applicable). | | requires_all_diseases | boolean | Boolean: targeting requires ALL listed chronic conditions (pbp_b19a_all_dis_yn). Almost entirely NULL (rare VBID targeting field). | | requires_disease_combination | boolean | Boolean: targeting requires a specific disease combination (pbp_b19a_cmb_dis_yn). Almost entirely NULL; True on 22 rows. | | states_ehc_ssbci | string | Bitmask STRING of state/territory eligibility for the SSBCI offering (e.g. '01111111111111110000'; lengths 20 or 27 observed). Non-null 7,589 rows. From pbp_b19a_states_ehc_ssbci. | | states_ehc_uniformity_flex | string | Bitmask string of states for MA Uniformity Flexibility (pbp_b19a_states_ehc_uf). Non-null 4,827 rows. | | states_ehc_vbid | string | Bitmask string of states for the VBID offering (pbp_b19a_states_ehc_vbd). Non-null 935 rows. | | vbid_targeting_model_code | string | VBID targeting/eligibility model code (pbp_b19a_tm_vbid / pbp_b19b_tm_vbid). ~79% NULL; values look like flag codes ('10','001','01','010','100','101','110','011'). Raw PBP code — semantics need the PBP/LMI crosswalk. | | source_pbp_section | varchar(4) | Which PBP sub-section the row came from: 'B19a' (3,906 rows) or 'B19b' (13,107). REQUIRED to make the grain unique because the same package can be emitted by both feeds. The two feeds carry the same conceptual columns (mapped from pbp_b19a_* vs pbp_b19b_* source columns). | | source_silver_table | varchar(51) | The underlying medicare_silver table the row was unioned from: medicare_silver.pbp_section_b19a_model_test_vbid_uf or ..._b19b_.... 1:1 with source_pbp_section (equivalent discriminator). Note the source tables carry a 'model_test' name. | | lmi_authorities | string | Constant pipe-delimited reference URLs to LMI / CMS authority PDFs (CY2026 PBP Service Category Descriptions + Part C Bid Review Memorandum) that document the VBID/category code systems. Documentation pointer, not data — same on all 17,013 rows. | | source_url | string | CMS PBP source ZIP the year's rows came from (file-level provenance). Exactly one distinct URL per report_year (5 total). | | sha256_content_hash | string | Content hash of the source PBP file — FILE-level, only 5 distinct values (one per report_year), NOT a per-row/per-package hash. Do not use as a row identity. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_b19_combined_package WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_b19_combined_package")` first. # PBP cardiac pulmonary rehab (cleaned view) `medicare_semantic.vw_pbp_cardiac_pulmonary_rehab` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP cardiac pulmonary rehab rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning **Grain.** One row per Medicare Advantage plan-segment, per quarterly PBP snapshot, per rehab sub-benefit. The minimal verified-unique key is (contract_id, plan_id, segment_id, report_year, quarter, rehab_sub_benefit) — 455,848 rows, all distinct on that key. Each plan-snapshot (contract+plan+segment+report_year+quarter = 113,962 of them) fans out into exactly 4 rows, one per rehab sub-benefit (cardiac_rehab_basic, intensive_cardiac_rehab, pulmonary_rehab, setpad). network_type is constant 'in_network' so it is not needed in the key. **How to use it.** To get the in-network cardiac-rehab cost share for a plan in the current plan year, filter to one snapshot and one sub-benefit, e.g. SELECT contract_id, plan_id, segment_id, cost_share_string, copay_amount, coinsurance_pct, auth_required FROM vw_pbp_cardiac_pulmonary_rehab WHERE report_year=2026 AND quarter=1 AND rehab_sub_benefit='cardiac_rehab_basic'. This returns each plan's filed member copay/coinsurance and whether prior auth is needed for standard cardiac rehab. To compare the four rehab types for one plan, drop the sub_benefit filter and you get 4 rows. **Traps.** - No single ID column is unique. contract_id (1,231), plan_id (656), segment_id (24) are all repeated. The profiler's suggested candidate key (contract/plan/segment + limit_period_code + benefit_amount_period_code + confidence_tier) is WRONG — those three extra columns are 100% NULL or constant. The true key MUST include report_year, quarter, AND rehab_sub_benefit. - Pick ONE snapshot or you will multiply rows. There are 16 (report_year, quarter) snapshots from 2019-2026; without a report_year+quarter filter a plan appears many times across years. 'quarter' is the CMS PUF release quarter, not a coverage period. - Each plan-snapshot is fanned into 4 rows (one per rehab sub-benefit: cardiac_rehab_basic / intensive_cardiac_rehab / pulmonary_rehab / setpad). rehab_sub_benefit and source_pbp_section are 1:1 (B3_CRS/B3_ICRS/B3_PRS/B3_SETPAD). Filter on rehab_sub_benefit when you want a single benefit, else you 4x your aggregates. - offered_status is a constant 'offered' scaffolding value and does NOT mean the plan offers that sub-benefit. ~20,880 rows are actually not-offered: detect them by cost_share_string IS NULL / auth_required IS NULL (these also have has_copay/has_coinsurance/has_deductible = NULL), not by offered_status. - All benefit-amount and limit columns are 100% NULL (benefit_amount, benefit_amount_pmpm, benefit_amount_annualized, limit_text, limit_quantity, limit_period_code, normalization_status, aggregation_policy, etc.). They are shared-schema scaffolding; the gold metadata constants explain it: numeric_amount_observability='offered_without_numeric_amounts', null_amount_reason='unknown_requires_crosswalk', confidence_tier='source_faithful'. Use cost_share_string / copay_amount / coinsurance_pct for the actual cost share. - source_url and sha256_content_hash are snapshot-level provenance (exactly 16 distinct, one per year+quarter), NOT row identifiers. has_deductible is never true. copay vs coinsurance are near-mutually-exclusive (plans file one or the other). The min/max copay & coinsurance columns just mirror the single value here. | column | type | meaning | |---|---|---| | contract_id | string | Medicare Advantage contract ID, e.g. 'H0016' (H/R/S prefix). 1,231 distinct. Part of plan-identity key. | | plan_id | string | Plan benefit package ID within the contract, e.g. '001','003' (3-char zero-padded). 656 distinct. NOT unique on its own. | | segment_id | string | Plan segment ID, e.g. '0' (most plans are single-segment). 24 distinct values. Completes the CMS contract/plan/segment identity triple. | | version | double | PBP submission/revision number for that plan-year (double, 1.0-26.0). The plan's filing revision; higher = later resubmission. One value per plan-snapshot here (no intra-snapshot duplicates), so it is informational, not a dedup key. | | report_year | double | Plan/contract YEAR the PBP filing applies to (double: 2019-2026). THE real year dimension. 2023 is the largest cohort. | | quarter | double | Quarter of the CMS PBP PUF release snapshot within report_year (double 1-4). Combined with report_year it identifies which of the 16 quarterly source files the row came from. NOT a benefit period or coverage quarter — it is the publication snapshot. | | benefit_category | string | Constant 'cardiac_pulmonary_rehab' for every row — this view is the cardiac/pulmonary rehab slice of the PBP B3 rehab section. | | cost_share_string | string | Human-readable member cost share as filed, e.g. '20.0%', '$0 copay', '$20.0 copay', '$0 copay + 20.0%'. The source-faithful display string; copay_amount/coinsurance_pct are parsed from it. NULL (~69K rows) means this sub-benefit is not offered/priced for that plan-snapshot. | | copay_amount | double | Parsed flat-dollar copay (double, $0-$100, median ~$18). NULL when the cost share is coinsurance-only or the sub-benefit is not offered. ~244K rows populated. | | coinsurance_pct | double | Parsed coinsurance percentage (double, 0-45, median 20 = the Medicare-standard 20%). NULL when cost share is copay-only or not offered. ~143K rows populated. Plans use copay XOR coinsurance ~ exclusively (only ~3.4K rows have both). | | limit_text | string | 100% NULL in this view. Scaffolding column from the shared PBP gold schema; benefit limits are not populated for this rehab benefit. | | auth_required | boolean | Boolean: prior authorization required (true ~276K, false ~157K, NULL ~22.7K). NULL coincides with the not-offered sub-benefit rows. | | referral_required | boolean | Boolean: referral required (false ~331K, true ~102K, NULL ~22.7K). NULL = not-offered rows. | | network_type | varchar(10) | Constant 'in_network' for all 455,848 rows. This view carries only the in-network cost share; do NOT include it in the grain key (it adds nothing). | | max_oop_applies | boolean | Boolean, constant TRUE for all rows — this benefit accrues toward the plan MOOP. A fixed flag for this category, not a per-plan signal. | | limit_quantity | double | 100% NULL. Unused gold-schema scaffolding column (visit/quantity caps not parsed for this benefit). | | limit_unit | string | 100% NULL. Unused scaffolding. | | limit_period_code | string | 100% NULL. Unused scaffolding (despite being listed as a profiler candidate key — it carries no information here). | | limit_period_label | string | 100% NULL. Unused scaffolding. | | limit_quantity_per_year | double | 100% NULL. Unused scaffolding. | | benefit_amount | double | 100% NULL. This is a plan-PAYS/allowance column for supplemental cash-style benefits; not applicable to cardiac/pulmonary rehab, so always null. | | benefit_amount_kind | string | 100% NULL. Unused scaffolding (would label benefit_amount type). | | benefit_amount_period_code | string | 100% NULL. Unused scaffolding (profiler candidate key but carries no information). | | benefit_amount_period_label | string | 100% NULL. Unused scaffolding. | | benefit_amount_annualized | double | 100% NULL. Unused scaffolding (annualized benefit_amount). | | benefit_amount_pmpm | double | 100% NULL. Unused scaffolding (per-member-per-month benefit_amount). | | normalization_status | string | 100% NULL for this view. Gold-layer numeric-normalization status is not applied to this benefit (see numeric_amount_observability instead). | | normalization_basis | string | 100% NULL. Gold-layer normalization basis not applied here. | | aggregation_policy | string | 100% NULL. Gold-layer aggregation policy not applied here. | | offered_status | varchar(15) | Constant 'offered' (varchar) for ALL rows — a row-level scaffolding constant, NOT a real per-plan offered flag. To tell whether a plan actually offers a sub-benefit, check whether cost_share_string/auth_required are non-null, not this column. | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' — declares that this benefit is captured as offered + cost-share but without normalized dollar benefit amounts (explains why all benefit_amount_* are null). | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' — the documented reason benefit amounts are null (would need a service-category crosswalk to populate). | | annualization_policy | varchar(17) | Constant 'not_numeric' — annualization not performed because there is no numeric benefit amount. | | combined_limit_policy | varchar(29) | Constant 'none_detected' — no shared/combined benefit limit detected for this category. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' — these rows have not been reconciled against consumer documents (EOC/SB). | | confidence_tier | varchar(23) | Constant 'source_faithful' — values are taken as-filed from the PBP PUF without inference/enrichment. (Profiler candidate key but constant, so it adds nothing.) | | cardiac_pulmonary_rehab_package_id | string | | | cardiac_pulmonary_rehab_package_match_basis | string | | | cardiac_pulmonary_rehab_package_name | string | | | cardiac_pulmonary_rehab_package_type_code | string | | | cardiac_pulmonary_rehab_package_type_label | string | | | cardiac_pulmonary_rehab_targeting | string | | | coinsurance_pct_max | double | Max coinsurance for the row; equals coinsurance_pct here (single-value range). Populated only where coinsurance_pct is. Exists for schema parity with multi-value benefits. | | coinsurance_pct_min | double | Min coinsurance; equals coinsurance_pct here. Same fill (~143K). | | copay_amount_max | double | Max copay for the row; equals copay_amount here (single-value range). Same fill (~244K). | | copay_amount_min | double | Min copay; equals copay_amount here. Same fill. | | has_coinsurance | boolean | Boolean derived flag: row has a coinsurance cost share. NULL (~20.8K) on not-offered rows. | | has_copay | boolean | Boolean derived flag: row has a copay cost share. NULL on not-offered rows. ~248K true. | | has_deductible | boolean | Boolean derived flag for a benefit-specific deductible. NEVER true in this view (always false, or NULL on not-offered rows) — cardiac/pulmonary rehab carries no separate deductible here. | | max_plan_benefit_amount | double | | | max_plan_benefit_basis | string | | | max_plan_benefit_offered | boolean | | | max_plan_benefit_period_code | string | | | max_plan_benefit_period_label | string | | | max_plan_benefit_period_text | string | | | rehab_benefit_type_code | string | | | rehab_benefit_type_label | string | | | rehab_is_unlimited | boolean | | | rehab_sub_benefit | varchar(47) | The specific rehab sub-benefit the row prices. Exactly 4 values, each appearing 113,962 times: 'cardiac_rehab_basic' (standard cardiac rehab), 'intensive_cardiac_rehab', 'pulmonary_rehab', and 'setpad' (Supervised Exercise Therapy for symptomatic Peripheral Artery Disease). This is the column that fans each plan-snapshot into 4 rows and is REQUIRED in the grain key. | | source_pbp_section | varchar(20) | CMS PBP B3 sub-section the row came from. 1:1 with rehab_sub_benefit: B3_CRS=cardiac_rehab_basic, B3_ICRS=intensive_cardiac_rehab, B3_PRS=pulmonary_rehab, B3_SETPAD=setpad. Redundant with rehab_sub_benefit. | | source_silver_table | varchar(57) | Constant 'medicare_silver.pbp_section_b3_cardiac_rehab' — the silver lineage table all 4 sub-benefits are unpacked from. Provenance, not a dimension. | | lmi_authorities | string | Constant URL to the CMS/LMI 'CY 2026 PBP Service Category Descriptions' PDF — the authoritative definition doc for these service categories. Reference link, same for every row. | | source_url | string | URL of the CMS PBP PUF zip the snapshot was extracted from (e.g. '.../pbp-benefits-2024-quarter-4.zip'). Exactly 16 distinct values — one per (report_year, quarter) snapshot, NOT per row. Snapshot-level provenance. | | sha256_content_hash | string | Content hash of the source snapshot file. Exactly 16 distinct values — one per snapshot, identical across all rows of the same (report_year, quarter). Snapshot-level provenance, NOT a row identifier. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_cardiac_pulmonary_rehab WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_cardiac_pulmonary_rehab")` first. # PBP clinical diagnostic therapeutic (cleaned view) `medicare_semantic.vw_pbp_clinical_diagnostic_therapeutic` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP clinical diagnostic therapeutic rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent r **Grain.** One row per MA plan SEGMENT per benefit YEAR per quarterly SNAPSHOT per diagnostic/therapeutic SUB-BENEFIT. Verified-unique on contract_id × plan_id × segment_id × report_year × quarter × cdt_sub_benefit = 738,390 distinct = 738,390 total rows (max rows per that key = 1, zero duplicate groups). Each of the 5 sub-benefits appears exactly 147,678 times (738,390 / 5), perfectly balanced — every plan-snapshot emits all 5 B8 sub-sections. NOTE: a single plan-year is NOT one row; it appears once per quarter CMS republished the PBP (1–4 quarters) and once per sub-benefit, so one plan-year = up to 20 rows (4 quarters × 5 sub-benefits). **How to use it.** To get the current in-network cost share an MA plan charges for MRI/CT (complex imaging) in 2026: SELECT contract_id, plan_id, segment_id, cost_share_string, copay_amount_min, copay_amount_max, coinsurance_pct, auth_required FROM medicare_semantic.vw_pbp_clinical_diagnostic_therapeutic WHERE report_year=2026 AND cdt_sub_benefit='complex_imaging'. Because 2026 has only Q1 this is already the latest snapshot; for years with multiple quarters add a MAX(quarter)-per-plan filter to avoid counting the same plan-year 2–4 times. Answers 'what does plan H0028-007 charge a member for complex imaging, and does it need prior auth?' **Traps.** - report_year is the benefit year; quarter is a QUARTERLY SNAPSHOT of the SAME annual filing, not a distinct benefit period. The same plan-year appears once per released quarter (1–4) AND once per sub-benefit, so a plan-year = up to 20 rows. To dedupe to one view-of-record per plan-year, take MAX(quarter) per report_year (e.g. 2026 only has Q1; 2021/2025 Q1 only; 2020 missing Q3). There is NO is_current column. - copay_amount and coinsurance_pct are the MINIMUM, not a single true value: copay_amount = copay_amount_min and coinsurance_pct = coinsurance_pct_min in 100% of non-null rows. A single row bundles multiple service lines under one sub-benefit, so the _max column often differs (copay max differs from min in 165K rows; e.g. '$0 copay' point but max=$65). Read min AND max to see the real spread; the point column understates the high end. - NULL ≠ zero and NULL ≠ false. 35,490 rows have has_copay/has_coinsurance/cost_share_string/copay/coinsurance all NULL = benefit offered but cost share unknown/unparsed (null_amount_reason='unknown_requires_crosswalk'), NOT free. auth_required/referral_required are NULL in 39,745 rows (NULL ≠ not-required). Also has_copay=true does NOT guarantee a numeric copay_amount (flag is true in 434K rows but the amount is populated in only 355K). - This is a COST-SHARE / benefit-design table (what the member pays per the plan filing), NOT prices, allowed amounts, or paid claims. The entire benefit_amount_* and limit_* dollar/quantity families are 100% NULL here; network_type is constant 'in_network' (no out-of-network); has_deductible is constant false and max_oop_applies constant true. confidence_tier='source_faithful' means as-filed, never reconciled to consumer EOC/SB (consumer_document_reconciliation_status='not_checked'). - Identity requires ALL of contract_id + plan_id + segment_id — plan_id is only unique within a contract, and segment_id ('0' for 91%, but 1–16 for segmented plans) is part of the grain. cdt_sub_benefit (5 values) is 1:1 with source_pbp_section and is a required grain axis: each plan-snapshot has exactly 5 rows (one per B8 sub-section, each balanced at 147,678), so cost share for, say, complex_imaging vs diagnostic_lab lives in different rows of the same plan. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0028, H0022). 1,270 distinct. First piece of the plan identity. Format H####/R####/etc. | | plan_id | string | Plan ID within the contract (e.g. 001, 007), zero-padded string. 656 distinct values; only unique WITHIN a contract. | | segment_id | string | Plan segment (regional sub-division of a plan offering different benefits by area). String '0' for 91% of rows (non-segmented); '1'..'16' for segmented plans. Part of the grain — do not drop. | | version | double | CMS PBP submission/version number for that plan-year (double 1.0–~12.0). Exactly one value per grain row (already deduped to the filed version); higher = later resubmission within the year. Not part of the grain. | | report_year | double | The benefit/plan year the cost-sharing applies to. Ranges 2018–2026. This is the real time dimension for 'what does the plan charge in year X'. | | quarter | double | Quarterly snapshot (1–4) of the PBP within report_year — the same annual filing republished by CMS each quarter. NOT a different benefit period. Coverage is uneven (e.g. 2021/2025/2026 only have Q1; 2020 missing Q3). To get the definitive view of a year, pick MAX(quarter) per report_year. Part of grain. | | benefit_category | string | Constant = 'clinical_diagnostic_therapeutic' for all 738,390 rows. Identifies which sibling PBP view this is; carries no row-level signal. | | cost_share_string | string | Human-readable cost share as filed, e.g. '20.0%', '$0 copay', '$0 copay + 20.0%', '$60.0 copay'. ~12% NULL (90,416 rows = cost share unknown/unparsed). A plan can carry BOTH a copay and a coinsurance ('$0 copay + 20.0%'). | | copay_amount | double | Member copay in $ — but this is the MINIMUM/representative value: copay_amount = copay_amount_min in 100% of non-null cases. Non-null in 355,289 rows (48%); range $0–$450, avg ~$20.5. NULL ≠ $0 — NULL means no copay parsed (could be coinsurance-based or unknown). | | coinsurance_pct | double | Member coinsurance percent — the MINIMUM/representative value (= coinsurance_pct_min in 100% of non-null cases). Non-null in 317,560 rows (43%); range 0–50%. NULL ≠ 0% (means coinsurance not the basis / unknown). | | limit_text | string | | | auth_required | boolean | Prior authorization required (boolean), NULLABLE. true in 622,099, NULL in 39,745 (NULL ≠ false). Most diagnostic/therapeutic services require auth. Non-null in 698,645 rows. | | referral_required | boolean | Referral required (boolean), NULLABLE. true in 193,310, NULL in 39,745 (same null rows as auth). Non-null 698,645. | | network_type | varchar(10) | CONSTANT 'in_network' for all rows — this view contains only the in-network cost share. (Out-of-network B8 terms are not represented here.) | | max_oop_applies | boolean | Whether this benefit counts toward the plan MOOP — CONSTANT true across all 738,390 rows. No row-level signal for this category. | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | string | | | benefit_amount_period_code | string | | | benefit_amount_period_label | string | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | string | | | normalization_basis | string | | | aggregation_policy | string | | | offered_status | varchar(15) | CONSTANT 'offered' — this view holds only the offered universe (every plan-snapshot emits all 5 sub-benefits as 'offered'). | | numeric_amount_observability | varchar(31) | CONSTANT 'offered_without_numeric_amounts' — declares that B8 is captured as offered/cost-share but without dollar benefit amounts (consistent with the all-null benefit_amount family). | | null_amount_reason | varchar(30) | CONSTANT 'unknown_requires_crosswalk' — the documented reason benefit_amount is null (B8 has no dollar amount; needs a service-category crosswalk to interpret). | | annualization_policy | varchar(17) | CONSTANT 'not_numeric' — no annualization performed (no numeric benefit amount to annualize). | | combined_limit_policy | varchar(29) | CONSTANT 'none_detected' — no combined/shared limit detected for this category. | | consumer_document_reconciliation_status | varchar(11) | CONSTANT 'not_checked' — these rows have not been reconciled against consumer-facing plan documents (EOC/SB). | | confidence_tier | varchar(23) | CONSTANT 'source_faithful' — values reflect the raw CMS PBP filing as-is (faithful to source, not adjudicated/enriched). | | benefit_layer | string | | | cdt_sub_benefit | varchar(26) | The diagnostic/therapeutic service sub-type. EXACTLY 5 values, 1:1 with source_pbp_section: complex_imaging (B8B_CMC = MRI/CT/PET etc.), therapeutic_radiation (B8B_TMC), diagnostic_radiology_basic (B8B_DRS), diagnostic_imaging_basic (B8A_DMC), diagnostic_lab (B8A_LAB). This is the second axis of the grain — cost share differs per sub-benefit. | | cms_service_name | varchar(71) | | | coinsurance_pct_max | double | Maximum coinsurance % across bundled service lines. Differs from min in 12,852 rows. | | coinsurance_pct_min | double | Minimum coinsurance % across bundled service lines. Equals coinsurance_pct. | | copay_amount_max | double | Maximum copay across the bundled service lines. DIFFERS from min in 165,129 rows — the single row spans a RANGE of copays (e.g. point/min=$0 but max=$65). Use min/max together to see the spread; copay_amount alone understates the high end. | | copay_amount_min | double | Minimum copay across the multiple service lines bundled under this sub-benefit in the PBP. Equals copay_amount. Non-null 355,289. | | deductible_basis | string | | | has_coinsurance | boolean | BOOLEAN, NULLABLE. true=436,689, false=266,211, NULL=35,490 (same unknown rows). Like has_copay, the flag is broader than the parsed numeric value. | | has_copay | boolean | BOOLEAN flag, NULLABLE. true=434,174, false=268,726, NULL=35,490. Caveat: has_copay=true does NOT guarantee a numeric copay_amount (true in 434K rows but copay_amount populated in only 355K). NULL = cost share unknown (the 'requires_crosswalk' rows). | | has_deductible | boolean | BOOLEAN, but CONSTANT false across all 738,390 rows for this category. Carries no signal here. | | has_max_enrollee_oop | boolean | | | label_note | string | | | max_enrollee_oop_amount | double | | | max_enrollee_oop_period_code | string | | | max_enrollee_oop_period_label | string | | | max_enrollee_oop_period_text | string | | | registry_l2_id | string | | | same_day_max_copay_only | boolean | | | service_key | string | | | source_pbp_section | varchar(7) | The CMS PBP section code the row came from. 5 values, 1:1 with cdt_sub_benefit: B8B_CMC, B8B_TMC, B8B_DRS, B8A_DMC, B8A_LAB. Provenance of the sub-benefit. | | source_silver_table | varchar(45) | CONSTANT 'medicare_silver.pbp_section_b8_clin_diag_ther' — the upstream silver table this semantic view is built from. | | lmi_authorities | string | CONSTANT — a single URL to the LMI 'CY 2026 PBP Service Category Descriptions' PDF (the authoritative definitions for these benefit categories). Documentation/definitions pointer, same for every row. | | source_url | string | CMS PBP benefits ZIP the data was extracted from (e.g. https://www.cms.gov/files/zip/pbp-benefits-2021-updated-08022021.zip). One per grain row; multiple distinct URLs per report_year correspond to the quarterly refreshes. | | sha256_content_hash | string | Content hash of the source PBP file for provenance/integrity. One per grain row; tracks 1:1 with source_url within a report_year. | | limit_quantity / limit_unit / limit_period_code / limit_period_label / limit_quantity_per_year / limit_text | | Quantity-limit family. 100% NULL for this category — PBP B8 diagnostic/therapeutic benefits carry no parsed quantity limits in this view. Do not rely on these here. | | benefit_amount / benefit_amount_kind / benefit_amount_period_code / benefit_amount_period_label / benefit_amount_annualized / benefit_amount_pmpm | | Dollar-benefit-allowance family. 100% NULL for this category. These services are cost-share (copay/coinsurance) only, not dollar-allowance benefits, so this whole family is unused. | | normalization_status / normalization_basis / aggregation_policy | | Pipeline normalization metadata — 100% NULL for this category (not applied to B8). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_clinical_diagnostic_therapeutic WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_clinical_diagnostic_therapeutic")` first. # PBP combined benefit groups (cleaned view) `medicare_semantic.vw_pbp_combined_benefits_group` · Medicare Advantage, Part D, Medicaid · status live · 62,626 rows The benefit groups pooled under one combined allowance per plan and plan year, from PBP section D, 2021 on. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | group_index | int | | | group_name | string | | | shared_max_amount | double | | | max_amount_period_code | string | | | shared_visit_count | double | | | delivery_mode | string | | | enrollee_limited | boolean | | | member_categories_raw | string | | | member_families | string | | | member_family_count | bigint | | | is_cross_benefit | boolean | | | source_silver_table | varchar(29) | | | source_pbp_section | varchar(1) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_combined_benefits_group WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_combined_benefits_group")` first. # PBP combined supplemental limit (cleaned view) `medicare_semantic.vw_pbp_combined_supplemental` · Medicare Advantage, Part D, Medicaid · status live · 62,702 rows The combined (pooled) supplemental benefit limit per plan and plan year from PBP section D, 2021 on: which benefits share one allowance and its periodicity. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(43) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | varchar(49) | | | benefit_amount_period_code | string | | | benefit_amount_period_label | varchar(18) | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(29) | | | normalization_basis | varchar(47) | | | aggregation_policy | varchar(70) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | benefit_category_codes_undecoded | string | | | combined_group_index | int | | | combined_group_kind | string | | | combined_group_label | string | | | combined_group_name | string | | | combined_supplemental_offered | boolean | | | combined_supplemental_sub_benefit | string | | | delivery_mode_code | string | | | delivery_mode_description | string | | | delivery_mode_label | string | | | enrollee_must_preselect_benefits | boolean | | | enrollee_must_preselect_benefits_code | string | | | filed_group_count_code | string | | | food_or_utilities_inclusion_status | string | | | included_benefit_category_codes | string | | | included_benefit_category_labels | string | | | included_benefit_families | string | | | includes_b19_or_ssbci_additional_benefits | boolean | | | includes_dental | boolean | | | includes_fitness | boolean | | | includes_food_or_utilities | boolean | | | includes_hearing | boolean | | | includes_meals | boolean | | | includes_otc | boolean | | | includes_transportation | boolean | | | includes_vision | boolean | | | maximum_amount_period_code | string | | | maximum_amount_period_description | string | | | maximum_amount_period_label | string | | | plan_combined_supplemental_offered_code | string | | | reductions_in_cost_sharing_offered | boolean | | | rics_applies_to_deductible | boolean | | | rics_applies_to_deductible_code | string | | | rics_applies_to_medicare_covered | boolean | | | rics_applies_to_non_medicare_covered | boolean | | | rics_category_codes_undecoded | string | | | rics_category_scope_code | string | | | rics_delivery_mode_code | string | | | rics_delivery_mode_description | string | | | rics_delivery_mode_label | string | | | rics_eligibility | string | | | rics_eligibility_basis | string | | | rics_group_count_code | string | | | rics_group_index | int | | | rics_group_label | string | | | rics_group_name | string | | | rics_group_name_status | string | | | rics_maximum_amount | double | | | rics_maximum_period_code | string | | | rics_maximum_period_label | string | | | rics_maximum_period_months | int | | | rics_medicare_covered_category_codes | string | | | rics_medicare_covered_category_labels | string | | | rics_non_medicare_covered_category_codes | string | | | rics_non_medicare_covered_category_labels | string | | | rics_non_medicare_covered_families | string | | | rics_offered_code | string | | | rics_shared_combined_group_index | bigint | | | rics_shared_combined_package_name | string | | | rics_shared_package_status | string | | | rics_shared_with_combined_package | boolean | | | rics_shared_with_combined_package_code | string | | | shared_maximum_plan_benefit_amount | double | | | shared_maximum_plan_benefit_offered | boolean | | | shared_maximum_plan_benefit_offered_code | string | | | shared_visit_count | double | | | shared_visit_limit_offered | boolean | | | shared_visit_limit_offered_code | string | | | shared_visit_period_code | string | | | shared_visit_period_label | string | | | ssbci_benefit_category_codes | string | | | ssbci_benefit_category_codes_raw | string | | | ssbci_benefit_category_labels | string | | | ssbci_families_source | string | | | ssbci_package_names | string | | | source_pbp_section | varchar(1) | | | source_silver_table | varchar(29) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_combined_supplemental WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_combined_supplemental")` first. # PBP dental (cleaned view) `medicare_semantic.vw_pbp_dental` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP dental rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for dent **Grain.** One row per MA plan-segment per benefit year/quarter snapshot per PBP dental section. The MINIMAL verified-unique key is contract_id + plan_id + segment_id + report_year + quarter + source_pbp_section (231,468 distinct = 231,468 total rows, exact). source_pbp_section is the benefit-component axis: 'B16' = the single overall dental row (186,498 rows, all years), and 'B16A'/'B16B'/'B16C' = three sub-benefit rows (14,990 each) that exist ONLY for report_year 2025-2026. A plan in 2024 or earlier contributes 1 dental row; a plan in 2025/2026 contributes 4 (overall + 3 sub-benefits). version is NOT part of the grain — there is exactly one version per plan-snapshot, it is just CMS's carried bid-version number. **How to use it.** To get each MA plan's overall dental cost share for the 2026 benefit year: SELECT contract_id, plan_id, segment_id, cost_share_string, copay_amount, coinsurance_pct, limit_quantity_per_year, limit_period_label FROM medicare_semantic.vw_pbp_dental WHERE report_year=2026 AND source_pbp_section='B16'. This returns one row per plan-segment with the filed dental member cost share and frequency limit. For the 2025+ sub-benefit breakdown (Medicare-covered vs diagnostic/preventive vs comprehensive), drop the section filter and read B16A/B16B/B16C rows instead. **Traps.** - NOT one row per plan. A 2024-or-earlier plan has 1 dental row (B16); a 2025/2026 plan has 4 (B16 overall + B16A/B/C sub-benefits). You MUST include source_pbp_section in the grain key, and filter to source_pbp_section='B16' (or dental_sub_benefit IS NULL) if you want exactly one overall-dental row per plan. Aggregating cost_share across all sections double-counts. - version looks like a snapshot/history axis but is NOT — there is exactly one version per (contract,plan,segment,report_year,quarter), already deduped. The real time axis is report_year + quarter. There is no is_current column; dedup to a single bid version has already been done upstream. - The entire benefit_amount dollar family (benefit_amount, _kind, _period_code, _period_label, _annualized, _pmpm) AND max_oop_applies are 100% NULL in this view — confirmed by numeric_amount_observability='offered_without_numeric_amounts'. Do NOT read a dental dollar allowance/cap from this table; it only carries copay/coinsurance and frequency limits. - Benefit-type columns are split into TWO families by era: the *_cy2025 columns (comprehensive_cy2025, diagnostic_cy2025) populate ONLY for report_year 2025-2026; the non-suffixed columns (oral_exam, comprehensive_diagnostic, diagnostic, preventive_care) populate ONLY for report_year <=2024 — same Mandatory/Optional concept, different CMS layout. Coalesce across the pair (or filter by year) or you will see spurious nulls. - Several columns are single-valued constants and carry no filtering power: benefit_category='dental', network_type='in_network', offered_status='offered', source_silver_table, aggregation_policy='separate_components', numeric_amount_observability, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status='not_checked', confidence_tier='source_faithful', and lmi_authorities='' (empty). - Redundant columns to avoid mistaking for independent dimensions: dental_sub_benefit maps 1:1 to source_pbp_section (adds no grain), and dental_limit_periodicity_label is an exact duplicate of limit_period_label. consumer_document_reconciliation_status='not_checked' everywhere means these are raw bid filings, NOT reconciled against consumer Summary-of-Benefits documents. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract id (e.g. 'H0016'). 1,972 distinct. Part of the grain. Pairs with plan_id/segment_id to identify the plan. | | plan_id | string | Plan number within the contract (e.g. '001', 3-char zero-padded). 656 distinct values; only unique WITHIN a contract. Part of the grain. | | segment_id | string | PBP segment id (e.g. '0'), distinguishes service-area segments of the same plan. 27 distinct. Part of the grain. 26,631 distinct contract+plan+segment combinations exist. | | version | double | CMS PBP bid version number for that plan-snapshot (double, 0-26). NOT a history axis and NOT part of the grain — there is exactly ONE version per (contract,plan,segment,report_year,quarter). Higher within a year = later corrected filing already collapsed to one row here. | | report_year | double | Benefit/contract year the plan applies to (double, 2001-2026). The PRIMARY time axis (the profiler's 'quarter 1-4' is only the within-year republish, not the history span). | | quarter | double | CMS republish quarter within report_year (1-4). Most data is Q1; older years carry Q1-Q4 reissues, 2025/2026 so far only Q1. Part of the grain (same plan can appear in multiple quarterly reissues). | | benefit_category | string | CONSTANT = 'dental' for every row (this is the dental view). Carries no information here; exists for union-compatibility with sibling PBP views. | | cost_share_string | string | Human-readable member cost share as filed, e.g. '$25.0 copay', '20.0%', '$0 copay'. Populated on 84,533 rows; NULL when the bid did not populate a numeric cost share (cost_share_populated_in_bid=false). | | copay_amount | double | Dollar copay parsed from the cost share (double). Populated on 70,978 rows. Mutually exclusive with coinsurance_pct — a row carries one or the other. | | coinsurance_pct | double | Coinsurance percentage parsed from the cost share (double, e.g. 20.0 = 20%). Populated on 13,593 rows. Mutually exclusive with copay_amount. | | limit_text | string | Free-text limit description from the bid. Effectively unpopulated in observed data (the structured limit_* columns carry the limit instead). | | auth_required | boolean | Boolean: prior authorization required for this dental benefit component. NULL = not specified in the bid (not the same as false). | | referral_required | boolean | Boolean: referral required. NULL = not specified. | | network_type | varchar(10) | CONSTANT = 'in_network' for every row. This view exposes only in-network cost share; no out-of-network rows. | | max_oop_applies | boolean | Boolean intended to flag whether the benefit counts toward MOOP. 100% NULL in this view — structurally unpopulated, do not rely on it. | | limit_quantity | double | Raw limit quantity as filed in the source stripe (double). Largely superseded by limit_quantity_per_year; sparsely populated. | | limit_unit | string | Unit for limit_quantity (e.g. visits). Sparsely populated; the normalized frequency lives in limit_quantity_per_year / frequency_per_year_annualized. | | limit_period_code | string | CMS periodicity code for the limit (string): 1=Every three years, 2=Every two years, 3=Every year, 4=Every six months, 5=Every three months, 6=Other/Describe. NULL on 125,815 rows (no quantified limit). | | limit_period_label | string | Decoded label of limit_period_code (e.g. 'Every year', 'Every six months', 'Other, Describe'). NULL when no limit period. | | limit_quantity_per_year | double | Limit normalized to a per-year frequency (double, 0.33-8.0, median 2 — e.g. 2 cleanings/yr). Populated on 93,608 rows. This is the analysis-ready frequency cap. | | benefit_amount | double | Intended dollar benefit/coverage cap. 100% NULL in this view — the dollar-allowance concept is NOT populated here (see numeric_amount_observability='offered_without_numeric_amounts'). Major trap: do not read a $ cap from this table. | | benefit_amount_kind | string | Intended kind of benefit_amount (allowance vs cap). 100% NULL. | | benefit_amount_period_code | string | Intended period code for benefit_amount. 100% NULL. | | benefit_amount_period_label | string | Intended period label for benefit_amount. 100% NULL. | | benefit_amount_annualized | double | Intended annualized dollar benefit. 100% NULL. | | benefit_amount_pmpm | double | Intended per-member-per-month dollar benefit. 100% NULL. | | normalization_status | varchar(14) | Governance flag: 'normalized' (216,478 — limit normalized via CMS periodicity code) or 'not_applicable' (14,990 — the B16A sub-rows with no limit quantity). | | normalization_basis | varchar(34) | Why/how normalized: 'cms_periodicity_code' (limit converted using the period code) or 'no_limit_quantity_in_source_stripe'. Two values only. | | aggregation_policy | varchar(42) | CONSTANT = 'separate_components' — each dental sub-benefit/section is kept as its own row rather than aggregated. Explains the multi-row-per-plan grain. | | offered_status | varchar(15) | CONSTANT = 'offered' — every row represents an offered benefit (the view does not carry not-offered placeholders). | | numeric_amount_observability | varchar(31) | CONSTANT = 'offered_without_numeric_amounts' for all rows. Confirms the benefit_amount dollar family is structurally empty in this dental view. | | null_amount_reason | string | Why a numeric amount/limit is null: 'offered_no_numeric' (134,508), 'not_null_numeric_amount' (70,978 — actually has a copay), 'inherited_limit_elsewhere' (25,982 — limit applies on a sibling component). Useful for interpreting nulls. | | annualization_policy | varchar(17) | CONSTANT = 'not_numeric' (no dollar amount to annualize, consistent with empty benefit_amount). | | combined_limit_policy | varchar(29) | CONSTANT = 'none_detected' — no cross-component combined-limit collapsing applied. | | consumer_document_reconciliation_status | varchar(11) | CONSTANT = 'not_checked' — these PBP values have NOT been reconciled against consumer documents (SB/EOC). Treat as source-faithful bid data, not consumer-verified. | | confidence_tier | varchar(23) | CONSTANT = 'source_faithful' — values are faithfully carried from the CMS bid, no inference/enrichment beyond decoding. | | benefit_layer | string | | | cost_share_populated_in_bid | boolean | Boolean: did the bid actually populate a cost share? true on 84,533 rows (aligns exactly with cost_share_string being non-null), false on 146,935. Use to distinguish 'no cost share filed' from 'free'. | | dental_blanket_filing | boolean | | | dental_card_amount | double | | | dental_card_group_index | string | | | dental_card_group_name | string | | | dental_card_period_code | string | | | dental_coinsurance_max | double | | | dental_coinsurance_min | double | | | dental_comprehensive_benefit_type_code_cy2025 | string | CMS Mandatory/Optional supplemental-benefit type CODE for COMPREHENSIVE dental, CY2025 layout. Populated ONLY for report_year 2025-2026 (B16C rows). NULL otherwise. | | dental_comprehensive_benefit_type_label_cy2025 | string | Decoded label for the above: Mandatory / Optional / Both / Additional. Only 2025-2026. | | dental_comprehensive_diagnostic_type_code | string | Pre-CY2025 comprehensive-diagnostic benefit-type code. Populated for report_year <=2024 (the older B16 sub-field), NULL for 2025+. | | dental_comprehensive_diagnostic_type_label | string | Decoded Mandatory/Optional/Both/Additional label for the pre-2025 comprehensive-diagnostic field (<=2024). | | dental_comprehensive_max | double | | | dental_comprehensive_max_csg_group | string | | | dental_comprehensive_max_in_csg | boolean | | | dental_comprehensive_offered_package | string | | | dental_copay_max | double | | | dental_copay_min | double | | | dental_cost_share_basis | string | | | dental_deductible_amount | double | | | dental_deductible_applies | boolean | | | dental_diagnostic_benefit_type_code | string | Pre-CY2025 diagnostic benefit-type code (report_year <=2024). | | dental_diagnostic_benefit_type_code_cy2025 | string | CY2025-layout diagnostic benefit-type code (B16B rows, report_year 2025-2026 only). | | dental_diagnostic_benefit_type_label | string | Decoded label (Mandatory/Optional/Both/Additional) for the pre-2025 diagnostic field. | | dental_diagnostic_benefit_type_label_cy2025 | string | Decoded label for the CY2025 diagnostic field (2025-2026). | | dental_enrollee_max_amount | double | | | dental_enrollee_max_applies | boolean | | | dental_limit_desc | string | | | dental_limit_per_year_from_desc | double | | | dental_limit_periodicity_label | string | EXACT DUPLICATE of limit_period_label (same values/counts: 'Every year', 'Every six months', etc.). Redundant convenience column. | | dental_limit_unlimited | boolean | | | dental_max_basis | string | | | dental_max_scope | string | | | dental_max_unlimited | boolean | | | dental_offered | boolean | | | dental_offered_package | string | | | dental_office_visit_coinsurance_pct | double | | | dental_office_visit_copay | double | | | dental_office_visit_cost_share_applies | boolean | | | dental_optional_only | boolean | | | dental_oral_exam_benefit_type_code | string | Pre-CY2025 oral-exam benefit-type code (report_year <=2024). No CY2025 counterpart column. | | dental_oral_exam_benefit_type_label | string | Decoded Mandatory/Optional/Both/Additional label for oral exam (<=2024). | | dental_package_id | string | | | dental_package_name | string | | | dental_package_type_code | string | | | dental_package_type_label | string | | | dental_preventive_care_benefit_type_code | string | Pre-CY2025 preventive-care benefit-type code (report_year <=2024). | | dental_preventive_care_benefit_type_label | string | Decoded Mandatory/Optional/Both/Additional label for preventive care (<=2024). | | dental_preventive_max | double | | | dental_preventive_max_csg_group | string | | | dental_preventive_max_in_csg | boolean | | | dental_preventive_offered_package | string | | | dental_row_grain | varchar(15) | | | dental_service_benefit_type_code | string | | | dental_service_benefit_type_label | string | | | dental_service_code | string | | | dental_service_codes_offered | string | | | dental_service_codes_optional | string | | | dental_service_group | string | | | dental_service_id | string | | | dental_service_label | string | | | dental_service_scope | string | | | dental_sub_benefit | string | Which dental sub-benefit the row describes: NULL='overall' (B16, 186,498 rows), 'medicare_covered' (B16A), 'diagnostic_preventive' (B16B), 'comprehensive' (B16C). Maps 1:1 to source_pbp_section, so it is redundant WITH the grain key, not additive. | | dental_targeting | varchar(36) | | | frequency_per_year_annualized | double | Annualized frequency limit (double, 0.33-8.0). Same population (93,608) and range as limit_quantity_per_year — its frequency twin. NULL when no quantified frequency. | | source_pbp_section | varchar(4) | The PBP section/sub-section the row came from and the benefit-component axis of the grain: B16 (overall dental, all years), B16A (Medicare-covered), B16B (diagnostic/preventive), B16C (comprehensive). B16A/B/C exist ONLY for 2025-2026. | | source_silver_table | string | CONSTANT = 'medicare_silver.pbp_section_b16_dental' — the upstream silver table this view is built from. | | lmi_authorities | string | Local-Market-Intelligence authority tags. EMPTY STRING '' for every row (LMI enrichment is not applied to this PBP dental view). | | source_url | string | Provenance: the CMS PBP-benefits ZIP this snapshot was extracted from (e.g. 'https://www.cms.gov/files/zip/pbp-benefits-2025.zip', '.../pbp-benefits-2023-quarter-4.zip'). One distinct URL per report_year/quarter. | | sha256_content_hash | string | Content hash of the source record for provenance/dedup integrity. Not a business key. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_dental WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_dental")` first. # PBP dme (cleaned view) `medicare_semantic.vw_pbp_dme` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP dme rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for dme (vs **Grain.** One row per Medicare Advantage plan segment, per CMS PBP release (report_year + quarter), per DME sub-benefit (dme / prosthetics / medical_supplies). Verified minimal unique key = (contract_id, plan_id, segment_id, report_year, quarter, dme_sub_benefit): all 604,464 rows are distinct on this key with zero duplicates, and it is exactly 201,488 plan-snapshots x 3 sub-benefits = 604,464. The profiler failed to find the grain because it never tested dme_sub_benefit (the column that triples each plan-snapshot). **How to use it.** Get the current in-network DME enrollee cost share for every MA plan: SELECT contract_id, plan_id, segment_id, dme_sub_benefit, cost_share_string, coinsurance_pct, coinsurance_pct_min, coinsurance_pct_max, copay_amount, auth_required FROM vw_pbp_dme WHERE report_year = 2026 AND quarter = 1 AND dme_sub_benefit = 'dme'. Answers 'what does each Medicare Advantage plan charge a member for durable medical equipment this year, and does it need prior auth?' For a time trend, drop the year filter and group by report_year (remembering quarter republications). Join to plan/enrollment dims on (contract_id, plan_id, segment_id) to weight by membership. **Traps.** - NO is_current / as_of column and the table is CUMULATIVE across every CMS release 2001-2026 (a single plan appears in up to 21 years). To get 'today's' benefits you MUST filter to the latest (report_year, quarter) yourself — e.g. report_year=2026. Forgetting this multiplies every plan by ~25 snapshots. - Time is report_year + quarter, NOT just quarter. The profiler's temporal block reports quarter (1-4) as the time column with 'earliest 1.0 / latest 4.0' — that is wrong/misleading; the real history axis is report_year (2001-2026) with quarter as a within-year republication. Early years are Q1-only; 2018+ have multiple quarters. - A large block of columns is 100% NULL because they are template scaffolding from the shared PBP semantic-view shape that DME never fills: limit_text, max_oop_applies, referral_required, all limit_* (limit_quantity/unit/period_code/period_label/quantity_per_year), all benefit_amount_* (amount/kind/period_code/period_label/annualized/pmpm), normalization_status, normalization_basis, aggregation_policy. Do not treat these as usable fields here. limit_period_code and benefit_amount_period_code showed up as profiler 'candidate keys' ONLY because all-NULL columns collapse — they are not keys. - Nine columns are single-value CONSTANTS across all 604,464 rows and carry no row-level signal: benefit_category='dme', network_type='in_network', offered_status='offered', numeric_amount_observability='offered_without_numeric_amounts', null_amount_reason='unknown_requires_crosswalk', annualization_policy='not_numeric', combined_limit_policy='none_detected', consumer_document_reconciliation_status='not_checked', confidence_tier='source_faithful'. (confidence_tier and offered_status also appeared in the profiler's candidate-key set despite being constants.) - Cost share is coinsurance-dominated and expressed as a RANGE, not a single number. coinsurance_pct is always the floor (equals coinsurance_pct_min in 100% of non-null rows); coinsurance_pct_max can be higher (65,661 rows) because one row rolls up many DME line items with differing coinsurance. copay_amount is non-null on only 58K rows and is $0 ~96% of the time. cost_share_string is NULL on 109K rows but copay/coinsurance/has_* can still carry signal — NULL string != no benefit. - The has_* boolean flags are derived INDEPENDENTLY of the headline cost_share_string and are nullable: has_coinsurance can be True even when the string says only '$0 copay' (it reflects sub-item coinsurance), and any has_* may be NULL = unknown, not False. auth_required is tri-state too: 367K true / 52K false / 185K NULL where NULL means not-specified, not 'no'. - version is the PBP submission/amendment version (0-27) and is NOT part of the grain — the row is already deduped to one per snapshot. Do not add it to a join key expecting finer grain. Also segment_id has an EMPTY-STRING '' value (15,222 rows, only 2001-2005) that means the same as '0' (unsegmented); treat '' and '0' as equivalent or you will split/lose legacy plans. dme_sub_benefit is 100% redundant with source_pbp_section (B11A/B/C) — use either, not both, as a dimension. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage / Part D contract ID (e.g. 'H0022','H0028'). 1,972 distinct. Part of grain. Join key to plan/contract dims. | | plan_id | string | Plan benefit package ID within the contract (e.g. '001','007','804'), zero-padded 3-char string. 656 distinct values but only unique WITHIN a contract. Part of grain. | | segment_id | string | Plan segment ID. Mostly '0' (unsegmented, 544K rows); 1-6 for geographically segmented plans; EMPTY STRING '' for legacy 2001-2005 rows (15,222) which also means unsegmented. Part of grain. Treat '' and '0' as equivalent. | | version | double | CMS PBP submission/amendment version number for that plan-year filing (double, 0-27). NOT part of the grain (already deduped to one row per snapshot). Higher = more amended; mass concentrated at 0-5. | | report_year | double | Contract/benefit year of the CMS PBP release (double, 2001-2026). The primary time axis. Part of grain. 2026 is forward-looking (next plan year already published). | | quarter | double | CMS release quarter within report_year (double, 1-4). Most early years have only Q1; 2018+ have multiple quarterly republications. Part of grain. NOTE: profiler mislabeled this as the only time column — true history is report_year+quarter. | | benefit_category | string | Top-level benefit family. CONSTANT = 'dme' for every row (this view is DME-only). Use dme_sub_benefit to distinguish the three DME sub-services. | | cost_share_string | string | Human-readable consumer-facing cost share, e.g. '20.0%','$0 copay','$0 copay + 10.0%','0.0%'. NULL for 109,317 rows (cost share not expressed as a simple string for that plan/vintage). Headline summary; copay_amount/coinsurance_pct are the parsed numerics. | | copay_amount | double | Parsed flat-dollar copay (double). Non-null only 58,135 rows; of those ~96% are $0.0, tail up to $50. DME is rarely copay-based. NULL = no copay component parsed (not necessarily $0). | | coinsurance_pct | double | Headline coinsurance percentage (double, 0-50). Non-null 452,116 rows. Modal value 20%. Equals coinsurance_pct_min in 100% of non-null cases (it is the floor of the band). | | limit_text | string | 100% NULL across all 604,464 rows. Template scaffolding inherited from the shared PBP semantic-view shape; DME populates no benefit-limit text. | | auth_required | boolean | Prior authorization required for the DME service (boolean). 367,072 true / 52,115 false / 185,277 NULL. NULL is meaningful = not specified in that vintage, NOT 'false'. | | referral_required | boolean | 100% NULL. Template column; DME section does not capture referral requirements. | | network_type | varchar(10) | Network tier the cost share applies to. CONSTANT = 'in_network' for every row. (No out-of-network rows in this DME view.) | | max_oop_applies | boolean | 100% NULL. Template column; whether benefit counts toward MOOP is not populated for DME. | | limit_quantity | double | 100% NULL. Template scaffolding; no DME quantity limit captured. | | limit_unit | string | 100% NULL. Template scaffolding (would name the unit for limit_quantity). | | limit_period_code | string | 100% NULL. Template scaffolding (period code for a quantity limit). Appeared as a 'candidate key' in the profiler purely because all-NULL collapses, NOT a real key. | | limit_period_label | string | 100% NULL. Human label counterpart of limit_period_code; unused for DME. | | limit_quantity_per_year | double | 100% NULL. Template scaffolding for an annualized quantity limit; unused for DME. | | benefit_amount | double | 100% NULL. Template scaffolding (a benefit dollar allowance, e.g. for OTC/flex cards). DME has no allowance amount. | | benefit_amount_kind | string | 100% NULL. Would classify benefit_amount (allowance/limit/etc); unused for DME. | | benefit_amount_period_code | string | 100% NULL. Period code for benefit_amount; unused. Also a false 'candidate key' (all-NULL). | | benefit_amount_period_label | string | 100% NULL. Human label for benefit_amount period; unused for DME. | | benefit_amount_annualized | double | 100% NULL. Annualized benefit_amount; unused for DME. | | benefit_amount_pmpm | double | 100% NULL. Per-member-per-month benefit_amount; unused for DME. | | normalization_status | string | 100% NULL in this view. Would describe numeric-amount normalization; not applied because DME carries no numeric amounts here. | | normalization_basis | string | 100% NULL. Basis for normalization; unused for DME. | | aggregation_policy | string | 100% NULL. How multiple line items were aggregated; unused (superseded by combined_limit_policy/coinsurance band columns). | | offered_status | varchar(15) | Whether the plan offers the benefit. CONSTANT = 'offered' for every row (this view only materializes offered DME benefits). | | numeric_amount_observability | varchar(31) | CONSTANT = 'offered_without_numeric_amounts'. Declares that DME is offered but the source PBP B11 expresses cost share (copay/coinsurance) without dollar benefit amounts — explains why the benefit_amount/limit families are all NULL. | | null_amount_reason | varchar(30) | CONSTANT = 'unknown_requires_crosswalk'. The standardized reason the dollar amounts are absent (a HCPCS/fee-schedule crosswalk would be needed to dollarize). | | annualization_policy | varchar(17) | CONSTANT = 'not_numeric'. No annualization performed because there is no numeric amount to annualize. | | combined_limit_policy | varchar(29) | CONSTANT = 'none_detected'. No combined/shared benefit limit detected across the DME sub-benefits. | | consumer_document_reconciliation_status | varchar(11) | CONSTANT = 'not_checked'. The cost share has not been reconciled against consumer documents (SB/EOC). | | confidence_tier | varchar(23) | CONSTANT = 'source_faithful'. Data is taken faithfully from the CMS source with no inference layer applied. (Listed as a candidate key by the profiler but it is a single constant.) | | coinsurance_pct_max | double | Upper bound of the coinsurance range across the underlying DME line items (double). Non-null 468,428. When > min, the plan charges different coinsurance for different DME items rolled into this one row. | | coinsurance_pct_min | double | Lower bound of the coinsurance range (double). Non-null 452,116. Always equals the headline coinsurance_pct. 386,455 rows have min=max (single rate); 65,661 have a real band. | | copay_amount_max | double | | | copay_amount_min | double | | | dme_sub_benefit | string | Which of the three DME sub-services this row is: 'dme' (durable medical equipment, B11A), 'prosthetics' (B11B), or 'medical_supplies' (B11C). Exactly 201,488 rows each. THE column that completes the grain — every plan-snapshot has all 3. Fully redundant with source_pbp_section. | | has_coinsurance | boolean | Flag: any coinsurance present across line items (boolean, nullable). 502,095 true. Can be True even when the headline string shows only '$0 copay' (reflects sub-item coinsurance), and can be NULL. | | has_copay | boolean | Flag: any copay component present across the DME line items (boolean, nullable). 84,074 true. Independently derived — can be True even when cost_share_string shows no copay, and can be NULL. | | has_deductible | boolean | Flag: a benefit-specific deductible applies (boolean). Almost always false — only 222 true rows. Rare DME deductible cases. | | has_max_enrollee_oop | boolean | Flag: a max enrollee out-of-pocket on this benefit (boolean). Almost always false — only 1,463 true. | | has_preferred_vendor_or_mfr | boolean | Flag: plan steers to a preferred DME vendor/manufacturer (boolean, nullable). 120,500 true. Often NULL. Signals network/vendor restriction on DME. | | source_pbp_section | varchar(4) | CMS PBP source section: 'B11A' (DME), 'B11B' (prosthetics), 'B11C' (medical supplies). One-to-one with dme_sub_benefit. | | source_silver_table | varchar(51) | Upstream silver table this view is built from. CONSTANT = 'medicare_silver.pbp_section_b11_dme_prosth_orth_sup' for all rows. Lineage pointer. | | lmi_authorities | string | URL to the LMI CMS MA Benefits Mailbox PBP Service Category Descriptions PDF (the official benefit-definition authority). CONSTANT across rows. Provenance/definition reference. | | source_url | string | CMS PBP-benefits ZIP download URL for this snapshot, e.g. 'https://www.cms.gov/files/zip/pbp-benefits-2026.zip'. Exactly one URL per (report_year, quarter). Provenance. | | sha256_content_hash | string | SHA-256 of the source content for this snapshot. Exactly one hash per (report_year, quarter). Integrity/provenance fingerprint. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_dme WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_dme")` first. # PBP D-SNP cost-share flag (cleaned view) `medicare_semantic.vw_pbp_dsnp_cost_share` · Medicare Advantage, Part D, Medicaid · status live · 18,874 rows The D-SNP zero-dollar cost-share flag (2017 on) and the legacy dual population code (2008-2016) per plan and plan year, from PBP section A. Filed design; not what a dual pays after Medicaid. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(45) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | varchar(34) | | | benefit_amount_period_code | varchar(25) | | | benefit_amount_period_label | varchar(29) | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(33) | | | normalization_basis | varchar(37) | | | aggregation_policy | varchar(35) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | cost_share_reduced_to_zero_yn | boolean | | | dsnp_cost_share_offered | boolean | | | dsnp_cost_share_present | boolean | | | dsnp_cost_share_sub_benefit | string | | | dsnp_part_d_lics_buydown_attestation_code | string | | | dsnp_part_d_lics_buydown_attestation_label | string | | | dsnp_part_d_lics_buydown_code | string | | | dsnp_part_d_lics_buydown_label | string | | | dsnp_zero_dollar_cost_share_yn | boolean | | | dual_effective_coinsurance_pct | double | | | dual_effective_copay | double | | | dual_effective_cost_share | double | | | dual_effective_zero_basis | string | | | filed_zero_cost_share_raw_code | string | | | filed_zero_cost_share_source_field | varchar(21) | | | snp_population_code | string | | | snp_type_code | string | | | snp_type_label | varchar(13) | | | state_covers_all_medicare_cost_share_yn | boolean | | | zero_cost_share_scope | varchar(33) | | | source_pbp_section | varchar(1) | | | source_silver_table | varchar(29) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_dsnp_cost_share WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_dsnp_cost_share")` first. # PBP emergency urgent (cleaned view) `medicare_semantic.vw_pbp_emergency_urgent` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP emergency urgent rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surfac **Grain.** One row per (MA plan-segment, report year, quarter, emergency-vs-urgent sub-benefit). Concretely: each distinct (contract_id, plan_id, segment_id, report_year, quarter) appears exactly twice — once for the emergency_room sub-benefit (from PBP section B4A) and once for urgent_care (from B4B). There are 201,488 such plan-period keys, each producing 2 rows = 402,976 total rows (verified: max rows per key = 1, zero duplicate keys). network_type and benefit_category are NOT part of the key — they are constants for the whole table. **How to use it.** To compare ER vs urgent-care member cost exposure for current MA plans: SELECT emergency_urgent_sub_benefit, approx_percentile(copay_amount,0.5) AS median_copay, count_if(coinsurance_pct IS NOT NULL) AS plans_using_coinsurance FROM vw_pbp_emergency_urgent WHERE report_year = 2026 AND quarter = 1 GROUP BY emergency_urgent_sub_benefit. This returns ~$127 median ER copay vs ~$35 median urgent-care copay (2026), and how many plans use coinsurance instead of a flat copay. Always pin report_year (and quarter for 2018+) and split by emergency_urgent_sub_benefit. To look up one plan: filter contract_id, plan_id, segment_id, report_year, quarter and you get the two rows (ER and urgent care) with copay_amount/coinsurance_pct plus copay_waived_if_admitted. **Traps.** - Grain is per-sub-benefit, NOT per-plan: every (contract, plan, segment, year, quarter) yields TWO rows (emergency_room + urgent_care). Always filter emergency_urgent_sub_benefit (or source_pbp_section B4A/B4B) before reasoning about cost — otherwise you double-count plans and blend ~$127 ER copays with ~$35 urgent-care copays. 201,488 plan-period keys -> 402,976 rows. - A large block of columns is 100% NULL placeholders inherited from a shared PBP template and must NOT be used here: auth_required, referral_required, max_oop_applies, the entire limit_* family (limit_text/quantity/unit/period_code/period_label/quantity_per_year), the entire benefit_amount_* family (incl. benefit_amount_pmpm/annualized), normalization_status, normalization_basis, aggregation_policy. The real payload is copay_amount, coinsurance_pct (+min/max), cost_share_string, the copay/coinsurance waiver fields, and the has_* flags. - Many 'metadata' columns are single-value constants across all 402,976 rows and cannot be used as filters/dimensions: benefit_category='emergency_urgent', network_type='in_network', offered_status='offered', numeric_amount_observability='offered_without_numeric_amounts', null_amount_reason='unknown_requires_crosswalk', annualization_policy='not_numeric', combined_limit_policy='none_detected', consumer_document_reconciliation_status='not_checked', confidence_tier='source_faithful', source_silver_table, lmi_authorities. network_type='in_network' for ALL rows because emergency/urgent care is covered at in-network rates by law — there is no out-of-network cost-share dimension to query. - has_deductible NULL carries meaning: it is NULL for every report_year <= 2016 (flag not derivable then) and only true/false from 2017+. Treat pre-2017 NULL as 'unknown', never as 'no deductible'. Similarly has_copay/has_coinsurance are NULL on the oldest rows (~22K) where the flag set could not be derived. - 'version' looks like a snapshot key but is already collapsed: exactly one distinct version per plan-period key, so the view is pre-deduped to the winning filing iteration — do NOT add version to your grain or try to filter to a 'latest version'. There is no is_current column; snapshot identity is (report_year, quarter) and source_url/sha256 (40 distinct releases). - Type traps in the waiver fields: copay_waiver_days_per_year, coinsurance_waiver_days_per_year, and max_visits_per_period are STRINGS holding float text like '24.0' (cast before arithmetic), whereas copay_waiver_max_visits_within is a proper double. segment_id has an empty-string '' value (10,148 rows) that is a real key value distinct from '0' — do not coalesce it to NULL. Time axis: the profiler tags 'quarter' as the time column but report_year is the real history (2001-2026); quarter is the intra-year refresh (always 1 pre-2018, 1-4 after, with some genuine missing year/quarter snapshots e.g. 2020-Q3, 2024-Q2). | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract identifier (H/R/E/S-prefixed, e.g. H0084, E5088). 1,972 distinct. First component of the plan key. | | plan_id | string | Plan benefit package ID within the contract (zero-padded 3-char, e.g. '001','801'). 656 distinct values. Unique only in combination with contract_id (and segment_id). | | segment_id | string | Plan segment (service-area sub-division). Mostly '0' (363K rows = single-segment plans). Note: empty string '' also occurs (10,148 rows) as a distinct value alongside '0','1','2'... — treat '' as its own key value, not as NULL. | | version | double | PBP filing iteration that this row came from (double, 0-27; lower-numbered versions dominate). Snapshot/provenance metadata only — NOT part of the grain. There is exactly one distinct version per plan-period key; the view has already collapsed to the winning iteration, so you do NOT need to (and should not) filter or dedup on version. | | report_year | double | MA benefit/contract year the cost-share applies to (double, 2001-2026). This is the primary time axis; row volume grows over time (~1.5K rows in 2001 to ~62K in 2023). | | quarter | double | Intra-year PBP refresh quarter (double 1-4). Always 1 for years <=2017 (annual filings); 1-4 from 2018+ when CMS went quarterly. Part of the snapshot identity, not a fiscal quarter of cost. The profiler mislabels this as the 'time column' — report_year is the real history axis. | | benefit_category | string | Constant = 'emergency_urgent' for every row. A view-level tag identifying this slice of the PBP semantic layer; carries no per-row information. | | cost_share_string | string | Human-readable cost-share as parsed from the PBP, e.g. '$50.0 copay', '20.0%', '$0 copay'. NULL on ~35.6K rows where no structured cost-share was extracted. Convenience/display field; the machine-usable values live in copay_amount / coinsurance_pct. | | copay_amount | double | Flat-dollar copay the enrollee pays for the visit (double). Populated when the plan uses a copay; NULL when the plan uses coinsurance instead (or neither). Economically distinct by sub-benefit: 2026 ER median ~ $127 (max $150), urgent_care median ~ $35 (max $65). | | coinsurance_pct | double | Percent-of-cost coinsurance the enrollee pays (double, 0-50; median 20). Populated when the plan charges coinsurance instead of a flat copay; mutually-exclusive-ish with copay_amount (some plans have both). | | limit_text | string | ALWAYS NULL in this table (0 non-null rows). Placeholder column inherited from the shared PBP semantic template; emergency/urgent benefits carry no quantity-limit text. Do not use. | | auth_required | boolean | ALWAYS NULL (0 non-null). Prior-authorization flag is not captured for emergency/urgent benefits (CMS does not allow PA for emergencies). Schema-conformance placeholder. | | referral_required | boolean | ALWAYS NULL (0 non-null). Referral flag not applicable/captured for this benefit. Placeholder. | | network_type | varchar(10) | Constant = 'in_network' for every row. Emergency/urgent care is covered at the in-network level by law regardless of where rendered, so there is no out-of-network split here. Not a usable filter. | | max_oop_applies | boolean | ALWAYS NULL (0 non-null). Whether the benefit counts toward the plan MOOP is not populated in this view. Placeholder. | | limit_quantity | double | ALWAYS NULL (0 non-null). No visit/quantity caps modeled for emergency/urgent. Placeholder. | | limit_unit | string | ALWAYS NULL (0 non-null). Companion to limit_quantity; unused here. | | limit_period_code | string | ALWAYS NULL (0 non-null). Period code for a quantity limit; unused for this benefit. | | limit_period_label | string | ALWAYS NULL (0 non-null). Human label for limit_period_code; unused. | | limit_quantity_per_year | double | ALWAYS NULL (0 non-null). Annualized quantity limit; unused for this benefit. | | benefit_amount | double | ALWAYS NULL (0 non-null). This view models enrollee cost-SHARE (what the member pays), not a plan benefit allowance, so the benefit_amount family is empty. Placeholder from the template. | | benefit_amount_kind | string | ALWAYS NULL (0 non-null). Placeholder; see benefit_amount. | | benefit_amount_period_code | string | ALWAYS NULL (0 non-null). Placeholder. | | benefit_amount_period_label | string | ALWAYS NULL (0 non-null). Placeholder. | | benefit_amount_annualized | double | ALWAYS NULL (0 non-null). Placeholder. | | benefit_amount_pmpm | double | ALWAYS NULL (0 non-null). Per-member-per-month benefit value; not applicable to a cost-share view. Placeholder. | | normalization_status | string | ALWAYS NULL (0 non-null). Numeric-normalization status field from the template; this view did not run amount normalization (annualization_policy='not_numeric'). Placeholder. | | normalization_basis | string | ALWAYS NULL (0 non-null). Placeholder. | | aggregation_policy | string | ALWAYS NULL (0 non-null). Placeholder. | | offered_status | varchar(15) | Constant = 'offered' for every row. Every row represents a benefit the plan offers; there are no 'not_offered' rows in this view. | | numeric_amount_observability | varchar(31) | Constant = 'offered_without_numeric_amounts'. A provenance tag meaning: the benefit is offered and cost-share copay/coinsurance are captured, but no normalized numeric benefit allowance exists (consistent with the empty benefit_amount family). | | null_amount_reason | varchar(30) | Constant = 'unknown_requires_crosswalk'. Explains why the benefit_amount fields are null (would need an external crosswalk to value). Constant, so informational only. | | annualization_policy | varchar(17) | Constant = 'not_numeric'. No annualization was applied because there is no numeric benefit amount. Constant. | | combined_limit_policy | varchar(29) | Constant = 'none_detected'. No combined/shared limit across sub-benefits was detected. Constant. | | consumer_document_reconciliation_status | varchar(11) | Constant = 'not_checked'. These rows have not been reconciled against consumer-facing plan documents (EOC/SB). Constant — signals the cost-share is source-faithful to the PBP, not independently verified. | | confidence_tier | varchar(23) | Constant = 'source_faithful'. Data is faithfully reproduced from the CMS PBP source (the highest-fidelity tier here); no inference/imputation applied. Constant. | | coinsurance_max_per_visit_amount | double | | | coinsurance_pct_max | double | Upper bound of the coinsurance percent when the source expresses a range; equals coinsurance_pct when it is a single value. Populated only when coinsurance_pct is populated. | | coinsurance_pct_min | double | Lower bound of the coinsurance range; equals coinsurance_pct for single values. ~1,213 rows have min != max (true ranges). | | coinsurance_waived_if_admitted | boolean | Boolean: the coinsurance is waived if the ER visit results in inpatient admission. Populated only on coinsurance rows; NULL on copay-only rows. | | coinsurance_waiver_admit_window | double | | | coinsurance_waiver_admit_window_unit | string | | | coinsurance_waiver_days_per_year | string | STRING (not numeric) holding the number of days within which admission waives the coinsurance, e.g. '24.0'. Populated on ~80,241 rows. Note the float-in-string typing — cast if used numerically. | | copay_amount_max | double | Upper bound of the copay when expressed as a range; equals copay_amount for single values. Populated only when copay_amount is populated. | | copay_amount_min | double | Lower bound of the copay range; equals copay_amount for single values. | | copay_waived_if_admitted | boolean | Boolean: the ER copay is waived if the visit leads to inpatient admission (a common MA provision). TRUE on the majority of copay rows; NULL on coinsurance-only rows; FALSE where the plan does not waive. | | copay_waiver_admit_window | double | | | copay_waiver_admit_window_unit | string | | | copay_waiver_days_per_year | string | STRING holding the days-window for the copay waiver, e.g. '24.0','0.0','72.0'. NULL where not applicable. Float-in-string — cast for arithmetic. | | copay_waiver_max_visits_within | double | Double: max number of visits within the waiver window for which the copay is waived (commonly 1.0 or 2.0). Populated alongside the copay waiver fields. | | counts_toward_plan_deductible | boolean | | | emergency_urgent_package_id | string | | | emergency_urgent_package_match_basis | string | | | emergency_urgent_package_name | string | | | emergency_urgent_package_type_code | string | | | emergency_urgent_package_type_label | string | | | emergency_urgent_sub_benefit | string | THE row discriminator: 'emergency_room' (from PBP B4A) or 'urgent_care' (from B4B). Exactly splits the table 201,488 / 201,488. Always filter on this to separate ER cost-share from urgent-care cost-share; deterministically 1:1 with source_pbp_section. | | emergency_urgent_targeting | string | | | has_coinsurance | boolean | Boolean convenience flag: plan charges coinsurance for this benefit. Can be NULL on the oldest rows where the flag set wasn't derivable. | | has_copay | boolean | Boolean convenience flag: plan charges a flat copay. ~195K rows are copay-only (has_copay=true, has_coinsurance=false). NULL on the ~22K oldest rows where flags weren't derivable. | | has_deductible | boolean | Boolean: a deductible applies to this benefit. NULL-MEANS-SOMETHING: it is NULL for ALL years <=2016 (the deductible flag was not tracked/extractable then) and only populated true/false from report_year 2017 onward. Do not interpret a pre-2017 NULL as 'no deductible'. | | has_max_enrollee_oop | boolean | Boolean: a max enrollee out-of-pocket applies to this benefit. Almost always FALSE; a small number TRUE. | | max_visits_per_period | string | STRING holding a visit cap per period where one exists (float-in-string). Populated on ~78,013 rows; NULL otherwise. Distinct from the (always-null) limit_quantity family. | | supplemental_benefit_type | string | | | supplemental_benefit_type_code | string | | | worldwide_max_plan_benefit_yn | boolean | | | source_pbp_section | varchar(3) | CMS PBP section the row came from: 'B4A' (=emergency_room) or 'B4B' (=urgent_care). Deterministically redundant with emergency_urgent_sub_benefit (1:1). 3-char varchar. | | source_silver_table | varchar(56) | Constant = 'medicare_silver.pbp_section_b4_emerg_urgent'. The upstream silver table this view is built from; lineage pointer. | | lmi_authorities | string | Constant: pipe-delimited LMI authority document URLs (CY2026 PBP Service Category Descriptions PDF + Part C Bid Review Memorandum) used to define/validate this benefit category. Provenance/citation, identical on every row. | | source_url | string | CMS PBP PUF download URL for the year's release (e.g. .../pbp-benefits-2012.zip). 40 distinct URLs = 40 distinct source releases (one per year/quarter snapshot). Provenance of the raw file. | | sha256_content_hash | string | SHA-256 of the source release file content (40 distinct, 1:1 with source_url). Content-integrity / dedup fingerprint of the ingested PBP file. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_emergency_urgent WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_emergency_urgent")` first. # PBP fitness benefit (cleaned view) `medicare_semantic.vw_pbp_fitness` · Medicare Advantage, Part D, Medicaid · status live · 171,479 rows Fitness benefits per plan and plan year from PBP section B14c: offered status, the fitness types (activity tracker, physical fitness, memory fitness), mandatory or optional, copay and coinsurance, the benefit amount with its period and annualized value, with the raw filed fields kept. Built by the benefits lane (Lane CI, 2026-09-29) as a versioned view; the bare name is a pointer to the newest version. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category, fitness_sub_benefit) cleaned row; 171,479 rows, report_year 2012-2026, 1,594 contracts (measured 2026-09-29, Athena 24b0afde). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | fitness_sub_benefit | string | | | fitness_offered | boolean | | | offered_status | varchar(29) | | | fitness_type_activity_tracker | boolean | | | fitness_type_physical_fitness | boolean | | | fitness_type_memory_fitness | boolean | | | fitness_mandatory_optional | varchar(9) | | | copay_amount_max | double | | | copay_amount | double | | | copay_basis | varchar(33) | | | coinsurance_pct | double | | | benefit_amount | double | | | benefit_amount_period_code | string | | | benefit_amount_period_label | varchar(18) | | | benefit_amount_annualized | double | | | source_pbp_section | string | | | source_silver_table | string | | | source_url | string | | | sha256_content_hash | string | | | offered_basis | varchar(28) | | | fitness_targeting | string | | | fitness_offered_any_members | boolean | | | fitness_package_targeting | string | | | fitness_package_ids | string | | | fitness_package_names | string | | | fitness_package_in_ssbci_list | boolean | | | fitness_package_copay_amount_filed | double | | | fitness_package_source_view | string | | | section_d_group_index | int | | | section_d_group_name | string | | | section_d_group_amount | double | | | section_d_group_period_code | string | | | section_d_group_period_label | string | | | section_d_group_amount_annualized | double | | | section_d_group_category_codes | string | | | section_d_group_count | bigint | | | section_d_group_link_basis | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_fitness WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_fitness")` first. # PBP health professionals (cleaned view) `medicare_semantic.vw_pbp_health_professionals` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP health professionals rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning su **Grain.** One row per Medicare Advantage plan-segment per benefit snapshot per professional-visit type. The MINIMAL verified-unique key is (contract_id, plan_id, segment_id, report_year, quarter, health_professionals_sub_benefit). Verified: GROUP BY on these 6 columns yields 342,958 groups with max group size = 1, exactly equal to the 342,958 total rows; dropping ANY one of the 6 reduces the distinct count (so none is removable). In words: each MA plan-segment contributes exactly two rows per PBP snapshot — one for primary_care and one for specialist. network_type, source_pbp_section, and version add no distinctness (all functionally determined by the key), so they are NOT part of the grain. **How to use it.** Get the current $0-PCP-copay landscape: SELECT contract_id, plan_id, segment_id, copay_amount, coinsurance_pct, cost_share_string FROM medicare_semantic.vw_pbp_health_professionals WHERE health_professionals_sub_benefit='primary_care' AND report_year=2026 AND quarter=1 AND copay_amount=0. Answers: which MA plan-segments offer a $0 primary-care visit in the 2026 plan year. (Always pin report_year + quarter to one snapshot; otherwise you mix 15 years of history.) **Traps.** - The grain is finer than it looks: it needs health_professionals_sub_benefit. Each plan-segment-snapshot has TWO rows (primary_care + specialist). The table profiler's proposed key (with limit_period_code, benefit_amount_period_code) is wrong — those columns are 100% NULL here. Correct minimal key = contract_id+plan_id+segment_id+report_year+quarter+health_professionals_sub_benefit (342,958 rows, verified max-group=1). - No is_current / latest-snapshot column. This is append-only snapshot history: every (report_year, quarter) is retained and a plan appears many times (e.g. H0028/004 specialist copay went $5→$25→$40→$35 across years). To get current cost share, filter to MAX(report_year) and the latest quarter yourself; do NOT aggregate raw across years or you double-count the same plan. - report_year (2012–2026) is the real time axis; quarter (1–4) is intra-year and IRREGULAR (2012–2017 = Q1 only; later years have 2–4 quarters, and some quarters are missing, e.g. 2020 has no Q3). Within a single year, the same plan repeats across quarters with usually-identical values. - Massive null-column trap: the entire limit_* and benefit_amount_* family, plus normalization_*, aggregation_policy, max_oop_applies, are 100% NULL (schema shared with sibling benefit views). And many status columns are single-valued CONSTANTS (offered_status='offered', confidence_tier='source_faithful', numeric_amount_observability='offered_without_numeric_amounts', null_amount_reason='unknown_requires_crosswalk', network_type='in_network', benefit_category='health_professionals'). Don't filter/segment on these expecting variation. - Cost-share nulls are semantically split: has_copay/has_coinsurance/has_deductible NULL (17,072 rows) means the cost share could NOT be parsed (always co-occurs with cost_share_string NULL) — different from explicit False ('no copay' was determined). copay_amount=0.0 is a REAL $0 copay (very common MA benefit), not missing. auth_required/referral_required NULL (~half of rows) means 'not captured', not 'no'. And copay_amount can differ from copay_amount_min/max (13,491 rows) — use min/max to detect tiered copays, not the single copay_amount. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract id (e.g. H0028). 1,594 distinct. Part of grain. Letter prefix (H/R/S) = contract type. | | plan_id | string | Plan id (PBP number) within the contract, e.g. '004'. Zero-padded 3-char string. 656 distinct values but NOT unique alone; identity = contract_id+plan_id (16,758 distinct plans). Part of grain. | | segment_id | string | Plan segment id (geographic/benefit segment), e.g. '0','1','2'. 26 distinct values; most plans are single-segment '0'. contract+plan+segment = 18,050 distinct plan-segments. Part of grain. | | version | double | CMS PBP plan record version (bid resubmission number), 1.0–27.0. Functionally determined by the grain (0 grain-combos have >1 version), so it is a per-row attribute, NOT a dedup/snapshot axis. Higher numbers are rarer (later resubmissions). | | report_year | double | Benefit/plan year, 2012.0–2026.0 (15 years). THIS is the real history axis. Stored as double. | | quarter | double | PBP PUF release quarter within the year (1.0–4.0). Intra-year snapshot marker, NOT the primary time axis. Coverage is irregular: 2012–2017 have only Q1; later years have 2–4 quarters (e.g. 2020 has Q1,Q2,Q4 — no Q3). Together (report_year, quarter) = the snapshot. | | benefit_category | string | CONSTANT = 'health_professionals' for all 342,958 rows. View tag; carries no information here. | | cost_share_string | string | Human-readable rendering of the member cost share, e.g. '20.0%', '$0 copay', '$40.0 copay', or combos like '$40.0 copay + 20.0%'. NULL for 64,046 rows (cost share not specified/unparseable). Most common: '20.0%' (95,109), '$0 copay' (60,933). | | copay_amount | double | Representative member copay in USD, 0–60, median ~$12. Populated for 181,195 rows. 0.0 is a REAL value ($0 copay, very common in MA). NOT necessarily the only copay — see copay_amount_min/max for ranges. | | coinsurance_pct | double | Representative member coinsurance percent, 0–40, median 20. Populated for 98,556 rows. A plan typically has copay OR coinsurance (only 1,076 rows have both flags). | | limit_text | string | 100% NULL in this view. Shared schema column for benefit-quantity limits used by sibling benefit views; health-professional visits have no such limits. | | auth_required | boolean | Prior authorization required for the visit (boolean). NULL for a large share (~53% of rows when combined with referral) meaning NOT captured, not 'false'. Distribution: True+no-referral 73,074; True+referral 37,180; many NULLs. | | referral_required | boolean | Referral required to see this professional (boolean). NULL = not captured. Specialists more often require referral. | | network_type | varchar(10) | CONSTANT = 'in_network' for all rows. This view holds only in-network cost share; out-of-network is not represented here. | | max_oop_applies | boolean | 100% NULL. Schema-shared flag, not populated for this benefit. | | limit_quantity | double | 100% NULL in this view (no visit-count limits captured). | | limit_unit | string | 100% NULL in this view. | | limit_period_code | string | 100% NULL in this view. NOTE: the table profiler proposed this as a grain key — it is useless (all-null); ignore it for grain. | | limit_period_label | string | 100% NULL in this view. | | limit_quantity_per_year | double | 100% NULL in this view. | | benefit_amount | double | 100% NULL in this view. (Health professionals = cost-share benefit, not a dollar-allowance benefit like OTC/flex.) | | benefit_amount_kind | string | 100% NULL in this view. | | benefit_amount_period_code | string | 100% NULL in this view. Also wrongly proposed as a grain key by the profiler — ignore. | | benefit_amount_period_label | string | 100% NULL in this view. | | benefit_amount_annualized | double | 100% NULL in this view. | | benefit_amount_pmpm | double | 100% NULL in this view. | | normalization_status | string | 100% NULL in this view. | | normalization_basis | string | 100% NULL in this view. | | aggregation_policy | string | CONSTANT NULL for all rows. | | offered_status | varchar(15) | CONSTANT = 'offered' for all rows. Every row here is an offered benefit (the view contains only offered health-professional benefits). | | numeric_amount_observability | varchar(31) | CONSTANT = 'offered_without_numeric_amounts'. Declares that the benefit is offered but the source did not always carry a clean numeric amount (explains the copay/coinsurance NULLs). | | null_amount_reason | varchar(30) | CONSTANT = 'unknown_requires_crosswalk'. When a numeric amount is null, the stated reason is that a crosswalk is needed — uniform for the whole view. | | annualization_policy | varchar(17) | CONSTANT = 'not_numeric'. No annualization performed (no dollar allowance to annualize). | | combined_limit_policy | varchar(29) | CONSTANT = 'none_detected'. No combined/shared limits detected for this benefit. | | consumer_document_reconciliation_status | varchar(11) | CONSTANT = 'not_checked'. Values have NOT been reconciled against consumer-facing plan documents (Summary of Benefits). | | confidence_tier | varchar(23) | CONSTANT = 'source_faithful'. Data is a faithful pass-through of the CMS PBP source (no enrichment/inference applied). | | benefit_layer | string | | | benefit_unlimited | boolean | | | coinsurance_pct_max | double | Upper bound of a coinsurance RANGE. Populated for 98,556 rows; differs from coinsurance_pct_min in only 1,929 rows (i.e. usually a single value). | | coinsurance_pct_min | double | Lower bound of the coinsurance range. | | copay_amount_max | double | Upper bound of a copay RANGE. Use this (with min) to detect tiered/varying copays: copay_amount differs from min/max in 13,491 rows. | | copay_amount_min | double | Lower bound of the copay range. When equal to copay_amount and copay_amount_max (167,704 of 181,195 copay rows), the plan has a single copay. | | deductible_amount | double | | | deductible_basis | string | | | filed_service_name | string | | | has_coinsurance | boolean | Flag: plan charges coinsurance. NULL for the same 17,072 unparsed rows. copay and coinsurance are usually mutually exclusive. | | has_copay | boolean | Flag: plan charges a copay. True 187,908; False 124,978; NULL 17,072. NULL ALWAYS co-occurs with cost_share_string NULL = cost share could not be parsed at all (flags never set), distinct from explicit False (parsed 'no copay'). | | has_deductible | boolean | Flag: a deductible applies to this benefit. Almost always False (True only 2 rows); NULL for the 17,072 unparsed rows. | | has_max_enrollee_oop | boolean | Flag: a max enrollee out-of-pocket applies. True only 109 rows; False 325,753; NULL 17,096. Effectively near-constant False. | | health_professionals_offered | boolean | | | health_professionals_sub_benefit | string | The professional-visit type: exactly two values, 'primary_care' (171,479) and 'specialist' (171,479). PART OF GRAIN — this is what splits each plan-segment-snapshot into 2 rows. 1:1 with source_pbp_section (B7A=primary_care, B7C=specialist). | | label_note | string | | | limit_period_text | string | | | max_enrollee_oop_amount | double | | | max_enrollee_oop_period_code | string | | | max_enrollee_oop_period_label | string | | | max_enrollee_oop_period_text | string | | | max_plan_benefit_amount | double | | | max_plan_benefit_offered | boolean | | | max_plan_benefit_period_code | string | | | max_plan_benefit_period_label | string | | | registry_l2_id | string | | | routine_chiropractic_unlimited | boolean | | | routine_podiatry_offered | boolean | | | routine_podiatry_unlimited | boolean | | | routine_podiatry_visit_count | double | | | routine_podiatry_visit_period_code | string | | | routine_podiatry_visit_period_label | string | | | routine_podiatry_visits_per_year | double | | | supplemental_benefit_type | string | | | telehealth_service_categories | string | | | source_pbp_section | varchar(3) | CMS PBP section code, exactly 'B7A' (primary_care) or 'B7C' (specialist). Perfectly 1:1 with health_professionals_sub_benefit, so redundant with it. | | source_silver_table | varchar(42) | CONSTANT = 'medicare_silver.pbp_section_b7_health_prof'. The single upstream silver table feeding this view; lineage pointer. | | lmi_authorities | string | CONSTANT single value: pipe-delimited URLs to LMI/CMS CY2026 PBP Service-Category-Descriptions and Part-C Bid-Review reference PDFs. Definitional authority for the benefit category, same for every row. | | source_url | string | CMS PBP PUF zip download URL for that snapshot (e.g. pbp-benefits-2018-q4.zip). 29 distinct values = the 29 snapshot files; provenance for which release the row came from. | | sha256_content_hash | string | SHA-256 of the source file content. 29 distinct values, 1:1 with source_url — the immutable fingerprint of each ingested snapshot file. Provenance/audit, not a row id. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_health_professionals WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_health_professionals")` first. # PBP hearing (cleaned view) `medicare_semantic.vw_pbp_hearing` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP hearing rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for hea **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, hearing_sub_benefit) — i.e., one row per MA plan-segment, per benefit year, per CMS PBP PUF release-quarter, per hearing sub-benefit (routine exam, aid fitting/eval, Rx hearing aid by ear-type, OTC aid, batteries). This 6-column set is VERIFIED unique and minimal: it yields exactly 632,961 distinct combinations = the full row_count of 632,961, and dropping ANY one of the six breaks uniqueness (e.g. dropping quarter collapses to 366,850, dropping hearing_sub_benefit to 201,488). source_pbp_section is redundant given hearing_sub_benefit; version is functionally determined by the grain (every grain row has exactly 1 version) and is NOT a key. **How to use it.** Get current MA hearing-aid allowances for 2026: SELECT contract_id, plan_id, segment_id, benefit_amount, benefit_amount_period_label, benefit_amount_annualized, hearing_cap_per_ear_label FROM medicare_semantic.vw_pbp_hearing WHERE report_year=2026 AND quarter=1 AND hearing_sub_benefit='prescription_hearing_aids_all_types' AND hearing_offered AND normalization_status='normalized'. Answers 'what dollar amount does each MA plan allow toward prescription hearing aids this year, and over what period'. (Pin a single quarter to avoid the ~4x quarterly-snapshot duplication; gate normalization_status='normalized' to get real dollar allowances; read hearing_cap_per_ear_label before comparing the dollars.) **Traps.** - quarter is the CMS RELEASE quarter, not a coverage quarter. The same plan-year benefit is stored once PER quarterly re-publication, so a benefit identical all year appears as up to 4 near-duplicate rows that differ ONLY by quarter (verified: a 4-row group was byte-identical except quarter=1,2,3,4). There is NO is_current/is_latest column. To get one row per plan, pick a single (report_year, quarter) — e.g. the MAX(quarter) available for that year — before aggregating, or you will multiply-count plans by ~4x. - version looks like a key but is NOT: it is functionally determined by the grain (exactly 1 version per grain row) and the view already selects the applicable version. A single quarter shows 16-22 distinct version values only because different plans have different amendment counts. Never join on version or add it to a dedup key. - benefit_amount (plan dollar ALLOWANCE, e.g. $5,000 toward aids) and copay_amount/coinsurance_pct (member COST-SHARE, e.g. $50 exam copay) are two different economic concepts that mostly populate on different rows (allowance on B18B aids, copay on B18A exams). benefit_amount is NULL unless normalization_status='normalized' (~78k of 633k rows); a NULL is meaningful (see null_amount_reason: 'combined_limit_elsewhere' / 'not_offered'), not missing data. Also do NOT sum benefit_amount across a plan's hearing sub-benefits — aggregation_policy='component_or_shared_cap_do_not_sum' warns the cap may be shared. And ALWAYS read hearing_cap_per_ear_label before comparing allowances ('per ear' vs 'both ears combined' changes the effective dollar by ~2x). - The two B18A sub-benefits routine_hearing_exam and hearing_aid_fitting_evaluation are a deterministic FAN-OUT of one source row (identical 201,488 counts, same source column, same offered/copay). They are not independent benefits — counting both double-counts B18A. Likewise replacement_batteries exists ONLY in report_year 2001 (vestigial) and otc_hearing_aids / section B18C only from 2025 onward (the OTC regulatory change), so sub-benefit availability is era-dependent. - Many columns are DEGENERATE constants for the entire hearing view and carry zero filtering power: benefit_category='hearing', network_type='in_network', benefit_amount_kind='maximum_plan_benefit', normalization_basis='cms_periodicity_code', aggregation_policy, combined_limit_policy, consumer_document_reconciliation_status='not_checked', confidence_tier='source_faithful', source_silver_table, and lmi_authorities=''. Do not filter on them expecting variation. Conversely, NULLs in auth_required/referral_required/max_oop_applies mean 'unknown/not captured here' (raw auth lives in hearing_auth_raw), and hearing_offered_code can be NULL while hearing_offered_label='Yes' (3,803 derived OTC rows) — prefer the boolean hearing_offered as the clean coverage flag. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0150). 1,972 distinct. Part of grain. Join key to plan/enrollment tables. | | plan_id | string | Plan ID within the contract (e.g. 001). 656 distinct values but NOT unique on its own. Part of grain. | | segment_id | string | Plan segment (service-area split). Often empty string '' for pre-~2018 years and '0' later; 27 distinct. Part of grain — do NOT drop it (dropping it collapses 632,961→602,837). | | version | double | CMS bid/PUF version number for that plan within the release-quarter (1..22+). Functionally determined by the grain (exactly 1 version per grain row) — the view already picks the applicable version, so it is a snapshot tag, NOT a join key or grain dimension. Higher version counts in a quarter just reflect how many plans had that many amendments. | | report_year | double | Benefit/contract year the row describes (2001-2026). The primary time dimension (the profiler mislabels 'quarter' as the time column — use report_year). | | quarter | double | CMS PBP PUF RELEASE quarter (1-4) within report_year — which quarterly re-publication this snapshot came from, NOT a quarter of coverage. Mature years have all of 1-4; 2025/2026 currently only quarter 1. Part of grain because each quarterly release is retained as a separate row even when the benefit is identical across quarters. | | benefit_category | string | Constant literal 'hearing' for the whole view (this is the hearing slice of a broader PBP family of views). | | cost_share_string | string | Human-readable member cost-share, e.g. '$15.0 copay'. NULL when not offered or amount not specified. Parsed into copay_amount/coinsurance_pct. | | copay_amount | double | Member fixed-dollar copay to use the benefit (e.g. $50 for a routine hearing exam). Populated mainly for B18A exams. NULL for not_offered rows and for most aid rows that use an allowance instead. | | coinsurance_pct | double | Member coinsurance percentage (rare — only ~2,219 rows). NULL otherwise. | | limit_text | string | Raw frequency-limit text, e.g. '1.0 exams/3' (1 exam every 3rd period). Parsed into limit_quantity/limit_unit/limit_period_code. NULL when no limit specified. | | auth_required | boolean | Prior-authorization required flag. Largely NULL in this view (raw auth captured in hearing_auth_raw instead); treat NULL as unknown. | | referral_required | boolean | Referral-required flag. Largely NULL — unknown rather than false. | | network_type | varchar(10) | DEGENERATE: constant 'in_network' for all 632,961 rows. This view carries only in-network terms. | | max_oop_applies | boolean | Whether benefit counts toward MOOP. Largely NULL (unknown). | | limit_quantity | double | Numeric quantity of the frequency limit (e.g. 1.0 exams). NULL when no limit. | | limit_unit | string | Unit of the limit, e.g. 'exams', 'aids'. NULL when no limit. | | limit_period_code | string | CMS periodicity code for the limit (e.g. '3'). Decoded by limit_period_label. NULL when no limit. | | limit_period_label | string | Decoded limit period: 'Every year','Every three years','Every two years','Other, Describe', etc. NULL ~346,877 rows (no frequency limit captured). | | limit_quantity_per_year | double | Limit quantity normalized to a per-year basis (e.g. 1 exam/3yr is still stored; per-year derivation). NULL when not numeric/no limit. | | benefit_amount | double | The PLAN DOLLAR ALLOWANCE/CAP toward the benefit (kind = maximum_plan_benefit), e.g. $5,000 toward hearing aids. This is the coverage allowance, NOT member cost-share. Populated only when normalization_status='normalized' (~78k rows, mostly B18B aids); NULL otherwise (exams typically use copay instead). | | benefit_amount_kind | string | DEGENERATE: constant 'maximum_plan_benefit' — benefit_amount is always a max plan allowance, never a deductible/other kind. | | benefit_amount_period_code | string | CMS periodicity code for the allowance period. NULL when no allowance. | | benefit_amount_period_label | string | Decoded allowance period: 'Every year','Every two years','Every three years', etc. NULL when no dollar allowance (~554,532). | | benefit_amount_annualized | double | benefit_amount normalized to an annual figure (e.g. $5,000/2yr → $2,500/yr). Use this to compare allowances across plans with different cap periods. NULL when no allowance. | | benefit_amount_pmpm | double | Per-member-per-month dollarization of the allowance. Essentially always NULL in this view. | | normalization_status | varchar(24) | How the amount was normalized: 'normalized' (~78k, has a real benefit_amount), 'frequency_only_no_amount' (~234k, offered with a limit but no dollar amount), or 'not_populated' (~320k). Gate on ='normalized' when you need a dollar allowance. | | normalization_basis | varchar(43) | DEGENERATE: constant 'cms_periodicity_code' — period normalization is driven by CMS periodicity codes. | | aggregation_policy | varchar(60) | DEGENERATE: constant 'component_or_shared_cap_do_not_sum' — a WARNING flag: hearing components (exam vs fitting vs aid) may share a cap, so do NOT sum benefit_amount across the sub-benefit rows of one plan. | | offered_status | varchar(15) | 'offered' (387,680), 'not_offered' (205,787), or 'offered_unknown' (39,494). Mirrors hearing_offered. For not_offered rows all cost-share is NULL/zero; for offered_unknown nothing is populated. | | numeric_amount_observability | varchar(31) | Why amounts are/aren't present: 'offered_without_numeric_amounts' (~351k), 'not_offered' (~206k), 'all_offered_numeric' (~76k, has benefit_amount). | | null_amount_reason | string | Why benefit_amount is NULL: 'combined_limit_elsewhere' (shared cap, ~351k), 'not_offered' (~206k), or 'not_null_numeric_amount' (~76k = amount IS present). A NULL amount here is meaningful, not missing data. | | annualization_policy | varchar(17) | 'not_numeric' (~557k) or 'annualized_safe' (~76k, the annualized fields are trustworthy). | | combined_limit_policy | varchar(29) | DEGENERATE: constant 'shared_across_components' — limits/caps are shared across the hearing components. | | consumer_document_reconciliation_status | varchar(11) | DEGENERATE: constant 'not_checked' — these benefits have not been reconciled against consumer-facing plan documents. | | confidence_tier | varchar(23) | DEGENERATE: constant 'source_faithful' — every row is a faithful transcription of the CMS source (no inference/imputation tier present). | | coinsurance_pct_max | double | | | copay_amount_max | double | | | cost_share_populated_in_bid | boolean | Boolean: whether the cost-share fields were populated in the underlying bid. Helps distinguish a true $0/no-copay from a blank source. | | cost_share_zero_reason | string | | | hearing_aid_value_form | string | | | hearing_amount_source | string | | | hearing_auth_raw | string | Raw CMS auth indicator string, e.g. '00001','01000' (pre-2018 multi-select bitfield) — preserved verbatim; see hearing_auth_source_status for how to read it. | | hearing_auth_source_status | varchar(43) | How to interpret hearing_auth_raw: 'pre_2018_multiselect_or_post_2018_binary_12' (~618k) vs 'post_2025_binary_12' (~15k, OTC). Code semantics changed across eras — do not compare raw auth strings across this boundary. | | hearing_benefit_family | string | High-level family: 'hearing_exam', 'prescription_hearing_aid', 'otc_hearing_aid', 'hearing_aid_accessory'. Coarser than hearing_sub_benefit. | | hearing_benefit_type_code | string | CMS benefit-type code: 1=Additional, 2=Mandatory, 3=Optional, 4=Both. NULL (~293k) where the source did not classify (e.g. older/exam rows). Decoded by hearing_benefit_type_label. | | hearing_benefit_type_label | string | Decoded benefit type: 'Mandatory'(327k),'Optional','Additional','Both'. NULL ~293k. ('Mandatory' = basic/required supplemental, 'Optional' = buy-up). | | hearing_cap_network_scope | string | | | hearing_cap_per_ear_code | string | How the dollar cap is scoped per ear: 1=Per ear, 2=One single ear, 3=Both ears combined. NULL (~579k) when no cap. Decoded by hearing_cap_per_ear_label. | | hearing_cap_per_ear_label | string | Decoded cap scope: 'Both ears combined','Per ear','One single ear'. NULL when no cap. CRITICAL for interpreting benefit_amount (a $2,000 'per ear' cap ≈ $4,000/both). | | hearing_cap_present | boolean | Boolean: whether a dollar cap exists for this benefit. | | hearing_cap_reference_code | string | What the cap references: 1=Covered under Hearing Exams Category 18a, 2=Plan-specified amount per period. NULL (~561k) when no cap. | | hearing_cap_reference_label | string | Decoded cap reference: 'Plan-specified amount per period' (most), 'Covered under Hearing Exams Category - 18a'. NULL when no cap. | | hearing_cap_source | varchar(37) | Which category the cap is sourced from: 'hearing_exam_category_cap' (B18A), 'prescription_hearing_aid_category_cap' (B18B), 'otc_hearing_aid_cap' (B18C). Tracks the section the cap belongs to. | | hearing_limit_unlimited | boolean | Boolean: benefit is explicitly unlimited (no frequency cap). True ~53k. | | hearing_limit_unlimited_code | string | CMS code 1=Yes(unlimited)/2=No. NULL (~293k) where not specified. Decoded by hearing_limit_unlimited_label. | | hearing_limit_unlimited_label | string | 'Yes'/'No' (unlimited?). NULL where not specified. | | hearing_offered | boolean | Boolean: is this hearing sub-benefit offered by the plan. True(387,680)/False(205,787)/NULL(39,494=unknown). The primary 'is it covered' flag. | | hearing_offered_code | string | Raw CMS offered code 1=Yes/2=No. NULL ~43,297. NOTE: can be NULL while hearing_offered_label='Yes' for 3,803 OTC rows (derived from other signals) — see gotchas. | | hearing_offered_label | varchar(3) | 'Yes'/'No' offered. Yes=387,680 / No=205,787 / NULL=39,494. Slightly more 'Yes' than the raw code has (3,803 derived) — prefer hearing_offered (boolean) as the clean flag. | | hearing_otc_indicator | boolean | Boolean: row is an OTC hearing-aid benefit. True only ~14,990 rows (B18C, 2025+). NULL for all non-OTC rows. | | hearing_otc_indicator_code | string | OTC code 1=Yes. NULL for non-OTC rows (~617,971). | | hearing_otc_indicator_label | string | 'Yes' for OTC rows; NULL otherwise. | | hearing_package_id | string | | | hearing_package_name | string | | | hearing_package_type_code | string | | | hearing_pooled_group_amount | double | | | hearing_pooled_group_category_codes | string | | | hearing_pooled_group_period_code | string | | | hearing_rx_otc_choice_code | string | | | hearing_rx_otc_choice_required | boolean | | | hearing_section_d_group_index | int | | | hearing_section_d_group_name | string | | | hearing_service_selected_in_18a | boolean | | | hearing_sub_benefit | string | THE finest benefit dimension and part of grain. 8 values: routine_hearing_exam, hearing_aid_fitting_evaluation (these two are a deterministic fan-out of B18A — identical counts 201,488 each), prescription_hearing_aids_all_types, prescription_hearing_aids_over/inner/outer_ear, otc_hearing_aids (2025+), replacement_batteries (2001 ONLY). | | hearing_targeting | varchar(36) | | | source_amount_column | string | Provenance: the raw PBP column the amount came from, e.g. 'pbp_b18a_maxplan_amt'. Maps row to its source field. | | source_period_column | string | Provenance: the raw PBP period column, e.g. 'pbp_b18a_maxplan_per'. | | source_pbp_section | string | PBP section: B18A (exams, 402,976), B18B (Rx aids, 214,995), B18C (OTC aids, 14,990). Redundant with hearing_sub_benefit (derivable) — NOT needed in the grain. | | source_silver_table | varchar(63) | DEGENERATE: constant 'medicare_silver.pbp_section_b18_hearing_exams_aids' — the single upstream silver table this view is built from. | | lmi_authorities | string | EMPTY ('') for all 632,961 rows — the LMI (lawful-monetary-interpretation/authority) annotation is not populated for the hearing view. Do not rely on it here. | | source_url | string | The CMS PBP PUF download URL the row came from (e.g. .../pbp-benefits-2001.zip). 40 distinct = 40 file releases, 1:1 with (report_year,quarter). | | sha256_content_hash | string | Content hash of the source file. 40 distinct, 1:1 with source_url and (report_year,quarter) — identifies the exact CMS release/snapshot for provenance. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_hearing WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_hearing")` first. # PBP home health (cleaned view) `medicare_semantic.vw_pbp_home_health` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP home health rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for **Grain.** One row per MA plan-benefit-package per PBP filing snapshot for the home-health benefit, i.e. one row per (contract_id, plan_id, segment_id, report_year, quarter). All 5 columns are load-bearing and minimal: dropping any one breaks uniqueness (drop_segment -> 191,793; drop_year -> 59,740; drop_quarter -> 114,175 distinct, vs total). Verified: COUNT(DISTINCT those 5) = 201,488 = row_count exactly. home_health_sub_benefit, network_type, benefit_category and version are all functionally dependent (version never splits a snapshot: 0 plan-year-quarters have >1 version) and add nothing to the key. **How to use it.** To get the current-year in-network home-health cost-share for every MA plan, deduping the redundant quarterly snapshots: SELECT contract_id, plan_id, segment_id, copay_amount, has_copay, has_coinsurance, auth_required, referral_required FROM medicare_semantic.vw_pbp_home_health WHERE report_year = 2026 (2026 has a single annual snapshot = 7,420 plan rows; of these 3,455 specify a copay - 3,447 of them $0 - and 1,295 use coinsurance). For multi-snapshot years (e.g. 2023) add a quarter filter such as AND quarter = 1, or wrap in ROW_NUMBER() OVER (PARTITION BY contract_id,plan_id,segment_id ORDER BY quarter DESC, version DESC) = 1, to avoid double-counting plans. Answers: 'what does each MA plan charge a member for home health, and does it require prior auth/referral, for a given year?' **Traps.** - GRAIN TRAP - quarter is a re-release index, not a calendar quarter, and snapshots are REDUNDANT: for 2018-2020/2022-2024 a plan appears under 2-4 quarterly snapshots whose copay never drifts (0 of 38,598 multi-quarter plan-years differ). Querying without deduping inflates plan counts ~2x for those years. To get one row per plan-year, filter to one quarter (e.g. WHERE quarter = 1) or qualify by ROW_NUMBER over quarter DESC. There is NO is_current / latest flag — you must pick the snapshot yourself. - COINSURANCE IS A DEAD END FOR NUMBERS: coinsurance_pct is 100% NULL even though has_coinsurance=TRUE on 39,227 rows. You can tell a plan USES coinsurance but you cannot get the percent from this table. Likewise benefit_amount and its entire annualized/pmpm/period family are 100% NULL (home health carries no $-allowance), as are all limit_* columns. - COPAY COVERAGE IS PARTIAL AND $0-DOMINATED: copay_amount is populated on only 79,807/201,488 rows (40%); 96% of those are $0 (home health is $0 under Original Medicare). A NULL copay does NOT mean $0 - it means either a coinsurance plan or cost-share-not-captured. Do not impute 0 for nulls. - MANY 'POLICY' COLUMNS ARE DEGENERATE/MISLEADING IN THIS VIEW: numeric_amount_observability ('offered_without_numeric_amounts'), null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status ('not_checked'), confidence_tier ('source_faithful'), offered_status, benefit_category, network_type, home_health_sub_benefit, source_pbp_section, source_silver_table, lmi_authorities each have exactly ONE value across all rows. In particular numeric_amount_observability='offered_without_numeric_amounts' is self-contradictory here (40% have copay numbers) - it describes the benefit_amount family, not copay. Never filter on these expecting variety. - NULLS ENCODE VINTAGE, NOT ABSENCE: auth_required is ~100% NULL for report_year 2001-2017 then populated 2018+; has_copay/has_coinsurance are NULL on 10,175 older rows. A NULL flag means 'CMS PBP of that year did not capture this field', not 'no auth / no cost-share'. Cohort your analysis by report_year. Also consumer_document_reconciliation_status='not_checked' everywhere: these are raw PBP design values, NOT validated against published Summary-of-Benefits/EOC docs. - NOT A PAID-CLAIMS / FEE-SCHEDULE TABLE: this is MA plan BENEFIT-DESIGN member cost-share (copays/coinsurance flags) from CMS PBP filings - it is not what Medicare or the plan PAYS providers and is not a fee schedule. For provider-paid home-health amounts use the Medicare fee-schedule / claims sources, not this view. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0046, E5088). 1,972 distinct. Part of the grain key. 'H' = local MA/MA-PD, 'E'/'R' = employer/regional plans. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001','801'). 656 distinct values. Part of the grain key. NOT unique by itself. | | segment_id | string | Plan segment ID (e.g. '0'; 27 distinct). Distinguishes service-area segments of the same plan. Required for uniqueness — without it 9,695 rows collapse. | | version | double | PBP file submission/version number for that snapshot (1-27). 0 for vintages 2001-2006 where CMS did not record a version. Functionally dependent on the grain (one value per snapshot row); MAX(version) is the final restatement but it is NOT needed for uniqueness. | | report_year | double | Contract/benefit year the plan design applies to (2001-2026). This is the TRUE time axis of the table; periodicity is annual. | | quarter | double | PBP PUF quarterly RE-RELEASE index within report_year (1-4), NOT a calendar quarter of service. Most years = quarter 1 only; CMS published multiple quarterly snapshots for 2018-2020, 2022-2024. Load-bearing for row uniqueness but see gotcha: snapshots are redundant (copay never drifts across quarters), so it inflates plan counts ~2x for those years. | | benefit_category | string | Constant 'home_health' for all 201,488 rows. Degenerate in this view. | | cost_share_string | string | Human-readable cost-share, e.g. '$0 copay', '$10.0 copay'. NULL for 121,681 rows (60%) where no copay figure was captured (coinsurance plans + cost-share-unspecified rows). When present it mirrors copay_amount exactly. | | copay_amount | double | In-network home-health copay in dollars. Populated for only 79,807 rows (40%); the rest NULL. Heavily dominated by $0 (76,559 of 79,807 = 96%) because home health is $0 under Original Medicare and most MA plans mirror that; nonzero values 1-65. avg ~$0.69. | | coinsurance_pct | double | 100% NULL across the entire table. CRITICAL: even the 39,227 rows flagged has_coinsurance=TRUE have NO percent here — the actual coinsurance rate is NOT recoverable from this view. | | limit_text | string | Free-text benefit limit. 100% NULL in this view. | | auth_required | boolean | Boolean: prior authorization required. NULL for 49,700 rows — and the NULLs are almost entirely vintages 2001-2017 (those years are ~100% NULL); 2018+ is mostly populated. So NULL means 'field not captured in that PBP vintage', not 'no auth'. Where populated: TRUE 120,706, FALSE 19,082. | | referral_required | boolean | Boolean: referral required. Better populated than auth (NULL only 12,531). TRUE 53,884, FALSE 134,573 where known. | | network_type | varchar(10) | Constant 'in_network' for all rows. This view carries only the in-network cost-share; out-of-network is not represented. | | max_oop_applies | boolean | Boolean intended to flag max-OOP applicability. 100% NULL in this view — uninformative. | | limit_quantity | double | Numeric benefit limit quantity. 100% NULL in this view. | | limit_unit | string | Unit of the limit (e.g. visits). 100% NULL in this view. | | limit_period_code | string | Coded limit period. 100% NULL. (Was offered as a candidate key column by the profiler but is entirely null — a non-key.) | | limit_period_label | string | Human label for the limit period. 100% NULL in this view. | | limit_quantity_per_year | double | Annualized limit quantity. 100% NULL in this view. | | benefit_amount | double | Plan-provided benefit dollar allowance. 100% NULL in this view (home health has no $-allowance, unlike OTC/dental sibling views that share this schema). | | benefit_amount_kind | string | Kind/semantics of benefit_amount. 100% NULL here. | | benefit_amount_period_code | string | Coded period for benefit_amount. 100% NULL. (Profiler listed it as a candidate key column, but it is entirely null — not a real key.) | | benefit_amount_period_label | string | Human period label for benefit_amount. 100% NULL here. | | benefit_amount_annualized | double | Benefit allowance annualized. 100% NULL here. | | benefit_amount_pmpm | double | Benefit allowance per-member-per-month. 100% NULL here. | | normalization_status | string | Status of $-amount normalization. 100% NULL in this view (no numeric benefit amounts to normalize). | | normalization_basis | string | Basis used for normalization. 100% NULL here. | | aggregation_policy | string | How multiple amounts were aggregated. 100% NULL here. | | offered_status | varchar(15) | Constant 'offered' for all rows — every row is a plan that offers home health (the view does not carry 'not_offered' rows). | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' for ALL rows. MISLEADING: it refers to the benefit_amount ($-allowance) family (all null), NOT copay — 40% of rows DO have a numeric copay_amount. Treat as a degenerate/contradictory label in this view. | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' for all rows — the stated reason benefit_amount is null (needs an external crosswalk). Degenerate (single value). | | annualization_policy | varchar(17) | Constant 'not_numeric' for all rows (no $-amount to annualize). Degenerate. | | combined_limit_policy | varchar(29) | Constant 'none_detected' for all rows. Degenerate. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' for all rows — these values have NOT been reconciled against consumer-facing plan docs (SB/EOC). Degenerate but a real caveat: this is raw PBP, unverified vs. published documents. | | confidence_tier | varchar(23) | Constant 'source_faithful' for all rows — values are faithful to the source PBP file (not derived/imputed). Degenerate. | | coinsurance_pct_max | double | | | copay_amount_max | double | Upper bound of copay range (e.g. up to $20). Populated only where copay exists (79,807); avg ~0.98, so most plans have a single-value (min=max) copay. | | copay_amount_min | double | Lower bound of copay when a range is present; equals copay_amount in the simple case. Populated only where copay_amount is (79,807). avg ~0.69. | | has_coinsurance | boolean | Boolean: coinsurance applies. TRUE 39,227. But the % itself is always NULL (see coinsurance_pct) — this is a presence flag only. | | has_copay | boolean | Boolean: a copay is specified. TRUE 79,803 / FALSE 111,510 / NULL 10,175 (older vintages where flags weren't derived). Aligns with copay_amount being non-null (only 4 anomalous mismatches). | | has_deductible | boolean | Boolean: benefit subject to a deductible. TRUE for only 3 rows in the whole table — effectively always FALSE. | | has_max_enrollee_oop | boolean | Boolean: benefit counts toward the plan max-OOP. TRUE for only 16 rows — effectively always FALSE/uninformative here. | | home_health_sub_benefit | string | Sub-benefit label, constant 'home_health' for all rows. Degenerate here (the view does not split home health into visit sub-types). | | source_pbp_section | varchar(2) | Constant 'B6' — the CMS PBP form section for home health. Confirms provenance. | | source_silver_table | varchar(42) | Constant 'medicare_silver.pbp_section_b6_home_health' — the upstream silver table this view normalizes. | | lmi_authorities | string | Constant single value (pipe-delimited URLs to the CY2026 LMI MA-benefits reference PDFs: Service Category Descriptions + Part C Bid Review Memorandum). A static documentation pointer, identical on every row. | | source_url | string | CMS download URL for the originating PBP PUF zip (e.g. .../pbp-benefits-2026.zip, or .../pbp-benefits-2024-quarter-1.zip for quarterly years). 40 distinct values = 40 source files (one per report_year, or per year-quarter for 2018-2020/2022-2024). 1:1 with sha256_content_hash. | | sha256_content_hash | string | SHA-256 of the source file content for provenance/integrity. 40 distinct values, 1:1 with source_url (one hash per source PBP file release). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_home_health WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_home_health")` first. # PBP inpatient hospital (cleaned view) `medicare_semantic.vw_pbp_inpatient_hospital` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP inpatient hospital rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surf **Grain.** One row per Medicare Advantage plan-segment per CMS PBP release period. The minimal verified key is (contract_id, plan_id, segment_id, report_year, quarter): all 179,479 rows are distinct on this 5-column key with ZERO duplicate groups, and every combination appears exactly once. The profiler's 9-column key (adding limit_period_code, benefit_amount_period_code, confidence_tier, additional_days_benefit_type_code, additional_days_limit_code, benefit_period_code) was a superset — those extra columns are passenger attributes functionally determined by the plan-period, not grain discriminators. **How to use it.** Find the current inpatient out-of-pocket cost design for a specific MA plan: SELECT contract_id, plan_id, segment_id, cost_share_string, copay_amount, tier1_copay_interval1_end_day, tier1_copay_interval2_amount, has_coinsurance, auth_required, has_max_enrollee_oop FROM medicare_semantic.vw_pbp_inpatient_hospital WHERE contract_id='H0028' AND plan_id='014' AND report_year=2026 AND quarter=1; - returns one row: e.g. $375/day copay for days 1-7 then $0, prior-auth required, counts toward MOOP. To trend a market: GROUP BY report_year, AVG(copay_amount) WHERE copay_amount IS NOT NULL (remembering ~50% null and coinsurance plans excluded). Join to hospital/commercial rate tables on the MA plan to compare member cost share vs provider-paid inpatient rates. **Traps.** - Real grain is just (contract_id, plan_id, segment_id, report_year, quarter) - 179,479 rows, 0 duplicates. The profiler reported a 9-column superset; the extra period/code columns (limit_period_code, benefit_amount_period_code, confidence_tier, additional_days_*_code, benefit_period_code) are passengers, not key columns. Also: segment_id MUST be in the key (drop it and segmented plans collide), and 'version' is functionally determined by the plan-period (exactly 1 per grain) so it never splits rows. - Time dimension is report_year + quarter, NOT quarter alone. The profiler's 'temporal' block picked quarter (1-4) as the time column and reported earliest=1.0/latest=4.0 - that is wrong. True history is report_year 2010-2026 across 31 distinct year-quarter snapshots. Periodicity is quarterly in recent years but early years have only 1 release/year and there are gaps (e.g. 2020 missing Q3, 2024 missing Q2). - Roughly a third of all columns are dead scaffolding or fully NULL. 100%-NULL: coinsurance_pct, limit_text, max_oop_applies, the entire limit_* and benefit_amount_* families, additional_days_offered, inpatient_sub_benefit, normalization_*, aggregation_policy, benefit_amount_kind. Single-constant: benefit_category, network_type, offered_status, numeric_amount_observability, null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status, confidence_tier, source_pbp_section, source_silver_table, lmi_authorities. Notably offered_status='offered' is meaningless; the real offered signal is inpatient_offered (False for 60k rows). - Numeric cost is only ~50% populated and copays-only. copay_amount/cost_share_string are present for 90,411 rows; coinsurance is NEVER numerically captured (coinsurance_pct is 100% NULL, cost_share_string is always '$X copay'). The constants numeric_amount_observability='offered_without_numeric_amounts' and null_amount_reason='unknown_requires_crosswalk' explain it: ~36k coinsurance-based plans and many copay plans have the dollar amount un-extracted. So a NULL copay does NOT mean $0 - it means not-captured. copay_amount is exactly equal to tier1_copay_interval1_amount. - Boolean flags are tri-state and one is broken. auth_required/referral_required/inpatient_offered are True/False/NULL where NULL = not-captured (not 'no'). Critically, tier1_has_copay is unreliable/inverted: it is False for all 90,411 rows that actually have a numeric copay and True only for 5,705 rows with no copay - use copay_amount IS NOT NULL or has_copay to detect a copay, never tier1_has_copay. - Provenance columns are file-level, not row-level. sha256_content_hash, source_url, and the year-quarter are all 1:1 (31 each) - one CMS PBP-benefits ZIP per release. The hash identifies the source file, not the row, so it cannot dedup or key individual records. This view is benefit-DESIGN (member cost share) for the inpatient acute section B1A only; it is not provider-paid rates and not out-of-network, and the per-stay copay schedule is a per-DAY copay for an initial day band (e.g. days 1-5 at $325, then $0 through day 90), not a flat per-admission amount. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. 'H0028'); the H/R/S-number identifying the Medicare Advantage organization contract. 1,680 distinct. Grain key part 1. | | plan_id | string | Plan benefit package ID within the contract (e.g. '001','014'), 3-char zero-padded. 656 distinct values (repeats across contracts). Grain key part 2. (contract_id+plan_id) = the public plan identifier. | | segment_id | string | PBP service-area segment within the plan ('0'..'25'). '0' for 92% of rows (single-segment plans); >0 = geographically segmented benefit variants. Grain key part 3 - must be included or rows collide. | | version | double | CMS PBP file VERSION/revision number for that plan-period (1-27, right-skewed; the resubmission sequence). Functionally determined by the grain (exactly 1 version per plan-period) - a passenger attribute, NOT part of the key and NOT a Vlada snapshot marker. | | report_year | double | PBP contract/benefit year (double: 2010.0-2026.0, 17 distinct). Grain key part 4 - the real time dimension together with quarter. Cast to int for joins. | | quarter | double | CMS release quarter within report_year (1.0-4.0). Grain key part 5. NOTE: the profiler mislabeled this as THE time column; the true period is report_year+quarter. Not every year has 4 quarters. | | benefit_category | string | CONSTANT = 'inpatient_hospital' for all rows. Scaffolding/label, carries no signal here. | | cost_share_string | string | Human-readable cost share, e.g. '$325.0 copay'. Populated ~50% (90,411 rows, 292 distinct). ALWAYS a copay string - it NEVER expresses coinsurance (0 rows). NULL when no numeric copay was extracted. | | copay_amount | double | Per-day inpatient copay (USD) for the FIRST stay-day band. Range $0-$2,230, median ~$293. Populated 90,411 rows (~50%). EXACTLY equal to tier1_copay_interval1_amount (0 mismatches) - it is a convenience surface of that field. | | coinsurance_pct | double | 100% NULL across all rows. Placeholder - coinsurance percentages are NOT captured in this view even though ~36k plans are coinsurance-based. | | limit_text | string | 100% NULL. Dead placeholder column. | | auth_required | boolean | Prior authorization required for inpatient admission. Tri-state: True (125,337) / False (11,148) / NULL (42,994). NULL = not captured for that plan-period, NOT 'no'. | | referral_required | boolean | Referral required. Tri-state: False (123,980) / True (39,046) / NULL (16,453). NULL = not captured. | | network_type | varchar(10) | CONSTANT = 'in_network'. All rows are in-network terms; out-of-network is not represented in this view. Scaffolding. | | max_oop_applies | boolean | 100% NULL. Dead placeholder (use has_max_enrollee_oop instead for the MOOP flag). | | limit_quantity | double | 100% NULL. Dead placeholder. | | limit_unit | string | 100% NULL. Dead placeholder. | | limit_period_code | string | 100% NULL. Dead placeholder (the profiler listed it as a candidate key only because all-NULL is trivially constant). | | limit_period_label | string | 100% NULL. Dead placeholder. | | limit_quantity_per_year | double | 100% NULL. Dead placeholder. | | benefit_amount | double | 100% NULL. Dead placeholder - the entire benefit_amount_* normalization family is unpopulated in this view. | | benefit_amount_kind | string | 100% NULL. Dead placeholder. | | benefit_amount_period_code | string | 100% NULL. Dead placeholder. | | benefit_amount_period_label | string | 100% NULL. Dead placeholder. | | benefit_amount_annualized | double | 100% NULL. Dead placeholder. | | benefit_amount_pmpm | double | 100% NULL. Dead placeholder (per-member-per-month normalization not applicable/unpopulated here). | | normalization_status | string | 100% NULL. Dead placeholder. | | normalization_basis | string | 100% NULL. Dead placeholder. | | aggregation_policy | string | 100% NULL. Dead placeholder. | | offered_status | varchar(15) | CONSTANT = 'offered'. Scaffolding - do NOT use it to tell if inpatient is actually offered; use inpatient_offered (which is False for 60k rows). | | numeric_amount_observability | varchar(31) | CONSTANT = 'offered_without_numeric_amounts'. A view-level data-quality flag stating the dollar amounts are not fully observable from this section alone. Explains why ~50% of copay/coinsurance values are NULL. | | null_amount_reason | varchar(30) | CONSTANT = 'unknown_requires_crosswalk'. Documents WHY numeric amounts are missing: resolving them needs a join to the raw PBP crosswalk not yet applied. | | annualization_policy | varchar(17) | CONSTANT = 'not_numeric'. Scaffolding. | | combined_limit_policy | varchar(29) | CONSTANT = 'none_detected'. Scaffolding. | | consumer_document_reconciliation_status | varchar(11) | CONSTANT = 'not_checked'. Provenance flag: these benefits have not been reconciled against consumer-facing plan documents (Summary of Benefits). | | confidence_tier | varchar(23) | CONSTANT = 'source_faithful'. Means values are faithful to the raw PBP source (not editorially adjusted/inferred). | | additional_days_amount | double | Cost (USD) for inpatient 'additional days' (beyond the standard interval, e.g. lifetime-reserve-style extra days). Populated only 2,797 rows - exclusively when additional_days_limit_code='2' (avg ~$110, range $1-$274). NULL otherwise. | | additional_days_benefit_type_code | string | PBP code for the additional-days benefit type: '2' (dominant, 106k), '4' (37), '3' (2); NULL for 73k rows where additional-days terms weren't parsed. Raw CMS PBP code - meaning requires the PBP data dictionary. | | additional_days_benefit_type_label | string | | | additional_days_coinsurance_interval1_begin_day | double | | | additional_days_coinsurance_interval1_end_day | double | | | additional_days_coinsurance_interval1_pct | double | | | additional_days_coinsurance_interval2_begin_day | double | | | additional_days_coinsurance_interval2_end_day | double | | | additional_days_coinsurance_interval2_pct | double | | | additional_days_coinsurance_interval_count | string | | | additional_days_copay_amount | double | | | additional_days_copay_interval1_amount | double | | | additional_days_copay_interval1_begin_day | double | | | additional_days_copay_interval1_end_day | double | | | additional_days_copay_interval2_amount | double | | | additional_days_copay_interval2_begin_day | double | | | additional_days_copay_interval2_end_day | double | | | additional_days_copay_interval_count | string | | | additional_days_cost_share_basis | string | | | additional_days_cost_share_lowest_tier | string | | | additional_days_cost_share_string | string | | | additional_days_cost_share_tier_count | string | | | additional_days_cost_varies_by_tier | boolean | Boolean: whether additional-days cost varies by provider tier. Populated 92,388 rows. | | additional_days_limit_code | string | PBP code for the additional-days limit ('1' = standard/no extra cost dominant; '2' = the case where additional_days_amount is populated). NULL for 73k rows. | | additional_days_offered | boolean | 100% NULL. Dead placeholder (infer offering from the code columns instead). | | additional_days_tier2_coinsurance_interval1_begin_day | double | | | additional_days_tier2_coinsurance_interval_count | string | | | additional_days_tier2_copay_interval1_amount | double | | | additional_days_tier2_copay_interval1_begin_day | double | | | additional_days_tier2_copay_interval1_end_day | double | | | additional_days_tier2_copay_interval_count | string | | | additional_days_tier3_copay_interval_count | string | | | additional_days_unlimited | boolean | | | benefit_layer | varchar(38) | | | benefit_period_code | string | PBP benefit-period basis code: '3' (87,467, dominant, label not crosswalked), '1'='Per benefit period' (32,472), '2'='Per calendar year' (2,115), '4' (225, no label); NULL 57,200. Raw CMS code; the label column only resolves codes 1 and 2. | | benefit_period_label | string | Human label for benefit_period_code, but ONLY populated for codes 1 ('Per benefit period') and 2 ('Per calendar year'). NULL for the dominant code '3' and code '4' - partial crosswalk. | | benefit_period_other_text | string | | | coinsurance_structure_same_as_medicare_covered | boolean | | | copay_amount_max | double | | | copay_amount_max_resolved | double | | | copay_amount_min | double | | | copay_amount_min_resolved | double | | | copay_per_day_amount | double | | | copay_structure_same_as_medicare_covered | boolean | | | cost_share_basis | string | | | cost_share_lowest_tier | string | | | cost_share_tier_count | string | | | cost_share_varies_by_tier | boolean | Boolean: inpatient cost share varies by provider tier. Populated 155,766 rows (~87%). | | deductible_amount | double | | | has_coinsurance | boolean | Boolean: plan uses coinsurance for inpatient. True for 36,358 rows. These rows have NO numeric copay AND no captured coinsurance_pct - their dollar cost is uncaptured here. Populated 166,770 rows. | | has_copay | boolean | Boolean: plan uses a copay for inpatient. True 123,306 - but only ~73% of has_copay=True rows actually carry a numeric copay_amount (the rest are flagged-but-unextracted). Best presence signal alongside copay_amount IS NOT NULL. | | has_deductible | boolean | Boolean: inpatient deductible applies. Populated 166,770 rows. | | has_discharge_cost_share | boolean | Boolean: a per-discharge cost share applies. Populated 88,114 rows. | | has_max_enrollee_oop | boolean | Boolean: inpatient costs count toward the plan's max enrollee out-of-pocket. Populated 166,746 rows. Use this, NOT the dead max_oop_applies column. | | inpatient_hospital_in_package_category_list | boolean | | | inpatient_hospital_package_id | string | | | inpatient_hospital_package_match | string | | | inpatient_hospital_package_name | string | | | inpatient_hospital_package_type_code | string | | | inpatient_hospital_package_type_label | string | | | inpatient_hospital_targeted_file | string | | | inpatient_hospital_targeting | varchar(36) | | | inpatient_offered | boolean | Boolean: whether the plan ACTUALLY offers the inpatient acute benefit. True 106,323 / False 60,447 / NULL 12,709. THIS is the real 'is it offered' signal (offered_status is a meaningless constant). False rows are plans that don't offer/segment this benefit. | | inpatient_sub_benefit | varchar(49) | 100% NULL. Dead placeholder (this view is the single inpatient-acute benefit; no sub-benefit split populated). | | layer_benefit_type_code | string | | | layer_benefit_type_label | string | | | lifetime_reserve_day_copay_resolved | double | | | max_enrollee_oop_amount | double | | | max_enrollee_oop_period_code | string | | | original_medicare_cost_share_charged | boolean | | | part_a_deductible_amount_resolved | double | | | tier1_charges_medicare_defined_coinsurance | boolean | | | tier1_charges_medicare_defined_copay | boolean | | | tier1_coinsurance_interval1_begin_day | double | | | tier1_coinsurance_interval1_end_day | double | | | tier1_coinsurance_interval1_pct | double | | | tier1_coinsurance_interval2_begin_day | double | | | tier1_coinsurance_interval2_end_day | double | | | tier1_coinsurance_interval2_pct | double | | | tier1_coinsurance_interval3_begin_day | double | | | tier1_coinsurance_interval3_end_day | double | | | tier1_coinsurance_interval3_pct | double | | | tier1_coinsurance_interval_count | string | | | tier1_copay_interval1_amount | double | Tier-1 per-day copay for stay-day interval 1 (the first band, always beginning day 1). Identical to copay_amount. The canonical per-day inpatient copay. 90,411 non-null. | | tier1_copay_interval1_amount_resolved | double | | | tier1_copay_interval1_begin_day | double | Start day of interval 1. CONSTANT = 1.0 whenever populated (interval 1 always starts at admission day 1). | | tier1_copay_interval1_end_day | double | Last day of the interval-1 copay band (e.g. 5, 6, 7, 8...). 27 distinct values. Defines how many initial days carry the interval-1 copay (e.g. days 1-5 at $325). | | tier1_copay_interval2_amount | double | Per-day copay for interval 2 (days after interval 1, typically through day 90). Almost always 0.0 - the dominant MA design is 'copay days 1-5, then $0'. 89,843 non-null. | | tier1_copay_interval2_amount_resolved | double | | | tier1_copay_interval2_begin_day | double | Start day of interval 2 (= interval1_end_day + 1, e.g. 6, 7, 8). 89,843 non-null. | | tier1_copay_interval2_end_day | double | End day of interval 2 (typically 90, the inpatient benefit-period day cap). 89,843 non-null. | | tier1_copay_interval3_amount | double | | | tier1_copay_interval3_begin_day | double | | | tier1_copay_interval3_end_day | double | | | tier1_copay_interval_count | string | PBP-reported number of copay intervals as a STRING ('1','2','3','4'; dominant '3'). NULL for 70,429 rows. Note it's a code/count string, not the literal count of populated interval columns (only 2 intervals are exposed as columns). | | tier1_copay_per_stay_amount | double | | | tier1_has_coinsurance | boolean | Boolean: tier-1 uses coinsurance. Populated only 36,061 rows (roughly the coinsurance-based plans). NULL elsewhere. | | tier1_has_copay | boolean | UNRELIABLE / effectively inverted: it is False for 90,411 rows that DO carry a numeric copay, and True for only 5,705 rows (all with NO copay_amount). Do NOT use this to detect copay presence - use copay_amount IS NOT NULL or has_copay. | | tier1_lifetime_reserve_coinsurance_interval1_begin_day | double | | | tier1_lifetime_reserve_coinsurance_interval1_end_day | double | | | tier1_lifetime_reserve_coinsurance_interval1_pct | double | | | tier1_lifetime_reserve_coinsurance_interval2_begin_day | double | | | tier1_lifetime_reserve_coinsurance_interval2_end_day | double | | | tier1_lifetime_reserve_coinsurance_interval2_pct | double | | | tier1_lifetime_reserve_coinsurance_interval_count | string | | | tier1_lifetime_reserve_days_interval_count | string | PBP code/count (string '1'-'4', dominant '1') describing lifetime-reserve-days copay intervals for tier 1. NULL for 70,431 rows. | | tier1_lifetime_reserve_interval1_amount | double | | | tier1_lifetime_reserve_interval1_begin_day | double | | | tier1_lifetime_reserve_interval1_end_day | double | | | tier1_lifetime_reserve_interval2_amount | double | | | tier1_lifetime_reserve_interval2_begin_day | double | | | tier1_lifetime_reserve_interval2_end_day | double | | | tier1_lifetime_reserve_interval3_amount | double | | | tier1_lifetime_reserve_interval3_begin_day | double | | | tier1_lifetime_reserve_interval3_end_day | double | | | tier2_charges_medicare_defined_cost_share | boolean | | | tier2_copay_amount_max | double | | | tier2_copay_interval1_amount | double | | | tier2_copay_interval1_begin_day | double | | | tier2_copay_interval1_end_day | string | | | tier2_copay_interval2_amount | double | | | tier2_copay_interval2_begin_day | double | | | tier2_copay_interval2_end_day | double | | | tier2_copay_interval3_amount | double | | | tier2_copay_interval3_begin_day | double | | | tier2_copay_interval3_end_day | double | | | tier2_copay_interval_count | string | | | tier2_copay_per_stay_amount | double | | | tier2_lifetime_reserve_days_interval_count | string | | | tier2_lifetime_reserve_interval1_amount | double | | | tier2_lifetime_reserve_interval1_begin_day | double | | | tier2_lifetime_reserve_interval1_end_day | double | | | tier2_lifetime_reserve_interval2_amount | double | | | tier2_lifetime_reserve_interval2_begin_day | double | | | tier2_lifetime_reserve_interval2_end_day | double | | | tier3_charges_medicare_defined_cost_share | boolean | | | tier3_copay_interval1_amount | double | | | tier3_copay_interval1_begin_day | double | | | tier3_copay_interval1_end_day | double | | | tier3_copay_interval2_amount | double | | | tier3_copay_interval2_begin_day | double | | | tier3_copay_interval2_end_day | double | | | tier3_copay_interval_count | string | | | tier3_copay_per_stay_amount | double | | | tier3_lifetime_reserve_days_interval_count | string | | | tier3_lifetime_reserve_interval1_amount | double | | | tier3_lifetime_reserve_interval1_begin_day | double | | | tier3_lifetime_reserve_interval1_end_day | double | | | source_pbp_section | varchar(3) | CONSTANT = 'B1A' - the CMS PBP form section for Inpatient Hospital - Acute. Confirms provenance/section lineage. | | source_silver_table | string | CONSTANT = 'medicare_silver.pbp_section_b1a_inpat_hosp' - the upstream silver table this semantic view is built from. Lineage pointer. | | lmi_authorities | string | CONSTANT pipe-delimited string of LMI MA-benefits authority document URLs (CY2026 PBP Service Category Descriptions + Part C Bid Review Memorandum). Reference/methodology citations, identical on every row. | | source_url | string | CMS download URL of the originating PBP-benefits ZIP for that release (e.g. .../pbp-benefits-2010.zip, /files/zip/pbp-benefits-2026.zip). 31 distinct - exactly one per report_year+quarter snapshot. | | sha256_content_hash | string | Content hash of the source PBP file for provenance. 31 distinct, mapping 1:1 to year-quarter and to source_url - it is a FILE-level (per-release) hash, NOT a per-row hash. Do not treat it as a row identifier. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_inpatient_hospital WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_inpatient_hospital")` first. # PBP inpatient psychiatric (cleaned view) `medicare_semantic.vw_pbp_inpatient_psychiatric` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP inpatient psychiatric rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning s **Grain.** One row per MA plan-segment per quarterly PBP snapshot — i.e., one row per (contract_id, plan_id, segment_id, report_year, quarter). Verified unique: 193,172 distinct combinations = 193,172 rows, 0 duplicates, max 1 row per key. The same plan recurs across multiple quarterly snapshots and across years, so the table is a longitudinal stack of snapshots, NOT a current-state table. There are 23,191 distinct plan-segments and 1,838 distinct contracts across 2007-2026. **How to use it.** Compare what MA plans charge members for an inpatient psychiatric stay in the latest year. Example: get the current admission copay per plan — SELECT contract_id, plan_id, segment_id, copay_amount, tier_1_day_interval_1_copay, tier_1_day_count_per_interval, auth_required FROM medicare_semantic.vw_pbp_inpatient_psychiatric WHERE report_year = 2026 AND quarter = (SELECT max(quarter) FROM medicare_semantic.vw_pbp_inpatient_psychiatric WHERE report_year = 2026). To dedup a plan to its single most-recent snapshot across years, take the row with max (report_year, quarter) per (contract_id, plan_id, segment_id). Use copay_amount/tier_1_day_admission_copay IS NOT NULL to restrict to plans with a captured numeric copay. **Traps.** - Snapshot stacking, no is_current flag: the same plan appears in multiple quarterly snapshots — 17,470 plan-years appear in ALL 4 quarters, and many span 2-3. A plan-level query that does not pin (report_year, quarter) will multi-count plans (e.g. 2023 has 31,005 rows for only 7,766 plans). For current state, pick the latest (report_year, quarter) per (contract_id, plan_id, segment_id) — that yields exactly 23,191 rows, one per plan-segment. report_year (NOT quarter) is the benefit-year axis; the profiler mislabeled 'quarter' as the time column. - cost_share_string is malformed: rows like '$900.0 copay + 900.0%' duplicate the copay dollar figure as a fake coinsurance percent (900% is impossible). The structured columns are correct (has_coinsurance=FALSE, coinsurance_pct=NULL there); never parse the '+ N.N%' suffix as real coinsurance. coinsurance_pct is 100% NULL table-wide, so no usable coinsurance value exists even when has_coinsurance=TRUE (flag-only). - Many governance/limit columns are dead in this view: coinsurance_pct, limit_text, limit_quantity, limit_unit, benefit_amount and all benefit_amount_* are 100% NULL; normalization_status/basis, aggregation_policy are 100% NULL; and network_type ('in_network'), max_oop_applies (true), offered_status ('offered'), numeric_amount_observability ('offered_without_numeric_amounts'), null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status ('not_checked'), confidence_tier ('source_faithful'), benefit_category, psych_tier_axis ('tier_1'), source_pbp_section/silver_table/lmi_authorities are all CONSTANT. Don't filter or pivot on these expecting variation. - numeric_amount_observability='offered_without_numeric_amounts' is misleading: it is constant and refers to the generic benefit_amount columns, yet ~56% of rows carry real dollars in copay_amount/tier_1_day_admission_copay. Use copay_amount/tier_1_* IS NOT NULL (109,095 rows) to find plans with a captured numeric copay — not this flag. Likewise has_copay=TRUE does not imply copay_amount is populated (26,615 such rows are NULL; 13,284 have has_copay itself NULL). - copay_amount is a duplicate of tier_1_day_admission_copay (equal in 100% of non-null cases) — they are the SAME number, not two independent cost components. The richer per-day structure lives in tier_1_day_count_per_interval + tier_1_day_interval_1_copay/interval_2_copay (e.g. ~$292/day for the first interval then $0). NULLs in auth_required (~29%), referral_required, cost_on_discharge_day (~56%), and hospital_benefit_period_code (~37%) mean 'not captured / unknown', NOT false — and NULL hospital_benefit_period_code correlates with the no-numeric-copay rows. version is pre-deduped (one per grain key); ignore it as a selector. This view is the in-network, tier-1 psych slice only — no out-of-network and no higher psych tiers. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0028). 1,838 distinct. Part of grain key. | | plan_id | string | Plan ID within the contract (e.g. 001, 013), zero-padded string. 656 distinct values. Part of grain key. NOT unique alone. | | segment_id | string | PBP plan segment (geographic/benefit subdivision of a plan), string. '0' for ~92% of rows (single-segment plans); 1-7+ exist (26 distinct) for segmented plans. Part of grain key. | | version | double | CMS PBP file release version for that plan-quarter (double, 1-27). The view has ALREADY deduped to exactly one version per grain key (max 1 version/key, 0 multi-version keys), so you do not need to filter it — but it is not a meaningful selector either. | | report_year | double | PBP contract/benefit year (double, 2007-2026). THIS is the real year axis (the profiler mislabeled 'quarter' as the time column). Part of grain key. | | quarter | double | Quarterly CMS PBP release snapshot within the year (1.0-4.0). Early years (2007-2017), 2021, 2025, 2026 carry only Q1; 2018-2020 and 2022-2024 carry multiple quarterly snapshots. Part of grain key and the snapshot dimension — see gotchas. | | benefit_category | string | Constant = 'inpatient_psychiatric' for every row (this view is pre-filtered to that benefit). Not a discriminator. | | cost_share_string | string | Human-readable cost-share summary, e.g. '$0 copay' (90,592 rows) or '$900.0 copay + 900.0%'. 313 distinct, NULL for ~44% (offered-without-numeric rows). WARNING: the '+ N.N%' suffix is a formatting BUG — it echoes the copay dollar figure as a bogus coinsurance percent (900% is nonsensical); do not parse it as coinsurance. | | copay_amount | double | Flat/admission copay in dollars (0-2,545, median $0, 313 distinct). Non-null for 109,095 rows (~56%); the rest are NULL (numeric not captured). EXACTLY equals tier_1_day_admission_copay in 100% of non-null cases (it is a copy of it). | | coinsurance_pct | double | Coinsurance percentage — 100% NULL across the entire table (0 non-null). The model does not populate it here (and correctly ignores the bogus % in cost_share_string). Treat as unavailable for this benefit. | | limit_text | string | Free-text benefit limit — 100% NULL in this view. Unused. | | auth_required | boolean | Boolean: prior authorization required for the inpatient psych stay. TRUE 122,762; NULL 56,687 (~29%, not captured); remainder false. NULL means unknown, not false. | | referral_required | boolean | Boolean: referral required. TRUE 37,617; NULL 17,004; remainder false. NULL = unknown. | | network_type | varchar(10) | varchar — CONSTANT 'in_network' for all 193,172 rows. This view contains NO out-of-network cost-share. Big scope limit. | | max_oop_applies | boolean | Boolean: benefit counts toward the plan MOOP. TRUE for 100% of rows (constant, never null). Not a discriminator. | | limit_quantity | double | Numeric benefit limit quantity — 100% NULL in this view. Unused. | | limit_unit | string | Unit for the limit — 100% NULL. Unused. | | limit_period_code | string | Code for the limit period — effectively NULL/unused here (appears as a candidate-key padder in the profiler but carries no value). | | limit_period_label | string | Label for limit period — NULL/unused. | | limit_quantity_per_year | double | Annualized limit quantity — NULL/unused in this view. | | benefit_amount | double | Generic benefit dollar amount — 100% NULL in this view (psych cost-share lives in the tier_1_* and copay_amount columns, not here). | | benefit_amount_kind | string | Kind of benefit_amount — 100% NULL. Unused. | | benefit_amount_period_code | string | Period code for benefit_amount — NULL/unused (profiler key padder). | | benefit_amount_period_label | string | Period label — NULL/unused. | | benefit_amount_annualized | double | Annualized benefit_amount — NULL/unused. | | benefit_amount_pmpm | double | Per-member-per-month benefit_amount — NULL/unused. | | normalization_status | string | Governance field — 100% NULL in this view. Carried from generic PBP schema, unpopulated here. | | normalization_basis | string | Governance field — 100% NULL. Unused. | | aggregation_policy | string | Governance field — 100% NULL. Unused. | | offered_status | varchar(15) | varchar — CONSTANT 'offered' for all rows (every row is a plan that offers the benefit). Not a discriminator. | | numeric_amount_observability | varchar(31) | varchar — CONSTANT 'offered_without_numeric_amounts' for ALL rows. Misleading: it refers to the generic benefit_amount/copay_amount being absent, yet ~56% of rows DO carry real dollars in tier_1_day_admission_copay/copay_amount. Do not use this flag to decide whether a numeric copay exists. | | null_amount_reason | varchar(30) | varchar — CONSTANT 'unknown_requires_crosswalk' for all rows. A generic default, not a per-row diagnosis. | | annualization_policy | varchar(17) | varchar — CONSTANT 'not_numeric' for all rows. Not a discriminator. | | combined_limit_policy | varchar(29) | varchar — CONSTANT 'none_detected' for all rows. Not a discriminator. | | consumer_document_reconciliation_status | varchar(11) | varchar — CONSTANT 'not_checked' for all rows (no consumer-doc/EOC reconciliation has been run on this benefit). Not a discriminator. | | confidence_tier | varchar(23) | varchar — CONSTANT 'source_faithful' for all rows (values are faithfully copied from the PBP source). Not a discriminator. | | additional_days_amount | double | | | additional_days_benefit_type_code | string | | | additional_days_benefit_type_label | string | | | additional_days_coinsurance_interval1_begin_day | double | | | additional_days_coinsurance_interval1_end_day | double | | | additional_days_coinsurance_interval1_pct | double | | | additional_days_coinsurance_interval2_begin_day | double | | | additional_days_coinsurance_interval2_end_day | double | | | additional_days_coinsurance_interval2_pct | double | | | additional_days_coinsurance_interval_count | string | | | additional_days_copay_amount | double | | | additional_days_copay_interval1_amount | double | | | additional_days_copay_interval1_begin_day | double | | | additional_days_copay_interval1_end_day | double | | | additional_days_copay_interval2_amount | double | | | additional_days_copay_interval2_begin_day | double | | | additional_days_copay_interval2_end_day | double | | | additional_days_copay_interval_count | string | | | additional_days_cost_share_basis | string | | | additional_days_cost_share_lowest_tier | string | | | additional_days_cost_share_string | string | | | additional_days_cost_share_tier_count | string | | | additional_days_cost_varies_by_tier | boolean | | | additional_days_limit_code | string | | | additional_days_offered | boolean | | | additional_days_unlimited | boolean | | | benefit_layer | varchar(38) | | | benefit_period_other_text | string | | | coinsurance_structure_same_as_medicare_covered | boolean | | | copay_amount_max | double | | | copay_amount_max_resolved | double | | | copay_amount_min | double | | | copay_amount_min_resolved | double | | | copay_structure_same_as_medicare_covered | boolean | | | cost_on_discharge_day | boolean | Boolean: whether a copay applies on the discharge day. FALSE 82,899, TRUE 2,214, NULL 108,059 (~56%, not captured). NULL = unknown. | | cost_share_basis | string | | | cost_share_lowest_tier | string | | | cost_share_tier_count | string | | | cost_varies_by_tier | boolean | Boolean: cost varies across a tier axis. TRUE for only 241 rows; mostly false. Combined with psych_tier_axis always = tier_1, multi-tier psych structures are essentially absent in this view. | | deductible_amount | double | | | has_coinsurance | boolean | Boolean flag that coinsurance applies. TRUE for 38,002 rows — but coinsurance_pct is 100% NULL, so the flag exists with NO accompanying percentage value. Flag-only signal. | | has_copay | boolean | Boolean flag that a copay applies. TRUE 135,708. NOTE: 26,615 rows have has_copay=TRUE but copay_amount IS NULL (copay exists but dollar not captured / sits in interval copays), and 13,284 rows have has_copay = NULL. Do not equate has_copay=TRUE with copay_amount being populated. | | has_deductible | boolean | Boolean: a deductible applies. TRUE for only 1,257 rows; overwhelmingly false. Rare for this benefit. | | has_max_enrollee_oop | boolean | | | hospital_benefit_period_code | string | PBP benefit-period structure code (string '1'-'4', plus NULL for 70,737 rows ~37%). '3' is most common (84,346). Does NOT split the grain (one value per plan-snapshot). NULL strongly correlates with the no-numeric-copay rows (only 7,899 of 70,737 NULL-HBPC rows have a copay). | | hospital_benefit_period_label | string | | | inpatient_psychiatric_in_package_category_list | boolean | | | inpatient_psychiatric_package_id | string | | | inpatient_psychiatric_package_match | string | | | inpatient_psychiatric_package_name | string | | | inpatient_psychiatric_package_type_code | string | | | inpatient_psychiatric_package_type_label | string | | | inpatient_psychiatric_targeted_file | string | | | inpatient_psychiatric_targeting | varchar(36) | | | layer_benefit_type_code | string | | | layer_benefit_type_label | string | | | lifetime_reserve_day_copay_resolved | double | | | max_enrollee_oop_amount | double | | | max_enrollee_oop_period_code | string | | | original_medicare_cost_share_charged | boolean | | | part_a_deductible_amount_resolved | double | | | psych_tier_axis | varchar(39) | varchar — CONSTANT 'tier_1' for 100% of rows. This view only materializes the tier-1 psych slice; higher psych tiers are not represented here, which is why all tier_2+ columns are absent. | | tier1_coinsurance_interval1_begin_day | double | | | tier1_coinsurance_interval1_end_day | double | | | tier1_coinsurance_interval1_pct | double | | | tier1_coinsurance_interval2_begin_day | double | | | tier1_coinsurance_interval2_end_day | double | | | tier1_coinsurance_interval2_pct | double | | | tier1_coinsurance_interval_count | string | | | tier1_copay_interval1_amount | double | | | tier1_copay_interval1_amount_resolved | double | | | tier1_copay_interval1_begin_day | double | | | tier1_copay_interval1_end_day | double | | | tier1_copay_interval2_amount | double | | | tier1_copay_interval2_amount_resolved | double | | | tier1_copay_interval2_begin_day | double | | | tier1_copay_interval2_end_day | double | | | tier1_copay_interval3_amount | double | | | tier1_copay_interval3_begin_day | double | | | tier1_copay_interval3_end_day | double | | | tier1_copay_per_stay_amount | double | | | tier1_lifetime_reserve_coinsurance_interval1_begin_day | double | | | tier1_lifetime_reserve_coinsurance_interval1_end_day | double | | | tier1_lifetime_reserve_coinsurance_interval1_pct | double | | | tier1_lifetime_reserve_coinsurance_interval2_begin_day | double | | | tier1_lifetime_reserve_coinsurance_interval2_end_day | double | | | tier1_lifetime_reserve_coinsurance_interval2_pct | double | | | tier1_lifetime_reserve_coinsurance_interval_count | string | | | tier1_lifetime_reserve_days_interval_count | string | | | tier1_lifetime_reserve_interval1_amount | double | | | tier1_lifetime_reserve_interval1_begin_day | double | | | tier1_lifetime_reserve_interval1_end_day | double | | | tier1_lifetime_reserve_interval2_amount | double | | | tier1_lifetime_reserve_interval2_begin_day | double | | | tier1_lifetime_reserve_interval2_end_day | double | | | tier2_charges_medicare_defined_cost_share | boolean | | | tier2_copay_amount_max | double | | | tier2_copay_interval_count | string | | | tier2_copay_per_stay_amount | double | | | tier2_lifetime_reserve_days_interval_count | string | | | tier2_lifetime_reserve_interval1_amount | double | | | tier2_lifetime_reserve_interval1_begin_day | double | | | tier2_lifetime_reserve_interval1_end_day | double | | | tier2_lifetime_reserve_interval2_amount | double | | | tier2_lifetime_reserve_interval2_begin_day | double | | | tier2_lifetime_reserve_interval2_end_day | double | | | tier3_charges_medicare_defined_cost_share | boolean | | | tier3_copay_interval_count | string | | | tier3_copay_per_stay_amount | double | | | tier3_lifetime_reserve_days_interval_count | string | | | tier_1_consecutive_day_count | string | String count of consecutive days the first cost-share interval applies (e.g. '1','2','3'). NULL ~44%. Part of the per-day cost structure. | | tier_1_day_admission_copay | double | Dollar copay at admission for tier 1 (0-2,545). Non-null 109,095. Identical to copay_amount. The flat admission copay. | | tier_1_day_count_per_interval | string | String defining how many day-intervals the copay schedule has (e.g. '1' = flat admission only with no per-day intervals; '3' = a multi-interval schedule with interval_1 and interval_2 copays). Drives whether the interval copay columns are populated. | | tier_1_day_interval_1_begin_day | double | | | tier_1_day_interval_1_copay | double | Per-day copay for the first day-interval (e.g. ~$292/day median when per_interval='3'). Non-null 87,312. Encodes 'pay $X/day for the first N days'. | | tier_1_day_interval_1_end_day | double | | | tier_1_day_interval_2_begin_day | double | | | tier_1_day_interval_2_copay | double | Per-day copay for the second day-interval (median $0 — i.e. $0/day after the first interval in the common case). Non-null 86,845. Encodes the step-down after the initial copay days. | | tier_1_day_interval_2_end_day | double | | | tier_1_day_interval_3_begin_day | double | | | tier_1_day_interval_3_copay | double | | | tier_1_day_interval_3_end_day | double | | | tier_2_day_interval_1_begin_day | double | | | tier_2_day_interval_1_copay | double | | | tier_2_day_interval_1_end_day | double | | | tier_2_day_interval_2_begin_day | double | | | tier_2_day_interval_2_copay | double | | | tier_2_day_interval_2_end_day | double | | | tier_2_day_interval_3_begin_day | double | | | tier_2_day_interval_3_copay | double | | | tier_2_day_interval_3_end_day | double | | | total_covered_stay_days | double | | | source_pbp_section | varchar(3) | varchar — CONSTANT 'B1B' (PBP Section B1B = Inpatient Hospital - Psychiatric). Provenance, not a discriminator. | | source_silver_table | string | varchar — CONSTANT 'medicare_silver.pbp_section_b1b_inpat_hosp_psych'. The upstream silver table this view is built from. Provenance. | | lmi_authorities | string | String — CONSTANT pointer URL to the CY2026 PBP Service Category Descriptions PDF (LMI MA Benefits Mailbox). Documentation reference for the benefit definition; same for every row. | | source_url | string | CMS source zip URL for the snapshot (e.g. https://www.cms.gov/files/zip/pbp-benefits-2022-updated-07012022.zip). 34 distinct = one per snapshot (year+quarter). Provenance for the specific PBP release. | | sha256_content_hash | string | SHA-256 content hash of the source file. 34 distinct (one per snapshot zip), mirroring source_url. Integrity/provenance. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_inpatient_psychiatric WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_inpatient_psychiatric")` first. # PBP meals benefit (cleaned view) `medicare_semantic.vw_pbp_meals` · Medicare Advantage, Part D, Medicaid · status live · 201,488 rows Post-discharge and chronic-condition meal benefits per plan and plan year, from PBP section B13c, with the raw filed meal fields kept. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(10) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | string | | | benefit_amount_period_code | string | | | benefit_amount_period_label | string | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(48) | | | normalization_basis | varchar(29) | | | aggregation_policy | varchar(61) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | chronic_illness_trigger | boolean | | | cost_share_populated_in_bid | boolean | | | homebound_medical_condition_trigger | boolean | | | meal_detail_status | varchar(55) | | | meal_duration_quantity | double | | | meal_duration_unit | string | | | meal_maximum_count | double | | | meal_trigger_code | string | | | meal_trigger_label | string | | | meals_benefit_type_code | string | | | meals_benefit_type_label | varchar(10) | | | meals_coinsurance_pct_max | double | | | meals_copay_amount_max | double | | | meals_in_package_aggregate_max | boolean | | | meals_offered | boolean | | | meals_offered_code | string | | | meals_offered_label | varchar(3) | | | meals_package_id | string | | | meals_package_match_basis | string | | | meals_package_name | string | | | meals_package_type_code | string | | | meals_package_type_label | string | | | meals_sub_benefit | string | | | meals_targeting | varchar(36) | | | post_discharge_trigger | boolean | | | source_duration_column | string | | | source_max_meals_column | string | | | source_pbp_section | varchar(4) | | | source_silver_table | varchar(59) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | | section_d_group_index | int | | | section_d_group_name | string | | | section_d_group_amount | double | | | section_d_group_period_code | string | | | section_d_group_period_label | string | | | section_d_group_amount_annualized | double | | | section_d_group_category_codes | string | | | section_d_group_count | bigint | | | section_d_group_link_basis | string | | | copay_amount_max | double | | | coinsurance_pct_max | double | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_meals WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_meals")` first. # PBP moop (cleaned view) `medicare_semantic.vw_pbp_moop` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP moop rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for moop ( **Grain.** One row per MA plan-segment per CMS release (report_year + quarter) per MOOP flavor, where the flavor is identified by source_amount_column (which equals one of in-network / out-of-network / combined / legacy-non-network MOOP). Minimal verified key = contract_id + plan_id + segment_id + report_year + quarter + network_type + source_amount_column → 736,834 distinct vs 737,270 total rows. The 436-row (0.06%) gap is fully-identical duplicate rows that exist only in the legacy 2001-2003 CMS PBP files (no column distinguishes them; even sha256_content_hash matches). network_type alone is NOT sufficient because 'out_of_network' is shared by two flavors (modern Out-of-network MOOP via pbp_d_oon_max_enr_oopc_amt and legacy Non-network MOOP via pbp_d_maxenr_oopc_amt), so source_amount_column is required to separate them. **How to use it.** Get the current in-network MOOP dollar cap for every MA plan in a plan year using only the latest CMS release: SELECT contract_id, plan_id, segment_id, benefit_amount AS moop_dollar FROM vw_pbp_moop WHERE report_year=2026 AND network_type='in_network' AND quarter=(SELECT max(quarter) FROM vw_pbp_moop WHERE report_year=2026) AND benefit_amount IS NOT NULL. Answers 'what is each MA plan's in-network out-of-pocket maximum in 2026' (median ~$6,684, range $0–$90,000). For out-of-network or combined, switch network_type and the matching source_amount_column. **Traps.** - MULTI-SNAPSHOT ACCUMULATION, NO is_current flag: the view keeps EVERY CMS quarterly re-release. A single plan-year appears under multiple (report_year, quarter) snapshots — e.g. plan H0028/059 shows up in all 4 quarters of 2023, and some plans' MOOP amount CHANGES between quarters (H0342/801 has 2 distinct values in 2023). To get the 'current' MOOP for a plan-year you MUST pick the latest quarter (or version) per report_year; otherwise you over-count and mix stale values. Never SUM across rows (aggregation_policy='do_not_sum'). - network_type does NOT identify the row — 'out_of_network' is overloaded by TWO flavors: modern Out-of-network MOOP (pbp_d_oon_max_enr_oopc_amt) and legacy Non-network MOOP (pbp_d_maxenr_oopc_amt). The grain needs source_amount_column (or moop_sub_benefit_label) to separate them. The 4 flavors map 1:1: in_network=pbp_d_out_pocket_amt, both/combined=pbp_d_comb_max_enr_amt, out_of_network=pbp_d_oon_max_enr_oopc_amt, plus the legacy non-network one. - benefit_amount is NULL in 67% of rows and the NULL is SEMANTIC, not just missing. Disambiguate with offered_status / null_amount_reason: 'offered_unknown' + 'unknown_requires_crosswalk' (385K rows) = plan SAYS it offers this MOOP but the dollar amount is not in the source bid (data gap, needs a crosswalk); 'not_offered' (110K rows) = plan genuinely does not offer this flavor. Only 'offered'/'not_null_numeric_amount' rows (241,725) carry a usable dollar cap. moop_amount_populated_in_bid is the clean boolean for 'has a number'. Do NOT use moop_present (mostly NULL, unreliable). - moop_type_code is a TIME-VERSIONED code: '1' = Voluntary in 2012-2022 but = 'Lower' in 2023-2026, and there is NO code before 2012. Always read moop_type_regime ('binary_voluntary_mandatory' vs 'three_tier_lower_intermediate_mandatory' vs 'no_type_code_pre_2012') alongside it, or just use the pre-decoded moop_type_label. - 436 truly-duplicate rows (0.06%) exist only in the legacy 2001-2003 CMS files — fully identical across every column INCLUDING sha256_content_hash, so nothing breaks the tie. The 7-column grain key yields 736,834 distinct vs 737,270 total because of these. From 2004 onward the 7-column key is exactly unique. SELECT DISTINCT or restrict to report_year>=2004 if you need a perfectly unique set. - Many generic columns inherited from the shared semantic schema are 100% NULL/constant here and carry NO MOOP information: copay_amount, coinsurance_pct, cost_share_string, auth_required, referral_required, max_oop_applies, limit_quantity, benefit_amount_pmpm (all NULL); benefit_category='moop', benefit_amount_kind='maximum_out_of_pocket', benefit_amount_period_code='annual', confidence_tier='source_faithful', consumer_document_reconciliation_status='not_checked', combined_limit_policy='none_detected', source_pbp_section='D' (all constant). The service-category *_raw columns are raw BITMASK strings (e.g. '0111111...'), not human-readable. lmi_authorities is always empty. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0028). 1,972 distinct. Part of plan identity. Join key to other Medicare plan tables. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001'). 656 distinct. Not unique alone; only meaningful with contract_id. | | segment_id | string | Plan segment within the contract+plan ('0' is default for 2006+, 662K rows; '1'-'9' for multi-segment/regional/SNP plans). EMPTY STRING '' for 2001-2005 legacy files (pre-segment era, 20.7K rows) — treat '' and '0' carefully when joining across eras. | | version | double | CMS bid/file version counter (0,1,2,... up to ~11+) within a release. Functionally determined by the grain key (adding it does not change distinct count). Informational, not part of grain. | | report_year | double | The plan year the PBP applies to (2001–2026). THE primary time axis (the profiler mislabeled 'quarter' as the time column). 26 distinct years. | | quarter | double | CMS release quarter within report_year (1–4). CMS re-publishes the PBP file 1–4 times per plan year; each (report_year,quarter) = exactly one source_url/file. Combined with report_year gives 40 distinct snapshots. NOT a calendar quarter of service — it is a re-release counter. 2025/2026 currently have only Q1. | | benefit_category | string | Constant 'moop' for 100% of rows — this view is MOOP-only (inherited tag from the shared semantic schema). | | cost_share_string | string | UNUSED for MOOP — 100% NULL (generic shared-schema column). | | copay_amount | double | UNUSED for MOOP — 100% NULL. MOOP is a cap, not a copay. | | coinsurance_pct | double | UNUSED for MOOP — 100% NULL. | | limit_text | string | Human-readable formatted MOOP string, e.g. '$2000.0 annual MOOP'. Populated (241,725) only when benefit_amount is non-null; mirrors the amount. | | auth_required | boolean | UNUSED for MOOP — 100% NULL. | | referral_required | boolean | UNUSED for MOOP — 100% NULL. | | network_type | varchar(14) | Network scope of the MOOP: 'in_network' (201,597), 'both'=combined in+out (201,597), 'out_of_network' (334,076). CAUTION: 'out_of_network' is OVERLOADED across two distinct MOOP flavors (modern Out-of-network MOOP + legacy Non-network MOOP) — must combine with source_amount_column to disambiguate. | | max_oop_applies | boolean | UNUSED for MOOP — 100% NULL (generic column; this whole table IS the max-OOP, so the flag is redundant). | | limit_quantity | double | UNUSED for MOOP — 100% NULL. | | limit_unit | string | UNUSED for MOOP — effectively NULL (generic shared column). | | limit_period_code | string | Generic limit-period code; not the MOOP period (the MOOP period is annual, see benefit_amount_period_code). Largely null/unused here. | | limit_period_label | string | Label for limit_period_code; unused for MOOP. | | limit_quantity_per_year | double | UNUSED for MOOP — NULL. | | benefit_amount | double | THE MOOP DOLLAR CAP — the headline cost number. Non-null in only 241,725/737,270 rows (32.8%); median ~$6,684, range $0–$90,000. NULL is meaningful (see offered_status / null_amount_reason): NULL can mean 'offered but amount not in source bid' OR 'not offered'. | | benefit_amount_kind | varchar(21) | Constant 'maximum_out_of_pocket' (100%) — confirms semantic type of benefit_amount. | | benefit_amount_period_code | varchar(6) | Constant 'annual' (100%) — MOOP is always an annual cap. | | benefit_amount_period_label | varchar(6) | Constant 'Annual' (100%). | | benefit_amount_annualized | double | Annualized MOOP; identical to benefit_amount (same 241,725 populated, MOOP is already annual). Use either. | | benefit_amount_pmpm | double | Per-member-per-month version — 100% NULL by design (MOOP is an annual cap, not a PMPM concept). Do not expect values. | | normalization_status | varchar(22) | 'normalized' (241,725, amount present & cleaned) / 'not_populated' (386,125, offered-but-no-amount) / 'not_applicable_no_moop' (109,420, not offered). Tracks amount availability. | | normalization_basis | varchar(19) | Constant 'cms_moop_annual_cap' (100%) — describes the normalization rule applied. | | aggregation_policy | varchar(10) | Constant 'do_not_sum' (100%) — instruction NOT to sum MOOP rows across flavors/snapshots (they are caps, not additive line items). | | offered_status | varchar(15) | Whether the plan offers this MOOP flavor: 'offered' (241,729, amount populated) / 'offered_unknown' (385,777, Y/N flag said offered but no numeric amount in bid) / 'not_offered' (109,764). KEY column for interpreting NULL benefit_amount. | | numeric_amount_observability | varchar(31) | Mirrors offered_status from the numeric angle: 'all_offered_numeric' (241,725, amount usable) / 'offered_without_numeric_amounts' (385,781, NULL-but-offered) / 'not_offered' (109,764). | | null_amount_reason | varchar(30) | Why benefit_amount is NULL: 'not_null_numeric_amount' (241,725, actually populated) / 'unknown_requires_crosswalk' (385,781, offered but undisclosed in source) / 'not_offered' (109,764). Use to decide if a NULL is a data gap vs a genuine no-MOOP. | | annualization_policy | varchar(17) | 'annualized_safe' (241,725, amount safely annual) / 'not_numeric' (495,545, no amount to annualize). | | combined_limit_policy | varchar(29) | Constant 'none_detected' (100%) — no combined-limit logic detected/applied for MOOP. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' (100%) — these values have NOT been reconciled against consumer-facing docs (SB/EOC). A provenance/confidence caveat. | | confidence_tier | varchar(23) | Constant 'source_faithful' (100%) — values are taken faithfully from the CMS bid source, no inference applied. | | moop_amount_populated_in_bid | boolean | Boolean: TRUE iff the CMS bid carried a numeric MOOP amount. TRUE for exactly 241,725 rows = exactly the rows where benefit_amount is non-null. Reliable populated-flag (unlike moop_present). | | moop_benefit_scope_codes | string | Short raw scope code from the source (e.g. '0101','1111') indicating the MOOP's benefit scope. Populated ~237,609 rows. Raw CMS encoding, not human-readable. | | moop_in_network_medicare_service_categories_raw | string | BITMASK STRING (e.g. '0111111000100000...') — each position = a PBP Medicare service category; 1 = MOOP applies to that category. In-network Medicare services. Raw source encoding. ~233,138 populated. | | moop_in_network_medicare_services_apply_to_all | boolean | Boolean: does the in-network Medicare MOOP apply to ALL service categories (vs the subset in the bitmask). | | moop_in_network_non_medicare_service_categories_raw | string | Bitmask of in-network NON-Medicare (supplemental) service categories the MOOP applies to. Raw encoding; sparsely populated. | | moop_in_network_non_medicare_services_apply_to_all | boolean | Boolean: in-network non-Medicare MOOP applies to all categories. | | moop_medicare_service_categories_raw | string | Bitmask of Medicare service categories (legacy/unscoped variant) the MOOP applies to. ~39,356 populated (older-era field). | | moop_medicare_services_apply_to_all | boolean | Boolean: legacy Medicare-services-apply-to-all flag. ~178,471 populated. | | moop_non_medicare_service_categories_raw | string | Bitmask of non-Medicare service categories (legacy variant). ~41,648 populated. | | moop_non_medicare_services_apply_to_all | boolean | Boolean: legacy non-Medicare-services-apply-to-all flag. | | moop_out_of_network_medicare_service_categories_raw | string | Bitmask of out-of-network Medicare service categories the MOOP applies to. ~15,859 populated. | | moop_out_of_network_medicare_services_apply_to_all | boolean | Boolean: out-of-network Medicare MOOP applies to all categories. | | moop_out_of_network_non_medicare_service_categories_raw | string | Bitmask of out-of-network non-Medicare service categories. Sparsely populated. | | moop_out_of_network_non_medicare_services_apply_to_all | boolean | Boolean: out-of-network non-Medicare MOOP applies to all categories. | | moop_present | boolean | Boolean MOOP-present flag — UNRELIABLE: mostly NULL (385,777 NULL). TRUE only 241,729 (≈ the populated rows). Do NOT use as the offered indicator; use offered_status or moop_amount_populated_in_bid instead. | | moop_sub_benefit | string | 100% NULL — the sub-benefit code is never populated; use moop_sub_benefit_label instead. | | moop_sub_benefit_label | varchar(36) | Human-readable MOOP flavor: 'In-network MOOP' (201,597) / 'Out-of-network MOOP' (201,597) / 'Combined in- and out-of-network MOOP' (201,597) / 'Non-network MOOP' (132,479, legacy). 1:1 with (network_type + source_amount_column). | | moop_type_code | string | CMS MOOP type code (1/2/3); NULL pre-2012. TIME-VERSIONED CODE SYSTEM (see moop_type_regime): in 2012-2022, 1=Voluntary, 2=Mandatory; in 2023-2026, 1=LOWER, 2=Mandatory, 3=Intermediate. CODE '1' MEANS DIFFERENT THINGS IN DIFFERENT YEARS. NULL when not offered/no-amount or pre-2012. | | moop_type_label | string | Decoded label for moop_type_code: 'Voluntary','Mandatory','Lower','Intermediate' (NULL pre-2012 / when no amount). Already disambiguates the code-reuse, so prefer this over moop_type_code. | | moop_type_regime | varchar(39) | Which code scheme is in effect: 'no_type_code_pre_2012' (2001-2011) / 'binary_voluntary_mandatory' (2012-2022) / 'three_tier_lower_intermediate_mandatory' (2023-2026). ESSENTIAL to interpret moop_type_code correctly across years. | | source_amount_column | varchar(26) | The exact PBP Section D source field this row's amount came from — 4 values: pbp_d_out_pocket_amt (in-network), pbp_d_oon_max_enr_oopc_amt (out-of-network), pbp_d_comb_max_enr_amt (combined), pbp_d_maxenr_oopc_amt (legacy non-network). REQUIRED in the grain (disambiguates the overloaded 'out_of_network' network_type). | | source_present_column | varchar(25) | The PBP source Y/N flag column for this MOOP flavor (e.g. pbp_d_oon_max_enr_oopc_yn). Provenance of the 'offered' signal. | | source_type_column | string | The PBP source column carrying the MOOP type code (e.g. pbp_d_oon_max_enr_oopc_type). NULL for ~120,472 pre-2012 rows where no type column existed. | | source_pbp_section | varchar(1) | Constant 'D' (100%) — all MOOP comes from PBP Section D. | | source_silver_table | varchar(29) | Constant 'medicare_silver.pbp_section_d' (100%) — the upstream silver table this view is built from. (View name in this DB: vw_pbp_moop.) | | lmi_authorities | string | Empty string '' for 100% of rows — placeholder, not populated for this view. | | source_url | string | CMS download URL of the exact PBP zip for this (report_year, quarter), e.g. .../pbp-benefits-2024-quarter-1.zip. One URL per snapshot — provenance / re-download anchor. | | sha256_content_hash | string | Content hash of the source record for provenance/integrity. NOTE: identical across the legacy 2002-2003 duplicate rows (so it does not break ties on those dupes). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_moop WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_moop")` first. # PBP optional supplemental packages (cleaned view) `medicare_semantic.vw_pbp_optional_package` · Medicare Advantage, Part D, Medicaid · status live · 51,694 rows Optional supplemental packages (extra premium, opt-in) per plan and plan year from PBP section D-OPT, 2018 on; also reads the step 16/17b/18b worksheets where the package detail lives. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(14) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | string | | | benefit_amount_period_code | string | | | benefit_amount_period_label | string | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(41) | | | normalization_basis | varchar(20) | | | aggregation_policy | varchar(40) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | optional_base_benefit_code | string | | | optional_base_benefit_label | string | | | optional_base_category | string | | | optional_base_l2_id | string | | | optional_benefit_type_code | string | | | optional_benefit_type_label | string | | | optional_coinsurance_pct_max | double | | | optional_coinsurance_pct_min | double | | | optional_copay_amount_max | double | | | optional_copay_amount_min | double | | | optional_cost_share_basis | string | | | optional_cost_share_same_as_mandatory | boolean | | | optional_cost_share_tiers_code | string | | | optional_day_interval1_begin_day | double | | | optional_day_interval1_end_day | double | | | optional_day_interval_count | double | | | optional_limit_unlimited | boolean | | | optional_maxplan_in_oon_code | string | | | optional_oon_offered | boolean | | | optional_oon_same_as_in_network | boolean | | | optional_oon_type_id | string | | | optional_package_benefit_codes | string | | | optional_package_deductible_amount | double | | | optional_package_detail_level | varchar(22) | | | optional_package_id | string | | | optional_package_in_latest_roster | boolean | | | optional_package_includes_dental | boolean | | | optional_package_includes_hearing | boolean | | | optional_package_includes_vision | boolean | | | optional_package_name | string | | | optional_package_offered | boolean | | | optional_package_premium_monthly | double | | | optional_package_sub_benefit | string | | | optional_package_targeting | varchar(28) | | | optional_per_ear_code | string | | | optional_service_detail | string | | | optional_service_maxplan_amount | double | | | optional_service_maxplan_period_code | string | | | source_amount_column | string | | | source_pbp_section | string | | | source_silver_table | string | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_optional_package WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_optional_package")` first. # PBP optional supplemental premium and MOOP (cleaned view) `medicare_semantic.vw_pbp_optional_supplemental` · Medicare Advantage, Part D, Medicaid · status live · 40,968 rows Premium and MOOP of each optional supplemental package per plan and plan year from PBP section D-OPT, 2018 on. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | optional_package_identifier | string | | | package_name | string | | | monthly_premium | double | | | covered_benefit_codes | string | | | offers_dental | boolean | | | offers_vision | boolean | | | offers_hearing | boolean | | | offers_point_of_service | boolean | | | covered_categories | string | | | package_max_benefit_amount | double | | | package_max_period_label | string | | | package_deductible_amount | double | | | package_applies_to_moop | boolean | | | offered_status | varchar(29) | | | source_pbp_section | varchar(5) | | | source_silver_table | varchar(33) | | | source_url | string | | | sha256_content_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_optional_supplemental WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_optional_supplemental")` first. # PBP otc (cleaned view) `medicare_semantic.vw_pbp_otc` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP otc rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for otc (vs **Grain.** One row per MA plan-segment per PBP report year per intra-year release snapshot (quarter) per OTC sub-benefit component. Verified: COUNT(*) = 503,753 exactly equals COUNT(DISTINCT contract_id, plan_id, segment_id, report_year, quarter, otc_sub_benefit), and a GROUP BY on those 6 columns yields max 1 row per group across all 503,753 groups. A plan-snapshot fans out into up to 4 component rows (otc_list_coverage, otc_items_allowance, otc_nicotine_replacement_therapy, otc_naloxone). version is constant within each grain group (not a key). Only otc_items_allowance carries a dollar amount; the other three components are indicator-only. **How to use it.** Get current-year OTC allowance generosity per MA plan: SELECT contract_id, plan_id, segment_id, benefit_amount, benefit_amount_period_label, benefit_amount_annualized, benefit_amount_pmpm FROM vw_pbp_otc WHERE report_year=2026 AND quarter=(SELECT MAX(quarter) FROM vw_pbp_otc WHERE report_year=2026) AND otc_sub_benefit='otc_items_allowance' AND benefit_amount IS NOT NULL ORDER BY benefit_amount_annualized DESC — answers 'which 2026 Medicare Advantage plans offer the richest OTC dollar allowance, normalized to an annual figure.' Filtering to MAX(quarter) avoids snapshot double-counting; restricting to otc_items_allowance is required because only that component holds dollars. **Traps.** - Grain is 6 columns including quarter and otc_sub_benefit. (contract_id, plan_id, segment_id) is NOT unique (only 92,166 plan-year keys vs 503,753 rows). Each plan-snapshot fans into up to 4 sub-benefit rows; do not treat one plan as one row. - There is NO is_current/snapshot flag. 'quarter' is an intra-year CMS PUF republication, and snapshot years (2018, 2019, 2023 = quarters 1-4; 2024 = 1,3,4; 2020 = 1,2,4) repeat the SAME plan data each quarter (amounts are stable across quarters, max distinct amount per plan-year = 1). Counting all quarters 2-4x inflates plan counts. To get one current row per plan-year, filter to MAX(quarter) within each report_year. - Dollars live on ONE sub-benefit only: benefit_amount / _annualized / _pmpm are non-null exclusively on otc_sub_benefit='otc_items_allowance' (and even there only ~47%). The other three components (otc_list_coverage, otc_nicotine_replacement_therapy, otc_naloxone) are indicator-only and carry $0/null amounts by design — never SUM benefit_amount across sub-benefits or read OTC spend off the list/NRT/naloxone rows. - A null benefit_amount usually does NOT mean missing data — read null_amount_reason: 'in_kind_or_vendor_administered' (250,819 rows; OTC delivered via vendor card so no filed $), 'unlimited', 'not_offered', or 'unknown_requires_crosswalk'. offered_status='offered_unknown' (160k rows) also means the offered flag is genuinely indeterminate, not absent. - Sub-benefit availability is year-gated: otc_nicotine_replacement_therapy rows exist only report_year>=2019, otc_naloxone only 2025-2026. Their indicator columns (otc_nrt_indicator, otc_naloxone_indicator) are null for ~85-98% of the table because those rows simply don't exist in earlier years — not because the value is missing. - Several columns are degenerate/empty and carry no signal in this view: benefit_category (always 'otc'), network_type (always 'in_network'), confidence_tier (always 'source_faithful'), consumer_document_reconciliation_status (always 'not_checked'), and lmi_authorities (always ''). Don't filter on them expecting variation. - Use report_year as the time axis, NOT quarter — the profiler mislabels 'quarter' as the time column. Period labels like 'Every three months' refer to the allowance refill period, not a calendar quarter; annualize via benefit_amount_annualized to compare plans. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract id, e.g. H0104, H3347, E5088 (E-prefix = employer/EGWP). 1,680 distinct. Part of grain. | | plan_id | string | Plan id within the contract, e.g. 001, 007, 027 (zero-padded string). 656 distinct values; only unique together with contract_id+segment_id. Part of grain. | | segment_id | string | Plan benefit segment, mostly '0'; 26 distinct. Part of grain — identifies the PBP segment when a plan is segmented by geography. | | version | double | PBP submission/bid version number (double, 1-26). Constant within a grain group (one version per plan-snapshot); NOT a grain key. Reflects which bid revision the row came from. | | report_year | double | Contract/benefit year the PBP applies to (2010-2026). THE real history axis of this table (17 years). Use this, not 'quarter', for time-series. | | quarter | double | Intra-year CMS PUF release snapshot (1-4), NOT a separate benefit period. Older years have only quarter=1; snapshot years (2018/2019/2023 have 1-4, 2020/2024 have 3) republish the SAME plan-year data each quarter. A trap: counting all quarters 2-4x-inflates plans. Dedup by MAX(quarter) per plan-year to get one current snapshot. | | benefit_category | string | Always 'otc' — this view is the OTC slice only. Degenerate single-value column. | | cost_share_string | string | Raw cost-share text as filed. Null in nearly all rows (OTC is usually $0 cost-share / allowance-based). | | copay_amount | double | Generic per-visit copay from the PBP cost-share block. Largely null for OTC; the OTC-specific copay lives in otc_copay_amount_min/max. | | coinsurance_pct | double | Generic coinsurance percent. Largely null for OTC. | | limit_text | string | Raw free-text limit description from the bid. Largely null. | | auth_required | boolean | Boolean: prior authorization required. Largely null for OTC. | | referral_required | boolean | Boolean: referral required. Largely null for OTC. | | network_type | varchar(10) | Always 'in_network' — degenerate single-value column for this view (OTC is in-network only). | | max_oop_applies | boolean | Boolean: does this benefit count toward the plan MOOP. Largely null. | | limit_quantity | double | Numeric quantity limit on the benefit (with limit_unit/limit_period). Sparsely populated. | | limit_unit | string | Unit for limit_quantity (e.g. items/dollars). Sparsely populated. | | limit_period_code | string | CMS code for the limit period (e.g. per month/quarter/year). Raw code paired with limit_period_label. | | limit_period_label | string | Human label for limit_period_code, e.g. 'Every three months'. | | limit_quantity_per_year | double | limit_quantity normalized to an annual figure. Sparsely populated. | | benefit_amount | double | The OTC dollar allowance AS FILED for its period (e.g. 950.0 = $950 'Every three months'). Populated ONLY on otc_items_allowance rows, and there only ~47% (83,457 of 179,479) — null elsewhere. Range $0-$3,900; median ~$57. THE core cost figure. | | benefit_amount_kind | varchar(14) | Classifies the amount: 'otc_allowance' (179,479 rows = the otc_items_allowance component, may still have null amount) vs 'indicator_only' (324,274 rows = the 3 non-dollar components). Tells you whether a dollar value is even possible for the row. | | benefit_amount_period_code | string | CMS code for the allowance period. Raw code paired with the label below. | | benefit_amount_period_label | string | Period the benefit_amount covers: 'Every three months' (most common), 'Every month', 'Every year', 'Every six months', 'Every three years'. Drives annualization. | | benefit_amount_annualized | double | benefit_amount normalized to a yearly dollar figure (e.g. $950/quarter -> $3,800/yr). Range $0-$5,136. Use THIS to compare allowances across plans on equal footing. | | benefit_amount_pmpm | double | Allowance expressed per-member-per-month (annualized/12, e.g. $3,800/yr -> $316.67). Convenience normalization for cost modeling. | | normalization_status | varchar(36) | How the amount was derived: 'normalized' (83,457, has a clean dollar value), 'component_indicator_only' (324,274, no dollar by design), 'not_populated' (90,807, allowance component but bid left it blank), 'offered_no_numeric_allowance' (5,215, offered but unlimited/non-numeric). | | normalization_basis | varchar(24) | What field the value/indicator was built from, e.g. 'cms_indicator_field'. Provenance of the normalization. | | aggregation_policy | varchar(60) | How this row should be aggregated, e.g. 'indicator_component_not_financial_cap' — warns that indicator rows must not be summed as if they were dollar caps. | | offered_status | varchar(15) | Tri-state offered flag for the component: 'offered' (188,207), 'not_offered' (155,354), 'offered_unknown' (160,192, offered flag indeterminate in the bid). Key column for 'does this plan have OTC'. | | numeric_amount_observability | varchar(31) | Why a dollar amount is/ isn't present: 'all_offered_numeric' (83,457, clean dollars), 'offered_without_numeric_amounts' (264,942, offered but vendor/in-kind so no $), 'not_offered' (155,354). | | null_amount_reason | varchar(30) | Explains a null benefit_amount: 'in_kind_or_vendor_administered' (250,819 — OTC run through a vendor card, no filed $), 'not_offered' (155,354), 'not_null_numeric_amount' (83,457 — i.e. amount IS present), 'unlimited' (5,215), 'unknown_requires_crosswalk' (8,908). A null amount is NOT missing data — read this column. | | annualization_policy | varchar(17) | Rule applied to annualize, e.g. 'not_numeric' for indicator rows. Governs benefit_amount_annualized. | | combined_limit_policy | varchar(29) | Whether this benefit shares a limit with another, e.g. 'none_detected'. Provenance/aggregation guard. | | consumer_document_reconciliation_status | varchar(11) | Always 'not_checked' — placeholder; these PBP values have not been cross-checked against consumer SB/EOC documents. Degenerate single-value column. | | confidence_tier | varchar(23) | Always 'source_faithful' — every row is a faithful copy of the CMS bid (no inference). Degenerate single-value column. | | cost_share_populated_in_bid | boolean | Boolean: did the bid populate a cost-share block for this benefit. Mostly false for OTC (allowance-based, $0 cost-share). | | otc_amount_source | string | | | otc_base_offered | boolean | Plan-level boolean: does the plan offer a base OTC benefit at all (distinct from the per-component otc_offered). Yes 261,661 / No 217,423 / null 24,669. | | otc_base_offered_code | string | Raw CMS code behind otc_base_offered ('1'=Yes,'2'=No). | | otc_base_offered_label | varchar(3) | Human label for otc_base_offered ('Yes'/'No'). | | otc_benefit_family | varchar(16) | Which family this row's component belongs to: 'otc_list' (list_coverage), 'otc_items' (items_allowance), 'otc_drug_subitem' (NRT + naloxone). Mirrors otc_sub_benefit at a coarser level. | | otc_benefit_type_code | string | CMS code for the OTC benefit type. Populated where the component is offered (~88,673 per applicable component). | | otc_benefit_type_label | varchar(10) | Human label for otc_benefit_type_code. | | otc_cap_carry_forward | boolean | Boolean: does an unused OTC allowance carry forward to the next period. Populated mainly on items_allowance rows. | | otc_cap_carry_forward_code | string | Raw CMS code for carry-forward. | | otc_cap_carry_forward_label | string | Human label for carry-forward (Yes/No). | | otc_cap_present | boolean | Boolean: is there a spending cap on the OTC allowance. Populated on otc_items_allowance rows (88,673); null for the indicator-only components. | | otc_cap_present_code | string | Raw CMS code for cap presence. | | otc_cap_present_label | string | Human label for cap presence (Yes/No). | | otc_cap_source | string | Where the cap value/flag was sourced from. Sparsely populated. | | otc_coinsurance_pct_max | double | | | otc_component_detail_status | varchar(23) | Describes the detail level captured for the component, e.g. 'list_coverage_indicator'. Metadata about completeness of the component row. | | otc_copay_amount_max | double | Upper bound of the OTC item copay range. When populated, almost always equals the min and is $0 (36,994 rows at 0/0); range exists for the rare plan with varying item copays. | | otc_copay_amount_min | double | Lower bound of the OTC item copay range (mostly $0). Pair with _max; equal min=max means a single flat copay. | | otc_delivery_mode_code | string | CMS code for OTC delivery mode (e.g. mail/retail/catalog). Very sparsely populated (~4,244 rows). | | otc_delivery_mode_label | string | Human label for delivery mode. | | otc_in_package_aggregate_max | boolean | | | otc_list_covered | boolean | Boolean specific to the otc_list_coverage component: is the OTC item list covered. Populated only on otc_list_coverage rows (88,673); null (415,080) on all other components by design. | | otc_list_covered_code | string | Raw CMS code for list-covered. | | otc_list_covered_label | string | Human label for list-covered (Yes/No); null on non-list rows. | | otc_list_source | string | Source of the covered OTC item list. Sparsely populated. | | otc_naloxone_indicator | boolean | Boolean specific to the otc_naloxone component: is OTC naloxone offered. Populated only on otc_naloxone rows (8,711), and that sub-benefit exists ONLY in report_year 2025-2026. Null (495,042) elsewhere. | | otc_naloxone_indicator_code | string | Raw CMS code for naloxone indicator. | | otc_naloxone_indicator_label | string | Human label for naloxone indicator (Yes/No). | | otc_nrt_attestation_present | boolean | Boolean: is an NRT (nicotine replacement therapy) attestation present in the bid. Tied to the NRT component. | | otc_nrt_attestation_raw | string | Raw NRT attestation text from the bid. Sparsely populated. | | otc_nrt_indicator | boolean | Boolean specific to the otc_nicotine_replacement_therapy component: is OTC NRT offered. Populated only on NRT rows (75,606); the NRT sub-benefit exists only report_year 2019+. Null (428,147) elsewhere. | | otc_nrt_indicator_code | string | Raw CMS code for NRT indicator. | | otc_nrt_indicator_label | string | Human label for NRT indicator (Yes/No). | | otc_offered | boolean | Row/component-level boolean: is THIS specific OTC component offered (distinct from plan-level otc_base_offered). Fill varies by component (e.g. 170,571 on items_allowance, 75,606 on NRT). Pairs with otc_offered_code/label and offered_status. | | otc_offered_code | string | Raw CMS code for otc_offered. | | otc_offered_label | varchar(3) | Human label for otc_offered ('Yes' 188,207 / 'No' 155,354 / null 160,192). | | otc_package_aggregate_amount | double | | | otc_package_aggregate_annualized | double | | | otc_package_aggregate_category_codes | string | | | otc_package_aggregate_period_code | string | | | otc_package_aggregate_period_label | string | | | otc_package_id | string | | | otc_package_match_basis | string | | | otc_package_name | string | | | otc_package_type_code | string | | | otc_package_type_label | string | | | otc_pooled_group_amount | double | | | otc_pooled_group_category_codes | string | | | otc_pooled_group_count | bigint | | | otc_pooled_group_index | int | | | otc_pooled_group_name | string | | | otc_pooled_group_period_code | string | | | otc_pooled_group_period_label | string | | | otc_pooled_with | string | | | otc_section_d_category_codes | string | | | otc_section_d_group_index | int | | | otc_section_d_group_name | string | | | otc_sub_benefit | string | THE component dimension and part of grain. 4 values: 'otc_list_coverage' & 'otc_items_allowance' (all years), 'otc_nicotine_replacement_therapy' (2019+), 'otc_naloxone' (2025-2026 only). Each value drives which indicator columns are populated; only otc_items_allowance carries a dollar amount. | | otc_targeting | varchar(36) | | | source_amount_column | string | Name of the upstream silver/PBP column the benefit_amount was read from. Lineage; null on indicator rows. | | source_period_column | string | Name of the upstream column the period was read from. Lineage. | | source_pbp_section | string | Which PBP section the row came from: 'B13B' (487,753 = modern format) or 'B13C' (16,000 = older 2010-era OTC layout). A format/version marker, not a benefit difference. | | source_silver_table | varchar(59) | Always 'medicare_silver.pbp_section_b13_other_services' — the single upstream silver table feeding this view. | | lmi_authorities | string | Intended to hold LMI (low-income / authorities) tagging, but EMPTY ('') for every row in this view. Carries no information here. | | source_url | string | CMS download URL of the PBP PUF zip the row came from (31 distinct = 31 release files, one per report_year/quarter snapshot). Provenance. | | sha256_content_hash | string | Content hash of the source file (31 distinct, 1:1 with source_url). Provenance/integrity, not a row key. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_otc WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_otc")` first. # PBP outpatient hospital (cleaned view) `medicare_semantic.vw_pbp_outpatient_hospital` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP outpatient hospital rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning sur **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, outpatient_hospital_sub_benefit) — i.e., one enrollee cost-share record per MA plan-segment, per quarterly PBP snapshot, per outpatient-hospital sub-benefit. Each plan-snapshot yields exactly 2 rows: outpatient_services and outpatient_observation (179,479 plan-snapshots x 2 = 358,958 rows). Verified: this 6-column key has 0 duplicate excess across all 358,958 rows (MAX rows-per-group = MIN = 1). **How to use it.** Get the latest enrollee out-of-pocket cost for outpatient hospital services per MA plan for plan-year 2026, de-duplicated to one snapshot: SELECT contract_id, plan_id, segment_id, cost_share_string, copay_amount, coinsurance_pct, auth_required FROM medicare_semantic.vw_pbp_outpatient_hospital WHERE report_year=2026 AND quarter=1 AND outpatient_hospital_sub_benefit='outpatient_services'. Answers: 'for each 2026 MA plan, what does a member pay (flat copay or % coinsurance) for an outpatient hospital visit, and is prior auth required?' To compare across plan years, hold quarter fixed (e.g. the max quarter per year) so you don't count the same plan multiple times. **Traps.** - SNAPSHOTS, NOT HISTORY — querying without filtering quarter double/triple/quadruple-counts plans. The same plan-year is republished across Q1-Q4 with identical benefits (verified: H0028/013 shows the same $40 copay across all four 2019 quarters). There is NO is_current column. To get one row per plan-year, filter to a single snapshot, e.g. the MAX(quarter) per report_year. report_year is the real history axis (2010-2026), NOT the 'quarter' column the auto-profiler labeled as time. - MINIMAL GRAIN needs outpatient_hospital_sub_benefit — (contract_id, plan_id, segment_id, report_year, quarter) gives 179,479 rows but the table has 358,958 because every plan-snapshot has 2 rows: 'outpatient_services' and 'outpatient_observation'. Forgetting this column doubles your counts. Adding network_type/source_pbp_section/benefit_category does NOT help — they are constants (in_network / B9A / outpatient_hospital). - has_copay / has_coinsurance are STRUCTURAL design flags, not value-present flags — has_copay=True with copay_amount NULL in 60,377 rows; has_coinsurance=True with coinsurance_pct NULL in 49,529. They mean 'the cost-share design includes this component', not 'the number was extracted'. All four has_* booleans are also nullable (NULL in 17,804 rows). To find rows with an actual dollar/percent, test copay_amount IS NOT NULL / coinsurance_pct IS NOT NULL, not the has_* flags. - An ENTIRE family of columns is 100% NULL here because this is a shared wide schema across all PBP categories: every limit_* field, every benefit_amount* field, normalization_status/basis, aggregation_policy, and max_oop_applies. Do not expect benefit limits or dollar-allowance fields from this view — they apply to other categories (dental allowances, transportation trip caps), not outpatient hospital. - Several 'quality/provenance' columns are constant single-values and carry NO discriminating signal in this view: numeric_amount_observability='offered_without_numeric_amounts' (MISLEADING — many numeric amounts ARE present), null_amount_reason='unknown_requires_crosswalk', offered_status='offered', confidence_tier='source_faithful', annualization_policy='not_numeric', combined_limit_policy='none_detected', consumer_document_reconciliation_status='not_checked'. Treat confidence_tier='source_faithful' + reconciliation='not_checked' as the real caveat: these are raw PBP values, NOT independently corroborated against consumer Summary-of-Benefits docs. - copay_amount_min/max and coinsurance_pct_min/max are a PLAN-LEVEL RANGE across the plan's B9a cost-share tiers, not per-row bounds and not cross-plan statistics. copay_amount is the headline value; copay_amount_max can be much higher (differs in 55,312 rows, e.g. headline $110, max $325). Use min/max to see the full copay spread within a plan; use copay_amount/cost_share_string for the headline. - version and quarter both look like keys but are snapshot/file attributes, not benefit dimensions. version is uniquely determined by (plan, report_year, quarter) — exactly 1 per snapshot — and changes year-over-year as plans resubmit; it is CMS's PBP file version, not part of the grain. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (1,680 distinct). Prefix encodes contract type: H = standard MA/MA-PD (1,644 contracts, 352,546 rows), R = regional PPO (34, 6,402 rows), E = employer/EGWP (2, 10 rows). NOT unique per row. | | plan_id | string | Plan number within the contract (3-digit, e.g. '001','013'; 656 distinct values). Identifies a specific benefit package; only unique in combination with contract_id and segment_id. NOT unique per row. | | segment_id | string | Plan benefit-package segment (mostly '0'; 26 distinct). Segments split a plan by service area with differing benefits. Part of the plan key. | | version | double | CMS PBP software/submission file version for that snapshot (a double, e.g. 2.0,3.0,6.0). Constant within a (plan, report_year, quarter) — verified exactly 1 version per snapshot. It is a provenance/file-version attribute, NOT a benefit value and NOT part of the grain; it changes year-over-year as plans resubmit. | | report_year | double | Plan/benefit year the PBP describes (2010-2026). The PRIMARY time dimension — pair with quarter. (Note: the auto-profiler mislabeled 'quarter' as the time column; the real history axis is report_year.) | | quarter | double | The quarterly CMS PBP republication snapshot (1-4) within report_year. Same plan-year is republished across multiple quarters with (almost always) identical benefits — these are SNAPSHOTS, not benefit changes. 2010-2017 have only Q1; later years have 2-4 quarters. Part of the grain but functions as a snapshot/version axis. | | benefit_category | string | Constant = 'outpatient_hospital' for every row. A view-scoping label, carries no discriminating information. | | cost_share_string | string | Human-readable headline cost share, e.g. '20.0%', '$40.0 copay', '$0 copay', '0.0%'. Filled 235,089/358,958 (65%). The most useful single field for 'what does the enrollee pay'. NULL when the plan's cost share for this sub-benefit was not extractable. | | copay_amount | double | Headline/primary per-visit copay dollars (filled 151,589). 0.0 is a real value ($0 copay). NULL when the cost share is coinsurance-based or absent. This is the PRIMARY value; the plan may have additional copay tiers captured by copay_amount_min/max. | | coinsurance_pct | double | Headline coinsurance percentage the enrollee pays (filled 87,713; e.g. 20.0 = 20%). NULL when the cost share is a flat copay or absent. Mutually-typical-exclusive with copay_amount per row. | | limit_text | string | 100% NULL in this view. Free-text benefit limit; not applicable to outpatient hospital (a shared wide schema field used by other PBP categories like allowances/trip limits). | | auth_required | boolean | Boolean: does the plan require prior authorization for this benefit. True in 193,312 rows, False in 52,952, NULL in 112,694 (the flag is genuinely nullable / not-coded for older or incomplete snapshots). | | referral_required | boolean | Boolean: referral required for this benefit. True 56,504 / False 189,760 / NULL 112,694. Nullable; NULLs co-occur with auth_required NULLs. | | network_type | varchar(10) | Constant = 'in_network' for all 358,958 rows. This view carries only in-network B9a cost shares; out-of-network is not represented here. | | max_oop_applies | boolean | 100% NULL in this view. Intended to flag whether the benefit counts toward the plan MOOP; not populated for outpatient hospital. | | limit_quantity | double | 100% NULL. Numeric benefit-limit quantity; not applicable here (shared-schema field). | | limit_unit | string | 100% NULL. Unit for a benefit limit; not applicable here. | | limit_period_code | string | 100% NULL. Period code for a benefit limit; not applicable here. | | limit_period_label | string | 100% NULL. Human label for the limit period; not applicable here. | | limit_quantity_per_year | double | 100% NULL. Annualized limit quantity; not applicable here. | | benefit_amount | double | 100% NULL in this view. Dollar allowance/credit amount (used by allowance-type benefits e.g. dental/OTC); outpatient hospital has no allowance, so always empty. | | benefit_amount_kind | string | 100% NULL. Type of the allowance amount; not applicable here. | | benefit_amount_period_code | string | 100% NULL. Period code for the allowance; not applicable here. | | benefit_amount_period_label | string | 100% NULL. Period label for the allowance; not applicable here. | | benefit_amount_annualized | double | 100% NULL. Annualized allowance; not applicable here. | | benefit_amount_pmpm | double | 100% NULL. Allowance expressed per-member-per-month; not applicable here. | | normalization_status | string | 100% NULL in this view. Pipeline normalization status; not populated for this category. | | normalization_basis | string | 100% NULL. Basis used for amount normalization; not populated here. | | aggregation_policy | string | 100% NULL. Policy describing how sub-values were aggregated; not populated here. | | offered_status | varchar(15) | Constant = 'offered' for all rows. Indicates the benefit is offered by the plan; no discriminating value in this view. | | numeric_amount_observability | varchar(31) | Constant = 'offered_without_numeric_amounts' for all 358,958 rows. MISLEADING in this view: despite this flag, copay_amount is populated 151,589 times and coinsurance_pct 87,713 times. Treat it as a stale/non-discriminating metadata tag, NOT as evidence that numbers are missing. | | null_amount_reason | varchar(30) | Constant = 'unknown_requires_crosswalk' for all rows. A boilerplate reason string; non-discriminating here and not reliable given that many numeric amounts are in fact present. | | annualization_policy | varchar(17) | Constant = 'not_numeric' for all rows. Non-discriminating in this view. | | combined_limit_policy | varchar(29) | Constant = 'none_detected' for all rows. Non-discriminating in this view. | | consumer_document_reconciliation_status | varchar(11) | Constant = 'not_checked' for all rows. Indicates the cost share has NOT been reconciled against consumer-facing Summary-of-Benefits documents. Non-discriminating here; a caveat that these are source-faithful PBP values, not consumer-doc-verified. | | confidence_tier | varchar(23) | Constant = 'source_faithful' for all rows. Means the values faithfully reflect the raw CMS PBP source (not independently corroborated). Non-discriminating. | | benefit_layer | string | | | blood_three_pint_deductible_waived | boolean | | | blood_three_pint_waiver_basis | string | | | coinsurance_pct_max | double | Maximum coinsurance % across the cost-share tiers within this plan's B9a section (range upper bound). Filled when coinsurance present. Equals coinsurance_pct when there is a single tier. | | coinsurance_pct_min | double | Minimum coinsurance % across the plan's B9a tiers (range lower bound). | | copay_amount_max | double | Maximum copay dollars across ALL copay tiers in the plan's B9a section — the RANGE upper bound, NOT a per-row value. Differs from copay_amount/copay_amount_min in 55,312 rows (e.g. headline $110 but max $325). Use this to see the full copay spread, not just the headline. | | copay_amount_min | double | Minimum copay dollars across the plan's copay tiers (range lower bound); typically equals copay_amount (the headline). | | cost_share_period_code | string | Period the cost share applies over, when present (filled only 48,482; 310,476 NULL). Observed codes: '1' (9,462), '2' (38,472), '3' (548) — CMS PBP period codes (e.g. per-day vs per-stay vs per-period). NULL is the common case (period unspecified / per-visit). | | cost_share_period_label | string | | | cost_share_period_text | string | | | deductible_amount | double | | | deductible_basis | string | | | has_coinsurance | boolean | Boolean STRUCTURAL flag: the plan's cost-share design includes a coinsurance component. CAUTION: True with coinsurance_pct NULL in 49,529 rows — it does NOT mean a numeric % was extracted. Also itself NULL in 17,804 rows. | | has_copay | boolean | Boolean STRUCTURAL flag: cost-share design includes a copay component. CAUTION: True with copay_amount NULL in 60,377 rows (and a handful False-with-amount). Does NOT imply a numeric copay is present; itself NULL in 17,804 rows. (Explains sample rows where has_copay=true on a coinsurance-only line.) | | has_deductible | boolean | Boolean: a deductible applies to this benefit. Almost always False (340,620), True in 534, NULL in 17,804. Note no deductible DOLLAR amount is carried in this view. | | has_max_enrollee_oop | boolean | Boolean: a benefit-specific max enrollee OOP applies. Mostly False (341,154 non-null), True in 534, NULL in 17,804. | | label_note | string | | | max_enrollee_oop_amount | double | | | max_enrollee_oop_period_code | string | | | max_enrollee_oop_period_label | string | | | max_enrollee_oop_period_text | string | | | max_enrollee_oop_type_code | string | | | max_enrollee_oop_type_label | string | | | outpatient_hospital_sub_benefit | string | Splits each plan-snapshot into exactly 2 rows: 'outpatient_services' and 'outpatient_observation' (179,479 each). THE row-doubling dimension and part of the grain. Both map to PBP section B9a; observation is the dedicated observation-stay cost share, services is general outpatient hospital. | | registry_l2_id | string | | | supplemental_benefit_type | string | | | source_pbp_section | varchar(3) | Constant = 'B9A' for all rows. The CMS PBP section these benefits come from (outpatient hospital). Non-discriminating. | | source_silver_table | varchar(42) | Constant = 'medicare_silver.pbp_section_b9_outpat_hosp'. Lineage pointer to the upstream silver table this view is built from. | | lmi_authorities | string | Constant URL to the CMS/LMI 'PBP Service Category Descriptions' PDF (the authoritative benefit-definitions document). A provenance/definition reference, same for every row. | | source_url | string | CMS source ZIP the snapshot came from, e.g. 'https://www.cms.gov/files/zip/pbp-benefits-2022-quarter-2.zip'. 31 distinct values = 31 (year,quarter) snapshots ingested. 1:1 with sha256_content_hash. | | sha256_content_hash | string | SHA-256 of the source ZIP content for that snapshot (31 distinct, 1:1 with source_url). Provenance/integrity fingerprint identifying the exact ingested file. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_outpatient_hospital WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_outpatient_hospital")` first. # PBP partb rx drugs (cleaned view) `medicare_semantic.vw_pbp_partb_rx_drugs` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP partb rx drugs rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface **Grain.** One row per MA plan benefit package per CMS PBP release file. The minimal verified-unique key is (contract_id, plan_id, segment_id, report_year, quarter): 189,385 rows = 189,385 distinct combinations. report_year is mandatory in the key (dropping it collapses to 55,564). quarter is a republish/snapshot dimension: for report_years 2008-2017, 2021, 2025, 2026 there is only Q1 (one row per plan-year), but 2018-2020 and 2022-2024 were re-published all 4 quarters, so a plan appears up to 4x in those years -- same benefit, different source file. **How to use it.** Get the current (2026) in-network Part B drug member cost-share for every MA plan, deduped to one row per plan: SELECT contract_id, plan_id, segment_id, coinsurance_pct, copay_amount, cost_share_string, ira_insulin_copay_month_amount FROM medicare_semantic.vw_pbp_partb_rx_drugs WHERE report_year = 2026 AND quarter = (SELECT MAX(quarter) FROM medicare_semantic.vw_pbp_partb_rx_drugs WHERE report_year = 2026). Answers 'what does a beneficiary pay (e.g. 20% coinsurance) for Part-B-administered drugs under each MA plan, and which plans apply the IRA $35 insulin cap?' **Traps.** - NO is_current column and NO single 'live' row per plan-year. In republish years (2018-2020, 2022-2024) a plan appears up to 4 times -- once per quarter (quarter 1-4) -- with IDENTICAL benefit values but different source_url/sha256_content_hash. To get one row per plan per benefit-year you MUST dedup, e.g. keep MAX(quarter) per (contract_id,plan_id,segment_id,report_year). Summing/AVG-ing across rows without this 4x-counts those years. - report_year (not quarter) is the real time axis and is REQUIRED in the grain key. The profiler reported quarter as the time column and offered a candidate key (contract_id,plan_id,segment_id,limit_period_code,benefit_amount_period_code,confidence_tier[,quarter]) that is NOT unique (55,564 of 189,385) and is built from all-NULL/constant placeholder columns. The true minimal key is (contract_id, plan_id, segment_id, report_year, quarter). - Roughly a dozen columns are pure CONSTANTS in this view (benefit_category, network_type, offered_status, numeric_amount_observability, null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status, confidence_tier, partb_rx_drugs_sub_benefit, source_pbp_section, source_silver_table, lmi_authorities) and another ~10 are 100% NULL (benefit_amount*, limit_*, referral_required, max_oop_applies, normalization_*). These are shared semantic-view template fields; do not filter or join on them expecting signal. - Nulls carry temporal meaning. The IRA insulin columns (has_ira_insulin_coinsurance, ira_insulin_*) are 100% NULL before report_year 2024, then populated -- a null means 'pre-Inflation-Reduction-Act / not applicable', not false; the $35 cap only appears 2024+. Chemo coinsurance columns are null before report_year 2010 (chemo cost-share was copay-only earlier). Filtering on these silently drops all older years. - coinsurance_pct (71.3% filled) is the headline member cost-share, but coinsurance_pct_max is filled MORE (85.4%): ~26,695 rows have the _max set while the headline coinsurance_pct is null, because the _min/_max columns aggregate across the standard + chemo + insulin sub-amounts. Use coinsurance_pct/copay_amount for the plain plan-level cost-share; use the _min/_max for the full range. version is exactly one value per grain key (the CMS file version), so it is redundant with the key, not a grain dimension. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (e.g. H0028, E5088; H-/R-/S-/E- prefixes for various plan types). 1,813 distinct. Part of grain. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001','801'). 656 distinct values. contract_id+plan_id+segment_id identifies the plan benefit package (PBP). Part of grain. | | segment_id | string | PBP segment number (service-area sub-segment of a plan). 26 distinct; '0' on 92% of rows (174,647); >0 for plans segmented by geography/premium. Part of grain. | | version | double | CMS PBP file version number for that release (1-27). Exactly one value per (contract,plan,segment,report_year,quarter), so it is redundant with the grain, NOT a grain dimension. | | report_year | double | Plan/contract benefit year, 2008-2026. The real time axis (annual). Tracks the source file year. Part of grain. NOTE: stored as double (2008.0). | | quarter | double | CMS PBP republish quarter (1-4) of the source file within report_year. A snapshot/version dimension, not a benefit-quarter: same plan-year republished in multiple quarters carries identical benefit data but a different source file/hash. Most years have only quarter=1. Part of grain. Stored as double. | | benefit_category | string | CONSTANT = 'partb_rx_drugs' on every row. Template/scaffolding column identifying this view's benefit family; carries no per-row signal. | | cost_share_string | string | Human-readable rendering of the member cost-share, e.g. '20.0%', '0.0%', '$0 copay', '$5.0 copay + 20.0%', '$45.0 copay'. Filled 73.9%. The display-friendly summary of copay_amount + coinsurance_pct. | | copay_amount | double | Flat dollar copay for the Part B drug benefit. Filled only 5.2% (most plans use coinsurance, not copay). Dominant value $0; also $5/$45/$10 etc. | | coinsurance_pct | double | Member coinsurance percentage -- the PRIMARY cost-share mechanism here, filled 71.3%. 20% dominates (90,053 rows = standard Medicare Part B drug coinsurance); 0% for plans that waive it (43,266). | | limit_text | string | 100% NULL in this view. Template column for free-text benefit limits; not used for Part B Rx. | | auth_required | boolean | Boolean: prior authorization required for the benefit. Filled 93.4% (false on the sample rows shown). | | referral_required | boolean | 100% NULL. Template column; not applicable to this drug benefit. | | network_type | varchar(10) | CONSTANT = 'in_network' on every row. This view captures only in-network cost-share; no out-of-network rows exist here. | | max_oop_applies | boolean | 100% NULL. Template column (does this benefit count toward the MOOP); not populated for Part B Rx. | | limit_quantity | double | 100% NULL. Template quantity-limit column; unused here. | | limit_unit | string | 100% NULL. Template column (unit for limit_quantity); unused. | | limit_period_code | string | Template period code for a benefit limit. NULL here; appears in the profiler's candidate key only as a coalesced placeholder, NOT a real grain column. | | limit_period_label | string | 100% NULL. Human label for limit_period_code; unused for this benefit. | | limit_quantity_per_year | double | 100% NULL. Template annualized quantity limit; unused. | | benefit_amount | double | 100% NULL. Template column for a plan-paid benefit dollar amount; this is a cost-share view, so it is empty. | | benefit_amount_kind | string | 100% NULL. Template (kind of benefit_amount); unused. | | benefit_amount_period_code | string | Template period code for benefit_amount. NULL; like limit_period_code it is only a coalesced placeholder in the profiler's candidate key, not real grain. | | benefit_amount_period_label | string | 100% NULL. Label for benefit_amount_period_code; unused. | | benefit_amount_annualized | double | 100% NULL. Template annualized benefit dollar; unused. | | benefit_amount_pmpm | double | 100% NULL. Template per-member-per-month benefit dollar; unused. | | normalization_status | string | 100% NULL in this view. Template provenance field describing numeric normalization; not set for this benefit. | | normalization_basis | string | 100% NULL. Template field (basis of normalization); unused. | | aggregation_policy | string | 100% NULL. Template field describing how multiple sub-amounts were aggregated; unused here. | | offered_status | varchar(15) | CONSTANT = 'offered' on every row. Every row represents a plan that offers the Part B Rx benefit; no 'not_offered' rows in this view. | | numeric_amount_observability | varchar(31) | CONSTANT = 'offered_without_numeric_amounts'. Provenance flag: benefit is offered but a fully reconciled numeric amount is not asserted (headline numbers come from parsed cost-share strings). Same for all rows. | | null_amount_reason | varchar(30) | CONSTANT = 'unknown_requires_crosswalk'. Explains why amount fields can be null -- a crosswalk would be needed to resolve them. Same on every row. | | annualization_policy | varchar(17) | CONSTANT = 'not_numeric'. The benefit amount is not annualized because it is not a numeric dollar benefit. Same for all rows. | | combined_limit_policy | varchar(29) | CONSTANT = 'none_detected'. No combined/shared benefit limit detected. Same for all rows. | | consumer_document_reconciliation_status | varchar(11) | CONSTANT = 'not_checked'. Whether the value was reconciled against a consumer-facing doc (SB/EOC); not done for this benefit. Same on every row. | | confidence_tier | varchar(23) | CONSTANT = 'source_faithful'. Confidence label: value is faithfully carried from the CMS source (no inference). Same on every row; appears in the profiler candidate key but is not a real grain column. | | chemo_coinsurance_pct_max | double | Max coinsurance % for the Part B chemotherapy/anti-cancer drug sub-benefit. Filled from report_year 2010 onward (PBP schema change). 20% dominates (158,471). | | chemo_coinsurance_pct_min | double | Min coinsurance % for the chemo drug sub-benefit. Same 2010+ availability as the max. | | chemo_copay_amount_max | double | Max flat copay for the chemo drug sub-benefit. Present even in 2008-2009 (when chemo coinsurance was not yet a field); sparse thereafter. | | chemo_copay_amount_min | double | Min flat copay for the chemo drug sub-benefit. | | coinsurance_applies_to | varchar(22) | | | coinsurance_pct_max | double | Max coinsurance % across the benefit's sub-amounts (standard + chemo + insulin). Filled 85.4% -- HIGHER than coinsurance_pct (71.3%): 26,695 rows have this set while the headline coinsurance_pct is null, because it aggregates across sub-benefits. | | coinsurance_pct_min | double | Min coinsurance % across the benefit's sub-amounts. Filled ~71.3%. | | coinsurance_source_field | varchar(19) | | | copay_amount_max | double | Max flat copay across the benefit's sub-amounts. Filled ~5.2% (copay is rare for this benefit). | | copay_amount_min | double | Min flat copay across sub-amounts. Filled ~5.2%. | | copay_applies_to | varchar(22) | | | has_coinsurance | boolean | Boolean: coinsurance applies to the benefit. Filled 94.7%. The dominant cost-share signal for Part B drugs. | | has_copay | boolean | Boolean: a flat copay applies. TRUE on 9,983 rows and aligns with copay_amount (only 189 TRUE rows lack a numeric copay). Filled 94.7%. | | has_deductible | boolean | Boolean: a deductible applies to the benefit. Filled 94.6%. | | has_ira_insulin_coinsurance | boolean | Boolean for the Inflation Reduction Act insulin coinsurance provision. 100% NULL until report_year 2024, then populated -- a null here means 'pre-IRA / not applicable', not 'false'. | | ira_insulin_coinsurance_pct_max | double | Max coinsurance % under the IRA insulin cap rule. Populated only report_year 2024+. | | ira_insulin_coinsurance_pct_min | double | Min coinsurance % under the IRA insulin cap rule. 2024+ only. | | ira_insulin_copay_amount_max | double | Max copay under the IRA insulin provision. 2024+ only. | | ira_insulin_copay_amount_min | double | Min copay under the IRA insulin provision. 2024+ only. | | ira_insulin_copay_month_amount | double | The IRA monthly insulin out-of-pocket cap. Populated 2024+; value is $35 on 22,866 rows (the statutory IRA insulin cap), with a few $0/$25. The headline IRA-insulin number. | | partb_rx_drugs_sub_benefit | string | CONSTANT = 'partb_drugs' on every row. Sub-benefit label within the B15 section; no per-row variation in this view. | | partd_home_infusion_bundled_supplemental | boolean | | | source_pbp_section | varchar(3) | CONSTANT = 'B15'. The CMS PBP PUF section this benefit is parsed from (B15 = Medicare Part B Rx Drugs). Same on every row. | | source_silver_table | varchar(46) | CONSTANT = 'medicare_silver.pbp_section_b15_partb_rx_drugs'. The upstream silver table this gold view is built from; provenance/lineage pointer. | | lmi_authorities | string | CONSTANT, single pipe-delimited string of LMI (Local Market Intelligence) authority document URLs (CY2026 PBP Service Category Descriptions PDF + Part C Bid Review Memorandum). The semantic-definition citations; identical on all rows. | | source_url | string | URL of the CMS PBP PUF zip the row came from. 33 distinct; tracks report_year and quarter (e.g. pbp-benefits-2008.zip; pbp-benefits-2023-quarter-3.zip; pbp-benefits-2026.zip). Confirms quarter is the source-file/republish dimension. | | sha256_content_hash | string | Content hash of the source file. Differs per (report_year,quarter) source file -- so the 4 quarterly copies of one plan-year have DIFFERENT hashes despite identical benefit data. A provenance/dedup fingerprint, not a benefit attribute. | | statutory_insulin_cap_month_amount | double | | | statutory_insulin_cap_effective_from | date | | | statutory_insulin_cap_basis | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_partb_rx_drugs WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_partb_rx_drugs")` first. # PBP partd drugs (cleaned view) `medicare_semantic.vw_pbp_partd_drugs` · Medicare Advantage, Part D, Medicaid · status partial Cleaned source-faithful PBP partd drugs rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for **Grain.** One row per Medicare plan (contract_id + plan_id + segment_id) per ingested CMS PBP source FILE. The minimal verified-unique key is (contract_id, plan_id, segment_id, sha256_content_hash, quarter) = 208,537 distinct = exactly the 208,537 row_count. sha256_content_hash (equivalently source_url) identifies the physical CMS release file/snapshot; quarter is required only because one 2022 file got materialized under two quarter labels. There is NO is_current flag — this is stacked release-snapshot history (2010-2026, gap at 2020), so a plan appears once per file it was published in. A clean "one row per plan-year" slice has 104,320 distinct (contract_id, plan_id, segment_id, report_year), reached by deduping to the latest source_url per plct-year. **How to use it.** To get the current (2026) Part-D formulary structure for each MA/PDP plan without double-counting: SELECT contract_id, plan_id, segment_id, offers_part_d, part_d_benefit_type, formulary_model_type, formulary_model_desc, formulary_tier_count, has_gap_coverage FROM medicare_semantic.vw_pbp_partd_drugs WHERE report_year = 2026 AND offers_part_d = true. (2026 is a single-file year so no dedup needed; for multi-file years like 2023 add a QUALIFY ROW_NUMBER() OVER (PARTITION BY contract_id,plan_id,segment_id ORDER BY source_url DESC)=1 to keep one snapshot.) This answers 'what does each plan's drug benefit look like (how many tiers, what formulary model, does it cover the gap)' — but NOT 'what does drug X cost', which this view does not contain. **Traps.** - NO dollar amounts: every numeric cost column (copay_amount, coinsurance_pct, benefit_amount, benefit_amount_pmpm, limit_quantity, auth_required, max_oop_applies) is 100% NULL. This is by design (numeric_amount_observability='offered_without_numeric_amounts', cost_share_string='see_per_tier_breakdown'). This view tells you a plan's Part-D STRUCTURE/formulary, not its prices — per-tier copays live in a different table. Do not use it for cost benchmarking. - This is stacked snapshot history with NO is_current flag. A plan appears once per ingested CMS release file, so 6 years (2018,2019,2021,2022,2023,2024) have 2-4 files and will DOUBLE/QUADRUPLE-count plans if you don't dedup. For one-row-per-plan-year, pick the latest source_url per (contract_id,plan_id,segment_id,report_year). report_year 2020 is entirely absent. - The unique key looks like CPS+report_year+quarter but is NOT — that gives 192,230 not 208,537. The minimal verified key is (contract_id,plan_id,segment_id,sha256_content_hash,quarter)=208,537. The extra ~16k dupes are the same plan in two files of the same year (an 'updated' release plus a 'quarter' release). - The 'quarter' column is unreliable: pre-2018 and 2025/2026 annual files are all forced to quarter=1, and the single file pbp-benefits-2022-quarter-2.zip was loaded under BOTH quarter=1 and quarter=2 (identical 8,336-row copies) — that double-load is the ONLY reason quarter is needed to make the key unique. Treat quarter as a release-label, not a real calendar quarter; report_year is the true time axis. - ~18 columns are CONSTANTS (benefit_category=partd_drugs, network_type=in_network, partd_offering_axis=plan_level_summary, offered_status=offered, confidence_tier=source_faithful, numeric_amount_observability, null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status, source_pbp_section=MRX, source_silver_table, lmi_authorities, etc.). They carry zero per-row signal — don't filter or group on them expecting variation. - Code columns (formulary_model_type, part_d_benefit_type, gap_coverage_tier, ira_coverage_tier, partd_network_location, reduced_cost_share_items, *_cost_share_struct, attestations) are RAW CMS PBP codes / bit-flag strings passed through verbatim (confidence_tier='source_faithful') and NOT decoded — you must crosswalk them against the CMS PBP data dictionary / the lmi_authorities PDF. formulary_model_desc is the only decoded text and it is NOT a strict 1:1 map of formulary_model_type (same code yields 2-3 desc variants across vintages). - Filter on offers_part_d: 25,435 rows are MA plans that do NOT offer Part-D (offers_part_d=false), and on those rows the entire formulary/gap/deductible payload is NULL. part_d_benefit_type is also null on some offers_part_d=true rows whose source file lacked the MRX detail section (e.g. 2026 H0016). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID (e.g. H0028); 1,806 distinct. Part of the plan key, NOT unique alone. | | plan_id | string | 3-digit plan benefit package ID within the contract (e.g. 001); 656 distinct. Part of the plan key. | | segment_id | string | Plan segment ID (service-area segment), usually '0'; 26 distinct. Third element of the contract/plan/segment (CPS) plan key. | | version | double | The plan's PBP submission/filing version number (double, observed 1-27). Varies PER PLAN within a single source file (e.g. in the 2026 file one plan is v2, another v5) — it is NOT a file-level marker and NOT needed to make rows unique. Higher counts at low values (most plans v1-6). | | report_year | double | Contract/benefit year the PBP describes (2010-2026; 2020 missing). This is the real time axis (the profiler mislabeled 'quarter' as the time column). Pre-2018 = one annual file; 2018-2019 & 2023 = 4 quarterly files; 2021/2022/2024 = 2-3 mid-year releases; 2025/2026 = single annual file. | | quarter | double | Release-quarter label (1-4) of the source file. UNRELIABLE / quasi-derived: pre-2018 and 2025/2026 annual files are forced to quarter=1; and the 2022-quarter-2 file was loaded under BOTH quarter=1 and quarter=2 (8,336 rows each), which is the only reason quarter is needed in the unique key. Do not treat as a true calendar quarter. | | benefit_category | string | Constant = 'partd_drugs' for all 208,537 rows. This view is the Part-D-drugs slice of a broader benefit superschema. | | cost_share_string | varchar(22) | Constant = 'see_per_tier_breakdown'. A pointer/sentinel: actual per-tier copays/coinsurance live in a separate per-tier table, not here. | | copay_amount | double | 100% NULL. Inherited numeric-benefit column from the superschema; never populated in this plan-level drug view. | | coinsurance_pct | double | 100% NULL. Inherited placeholder; no coinsurance carried here. | | limit_text | double | Declared double but 100% NULL (type mismatch artifact). Unused. | | auth_required | boolean | 100% NULL. Prior-auth flag not populated for Part-D plan-summary rows. | | referral_required | boolean | 100% NULL. Inherited placeholder, unused here. | | network_type | varchar(10) | Constant = 'in_network' for all rows. Out-of-network drug cost shares are not represented as separate rows. | | max_oop_applies | boolean | 100% NULL. Inherited placeholder. | | limit_quantity | double | 100% NULL. Inherited quantity-limit placeholder. | | limit_unit | string | 100% NULL. Inherited placeholder. | | limit_period_code | string | 100% NULL. Inherited placeholder (profiler listed it as a candidate key only because null-coalescing made it look like a discriminator). | | limit_period_label | string | 100% NULL. Inherited placeholder. | | limit_quantity_per_year | double | 100% NULL. Inherited placeholder. | | benefit_amount | double | 100% NULL. Inherited numeric placeholder; no dollar benefit amounts in this view. | | benefit_amount_kind | string | 100% NULL. Inherited placeholder. | | benefit_amount_period_code | string | 100% NULL. Inherited placeholder (also a profiler false-candidate key). | | benefit_amount_period_label | string | 100% NULL. Inherited placeholder. | | benefit_amount_annualized | double | 100% NULL. Inherited placeholder. | | benefit_amount_pmpm | double | 100% NULL. Inherited per-member-per-month placeholder. | | normalization_status | string | 100% NULL here (the per-row normalization outcome is not set because there are no numeric amounts to normalize). | | normalization_basis | string | 100% NULL. Inherited placeholder. | | aggregation_policy | string | 100% NULL for every row. Inherited placeholder. | | offered_status | varchar(15) | Constant = 'offered' for all rows. A warranty stamp meaning the benefit category is offered/applicable; carries no per-row signal. | | numeric_amount_observability | varchar(31) | Constant = 'offered_without_numeric_amounts'. Explicitly states this view has structure but no dollar figures — confirms the all-null numeric columns are by design. | | null_amount_reason | varchar(30) | Constant = 'unknown_requires_crosswalk'. Why the numeric amounts are null: they require an external per-tier crosswalk not joined in this view. | | annualization_policy | varchar(17) | Constant = 'not_numeric'. No annualization performed because there are no numeric amounts. | | combined_limit_policy | varchar(29) | Constant = 'none_detected'. No combined-limit handling applied. | | consumer_document_reconciliation_status | varchar(11) | Constant = 'not_checked'. Rows have not been reconciled against consumer-facing documents (e.g. Summary of Benefits). | | confidence_tier | varchar(23) | Constant = 'source_faithful'. All values are passed through verbatim from CMS PBP without re-derivation; codes are raw, not decoded/validated. | | alt_deductible_amount | double | 100% NULL. Inherited numeric placeholder for an alternative deductible amount. | | alt_deductible_amount_resolved | double | | | alt_deductible_basis | varchar(54) | | | alt_deductible_charge | string | Raw CMS PBP code (string, e.g. '1','3') indicating the alternative-deductible charge type; null when not applicable. Not decoded. | | balance_cost_share_structure | string | | | balance_covered_tiers | string | | | balance_deductible_amount | double | | | balance_deductible_option | string | | | balance_excluded_extended_supply_tiers | string | | | balance_excluded_mail_order_tiers | string | | | balance_model_attested | boolean | | | balance_model_status | varchar(49) | | | balance_opt_in_flexibilities | string | | | balance_opt_in_other_description | string | | | deductible_applies_to_all_tiers | boolean | | | deductible_excluded_tiers | string | | | deductible_excluded_tiers_code | string | | | deductible_phase_alt_coinsurance_pct | double | | | deductible_phase_alt_copay_amount | double | | | deductible_phase_alt_cost_share_basis | varchar(36) | | | deductible_phase_alt_cost_share_scope | varchar(66) | | | deductible_phase_alt_cost_share_string | string | | | deductible_phase_alt_cost_share_structure | varchar(36) | | | deductible_phase_alt_cost_share_structure_code | string | | | deductible_phase_cost_share_same_as_initial_coverage | boolean | | | dsnp_buydown_attestation_basis | varchar(36) | | | dsnp_buydown_attested | boolean | | | first_fill_policy | string | Raw CMS PBP first-fill policy code (string, e.g. '2'). Pass-through code, not decoded to text. | | formulary_model_desc | string | Human-readable tier list for the formulary model (e.g. 'Preferred Generic, Generic, Preferred Brand, Non-Preferred Drug, Specialty Tier'). NOT a strict 1:1 decode of formulary_model_type — the same code (e.g. 5A4) maps to 2-3 slightly different desc strings across vintages. | | formulary_model_type | string | CMS PBP formulary structure code (string, e.g. '5F','5A','4A','5F4'; leading digit = tier count, suffix = model variant). 42.7% null. The main real payload field. | | formulary_tier_count | string | Number of formulary tiers as a string ('1'-'7', most commonly '5' then '6'); 38.1% null. Mirrors the leading digit of formulary_model_type. | | gap_coverage_tier | string | Raw CMS PBP coverage-gap bit-flag string (e.g. '011111', one flag per tier indicating gap coverage); 72.7% null. Pass-through, not decoded. | | has_alt_coverage_limit | boolean | Boolean: plan declares an alternative coverage limit. Nullable (null on rows lacking the MRX detail section). | | has_excluded_drugs | boolean | Boolean: plan excludes certain drugs from coverage. Nullable. | | has_gap_coverage | boolean | Boolean: plan offers coverage in the Part-D coverage gap ('donut hole'). 50.7% null (null where the detail section is absent or plan has no Part-D). | | ira_coverage_tier | string | Raw CMS PBP bit-flag string for IRA (Inflation Reduction Act) coverage by tier (e.g. '0111110'); appears in recent years. Pass-through code. | | ltc_attestation | string | Long-term-care pharmacy attestation as a raw code string (e.g. '1'). Pass-through, not decoded. | | offers_part_d | boolean | Boolean: whether the plan offers Part-D drug coverage. 183,102 true / 25,435 false. When false (and on some sparse-detail true rows), the formulary/gap/deductible payload columns are NULL — the most important filter column in the table. | | oon_cost_share_struct | string | Raw CMS PBP code (string, e.g. '1','2') describing the out-of-network cost-share structure. Pass-through code, nullable. | | otc_meds_pay_with_premium | boolean | Boolean: OTC meds paid via premium. Nullable on sparse rows. | | part_d_benefit_type | string | CMS PBP Part-D benefit type code (string '1'-'4'; '4'=Enhanced Alternative is most common at 112,059, then '1' Defined Standard). 31.5% null (null when offers_part_d=false or detail section absent). | | partd_enhanced_coverage_demo | string | Raw code for the Part-D Enhanced/VBID-style coverage demonstration; mostly null. Pass-through. | | partd_network_location | string | Raw CMS PBP 6-digit bit-flag string for pharmacy network locations offered (e.g. '110101','101101'); 31.5% null. Pass-through, not decoded into named pharmacy types. | | partd_offering_axis | varchar(18) | Constant = 'plan_level_summary' for all rows. Declares the grain explicitly: each row is a plan-level Part-D summary, NOT a per-tier or per-drug row. | | post_oop_cost_share_rule | varchar(48) | | | post_oop_cost_share_rule_scope | varchar(39) | | | post_oopt_cost_share_struct | string | Raw CMS PBP code (string) for cost-share structure AFTER the out-of-pocket threshold (catastrophic phase). Pass-through, nullable. | | pre_icl_cost_share_struct | string | Raw CMS PBP code (string) for cost-share structure BEFORE the Initial Coverage Limit. Pass-through, nullable. | | reduced_cost_share_items | string | Raw CMS PBP bit-flag string (e.g. '101','0110') for reduced-cost-share items (e.g. for LIS/supplemental). Pass-through code, nullable. | | snp_zero_cost_share_attestation_basis | varchar(36) | | | snp_zero_cost_share_attested | boolean | | | vaccine_attestation | string | Part-D vaccine attestation as a raw code string (e.g. '1'); appears in recent years. Pass-through. | | source_pbp_section | varchar(3) | Constant = 'MRX' for all rows. Identifies the CMS PBP section this view is built from (MRX = the Part-D / managed Rx section). This is why only Part-D structural fields are populated. | | source_silver_table | varchar(23) | Constant = 'medicare_silver.pbp_mrx'. The upstream silver table feeding this view (provenance stamp). | | lmi_authorities | string | Constant single URL to the LMI CY2026 PBP Service Category Descriptions PDF — the external authority doc for decoding the PBP codes. Provenance/reference stamp, identical on every row. | | source_url | string | The exact CMS PBP zip file this row was ingested from (e.g. .../pbp-benefits-2022-quarter-2.zip). Together with the CPS key + quarter it forms the unique grain; identifies the release snapshot. Use it to dedup stacked history. | | sha256_content_hash | string | Content hash of the source file; equivalent to source_url for identity (both give 200,201 distinct file-rows, 208,537 with quarter). The snapshot fingerprint; part of the verified unique grain. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_partd_drugs WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_partd_drugs")` first. # PBP partd tier (cleaned view) `medicare_semantic.vw_pbp_partd_tier` · Medicare Advantage, Part D, Medicaid · status partial Cleaned source-faithful PBP partd tier rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for **Grain.** One row per formulary tier position, per plan-segment, per quarterly PBP snapshot. The MINIMAL verified-unique key is contract_id + plan_id + segment_id + report_year + quarter + tier_id + tier_type_id. That 7-column combination yields exactly 792,027 distinct values = 792,027 total rows (verified). Dropping tier_type_id collapses to 675,843 (a plan can carry two parallel tier structures, type 1 and type 3, in the same snapshot — 57,422 plan-periods do), so tier_type_id is genuinely required. version is NOT part of the key: max distinct versions per grain key = 1 across all 792,027 keys, so it is functionally determined provenance, not a grain column. **How to use it.** Compare what beneficiaries pay by drug tier across plans for the current year. Example: SELECT contract_id, plan_id, tier_id, tier_label_list, retail_standard_copay_1m, ira_retail_standard_copay_1m, mail_order_standard_copay_3m FROM medicare_semantic.vw_pbp_partd_tier WHERE report_year=2026 AND quarter=1 AND tier_type_id='1' ORDER BY contract_id, plan_id, CAST(tier_id AS integer). This returns each plan's formulary ladder (Preferred Generic -> Specialty) with the 30-day retail copay (both the standard and the IRA-standard-benefit figure) and the 90-day mail-order copay, answering 'how much does a member pay for a generic vs a specialty drug under this plan, at retail vs mail order, this year'. Always filter to one quarter per year (quarters are duplicate snapshots) and read cost-share from the retail_/mail_/oon_/ltc_/ira_ columns, never from the always-null generic copay/coinsurance fields. **Traps.** - GRAIN TRAP: tier_id alone is NOT unique within a plan-snapshot. tier_type_id is a required part of the key (1=standard scenario, 3=second scenario; 57,422 plan-periods carry BOTH). The true minimal key is the 7 columns contract_id+plan_id+segment_id+report_year+quarter+tier_id+tier_type_id (=792,027 rows exactly). version is NOT in the key (1 version per key, functionally determined). The profiler's reported key wrongly included the all-NULL limit_period_code / benefit_amount_period_code / confidence_tier columns — those are constants, not key columns. - QUARTER IS A SNAPSHOT/VINTAGE AXIS, NOT cost variation: the same plan-year tier reappears with IDENTICAL cost-share in each quarterly PUF re-release (verified). To get one row per plan-year tier, pick the latest quarter per report_year (there is no is_current flag — dedup by MAX(quarter) within report_year, or by MAX(version)). Pre-2018 and 2021 only have quarter=1. - MOST GENERIC BENEFIT COLUMNS ARE DEAD HERE: benefit_amount, benefit_amount_pmpm, coinsurance_pct, cost_share_string, limit_*, auth_required, referral_required are ALWAYS NULL, and network_type/offered_status/benefit_category/numeric_amount_observability/null_amount_reason/confidence_tier are CONSTANT (inherited from a shared multi-benefit view schema). The real cost-share lives ONLY in the channel-specific families: retail_*/mail_order_*/oon_*/ltc_* (non-IRA) and ira_* (IRA). The governance flag 'offered_without_numeric_amounts' refers only to the dead generic columns, NOT to absence of cost data. - IRA vs NON-IRA COPAY SPLIT: ira_* copay columns are populated ONLY from report_year 2024 onward (0 before) and reflect the IRA-redesigned standard benefit / $2,000 OOP-cap era; they can differ materially from the matching non-IRA column (e.g. Non-Preferred tier non-IRA $99 vs IRA $35). copay_amount mirrors the NON-IRA retail_standard_copay_1m only, so do not use copay_amount as the IRA figure. For 2010-2015 only the coinsurance columns (oon_pharmacy_coins_1m, etc.) carry data — copay columns start ~2016. - ALL tier_* CODE COLUMNS ARE RAW CMS PBP ENUMERATIONS (tier_benefit_type, tier_cost_share_structure, tier_drug_type, tier_includes, tier_location_*). They are 'source_faithful' (not decoded). Decode them with the LMI 'PBP Service Category Descriptions' PDF linked in lmi_authorities. tier_label_list is the only human-readable tier name, and it can vary by plan at the same tier_id position. This view is the Part D DRUG-tier slice only (source_pbp_section=MRX_TIER); medical-benefit categories live in sibling vw_pbp_* views. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID (e.g. H0022). 1,427 distinct. Identifies the MA/PDP organization contract; combine with plan_id+segment_id for the plan instance. | | plan_id | string | Plan ID within the contract (e.g. '001'). 3-char string, NOT globally unique (645 distinct values reused across contracts). Only meaningful with contract_id. | | segment_id | string | Plan benefit segment (regional sub-variant). Mostly '0' (90% of rows = 716,236); '1'-'N' for plans with geographic segments that vary benefits. Part of the plan identity. | | version | double | CMS PBP file submission version for this snapshot (integer 1-26). Provenance only — functionally determined by the grain key (max 1 version per key). Multiple versions appear within a year because the PBP is resubmitted; each row carries the version of its snapshot. NOT a grain column. | | report_year | double | PBP contract/benefit year (double, 2010-2026). THE primary history dimension. This is the plan year the benefits apply to, not a publish date. | | quarter | double | Quarter of the PBP PUF release that this snapshot came from (1-4). Part of the grain: the same plan-year/tier reappears in each quarterly PUF re-release with identical data (verified: H0028/004/2019 tiers identical across Q1-Q4). Pre-2018 and 2021 carry only Q1 (annual); 2018-2020/2022-2024 carry multiple quarters. NOT calendar-quarter cost variation — it is a snapshot/vintage axis. | | benefit_category | string | Constant = 'partd_tier' for every row. A discriminator inherited from a shared multi-benefit view schema; here it always marks Part D drug-tier rows. | | cost_share_string | string | Always NULL in this view. Generic free-text cost-share field from the shared schema, not populated for Part D tiers. | | copay_amount | double | Partially populated generic copay mirror (205,321 non-null). Equals retail_standard_copay_1m exactly (the non-IRA 30-day retail standard copay), populated only when that value exists. Convenience field — prefer the canonical retail_*/mail_*/oon_*/ltc_* columns for completeness; does NOT reflect the IRA value. | | coinsurance_pct | double | Always NULL (0 non-null). Generic coinsurance field from the shared schema; for Part D, channel-specific coinsurance lives in oon_pharmacy_coins_1m / ltc_partner_coins_1m instead. | | limit_text | string | Always NULL. Generic benefit-limit free text from the shared schema; unused for Part D tiers. | | auth_required | boolean | Always NULL. Prior-authorization flag from the shared medical-benefit schema; not applicable/unpopulated at the Part D tier grain. | | referral_required | boolean | Always NULL. Referral flag from the shared schema; unused for Part D tiers. | | network_type | varchar(10) | Constant = 'in_network' for all rows. Inherited from the shared schema; Part D pharmacy channel is instead carried by the retail/mail/oon/ltc column families and tier_location_* codes, not this field. | | max_oop_applies | boolean | Boolean, observed always true in samples. Whether the tier's cost-share counts toward the plan max-out-of-pocket. Mostly a constant placeholder from the shared schema. | | limit_quantity | double | Always NULL. Generic quantity-limit numeric from the shared schema; unused for Part D tiers. | | limit_unit | string | Always NULL. Generic unit-of-limit from the shared schema; unused here. | | limit_period_code | string | Always NULL here (appears in profiler's candidate key only because NULL is constant). Generic limit-period code from the shared schema; unused for Part D tiers — do NOT treat as a key column. | | limit_period_label | string | Always NULL. Human label for limit_period_code; unused for Part D tiers. | | limit_quantity_per_year | double | Always NULL. Annualized quantity limit from the shared schema; unused here. | | benefit_amount | double | Always NULL (0 non-null). Generic benefit-dollar field from the shared schema; Part D tier dollars are the copay columns, not this. | | benefit_amount_kind | string | Always NULL. Type tag for benefit_amount; unused for Part D tiers. | | benefit_amount_period_code | string | Always NULL (constant, hence in profiler candidate key spuriously). Period code for benefit_amount; unused — not a real key column. | | benefit_amount_period_label | string | Always NULL. Human label for benefit_amount_period_code; unused. | | benefit_amount_annualized | double | Always NULL. Annualized benefit dollars; unused for Part D tiers. | | benefit_amount_pmpm | double | Always NULL (0 non-null). Per-member-per-month benefit amount from the shared schema; unused here. | | normalization_status | string | Always NULL for this view. Would mark whether the shared-schema benefit normalization ran; it does not run for Part D tiers (the data is source-faithful raw codes). | | normalization_basis | string | Always NULL. The basis used by benefit normalization; not applicable here. | | aggregation_policy | string | Always NULL. How multiple source rows were aggregated; not applicable at this grain. | | offered_status | varchar(15) | Constant = 'offered'. Every row represents an offered Part D tier; the view does not carry not-offered rows. | | numeric_amount_observability | varchar(31) | Constant = 'offered_without_numeric_amounts'. A governance flag stating the GENERIC copay/coinsurance/benefit_amount columns lack numeric values; it does NOT mean cost-share is absent — the numbers live in the channel-specific retail/mail/oon/ltc/ira copay columns. | | null_amount_reason | varchar(30) | Constant = 'unknown_requires_crosswalk'. Explains why the generic amount columns are null (the PBP encodes tier cost-share in channel-specific fields that require the LMI crosswalk to interpret). | | annualization_policy | varchar(17) | Constant = 'not_numeric'. Governance flag; no annualization performed because the generic numeric fields are empty. | | combined_limit_policy | varchar(29) | Constant = 'none_detected' in samples. Governance flag for combined in/out-of-network limit handling; not engaged for Part D tiers. | | consumer_document_reconciliation_status | varchar(11) | Constant = 'not_checked'. Whether the tier was reconciled against a consumer-facing document (e.g. SB/EOC); not done for this view. | | confidence_tier | varchar(23) | Constant = 'source_faithful'. Data-confidence label: values are the raw CMS PBP codes/amounts as filed, not modeled or imputed. | | balance_ltc_pharmacy_copay_1m | double | | | balance_ltc_pharmacy_copay_daily | double | | | balance_mail_order_preferred_copay_1m | double | | | balance_mail_order_preferred_copay_2m | double | | | balance_mail_order_preferred_copay_3m | double | | | balance_mail_order_preferred_copay_daily | double | | | balance_mail_order_standard_copay_1m | double | | | balance_mail_order_standard_copay_2m | double | | | balance_mail_order_standard_copay_3m | double | | | balance_mail_order_standard_copay_daily | double | | | balance_model_status | string | | | balance_oon_pharmacy_copay_1m | double | | | balance_retail_preferred_copay_1m | double | | | balance_retail_preferred_copay_2m | double | | | balance_retail_preferred_copay_3m | double | | | balance_retail_preferred_copay_daily | double | | | balance_retail_standard_copay_1m | double | | | balance_retail_standard_copay_2m | double | | | balance_retail_standard_copay_3m | double | | | balance_retail_standard_copay_daily | double | | | extended_day_supply_all_drugs | boolean | | | extended_supply_first_fill_limited | boolean | | | insulin_cost_share_source | string | | | ira_columns_scope | varchar(33) | | | ira_insulin_cost_share_form | string | | | ira_insulin_cost_share_string | string | | | ira_ltc_partner_copay_1m | double | 30-day long-term-care pharmacy copay under the IRA standard benefit. 2024+ only. | | ira_mail_order_preferred_coins_1m | double | | | ira_mail_order_preferred_coins_2m | double | | | ira_mail_order_preferred_coins_3m | double | | | ira_mail_order_preferred_copay_1m | double | | | ira_mail_order_preferred_copay_2m | double | | | ira_mail_order_preferred_copay_3m | double | | | ira_mail_order_standard_coins_1m | double | | | ira_mail_order_standard_coins_2m | double | | | ira_mail_order_standard_coins_3m | double | | | ira_mail_order_standard_copay_1m | double | 30-day mail-order standard copay under the IRA standard benefit. 2024+ only. | | ira_mail_order_standard_copay_2m | double | | | ira_mail_order_standard_copay_3m | double | 90-day mail-order standard copay under the IRA standard benefit. 2024+ only. | | ira_oon_pharmacy_copay_1m | double | 30-day out-of-network pharmacy copay under the IRA standard benefit. 2024+ only. | | ira_retail_preferred_coins_1m | double | | | ira_retail_preferred_coins_2m | double | | | ira_retail_preferred_coins_3m | double | | | ira_retail_preferred_copay_1m | double | | | ira_retail_preferred_copay_2m | double | | | ira_retail_preferred_copay_3m | double | | | ira_retail_standard_coins_1m | double | | | ira_retail_standard_coins_2m | double | | | ira_retail_standard_coins_3m | double | | | ira_retail_standard_copay_1m | double | 30-day retail standard-pharmacy copay under the IRA-redesigned standard benefit. Populated only from report_year 2024 onward (0 before). Can DIFFER from the non-IRA value (e.g. Non-Preferred tier: non-IRA $99 vs IRA $35). | | ira_retail_standard_copay_2m | double | | | ira_retail_standard_copay_3m | double | 90-day retail standard copay under the IRA standard benefit. 2024+ only. | | ltc_partner_coins_1m | double | Non-IRA 30-day LTC pharmacy coinsurance percent for this tier. | | ltc_partner_copay_1m | double | Non-IRA 30-day long-term-care (LTC) pharmacy copay for this tier. | | mail_order_days_supply_1m | double | | | mail_order_days_supply_2m | double | | | mail_order_days_supply_3m | double | | | mail_order_days_supply_basis | string | | | mail_order_preferred_coins_1m | double | | | mail_order_preferred_coins_2m | double | | | mail_order_preferred_coins_3m | double | | | mail_order_preferred_coins_other_supply | double | | | mail_order_preferred_copay_1m | double | | | mail_order_preferred_copay_2m | double | | | mail_order_preferred_copay_3m | double | | | mail_order_preferred_copay_daily | double | | | mail_order_preferred_copay_other_supply | double | | | mail_order_preferred_other_supply_days | double | | | mail_order_standard_coins_1m | double | | | mail_order_standard_coins_2m | double | | | mail_order_standard_coins_3m | double | | | mail_order_standard_coins_other_supply | double | | | mail_order_standard_copay_1m | double | Non-IRA 30-day standard mail-order copay for this tier. | | mail_order_standard_copay_2m | double | | | mail_order_standard_copay_3m | double | Non-IRA 90-day standard mail-order copay for this tier (often ~3x the 1-month). | | mail_order_standard_copay_daily | double | | | mail_order_standard_copay_other_supply | double | | | mail_order_standard_other_supply_days | double | | | oon_pharmacy_coins_1m | double | Non-IRA 30-day out-of-network pharmacy COINSURANCE percent for this tier. The longest-available cost-share field — populated back to 2010 (when copay columns were not). Range 0-95%. | | oon_pharmacy_copay_1m | double | Non-IRA 30-day out-of-network pharmacy copay for this tier. | | oon_pharmacy_days_supply_1m | double | | | partd_catastrophic_statutory_basis | string | | | partd_catastrophic_statutory_coinsurance_pct | double | | | partd_catastrophic_statutory_min_copay_generic | double | | | partd_catastrophic_statutory_min_copay_other | double | | | partd_oop_threshold_amount | double | | | partd_oop_threshold_basis | string | | | partd_phase | varchar(31) | | | post_oop_amount_basis | string | | | post_oop_cost_share_structure | string | | | post_oop_covered_part_d_rule | string | | | post_oop_excluded_drug_cost_share_type | string | | | post_oop_excluded_drug_cost_share_type_code | string | | | post_oop_injectable_only_tier | boolean | | | post_oop_mmp_copay_maximum | double | | | post_oop_mmp_copay_minimum | double | | | post_oop_reference_pricing | boolean | | | post_oop_specialty_tier | boolean | | | retail_days_supply_1m | double | | | retail_days_supply_2m | double | | | retail_days_supply_3m | double | | | retail_days_supply_basis | string | | | retail_preferred_coins_1m | double | | | retail_preferred_coins_2m | double | | | retail_preferred_coins_3m | double | | | retail_preferred_copay_1m | double | | | retail_preferred_copay_2m | double | | | retail_preferred_copay_3m | double | | | retail_preferred_copay_daily | double | | | retail_standard_coins_1m | double | | | retail_standard_coins_2m | double | | | retail_standard_coins_3m | double | | | retail_standard_coins_other_supply | double | | | retail_standard_copay_1m | double | Non-IRA 30-day (1-month) copay at a standard (non-preferred) retail pharmacy for this tier. The most-used cost-share field. Populated ~2016 onward. Range observed $0-$250. | | retail_standard_copay_2m | double | | | retail_standard_copay_3m | double | Non-IRA 90-day (3-month) standard retail pharmacy copay for this tier. | | retail_standard_copay_daily | double | | | retail_standard_copay_other_supply | double | | | retail_standard_other_supply_days | double | | | senior_savings_model_insulin_cohort | int | | | senior_savings_model_participant | boolean | | | tier_benefit_type | string | PBP code for the benefit-type of the tier (mostly '4' = 705,242; also '2', '3'). CMS PBP enumeration requiring the LMI crosswalk to decode the exact meaning. | | tier_cost_share_structure | string | PBP code for the cost-share structure: '2' (582,940, e.g. copay-based), '1' (202,013, e.g. coinsurance-based), with small counts of '3','4' and ~6,705 NULL. Decode via the LMI PBP description doc. | | tier_drug_type | string | PBP code for the drug type(s) the tier covers ('01','10','11', etc.). CMS enumeration; decode via LMI crosswalk. | | tier_formulary_model_desc | string | Free-text description of the plan's overall formulary model (e.g. 'Preferred Generic, Generic, Preferred Brand, Non-Preferred Drug, Specialty Tier'). Same string repeats across all tiers of a plan — describes the whole model, not just this tier. | | tier_id | string | Tier POSITION number within the plan's formulary (string '1'-'7'). Never null. tier_id=1 is the lowest/cheapest tier (typically Preferred Generic). The same position can carry different labels across plans, so the number is the structural key, the label is descriptive. | | tier_includes | string | PBP code flag (e.g. '1') indicating inclusion attributes of the tier. Often NULL in older years. Decode via LMI crosswalk. | | tier_label_list | string | Human name(s) for the tier (e.g. 'Preferred Generic', 'Generic', 'Preferred Brand', 'Non-Preferred Drug', 'Specialty Tier', 'Select Care Drugs', 'Vaccines'). The consumer-facing tier name; varies by plan even at the same tier_id. | | tier_location_ltc | string | PBP location/coverage code for long-term-care pharmacy (e.g. '1'). Decode via LMI crosswalk. | | tier_location_mail_order_standard | string | PBP location/coverage code for standard mail-order. NULL when the tier has no standard mail-order benefit. | | tier_location_oon | string | PBP location/coverage code for out-of-network pharmacy (e.g. '01'). Decode via LMI crosswalk. | | tier_location_retail_standard | string | PBP location/coverage code for standard retail pharmacy (e.g. '111','110'). Encodes where/how the tier is covered at retail; decode via LMI crosswalk. NULL when not offered at that channel. | | tier_type_id | string | Tier-structure scenario code. Two values: '1' (675,832 rows, the standard cost-share scenario) and '3' (116,195 rows, a second parallel scenario, e.g. preferred-vs-standard pharmacy or a different cost-share structure). REQUIRED in the grain — a plan can file both type 1 and type 3 for the same year (57,422 plan-periods do). | | source_pbp_section | varchar(8) | Constant = 'MRX_TIER'. The PBP file section these rows derive from (Medicare Rx tier section). | | source_silver_table | varchar(28) | Constant = 'medicare_silver.pbp_mrx_tier'. The single upstream silver table feeding this view. | | lmi_authorities | string | URL to the LMI 'PBP Service Category Descriptions' PDF — the authoritative codebook for decoding the tier_* PBP code columns. Same authority URL on all rows. | | source_url | string | CMS download URL of the originating PBP-benefits PUF zip (e.g. .../pbp-benefits-2018-q4.zip). 31 distinct = one per quarterly release; pins each row to its exact CMS source file. | | sha256_content_hash | string | Content hash of the source PUF file for provenance/integrity. 31 distinct — one per quarterly source release (matches the 31 year-quarter snapshots). | | statutory_insulin_cap_month_amount | double | | | statutory_insulin_cap_effective_from | date | | | statutory_insulin_cap_basis | string | | | tier_type_id_note | | (see tier_type_id) — duplicate guard removed. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_partd_tier WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_partd_tier")` first. # PBP partial hospitalization (cleaned view) `medicare_semantic.vw_pbp_partial_hospitalization` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP partial hospitalization rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning **Grain.** One row per MA plan-segment per PBP report snapshot, keyed by (contract_id, plan_id, segment_id, report_year, quarter). Verified: those 5 columns yield exactly 193,172 distinct combinations = the full row_count of 193,172, and within every (report_year, quarter) the distinct-plan count equals the row count. Exactly one in-network PHP row per plan per snapshot (no network or sub-benefit fan-out). A single plan recurs across multiple year/quarter snapshots (full historical/snapshot table, not current-only). **How to use it.** Latest PHP cost-share for a plan: SELECT cost_share_string, copay_amount, coinsurance_pct, auth_required, referral_required FROM medicare_semantic.vw_pbp_partial_hospitalization WHERE contract_id='H0028' AND plan_id='008' AND report_year=2026. To benchmark across plans for a year, filter report_year=2026 AND quarter=1 and aggregate copay_amount (median ~$55) / coinsurance_pct (median 20%). No is_current flag — for 'newest' take MAX(report_year) and the latest quarter within it. **Traps.** - No is_current / snapshot-dedup column. This is a full historical table: the same (contract_id, plan_id, segment_id) recurs across many report_year/quarter snapshots. Always filter by report_year (and quarter) — querying unfiltered double-counts a plan ~20x over the years. For 'latest', take MAX(report_year) then the latest quarter within it. - The grain needs report_year AND quarter, not just contract/plan/segment (only 23,191 distinct). quarter is the PUF release quarter, not a fiscal quarter, and is sparse: most pre-2018 years have only Q1, while some recent benefit years were re-released in 2–4 quarters. The profiler also mis-picked 'quarter' as the time column — the real time axis is report_year. - Many columns are entirely NULL or entirely constant and carry NO information here. 100% NULL: all limit_* and all benefit_amount_* columns, plus normalization_status/basis and aggregation_policy. Constant-for-all-rows: benefit_category, network_type='in_network', partial_hospitalization_axis='php', source_pbp_section='B5', offered_status='offered', numeric_amount_observability, null_amount_reason, annualization_policy, combined_limit_policy, confidence_tier='source_faithful', consumer_document_reconciliation_status='not_checked', source_silver_table, lmi_authorities. Don't filter or pivot on these expecting variation. - numeric_amount_observability='offered_without_numeric_amounts' and null_amount_reason='unknown_requires_crosswalk' are view-level labels about the (always-null) benefit_amount family — they do NOT mean copay/coinsurance are missing. 90,606 rows have a copay and 46,175 have coinsurance. Read cost from copay_amount / coinsurance_pct, not from these labels. - Cost-share is sparse and nearly mutually exclusive: 56,400 rows (29%) have NO copay, NO coinsurance and NULL cost_share_string (PHP offered but cost-share not captured); only 9 rows have both a copay and coinsurance. copay_amount=$0 is a REAL value ('$0 copay'), distinct from NULL=not captured — don't coalesce them. The min/max copay & coinsurance columns are exact duplicates of the point values here (no range). - 'version' looks like a key/snapshot version but is the PBP plan FILING version (1–27); exactly one version per plan-snapshot, so it is functionally dependent and must not be added to the grain or used as is_current. network_type and partial_hospitalization_axis are likewise constant single-values the profiler may suggest as grain columns but they add nothing. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. 'H0028'); 1,838 distinct. Part of the grain key. Join key to other PBP / Part C plan tables. | | plan_id | string | Plan ID (PBP number) within the contract, zero-padded string (e.g. '008'); 656 distinct values but unique only WITHIN a contract. Part of the grain key. | | segment_id | string | Plan segment (service-area split), string (e.g. '0','1','2'); 26 distinct. '0' = no segmentation. Part of the grain key — a segment can carry its own cost-share. | | version | double | PBP plan filing version number (double, 1–27, median ~4). An attribute of the plan filing, NOT a snapshot/dedup version and NOT part of the grain — verified exactly one version per (contract,plan,segment,year,quarter). Do not treat as is_current. | | report_year | double | PBP contract/benefit year (double, 2007–2026). Part of the grain key; the real time dimension. Note: the profiler mislabeled 'quarter' as the time column. | | quarter | double | PBP PUF release quarter within report_year (double, 1–4). Part of the grain key. Sparse/irregular: most older years have only Q1; some recent years have 2–4 quarterly re-releases of the same benefit year. | | benefit_category | string | Constant = 'partial_hospitalization' for every row (view is pre-filtered to that category). No discriminating info. | | cost_share_string | string | Human-readable cost-share rendering, e.g. '$55.0 copay', '20.0%', '$0 copay'. NULL on 56,400 rows (29%) where no numeric cost-share was captured. Top values: '$55.0 copay' (45.4k), '20.0%' (45.4k). | | copay_amount | double | Member copay in dollars (double). Populated on 90,606 rows; range $0–$750, median $55. $0 is a real value (distinct from NULL = not captured). | | coinsurance_pct | double | Member coinsurance percentage (double). Populated on 46,175 rows; range 0–45%, median 20%. Only 9 rows carry BOTH a copay and coinsurance. | | limit_text | string | 100% NULL in this view — PHP has no captured quantity-limit text. Dead column here. | | auth_required | boolean | Boolean: prior authorization required for PHP. TRUE ~122k rows, FALSE ~17k, NULL ~53k (auth status not stated). NULL is meaningful = 'unknown', not False. | | referral_required | boolean | Boolean: referral required. Mostly FALSE; TRUE on ~41k rows; some NULL. NULL = not stated. | | network_type | varchar(10) | Constant = 'in_network' for every row. This view contains ONLY in-network PHP cost-share — no out-of-network rows. | | max_oop_applies | boolean | Boolean: does this benefit accrue to the plan's MOOP. TRUE on essentially all rows. Near-constant. | | limit_quantity | double | 100% NULL in this view (no PHP day/visit limits captured). Dead column. | | limit_unit | string | 100% NULL. Dead column for PHP. | | limit_period_code | string | 100% NULL. (Offered as a candidate grain column by the profiler but entirely null and adds nothing.) | | limit_period_label | string | 100% NULL. Dead column. | | limit_quantity_per_year | double | 100% NULL. Dead column. | | benefit_amount | double | 100% NULL — PHP is a cost-share benefit, not a benefit-dollar/allowance benefit, so no amount is captured. Dead column. | | benefit_amount_kind | string | 100% NULL. Dead column. | | benefit_amount_period_code | string | 100% NULL. (Profiler listed it as a candidate key but it is always null.) | | benefit_amount_period_label | string | 100% NULL. Dead column. | | benefit_amount_annualized | double | 100% NULL. Dead column. | | benefit_amount_pmpm | double | 100% NULL. Dead column. | | normalization_status | string | 100% NULL in this view. Placeholder from the shared PBP semantic schema; not populated for PHP. | | normalization_basis | string | 100% NULL. Placeholder. | | aggregation_policy | string | 100% NULL. Placeholder. | | offered_status | varchar(15) | Constant = 'offered' for every row — every row represents a plan that offers PHP. No 'not_offered' rows. No discriminating info. | | numeric_amount_observability | varchar(31) | Constant = 'offered_without_numeric_amounts' for every row. A view-level label (do NOT read row-by-row): it does NOT mean copay/coinsurance are absent — 90,606 rows still carry a copay and 46,175 a coinsurance. | | null_amount_reason | varchar(30) | Constant = 'unknown_requires_crosswalk' for every row. Refers to the (always-null) benefit_amount family, not to copay/coinsurance. Non-discriminating. | | annualization_policy | varchar(17) | Constant = 'not_numeric'. Non-discriminating. | | combined_limit_policy | varchar(29) | Constant = 'none_detected'. Non-discriminating. | | consumer_document_reconciliation_status | varchar(11) | Constant = 'not_checked' — these rows have not been reconciled against consumer-facing documents (SB/EOC). Non-discriminating. | | confidence_tier | varchar(23) | Constant = 'source_faithful' — values taken faithfully from the PBP source with no inference. Non-discriminating. | | coinsurance_pct_max | double | Upper bound of coinsurance. For PHP equals coinsurance_pct exactly (same 46,175 rows); no range info beyond the point value. | | coinsurance_pct_min | double | Lower bound; equals coinsurance_pct exactly for PHP. Redundant with coinsurance_pct here. | | copay_amount_max | double | Upper bound of copay; equals copay_amount exactly for PHP (same 90,606 rows). No extra range info. | | copay_amount_min | double | Lower bound of copay; equals copay_amount exactly for PHP. Redundant with copay_amount. | | has_coinsurance | boolean | Boolean convenience flag = coinsurance present. TRUE on ~57k rows. NULL (~9.3k rows) where there is no cost-share signal at all (overlaps the all-null cost-share rows). NULL means 'no signal', not False. | | has_copay | boolean | Boolean convenience flag = copay present. TRUE on ~108k rows. NULL on ~9.3k all-blank rows. Use copay_amount IS NOT NULL for a hard test rather than relying solely on this flag. | | has_deductible | boolean | Boolean: a benefit-specific deductible applies. Almost always FALSE/NULL — only ~13 rows TRUE. PHP rarely carries its own deductible. | | iop_auth_required | boolean | | | iop_coinsurance_pct_max | double | | | iop_coinsurance_pct_min | double | | | iop_copay_amount_max | double | | | iop_copay_amount_min | double | | | iop_has_coinsurance | boolean | | | iop_has_copay | boolean | | | iop_referral_required | boolean | | | partial_hospitalization_axis | varchar(3) | Constant = 'php' for every row. A discriminator inherited from the shared view family; here it never varies. | | source_pbp_section | varchar(2) | Constant = 'B5' — PBP section B5 (Partial Hospitalization). Identifies the source PBP form section. | | source_silver_table | varchar(43) | Constant = 'medicare_silver.pbp_section_b5_partial_hosp' — the upstream silver table this view is built from. Lineage pointer. | | lmi_authorities | string | Constant = a single LMI MA Benefits Mailbox URL (CY2026 PBP Service Category Descriptions PDF) — the authoritative benefit-category definition reference. Same for all rows. | | source_url | string | Provenance: the CMS PBP PUF zip the snapshot came from — exactly one URL per (report_year, quarter). Recent: cms.gov/files/zip/pbp-benefits-YYYY[-quarter-Q].zip; older years use the legacy mcradvpartdenroldata path. | | sha256_content_hash | string | SHA-256 content hash of the source file for that snapshot. One distinct hash per (report_year, quarter); changes every release (the SAME plan has a different hash each snapshot). Provenance/integrity, not a row identifier. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_partial_hospitalization WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_partial_hospitalization")` first. # PBP plan deductible (cleaned view) `medicare_semantic.vw_pbp_plan_deductible` · Medicare Advantage, Part D, Medicaid · status live · 163,670 rows Plan-level deductible per plan, segment and plan year from PBP section D, era-normalized. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(26) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | varchar(18) | | | benefit_amount_period_code | varchar(6) | | | benefit_amount_period_label | varchar(8) | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(30) | | | normalization_basis | varchar(31) | | | aggregation_policy | varchar(38) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | annual_deductible | boolean | | | annual_deductible_amount | double | | | annual_deductible_amount_type_code | string | | | annual_deductible_amount_type_label | varchar(79) | | | annual_deductible_benefit_groups | string | | | annual_deductible_combined_application_code | string | | | annual_deductible_combined_application_label | varchar(61) | | | annual_in_network_medicare_all_services | boolean | | | annual_in_network_medicare_categories | string | | | annual_in_network_non_medicare_all_services | boolean | | | annual_in_network_non_medicare_categories | string | | | annual_oon_zero_dollar_preventive_included | boolean | | | annual_out_of_network_non_medicare_all_services | boolean | | | annual_out_of_network_non_medicare_categories | string | | | applies_part_b_deductible | boolean | | | combined_deductible_benefit_groups | string | | | combined_in_network_medicare_all_services | boolean | | | combined_in_network_medicare_categories | string | | | combined_network_deductible | boolean | | | combined_network_deductible_amount | double | | | combined_out_of_network_medicare_all_services | boolean | | | combined_out_of_network_medicare_categories | string | | | combined_part_b_deductible | boolean | | | deductible_amount | double | | | deductible_amount_basis | string | | | deductible_amount_resolved | double | | | deductible_form | varchar(30) | | | deductible_scope | varchar(33) | | | differential_deductible | boolean | | | differential_deductible_categories | string | | | has_medical_deductible | boolean | | | in_network_deductible | boolean | | | in_network_deductible_amount | double | | | in_network_deductible_benefit_groups | string | | | in_network_medicare_all_services | boolean | | | in_network_medicare_categories | string | | | in_network_non_medicare_all_services | boolean | | | in_network_non_medicare_categories | string | | | in_network_part_b_deductible | boolean | | | mandatory_supplemental_deductible | boolean | | | mandatory_supplemental_deductible_categories | string | | | medical_deductible_amount | double | | | msa_deductible_amount | double | | | non_network_deductible | boolean | | | original_medicare_deductible_kind | varchar(35) | | | out_of_network_deductible | boolean | | | out_of_network_deductible_amount | double | | | out_of_network_deductible_benefit_groups | string | | | out_of_network_medicare_all_services | boolean | | | out_of_network_medicare_categories | string | | | out_of_network_part_b_deductible | boolean | | | part_a_deductible_amount_resolved | double | | | part_b_deductible_amount_resolved | double | | | plan_deductible_present | boolean | | | plan_deductible_sub_benefit | string | | | source_pbp_section | varchar(1) | | | source_silver_table | varchar(29) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_plan_deductible WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_plan_deductible")` first. # Plan premium by year, from the CMS Landscape (cleaned view) `medicare_semantic.vw_pbp_plan_premium` · Medicare Advantage, Part D, Medicaid · status live · 81,375 rows Monthly premium per plan and year, 2007 to 2027, built from the CMS Landscape (not the PBP filing): consolidated, Part C and Part D premium, the Part B premium reduction, and monthly_premium_basis naming which Landscape leg the number came from. Evidence grade cms_published. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | int | | | report_year | int | | | quarter | int | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(10) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | varchar(20) | | | benefit_amount_period_code | varchar(7) | | | benefit_amount_period_label | varchar(9) | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(24) | | | normalization_basis | varchar(29) | | | aggregation_policy | varchar(41) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | consolidated_premium | double | | | consolidated_premium_distinct_count | bigint | | | consolidated_premium_raw | string | | | low_income_premium_subsidy_amount | double | | | low_income_premium_subsidy_basis | varchar(87) | | | low_income_premium_subsidy_region_amount_count | bigint | | | monthly_premium | double | | | monthly_premium_basis | varchar(32) | | | monthly_premium_full_lis | double | | | monthly_premium_full_lis_basis | varchar(73) | | | part_b_only_plan_premium | double | | | part_b_premium_reduction | double | | | part_b_premium_reduction_amount | double | | | part_b_premium_reduction_offered | boolean | | | part_c_premium | double | | | part_c_premium_distinct_count | bigint | | | part_c_premium_raw | string | | | part_d_basic_premium | double | | | part_d_lips_cms_pays | double | | | part_d_low_income_beneficiary_premium | double | | | part_d_premium | double | | | part_d_premium_distinct_count | bigint | | | part_d_premium_raw | string | | | part_d_supplemental_premium | double | | | plan_premium_present | boolean | | | plan_premium_sub_benefit | string | | | premium_amount | double | | | section_d_plan_premium | double | | | source_pbp_section | varchar(11) | | | source_silver_table | varchar(33) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_plan_premium WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_plan_premium")` first. # PBP preventive (cleaned view) `medicare_semantic.vw_pbp_preventive` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP preventive rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for **Grain.** One row per MA plan-segment per quarterly PBP snapshot per preventive sub-benefit. The minimal VERIFIED unique key is (contract_id, plan_id, segment_id, report_year, quarter, preventive_sub_benefit): 555,516 distinct = 555,516 total rows, every key appearing exactly once. Equivalently each plan-segment-snapshot expands to exactly 3 rows (one per sub-benefit), and 555,516 / 3 = 185,172 distinct plan-segment-snapshots. version is NOT part of the grain — the view is already deduped to one PBP file version per snapshot (verified max 1 version per key). **How to use it.** To get the current member cost-share for routine physical exams across MA plans: SELECT contract_id, plan_id, segment_id, copay_amount FROM medicare_semantic.vw_pbp_preventive WHERE report_year=2026 AND quarter=1 AND preventive_sub_benefit='routine_physical_exam' AND benefit_present_yn=TRUE. This answers 'what do MA plans charge members for a routine physical in 2026' (answer: $0 for the vast majority, with a small tail up to $25). For the ACA-mandated preventive package use preventive_sub_benefit='mandated_medicare_preventive' (copay and coinsurance are uniformly $0/0%). Always filter to one (report_year, quarter) snapshot. **Traps.** - NO is_current / is_latest column. The view is append-style across snapshots: the SAME plan-segment appears once per sub-benefit in EVERY quarterly snapshot it was filed in. To get a point-in-time view you MUST filter to a single (report_year, quarter); the latest snapshot is 2026 Q1. Aggregating without a snapshot filter double-counts plans across years. - preventive_sub_benefit (= source_pbp_section) is the column that makes the grain 3x and IS part of the unique key. Keying only on plan-segment-snapshot collapses to 185,172 rows. The three sub-benefits have COMPLETELY different population semantics: mandated_medicare is a constant $0 (copay=0, coins=0) ACA package; routine_physical_exam carries the only real copay tail ($0 mostly, up to $25); other_supplemental_preventive has copay/coinsurance 100% NULL (deferred to a 'v2' per-benefit detail). - This is an 'offered-without-numeric-amounts' view (numeric_amount_observability and null_amount_reason are constants saying so): ALL benefit_amount_* columns, all normalization_*/aggregation_policy columns, and all structured limit_* columns are 100% NULL. limit_text's only value is the un-parsed string '2'. Do not treat absent dollar amounts as $0 for other_supplemental_preventive — they are simply not extracted here. - Many columns are single-valued constants with no analytic signal: benefit_category='preventive', network_type='in_network', max_oop_applies=TRUE, offered_status='offered', confidence_tier='source_faithful', consumer_document_reconciliation_status='not_checked', annualization_policy='not_numeric', combined_limit_policy='none_detected', source_silver_table, lmi_authorities. cost_share_string is largely boilerplate per sub-benefit, not a parsed amount. - Meaningful NULLs: has_max_plan_limit is NULL (139,844 rows) specifically on the mandated_medicare sub-benefit = 'not applicable', not missing. preventive_attestation='1' only ever appears within mandated_medicare_preventive. benefit_present_yn (not offered_status) is the real 'does the plan offer this service' flag — routine_physical is present in only ~54% of plan-snapshots even though every plan still gets a row. - version (1-27) is NOT a grain column — it is already deduped to one version per snapshot, so do not add it to keys/joins. Use benefit_present_yn=TRUE (not offered_status, which is constant) to identify plans that actually offer a sub-benefit. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (1,832 distinct). Prefix encodes contract type: H = local MA HMO/PPO (1,793), R = regional PPO (37), E = employer/EGWP (2). First level of the plan key. | | plan_id | string | 3-char plan ID within the contract (e.g. '001','007','011'). 656 distinct values but only unique in combination with contract_id and segment_id. | | segment_id | string | Plan segment / service-area segment ('0' for non-segmented plans; 26 distinct). Third part of the plan key. | | version | double | PBP source-file version/revision number (1-27, 26 distinct). NOT part of the grain — already deduped to a single chosen version per plan-snapshot (verified max 1 version per grain key). Informational only. | | report_year | double | Contract/benefit year of the PBP filing (2007-2026). Part of the snapshot key. | | quarter | double | Quarter of the PBP PUF release within report_year (1-4). Part of the snapshot key. Most early years carry only Q1; later years add some additional quarters. | | benefit_category | string | Constant label 'preventive' on every row (single-valued). Identifies this as the preventive-services view; not a discriminating dimension. | | cost_share_string | string | Human-readable cost-share summary, but largely sub-benefit-specific BOILERPLATE: 'mandated_medicare_preventive' always = '$0 (ACA-mandated preventive)'; 'other_supplemental_preventive' always = 'see per-benefit-type detail (v2)' (amounts not extracted here); 'routine_physical_exam' is '$0 copay', a real '$X copay + Y%' string, or NULL. Do not parse the boilerplate as a real per-service amount. | | copay_amount | double | Member copay in dollars. Populated only for mandated_medicare_preventive (always 0.0) and routine_physical_exam (0.0 on most, small tail of $3/$5/$10/$15/$20/$25). 100% NULL for other_supplemental_preventive (deferred to a future v2 per-benefit detail). 245,575 of 555,516 rows non-null. | | coinsurance_pct | double | Member coinsurance percent. Populated (and always 0.0) ONLY for mandated_medicare_preventive (185,172 rows); NULL for the other two sub-benefits. Effectively a constant zero for the mandated package. | | limit_text | string | Raw, UNINTERPRETED PBP limit field — the only observed non-null value is the bare string '2' (97,199 rows). The structured limit_* columns derived from it are all NULL here, so treat this as an un-parsed source code, not a usable quantity. | | auth_required | boolean | Boolean: prior authorization required for the preventive sub-benefit. True on ~32.7K rows overall; varies by sub-benefit (mandated 18,241; other_supplemental 14,223; routine_physical 266). | | referral_required | boolean | Boolean: referral required. True on ~27.4K rows; varies by sub-benefit (mandated 18,453; other_supplemental 8,248; routine_physical 665). | | network_type | varchar(10) | Constant 'in_network' on every row (single-valued). This view carries only in-network cost-share; out-of-network is not represented. | | max_oop_applies | boolean | Boolean — TRUE on 100% of rows. Indicates the benefit counts toward the plan MOOP. Constant, not discriminating. | | limit_quantity | double | Structured numeric limit quantity. 100% NULL in this view (limit parsing not applied to preventive). | | limit_unit | string | Unit for the limit quantity. 100% NULL in this view. | | limit_period_code | string | Period code for the limit (e.g. per year). 100% NULL in this view. | | limit_period_label | string | Human label for the limit period. 100% NULL in this view. | | limit_quantity_per_year | double | Annualized limit quantity. 100% NULL in this view. | | benefit_amount | double | Plan-paid benefit dollar amount (used by sibling PBP views with dollar allowances). 100% NULL for preventive — preventive has no dollar-allowance benefit. | | benefit_amount_kind | string | Kind/type of benefit_amount. 100% NULL in this view. | | benefit_amount_period_code | string | Period code for benefit_amount. 100% NULL in this view. | | benefit_amount_period_label | string | Period label for benefit_amount. 100% NULL in this view. | | benefit_amount_annualized | double | Annualized benefit_amount. 100% NULL in this view. | | benefit_amount_pmpm | double | Benefit_amount expressed per-member-per-month. 100% NULL in this view. | | normalization_status | string | Status of dollar-amount normalization. 100% NULL here (nothing to normalize because no numeric amounts). | | normalization_basis | string | Basis used for normalization. 100% NULL in this view. | | aggregation_policy | string | How multiple source rows were aggregated. 100% NULL in this view. | | offered_status | varchar(15) | Constant 'offered' on every row (single-valued). Indicates the sub-benefit row was emitted because the section exists in the PBP; it does NOT by itself confirm the plan offers that specific service (see benefit_present_yn). | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' on every row. Flags that this preventive view intentionally lacks fully-extracted dollar amounts — a key caveat for cost analysis. | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' on every row. Explains why numeric amounts are absent: resolving them needs a downstream crosswalk (the v2 per-benefit detail). | | annualization_policy | varchar(17) | Constant 'not_numeric' on every row — consistent with no numeric amounts to annualize. | | combined_limit_policy | varchar(29) | Constant 'none_detected' on every row — no combined in/out-of-network limit detected for preventive. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' on every row — these PBP-derived values have NOT been reconciled against consumer-facing documents (SB/EOC). Provenance caveat. | | confidence_tier | varchar(23) | Constant 'source_faithful' on every row — values are faithfully carried from the PBP source (not modeled/inferred). Single-valued. | | benefit_present_yn | boolean | Boolean: whether the plan actually offers this preventive sub-benefit in this snapshot. TRUE on 417,812 rows; can be NULL/false otherwise. Per sub-benefit: mandated always present (185,172), other_supplemental present on 133,301, routine_physical present on only 99,339 (~54%). USE THIS, not offered_status, to gate 'does the plan offer it'. | | coinsurance_pct_max | double | | | copay_amount_max | double | Upper bound of an observed copay range; non-null on the same 245,575 rows as copay_amount (mandated + routine_physical with a value). | | copay_amount_min | double | Lower bound of an observed copay range; non-null on the same 245,575 rows as copay_amount. | | has_coinsurance | boolean | Boolean flag that a coinsurance applies. True on 7,766 rows (mostly other_supplemental 5,369 + routine_physical 2,397; never set for the always-zero mandated package). | | has_copay | boolean | Boolean flag that a (non-trivial) copay applies. True on 133,177 rows (other_supplemental 68,288 + routine_physical 64,889; never set for the mandated $0 package). | | has_deductible | boolean | Boolean flag that a deductible applies to the preventive benefit. Extremely rare — TRUE on only 25 rows. | | has_max_enrollee_limit | boolean | Boolean flag of a per-enrollee maximum limit. Rare — TRUE on 222 rows. | | has_max_plan_limit | boolean | Boolean flag of a plan-level maximum limit. TRUE on 22,100 rows, FALSE on most, and NULL on 139,844 rows (the mandated_medicare rows where the concept does not apply). The NULLs are meaningful (not-applicable), not missing data. | | preventive_attestation | string | Plan attestation flag, value '1' or NULL. '1' on 162,955 rows, ALL within mandated_medicare_preventive (a plan attestation specific to the Medicare-mandated package); NULL for the other two sub-benefits where it does not apply. | | preventive_offered | boolean | | | preventive_package_id | string | | | preventive_package_match_basis | string | | | preventive_package_name | string | | | preventive_package_type_code | string | | | preventive_package_type_label | string | | | preventive_sub_benefit | string | The discriminator that triples the grain — one of exactly 3 values, each 185,172 rows and each tied 1:1 to a PBP sub-section: 'mandated_medicare_preventive' (B14A, the ACA/Medicare-mandated $0 package), 'routine_physical_exam' (B14B), 'other_supplemental_preventive' (B14C). Part of the unique key. | | preventive_targeting | varchar(36) | | | source_pbp_section | varchar(4) | PBP source sub-section code, perfectly correlated with preventive_sub_benefit: B14A=mandated_medicare_preventive, B14B=routine_physical_exam, B14C=other_supplemental_preventive. Redundant with preventive_sub_benefit. | | source_silver_table | varchar(56) | Constant 'medicare_silver.pbp_section_b14_preventive' — the upstream silver table this view is built from. Single-valued provenance pointer. | | lmi_authorities | string | Constant URL to the LMI 'CY 2026 PBP Service Category Descriptions.pdf' — the authoritative definition document for the PBP service categories. Single-valued reference, not row-specific. | | source_url | string | URL of the CMS PBP PUF zip the row came from — exactly one per snapshot (32 distinct URLs = 32 distinct year x quarter snapshots), e.g. .../pbp-pufs/pbp-benefits-2019-q1.zip. Provenance for the snapshot. | | sha256_content_hash | string | Content hash of the source PBP file — exactly one per snapshot (32 distinct, 1:1 with source_url). Use to detect/dedup re-ingested identical files. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_preventive WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_preventive")` first. # PBP renal dialysis (cleaned view) `medicare_semantic.vw_pbp_renal_dialysis` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP renal dialysis rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface **Grain.** One row per Medicare Advantage plan-segment per PBP file snapshot. The minimal verified-unique key is (contract_id, plan_id, segment_id, report_year, quarter) = 201,488 distinct combinations = 201,488 total rows (exact). All five columns are load-bearing: dropping quarter collapses to 114,175; dropping segment_id to 191,793; dropping report_year to 59,740. network_type, renal_dialysis_sub_benefit, and benefit_category are all single-valued ('in_network' / 'renal_dialysis' / 'renal_dialysis') so they are NOT part of the grain. The view is already deduplicated to one PBP submission version per plan-snapshot (version is functionally dependent on the grain, not a dedup axis). **How to use it.** Benchmark MA dialysis coinsurance for a given year, deduping the quarter fan-out: SELECT coinsurance_pct, COUNT(*) FROM medicare_semantic.vw_pbp_renal_dialysis WHERE report_year=2026 AND quarter=1 AND coinsurance_pct IS NOT NULL GROUP BY coinsurance_pct ORDER BY 2 DESC; -- answers 'what coinsurance % do MA plans charge for renal dialysis in 2026' (you'll see 20% dominate). For trend, group by report_year with quarter=1 (or max quarter per year) to avoid 4x-counting plans in multi-quarter years. Join to plan-level enrollment via (contract_id, plan_id, segment_id, report_year). **Traps.** - QUARTER FAN-OUT is the #1 trap: report_year is the real time axis, but for 2018-2020 and 2022-2024 CMS ships multiple quarterly snapshots, so the SAME plan-year appears up to 4x (one row per quarter, each with a distinct sha256_content_hash). Most years are Q1-only. To get one row per plan per year you MUST filter to a single quarter (e.g. quarter=1) or pick max(quarter) - otherwise you 4x-count plans in those years. - DOLLAR AMOUNTS DO NOT EXIST HERE: copay_amount, benefit_amount (and its whole _kind/_annualized/_pmpm/_period family), limit_quantity/limit_text/limit_unit/limit_period_code, max_oop_applies, and normalization_status/basis/aggregation_policy are ALL 100% NULL. The only populated cost lever is coinsurance_pct (and its min/max/string). This is by design (numeric_amount_observability='offered_without_numeric_amounts') - PBP B12 records dialysis cost-share as a coinsurance %, the standard being 20% (73% of rows). - MANY COLUMNS ARE SINGLE-VALUED (degenerate), so they look meaningful but never filter anything: benefit_category, renal_dialysis_sub_benefit, network_type ('in_network'), offered_status ('offered'), source_pbp_section ('B12'), source_silver_table, lmi_authorities, confidence_tier ('source_faithful'), numeric_amount_observability, null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status. network_type='in_network' for ALL rows means out-of-network dialysis cost-share is NOT in this view. - NULLS ENCODE DATA VINTAGE, not 'no/zero': auth_required is NULL for every year before 2018 (legacy PBP layouts didn't capture it - it is not 'no auth required'). Numeric coinsurance_pct only begins ~2009. segment_id is empty-string '' (not '0') in 2001-2005, the pre-segmentation era - normalize ''->'0'/null before joining. - has_* booleans are INDEPENDENT of the numeric columns and can contradict them: has_copay=TRUE in ~14,458 rows while copay_amount is always null; has_coinsurance=TRUE while coinsurance_pct is null in 5,212+ rows. Trust the flag for presence, but never infer a dollar amount from it. Use coinsurance_pct_min<>coinsurance_pct_max (7,034 rows) to detect coinsurance RANGES rather than point values. - version is NOT a dedup key you need to apply: the grain (contract_id, plan_id, segment_id, report_year, quarter) is already unique, so the view has pre-selected one PBP submission version per plan-snapshot. Likewise sha256_content_hash and source_url are per-file-snapshot (40 distinct), not per-row identifiers - do not GROUP BY them expecting row uniqueness. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (e.g. 'H0028'). Prefix encodes type: H = local MA/MA-PD (1,933 contracts, 197,609 rows), R = regional PPO (37 contracts), E = employer/EGWP (2 contracts). Grain key part 1. 1,972 distinct. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001','014'). Identifies a specific benefit package under the contract. Grain key part 2. NOT unique on its own (656 distinct, reused across contracts). | | segment_id | string | Plan segment ID (geographic/benefit segment). '0' for non-segmented plans (181,424 rows). Empty string '' (5,074 rows) is the LEGACY non-segmented representation used only in 2001-2005 - treat as null/0 for joins. Values '1'-'27' for segmented plans. Grain key part 3. | | version | double | PBP file resubmission version within the year (plans refile multiple times). 0 for 2001-2006 (single-version era); 1-27 for 2007+. FUNCTIONALLY DEPENDENT on the grain - the view already keeps one version per plan-snapshot, so it is NOT needed to make rows unique and should not be treated as a key. | | report_year | double | Benefit/contract year the PBP applies to (2001-2026). THIS IS THE REAL TIME AXIS for trend analysis, not 'quarter'. Stored as double. | | quarter | double | Within-year CMS file-release snapshot (1-4). Most years have only Q1; but 2018-2020 and 2022-2024 ship multiple quarterly releases, so the SAME plan-year can appear up to 4x (one row per quarterly snapshot, each with its own sha256). This is the #1 fan-out trap. Stored as double. | | benefit_category | string | Constant 'renal_dialysis' for every row (degenerate). Identifies the PBP service category. | | cost_share_string | string | Human-readable cost-share render, e.g. '20.0%'. EMPIRICALLY ALWAYS a coinsurance percent string - never contains a dollar copay or 'copay' text (0 dollar-like values observed). Pure restatement of coinsurance_pct. Null in 46,445 rows. 155,043 filled. | | copay_amount | double | ALWAYS NULL (0 of 201,488 filled). Renal dialysis in PBP B12 is recorded as coinsurance, never a flat-dollar copay. Scaffolding column shared with sibling PBP views. | | coinsurance_pct | double | Enrollee coinsurance percent for dialysis - the ONLY populated numeric cost lever. 20% dominates (146,858 rows = 73%, the standard Medicare Part B dialysis coinsurance); 0% (6,612); other values 2-100% (1,573). Null in 46,445 rows (older vintages + not-extracted). Numeric coverage starts ~2009. 155,043 filled. | | limit_text | string | ALWAYS NULL (0 filled). Benefit-limit free text - never populated for renal dialysis. | | auth_required | boolean | Boolean: prior authorization required for the benefit. NULL FOR ALL YEARS BEFORE 2018 (field not parsed in legacy PBP layouts) - null means 'not recorded in that vintage', not 'no auth'. 139,729 non-null (all 2018+). | | referral_required | boolean | Boolean: referral required. Populated from 2002 onward (null only in 2001 and a few stragglers). 188,899 non-null. Null in early-2001 vintage means not-recorded. | | network_type | varchar(10) | Constant 'in_network' for every row (degenerate). This view only carries the in-network cost-share leg; out-of-network is not represented here. | | max_oop_applies | boolean | ALWAYS NULL (0 filled). Whether the benefit counts toward the plan MOOP - not populated for this benefit. | | limit_quantity | double | ALWAYS NULL (0 filled). Numeric benefit limit - not populated. | | limit_unit | string | ALWAYS NULL (0 filled). Unit for limit_quantity - not populated. | | limit_period_code | string | ALWAYS NULL (0 filled). Period code for the limit - not populated. | | limit_period_label | string | Always null (paired with limit_period_code). Human label for limit period - not populated. | | limit_quantity_per_year | double | ALWAYS NULL (0 filled). Annualized limit quantity - not populated. | | benefit_amount | double | ALWAYS NULL (0 filled). Plan-paid/benefit dollar amount - the entire benefit_amount_* family is empty for renal dialysis (this benefit is cost-share-only, not a dollar allowance like OTC/dental). | | benefit_amount_kind | string | ALWAYS NULL (0 filled). Kind/type of benefit amount - not populated. | | benefit_amount_period_code | string | Always null. Period code for benefit amount - not populated. | | benefit_amount_period_label | string | Always null. Human label for benefit-amount period - not populated. | | benefit_amount_annualized | double | ALWAYS NULL (0 filled). Annualized benefit dollars - not populated. | | benefit_amount_pmpm | double | ALWAYS NULL (0 filled). Per-member-per-month benefit dollars - not populated. | | normalization_status | string | ALWAYS NULL (0 filled). Status of the dollar-amount normalization pipeline - this benefit has no dollar amounts to normalize. | | normalization_basis | string | ALWAYS NULL (0 filled). Basis used for normalization - not populated. | | aggregation_policy | string | ALWAYS NULL (0 filled). Aggregation policy for combined limits - not populated. | | offered_status | varchar(15) | Constant 'offered' for every row (degenerate). Every row represents a plan that offers the renal-dialysis benefit (Medicare requires MA plans to cover dialysis). | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' for every row. Declares the central caveat of this view: the benefit is offered but PBP B12 carries no dollar amounts (only coinsurance %). | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' for every row. Explains why dollar amounts are null - resolving them would require an external crosswalk. | | annualization_policy | varchar(17) | Constant 'not_numeric' for every row. No numeric amount exists to annualize. | | combined_limit_policy | varchar(29) | Constant 'none_detected' for every row. No combined/shared benefit limit detected. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' for every row. These records have not been reconciled against consumer-facing documents (EOC/SB). | | confidence_tier | varchar(23) | Constant 'source_faithful' for every row. Indicates values are a faithful transcription of the CMS PBP source (no inference applied). | | coinsurance_pct_max | double | Upper bound of the coinsurance band. 152,283 filled. Equals coinsurance_pct_min for point values (145,249 rows); differs in 7,034 rows where the plan files a coinsurance RANGE. | | coinsurance_pct_min | double | Lower bound of the coinsurance band. 155,043 filled. Use (min,max) together to detect ranges; equals the point value when min=max. | | copay_amount_max | double | | | copay_amount_min | double | | | has_coinsurance | boolean | Boolean parsed from the PBP yes/no flag, INDEPENDENT of the numeric column. Can be TRUE while coinsurance_pct is NULL (5,212+ rows: flag set but % not extracted). 191,289 non-null. Null only in 2001 vintage. | | has_copay | boolean | Boolean copay flag from PBP. NOTE: has_copay=TRUE in ~14,458 rows even though copay_amount is ALWAYS null - the flag is preserved from source but the dollar value was never captured. Do not infer a copay dollar from this flag. | | has_deductible | boolean | Boolean: a deductible applies to the benefit (from PBP flags). Almost always false; a handful of true rows. No deductible dollar column is populated. | | has_max_enrollee_oop | boolean | Boolean: a max enrollee OOP applies (from PBP flags). Almost always false. Independent of the (always-null) max_oop_applies column. | | renal_dialysis_sub_benefit | string | Constant 'renal_dialysis' for every row (degenerate). Placeholder for sub-benefit breakout that PBP B12 does not split for this view. | | source_pbp_section | varchar(3) | Constant 'B12' for every row. The CMS PBP section this benefit is parsed from (Section B12 = Renal Dialysis). | | source_silver_table | varchar(46) | Constant 'medicare_silver.pbp_section_b12_renal_dialysis'. The upstream silver-tier table this gold view is built from. | | lmi_authorities | string | Constant single LMI URL (CY2026 PBP Service Category Descriptions PDF). The authoritative benefit-definition reference; same for all rows. | | source_url | string | CMS PBP source zip for that snapshot - varies by (report_year, quarter). 40 distinct URLs. Legacy years use the mcradvpartdenroldata path; 2018+ use cms.gov/files/zip/pbp-benefits-YYYY[-quarter-N].zip. One file per snapshot. | | sha256_content_hash | string | Content hash of the source PBP file snapshot (40 distinct = one per file release). It is PER-SNAPSHOT-FILE, not per-row: the same plan in different quarters of one year has DIFFERENT hashes (each quarterly release is a distinct file). Provenance/dedup anchor, not a row key. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_renal_dialysis WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_renal_dialysis")` first. # PBP section c pos oon (cleaned view) `medicare_semantic.vw_pbp_section_c_pos_oon` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP section c pos oon rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surfa **Grain.** One row per (MA plan-segment snapshot) x (PBP source section) x (benefit-group cost-share bucket) x (cost-share variant) x (Medicare-covered vs non-Medicare-covered service-category split). Concretely the practical minimal key is contract_id + plan_id + segment_id + report_year + quarter + source_pbp_section + benefit_group_label + cost_share_string + benefit_category_list_mc + benefit_category_list_nmc, which yields 729,119 of the 729,306 rows distinct; the remaining ~63 are genuinely-identical empty residual duplicates (old 2010-2011 C_POS rows where every cost-share field is NULL). No single short column or the profiler's reported "candidate key" is unique. NOTE the grain is at the cost-share GROUP level, not the individual benefit/service-category level: one benefit_group_label row rolls up many CMS service categories (which is why min/max range columns exist and why benefit_category_list_mc/_nmc hold semicolon lists of category codes). **How to use it.** Get a plan's 2026 out-of-network cost-share buckets (deduped to one snapshot): SELECT benefit_group_label, cost_share_string, copay_amount, coinsurance_pct, source_pbp_section FROM medicare_semantic.vw_pbp_section_c_pos_oon WHERE contract_id='H0028' AND plan_id='016' AND segment_id='0' AND report_year=2026 AND quarter=1 ORDER BY source_pbp_section, benefit_group_label; -- answers 'what does this MA plan charge a member for out-of-network / POS services in 2026, by cost-share group?' Always pin report_year and a single quarter to avoid the quarterly-snapshot duplication, and remember each row is a cost-share GROUP spanning the service-category codes in benefit_category_list_mc/_nmc. **Traps.** - No is_current / snapshot-dedup column. Years 2018-2020 and 2022-2024 publish 2-4 near-identical QUARTERLY snapshots of the SAME plan year, so naive counts/joins double-to-quadruple-count those years. To get one record per plan-year, filter to a single quarter per report_year (e.g. quarter=1, or MAX(quarter)). 'quarter' is a republication index, not a benefit-change period. - The profiler's reported candidate key (contract_id, plan_id, segment_id, limit_period_code, benefit_amount_period_code, confidence_tier) is NOT a key here: limit_period_code and benefit_amount_period_code are 100% NULL and confidence_tier is single-valued. The real discriminators are source_pbp_section + benefit_group_label + cost_share_string + the MC/NMC category-list split. Two rows can share contract/plan/segment/year/quarter/benefit_group_label and differ only by Medicare-covered (benefit_category_list_mc) vs non-Medicare-covered (benefit_category_list_nmc). - Many columns are dead weight in THIS view: ~20 columns are 100% NULL (limit_*, benefit_amount_* and all annualized/pmpm, auth_required, referral_required, max_oop_applies, section_c_sub_benefit, normalization_*, aggregation_policy) and ~9 more are single-valued constants (benefit_category='section_c_pos_oon', network_type='out_of_network', offered_status='offered', numeric_amount_observability, null_amount_reason, annualization_policy, combined_limit_policy, consumer_document_reconciliation_status, confidence_tier, lmi_authorities). Don't infer the schema's promise from column names — benefit_amount is entirely empty here. - Grain is the cost-share GROUP, not the individual benefit/service. One benefit_group_label rolls up many CMS service-category codes (held as semicolon lists in benefit_category_list_mc/_nmc), and coinsurance_pct/copay_amount are the representative value while *_min/*_max give the range across the collapsed categories (they differ in ~50-63k rows). Do not treat one row as one service. - report_year is the time axis, NOT quarter (the profiler auto-labeled quarter as the time column — wrong). History runs 2007-2026 annually. - The 2026 build is a granularity break: ~196k rows / ~50 rows per plan vs ~8.8 rows per plan in 2025 (with FEWER plans: 3,902 vs 4,229). 2026 explodes plans into many fine-grained POS/benefit-group rows (e.g. 'POS Grp 1 [$0;$5000 Max Amt]', per-category 16b/16c codes). Cross-year row counts are not comparable; this is an extraction-method change, not enrollment growth. - This is the out-of-network/POS slice only (network_type always out_of_network). For in-network MA Section C cost-share use the sibling in-network PBP views, not this one. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract id (e.g. 'H0028'). 876 distinct. Part of grain. With plan_id+segment_id identifies the plan-segment. | | plan_id | string | Plan id within the contract (e.g. '004'), zero-padded 3-char string. 655 distinct. Part of grain. | | segment_id | string | Plan segment id (e.g. '0','1','2'), string. 25 distinct. A plan can have multiple service-area segments with different benefits. Part of grain. | | version | double | CMS PBP file submission/version number (double, 1-26). Plan-level attribute, NOT part of grain: each (contract,plan,segment,report_year,quarter) maps to exactly one version. Higher = later submission of that plan year. | | report_year | double | Contract/benefit year the PBP describes (double, 2007-2026). THIS is the real time axis (the profiler mislabeled 'quarter' as the time column). Part of grain. | | quarter | double | Quarter of the CMS PBP PUF release within report_year (double, 1-4). NOT a within-year benefit change: it is a republication snapshot. Some years publish only Q1 (2007-2017, 2021, 2025, 2026); others publish 2-4 near-duplicate quarterly snapshots of the SAME plan year (e.g. 2023 has Q1-Q4). Part of grain ONLY because of this duplication; for a deduplicated plan-year view pick one quarter per report_year. | | benefit_category | string | Constant 'section_c_pos_oon' for every row. A view-tag identifying this dataset; carries no row-level information. | | cost_share_string | string | Human-readable cost-share for the benefit group, e.g. '20.0%', '$0 copay', '$300.0 copay', '$0 copay + 35.0%', '0.0%'. NULL in 68,948 rows (plan offers the benefit but no parsed numeric cost-share). Part of grain (a plan/group can have multiple distinct cost-share rows). | | copay_amount | double | Parsed flat-dollar copay (double, $0-$5000, median ~$28). Populated in 323,568 rows; NULL when the benefit is coinsurance-only or unparsed. The representative/primary copay for the group. | | coinsurance_pct | double | Parsed coinsurance percentage (double, 0-100, median ~26%). Populated in 368,803 rows; NULL when copay-only or unparsed. The representative/primary coinsurance for the group. | | limit_text | string | 100% NULL in this view. Reserved free-text benefit limit; never populated for Section C OON/POS. | | auth_required | boolean | 100% NULL in this view. Prior-authorization flag not populated for the OON/POS section. | | referral_required | boolean | 100% NULL in this view. Referral-required flag not populated. | | network_type | varchar(17) | Constant 'out_of_network' for every row. Confirms this view is the OON/POS (non-in-network) cost-share slice. Carries no row-level information. | | max_oop_applies | boolean | 100% NULL in this view. Whether the benefit counts toward MOOP; not populated. | | limit_quantity | double | 100% NULL in this view. | | limit_unit | string | 100% NULL in this view. | | limit_period_code | string | 100% NULL in this view (the profiler listed it as a candidate key but it is entirely null). | | limit_period_label | string | 100% NULL in this view. | | limit_quantity_per_year | double | 100% NULL in this view. | | benefit_amount | double | 100% NULL in this view (0 non-null rows). Reserved for plan-funded benefit allowances (e.g. OTC/flex $); not populated here. | | benefit_amount_kind | string | 100% NULL in this view. | | benefit_amount_period_code | string | 100% NULL in this view. | | benefit_amount_period_label | string | 100% NULL in this view. | | benefit_amount_annualized | double | 100% NULL in this view. | | benefit_amount_pmpm | double | 100% NULL in this view. | | normalization_status | string | 100% NULL in this view. | | normalization_basis | string | 100% NULL in this view. | | aggregation_policy | string | 100% NULL in this view. | | offered_status | varchar(15) | Constant 'offered' for every row. The view only contains benefits the plan offers OON/POS; carries no row-level information. | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' for every row. A data-quality tag meaning the benefit is offered but the benefit_amount $ fields are not observed in source. Carries no row-level information. | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' for every row. Explains why benefit_amount is null; carries no row-level information. | | annualization_policy | varchar(17) | Constant 'not_numeric' for every row. No row-level information. | | combined_limit_policy | varchar(29) | Constant 'none_detected' for every row. No row-level information. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' for every row. These rows have not been reconciled against consumer-facing plan docs (SB/EOC). No row-level information. | | confidence_tier | varchar(23) | Constant 'source_faithful' for every row (the profiler listed it as a candidate key, but it is single-valued). Means values are taken faithfully from the CMS source with no inference. No row-level information. | | benefit_categories_list | string | Raw CMS PBP category encoding string, e.g. '' (empty, 628k rows), '01', '10', '11', or a long fixed-width bitmask of 0/1 flags. Low-level source artifact; prefer the parsed _mc/_nmc lists below. | | benefit_category_list_mc | string | Semicolon-delimited list of CMS PBP Section-C service-category codes that are MEDICARE-COVERED (MC) and share this cost-share group, e.g. '3-1;3-2;5;6;7a;...' or '6;14a;'. Populated in 504,781 rows. Codes reference the CMS PBP service-category taxonomy (see lmi_authorities). Part of grain. NULL when this row is the non-Medicare-covered side. | | benefit_category_list_nmc | string | Semicolon-delimited list of NON-MEDICARE-COVERED (NMC, i.e. supplemental) service-category codes sharing this cost-share group, e.g. '16b1;16b2;16c1;...'. Populated in 265,211 rows. Part of grain. The MC vs NMC split is what separates two otherwise-identical benefit_group_label rows (e.g. category '7b' appears once MC at 30% and once NMC). 90,000 rows have BOTH mc and nmc lists populated; 49,314 have neither. | | benefit_group_id | string | | | benefit_group_label | string | The plan's own cost-share bucket label and the primary row-level discriminator within a snapshot. 10,189 distinct values; NULL in 123,996 rows. Forms: generic 'Group 1'..'Group N'; semantic '35%','$0','50% coinsurance','OTC','Ambulance','Dental','Vision','Hearing'; raw category codes '17a','10a1','7b'; and the 2026-style 'POS Grp 1 [$0;$5000 Max Amt]' / 'POS_25%'. Part of grain. | | coinsurance_pct_max | double | Maximum coinsurance % across the service categories rolled into this group (double). Differs from coinsurance_pct in 51,569 rows where the group spans a range (e.g. headline 20% but group spans 20-50%). Use to detect range-valued groups. | | coinsurance_pct_min | double | Minimum coinsurance % across the rolled-up categories. With _max gives the coinsurance range for the group. | | copay_amount_max | double | Maximum copay $ across the rolled-up categories (double). Differs from copay_amount in 63,388 rows (range-valued group). | | copay_amount_min | double | Minimum copay $ across the rolled-up categories. With _max gives the copay range for the group. | | cost_share_basis | string | | | day_interval_count_coinsurance | double | | | day_interval_count_copay | double | | | group_deductible_amount | double | | | has_coinsurance | boolean | Derived boolean: this group has a coinsurance component. True 368,803 / False 346,272 / NULL 14,231 (undeterminable, the empty cost-share rows). | | has_copay | boolean | Derived boolean: this group has a flat-copay component. True 323,568 / False 391,507 / NULL 14,231. | | has_deductible | boolean | Derived boolean: a deductible applies. Almost always False (712,487); True only 1,853; NULL 14,966. OON deductibles are rarely encoded in this section. | | max_plan_benefit_amount | double | | | max_plan_benefit_offered | boolean | | | max_plan_benefit_period_code | string | | | max_plan_benefit_period_description | string | | | max_plan_benefit_period_label | string | | | original_medicare_amount_kind | string | | | original_medicare_amount_resolved | double | | | original_medicare_cost_share_charged | boolean | | | pos_all_state_licensed_practitioners | boolean | | | pos_benefit_type_code | string | | | pos_benefit_type_label | string | | | pos_inpatient_maximum_1a_period_code | string | | | pos_inpatient_maximum_1a_period_description | string | | | pos_inpatient_maximum_1a_period_label | string | | | pos_inpatient_maximum_1b_period_code | string | | | pos_inpatient_maximum_1b_period_description | string | | | pos_inpatient_maximum_1b_period_label | string | | | pos_inpatient_maximum_acute_amount | double | | | pos_inpatient_maximum_combined_amount | double | | | pos_inpatient_maximum_offered | boolean | | | pos_inpatient_maximum_period_code | string | | | pos_inpatient_maximum_period_description | string | | | pos_inpatient_maximum_period_label | string | | | pos_inpatient_maximum_psych_amount | double | | | pos_inpatient_maximum_type_code | string | | | pos_inpatient_maximum_type_label | string | | | pos_moop_amount | double | | | pos_moop_offered | boolean | | | pos_moop_period_code | string | | | pos_moop_period_description | string | | | pos_moop_period_label | string | | | pos_plan_maximum_amount | double | | | pos_plan_maximum_benefit_types_code | string | | | pos_plan_maximum_benefit_types_label | string | | | pos_plan_maximum_category_list_legacy | string | | | pos_plan_maximum_category_list_mc | string | | | pos_plan_maximum_category_list_nmc | string | | | pos_plan_maximum_offered | boolean | | | pos_plan_maximum_period_code | string | | | pos_plan_maximum_period_description | string | | | pos_plan_maximum_period_label | string | | | section_c_plan_benefit_types_code | string | | | section_c_plan_benefit_types_label | string | | | section_c_plan_category_list_legacy | string | | | section_c_plan_category_list_mc | string | | | section_c_plan_category_list_nmc | string | | | section_c_plan_group_count | double | | | section_c_plan_level_policy | string | | | section_c_plan_level_source_status | string | | | section_c_sub_benefit | varchar(30) | 100% NULL in this view. Reserved sub-benefit label; never populated. | | visitor_travel_benefit_type_code | string | | | visitor_travel_benefit_type_label | string | | | visitor_travel_geographic_area_code | string | | | visitor_travel_geographic_area_label | string | | | visitor_travel_offered | boolean | | | source_pbp_section | varchar(5) | Which CMS PBP source section the row came from: 'C_OON' (Section C out-of-network, 658,957 rows) or 'C_POS' (Section C Point-of-Service, 70,349 rows). The view UNIONs both. Part of grain (the same plan/group/category can appear once per section). | | source_silver_table | varchar(33) | Underlying medicare_silver table the row was read from: 'medicare_silver.pbp_section_c_oon' or 'medicare_silver.pbp_section_c_pos'. 1:1 with source_pbp_section; lineage. | | lmi_authorities | string | Constant single URL pointing to the LMI-hosted 'CY 2026 PBP Service Category Descriptions.pdf' (mabenefitsmailbox.lmi.org). The authoritative crosswalk for decoding the service-category codes in benefit_category_list_mc/_nmc. Same value on every row. | | source_url | string | CMS PBP PUF zip the row was extracted from, e.g. '.../pbp-benefits-2018-q1.zip'. 34 distinct files = one file per (report_year, quarter) snapshot. Provenance. | | sha256_content_hash | string | SHA-256 of the source file content (34 distinct, 1:1 with source_url). Integrity/provenance fingerprint of the originating CMS file, not a row-level hash. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_section_c_pos_oon WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_section_c_pos_oon")` first. # PBP snf (cleaned view) `medicare_semantic.vw_pbp_snf` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP snf rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for snf (vs **Grain.** One row per MA plan-segment per PBP snapshot. The minimal verified key is contract_id + plan_id + segment_id + report_year + quarter — 201,488 distinct combinations exactly equal the 201,488 rows (no duplicates). benefit_category ('snf'), snf_sub_benefit ('snf_tier_1'), and network_type ('in_network') are all constant and add nothing to the grain. report_year+quarter together identify the PBP PUF release the row was extracted from (e.g. 2026 Q1). **How to use it.** Compare in-network SNF out-of-pocket exposure across MA plans for a given year. Example: SELECT contract_id, plan_id, segment_id, tier1_copay_interval1_amount AS days_1_20_copay, tier1_copay_interval2_amount AS days_21_100_copay, prior_hospitalization_required FROM medicare_semantic.vw_pbp_snf WHERE report_year=2026 AND quarter=1 AND snf_offered=true ORDER BY days_21_100_copay DESC — returns each 2026 plan's full SNF day-interval copay ladder (showing that the headline copay_amount of $0-$20 hides a ~$218/day charge after day 20), so you can rank plans by true SNF cost rather than the misleadingly cheap first-interval copay. **Traps.** - copay_amount and cost_share_string are the INTERVAL-1 (days 1-20) copay ONLY — they systematically understate SNF cost. The expensive days-21-100 copay (often ~$218/day) lives in tier1_copay_interval2_amount. copay_amount is provably identical to tier1_copay_interval1_amount (97,606 equal / 0 differ). - ~18 columns are HARD-CODED NULL in the view definition (CAST(null AS ...)): coinsurance_pct, all limit_* and all benefit_amount_* columns, normalization_status/basis, aggregation_policy. They are schema-parity placeholders to match sibling PBP benefit views — verified 0 non-null. has_coinsurance can be true while coinsurance_pct is null, so you can never read the SNF coinsurance percentage from this view (go to medicare_silver.pbp_section_b2_snf). - The offered/observability flags (offered_status, snf_offered, numeric_amount_observability, null_amount_reason) are about the (always-null) generic benefit-amount path and the pbp_b2_bendesc_yn flag — NOT about copay availability. 92,714 rows with offered_status='not_offered'/snf_offered=false STILL carry a real copay_amount. Do not filter on snf_offered to find plans-with-a-copay. - This is a Presto VIRTUAL_VIEW with NO is_current column. Versioning is via the (report_year, quarter) snapshot itself. tier1_copay_interval_count can be '3'/'4' but the view exposes only interval 1 and interval 2 columns, so higher counts mean additional cost-ladder intervals exist in the silver source that are not surfaced here. - Grain traps: the profiler reported a 7-column superset and flagged limit_period_code/benefit_amount_period_code as candidate keys — both are 100% null and irrelevant. The true minimal key is contract_id+plan_id+segment_id+report_year+quarter (201,488=201,488). Also segment_id has empty-string values (5,074 rows) that are distinct from '0' and break CAST-to-int; plan_id is only unique within a contract; quarter's 1-4 is the PBP release quarter, not a calendar date. - prior_hospitalization_days_required and tier1_copay_interval_count are STRINGS (e.g. '1','3'), not numbers — cast before arithmetic. tier1_has_copay and has_copay are two different derivations that frequently disagree; prefer has_copay for a plan-level copay signal. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0084, E5088, R-/S- prefixes). 1,972 distinct. Part of grain. H=local MA/MA-PD, R=regional PPO, E=employer/group, S=PDP-adjacent. | | plan_id | string | Plan benefit package ID within the contract (e.g. '001','029'), 3-char zero-padded string. 656 distinct values but reused across contracts; only unique WITH contract_id. Part of grain. | | segment_id | string | Plan segment (geographic/benefit segment) within the plan, string. Mostly '0' (181K rows); also '1'..'16'+; NOTE 5,074 rows have an EMPTY-STRING segment_id (not '0', not null) — casting it to int fails. Part of grain. | | version | double | PBP bid submission/version number for that plan-year (double, 0-27). An attribute, NOT part of the grain — there is exactly one row per plan-snapshot regardless of version. Higher = later resubmission; counts decline with version. | | report_year | double | PBP contract/benefit year (double, 2001-2026). Matches the year embedded in source_url exactly. This is the plan year the benefits apply to. Core time dimension. | | quarter | double | PBP PUF release quarter within report_year (1-4). Pre-2018 is annual (Q1 only); 2018+ has multiple quarterly snapshots but NOT always all 4 (e.g. 2020 has no Q3, 2024 no Q2, 2025/2026 only Q1). This is the profiler's 'time_column' but its 1-4 range is the snapshot quarter, not a date. | | benefit_category | string | Constant 'snf' for every row. Identifies this as the SNF benefit family. Carries no information within this view. | | cost_share_string | string | Human-readable label synthesized in-view from the interval-1 copay only, e.g. '$0 copay' (91K), '$20.0 copay', '$40.0 copay'. NULL for 103,882 rows. Only ever expresses copay (never coinsurance, since coinsurance_pct is hardcoded null). Do not treat as the full SNF cost — it is the days-1-20 copay label. | | copay_amount | double | SNF tier-1 copay for INTERVAL 1 ONLY (the PBP field pbp_b2_copay_mcs_amt_int1_t1, i.e. typically days 1-20). Populated in 97,606 rows; range $0-$40, median $0. IT EXACTLY EQUALS tier1_copay_interval1_amount (verified 97,606 equal / 0 differ). MAJOR TRAP: this omits the expensive later interval (days 21-100, often ~$218/day) — see tier1_copay_interval2_amount. | | coinsurance_pct | double | HARD-CODED NULL in the view definition (CAST(null AS double)). 0 non-null rows. SNF coinsurance percentage is never carried here even when has_coinsurance=true. To know coinsurance you must go to the silver source. | | limit_text | string | HARD-CODED NULL (placeholder for schema parity with sibling PBP benefit views). Always null. Ignore. | | auth_required | boolean | Prior authorization required for SNF (boolean, from pbp_b2_auth_yn). true=97K+, null=common (~66K where the Y/N flag was blank/unmapped). null means 'not stated', not 'no'. | | referral_required | boolean | Referral required (boolean, from pbp_b2_refer_yn). true/false/null. null = flag absent. | | network_type | varchar(10) | Constant 'in_network'. This view carries only in-network SNF cost-sharing; there is no out-of-network row here. Carries no information. | | max_oop_applies | boolean | HARD-CODED NULL placeholder. Always null. Ignore (use has_max_enrollee_oop instead for the boolean signal). | | limit_quantity | double | HARD-CODED NULL placeholder. Always null. Ignore. | | limit_unit | string | HARD-CODED NULL placeholder. Always null. Ignore. | | limit_period_code | string | HARD-CODED NULL placeholder. Always null. Ignore. (Profiler listed this as a candidate key column, but it is 100% null and meaningless here.) | | limit_period_label | string | HARD-CODED NULL placeholder. Always null. Ignore. | | limit_quantity_per_year | double | HARD-CODED NULL placeholder. Always null. Ignore. | | benefit_amount | double | HARD-CODED NULL placeholder (generic plan-funded benefit amount, not applicable to SNF cost-sharing). Always null. Ignore. | | benefit_amount_kind | string | HARD-CODED NULL placeholder. Always null. Ignore. | | benefit_amount_period_code | string | HARD-CODED NULL placeholder. Always null. Ignore. (Listed as a profiler candidate key but is 100% null.) | | benefit_amount_period_label | string | HARD-CODED NULL placeholder. Always null. Ignore. | | benefit_amount_annualized | double | HARD-CODED NULL placeholder. Always null. Ignore. | | benefit_amount_pmpm | double | HARD-CODED NULL placeholder. Always null. Ignore. | | normalization_status | string | HARD-CODED NULL placeholder. Always null. Ignore. | | normalization_basis | string | HARD-CODED NULL placeholder. Always null. Ignore. | | aggregation_policy | string | HARD-CODED NULL placeholder. Always null. Ignore. | | offered_status | varchar(15) | Whether SNF is offered, derived from pbp_b2_bendesc_yn (benefit-description Y/N): 'not_offered' (152,615), 'offered' (34,484), 'offered_unknown' (14,389). TRAP: this reflects the benefit-description flag, NOT whether a copay exists — 92,714 'not_offered' rows still carry a copay_amount. | | numeric_amount_observability | varchar(31) | Observability of the GENERIC benefit-amount fields (all of which are hardcoded null here): 'not_offered' (152,615) or 'offered_without_numeric_amounts' (48,873). Because benefit_amount is always null, this never says 'all_offered_numeric'. It is NOT a statement about copay availability. | | null_amount_reason | varchar(30) | Why benefit_amount is null: 'not_offered' (152,615) or 'unknown_requires_crosswalk' (48,873). Again tied to the hardcoded-null benefit_amount path, not to copay. | | annualization_policy | varchar(17) | Constant 'not_numeric' (because benefit_amount is always null, nothing to annualize). Carries no information here. | | combined_limit_policy | varchar(29) | Constant 'none_detected'. Carries no information here. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' — rows have not been reconciled against consumer-facing documents (e.g. Medicare Plan Finder). Pipeline status flag, not a benefit attribute. | | confidence_tier | varchar(23) | Constant 'source_faithful' — values are taken faithfully from the PBP source with no cross-document upgrade. Provenance flag. | | additional_days_amount | double | | | additional_days_benefit_type_code | string | | | additional_days_benefit_type_label | string | | | additional_days_cost_share_tier_count | string | | | additional_days_cost_varies_by_tier | boolean | | | additional_days_limit_code | string | | | additional_days_offered | boolean | | | additional_days_unlimited | boolean | | | bendesc_yn_answer | boolean | | | benefit_layer | varchar(38) | | | benefit_period_code | string | PBP basis-period code for the SNF cost share: '1'='Per benefit period' (108,271, the SNF standard), '2'='Per calendar year' (1,120), '3' (12,533, label unmapped), '4' (204, label unmapped); 79,360 null. 122,128 non-null overall. | | benefit_period_label | string | Human label for benefit_period_code, mapped for codes 1 and 2 only ('Per benefit period','Per calendar year'); NULL for codes 3/4 and where code is null (109,391 non-null). | | benefit_period_other_text | string | | | coinsurance_structure_same_as_medicare_covered | boolean | | | copay_amount_max | double | | | copay_amount_max_resolved | double | | | copay_amount_min | double | | | copay_amount_min_resolved | double | | | copay_structure_same_as_medicare_covered | boolean | | | cost_share_basis | string | | | cost_share_lowest_tier | string | | | cost_share_tier_count | string | | | cost_share_varies_by_tier | boolean | Boolean: does SNF cost-share vary by provider tier. Mostly false (124,027); true only 777; null 76,684. null = not determinable. | | deductible_amount | double | | | has_coinsurance | boolean | Boolean flag that the plan uses SNF coinsurance (true=37,819). TRAP: the actual percentage (coinsurance_pct) is ALWAYS null, so this flag tells you coinsurance exists but not its value. | | has_copay | boolean | Boolean flag that the plan uses a SNF copay (true). Derived independently from tier1_has_copay and the two can disagree (e.g. 98,840 rows have has_copay=true while tier1_has_copay=false). Treat has_copay as the plan-level copay indicator. | | has_deductible | boolean | | | has_discharge_cost_share | boolean | | | has_max_enrollee_oop | boolean | Boolean: a max enrollee out-of-pocket applies to SNF. Almost always false; true in a small number of rows (~942). | | layer_benefit_type_code | string | | | layer_benefit_type_label | string | | | max_enrollee_oop_amount | double | | | max_enrollee_oop_period_code | string | | | original_medicare_cost_share_charged | boolean | | | prior_hospitalization_days_basis | string | | | prior_hospitalization_days_required | string | STRING count of qualifying inpatient days required before SNF coverage: '1' (138,639), '2' (4,146), '3' (234); null when not required. Stored as text, not numeric. | | prior_hospitalization_required | boolean | Boolean: SNF requires a prior qualifying hospital stay. true=143,019, false=38,212, null=20,257. Pairs with prior_hospitalization_days_required (true→days '1'/'2'/'3'). | | prior_stay_less_than_3_days_allowed | boolean | | | snf_in_package_category_list | boolean | | | snf_offered | boolean | Boolean mirror of offered_status: true (34,484), false (152,615), null (14,389, = offered_unknown). Same caveat as offered_status — does not gate the copay fields. | | snf_package_id | string | | | snf_package_match | string | | | snf_package_name | string | | | snf_package_type_code | string | | | snf_package_type_label | string | | | snf_sub_benefit | string | Constant 'snf_tier_1'. This view exposes only the tier-1 SNF sub-benefit. Carries no information within the view but signals the view is NOT modeling multi-tier SNF. | | snf_targeted_file | string | | | snf_targeting | varchar(36) | | | tier1_charges_medicare_defined_copay | boolean | | | tier1_coinsurance_interval1_begin_day | double | | | tier1_coinsurance_interval1_end_day | double | | | tier1_coinsurance_interval1_pct | double | | | tier1_coinsurance_interval2_begin_day | double | | | tier1_coinsurance_interval2_end_day | double | | | tier1_coinsurance_interval2_pct | double | | | tier1_coinsurance_interval_count | string | | | tier1_coinsurance_per_stay_pct | double | | | tier1_copay_interval1_amount | double | SNF tier-1 copay for day-interval 1 (typically days 1-20). Populated 97,606 rows; identical to copay_amount. The cheap early-stay copay. | | tier1_copay_interval1_amount_resolved | double | | | tier1_copay_interval1_begin_day | double | First covered day of interval 1 (double, typically 1.0). Defines the day range over which interval1_amount applies. | | tier1_copay_interval1_end_day | double | Last day of interval 1 (double, typically 20.0). The SNF cost ladder usually breaks at day 20. | | tier1_copay_interval2_amount | double | SNF tier-1 copay for interval 2 (typically days 21-100). Populated 95,493 rows; commonly ~$218/day. THIS IS THE EXPENSIVE PART OF SNF COST that copay_amount/cost_share_string omit — must be read to assess true SNF exposure. | | tier1_copay_interval2_amount_resolved | double | | | tier1_copay_interval2_begin_day | double | First day of interval 2 (double, typically 21.0). | | tier1_copay_interval2_end_day | double | Last day of interval 2 (double). Often 100.0 (Medicare SNF benefit max) but can be lower (e.g. 45, 51) when the plan's interval structure splits coverage further. | | tier1_copay_interval3_amount | double | | | tier1_copay_interval3_begin_day | double | | | tier1_copay_interval3_end_day | double | | | tier1_copay_interval_count | string | STRING count of day-intervals the plan defines for tier-1 SNF: '3' (72,056), '4' (23,437), '2' (2,113), '1' (1,234); null 102,648. NOTE: the count can exceed the 2 intervals exposed as columns (this view surfaces only interval 1 and 2), so '3'/'4' means additional intervals exist in the source that are NOT in this view. | | tier1_copay_per_stay_amount | double | | | tier1_has_copay | boolean | Boolean copay indicator at the interval/tier level. Diverges from has_copay (e.g. false here while has_copay=true). Often null (102K). Prefer has_copay for a plan-level signal; treat this as interval-level metadata. | | tier2_charges_medicare_defined_cost_share | boolean | | | tier2_copay_amount_max | double | | | tier2_copay_interval1_amount | double | | | tier2_copay_interval1_begin_day | double | | | tier2_copay_interval1_end_day | double | | | tier2_copay_interval2_amount | double | | | tier2_copay_interval2_begin_day | double | | | tier2_copay_interval2_end_day | double | | | tier2_copay_interval_count | string | | | source_pbp_section | varchar(2) | Constant 'B2' — the SNF section of the PBP. Provenance. | | source_silver_table | varchar(47) | Constant 'medicare_silver.pbp_section_b2_snf' — the silver table this view reads. To recover the hardcoded-null fields (coinsurance %, additional intervals beyond 2), go here. Provenance. | | lmi_authorities | string | Constant pipe-delimited string of two LMI (CMS contractor) reference-document URLs (CY2026 PBP Service Category Descriptions + Part C Bid Review Memorandum). Documentation pointers, not per-row data. Same for every row. | | source_url | string | CMS download URL of the PBP-benefits ZIP the row came from (e.g. .../pbp-benefits-2012.zip). 40 distinct values; the embedded year matches report_year exactly; multiple URLs per year correspond to the quarterly snapshots. Provenance. | | sha256_content_hash | string | SHA-256 of the source file content. 40 distinct, 1:1 with source_url. Content-addressed provenance / integrity check for the source ZIP. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_snf WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_snf")` first. # PBP supplemental other (cleaned view) `medicare_semantic.vw_pbp_supplemental_other` · Medicare Advantage, Part D, Medicaid · status partial Cleaned source-faithful PBP supplemental other rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surf **Grain.** one row per MA plan (contract_id + plan_id + segment_id) per CMS PBP snapshot (report_year + quarter), for the single Section B-20 'other supplemental' benefit bucket **How to use it.** To list MA plans that OFFER an 'other supplemental' (B-20) benefit in the latest 2026 snapshot and whether each requires prior auth or carries a copay/coinsurance: SELECT contract_id, plan_id, segment_id, auth_required, has_copay, has_coinsurance, has_max_enrollee_oop FROM medicare_semantic.vw_pbp_supplemental_other WHERE report_year=2026 AND quarter=1. This answers 'which of these plans offer the catch-all supplemental benefit and what cost-share types apply' — but for the actual copay/coinsurance AMOUNTS you must join to medicare_silver.pbp_section_b20 on (contract_id, plan_id, segment_id, report_year, quarter), since the amount columns in this view are hardcoded null. **Traps.** - This view is a near-empty SCAFFOLD, not a populated benefit table. ~30 of 47 columns are hardcoded CAST(null AS ...) in the view DDL — including EVERY cost-sharing/benefit-amount column (copay_amount, coinsurance_pct, benefit_amount*, limit_*, max_oop_applies, referral_required, normalization_*). They are structurally null regardless of the underlying CMS data. The real dollar/percent values DO exist in medicare_silver.pbp_section_b20 (pbp_b20_b_copay_max, pbp_b20_coins_mc_pct, etc.) and must be joined from there. Do NOT report any rates/amounts from this view. - has_copay / has_coinsurance / has_max_enrollee_oop can be TRUE while the corresponding amount column is NULL. The 2 'has_*'=true rows (H5264 002 & 005, 2026) still have copay_amount=null and coinsurance_pct=null. The has_* flags only tell you the benefit HAS that cost-share type (decoded from CMS Y/N indicators); they do not give the value. - No is_current / snapshot-dedup column. The SAME plan repeats once per snapshot — e.g. H1651 plan 001 appears 5 times (2024 Q1/Q3/Q4, 2025, 2026). To avoid multi-counting you MUST filter to a single (report_year, quarter), or pick the latest per plan yourself. quarter is the CMS publication quarter, not a benefit period. - Tiny / partial materialization. Only 3 contracts and 88 plan-snapshots are present, vs ~1,972 contracts in sibling views (vw_pbp_dental/vision/dme/otc). This reflects two things: (a) PBP Section B-20 is genuinely sparse (silver source = 463 rows / 7 contracts) because most plans don't file an 'other/catch-all' supplemental benefit, and (b) the view is filtered to report_year>=2024 and only a few contracts are built. Do not treat this as MA-wide coverage of supplemental benefits. - Several columns that look informative are constants and carry no signal: benefit_category='supplemental_other', network_type='in_network', offered_status='offered', numeric_amount_observability='offered_without_numeric_amounts', null_amount_reason='unknown_requires_crosswalk', confidence_tier='source_faithful', consumer_document_reconciliation_status='not_checked', supplemental_other_sub_benefit='other_supplemental', source_pbp_section='B20', cost_share_attestation_text='1' — all single-valued across every row. Also 'benefit_group_count' is mislabeled (it is the raw pbp_b20_bendesc_grp_num group-number string and varies by SNAPSHOT, not by plan), and 'version' is a CMS record version that is plan-specific and FD-determined — it is NOT part of the grain despite the profiler testing it. - limit_period_code and benefit_amount_period_code (which the profiler tried as grain keys) are 100% null here — they are not keys and were red herrings. The minimal verified grain is just (contract_id, plan_id, segment_id, report_year, quarter). | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (H-number, e.g. H1651). Part of the grain. 3 distinct in this build (H1651, H5256, H5264). | | plan_id | string | Plan ID within the contract (e.g. '001','008'). Part of the grain. 13 distinct values; the (contract,plan,segment) plan identity has 19 distinct values. | | segment_id | string | PBP plan segment ID. Part of the grain. Always '0' here (no segmented plans materialized). | | version | double | Raw PBP record version from the CMS source file (3 or 4 in 2024; 1 or 2 in 2025/2026). It is functionally determined by (plan, snapshot) — 0 plan-snapshots have >1 version — so it is NOT part of the grain and is plan-specific (e.g. H5264 is always v4 in 2024). Do not treat it as a build/ETL version. | | report_year | double | PBP contract/benefit year (double: 2024.0/2025.0/2026.0). Part of the grain. View is filtered to report_year >= 2024 (DDL: BETWEEN 2024 AND 9999), even though silver has 2017+. | | quarter | double | CMS publication quarter of the snapshot (1.0/3.0/4.0). Part of the grain. This is the snapshot/republish quarter, NOT a benefit-period quarter. | | benefit_category | string | Constant literal 'supplemental_other' for all rows — the dimension this view represents. Hardcoded in the view (CAST('supplemental_other')). Not a discriminator. | | cost_share_string | string | Intended human-readable cost-share text. HARDCODED NULL in the view definition — 100% null, carries no data in this build. | | copay_amount | double | Intended copay dollar amount. HARDCODED NULL (CAST(null AS double)) — 100% null. The real B-20 copay min/max exist in the silver source (pbp_b20_b_min_copay / pbp_b20_b_copay_max) but are NOT surfaced here. | | coinsurance_pct | double | Intended coinsurance percent. HARDCODED NULL — 100% null. Real B-20 coinsurance pct (pbp_b20_coins_mc_pct) is not surfaced. | | limit_text | string | Intended benefit-limit description. HARDCODED NULL — 100% null. | | auth_required | boolean | REAL DATA. Whether prior authorization is required, decoded from silver pbp_b20_auth_yn (Y/1/T -> true, N/2/F -> false). Populated for all 88 rows; all are FALSE in this build (no nulls observed). | | referral_required | boolean | Intended referral-required flag. HARDCODED NULL (CAST(null AS boolean)) — 100% null. | | network_type | varchar(10) | Constant literal 'in_network' for all rows. Hardcoded; not a discriminator (no out-of-network rows in this view). | | max_oop_applies | boolean | Intended 'counts toward MOOP' flag. HARDCODED NULL — 100% null. (Distinct from has_max_enrollee_oop, which IS real.) | | limit_quantity | double | Intended numeric benefit limit. HARDCODED NULL — 100% null. | | limit_unit | string | Intended unit for limit_quantity. HARDCODED NULL — 100% null. | | limit_period_code | string | Intended limit period code. HARDCODED NULL — 100% null. (Profiler tested it as a candidate key; it is null for every row and carries nothing.) | | limit_period_label | string | Intended limit period label. HARDCODED NULL — 100% null. | | limit_quantity_per_year | double | Intended annualized limit quantity. HARDCODED NULL — 100% null. | | benefit_amount | double | Intended benefit dollar value/allowance. HARDCODED NULL — 100% null. | | benefit_amount_kind | string | Intended classification of benefit_amount (allowance/cap/etc). HARDCODED NULL — 100% null. | | benefit_amount_period_code | string | Intended period code for benefit_amount. HARDCODED NULL — 100% null. | | benefit_amount_period_label | string | Intended period label for benefit_amount. HARDCODED NULL — 100% null. | | benefit_amount_annualized | double | Intended annualized benefit amount. HARDCODED NULL — 100% null. | | benefit_amount_pmpm | double | Intended per-member-per-month benefit amount. HARDCODED NULL — 100% null. | | normalization_status | string | Intended normalization status. HARDCODED NULL — 100% null. | | normalization_basis | string | Intended normalization basis. HARDCODED NULL — 100% null. | | aggregation_policy | string | Intended aggregation policy. HARDCODED NULL — 100% null. | | offered_status | varchar(15) | Constant 'offered' for all rows. The view computes CASE WHEN true THEN 'offered' (literally always true), so it never indicates 'not_offered'. Treat every row as an offered B-20 benefit; absence of a plan = not offered. | | numeric_amount_observability | varchar(31) | Constant 'offered_without_numeric_amounts' for all 88 rows. Because the numeric inputs are hardcoded null, the CASE always lands here. This is the honest self-description: the benefit is flagged offered but no dollar/percent amounts are captured in this view. | | null_amount_reason | varchar(30) | Constant 'unknown_requires_crosswalk' for all rows (CASE over null inputs always collapses here). Means: to get actual amounts you must crosswalk to the silver B-20 fields or other sources. | | annualization_policy | varchar(17) | Constant 'not_numeric' for all rows (no numeric amount to annualize). Derived over null inputs. | | combined_limit_policy | varchar(29) | Constant 'none_detected' for all rows. Derived over null inputs; does not actually detect combined/shared limits in this build. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' for all rows. Hardcoded; indicates no reconciliation against consumer-facing documents (MPF/SB) was performed. | | confidence_tier | varchar(23) | Constant 'source_faithful' for all rows. Because reconciliation_status='not_checked', the CASE always yields 'source_faithful' (i.e. values reflect the raw CMS source, not cross-document-verified). | | benefit_group_count | string | REAL DATA but mislabeled — it is the raw silver field pbp_b20_bendesc_grp_num (benefit-description group number), a string. Empty string for all 2024 snapshots; '2' for all 2025/2026 snapshots. Varies by SNAPSHOT, not by plan; do not read it as a meaningful per-plan count. | | cost_share_attestation_text | string | REAL DATA from silver pbp_b20_cost_share_attest. Constant '1' across all 88 rows (the CMS attestation indicator, not free text). | | has_coinsurance | boolean | REAL DATA. Decoded from silver pbp_b20_coins_mc_yn (Y/N flag for whether the benefit has coinsurance). TRUE for only 2 rows (H5264 plans 002 & 005, 2026); false otherwise. NOTE: even when true, coinsurance_pct is still null. | | has_copay | boolean | REAL DATA. Decoded from silver pbp_b20_copay_mc_yn. TRUE for only 2 rows (H5264 002 & 005, 2026); false otherwise. When true, copay_amount is still null. | | has_deductible | boolean | REAL DATA. Decoded from silver pbp_b20_ded_yn. FALSE/0 for all 88 rows in this build. | | has_max_enrollee_oop | boolean | REAL DATA. Decoded from silver pbp_b20_maxenr_yn (benefit has a max-enrollee-OOP). TRUE for only 1 row (H5264 005, 2026); false otherwise. Distinct from max_oop_applies (which is hardcoded null). | | supplemental_drugs_offered | boolean | | | supplemental_drugs_plan_terms_text | string | | | supplemental_other_sub_benefit | string | Constant 'other_supplemental' for all rows. Hardcoded sub-benefit label; the B-20 catch-all has no finer sub-type breakdown here. | | source_pbp_section | varchar(3) | Constant 'B20' for all rows. Identifies the CMS PBP source section (Section B-20 = other/additional supplemental services). | | source_silver_table | varchar(31) | Constant 'medicare_silver.pbp_section_b20' — the upstream silver table feeding this view. That silver table holds the richer raw amount fields not surfaced here. | | lmi_authorities | string | Constant URL to the CMS/LMI 'CY 2026 PBP Service Category Descriptions' PDF (provenance/definition reference). Same value for every row. | | source_url | string | REAL provenance. The exact CMS PBP zip the snapshot came from (e.g. pbp-benefits-2024-quarter-1.zip, pbp-benefits-2025.zip). One distinct value per (report_year, quarter) snapshot. | | sha256_content_hash | string | REAL provenance. SHA-256 of the source content for that snapshot; 5 distinct values = one per snapshot. Use with source_url to pin lineage. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_supplemental_other WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_supplemental_other")` first. # PBP supplemental services (cleaned view) `medicare_semantic.vw_pbp_supplemental_services` · Medicare Advantage, Part D, Medicaid · status live · 486,403 rows Supplemental services (fitness, education, remote access and the other B14c/B13 items) per plan, service and plan year, with the CMS periodicity code decoded. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | cost_share_string | string | | | copay_amount | double | | | coinsurance_pct | double | | | limit_text | string | | | auth_required | boolean | | | referral_required | boolean | | | network_type | varchar(10) | | | max_oop_applies | boolean | | | limit_quantity | double | | | limit_unit | string | | | limit_period_code | string | | | limit_period_label | string | | | limit_quantity_per_year | double | | | benefit_amount | double | | | benefit_amount_kind | varchar(34) | | | benefit_amount_period_code | string | | | benefit_amount_period_label | varchar(18) | | | benefit_amount_annualized | double | | | benefit_amount_pmpm | double | | | normalization_status | varchar(35) | | | normalization_basis | varchar(20) | | | aggregation_policy | varchar(60) | | | offered_status | varchar(15) | | | numeric_amount_observability | varchar(31) | | | null_amount_reason | varchar(30) | | | annualization_policy | varchar(17) | | | combined_limit_policy | varchar(29) | | | consumer_document_reconciliation_status | varchar(11) | | | confidence_tier | varchar(23) | | | supplemental_benefit | string | | | supplemental_benefit_code | string | | | supplemental_benefit_label | string | | | supplemental_benefit_type_code | string | | | supplemental_coinsurance_pct_min | double | | | supplemental_copay_amount_max | double | | | supplemental_detail | string | | | supplemental_in_ssbci_package_list | boolean | | | supplemental_optional_only | boolean | | | supplemental_package_id | string | | | supplemental_package_name | string | | | supplemental_package_type_code | string | | | supplemental_package_type_label | string | | | supplemental_quantity_limit_2_num | double | | | supplemental_quantity_limit_2_unit | string | | | supplemental_quantity_limit_2_unit_code | string | | | supplemental_quantity_limit_unit_code | string | | | supplemental_quantity_unlimited | boolean | | | supplemental_section_offered_code | string | | | supplemental_services_offered | boolean | | | supplemental_services_sub_benefit | string | | | supplemental_targeting | varchar(36) | | | source_pbp_section | varchar(4) | | | source_silver_table | varchar(59) | | | lmi_authorities | string | | | source_url | string | | | sha256_content_hash | string | | | section_d_group_index | int | | | section_d_group_name | string | | | section_d_group_amount | double | | | section_d_group_period_code | string | | | section_d_group_period_label | string | | | section_d_group_amount_annualized | double | | | section_d_group_category_codes | string | | | section_d_group_count | bigint | | | section_d_group_link_basis | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_supplemental_services WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_supplemental_services")` first. # PBP transportation (cleaned view) `medicare_semantic.vw_pbp_transportation` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP transportation rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface **Grain.** One row per MA plan segment per contract year per quarterly PUF re-release snapshot. The MINIMAL verified-unique key is (contract_id, plan_id, segment_id, report_year, quarter): tested at 201,488 distinct = 201,488 total rows (exact). Most plan-years appear in only one quarter (75,577 of them), but later years (2018+) are re-published up to 4 times a year, and each quarterly republish is a separate row with its own snapshot. There is exactly one PBP bid `version` per grain key, so `version` is NOT part of the grain. NEMT in v1 is modeled as a single atomic row per plan-year-quarter (transportation_combined_package_status='atomic_grain_use_helper_view_for_overlay'); it does NOT explode into one-row-per-mode or one-row-per-trip-type, even though a plan may cover several modes. **How to use it.** To find which MA plans offered $0-copay NEMT in 2026 and their annual trip allowance, query the latest snapshot per plan-year and filter to offered: SELECT contract_id, plan_id, segment_id, copay_amount, limit_quantity_per_year, transportation_trip_type_label, transportation_benefit_type_label FROM medicare_semantic.vw_pbp_transportation WHERE report_year=2026 AND quarter=(SELECT max(quarter) FROM medicare_semantic.vw_pbp_transportation WHERE report_year=2026) AND offered_status='offered' AND copay_amount=0. This answers 'which plans give free member transportation and how many trips/year' — use limit_quantity_per_year (already annualized) for cross-plan comparison, and watch transportation_trip_type_label since a 'One-way' cap of 24 ≈ 12 round trips. **Traps.** - report_year is the real time axis and the profiler MISSED it (no 'year' in its key heuristics). The true minimal grain is (contract_id, plan_id, segment_id, report_year, quarter) — verified 201,488 distinct = 201,488 rows. quarter is NOT a coverage quarter; it is which quarterly re-release of that year's PBP PUF the row came from (maps 1:1 to source_url). There is NO is_current column: to get the final filing for a plan-year, take MAX(quarter) per (contract,plan,segment,report_year). - Three boolean-flavored offer states, and NULL is meaningful. offered_status = not_offered (66%) / offered (29%) / offered_unknown (5%). transportation_offered is NULL exactly for the 'offered_unknown' rows — ALL of report_year 2001 plus scattered 2018–2024. Never treat NULL offered as 'not offered'; filter offered_status explicitly when computing adoption rates. - This benefit has NO dollar amount. benefit_amount, benefit_amount_kind/period/annualized/pmpm, coinsurance_pct, and max_oop_applies are 100% NULL. The only cost field is copay_amount ($0–$350, present in 32,190 rows ≈ only when offered). transportation_copay_amount_min always == copay_amount; _max differs in just 28 rows (mode-specific copays). The 'limit' is trip COUNT (limit_quantity, unit always 'trips'), not money. - transportation_mode_label is 100% NULL — the only way to know covered modes is transportation_mode_code, which is a variable-length BITMASK string (lengths 4/5/6, e.g. '011010') whose width grew over the years as CMS added mode columns. Decode position-by-position; do not treat it as a single ordinal code. Likewise trip_type codes 3/4/5 have NULL labels. - ~15 columns are single-value constants that encode the view's SCOPE, not data: benefit_category='transportation', transportation_trip_purpose='non_emergency_medical', transportation_sub_benefit='nemt_plan_allowed', transportation_ssbci_chronic_care_status='not_applicable_v1_nemt_only' (this view EXCLUDES SSBCI/chronically-ill transportation), network_type='in_network', confidence_tier='source_faithful', consumer_document_reconciliation_status='not_checked' (NOT reconciled against SB/EOC consumer docs), source_pbp_section='B10B'. lmi_authorities is empty-string for all rows. - version is the PBP bid-submission version (0–14+) and is NOT part of the grain (exactly one version per grain key). sha256_content_hash is a per-FILE hash (40 distinct = 40 source ZIPs), not a row identifier — do not use it to dedupe rows. For per-mode/combined views the data tells you to use a separate overlay/helper view (transportation_combined_package_status='atomic_grain_use_helper_view_for_overlay'); this table is the atomic per-plan-year grain and does NOT roll up across modes or trip types (aggregation_policy). | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0104, E5088). 1,972 distinct. Part of grain. H/R = MA contracts, E = employer/EGWP. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001','801'). 656 distinct. Part of grain. Combine with contract_id for the full plan identity. | | segment_id | string | Plan segment / service-area segment ('0' for most; up to '26'). 27 distinct. Part of grain; a single plan_id can have multiple geographic segments with different benefits. | | version | double | CMS PBP bid submission version of this plan filing (0–14+, higher = later re-submission). NOT part of the grain — exactly one version per (contract,plan,segment,year,quarter). Tells you which bid iteration the row reflects. | | report_year | double | Contract/benefit year the plan is in effect (2001–2026, 26 distinct). This is the real time axis; profiler missed it as a key. Part of grain. | | quarter | double | Which quarterly re-release of that year's PBP PUF the row came from (1–4). NOT a calendar quarter of coverage — it is the publication snapshot. Maps 1:1 to source_url (e.g. pbp-benefits-2024-quarter-1.zip). Part of grain; there is no is_current flag, so to get the latest filing for a plan-year take MAX(quarter). | | benefit_category | string | Constant 'transportation' for all 201,488 rows. Tag identifying this slice of the unified PBP semantic layer. | | cost_share_string | string | Human-readable cost share, e.g. '$0 copay'. Populated only when a copay exists (32,190 rows); NULL otherwise. coinsurance never appears here. | | copay_amount | double | Per-trip copay in dollars. Range $0–$350. Non-null for 32,190 rows — present essentially only when offered_status='offered'; always NULL when not_offered. Always equals transportation_copay_amount_min. | | coinsurance_pct | double | 100% NULL. Transportation NEMT is copay-only in this PUF section; coinsurance is never used. Ignore this column for analysis. | | limit_text | string | Raw limit string as filed, e.g. '12.0 trips/3' (12 trips, periodicity code 3=year). NULL when no limit. Source text behind the parsed limit_* columns. | | auth_required | boolean | Boolean — prior authorization required for the benefit. Non-null for 48,873 rows; NULL = not stated / not offered. | | referral_required | boolean | Boolean — referral required. Non-null for 58,882 rows; NULL where not stated. | | network_type | varchar(10) | Constant 'in_network'. This view carries only the in-network view of the benefit. | | max_oop_applies | boolean | 100% NULL. Whether the benefit counts toward MOOP is not populated for transportation in this section. | | limit_quantity | double | Number of trips allowed (the cap), unit = trips. Range 1–1,500. Non-null for 44,652 rows (the plans that cap trips). NULL = no cap stated or not offered. | | limit_unit | varchar(10) | Constant 'trips' for all rows. The unit of limit_quantity. | | limit_period_code | string | CMS periodicity code for the trip limit: 3=Every year (dominant), 6=Every month, 5=Every three months, 4=Every six months, 7=other. NULL = no periodic limit. Drives limit_period_label and the per-year annualization. | | limit_period_label | varchar(18) | Decoded label of limit_period_code ('Every year','Every month','Every three months','Every six months'). NULL when no limit. | | limit_quantity_per_year | double | limit_quantity annualized using limit_period_code (e.g. 2 trips/month -> 24/year). Non-null for 43,830 rows, max 1,500. Use THIS for cross-plan trip-allowance comparison; it normalizes monthly/quarterly limits to an annual figure. | | benefit_amount | double | 100% NULL. Transportation has no dollar-allowance benefit (unlike flex/OTC benefits), so all benefit_amount* columns are empty. Do not expect a dollar value here. | | benefit_amount_kind | string | 100% NULL (no dollar benefit on this benefit). | | benefit_amount_period_code | string | 100% NULL (no dollar benefit). | | benefit_amount_period_label | string | 100% NULL (no dollar benefit). | | benefit_amount_annualized | double | 100% NULL (no dollar benefit). | | benefit_amount_pmpm | double | 100% NULL (no dollar benefit). | | normalization_status | varchar(36) | How the limit was normalized: 'not_populated' (142,934 — no numeric limit, usually not offered), 'normalized' (44,602 — limit parsed+annualized), 'offered_no_numeric_amount' (13,902 — offered but no number), 'amount_present_period_not_annualized' (50 edge cases). | | normalization_basis | varchar(20) | Constant 'cms_periodicity_code' — annualization is driven by the CMS periodicity code, not free text. | | aggregation_policy | varchar(47) | Constant 'trip_count_no_rollup_across_modes_or_trip_types' — declares that trip counts are NOT summed across transport modes or one-way/round-trip; treat each row's limit as the filed scope, do not aggregate. | | offered_status | varchar(15) | Whether the plan offers transportation: 'not_offered' (132,795 ≈ 66%), 'offered' (58,504 ≈ 29%), 'offered_unknown' (10,189 ≈ 5%, flag indeterminate — all of 2001 plus scattered 2018–2024). The headline offer flag for adoption analysis. | | numeric_amount_observability | varchar(31) | Two values: 'not_offered' (132,795) and 'offered_without_numeric_amounts' (68,693). Note: 'offered_without_numeric_amounts' covers ALL offered rows here because there is no dollar amount — copay/limit live in their own columns. | | null_amount_reason | varchar(26) | Why an amount field is null: 'not_offered' (132,795), 'not_null_numeric_amount' (44,652 = has a limit number), 'unlimited' (11,119), 'unknown_requires_crosswalk' (10,090), 'offered_no_numeric' (2,832). The key for interpreting NULLs correctly. | | annualization_policy | varchar(17) | Constant 'not_numeric' — there is no dollar amount to annualize (trip-count annualization is handled by limit_quantity_per_year instead). | | combined_limit_policy | varchar(29) | Constant 'none_detected' — no shared/combined limit across benefits was detected for transportation in v1. | | consumer_document_reconciliation_status | varchar(11) | Constant 'not_checked' — these values have not been reconciled against consumer-facing docs (SB/EOC); they are straight from the bid filing. | | confidence_tier | varchar(23) | Constant 'source_faithful' — values are faithful to the CMS source with no inference/override applied. | | cost_share_populated_in_bid | boolean | Boolean: True for exactly 32,190 rows — equals 'a copay is present'. True when copay_amount is non-null, False (169,298) otherwise. Quick filter for 'has a stated cost share'. | | has_coinsurance | boolean | | | has_copay | boolean | | | transportation_benefit_type_code | string | CMS code: 2=Mandatory (55,072), 1=Additional (444), 3=Optional (177), 4=Both (78), NULL=not offered (145,717). 'Mandatory' = basic supplemental included in premium; Optional/Additional = buy-up. | | transportation_benefit_type_label | varchar(10) | Decoded label of the above: Mandatory / Additional / Optional / Both. NULL when not offered. | | transportation_combined_package_status | varchar(40) | Constant 'atomic_grain_use_helper_view_for_overlay' — tells you THIS view is the atomic per-plan-year grain; to see the benefit combined across modes/trip-types use a separate helper/overlay view. | | transportation_copay_amount_max | double | Max per-trip copay across modes for the plan. Non-null for 32,190 rows, max $350. Differs from _min in only 28 rows (plans with mode-specific copays); otherwise equals copay_amount. | | transportation_copay_amount_min | double | Min per-trip copay. Non-null 32,190, always equals copay_amount. With _max it gives the copay range when a plan varies copay by mode (rare, 28 rows). | | transportation_destination_scope_code | string | CMS code: 1=Plan-approved Health-related Location (55,672), 2=Any Health-related Location (2,832), NULL=not offered (142,984). How restrictive the allowed destinations are. | | transportation_destination_scope_label | varchar(37) | Decoded: 'Plan-approved Health-related Location' / 'Any Health-related Location'. NULL when not offered. | | transportation_has_max_dollar | boolean | | | transportation_is_unlimited | boolean | Boolean — trips are unlimited. True 11,119, False 44,652, NULL 145,717 (not offered / not stated). When True, expect limit_quantity NULL with null_amount_reason='unlimited'. | | transportation_is_unlimited_code | string | CMS code form: 1=Yes(unlimited), 2=No, NULL=n/a. Backs transportation_is_unlimited. | | transportation_is_unlimited_label | varchar(3) | Decoded 'Yes'/'No', NULL when n/a. | | transportation_leg_code | varchar(4) | | | transportation_leg_in_ssbci_package_list | boolean | | | transportation_max_dollar | double | | | transportation_max_dollar_period_code | string | | | transportation_max_dollar_period_description | string | | | transportation_max_dollar_period_label | varchar(18) | | | transportation_mode_code | string | Variable-length BITMASK string of covered transport modes (lengths 4/5/6, e.g. '011010','000001'). Each position is a mode flag (cab/van/wheelchair-van/public-transit/etc.); the width grew over the years as CMS added mode columns. Non-null only when offered. NOT a single ordinal code — decode position-by-position. | | transportation_mode_label | string | 100% NULL — the decoded human-readable mode list is NOT populated. GOTCHA: transportation_mode_code is the ONLY way to know modes, and it is a raw multi-flag bitmask with no label. | | transportation_offered | boolean | Boolean offer flag: True 58,504, False 132,795, NULL 10,189. NULL is meaningful = 'offered_unknown' (offered_status), concentrated in 2001 (entire year) and 2018–2024. Use COALESCE/treat NULL explicitly when computing offer rates. | | transportation_offered_code | string | CMS code: 1=Yes (58,504), 2=No (132,795), NULL (10,189). Backs transportation_offered. | | transportation_offered_label | varchar(3) | Decoded 'Yes'/'No', NULL when unknown. | | transportation_package_id | string | | | transportation_package_name | string | | | transportation_package_type_code | string | | | transportation_package_type_label | string | | | transportation_ssbci_chronic_care_status | varchar(27) | Constant 'not_applicable_v1_nemt_only' — this view is scoped to standard NEMT only; it does NOT cover SSBCI (Special Supplemental Benefits for the Chronically Ill) transportation. Do not use it to measure SSBCI/chronic transportation. | | transportation_sub_benefit | string | Constant 'nemt_plan_allowed' — identifies the sub-benefit as plan-allowed non-emergency medical transportation. | | transportation_targeting | varchar(36) | | | transportation_trip_purpose | varchar(21) | Constant 'non_emergency_medical' — all rows are NEMT; emergency ambulance is a different benefit/section. | | transportation_trip_type_code | string | CMS code: 1=One-way (51,390), 2=Round Trip (4,112), 4 (178), 3 (80), 5 (15), NULL=not offered (145,713). How the trip limit is counted. | | transportation_trip_type_label | varchar(10) | Decoded: 'One-way' / 'Round Trip'; codes 3/4/5 have NULL labels (label coverage incomplete — 145,986 NULL). GOTCHA: a 'one-way' 24-trip limit ≈ 12 round trips; trip_type matters when comparing limits. | | source_pbp_section | varchar(4) | Constant 'B10B' — the PBP form section for ambulance/transportation supplemental benefits this data is parsed from. | | source_silver_table | varchar(54) | Constant 'medicare_silver.pbp_section_b10_amb_trans' — the upstream silver table this semantic view is built on. Lineage pointer. | | lmi_authorities | string | Empty string ('') for 100% of rows (not NULL). LMI/authority provenance is unused for this benefit; carries no information here. | | source_url | string | The exact CMS PBP PUF ZIP this row was ingested from. Maps 1:1 to (report_year, quarter): 40 distinct URLs, e.g. pbp-benefits-2024-quarter-1.zip, pbp-benefits-2026.zip. Provenance + how to fetch the raw file. | | sha256_content_hash | string | Content hash of the SOURCE FILE, not the row: 40 distinct hashes = 40 distinct source_urls (one hash per ingested ZIP). Use for file-level provenance/integrity, NOT as a row identifier. | | section_d_group_index | int | | | section_d_group_name | string | | | section_d_group_amount | double | | | section_d_group_period_code | string | | | section_d_group_period_label | string | | | section_d_group_amount_annualized | double | | | section_d_group_category_codes | string | | | section_d_group_count | bigint | | | section_d_group_link_basis | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_transportation WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_transportation")` first. # PBP vision (cleaned view) `medicare_semantic.vw_pbp_vision` · Medicare Advantage, Part D, Medicaid · status live Cleaned source-faithful PBP vision rows: era-normalized, CMS codes decoded, with offered_status/numeric_amount_observability/null_amount_reason/annualization_policy/combined_limit_policy/confidence_tier. The agent reasoning surface for visi **Grain.** One row per Medicare Advantage plan segment per vision sub-benefit per CMS release snapshot. Verified minimal unique key = (contract_id, plan_id, segment_id, report_year, quarter, vision_sub_benefit): 1,208,928 distinct combinations = 1,208,928 total rows, 0 duplicates. Each plan-snapshot fans out to exactly 6 sub-benefit rows (1 eye-exam from B17A + 5 eyewear from B17B). `quarter` is the within-year CMS release selector (the same plan-year reappears in up to 4 quarterly republished ZIPs); `version` is a redundant per-bid attribute and is NOT part of the key. **How to use it.** Find the current (2026) eyewear allowance for a given MA plan without double-counting the shared cap: SELECT contract_id, plan_id, segment_id, max(benefit_amount) AS eyewear_cap, max(benefit_amount_period_code) AS period_code FROM medicare_semantic.vw_pbp_vision WHERE report_year=2026 AND vision_cap_source='combined_eyewear_cap' AND vision_offered=true GROUP BY 1,2,3. This returns the single combined eyewear dollar cap per plan (e.g. $300) and its CMS periodicity code (3='Every year'), correctly avoiding the 5x over-count you'd get by summing the per-sub-benefit rows. For multi-snapshot years, add a MAX(quarter) filter to dedup to the latest release. **Traps.** - DO NOT SUM benefit_amount across the 6 vision_sub_benefit rows of a plan-snapshot. For the 5 eyewear sub-benefits the same combined cap is repeated on each row (vision_cap_source='combined_eyewear_cap'); verified a $300 cap appears identically on 5 rows. The table flags this itself via aggregation_policy ('...do_not_sum') and combined_limit_policy='shared_across_components'. To get a plan's true eyewear cap, take one distinct value where vision_cap_source='combined_eyewear_cap', not a SUM. - There is NO is_current column and `version` does NOT select the latest record. A plan-year can appear in up to 4 quarterly re-release snapshots (quarter maps 1:1 to source_url / sha256). To get one row per plan-year you must filter to MAX(quarter) per (contract_id, plan_id, segment_id, report_year); otherwise you multi-count plans that were republished. `version` (0-27) is just a bid-amendment attribute and is redundant for the grain. - Periodicity codes are non-intuitive and SHARED by limit_period_code and benefit_amount_period_code: 1=Every THREE years, 2=Every two years, 3=Every year, 4=Every six months, 5=Every three months, 6=Other, 7=Every month. Code 1 is NOT annual. The *_period_label columns are NULL for many older years even when the code is present, so derive the label from the code yourself. - Most rows have no usable dollar figure: only ~58K (5%) are 'all_offered_numeric'; benefit_amount_pmpm is 100% NULL and benefit_amount_annualized is populated on only ~58K rows (annualization_policy='annualized_safe'). 610K benefit_amount values have a NULL period, so they cannot be annualized. Check numeric_amount_observability / null_amount_reason before trusting a cap; null_amount_reason='combined_limit_elsewhere' means the cap is on a sibling row. - NULLs and labels carry meaning and traps: vision_offered/auth_required NULL = genuinely unknown (offered_unknown; pre-2018 multiselect auth bitmask in vision_auth_raw like '01000' that couldn't be binarized), NOT false. segment_id has an empty-string '' value (30,444 rows) distinct from '0'. vision_offered_label flips between 'True/False' and 'Yes/No' across years for the same code - group on the vision_offered boolean or vision_offered_code, never the label. confidence_tier ('source_faithful') and consumer_document_reconciliation_status ('not_checked') are constants: values are faithful to the CMS bid but NOT reconciled against consumer SB/EOC documents. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID. Prefixes observed: H = local HMO/PPO (1,933 contracts, 98% of rows), R = regional PPO (37), E = employer/EGWP (2). All Medicare Advantage; combines with plan_id+segment_id to identify a plan. | | plan_id | string | 3-char plan number within the contract (e.g. '001','007'). 656 distinct values; NOT unique on its own - only meaningful inside a contract_id. | | segment_id | string | PBP plan segment (sub-area of a plan that can carry different benefits). Mostly '0' (90% of rows); also '1'-'6' for segmented plans, plus EMPTY STRING '' (30,444 rows, not NULL) in some years. Required for grain uniqueness. | | version | double | CMS PBP bid version/amendment number for that snapshot (0-27). An attribute of the row, NOT a snapshot selector - it is redundant for grain (dropping it leaves the key still unique). Do not use it to pick the 'latest' record. | | report_year | double | Plan/benefit year the bid applies to (2001-2026). This is the TRUE time dimension - use it, not `quarter`, for year-over-year analysis. Double-typed. | | quarter | double | Which CMS republished release ZIP within the report_year (1-4), mapping 1:1 to source_url/sha256. 2001-2017 + 2021/2025/2026 have only quarter 1; 2018-2020,2022-2024 have multiple. NOT a calendar quarter of service - it is a re-release/snapshot index. There is NO is_current flag; pick MAX(quarter) per report_year for the freshest snapshot. | | benefit_category | string | Constant = 'vision' (this is the vision-only view). | | cost_share_string | string | Raw text cost-share descriptor from the bid. Populated for only 331,963 rows (27%); NULL means cost-share was not populated in the bid (see cost_share_populated_in_bid). | | copay_amount | double | Member copay in dollars. Populated for 325,532 rows only. NULL where no copay applies / not populated in bid. | | coinsurance_pct | double | Member coinsurance percent. Very sparse - only 7,955 rows. Vision is overwhelmingly copay- or cap-based, rarely coinsurance. | | limit_text | string | Human-readable frequency limit string, e.g. '1.0 pairs/6' or '1.0 exams/3' (the number after the slash is the CMS periodicity code, not a count). Parsed into limit_quantity/limit_unit/limit_period_code. | | auth_required | boolean | Boolean prior-authorization required. NULL for ~45% of rows - chiefly pre-2018 plans whose CMS field was a multiselect bitmask (see vision_auth_raw / vision_auth_source_status) that could not be collapsed to a clean yes/no. | | referral_required | boolean | Boolean referral required to access the vision benefit. | | network_type | varchar(10) | Constant = 'in_network'. This view carries only in-network terms; out-of-network is not represented. | | max_oop_applies | boolean | Whether the benefit counts toward the plan MOOP. Effectively all NULL in samples - not reliably populated for vision. | | limit_quantity | double | Numeric frequency allowance (e.g. 1.0 = one pair/exam). Parsed from limit_text; NULL when no quantity limit is stated. | | limit_unit | string | Unit of the frequency limit, e.g. 'pairs','exams'. Can be populated even when limit_quantity is NULL (default unit for the sub-benefit). | | limit_period_code | string | CMS periodicity code for the frequency limit. CAUTION on the mapping: 1=Every three years, 2=Every two years, 3=Every year, 4=Every six months, 5=Every three months, 6=Other/Describe, 7=Every month. (Code 1 is NOT annual.) NULL for 902,818 rows (no periodic limit / not in section). | | limit_period_label | string | Decoded label for limit_period_code. WARNING: NULL in many older years even when the code is present - trust limit_period_code, derive the label yourself. | | limit_quantity_per_year | double | Frequency normalized to an annual count. Almost entirely NULL - normalization to per-year was not applied for most vision rows. | | benefit_amount | double | The maximum-plan-benefit dollar cap (benefit_amount_kind is constant 'maximum_plan_benefit'). 598,730 non-null, range $0-$4,000, median ~$182. CRITICAL: for the 5 eyewear sub-benefits this is frequently the SAME shared combined-eyewear cap repeated on each row (vision_cap_source='combined_eyewear_cap') - do NOT sum across sub-benefits. | | benefit_amount_kind | string | Constant = 'maximum_plan_benefit'. Confirms benefit_amount is a coverage cap, not a member cost or an allowance the member pays. | | benefit_amount_period_code | string | CMS periodicity code for the cap (same code system as limit_period_code: 3=Every year, 2=Every two years, 1=Every three years, etc). NULL for 610,182 rows - meaning many caps have no stated period and therefore cannot be annualized. | | benefit_amount_period_label | string | Decoded label for the cap period. Frequently NULL even when the code is present (label coverage is partial); use the code. | | benefit_amount_annualized | double | Cap normalized to an annual figure. Only 58,292 rows populated - annualization was only safe for a small subset (see annualization_policy='annualized_safe'); NULL elsewhere. | | benefit_amount_pmpm | double | Per-member-per-month version of the cap. 100% NULL - the column exists but is never populated for vision. | | normalization_status | varchar(56) | How far the amount/frequency was normalized: 'amount_and_period_exposed_not_annualized' (538K), 'not_populated' (382K), 'frequency_only_no_amount' (142K), 'no_quantity_limit_columns_for_upgrades' (87K), 'normalized' (61K). Tells you how usable the numeric fields are. | | normalization_basis | varchar(43) | Constant = 'cms_periodicity_code' - all period normalization is anchored on the CMS periodicity code system. | | aggregation_policy | varchar(60) | Whether sub-benefit rows may be summed. Dominant value 'component_or_shared_cap_do_not_sum' (1.08M) plus 'shared_eyewear_cap_do_not_sum' - both explicitly say DO NOT SUM benefit_amount across the 6 sub-benefits. This is the built-in anti-double-count guard. | | offered_status | varchar(15) | Tri-state offered flag: 'offered' (780,738), 'not_offered' (371,592), 'offered_unknown' (56,598). The 'offered_unknown' rows are where vision_offered is NULL. | | numeric_amount_observability | varchar(31) | Whether usable dollar amounts exist: 'offered_without_numeric_amounts' (779,089 - benefit offered but no $ in bid), 'not_offered' (371,592), 'all_offered_numeric' (58,247). Only ~5% of rows expose complete numeric amounts. | | null_amount_reason | string | Why benefit_amount is NULL: 'not_null_numeric_amount' (492,810 = amount IS present), 'not_offered' (371,546), 'offered_no_numeric' (161,286), 'combined_limit_elsewhere' (128,367 = cap lives on another sub-benefit row), 'unknown_requires_crosswalk' (47,165), 'unlimited' (7,754). Essential for interpreting NULL caps. | | annualization_policy | varchar(17) | 'not_numeric' (most rows) or 'annualized_safe' (~58K). Only 'annualized_safe' rows have a trustworthy benefit_amount_annualized. | | combined_limit_policy | varchar(29) | Constant 'shared_across_components' - reinforces that eyewear sub-benefits share a single combined limit. | | consumer_document_reconciliation_status | varchar(11) | Constant = 'not_checked' - these values have not been reconciled against consumer-facing SB/EOC documents (PBP-bid-faithful only). | | confidence_tier | varchar(23) | Constant = 'source_faithful' - every value is a faithful read of the CMS bid, with no inference/override applied. | | coinsurance_pct_max | double | | | copay_amount_max | double | | | cost_share_populated_in_bid | boolean | Boolean: was a cost-share value present in the bid for this row. False for 876,965 (72%), True for 331,963. When False, NULL copay/coinsurance means 'not stated', not 'free'. | | source_amount_column | string | Provenance: the exact raw PBP column expression the benefit_amount came from, e.g. coalesce(pbp_b17b_indv_maxplan_amt_egl, pbp_b17b_comb_maxplan_amt). Lets you trace any number to the underlying bid field. | | source_period_column | string | Provenance: the raw PBP column expression behind benefit_amount_period_code (e.g. coalesce(pbp_b17b_indv_maxplan_per_egl, pbp_b17b_comb_maxplan_per)). | | vision_amount_source | string | | | vision_auth_raw | string | Raw CMS authorization code. Pre-2018 it is a 5-position multiselect bitmask (e.g. '01000','00111'); 2018+ it is binary '1'(yes)/'2'(no). This is why auth_required is often NULL - the bitmask can't be cleanly binarized. | | vision_auth_source_status | varchar(43) | Tags how vision_auth_raw should be read: 'pre_2018_multiselect_or_post_2018_binary_12', 'post_2018_binary_12', or 'pre_2018_multiselect_interpreted'. Use it to decide whether auth_required is reliable. | | vision_benefit_family | string | Coarse grouping: 'eyewear' (1,007,440 = the 5 B17B sub-benefits) or 'eye_exam' (201,488 = B17A). 1:1 with source_pbp_section. | | vision_benefit_type_code | string | CMS benefit-type code: 1=Additional, 2=Mandatory, 3=Optional, 4=Both. NULL for 647,461 rows (the eye-exam family and rows where CMS did not carry the code). | | vision_benefit_type_label | string | Decoded label for vision_benefit_type_code (Mandatory/Optional/Additional/Both). NULL wherever the code is NULL. | | vision_cap_present | boolean | Tri-state: TRUE a per-period dollar cap applies, FALSE no cap, NULL unknown. Note TRUE can co-occur with a NULL benefit_amount when the cap is shared/recorded elsewhere - read together with vision_cap_source. | | vision_cap_reference_code | string | How the cap is expressed: 2='Plan-specified amount per period' (the common case), 1='Covered under Eye Exams Category 17a' (cap deferred to the exam section). NULL when no cap reference. | | vision_cap_reference_label | string | Decoded label for vision_cap_reference_code. | | vision_cap_source | string | Which underlying cap this row's amount represents: 'combined_eyewear_cap' (517K - the SHARED cap repeated across the 5 eyewear rows), 'eye_exam_max_plan_benefit', 'legacy_eyewear_max_plan_benefit', or individual_* caps (per-component). THE key field for deciding whether two rows' caps are the same physical cap. | | vision_copay_amount_max | double | | | vision_eyewear_combined_cap_description | string | | | vision_eyewear_max_amount | double | | | vision_eyewear_max_basis | string | | | vision_eyewear_max_filed | boolean | | | vision_eyewear_max_period_code | string | | | vision_glasses_offered | boolean | | | vision_limit_period_description | string | | | vision_limit_unlimited | boolean | Tri-state: TRUE the benefit is unlimited (no frequency cap, code '1'), FALSE limited ('2'), NULL not stated (687,937 rows). 214,881 unlimited. | | vision_limit_unlimited_code | string | Raw CMS code behind vision_limit_unlimited: '1'=True/unlimited, '2'=False/limited. | | vision_limit_unlimited_label | string | Decoded label ('True'/'False') for the unlimited flag. | | vision_offered | boolean | Primary 'is this vision sub-benefit offered' boolean. TRUE 780,738 / FALSE 371,592 / NULL 56,598 (=offered_unknown). USE THIS BOOLEAN, not the label, for filtering. | | vision_offered_code | string | Raw CMS offered code: '1'=offered, '2'=not offered. Consistent across years (unlike the label). | | vision_offered_label | varchar(5) | Decoded label - INCONSISTENT across years ('True'/'False' in some, 'Yes'/'No' in others) for the same code. Do not group on this; group on vision_offered or vision_offered_code. | | vision_package_id | string | | | vision_package_match_basis | string | | | vision_package_name | string | | | vision_package_type_code | string | | | vision_package_type_label | string | | | vision_pooled_group_amount | double | | | vision_pooled_group_category_codes | string | | | vision_pooled_group_count | bigint | | | vision_pooled_group_equals_b17a_cap | boolean | | | vision_pooled_group_index | int | | | vision_pooled_group_name | string | | | vision_pooled_group_period_code | string | | | vision_section_d_category_codes | string | | | vision_section_d_group_index | int | | | vision_section_d_group_name | string | | | vision_service_name | string | | | vision_sub_benefit | string | The specific vision benefit line - the grain driver. Exactly 6 values, each on 201,488 rows: routine_eye_exam (B17A), contact_lenses, eyeglass_frames, eyeglass_lenses, eyeglasses_lenses_and_frames, eyewear_upgrades (all B17B). | | vision_targeting | varchar(36) | | | source_pbp_section | string | Source CMS PBP subsection: 'B17A' (eye exams, 201,488 rows) or 'B17B' (eyewear, 1,007,440). Deterministic from vision_sub_benefit / vision_benefit_family. | | source_silver_table | varchar(59) | Constant = 'medicare_silver.pbp_section_b17_eye_exams_wear' - the single silver table this view is built from. | | lmi_authorities | string | Placeholder for Local-Market-Intelligence source authorities. EMPTY STRING '' for 100% of rows - not yet populated for vision (carries no information today). | | source_url | string | Provenance: the exact CMS PBP ZIP this row was extracted from (e.g. https://www.cms.gov/files/zip/pbp-benefits-2023-quarter-4.zip). 40 distinct URLs = 40 distinct snapshots, 1:1 with (report_year, quarter) and with sha256_content_hash. | | sha256_content_hash | string | Content hash of the source ZIP for integrity/lineage. 40 distinct, perfectly 1:1 with source_url and (report_year, quarter). | | vendor_tier_class | string | | | vendor_tier_standard_max | double | | | vendor_tier_standard_max_period | string | | | vendor_tier_standard_max_annual | double | | | vendor_tier_preferred_max | double | | | vendor_tier_preferred_max_period | string | | | vendor_tier_preferred_max_annual | double | | | vendor_tier_preferred_vendor | string | | | vendor_tier_filed_max_annual | double | | | vendor_tier_filed_tier | string | | | vendor_tier_headline_max | double | | | vendor_tier_headline_basis | string | | | vendor_tier_source | string | | | vendor_tier_evidence | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_vision WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_vision")` first. # PBP worldwide emergency, urgent care and transport benefit (cleaned view) `medicare_semantic.vw_pbp_worldwide` · Medicare Advantage, Part D, Medicaid · status live · 100,805 rows Worldwide coverage per plan and plan year from PBP section B4c: emergency, urgent care and emergency transport, each with offered status, copay minimum and maximum and coinsurance, plus the combined maximum with its period and annualized value. Built by the benefits lane (Lane CI, 2026-09-29; checked against raw B4C, 5,365 matched) as a versioned view; the bare name is a pointer to the newest version. **Grain.** One row per (contract_id, plan_id, segment_id, report_year, quarter, benefit_category) cleaned row; 100,805 rows, report_year 2018-2026, 876 contracts (measured 2026-09-29, Athena 88ad3222). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | benefit_category | string | | | worldwide_emergency_offered | boolean | | | worldwide_emergency_copay_min | double | | | worldwide_emergency_copay_max | double | | | worldwide_emergency_coinsurance_pct | double | | | worldwide_urgent_offered | boolean | | | worldwide_urgent_copay_min | double | | | worldwide_urgent_copay_max | double | | | worldwide_urgent_coinsurance_pct | double | | | worldwide_transport_offered | boolean | | | worldwide_transport_copay_min | double | | | worldwide_transport_copay_max | double | | | worldwide_transport_coinsurance_pct | double | | | worldwide_combined_max_amount | double | | | worldwide_combined_max_period_label | string | | | worldwide_combined_max_annualized | double | | | source_pbp_section | string | | | source_view | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pbp_worldwide WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pbp_worldwide")` first. # Vlada Plan Value (Method Lock 1.0 + PV-55, signed 2026-10-17; served build v19e) market cells, national / state / county x product type x plan type x parent, 2026 and 2027 levels `medicare_semantic.vw_plan_value_cells` · Medicare Advantage, Part D, Medicaid · status live · 129,363 rows Vlada Plan Value member-weighted: each value is the signed sum over September 2026 members divided by the members valued (plan_value_cells_v19e at base_year 2026, recommended fixcard3_design_on, read straight). Served build v19e = Method Lock 1.0 (v19d, signed by Ben 2026-10-15, final 2026-10-16) + PV-55 (the ER copay charged on every visit, CMS's convention), signed by Ben 2026-10-17 on docs/ma-value-engine/lock/v19/GATE-RECEIPT-v19e.json as the Plan Value for launch (docs/ma-value-engine/V19-2025-2027.md): the v16 method plus the v18c / v18d / v18e fixes, the SSBCI eligibility rule, U3, D3 and the extras read through one reader on benefit edition v20261015d; 2027 Part D FINAL on CMS's CY2027 formulary; CY2025 built (not in this view; the table carries base_year 2025 too). 2026 = every 2026 member in their 2026 plan; 2027 = the same members followed to their 2027 plan (same plan or CMS's crosswalk), priced on the 2026 cohort, statute and dollars. Columns: the headline and its five legs, the minimum-end and maximum-end values, the card bounds, the headline without Part D, the filed design with its legs, ends and bounds, the valued shares, and for D-SNP the full-dual column and the share of members in $0-cost-sharing segments. Pinned version: medicare_semantic.vw_plan_value_cells_v19e (served build v19e). Owner source: register w3 vlada_w3_benvat. **Grain.** One row per geography_level x state x county_ssa x product_type x plan_type x parent_organization (129,363 rows = 129,363 distinct keys, measured 2026-10-08 on vw_plan_value_cells_v16, _v17b, _v18 (2026-10-09), _v19d (2026-10-16) and _v19e (2026-10-17); 792 national, 3,834 state, 124,737 county; 52 states and territories, 3,116 counties, 166 parents + ALL). plan_type 'ALL' = every plan type of the product type; parent_organization 'ALL' = the whole market. product_type is never pooled ('ALL' is not served). | column | type | meaning | |---|---|---| | geography_level | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | product_type | string | | | snp_type | varchar(5) | | | plan_type | string | | | parent_organization | string | | | headline_definition | varchar(9) | | | members_2026 | double | | | members_2027_followed | double | | | valued_share_2026 | double | | | valued_share_2027 | double | | | plan_value_2026 | double | | | plan_value_min_end_2026 | double | | | plan_value_max_end_2026 | double | | | plan_value_card_low_2026 | double | | | plan_value_card_high_2026 | double | | | plan_value_2027 | double | | | plan_value_min_end_2027 | double | | | plan_value_max_end_2027 | double | | | plan_value_card_low_2027 | double | | | plan_value_card_high_2027 | double | | | medical_cost_sharing_value_2026 | double | | | extras_value_2026 | double | | | part_d_value_2026 | double | | | part_b_buydown_value_2026 | double | | | member_premium_2026 | double | | | medical_cost_sharing_value_min_end_2026 | double | | | medical_cost_sharing_value_max_end_2026 | double | | | medical_cost_sharing_value_2027 | double | | | extras_value_2027 | double | | | part_d_value_2027 | double | | | part_b_buydown_value_2027 | double | | | member_premium_2027 | double | | | medical_cost_sharing_value_min_end_2027 | double | | | medical_cost_sharing_value_max_end_2027 | double | | | plan_value_excl_part_d_2026 | double | | | plan_value_excl_part_d_2027 | double | | | filed_design_plan_value_2026 | double | | | filed_design_min_end_2026 | double | | | filed_design_max_end_2026 | double | | | filed_design_card_low_2026 | double | | | filed_design_card_high_2026 | double | | | filed_design_medical_value_2026 | double | | | filed_design_extras_value_2026 | double | | | filed_design_part_d_value_2026 | double | | | filed_design_part_b_buydown_value_2026 | double | | | filed_design_member_premium_2026 | double | | | filed_design_valued_share_2026 | double | | | filed_design_plan_value_2027 | double | | | filed_design_min_end_2027 | double | | | filed_design_max_end_2027 | double | | | filed_design_card_low_2027 | double | | | filed_design_card_high_2027 | double | | | filed_design_medical_value_2027 | double | | | filed_design_extras_value_2027 | double | | | filed_design_part_d_value_2027 | double | | | filed_design_part_b_buydown_value_2027 | double | | | filed_design_member_premium_2027 | double | | | filed_design_valued_share_2027 | double | | | dsnp_full_dual_plan_value_2026 | double | | | dsnp_zero_dollar_cost_sharing_share_2026 | double | | | dsnp_full_dual_plan_value_2027 | double | | | dsnp_zero_dollar_cost_sharing_share_2027 | double | | | part_d_2027_filed_share | double | | | part_d_2027_carried_share | double | | | part_d_2027_refused_share | double | | | range_basis | varchar(23) | | | card_rule | varchar(33) | | | build | varchar(14) | | | variant | varchar(18) | | | atoms | varchar(26) | | | value_label | varchar(7) | | Tools that read it: get_plan_value Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_value_cells WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_value_cells")` first. # Vlada Plan Value, county basis (formerly BenVAT) with per-benefit values and real county enrollment `medicare_semantic.vw_plan_value_county` · Medicare Advantage, Part D, Medicaid · status live · 445,771 rows Vlada Plan Value county basis (run d06cf1bf7, signed 2026-08-27; typed rebuild 2026-09-17 verified cell-for-cell against the signed CSVs): the plan value re-priced and re-utilized per county (v_b) against the national value (v_national), decomposed into price_effect, util_effect and interaction, with the reference and plan PMPM, MOOP relief, the rake diagnostics and the 35 per-benefit-code value columns (v_by_code_*). Adds real county enrollment from the CMS February file with its suppression flag and bounds, the count of a plan's segments in the county, and `snp_type` as labels. Modeled; never a CMS figure. Owner source: register w3 vlada_w3_benvat (door RAW, locked by Ben 2026-09-03). Supersedes medicare_semantic.benvat_county_v1, which read CSV positionally and so mis-named 26 columns for 2023 and 2024. **Grain.** One row per benefit_design_year x contract x plan x segment x county_ssa (measured 2026-09-17 in Athena, 445,771 rows = 445,771 distinct keys, Athena efc66d87; 844 contracts, CY2023-CY2026). Real types (double / int / boolean / varchar); no cast is needed or wanted. | column | type | meaning | |---|---|---| | contract | string | | | plan | string | | | segment | string | | | benefit_design_year | int | | | organization | string | | | plan_name | string | | | plan_type | string | | | snp_type | string | | | parent_organization | string | | | county_ssa | string | | | fips | string | | | county_name | string | | | state | string | | | partial_county | string | | | eghp | string | | | v_b | double | | | v_b_raw_f_sensitivity | double | | | v_price_b | double | | | v_util_b | double | | | v_cplus_additive | double | | | accumulator_effect_b_minus_cplus | double | | | v_price_first_order | double | | | v_national | double | | | price_effect | double | | | util_effect | double | | | interaction | double | | | ref_pmpm_b | double | | | plan_pmpm_b | double | | | v_moop_relief_pmpm | double | | | rake_converged | boolean | | | rake_max_rel_gap | double | | | ma_penetration_warned | boolean | | | plan_member_year_refusals | double | | | identity_gap | double | | | refusal_reason | string | | | v_by_code_10a1 | double | | | v_by_code_10a2 | double | | | v_by_code_11a | double | | | v_by_code_11b | double | | | v_by_code_11bs | double | | | v_by_code_12 | double | | | v_by_code_14e2 | double | | | v_by_code_15c | double | | | v_by_code_15m | double | | | v_by_code_16a | double | | | v_by_code_1a | double | | | v_by_code_1b | double | | | v_by_code_2 | double | | | v_by_code_3c | double | | | v_by_code_3p | double | | | v_by_code_4a | double | | | v_by_code_4b | double | | | v_by_code_6 | double | | | v_by_code_7a | double | | | v_by_code_7b | double | | | v_by_code_7c | double | | | v_by_code_7d | double | | | v_by_code_7e | double | | | v_by_code_7f | double | | | v_by_code_7h | double | | | v_by_code_7i | double | | | v_by_code_7k | double | | | v_by_code_8a1 | double | | | v_by_code_8a2 | double | | | v_by_code_8b1 | double | | | v_by_code_8b2 | double | | | v_by_code_8b3 | double | | | v_by_code_9a1 | double | | | v_by_code_9a2 | double | | | v_by_code_9b | double | | | plan_enrollment_feb_per_segment_proxy | double | | | county_enrollment_feb | int | | | county_enrollment_suppressed | boolean | | | county_enrollment_lower_bound | int | | | county_enrollment_upper_bound | int | | | segments_of_plan_in_county | bigint | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_value_county WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_value_county")` first. # Vlada Plan Value, national basis (formerly BenVAT) per contract x plan x segment x county x benefit year `medicare_semantic.vw_plan_value_national` · Medicare Advantage, Part D, Medicaid · status live · 9,948,020 rows Vlada Plan Value v1, national basis (run d06cf1bf7, signed 2026-08-27; typed rebuild 2026-09-17 verified cell-for-cell against the signed CSVs): total plan value PMPM with _low/_high bounds and grade, medical value beyond Medicare, supplemental expected plan expense, Part B giveback and Part C/D premiums, the net totals, and the D-SNP split. Modeled from the PBP, Landscape, ratebook and enrollment sources; never a CMS figure and never a paid claim. Adds `snp_type` in the county view's labels (none / i_snp / d_snp / c_snp; the CMS code kept as `snp_type_cms_code`) and `is_valued`. Owner source: register w3 vlada_w3_benvat (door RAW, locked by Ben 2026-09-03). Supersedes medicare_semantic.benvat_v1_plan_county, whose 41 string columns read positionally out of CSV. **Grain.** One row per benefit_design_year x contract x plan x segment x county_ssa (measured 2026-09-17 in Athena, 9,948,020 rows = 9,948,020 distinct keys, Athena e9083b2e; CY2023-CY2026). Real types (double / int / boolean / varchar); no cast is needed or wanted. | column | type | meaning | |---|---|---| | contract | string | | | plan | string | | | segment | string | | | county_ssa | string | | | county_name | string | | | state | string | | | partial_county | string | | | eghp | string | | | benefit_design_year | int | | | organization | string | | | plan_name | string | | | plan_type | string | | | v1_total_plan_value_pmpm | double | | | v1_total_plan_value_pmpm_low | double | | | v1_total_plan_value_pmpm_high | double | | | v1_total_grade | string | | | medical_value_beyond_medicare_pmpm | double | | | supplemental_expected_plan_expense_pmpm | double | | | supplemental_expected_plan_expense_pmpm_low | double | | | supplemental_expected_plan_expense_pmpm_high | double | | | supplemental_total_is_partial_by_pmpm | double | | | supplemental_grade | string | | | medical_status | string | | | part_b_premium_giveback_pmpm | double | | | part_c_premium_pmpm | double | | | part_d_premium_pmpm | double | | | v1_total_net_of_part_c_premium_plus_giveback_pmpm | double | | | part_d_member_financial_value_pmpm | double | | | v1_total_incl_part_d_net_of_all_premiums_pmpm | double | | | v1_total_incl_part_d_net_of_all_premiums_pmpm_low | double | | | v1_total_incl_part_d_net_of_all_premiums_pmpm_high | double | | | part_b_giveback_recipient | string | | | dsnp_zero_dollar_cost_sharing | string | | | part_d_member_financial_value_at_lis_pmpm | double | | | dsnp_beneficiary_value_pmpm | double | | | dsnp_beneficiary_value_pmpm_low | double | | | dsnp_beneficiary_value_pmpm_high | double | | | dsnp_plan_liability_pmpm | double | | | dsnp_state_transfer_pmpm | double | | | dsnp_state_transfer_pmpm_low | double | | | snp_type_cms_code | string | | | snp_type | varchar(5) | | | is_valued | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_value_national WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_value_national")` first. # Vlada Plan Value (Method Lock 1.0 + PV-55, signed 2026-10-17; served build v19e) same-member change 2026 -> 2027, national / state / county x product type x plan type x parent `medicare_semantic.vw_plan_value_pairs` · Medicare Advantage, Part D, Medicaid · status live · 117,836 rows Vlada Plan Value (served build v19e, Method Lock 1.0 + PV-55), the same-member change: each 2026 member followed to their 2027 plan, counted only when the plan is valued in both years; *_2026 and *_2027 are levels on those members, *_change = 2027 - 2026. Every leg, the minimum-end and maximum-end values, the card bounds, the headline without Part D, the filed design and the D-SNP full-dual column, each with 2026 / 2027 / change. Ratios of the signed sums in plan_value_pairs_v19e at base_year 2026 (recommended fixcard3_design_on). Pinned name: medicare_semantic.vw_plan_value_pairs_v19e (served build v19e). Owner source: register w3 vlada_w3_benvat. **Grain.** One row per geography_level x state x county_ssa x product_type x plan_type x parent_organization (117,836 rows = 117,836 distinct keys, measured 2026-10-08 on vw_plan_value_pairs_v16, _v17b, _v18 (2026-10-09), _v19d (2026-10-16) and _v19e (2026-10-17)). Same keys as vw_plan_value_cells. | column | type | meaning | |---|---|---| | geography_level | varchar(8) | | | state | string | | | county_ssa | string | | | county_name | string | | | product_type | string | | | snp_type | varchar(5) | | | plan_type | string | | | parent_organization | string | | | headline_definition | varchar(9) | | | members_followed | double | | | members_valued_both_years | double | | | valued_both_years_share | double | | | plan_value_2026 | double | | | plan_value_2027 | double | | | plan_value_change | double | | | plan_value_min_end_2026 | double | | | plan_value_min_end_2027 | double | | | plan_value_min_end_change | double | | | plan_value_max_end_2026 | double | | | plan_value_max_end_2027 | double | | | plan_value_max_end_change | double | | | plan_value_card_low_2026 | double | | | plan_value_card_low_2027 | double | | | plan_value_card_low_change | double | | | plan_value_card_high_2026 | double | | | plan_value_card_high_2027 | double | | | plan_value_card_high_change | double | | | medical_cost_sharing_value_2026 | double | | | medical_cost_sharing_value_2027 | double | | | medical_cost_sharing_value_change | double | | | extras_value_2026 | double | | | extras_value_2027 | double | | | extras_value_change | double | | | part_d_value_2026 | double | | | part_d_value_2027 | double | | | part_d_value_change | double | | | part_b_buydown_value_2026 | double | | | part_b_buydown_value_2027 | double | | | part_b_buydown_value_change | double | | | member_premium_2026 | double | | | member_premium_2027 | double | | | member_premium_change | double | | | members_valued_both_years_excl_part_d | double | | | plan_value_excl_part_d_2026 | double | | | plan_value_excl_part_d_2027 | double | | | plan_value_excl_part_d_change | double | | | filed_design_members_valued_both_years | double | | | filed_design_plan_value_2026 | double | | | filed_design_plan_value_2027 | double | | | filed_design_plan_value_change | double | | | filed_design_min_end_2026 | double | | | filed_design_min_end_2027 | double | | | filed_design_min_end_change | double | | | filed_design_max_end_2026 | double | | | filed_design_max_end_2027 | double | | | filed_design_max_end_change | double | | | filed_design_card_low_2026 | double | | | filed_design_card_low_2027 | double | | | filed_design_card_low_change | double | | | filed_design_card_high_2026 | double | | | filed_design_card_high_2027 | double | | | filed_design_card_high_change | double | | | dsnp_full_dual_members_valued_both_years | double | | | dsnp_full_dual_plan_value_2026 | double | | | dsnp_full_dual_plan_value_2027 | double | | | dsnp_full_dual_plan_value_change | double | | | part_d_2027_filed_share | double | | | part_d_2027_carried_share | double | | | range_basis | varchar(23) | | | card_rule | varchar(33) | | | build | varchar(14) | | | variant | varchar(18) | | | atoms | varchar(26) | | | value_label | varchar(7) | | Tools that read it: get_plan_value Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_value_pairs WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_value_pairs")` first. # Vlada Plan Value (Method Lock 1.0 + PV-55, signed 2026-10-17; served build v19e) per plan-segment, 2026 and 2027, five legs, range ends, card bounds, D-SNP two columns `medicare_semantic.vw_plan_value_plans` · Medicare Advantage, Part D, Medicaid · status live · 8,709 rows Vlada Plan Value v16, the method Ben signed on 2026-10-08 (build plan_value_*_v16 on atoms benefit_engine_atoms_v20261007a, Edition 1.1 locked benefits; recommended variant fixcard3_design_on): value to the member, PMPM, modeled, for 2026 and 2027. Served build v19e = Method Lock 1.0 (v19d, signed by Ben 2026-10-15, final 2026-10-16) + PV-55 (the ER copay charged on every visit, CMS's convention), signed by Ben 2026-10-17 on docs/ma-value-engine/lock/v19/GATE-RECEIPT-v19e.json as the Plan Value for launch (docs/ma-value-engine/V19-2025-2027.md): the v16 method plus the v18c / v18d / v18e fixes, the SSBCI eligibility rule, U3, D3 and the extras read through one reader on benefit edition v20261015d; 2027 Part D FINAL on CMS's CY2027 formulary; CY2025 built (not in this view). The headline is all-in for every product type except D-SNP: medical cost-sharing value at the expected position in each filed range (theta) + extras (supplemental, the card valued by what the money buys: 0.645 grocery / utility / rent / SSBCI-type dollars, 0.30 OTC dollars) + Part D + Part B buydown - member premium, one column per leg. Beside it: the minimum-end and maximum-end values (the range rule), the card bounds (every card dollar at 0.30 / 0.72), the headline without Part D, and the filed design. D-SNP has two columns: the full-dual headline (extras + Part D against the Extra Help comparator, medical $0) and the filed design (for partial duals and design comparison), plus Medicaid's cost-sharing protection published beside, never in a total. Pinned name medicare_semantic.vw_plan_value_plans_v19e; previous builds v19d (ER waiver on admission refused) and v18 (interim 2027 Part D) stay queryable as vw_plan_value_plans_v19d / vw_plan_value_plans_v18. The August v1 views (vw_plan_value_national / vw_plan_value_county) stay queryable by name. Owner source: register w3 vlada_w3_benvat. **Grain.** One row per plan-segment (plan_segment_key = '--', unique; 8,709 rows over 8,080 contract-plans, measured 2026-10-16 in Athena on vw_plan_value_plans_v19d and 2026-10-17 on _v19e, as v18). Every CY2026 and CY2027 plan-segment is a row; 6,598 are valued in at least one year, 5,472 carry 2026 members in the locked atoms, 3,237 carry none (new in 2027 or memberless); unvalued years keep NULL values. contract_plan repeats across a plan's segments (327 plans file more than one segment, 289 of them with different values per segment). | column | type | meaning | |---|---|---| | contract_plan | string | | | contract_id | string | | | plan_id | string | | | product_type | string | | | snp_type | varchar(5) | | | plan_type | string | | | parent_organization | string | | | members_sept_2026 | double | | | is_valued_2026 | boolean | | | is_valued_2027 | boolean | | | headline_definition | varchar(9) | | | plan_value_2026 | double | | | plan_value_2027 | double | | | plan_value_min_end_2026 | double | | | plan_value_max_end_2026 | double | | | plan_value_min_end_2027 | double | | | plan_value_max_end_2027 | double | | | plan_value_card_low_2026 | double | | | plan_value_card_high_2026 | double | | | plan_value_card_low_2027 | double | | | plan_value_card_high_2027 | double | | | medical_cost_sharing_value_2026 | double | | | extras_value_2026 | double | | | part_d_value_2026 | double | | | part_b_buydown_value_2026 | double | | | member_premium_2026 | double | | | medical_cost_sharing_value_2027 | double | | | extras_value_2027 | double | | | part_d_value_2027 | double | | | part_b_buydown_value_2027 | double | | | member_premium_2027 | double | | | medical_cost_sharing_value_min_end_2026 | double | | | medical_cost_sharing_value_max_end_2026 | double | | | medical_cost_sharing_value_min_end_2027 | double | | | medical_cost_sharing_value_max_end_2027 | double | | | plan_value_excl_part_d_2026 | double | | | plan_value_excl_part_d_2027 | double | | | filed_design_plan_value_2026 | double | | | filed_design_plan_value_2027 | double | | | filed_design_min_end_2026 | double | | | filed_design_max_end_2026 | double | | | filed_design_min_end_2027 | double | | | filed_design_max_end_2027 | double | | | filed_design_card_low_2026 | double | | | filed_design_card_high_2026 | double | | | filed_design_card_low_2027 | double | | | filed_design_card_high_2027 | double | | | filed_design_medical_value_2026 | double | | | filed_design_extras_value_2026 | double | | | filed_design_part_d_value_2026 | double | | | filed_design_part_b_buydown_value_2026 | double | | | filed_design_member_premium_2026 | double | | | filed_design_medical_value_2027 | double | | | filed_design_extras_value_2027 | double | | | filed_design_part_d_value_2027 | double | | | filed_design_part_b_buydown_value_2027 | double | | | filed_design_member_premium_2027 | double | | | dsnp_full_dual_plan_value_2026 | double | | | dsnp_full_dual_plan_value_2027 | double | | | dsnp_part_d_value_vs_extra_help_2026 | double | | | dsnp_part_d_value_vs_extra_help_2027 | double | | | medicaid_cost_sharing_protection_2026 | double | | | medicaid_cost_sharing_protection_2027 | double | | | dsnp_zero_dollar_cost_sharing_2026 | string | | | dsnp_zero_dollar_cost_sharing_2027 | string | | | part_d_2027_carried_from_2026 | boolean | | | part_d_2027_basis | string | | | range_basis | varchar(23) | | | card_rule | varchar(33) | | | build | varchar(14) | | | variant | varchar(18) | | | atoms | varchar(26) | | | value_label | varchar(7) | | | plan_segment_key | string | | | segment_id | string | | | product_type_2027 | string | | | parent_organization_2027 | string | | | grain | varchar(12) | | | product_type_2025 | string | | | snp_type_2025 | varchar(5) | | | parent_organization_2025 | string | | | members_sept_2025 | double | | | is_valued_2025 | boolean | | | plan_value_2025 | double | | | medical_cost_sharing_value_2025 | double | | | extras_value_2025 | double | | | part_d_value_2025 | double | | | part_b_buydown_value_2025 | double | | | member_premium_2025 | double | | | plan_value_excl_part_d_2025 | double | | | plan_value_card_low_2025 | double | | | plan_value_card_high_2025 | double | | | plan_value_2025_at_2026_drug_prices | double | | | filed_design_plan_value_2025 | double | | | filed_design_medical_value_2025 | double | | | filed_design_extras_value_2025 | double | | | filed_design_part_d_value_2025 | double | | | filed_design_part_b_buydown_value_2025 | double | | | filed_design_member_premium_2025 | double | | | filed_design_card_low_2025 | double | | | filed_design_card_high_2025 | double | | | dsnp_full_dual_plan_value_2025 | double | | | dsnp_part_d_value_vs_extra_help_2025 | double | | | medicaid_cost_sharing_protection_2025 | double | | | dsnp_zero_dollar_cost_sharing_2025 | string | | | part_d_2025_basis | string | | Tools that read it: get_plan_value Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_plan_value_plans WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_plan_value_plans")` first. # Special Needs Plans by plan and month, Plan ID at three digits `medicare_semantic.vw_snp_data_v2` · Medicare Advantage, Part D, Medicaid · status live · 194,930 rows CMS's monthly SNP Comprehensive Report: every SNP plan since 2007-05 with SNP type (D-SNP, C-SNP, I-SNP), specialty diseases, enrollment and states, every row of medicare_silver.snp_data with plan_id at CMS's three-digit width (2022-01, 2022-09 and 2022-10 were stored unpadded); plan_id_legacy keeps the stored value. **Grain.** One row per (contract_id, plan_id, segment_id, report_month); CMS repeats R1548-001 in 2022-07..2022-12. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_month | date | | | contract_name_raw | string | | | organization_type | string | | | plan_name_raw | string | | | plan_type | string | | | plan_geographic_name | string | | | state_list_raw | string | | | plan_enrollment | int | | | snp_type | string | | | specialty_diseases | string | | | plan_id_legacy | string | | | plan_id_padded_by_view | boolean | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_snp_data_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_snp_data_v2")` first. # Special Needs Plans by plan and month, current CMS vintage, with D-SNP integration status, small-cell bounds and Under-11 rows `medicare_semantic.vw_snp_data_v3` · Medicare Advantage, Part D, Medicaid · status live · 195,628 rows CMS's monthly SNP Comprehensive Report at parse revision 3, the current CMS vintage of each month: every SNP plan since 2007-05 with SNP type, specialty diseases, enrollment and states (Plan ID at three digits), the D-SNP integration status (CO / HIDE / FIDE, from 2022-07), applicable integrated plan, partial-dual-only and D-SNP-only-contract flags (from 2025-01), the [0, 10] bound on a blank enrollment cell, and CMS's Under-11 aggregate rows flagged synthetic_under_11_row. get_snp_plan_details and get_enrollment read this view from 2026-10-05. **Grain.** One row per (contract_id, plan_id, segment_id, snp_type, state_list_raw, report_month) for real rows and one per (snp_type, report_month) for Under-11 rows; 195,628 rows over 233 months 2007-05..2026-09, 698 Under-11 rows, equal to medicare_silver.snp_data_v2 WHERE is_current row for row (Athena 0d8b8098, a97849fd). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_month | date | | | contract_name_raw | string | | | organization_type | string | | | plan_name_raw | string | | | plan_type | string | | | plan_geographic_name | string | | | state_list_raw | string | | | plan_enrollment | int | | | snp_type | string | | | specialty_diseases | string | | | dsnp_integration_status | string | | | applicable_integrated_plan | boolean | | | partial_dual_only | boolean | | | dsnp_only_contract | boolean | | | plan_enrollment_lower_bound | int | | | plan_enrollment_upper_bound | int | | | enrollment_suppression_reason | string | | | synthetic_under_11_row | boolean | | | 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 | | Tools that read it: get_stars_rollup Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_snp_data_v3 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_snp_data_v3")` first. # States W4 Medicare in the state: vw_state_medicare_al_v1 `medicare_semantic.vw_state_medicare_al_v1` · Medicare Advantage, Part D, Medicaid · status partial · 455,947 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): AL. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 455,947 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_al_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_al_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ar_v1 `medicare_semantic.vw_state_medicare_ar_v1` · Medicare Advantage, Part D, Medicaid · status partial · 509,894 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): AR. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 509,894 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ar_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ar_v1")` first. # States W4 Medicare in the state: vw_state_medicare_az_v1 `medicare_semantic.vw_state_medicare_az_v1` · Medicare Advantage, Part D, Medicaid · status partial · 106,297 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): AZ. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 106,297 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_az_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_az_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ca_v1 `medicare_semantic.vw_state_medicare_ca_v1` · Medicare Advantage, Part D, Medicaid · status partial · 397,361 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): CA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 397,361 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ca_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ca_v1")` first. # States W4 Medicare in the state: vw_state_medicare_co_v1 `medicare_semantic.vw_state_medicare_co_v1` · Medicare Advantage, Part D, Medicaid · status partial · 423,517 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): CO. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 423,517 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_co_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_co_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ct_v1 `medicare_semantic.vw_state_medicare_ct_v1` · Medicare Advantage, Part D, Medicaid · status partial · 59,978 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): CT. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 59,978 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ct_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ct_v1")` first. # States W4 Medicare in the state: vw_state_medicare_fl_v1 `medicare_semantic.vw_state_medicare_fl_v1` · Medicare Advantage, Part D, Medicaid · status partial · 479,334 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): FL. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 479,334 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_fl_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_fl_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ga_v1 `medicare_semantic.vw_state_medicare_ga_v1` · Medicare Advantage, Part D, Medicaid · status partial · 1,123,967 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): GA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 1,123,967 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ga_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ga_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ia_v1 `medicare_semantic.vw_state_medicare_ia_v1` · Medicare Advantage, Part D, Medicaid · status partial · 659,130 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): IA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 659,130 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ia_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ia_v1")` first. # States W4 Medicare in the state: vw_state_medicare_il_v1 `medicare_semantic.vw_state_medicare_il_v1` · Medicare Advantage, Part D, Medicaid · status partial · 708,106 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): IL. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 708,106 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_il_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_il_v1")` first. # States W4 Medicare in the state: vw_state_medicare_in_v1 `medicare_semantic.vw_state_medicare_in_v1` · Medicare Advantage, Part D, Medicaid · status partial · 635,654 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): IN. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 635,654 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_in_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_in_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ks_v1 `medicare_semantic.vw_state_medicare_ks_v1` · Medicare Advantage, Part D, Medicaid · status partial · 688,235 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): KS. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 688,235 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ks_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ks_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ky_v1 `medicare_semantic.vw_state_medicare_ky_v1` · Medicare Advantage, Part D, Medicaid · status partial · 819,154 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): KY. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 819,154 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ky_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ky_v1")` first. # States W4 Medicare in the state: vw_state_medicare_la_v1 `medicare_semantic.vw_state_medicare_la_v1` · Medicare Advantage, Part D, Medicaid · status partial · 446,306 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): LA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 446,306 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_la_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_la_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ma_v1 `medicare_semantic.vw_state_medicare_ma_v1` · Medicare Advantage, Part D, Medicaid · status partial · 101,496 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): MA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 101,496 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ma_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ma_v1")` first. # States W4 Medicare in the state: vw_state_medicare_md_v1 `medicare_semantic.vw_state_medicare_md_v1` · Medicare Advantage, Part D, Medicaid · status partial · 163,047 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): MD. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 163,047 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_md_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_md_v1")` first. # States W4 Medicare in the state: vw_state_medicare_mi_v1 `medicare_semantic.vw_state_medicare_mi_v1` · Medicare Advantage, Part D, Medicaid · status partial · 563,466 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): MI. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 563,466 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_mi_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_mi_v1")` first. # States W4 Medicare in the state: vw_state_medicare_mn_v1 `medicare_semantic.vw_state_medicare_mn_v1` · Medicare Advantage, Part D, Medicaid · status partial · 575,850 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): MN. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 575,850 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_mn_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_mn_v1")` first. # States W4 Medicare in the state: vw_state_medicare_mo_v1 `medicare_semantic.vw_state_medicare_mo_v1` · Medicare Advantage, Part D, Medicaid · status partial · 777,069 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): MO. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 777,069 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_mo_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_mo_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ms_v1 `medicare_semantic.vw_state_medicare_ms_v1` · Medicare Advantage, Part D, Medicaid · status partial · 545,656 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): MS. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 545,656 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ms_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ms_v1")` first. # States W4 Medicare in the state: vw_state_medicare_nc_v1 `medicare_semantic.vw_state_medicare_nc_v1` · Medicare Advantage, Part D, Medicaid · status partial · 703,326 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): NC. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 703,326 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_nc_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_nc_v1")` first. # States W4 Medicare in the state: vw_state_medicare_nj_v1 `medicare_semantic.vw_state_medicare_nj_v1` · Medicare Advantage, Part D, Medicaid · status partial · 149,820 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): NJ. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 149,820 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_nj_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_nj_v1")` first. # States W4 Medicare in the state: vw_state_medicare_nv_v1 `medicare_semantic.vw_state_medicare_nv_v1` · Medicare Advantage, Part D, Medicaid · status partial · 117,655 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): NV. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 117,655 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_nv_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_nv_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ny_v1 `medicare_semantic.vw_state_medicare_ny_v1` · Medicare Advantage, Part D, Medicaid · status partial · 438,270 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): NY. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 438,270 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ny_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ny_v1")` first. # States W4 Medicare in the state: vw_state_medicare_oh_v1 `medicare_semantic.vw_state_medicare_oh_v1` · Medicare Advantage, Part D, Medicaid · status partial · 628,001 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): OH. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 628,001 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_oh_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_oh_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ok_v1 `medicare_semantic.vw_state_medicare_ok_v1` · Medicare Advantage, Part D, Medicaid · status partial · 513,759 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): OK. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 513,759 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ok_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ok_v1")` first. # States W4 Medicare in the state: vw_state_medicare_or_v1 `medicare_semantic.vw_state_medicare_or_v1` · Medicare Advantage, Part D, Medicaid · status partial · 242,380 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): OR. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 242,380 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_or_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_or_v1")` first. # States W4 Medicare in the state: vw_state_medicare_pa_v1 `medicare_semantic.vw_state_medicare_pa_v1` · Medicare Advantage, Part D, Medicaid · status partial · 492,394 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): PA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 492,394 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_pa_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_pa_v1")` first. # States W4 Medicare in the state: vw_state_medicare_sc_v1 `medicare_semantic.vw_state_medicare_sc_v1` · Medicare Advantage, Part D, Medicaid · status partial · 325,937 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): SC. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 325,937 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_sc_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_sc_v1")` first. # States W4 Medicare in the state: vw_state_medicare_tn_v1 `medicare_semantic.vw_state_medicare_tn_v1` · Medicare Advantage, Part D, Medicaid · status partial · 651,283 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): TN. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 651,283 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_tn_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_tn_v1")` first. # States W4 Medicare in the state: vw_state_medicare_tx_v1 `medicare_semantic.vw_state_medicare_tx_v1` · Medicare Advantage, Part D, Medicaid · status partial · 1,782,138 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): TX. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 1,782,138 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_tx_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_tx_v1")` first. # States W4 Medicare in the state: vw_state_medicare_ut_v1 `medicare_semantic.vw_state_medicare_ut_v1` · Medicare Advantage, Part D, Medicaid · status partial · 193,226 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): UT. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 193,226 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_ut_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_ut_v1")` first. # States W4 Medicare in the state: vw_state_medicare_va_v1 `medicare_semantic.vw_state_medicare_va_v1` · Medicare Advantage, Part D, Medicaid · status partial · 928,540 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): VA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 928,540 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_va_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_va_v1")` first. # States W4 Medicare in the state: vw_state_medicare_wa_v1 `medicare_semantic.vw_state_medicare_wa_v1` · Medicare Advantage, Part D, Medicaid · status partial · 262,250 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): WA. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 262,250 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_wa_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_wa_v1")` first. # States W4 Medicare in the state: vw_state_medicare_wi_v1 `medicare_semantic.vw_state_medicare_wi_v1` · Medicare Advantage, Part D, Medicaid · status partial · 493,458 rows State product W4 (Medicare in the state) of the States lane: Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. One view per state (vw_state_medicare__v1). Filter row_kind first (e.g. plan_county_year), then measure; value is one measure per row, so never sum across measures. canonical_parent_id is dated (parent_as_of). 1 state(s): WI. **Grain.** Medicare in the state: MA enrollment, plans and parents by county and year, Original Medicare, and the plan-county rows. 493,458 rows (Athena, 2026-10-29). Period 2019 to 2027 (period_year). | column | type | meaning | |---|---|---| | row_kind | varchar(16) | | | state_code | varchar(2) | | | county_fips | string | | | county_name | string | | | period_year | bigint | | | period_month | date | | | period_grain | varchar(13) | | | measure | varchar(23) | | | value | double | | | value_lower | double | | | value_upper | double | | | contract_id | string | | | plan_id | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_as_of | date | | | parent_method_tier | string | | | parent_changed_in_year | boolean | | | integration_status | string | | | plan_type | string | | | source_table | varchar(54) | | | source_url | string | | | source_sha256 | string | | | locator | string | | | line | varchar(8) | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_medicare_wi_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_medicare_wi_v1")` first. # Publisher-native state quality measures `medicare_semantic.vw_state_quality_publisher` · Medicare Advantage, Part D, Medicaid · status live · 596,762 rows Governed standard view over AHRQ NHQDR estimates, CMS Medicaid/CHIP Child and Adult Core Set state rates, Medicaid Health Home program quality cells, and CDC NHSN state HAI progress ratios, preserving raw values, sentinels, methodology, setting, ratio type, physical publisher-observation identity, and exact atomic lineage. **Grain.** One row per publisher, state, reporting year, program/population/methodology, and measure observation. | column | type | meaning | |---|---|---| | source_id | varchar(32) | | | source_table | varchar(49) | | | state_code | string | | | state_name_raw | string | | | reporting_year | int | | | program | string | | | measure_id | string | | | measure_name | string | | | population | string | | | methodology | string | | | rate_definition | string | | | measure_value | double | | | measure_value_raw | string | | | measure_value_status | string | | | facility_setting | string | | | ratio_type | string | | | benchmark_used | boolean | | | observed_period | date | | | asserted_at | date | | | source_url | string | | | sha256_content_hash | string | | | source_observation_key | string | | | is_publisher_native_state_measure | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_quality_publisher WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_quality_publisher")` first. # CMS provider and clinician state quality distributions `medicare_semantic.vw_state_quality_rollup` · Medicare Advantage, Part D, Medicaid · status live · 259,838 rows Explicitly Vlada-derived unweighted state distributions across 12 certified CMS quality families covering hospitals, QPP/MIPS clinicians or groups, nursing homes, home health, hospice, dialysis facilities, and ESRD QIP. **Grain.** One row per source, provider-location state, reporting-period type, reporting period, and measure. | column | type | meaning | |---|---|---| | source_id | varchar(32) | | | source_table | varchar(45) | | | state_code | varchar(2) | | | state_name | varchar(24) | | | geography_basis | varchar(17) | | | entity_type | varchar(18) | | | reporting_period_type | varchar(20) | | | reporting_period | string | | | measure_id | string | | | measure_name | string | | | measure_unit | varchar(21) | | | aggregation_method | varchar(52) | | | mean_value | double | | | median_value | double | | | minimum_value | double | | | maximum_value | double | | | source_record_count | bigint | | | distinct_entity_count | bigint | | | observed_record_count | bigint | | | missing_record_count | bigint | | | measurement_period_start | string | | | measurement_period_end | string | | | source_asserted_at | date | | | is_publisher_native_state_measure | boolean | | | weighting_and_missingness_rule | varchar(113) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_state_quality_rollup WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_state_quality_rollup")` first. # AHRQ CCSR category hierarchy `medicare_silver.ahrq_ccsr_category` · Medicare Advantage, Part D, Medicaid · status live · 13,886 rows Public AHRQ diagnosis and procedure CCSR category labels and hierarchy relationships, retained by source release and clinical domain with row-level content lineage. **Grain.** One row per observed release asset, CCSR category, hierarchy level, and clinical domain. | column | type | meaning | |---|---|---| | release_version | string | | | schema_era | string | | | code_system | string | | | category_code | string | | | category_description | string | | | hierarchy_level | int | | | parent_category_code | string | | | clinical_domain | string | | | source_asset_id | string | | | source_member | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ahrq_ccsr_category WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ahrq_ccsr_category")` first. # AHRQ CCSR diagnosis and procedure mappings `medicare_silver.ahrq_ccsr_mapping` · Medicare Advantage, Part D, Medicaid · status live · 5,851,110 rows Public AHRQ diagnosis and procedure CCS/CCSR history at native multi-category relationship grain, including inpatient/outpatient defaults, source descriptions, category ranks, clinical domains, and row-level lineage. **Grain.** One row per observed release, source code, CCSR category relationship, and category rank. | column | type | meaning | |---|---|---| | release_version | string | | | schema_era | string | | | code_system | string | | | code | string | | | code_description | string | | | category_code | string | | | category_description | string | | | relationship_type | string | | | category_rank | int | | | clinical_domain | string | | | source_asset_id | string | | | source_member | string | | | source_row_number | bigint | | | raw_row_json | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ahrq_ccsr_mapping WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ahrq_ccsr_mapping")` first. # AHRQ Quality Indicator national benchmark tables `medicare_silver.ahrq_qi_benchmark` · Medicare Advantage, Part D, Medicaid · status live · 7,031 rows Public IQI, PDI, PQI, and PSI national benchmark and stratified reference tables across modern and legacy layouts, retaining raw metrics, nullable numeric values, suppression/range state, page/table identity, and content lineage. **Grain.** One row per observed release, source PDF page/table, indicator, group, and row ordinal. | column | type | meaning | |---|---|---| | release_version | string | | | schema_era | string | | | module | string | | | table_number | int | | | benchmark_scope | string | | | indicator_id | string | | | indicator_label | string | | | group_label | string | | | numerator_raw | string | | | denominator_raw | string | | | observed_rate_raw | string | | | numerator | double | | | denominator | double | | | observed_rate | double | | | rate_multiplier | int | | | is_suppressed | boolean | | | source_asset_id | string | | | source_page | int | | | row_ordinal | bigint | | | raw_row_text | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ahrq_qi_benchmark WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ahrq_qi_benchmark")` first. # AHRQ Quality Indicator public SAS value-set rules `medicare_silver.ahrq_qi_value_set` · Medicare Advantage, Part D, Medicaid · status live · 10,020,218 rows Normalized public IQI, PDI, PQI, and PSI SAS VALUE rules across the recoverable publisher history, preserving clinical system, code or range, output, comments, OTHER branches, compact row assignment, and exact Bronze/member/line lineage. **Grain.** One row per observed release, SAS source member, format definition line, and rule ordinal. | column | type | meaning | |---|---|---| | release_version | string | | | schema_era | string | | | module | string | | | code_system | string | | | format_name | string | | | format_description | string | | | rule_ordinal | bigint | | | code_start | string | | | code_end | string | | | output_value | string | | | rule_description | string | | | is_other_rule | boolean | | | source_asset_id | string | | | source_member | string | | | source_line_number | bigint | | | raw_rule_text | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ahrq_qi_value_set WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ahrq_qi_value_set")` first. # AHRQ clinical-reference governed source-asset ledger `medicare_silver.ahrq_source_asset` · Medicare Advantage, Part D, Medicaid · status live · 176 rows Content and license ledger for the accepted AHRQ CCSR, Quality Indicator SAS, benchmark PDF, and immutable qi-sas repository corpus, preserving exact URLs, files, bytes, hashes, release identity, and current-release status. **Grain.** One row per governed corpus snapshot and publisher asset. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | family | string | | | module | string | | | release_version | string | | | schema_era | string | | | asset_status | string | | | license_class | string | | | asset_url | string | | | final_url | string | | | file_name | string | | | publication_date | date | | | byte_count | bigint | | | asset_sha256 | string | | | bundle_member | string | | | source_limit | string | | | is_current_release | boolean | | | 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.ahrq_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ahrq_source_asset")` first. # CMS Basic Stand Alone sample claims: carrier (physician) line items `medicare_silver.cms_bsa_carrier_line_item` · Medicare Advantage, Part D, Medicaid · status live · 70,536,735 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, carrier (physician) line items: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_carrier_line_item WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_carrier_line_item")` first. # CMS Basic Stand Alone sample claims: chronic conditions `medicare_silver.cms_bsa_chronic_condition` · Medicare Advantage, Part D, Medicaid · status live · 43,367 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, chronic conditions: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_chronic_condition WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_chronic_condition")` first. # CMS Basic Stand Alone sample claims: DME line items `medicare_silver.cms_bsa_dme_line_item` · Medicare Advantage, Part D, Medicaid · status live · 5,246,166 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, DME line items: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_dme_line_item WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_dme_line_item")` first. # CMS Basic Stand Alone sample claims: the field dictionary `medicare_silver.cms_bsa_field` · Medicare Advantage, Part D, Medicaid · status live The CMS Basic Stand Alone (BSA) Medicare claims public use files, the field dictionary: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | field_ordinal | int | | | field_name_raw | string | | | field_name_normalized | string | | | publisher_storage | string | | | schema_era | string | | | joinability_guard | string | | | quality_flags | 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 medicare_silver.cms_bsa_field WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_field")` first. # CMS Basic Stand Alone sample claims: home health beneficiary summaries `medicare_silver.cms_bsa_hha_beneficiary` · Medicare Advantage, Part D, Medicaid · status live · 135,368 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, home health beneficiary summaries: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_hha_beneficiary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_hha_beneficiary")` first. # CMS Basic Stand Alone sample claims: hospice beneficiary summaries `medicare_silver.cms_bsa_hospice_beneficiary` · Medicare Advantage, Part D, Medicaid · status live · 55,473 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, hospice beneficiary summaries: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_hospice_beneficiary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_hospice_beneficiary")` first. # CMS Basic Stand Alone sample claims: inpatient claims `medicare_silver.cms_bsa_inpatient_claim` · Medicare Advantage, Part D, Medicaid · status live · 588,415 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, inpatient claims: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_inpatient_claim WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_inpatient_claim")` first. # CMS Basic Stand Alone sample claims: institutional provider beneficiary summaries `medicare_silver.cms_bsa_institutional_provider_beneficiary_summary` · Medicare Advantage, Part D, Medicaid · status live The CMS Basic Stand Alone (BSA) Medicare claims public use files, institutional provider beneficiary summaries: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_institutional_provider_beneficiary_summary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_institutional_provider_beneficiary_summary")` first. # CMS Basic Stand Alone sample claims: outpatient procedures `medicare_silver.cms_bsa_outpatient_procedure` · Medicare Advantage, Part D, Medicaid · status live · 33,086,687 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, outpatient procedures: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_outpatient_procedure WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_outpatient_procedure")` first. # CMS Basic Stand Alone sample claims: physician/supplier beneficiary summaries `medicare_silver.cms_bsa_physician_supplier_beneficiary_summary` · Medicare Advantage, Part D, Medicaid · status live The CMS Basic Stand Alone (BSA) Medicare claims public use files, physician/supplier beneficiary summaries: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_physician_supplier_beneficiary_summary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_physician_supplier_beneficiary_summary")` first. # CMS Basic Stand Alone sample claims: Part D prescription drug events `medicare_silver.cms_bsa_prescription_drug_event` · Medicare Advantage, Part D, Medicaid · status live · 50,325,988 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, Part D prescription drug events: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_prescription_drug_event WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_prescription_drug_event")` first. # CMS Basic Stand Alone sample claims: Part D beneficiary drug profiles `medicare_silver.cms_bsa_prescription_drug_profile` · Medicare Advantage, Part D, Medicaid · status live The CMS Basic Stand Alone (BSA) Medicare claims public use files, Part D beneficiary drug profiles: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_prescription_drug_profile WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_prescription_drug_profile")` first. # CMS Basic Stand Alone sample claims: SNF beneficiary summaries `medicare_silver.cms_bsa_snf_beneficiary` · Medicare Advantage, Part D, Medicaid · status live · 64,886 rows The CMS Basic Stand Alone (BSA) Medicare claims public use files, SNF beneficiary summaries: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | data_year | int | | | family | string | | | native_grain | string | | | sample_design | string | | | source_asset_id | string | | | source_member | string | | | source_part | int | | | source_row_number | bigint | | | column_count | int | | | row_values_json | string | | | row_sha256 | string | | | joinability_guard | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_snf_beneficiary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_snf_beneficiary")` first. # CMS Basic Stand Alone sample claims: the source-asset ledger `medicare_silver.cms_bsa_source_asset` · Medicare Advantage, Part D, Medicaid · status live The CMS Basic Stand Alone (BSA) Medicare claims public use files, the source-asset ledger: a 5% beneficiary sample, de-identified, 2008 to 2010. Claim-level and real, and old; the only claim-level Medicare data that is public. **Grain.** One row per source row of the CMS BSA public use file (row_values_json carries the published columns; native_grain names the file's own grain). | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | asset_role | string | | | family | string | | | data_year | int | | | source_part | int | | | schema_era | string | | | publisher_page_url | string | | | asset_url | string | | | final_url | string | | | file_name | string | | | byte_count | bigint | | | asset_sha256 | string | | | bundle_member | string | | | native_grain | string | | | sample_design | string | | | joinability_guard | string | | | payload_acquired | boolean | | | existing_vlada_overlap_status | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_bsa_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_bsa_source_asset")` first. # CMS MMCO Integration Status for Contract Year D-SNPs, every edition CY2021-2027 `medicare_silver.cms_dsnp_integration_status_list_v1` · Medicare Advantage, Part D, Medicaid · status live · 6,783 rows CMS's per-plan D-SNP integration list from its review of every State Medicaid Agency Contract: FIDE / HIDE / CO / CO-P, AIP, integrated-care SEP (CY2025+), Medicaid MCO organization (CY2025), dual-eligible categories the plan may enroll, age and enrollment limits (CY2027). **Grain.** One row per edition (sha256_content_hash) x contract x plan x state; is_latest_edition marks the edition used per contract year. | column | type | meaning | |---|---|---| | contract_year | int | | | edition | string | | | is_latest_edition | boolean | | | contract_id | string | | | plan_id | string | | | state_code | string | | | legal_entity_name | string | | | integration_status | string | | | integration_status_raw | string | | | applicable_integrated_plan | boolean | | | aip_raw | string | | | integrated_care_sep_eligible | boolean | | | dual_categories_raw | string | | | dual_categories_other_raw | string | | | enrolls_other_fbde | boolean | | | enrolls_qmb_only | boolean | | | enrolls_qmb_plus | boolean | | | enrolls_slmb_only | boolean | | | enrolls_slmb_plus | boolean | | | enrolls_qdwi | boolean | | | enrolls_qi | boolean | | | enrolls_full_benefit_duals | boolean | | | enrolls_partial_duals | boolean | | | age_eligibility_raw | string | | | enrollment_limitations_raw | string | | | medicaid_mco_organization_raw | string | | | footnote_marker | string | | | publisher_row_number | int | | | publisher_row_multiplicity | int | | | source_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | parse_revision | int | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.cms_dsnp_integration_status_list_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_dsnp_integration_status_list_v1")` first. # CMS D-SNP look-alike lists CY2022-2026 (plan-level % dual eligible) `medicare_silver.cms_dsnp_lookalike_list_v1` · Medicare Advantage, Part D, Medicaid · status live · 108 rows Non-SNP MA plans whose January enrollment is at least the threshold share dual eligible (80% CY2022-2024, 70% CY2025, 60% CY2026): total enrollment and % dual, the only public plan-level dual share. **Grain.** One row per contract_year x contract x plan x segment x state. | column | type | meaning | |---|---|---| | contract_year | int | | | edition | string | | | threshold_share | double | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | parent_organization_raw | string | | | legal_entity_name | string | | | state_code | string | | | total_enrollment_january | int | | | dual_share_january | double | | | dual_share_raw | string | | | publisher_row_number | int | | | source_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | parse_revision | int | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.cms_dsnp_lookalike_list_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_dsnp_lookalike_list_v1")` first. # CMS CSSC acceptable physician specialty history `medicare_silver.cssc_acceptable_specialty` · Medicare Advantage, Part D, Medicaid · status live · 794 rows Complete accepted CSSC acceptable-physician-specialty history for payment years 2016 through 2025, retaining service year, code, description, skipped-number marker, document page, physical row, raw row, release identity, and exact Bronze lineage. **Grain.** One row per payment-year document and physical specialty-code row. | column | type | meaning | |---|---|---| | payment_year | int | | | service_year | int | | | specialty_code | string | | | specialty_description | string | | | skipped_number_marker | boolean | | | source_asset_id | string | | | source_member | string | | | source_page | int | | | source_row_number | bigint | | | raw_row_json | string | | | quality_flags | string | | | is_current_release | boolean | | | is_analytics_eligible | boolean | | | 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.cssc_acceptable_specialty WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cssc_acceptable_specialty")` first. # CMS CSSC public EDPS, RAPS, and FERAS operational edits `medicare_silver.cssc_operational_edit` · Medicare Advantage, Part D, Medicaid · status live · 679 rows Public CMS-authored CSSC operational edit rows for EDPS institutional, professional, DME, and dental submissions plus RAPS and FERAS, retaining system, data type, edit code, disposition, effective history, resolution text, physical source row, and raw JSON. **Grain.** One row per public lookup asset and physical JSON source row. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | system | string | | | data_type | string | | | edit_code | string | | | category | string | | | disposition | string | | | applies_to | string | | | description | string | | | resolution_or_suggestion | string | | | effective_date | date | | | termination_date | date | | | effective_date_raw | string | | | termination_date_raw | string | | | source_asset_id | string | | | source_member | string | | | source_row_number | bigint | | | raw_row_json | string | | | quality_flags | string | | | is_current_release | boolean | | | is_analytics_eligible | boolean | | | 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.cssc_operational_edit WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cssc_operational_edit")` first. # CMS CSSC resource attachment-link index `medicare_silver.cssc_operations_attachment` · Medicare Advantage, Part D, Medicaid · status live · 1,002 rows Lossless 1,002-row link index extracted from the 911 accepted CSSC article bodies, retaining raw and resolved URLs, link text, host, file metadata, acquisition disposition, source-limit status, and article-member lineage. **Grain.** One row per CSSC resource and HTML anchor ordinal. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | publisher_context | string | | | collection_id | string | | | did | string | | | attachment_ordinal | bigint | | | link_text | string | | | href_raw | string | | | resolved_url | string | | | host | string | | | file_name | string | | | file_extension | string | | | payload_acquired | boolean | | | acquisition_disposition | string | | | acquired_source_asset_id | string | | | source_limit | string | | | source_body_member | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cssc_operations_attachment WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cssc_operations_attachment")` first. # CMS CSSC Part C article, listserv, job-aid, and video history `medicare_silver.cssc_operations_resource` · Medicare Advantage, Part D, Medicaid · status live · 911 rows Lossless metadata and body-fingerprint index for 911 distinct CSSC resources across eight bounded current/archive collections from 2003 through 2026, retaining listing dates, article dates, body presence, attachment counts, collection identity, and exact Bronze lineage. **Grain.** One row per publisher context and CSSC document identifier (DID). | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | publisher_context | string | | | collection_id | string | | | did | string | | | index_path | string | | | title | string | | | listing_sort_date | date | | | article_publish_date | date | | | article_sort_date | date | | | article_last_updated_date | date | | | article_url | string | | | article_body_sha256 | string | | | body_present | boolean | | | attachment_count | bigint | | | source_listing_member | string | | | source_body_member | string | | | quality_flags | string | | | is_current_collection | boolean | | | is_analytics_eligible | boolean | | | 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.cssc_operations_resource WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cssc_operations_resource")` first. # CMS CSSC Part C operations governed source-asset ledger `medicare_silver.cssc_operations_source_asset` · Medicare Advantage, Part D, Medicaid · status live · 38 rows Content, rights, and overlap ledger for the accepted public CSSC Part C operations corpus: 28 acquired public CSSC assets, five metadata-only external-code or implementation-guide limits, three existing-source pointers, and two separately deferred operational worlds. **Grain.** One row per accepted release asset, governed source limit, deferred atomic lane, or existing Vlada overlap. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | family | string | | | release_date | date | | | schema_era | string | | | asset_status | string | | | license_class | string | | | maintained_by | string | | | asset_url | string | | | file_format | string | | | byte_count | bigint | | | asset_sha256 | string | | | bundle_member | string | | | payload_acquired | boolean | | | expected_rows | bigint | | | existing_vlada_overlap_source_id | string | | | source_limit | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cssc_operations_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cssc_operations_source_asset")` first. # CMS CSSC Supplemental Benefit Service Category submission codes `medicare_silver.cssc_sbsc_code` · Medicare Advantage, Part D, Medicaid · status live · 403 rows Public CSSC SBSC encounter/reporting submission taxonomy for the initial and August 2024 revisions plus contract years 2025 and 2026, retaining revision identity, code, description, source notes, physical row, raw content, current-release state, and a mandatory PBP semantic-safety label. **Grain.** One row per contract-year revision and physical SBSC code row. | column | type | meaning | |---|---|---| | contract_year | int | | | release_date | date | | | sbsc_code | string | | | sbsc_description | string | | | source_note_marker | boolean | | | source_note | string | | | pbp_semantic_status | string | | | source_asset_id | string | | | source_member | string | | | source_page | int | | | source_row_number | bigint | | | raw_row_json | string | | | quality_flags | string | | | is_current_release | boolean | | | is_analytics_eligible | boolean | | | 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.cssc_sbsc_code WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cssc_sbsc_code")` first. # CMS Anesthesia Base Units (00100-01999) `medicare_silver.dim_anesthesia_base_unit` · Medicare Advantage, Part D, Medicaid · status live · 1,933 rows The standalone CMS Anesthesia Base Units schedule (Anesthesiologists Center ZIPs). Base units are the fixed leg of Medicare anesthesia payment: payment = (base_units + time_units) x anesthesia_conversion_factor. SEPARATE schedule - never in the PFS PPRRVU RVU file (those anesthesia rows carry status indicator J, RVU=0). A code absent from this table is 'not anesthesia-priced', not $0. Qualifying-circumstance codes (99100/99116/99135/99140) are NOT in the CMS file. calendar_year is the CMS PUBLICATION year; CMS republishes only in change years and states values are 'unchanged for CY 20xx' otherwise, so each vintage GOVERNS every service year until the next published file (encoded in effective_period_start/end): CY2014 governs 2014-2017, CY2018 governs 2018-2021, CY2022 governs 2022 onward. **Grain.** One row per (hcpcs_code, calendar_year) - the integer anesthesia base-unit count for each anesthesia CPT code, per CMS publication year. | column | type | meaning | |---|---|---| | hcpcs_code | string | | | calendar_year | int | | | base_unit | int | | | 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.dim_anesthesia_base_unit WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_anesthesia_base_unit")` first. # HCC risk-model coefficients (reference) `medicare_silver.dim_hcc_coefficients` · Medicare Advantage, Part D, Medicaid · status live · 8,805 rows CMS risk-adjustment COEFFICIENT tables (Part C HCC + Part D RxHCC). Each row is one numeric risk weight a CMS scoring engine multiplies against a member's 0/1 flag for a demographic cell or condition category, for a given payment year, model version, and population segment. A reference lookup, not contract data. **Grain.** One row per (rate_year, model_version, variable, segment) = one risk-model coefficient. Verified unique: COUNT(DISTINCT (rate_year, model_version, variable, segment)) = 8805 = the full row_count, and a GROUP BY ... HAVING COUNT(*)>1 dup-check returns 0. All four columns are required — dropping any one breaks uniqueness (rate_year+model_version+variable = 2822 distinct; variable+segment = 4888; model_version+variable+segment = 5827; rate_year+variable+segment = 7359). **How to use it.** Score a Medicare Advantage member or look up a single weight. Example: SELECT variable, label, coefficient_value FROM medicare_silver.dim_hcc_coefficients WHERE rate_year=2027 AND model_version='V28' AND segment='COMMUNITY_NA' AND variable IN ('F70_74','HCC1') — returns the age/sex demographic weight plus the HIV/AIDS condition weight for a 70-74 community, non-dual, aged-female member under the 2027 V28 model; summing the applicable variable weights for a member yields their raw risk score (which drives the capitated payment). Always pin all of rate_year + model_version + segment. **Traps.** - No is_current / effective-date column. The snapshot key is rate_year, which maps 1:1:1 to bronze_publication_id and source_url; each grain key appears under exactly one publication (0 keys span both years), so there is no in-table version churn to dedup — but if more years/republications land later, you must filter by rate_year (and watch that the 2026 source is the MIDYEAR-FINAL ZIP while 2027 is the INITIAL ZIP, i.e. not the same release stage). - model_version is load-bearing for the VALUE, not just the grain. The same variable (e.g. HCC1='HIV/AIDS') exists in multiple models with different coefficients (V22 INSTITUTIONAL=1.747 vs V28=1.322). Never read a coefficient by variable+segment alone — always pin model_version. Also, each model has its OWN disjoint segment vocabulary (V22/V28: COMMUNITY_*/INSTITUTIONAL/NE_*; V21/V24: DIAL/GRAFT_*; RxHCC_V08: CE_*/NE_NE_*), so a segment value implies its model. - NULL label is meaningful and label is not authoritative. 864 NULL labels are concentrated entirely in V22 and V28 (432 each) on the new-enrollee Medicaid-interaction demographic terms (MCAID_*/NMCAID_NE*). Separately, the same variable carries cosmetically different label TEXT across models ('Female 0-34' vs 'Female, Age 0 - 34'), so join/dedup on variable, never on label. - coefficient_value zeros and negatives are real, not missing data (0 NULLs). 320 exact 0.0 values mean the condition is structurally not scored in that segment (e.g. renal HCCs in GRAFT/DIAL), and 6 negatives are legitimate Originally-ESRD adjusters in V21/V24 DIAL. The large tail up to 59.861 (RxHCC high-cost-drug categories like Cystic Fibrosis, Hemophilia) is genuine — do not clip it as outliers. - Coefficients are recalibrated year over year, so this is NOT a static dimension despite the dim_ name. Of the (model_version, variable, segment) combos, 2978 appear in BOTH 2026 and 2027 (many with changed values, e.g. RXHCC16 CE_LTI 4.514 -> 5.84) and 2849 appear in only one year. Always carry rate_year through any join to a member/score table. - asserted_at and parser_artifact_hash are pipeline lineage, not CMS dates. Both years were loaded on 2026-05-18 by the same parser build ('e10d366596d1c801'); asserted_at is the silver write time, so use rate_year as the effective/payment period. | column | type | meaning | |---|---|---| | rate_year | int | Medicare Advantage / Part D PAYMENT YEAR the coefficient applies to (int). Only 2 values present: 2026 and 2027. It is also the snapshot/version key: each rate_year maps 1:1:1 to exactly one bronze_publication_id and one source_url ZIP (2026 -> 2026-midyear-final; 2027 -> 2027-initial). Part of the grain. | | model_version | string | CMS risk-adjustment model that owns the coefficient (string). 5 values: V21, V22, V24, V28 (Part C / medical HCC models) and RxHCC_V08 (Part D / prescription-drug RxHCC model). Essential to the grain and to value: the SAME disease variable carries a DIFFERENT coefficient per model (e.g. HCC1 INSTITUTIONAL 2027 = 1.747 under V22 vs 1.322 under V28). Each model also has its own disjoint segment set (see segment). | | variable | string | The model term / risk factor name (string), 936 distinct. Four families by prefix: disease condition categories HCC* (184 distinct, e.g. HCC1='HIV/AIDS') and RXHCC* (82 distinct, e.g. RXHCC98='Hereditary Angioedema'); demographic age-sex cells M*/F* (e.g. F0_34='Female 0-34', D* disabled, ORIGDIS); and interaction / new-enrollee terms (MCAID_*, NMCAID_*, ESRD_*, NESRD_*, NONAGED_HCC*, etc). This is the row a CMS scoring engine multiplies by a 0/1 flag. Part of the grain but NOT unique on its own (same variable repeats across models, segments, years). | | segment | string | The model SEGMENT / risk-score component the coefficient lives in (string), 38 distinct values, partitioned by model_version (not shared across models). Encodes enrollee population + entitlement: e.g. V22/V28 use COMMUNITY_{FBA,FBD,NA,ND,PBA,PBD} (Full/Partial/Non Medicaid-dual, Aged/Disabled), INSTITUTIONAL, and NE_* new-enrollee segments; V21/V24 use DIAL (dialysis), GRAFT_* (post-transplant), NE_DIAL/NE_GRAFT (ESRD models); RxHCC_V08 uses CE_* (continuing-enrollee Low/NonLow x Aged/NonAged x LTI) and NE_NE_* new-enrollee. REQUIRED to reach the grain (ry+mv+variable alone = 2822, not unique). | | coefficient_value | float | The numeric risk weight (float, 0 nulls). Range -0.078 to 59.861, mean ~0.97. 6 negative values (all Originally_ESRD_Female/Male DIAL adjusters in V21/V24). 320 exact zeros = a disease that is structurally not scored in that segment (e.g. renal HCCs zeroed in GRAFT/DIAL segments). The huge tail (e.g. RXHCC98=59.861, RXHCC225 Cystic Fibrosis ~56, HCC111 Hemophilia ~32) are real Part D high-cost-drug weights, not errors. Coefficients are recalibrated year over year for many terms. | | label | string | Human-readable description of the variable (string), e.g. 'HIV/AIDS', 'Female 0-34'. NULLABLE and meaning-bearing: 864 NULLs, all in V22 (432) and V28 (432), specifically the new-enrollee Medicaid-interaction demographic cells (MCAID_NORIGDIS_NE*, NMCAID_*). Also NOT authoritative/joinable: the same variable carries cosmetically different label text across model versions ('Female 0-34' vs 'Female, Age 0 - 34'), so dedup on variable, not on label. | | source_url | string | Provenance: the exact CMS model-software ZIP the coefficients were parsed from (string). 2 values, 1:1 with rate_year: 2026 -> https://www.cms.gov/files/zip/2026-midyear-final-model-software-python.zip ; 2027 -> https://www.cms.gov/files/zip/2027-initial-model-software-python.zip . Note 2026 is the MIDYEAR FINAL release while 2027 is the INITIAL release. | | sha256_content_hash | string | SHA-256 content hash of the ingested source artifact (string) — provenance/dedup fingerprint of the bronze file, identical for all rows from the same publication. | | bronze_publication_id | string | Identifier of the bronze ingestion publication this row came from (string). Only 2 values: hcc_all_2026_66d75bf7, hcc_all_2027_f3b3955d. Maps 1:1 to rate_year/source_url. Serves as the de-facto snapshot key (each grain key appears under exactly ONE publication — 0 keys span both). | | asserted_at | timestamp | Pipeline load/assertion timestamp in UTC (timestamp) — when the silver row was written, NOT a CMS publication date. Both publications loaded 2026-05-18 (2026 batch ~18:54, 2027 batch ~18:58); only ~13-14 distinct micro-timestamps per publication (batched write). Use rate_year, not this, for the effective period. | | parser_artifact_hash | string | Hash identifying the parser code/artifact version that produced these rows (string). Single value 'e10d366596d1c801' across all 8805 rows — both years parsed by the same parser build. Lineage/reproducibility field. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_hcc_coefficients WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_hcc_coefficients")` first. # HCC risk-model coefficients, every CMS posting and package 2016-2027 (v2) `medicare_silver.dim_hcc_coefficients_v2` · Medicare Advantage, Part D, Medicaid · status live · 75,521 rows Every CMS-HCC, ESRD and RxHCC coefficient (relative factor) CMS published in its risk-adjustment model software for payment years 2016-2027, decoded from the SAS PROC CPORT coefficient libraries inside each posting (the only machine-readable form before 2026). One row per package x segment x variable: model_family (CMS-HCC / ESRD / RxHCC), model_version (the coefficient name: V21, V22, V23, V24, V28, RxHCC_V05, RxHCC_V08), xw_model_version (the ICD-10 crosswalk label: ESRD_V21 / ESRD_V24 for ESRD and the 2016-2019 CMS-HCC V21 PACE model), software_package (e.g. V2826.115.T1), segment (CMS's 2026 Python CSV headers for every year), variable (CMS's SAS name), hcc_number, coefficient_value (double), label, plus the library, ZIP and content SHA-256 for each row. **Grain.** One row per (rate_year, software_edition, software_package, segment, variable): 75,521 rows, 16 CMS model-software postings (initial, midyear_final, final) for payment years 2016-2027, 92 package postings, 29 distinct coefficient libraries (Athena efce68d2-a999-40ab-a009-ee0f00fde64c; 0 duplicate keys, 0 null lineage, Athena 56fcd67c). | column | type | meaning | |---|---|---| | rate_year | int | | | software_edition | string | | | model_family | string | | | model_version | string | | | xw_model_version | string | | | software_package | string | | | package_variant | string | | | package_description | string | | | segment | string | | | segment_code | string | | | variable | string | | | hcc_number | int | | | coefficient_value | double | | | label | string | | | sas_variable | string | | | source_member | string | | | coefficient_file_sha256 | string | | | source_zip_sha256 | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_hcc_coefficients_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_hcc_coefficients_v2")` first. # ICD-10 to HCC crosswalk (reference) `medicare_silver.dim_icd10_hcc_crosswalk` · Medicare Advantage, Part D, Medicaid · status live · 171,676 rows CMS reference crosswalk mapping each ICD-10-CM diagnosis to its Hierarchical Condition Category under a specific risk-model version and payment year. The diagnosis-to-risk-bucket dictionary behind MA / Part D risk scoring. **Grain.** One row per (icd_code, model_version, rate_year) — i.e. one diagnosis code's HCC assignment under one risk model in one payment year. Verified unique: COUNT(DISTINCT (icd_code, model_version, rate_year)) = 171,676 = total row_count. Each such triple maps to exactly ONE hcc_category (0 triples have >1 HCC), so hcc_category is the looked-up VALUE, not part of the key. **How to use it.** To risk-adjust a 2026 MA Part C population, map each patient diagnosis to its current payment HCC: SELECT icd_code, hcc_category, icd_description FROM medicare_silver.dim_icd10_hcc_crosswalk WHERE model_version='V28' AND rate_year=2026 AND icd_code IN (...patient ICDs...). This returns the V28 HCC bucket per diagnosis, which then joins to the HCC coefficient/RAF tables to compute the risk score (use RxHCC_V08 instead for the Part D drug component). **Traps.** - model_version is part of the grain and CHANGES the answer: the same ICD maps to different HCCs across models. Example 2026, ICD A0104 -> HCC39 under V21/V22/V24 but HCC92 under V28. NEVER look up an ICD without pinning model_version (use V28 for current MA Part C payment) AND rate_year. - hcc_category is ALWAYS prefixed 'HCC' even for the Part D drug model RxHCC_V08 — the prefix does NOT distinguish payment-HCC from Rx-HCC. The two taxonomies use entirely different numbering (e.g. ICD A072 -> HCC6 under V28 but HCC5 under RxHCC_V08). The taxonomy is defined solely by model_version, not by the hcc_category string. - rate_year 2027 is provisional: its 171k-subset is byte-identical to 2026 (0 mapping mismatches, same sha256_content_hash, source_url is '2027-initial'). Treat 2027 as a placeholder reuse of 2026 midyear-final mappings, not a confirmed independent CMS release; 2026 is the latest real/final year. - Several columns look like keys but are NOT: hcc_category is the looked-up value (1 per grain triple, not a key); bronze_publication_id is strictly 1:1 with rate_year (redundant); icd_code alone is NOT unique (11,395 codes -> 171,676 rows). The only verified minimal key is (icd_code, model_version, rate_year). - No is_current / snapshot / SCD column exists. The table is simply partitioned by rate_year (identity), each year = one CMS publication. There is no per-row versioning to dedup; asserted_at and parser_artifact_hash are provenance only (asserted_at = a ~6-min load on 2026-05-18, NOT the CMS publish date). - icd_description is not a reliable dictionary: it can differ across years for the same code (CMS wording edits) and is duplicated per (model_version) row, so SELECT DISTINCT icd_description can return >1 string for one code. icd_code is dot-free (A0103) — strip dots before joining to a dotted ICD source. | column | type | meaning | |---|---|---| | rate_year | int | CMS payment/benefit year the mapping applies to (int). Partition column (identity partition). 4 values: 2024, 2025, 2026, 2027. Part of the grain key. Each year = one CMS publication load. | | model_version | string | CMS risk-adjustment model that defines the HCC taxonomy. 5 values: V21, V22, V24, V28 (CMS-HCC payment models for MA Part C — V28 is the current/newest payment model, V21/V22/V24 are legacy/blend models still used in transition) and RxHCC_V08 (the Part D prescription-drug RxHCC model, a DIFFERENT taxonomy). Part of the grain key — the SAME ICD maps to DIFFERENT HCCs under different model_versions, so you must always filter this. | | icd_code | string | ICD-10-CM diagnosis code in CMS dot-free format (e.g. 'A0103', not 'A01.03'). Lengths 3-7, no decimal points, no nulls. 11,395 distinct codes total. Part of the grain key. | | hcc_category | string | The Hierarchical Condition Category the diagnosis maps to, e.g. 'HCC92'. This is the LOOKED-UP VALUE, not a key. ALWAYS prefixed 'HCC' even for the RxHCC model, so the prefix does NOT tell you which taxonomy — the numbering only makes sense within a given model_version (numeric part ranges 1-463). 218 distinct values across all models; e.g. for 2026: V28 spans 115 HCCs, RxHCC_V08 84. | | icd_description | string | Plain-English long description of the ICD-10 code (e.g. 'Typhoid pneumonia'). Sourced from the CMS mapping file. NOT a stable per-code dictionary — wording can drift across rate_year for the same code (15 codes differ, e.g. 'Megaloencephalic'->'Megalencephalic'), because it follows the year's published file. No nulls. | | source_url | string | CMS download URL of the ZIP the mappings were parsed from (e.g. '.../2026-midyear-final-icd-10-mappings.zip'). One distinct URL per rate_year. Note the 2026 file is labeled 'midyear-final' while 2024/2025/2027 are 'initial' — provenance, not a join key. | | sha256_content_hash | string | SHA-256 of the source file content, for provenance/integrity. One distinct hash per rate_year — EXCEPT 2026 and 2027 share the identical hash (2027 reuses the 2026 midyear-final content). A change in this hash signals CMS republished the file. | | bronze_publication_id | string | Provenance ID of the bronze ingestion that produced this year's rows (e.g. 'hcc_all_2026_66d75bf7'). Exactly 1:1 with rate_year (4 ids, 4 years) — REDUNDANT with rate_year for grain; do not mistake it for a finer key. | | asserted_at | timestamp | Timestamp the silver rows were materialized/asserted. Only 4 distinct values, all within a ~6-minute window on 2026-05-18 — one assertion per rate_year load. This is a pipeline-load time, NOT when CMS published; use source_url/rate_year for CMS recency. | | parser_artifact_hash | string | Hash identifying the parser code version that produced the rows. IDENTICAL across every row ('e10d366596d1c801') — a single parser version built the whole table; useful only to detect future reparses. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_icd10_hcc_crosswalk WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_icd10_hcc_crosswalk")` first. # ICD-10 to HCC / RxHCC crosswalk, every CMS edition (v3) `medicare_silver.dim_icd10_hcc_crosswalk_v3` · Medicare Advantage, Part D, Medicaid · status live · 707,821 rows The CMS ICD-10-CM to HCC / RxHCC mapping files, every edition CMS lists on its risk-adjustment year pages, read from the publisher's own headers. Labels: CMS-HCC V22, V23 (2019), V24 (2020-2025), V28 (2024+); ESRD_V21 and ESRD_V24 for the ESRD models; RxHCC_V05 (2016-2024) and RxHCC_V08 (2023+) for Part D, with categories spelled RXHCC. coefficient_model_version carries the dim_hcc_coefficients model name (ESRD_V21 -> V21, ESRD_V24 -> V24). Every row keeps the verbatim source column header, its payment-year flag, the CSV line and the ZIP and CSV hashes. **Grain.** One row per (rate_year, mapping_edition, model_version, icd_code, hcc_category): 707,821 rows, 12 payment years 2016-2027, 17 CMS editions (initial, midyear_final, final), 8 model labels (Athena 8d7dff41). An ICD-10 code that maps to more than one HCC in a model has one row per HCC. | column | type | meaning | |---|---|---| | rate_year | int | | | mapping_edition | string | | | model_family | string | | | model_version | string | | | coefficient_model_version | string | | | icd_code | string | | | hcc_category | string | | | hcc_number | int | | | icd_description | string | | | payment_year_flag | string | | | source_column | string | | | payment_year_flag_column | string | | | source_member | string | | | source_row_number | int | | | source_zip_sha256 | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_icd10_hcc_crosswalk_v3 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_icd10_hcc_crosswalk_v3")` first. # MA network intelligence: NUCC taxonomy -> normalized specialty (CMS MA network-adequacy types) `medicare_silver.dim_network_specialty_v1` · Medicare Advantage, Part D, Medicaid · status partial The specialty vocabulary of the network layer: each NPPES taxonomy code mapped to one specialty, CMS's MA network-adequacy provider specialty types (30) where the code belongs to one, a plain group otherwise. The mapping is Vlada's (tools/data_tracker/network_specialty_map.py), by NUCC classification and specialization, first match wins. **Grain.** One row per NUCC taxonomy code (884, NUCC v26.0): provider_class, specialty, adequacy_type, map_version. | column | type | meaning | |---|---|---| | taxonomy_code | string | | | nucc_grouping | string | | | nucc_classification | string | | | nucc_specialization | string | | | provider_class | string | | | specialty | string | | | adequacy_type | boolean | | | map_version | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_network_specialty_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_network_specialty_v1")` first. # MA Star Ratings — cross-year measure crosswalk `medicare_silver.dim_stars_measure_crosswalk` · Medicare Advantage, Part D, Medicaid · status partial The map that lets a measure be trended across CMS renumbering (e.g. C27 to C30). 84 certain (CMS Attachment J, RY2024-2026) plus 385 offline-derived (RY2015-2024). **Grain.** Logically, one row per (source measure, source rating year) per provenance source — i.e. one mapping of a measure from year N to year N+1, recorded once per CMS source document. The MINIMAL verified unique key is (from_measure_id, from_rating_year, source) = 109 distinct logical rows (equivalently to_measure_id/to_rating_year are derivable, since no measure fans out). IMPORTANT: the physical table holds 53,079 rows, NOT 109 — every logical row is duplicated many times (median 631x for the primary source, 3x for the secondary), an append-without-dedup artifact. There are only 89 distinct (from_measure_id,from_rating_year,to_measure_id,to_rating_year) tuples and 109 distinct full rows. You MUST SELECT DISTINCT (or GROUP BY the key) to recover the true grain; raw COUNT(*) is meaningless. **How to use it.** To translate a 2025 Part C measure to its 2026 ID before joining year-over-year Star Ratings data: SELECT DISTINCT from_measure_id, to_measure_id, crosswalk_type, notes FROM dim_stars_measure_crosswalk WHERE from_rating_year=2025 AND from_measure_id='C14'. Returns C14 -> C17 (renamed), telling you that RY2025 'Medication Reconciliation Post-Discharge' (C14) is RY2026 C17, so a naive join on code 'C14' across years would silently mismatch. **Traps.** - ROW COUNT IS A LIE: 53,079 physical rows but only 109 distinct logical rows / 89 distinct measure-pair tuples. Every mapping is appended many times (median 631x for source='cms_tech_notes_attachment_j', 3x for source='cms_tech_notes'). ALWAYS SELECT DISTINCT or GROUP BY the grain key — never trust COUNT(*), AVG, or unaggregated joins against this table or you will multiply downstream rows ~600x. - is_current IS A DEAD FLAG: it is constant true for all 53,079 rows and performs NO dedup or versioning. Filtering is_current=true removes nothing and does NOT collapse the duplicates. (This is unlike sibling Medicare snapshot dims where is_current actually selects the live version.) - TWO PROVENANCE VARIANTS OF THE SAME MAPPING: source has two values ('cms_tech_notes_attachment_j' = primary/authoritative, 'cms_tech_notes' = secondary). The same measure pair often appears under both, which is why distinct full-rows (109) > distinct measure tuples (89). Pick one source (prefer cms_tech_notes_attachment_j) when deduping, or you'll get two rows per mapping. - to_rating_year and to_measure_id are NOT independent keys. to_rating_year is ALWAYS from_rating_year+1 (only consecutive-year links: 2024->2025, 2025->2026 — no multi-year hops). to_measure_id is functionally determined by (from_measure_id, from_rating_year) with zero fan-out. So the real key is just the from-side + source. - THE WHOLE POINT IS ID REUSE DANGER — read notes. CMS renumbered Part C measures for RY2026 (inserted C13 'Kidney Health Evaluation', bumping downstream codes +3), so the SAME code means DIFFERENT measures across years. notes carries explicit WARNINGs (e.g. 'RY2026 C04 is a DIFFERENT measure', 'RY2026 C13 is a NEW measure, no RY2025 predecessor'). Part D (D01-D12) stayed identity in both transitions; 2024->2025 is 100% identity; only 2025->2026 Part C has renames. Do not assume a code is stable across years just because crosswalk_type isn't checked. | column | type | meaning | |---|---|---| | from_measure_id | string | Source Star Ratings measure ID in the EARLIER rating year (string). 42 distinct values across two prefixes: C## = Part C / health-plan measures (e.g. C01 Breast Cancer Screening, C14 Controlling Blood Pressure), D## = Part D / drug-plan measures (D01-D12). Combined with from_rating_year this is the left side of the year-over-year mapping. NO nulls. | | from_rating_year | int | The earlier CMS Star Ratings Year (int) of the mapping. Only two values observed: 2024 and 2025. This is the table's primary time column (profiler temporal: earliest 2024, latest 2025). | | to_measure_id | string | The same logical measure's ID in the LATER rating year (string), 45 distinct values. For crosswalk_type='identity' it equals from_measure_id; for 'renamed' it is the renumbered ID (e.g. C14->C17, a +3 shift). Functionally determined by (from_measure_id, from_rating_year) — verified zero fan-out (no from-measure maps to >1 to-measure). NO nulls. | | to_rating_year | int | The later Star Ratings Year (int). VERIFIED to ALWAYS equal from_rating_year + 1 (53,079/53,079 rows). So the table only links CONSECUTIVE years: 2024->2025 and 2025->2026. Carries no independent information beyond from_rating_year+1. | | crosswalk_type | string | How the measure ID changed across the two years. Only TWO values: 'identity' (ID stable, to_measure_id == from_measure_id; 57 distinct logical mappings) and 'renamed' (ID renumbered, to_measure_id != from_measure_id; 52 distinct logical mappings). 2024->2025 is 100% identity; 2025->2026 has the renames (Part C shifted, Part D stayed identity). | | confidence | string | Stated confidence of the mapping. CONSTANT — every row is 'certain'. Carries no discriminating information in the current data (1 distinct value); exists for future lower-confidence/fuzzy mappings. | | source | string | Provenance label citing the CMS document the mapping was read from. TWO values: 'cms_tech_notes_attachment_j' (69 logical mappings — the primary/authoritative set, physically appended ~631x) and 'cms_tech_notes' (25 logical mappings — a secondary near-duplicate variant, appended only ~3x). The 89->109 distinct-row inflation is driven entirely by the same measure pair appearing under BOTH source labels. NO nulls. | | notes | string | Free-text human description of the measure plus CRITICAL warnings about ID-reuse traps. ALWAYS populated (zero nulls/empties). Contains the renumbering rationale and danger flags, e.g. 'Controlling Blood Pressure. Bumped +3 (C13 newly used for Kidney Health Evaluation).' and 'WARNING: RY2026 C04 is a DIFFERENT measure ... returned from display' and 'WARNING: RY2026 C13 is a NEW measure ... no RY2025 predecessor.' This is the field that prevents naive ID-based joins across years. | | is_current | boolean | Boolean snapshot/active flag. CONSTANT true for all 53,079 rows (0 false). It does NOT perform any dedup or versioning here — there is no historical/superseded slice. Filtering on is_current=true is a no-op and does NOT remove the physical row duplication. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_stars_measure_crosswalk WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_stars_measure_crosswalk")` first. # MA Star Ratings — measure dimension `medicare_silver.dim_stars_measures` · Medicare Advantage, Part D, Medicaid · status live The per-year measure dictionary. Stable identity is the CMIT #; the C0x/D0x measure_id is a per-year display alias. **Grain.** One row per Star Ratings measure per rating year; minimal verified-unique key (measure_id, rating_year) = 538 distinct = 538 total rows. **How to use it.** To see how a measure's scoring weight evolved over time, group by the stable canonical_name: SELECT rating_year, weight FROM dim_stars_measures WHERE canonical_name='Care Coordination' ORDER BY rating_year — returns the weight trajectory 1.5 (2015-2020) → 2.0 (2021-2022) → 4.0 (2023-2025) → 2.0 (2026), revealing the RY2023 patient-experience weight-doubling and its RY2026 rollback. To enrich a per-plan Stars measure score, join the fact's (measure_id, rating_year) to this table for name/domain/weight/scoring-direction. **Traps.** - measure_id is NOT a stable measure identity — it is a per-rating-year slot code CMS renumbers every cycle. A single ID like C25 maps to 6-8 different measure concepts across RY2015-2026. To track ONE measure over time, group/join on canonical_name (always present) or cmit_number (RY2024+ only), never on measure_id alone. Any join to a per-plan Stars fact MUST include rating_year. - The grain is (measure_id, rating_year) = 538 distinct = 538 rows. None of the profiler's candidate-key columns (cmit_number, dual_numbered_with, recompute_gap_id, weight_override_puerto_rico_only) are part of the key — most are mostly-null annotations. measure_id alone has only 49 distinct values; do not treat it as a primary key. - weight is rating-year-specific and changes substantially over time for the same concept (e.g. Care Coordination 1.5→2.0→4.0→2.0). The RY2023-2025 era (methodology_version 'ry2023_v1_weight_doubling') quadruples patient-experience/CAHPS weights. Never assume a single weight per measure — always read it at the target rating_year. - Several columns are declared-but-effectively-empty or constant and carry no signal today: is_retired is FALSE for all 538 rows (measure availability is shown by which rows EXIST per year, not this flag); tech_notes_pdf_sha256 is NULL for all rows; methodology_source is the same hand-authored string for all rows; is_current is TRUE for all rows (single snapshot, no dedup filter needed yet). - Null is meaningful on the annotation columns: cmit_number is NULL for RY2015-2023 (CMIT IDs only exist from RY2024); dual_numbered_with NULL = not a C/D dual-counted measure; recompute_gap_id NULL = recomputable (non-null ⟺ the 24 composite rows); weight_override_puerto_rico_only NULL = use normal weight, 0.0 = measure excluded from Puerto Rico ratings (only the 3 med-adherence measures). - This is a DEFINITION table, not a performance table — it holds zero plan/contract-level scores or rates. It is the dictionary that gives weights and meaning to the actual MA Star Ratings measure-value fact tables. measurement_period is free-text (69 variant formats: MY####, CY####, multi-year HOS spans, CAHPS survey windows) and lags rating_year by ~2 years; it is the history/time column but is NOT part of the grain key. primary_data_source has spelling variants (PDE_MPF vs PDE-MPF vs PDE/MPF) — normalize before aggregating. | column | type | meaning | |---|---|---| | measure_id | string | CMS per-rating-year measure slot code: 'C'+2 digits for Part C/health-plan measures, 'D'+2 digits for Part D/drug-plan measures (e.g. C07, D12). 49 distinct values, 379 C-rows / 159 D-rows. CRITICAL: this is a per-year POSITION code that CMS renumbers each cycle, NOT a stable measure identity — e.g. 'C25' is Customer Service in RY2015, Care Coordination in RY2016-17, ... Complaints about the Health Plan in RY2024-25, Rating of Health Care Quality in RY2026. Join to a fact table only within the same rating_year. Never null. | | measure_name | string | Human-readable measure name as published for that rating year (e.g. 'Adult BMI Assessment', 'Medication Adherence for Cholesterol (Statins)'). Wording can drift year to year. Never null. In observed rows identical to canonical_name. | | part_type | string | Medicare program part the measure belongs to: 'C' (Medicare Advantage / health-plan measures, 379 rows) or 'D' (prescription-drug-plan measures, 159 rows). Matches the measure_id prefix. Never null. | | domain | string | Star Ratings domain grouping the measure rolls into. Part C domains: HD1-HD5 (e.g. HD1 staying healthy, HD2 managing chronic conditions - the largest at 167 rows, HD3 member experience, HD4 complaints/leaving, HD5 customer service). Part D domains: DD1-DD4. 9 distinct values, never null. | | weight | float | CMS scoring weight applied to the measure when computing the overall Star Rating, for THAT rating year. Float values 1.0 (process, 220 rows), 1.5 (patient-experience/CAHPS legacy, 110), 2.0 (outcome/intermediate-outcome, 50), 3.0 (50/PDE adherence + patient experience post-2021, 86), 4.0 (patient-experience peak in the RY2023-2025 weight-doubling era, 48), 5.0 (the improvement composites, 24). Weight changes YEAR TO YEAR for the same concept — e.g. Care Coordination ran 1.5 (RY2015-2020) → 2.0 (RY2021-2022) → 4.0 (RY2023-2025) → 2.0 (RY2026). Never null. | | is_inverse_scored | boolean | Boolean: TRUE when LOWER raw values are better (75 rows) so the score must be inverted. TRUE for complaints, members-choosing-to-leave, appeals auto-forward, all-cause readmissions, high-risk-medication, and the diabetes-control measures. FALSE (463 rows) for normal higher-is-better measures. Never null. | | format_type | string | Numeric format of the underlying measure value: PERCENTAGE (424, the bulk), DECIMAL (48, e.g. rates/ratios), INTEGER (42, e.g. counts/per-1000 call-center metrics), NO_NUMERIC (24). NO_NUMERIC rows are exactly the two improvement composites (Health Plan / Drug Plan Quality Improvement) which are derived, not a raw measured number. Never null. | | measurement_period | string | Free-text data-collection window that FEEDS this rating year (the data lags the rating year, typically by ~2 years). 69 distinct values, format varies by data source: HEDIS measurement years 'MY2019'/'MY2014', calendar years 'CY2019', multi-year HOS spans 'MY2017-MY2019', CAHPS survey windows 'CAHPS Feb-May 2018', and 'MY2024 Q1-Q3 (Q4 excluded)'. This is the table's time column for history span but it is NOT the grain key. Never null. | | is_retired | boolean | Boolean intended to flag retired measures — but in this table it is FALSE for ALL 538 rows. Measure availability per cycle is expressed by which (measure_id, rating_year) rows EXIST, not by this flag. Effectively dead/always-false today. | | is_new_this_year | boolean | Boolean: TRUE (15 rows) when the measure was newly introduced in that rating_year (e.g. Breast Cancer Screening new in RY2016, MPF Price Accuracy new in RY2022, Transitions of Care new in RY2024). FALSE otherwise. Never null. | | rating_year | int | Integer Star Ratings cycle year this measure definition applies to. Range 2015-2026 (12 years). Counts per year: 40-48 measures (2015=46 ... 2022/2023=40 the trough ... 2026=45). Half of the grain key; the table's logical partition. Never null. | | methodology_version | string | Versioned tag of the methodology that produced this year's row, one per rating_year (e.g. 'ry2018_v1', 'ry2021_v1_covid_HH' for the COVID hold-harmless year, 'ry2023_v1_weight_doubling', 'ry2024_v2_post_scan_elevance_restated', 'ry2025_v2_post_uhc_centene_recalc'). Encodes notable policy events per cycle. Never null. | | methodology_source | string | Provenance of how the row was authored — UNIFORM 'hand_authored_from_kb_15_section_g' for all 538 rows. Signals this dimension was hand-curated from a CMS Technical Notes knowledge-base section, not auto-ingested from a CMS file. | | tech_notes_pdf_sha256 | string | Intended SHA-256 provenance hash linking the row to the source CMS Technical Notes PDF. NULL for all 538 rows — declared provenance column, not yet populated. | | is_current | boolean | Boolean current-snapshot flag. TRUE for all 538 rows — there is exactly one (non-superseded) snapshot loaded, so no is_current filter is needed today. Present to support future SCD/restatement snapshots. | | cmit_number | string | CMS Measure Inventory Tool (CMIT) stable measure ID (e.g. '00093-02-C-PARTC' for Breast Cancer Screening). Populated ONLY for RY2024-2026 (127 rows); NULL for RY2015-2023 (411 rows) because CMS only began publishing CMIT IDs in recent cycles. Where present it is a durable cross-year identity, but it is sparse so cannot be the grain key. 43 distinct non-null values. | | canonical_name | string | The STABLE cross-year concept name for the measure (e.g. 'Breast Cancer Screening' stays constant across RY2016-2026 even when its measure_id changes). This is the column to use to track one measure's weight/scoring over time, NOT measure_id. Never null. | | primary_data_source | string | Upstream CMS data system the measure is computed from. Top values: HEDIS (162), CAHPS member-survey (108), PDE prescription-drug-event (42), CTM complaints-tracking (24), 'Star Ratings (composite)' (24, the improvement measures), IRE/Maximus appeals (24), HOS health-outcomes-survey (24), MBDSS, Call Center monitoring, etc. ~33 distinct strings with mild spelling variants (e.g. 'PDE_MPF' vs 'PDE-MPF' vs 'PDE/MPF') — normalize before grouping. Never null. | | dual_numbered_with | string | Cross-reference to the paired measure_id when a single CMS concept is counted under BOTH Part C and Part D in the same year (e.g. Complaints/ Members-Choosing-to-Leave). 48 rows non-null (490 null). The pointed-to ID is itself year-specific — e.g. C29 dual_numbered_with D03 in RY2015 but D04 in RY2019 — so resolve it within the same rating_year. NULL = not dual-numbered. | | is_composite | boolean | Boolean: TRUE (24 rows) for the two derived improvement composite measures (Health Plan Quality Improvement, Drug Plan Quality Improvement) across the 12 years. These are computed from year-over-year change in other measures, not measured directly (they are exactly the NO_NUMERIC, weight-5.0, recompute_gap-tagged rows). FALSE (514) otherwise. Never null. | | recompute_gap_id | string | Slug naming a known recompute limitation, e.g. 'stars_c25_composite_unrecomputable'. Non-null for exactly the 24 composite rows (perfectly correlated with is_composite) and NULL for the other 514. Flags that the measure cannot be reproduced from primitive substrate (it depends on prior-year ratings). NULL = recomputable. | | weight_override_puerto_rico_only | float | Float weight override that applies ONLY to Puerto Rico contracts. Set to 0.0 for 36 rows = exactly the three medication-adherence measures (Cholesterol/Statins, Hypertension/RAS, Diabetes) × 12 years, meaning those measures are dropped (weighted 0) from PR ratings. NULL (502 rows) means no PR-specific override — use the normal weight. Null carries meaning: 'no override'. | Tools that read it: get_star_decomposition, get_stars, get_stars_cutpoints, get_stars_rollup Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_stars_measures WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_stars_measures")` first. # MA Star Ratings — methodology dimension `medicare_silver.dim_stars_methodology` · Medicare Advantage, Part D, Medicaid · status live The year-by-year methodology record that drives the recompute and the AEP/payment-year mapping for the rating tables. **Grain.** One row per Star Ratings rating_year. 13 rows = the 13 contiguous rating years 2015-2027 (one each, no gaps, verified no duplicates). No contract/plan/measure dimension exists — each row describes the CMS methodology that applies to every MA/Part D contract in that rating year. **How to use it.** To interpret or reproduce a given year's Star Ratings, look up its methodology row, e.g. SELECT rating_year, methodology_version, era, cai_active, tukey_active, hold_harmless_expanded, reward_factor_formula, tech_notes_pdf_url, notes FROM medicare_silver.dim_stars_methodology WHERE rating_year = 2024. This answers 'what methodology produced the 2024 Star Ratings?' — returns ry2024_v2_post_scan_elevance_restated, era tukey_era_restated, CAI+Tukey both active, and a notes field explaining the SCAN/Elevance litigation restatement and the June-13-2024 baseline rule required to recompute the post-restatement cut points. Join to the actual ratings/QBP fact tables on rating_year (or payment_year, which equals it) to attach methodology context to per-contract numbers. **Traps.** - rating_year is the real and minimal primary key — 13 rows, 13 distinct, zero duplicates. The auto-profiler FAILED to find the grain and wrongly reported tukey_active as the lone candidate key (only 2 distinct values, FALSE pre-2024 / TRUE 2024+). Never join or dedup on tukey_active. - payment_year and performance_year are NOT independent keys: payment_year == rating_year in every row, and performance_year == rating_year - 2 in every row (fixed 2-yr lag). All three are 1:1 — use rating_year as the canonical key, the others are derived. - is_current=FALSE on the 2027 row means 'not yet finalized / forward-looking projection,' NOT 'stale/superseded.' To get the latest FINALIZED year use MAX(rating_year) WHERE is_current = TRUE => 2026, not 2027. - Null tech_notes_pdf_url (2016/2021/2022/2023/2027) does NOT mean undocumented — methodology is fully captured in methodology_version + era + flags + the always-populated notes column, and sha256 is present for all finalized years even when the URL is missing (sha is null only for 2027). - The '_v2_' in methodology_version is the restatement signal: RY2024 and RY2025 were recalculated AFTER publication due to litigation (SCAN/Elevance) and a court-ordered UHC/Centene recalc. To reproduce those years use the restated rule (e.g. the June-13-2024 baseline rule in the 2024 notes), not original v1 cut points. - This is a year-level METHODOLOGY dimension, not a fact table: NO contract_id/plan_id/measure_id/star value. It explains HOW a year was scored so you can interpret/recompute the actual Stars + QBP facts in sibling tables; join on rating_year (== payment_year). | column | type | meaning | |---|---|---| | rating_year | int | Star Ratings rating year (year the ratings are published/labeled, e.g. '2025 Star Ratings'). Integer 2015-2027, all 13 distinct. PRIMARY KEY — verified unique (13 rows / 13 distinct, no duplicates). | | performance_year | int | Measurement/data-collection year that produced the rating. Always rating_year - 2 in every row (2-yr HEDIS/CAHPS/admin lag; RY2025 measures CY2023). 1:1 with rating_year, redundant. | | payment_year | int | Quality Bonus Payment (QBP) plan year these ratings drive. Equals rating_year in EVERY row (diff=0 for all 13). 1:1 synonym column, not an independent axis. | | methodology_version | string | Version slug for the methodology in force, pattern ry_v_ (e.g. ry2024_v2_post_scan_elevance_restated, ry2027_v1_hei_reversed). '_v2_' = year was RESTATED/recalculated after publication (litigation); '_v1_' = original. 1:1 with rating_year, never null. | | era | string | Coarse named epoch label, one distinct value per year (13 distinct), tracing methodology evolution: i_factor_introduced(2015)->r_factor_renamed(2016)->cai_introduced(2017)->cai_with_letter_facs(2018)->statins_axis(2019)->fac_integer_flip_hurricane_HH(2020)->covid_freeze(2021)->covid_universal_HH(2022)->weight_doubling_cbp_intro(2023)->tukey_era_restated(2024)->modern_post_litigation(2025)->modern_60pct_fema_removed(2026)->modern_historical_reward_retained(2027). Never null. | | cai_active | boolean | Boolean: whether the Categorical Adjustment Index (LIS/DE/disability case-mix adjustment) was applied. FALSE 2015-2016, TRUE 2017-2027 (transition RY2017). 0 nulls. | | tukey_active | boolean | Boolean: whether Tukey outer-fence outlier deletion was used in cut-point clustering. FALSE 2015-2023, TRUE 2024-2027 (transition RY2024). Only 2 distinct values — NOT a key despite the profiler flagging it. | | hold_harmless_expanded | boolean | Boolean: whether an expanded/broadened hold-harmless protection was in effect. TRUE only for 2021, 2022 (COVID years) and 2027 (projected); FALSE otherwise. Non-nullable. | | reward_factor_formula | string | Reward-factor formula variant: i_factor_2_row(2015), r_factor_2_row(2016), historical(2017,2018,2020,2021,2024,2025,2026), historical_with_statins_axis(2019), historical_with_mpf_axis(2022), historical_with_cbp_axis(2023), historical_retained_2027(2027). '_axis' suffix = variance dimension added that year. Never null. | | tech_notes_pdf_url | string | Canonical CMS Technical Notes PDF URL. NULLABLE; null for 5 years (2016,2021,2022,2023,2027) = URL not captured/not yet published, NOT that methodology is unknown (notes + sha still cover those years). | | tech_notes_pdf_sha256 | string | SHA-256 integrity hash of the captured Technical Notes PDF (provenance/tamper-evidence). Present for all 12 finalized years even when URL is null; null ONLY for 2027 (no published tech notes yet). Nullable. | | notes | string | Rich free-text analyst annotation per year (never null), the densest column: documents restatements, court cases (SCAN v. HHS, Elevance v. Becerra, UHC/Centene recalc), QBP/$ impact, measure add/remove, weight changes, improvement/CTM/MCLP measure IDs, and the exact rules to REPRODUCE that year's ratings. | | is_current | boolean | Boolean finalization flag. TRUE for 12 rows (2015-2026 = finalized/published). FALSE for exactly 1 row, 2027 (forward-looking/projected, no tech notes URL/sha). Does NOT mark 'most recent'; separates finalized history from the single projected future year. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dim_stars_methodology WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_stars_methodology")` first. # D-SNP integration status (FIDE / HIDE / CO / CO-P, AIP, zero-dollar cost sharing, dual categories) by plan segment and state, CY2023-2027 `medicare_silver.dsnp_integration_status_v1` · Medicare Advantage, Part D, Medicaid · status live · 4,795 rows CMS integration level of every D-SNP from the MA Landscape (CY2023-2027), with the last SNP Comprehensive Report month of the year (status, AIP, partial-dual-only, enrollment), the CMS MMCO integration list (status incl. CO-P, integrated-care SEP, dual categories the plan may enroll, age and enrollment limits) and the PBP filing as cross-checks. Identifiers as CMS prints them (segment unpadded), the format of pbp_section_a and vw_benefit_vector. **Grain.** One row per (plan_year, contract_id, plan_id, segment_id, state_code); a multi-state plan segment has one row per state (plan_segment_state_rank = 1 for plan counts). CY2027: 1,052 plan segments. | column | type | meaning | |---|---|---| | plan_year | int | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | state_code | string | | | state_name_raw | string | | | plan_name | string | | | org_name | string | | | parent_org_name | string | | | plan_type | string | | | integration_status | string | | | integration_status_raw | string | | | applicable_integrated_plan | boolean | | | aip_raw | string | | | zero_dollar_cost_sharing | boolean | | | zero_dollar_cost_sharing_raw | string | | | landscape_county_count | int | | | plan_segment_state_count | int | | | plan_segment_state_rank | int | | | snp_report_month | string | | | snp_report_integration_status | string | | | snp_report_aip | boolean | | | snp_report_partial_dual_only | boolean | | | snp_report_dsnp_only_contract | boolean | | | snp_report_plan_segment_enrollment | bigint | | | snp_report_status_agrees | boolean | | | cms_list_edition | string | | | cms_list_integration_status | string | | | cms_list_aip | boolean | | | cms_list_integrated_care_sep | boolean | | | cms_list_dual_categories_raw | string | | | cms_list_enrolls_full_benefit_duals | boolean | | | cms_list_enrolls_partial_duals | boolean | | | cms_list_age_eligibility_raw | string | | | cms_list_enrollment_limitations_raw | string | | | cms_list_medicaid_mco_organization_raw | string | | | cms_list_status_agrees | boolean | | | pbp_dsnp_filed | boolean | | | pbp_dsnp_zerodollar_code | string | | | pbp_zero_dollar_agrees | boolean | | | source_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | snp_report_source_url | string | | | snp_report_sha256_content_hash | string | | | parse_revision | int | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.dsnp_integration_status_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dsnp_integration_status_v1")` first. # MA/Part D enrollment — CPSC county grain `medicare_silver.enrollment_monthly_county` · Medicare Advantage, Part D, Medicaid · status live CMS CPSC (Contract/Plan/State/County) monthly MA + Part D enrollment at county grain. The substrate behind get_enrollment_trend and the MA enrollment-trend proof rail. Includes EGHP (flagged); excludes Original Medicare (FFS). County cells with <=10 enrollees are CMS-suppressed (`*`) and carried as bounds [1,10] via enrollment_lower_bound/upper_bound + suppression_reason_code='redacted_small_cell'. **Grain.** One row per (contract_id, plan_id, state_code, county_fips, month) enrollment count. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | state_code | string | | | county_fips | string | | | report_month | date | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | suppression_reason_code | string | | | parent_org_raw | string | | | enrollment_grain_era | 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 | | | county_ssa | string | | | county_name_raw | string | | Tools that read it: get_landscape_benefit_change, get_landscape_exits, get_stars_rollup, prove_ma_enrollment_trend Query it: `query_substrate` with `SELECT ... FROM medicare_silver.enrollment_monthly_county WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.enrollment_monthly_county")` first. # MA/Part D enrollment, CPSC county grain, every row CMS publishes (parse revision 4) `medicare_silver.enrollment_monthly_county_v4` · Medicare Advantage, Part D, Medicaid · status live · 630,792,948 rows CMS CPSC (Contract/Plan/State/County) monthly MA and Part D enrollment, re-parsed from the bronze bytes the served table was built from (parse revision 4, defects CPSC-1/2/3). It keeps every row CMS publishes for a contract: blank FIPS with only an SSA code (county_code_system 'ssa'), blank State, no county code ('none'), blank Plan ID; an SSA code is never written into county_fips. Same columns as medicare_silver.enrollment_monthly_county plus county_code_system. Read it through medicare_semantic.vw_enrollment_monthly_county_v3, which adds in_revision3_table and the corrected parent names. **Grain.** One row per (contract_id, plan_id, state_code, county_fips, county_ssa, report_month) as CMS publishes it: 630,792,948 rows in 243 months, 2006-07..2026-09, 0 duplicate native keys in every month (Tracker run 20261007T010009Z-cd1f8a6d). plan_id is '' where CMS left Plan ID blank; state_code and county_fips are NULL where CMS left them blank. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | state_code | string | | | county_fips | string | | | report_month | date | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | suppression_reason_code | string | | | parent_org_raw | string | | | enrollment_grain_era | 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 | | | county_ssa | string | | | county_name_raw | string | | | county_code_system | string | | Tools that read it: get_county_view, get_market_share Query it: `query_substrate` with `SELECT ... FROM medicare_silver.enrollment_monthly_county_v4 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.enrollment_monthly_county_v4")` first. # MA/Part D enrollment — plan grain `medicare_silver.enrollment_monthly_plan` · Medicare Advantage, Part D, Medicaid · status live CMS monthly MA and Part D enrollment at contract-plan-month grain. Direct guarded queries support plan-level population filters and as-reported parent rollups; SNP status comes from a separate membership source. **Grain.** One row per (contract_id, plan_id, month) plan-level enrollment count. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | report_month | date | | | organization_type | string | | | plan_type | string | | | offers_part_d | boolean | | | organization_name_raw | string | | | organization_marketing_name_raw | string | | | plan_name_raw | string | | | parent_org_raw | string | | | contract_effective_date | date | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | enrollment_suppression_reason | 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 | | Tools that read it: get_enrollment, get_stars_rollup, prove_ma_enrollment_trend Query it: `query_substrate` with `SELECT ... FROM medicare_silver.enrollment_monthly_plan WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.enrollment_monthly_plan")` first. # CMS Accountable Care Organization (ACO) Participants — Shared Savings Program `medicare_silver.fact_aco_participant` · Medicare Advantage, Part D, Medicaid · status live · 183,710 rows The CMS Medicare Shared Savings Program ACO Participants list per ACO and participating organization: ACO id/name, service area, agreement period, track, revenue class, assignment type, and address. Production holds 2016-2026. Official 2014-2015 files are ID-less and owner-deferred; 2013 was not recovered. **Grain.** One source row per (performance_year, ACO, participant legal business name); participant TIN is not retained, so this nominal key is not unique. | column | type | meaning | |---|---|---| | performance_year | int | | | aco_id | string | | | participant_lbn | string | | | aco_name | string | | | aco_service_area | string | | | agreement_period_num | string | | | initial_start_date | string | | | current_start_date | string | | | basic_track | string | | | basic_track_level | string | | | enhanced_track | string | | | high_revenue_aco | string | | | low_revenue_aco | string | | | prospective_assignment | string | | | retrospective_assignment | string | | | aco_address | 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 medicare_silver.fact_aco_participant WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_aco_participant")` first. # AHRQ NHQDR national and state quality estimates `medicare_silver.fact_ahrq_nhqdr_quality` · Medicare Advantage, Part D, Medicaid · status live · 855,292 rows Lossless 855,292-row extract of the official AHRQ National Healthcare Quality and Disparities Report logical table, preserving 666 measures, national and 59 state/territory jurisdiction labels, population subgroups, raw/formatted estimates, error values, footnotes, source links, physical row identity, and exact lineage for data years 1999-2022. **Grain.** One row per accepted Tableau publisher extract, physical page, and physical row ordinal. | column | type | meaning | |---|---|---| | source_page_number | int | | | source_row_ordinal | int | | | data_year | int | | | measure_id | string | | | measure_title | string | | | measure_link | string | | | source_link | string | | | state_code | string | | | state_name_raw | string | | | estimate_type | string | | | estimate_value | double | | | estimate_value_raw | string | | | estimate_value_status | string | | | error_value | double | | | error_value_raw | string | | | estimate_graph_value | double | | | estimate_graph_value_raw | string | | | population_category | string | | | population_group | string | | | population_group_2 | string | | | subgroup_description | string | | | column_group_name | string | | | priority_area | string | | | priority_area_copy | string | | | section_name | string | | | table_title | string | | | title | string | | | footnote | string | | | footnote_type_id | string | | | instructions | string | | | publisher_row_flag | string | | | raw_row_json | string | | | exact_row_sha256 | string | | | semantic_row_sha256 | string | | | publisher_extract_id | string | | | publisher_schema_era | 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 medicare_silver.fact_ahrq_nhqdr_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ahrq_nhqdr_quality")` first. # CMS Medicare Ambulance Fee Schedule (AFS) Public Use File `medicare_silver.fact_ambulance_fee_schedule` · Medicare Advantage, Part D, Medicaid · status live · 29,160 rows The standalone CMS Medicare Ambulance Fee Schedule (AFS PUF) — per HCPCS (A0425-A0436 + mileage) × carrier × locality: RVU, GPCI, base rate, and urban/rural base + mileage rates. NOT inside PFS/OPPS/CLFS/DMEPOS/ASC; the reference benchmark for repricing ambulance claims (a top balance-billing / overpayment category). ~1.3k rows/year, CY2004-CY2026, partition by year; CY2004 is represented by two effective-period half-year vintages. **Grain.** One row per (year, effective_period_start, effective_period_end, HCPCS × carrier × locality) — ambulance fee-schedule rates. | column | type | meaning | |---|---|---| | year | int | | | row_seq | bigint | | | hcpcs | string | | | contractor_carrier | string | | | locality | string | | | rvu | double | | | gpci | double | | | base_rate | double | | | urban_base_or_mileage | double | | | rural_base_or_mileage | double | | | rural_base_lowest_quartile | double | | | rural_ground_miles_1_17 | 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_ambulance_fee_schedule WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ambulance_fee_schedule")` first. # Medicare ASC (Ambulatory Surgery Center) rates `medicare_silver.fact_asc_addendum` · Medicare Advantage, Part D, Medicaid · status live · 462,343 rows Medicare Ambulatory Surgery Center payment schedule (payment_rate) — the benchmark for ASC-setting surgery, a SEPARATE sibling system from OPPS. Don't substitute ASC for hospital-outpatient OPPS or vice-versa. **Grain.** One row per (hcpcs_code, calendar_year, effective_period) -- Medicare ASC Addendum payment_rate + payment_indicator. DEEP 2001-2026. The shallow medicare_asc_rates is the deprecated recent-years mirror. | column | type | meaning | |---|---|---| | calendar_year | int | | | hcpcs_code | string | | | addendum_member | string | | | short_descriptor | string | | | payment_indicator | string | | | payment_weight | decimal(38,18) | | | payment_rate | decimal(38,18) | | | pricer_group | string | | | multiple_procedure_discounting | string | | | pass_through_expiration | string | | | source_era | string | | | era_flag | string | | | source_zip_sha256 | string | | | source_member | string | | | source_row_number | bigint | | | ira_adjusted_copayment | decimal(38,18) | | | payment_amount | decimal(38,18) | | | asc_payment_group | string | | | reference_opps_payment_rate | decimal(38,18) | | | reference_asc_payment_rate | decimal(38,18) | | | dra_cap | decimal(38,18) | | | asc_copayment_amount | decimal(38,18) | | | former_asc_group | string | | | change_indicator | string | | | fully_implemented_payment_weight | decimal(38,18) | | | fully_implemented_payment | decimal(38,18) | | | first_transition_year_payment | decimal(38,18) | | | second_transition_year_payment_weight | decimal(38,18) | | | second_transition_year_payment | decimal(38,18) | | | third_transition_year_payment_weight | decimal(38,18) | | | third_transition_year_payment | decimal(38,18) | | | notes | string | | | dra_cap_flag | 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 | | Tools that read it: medicare_allowed Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_asc_addendum WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_asc_addendum")` first. # CMS Clinical Laboratory Fee Schedule national limitation amounts, quarterly releases 2019-2026, stamped `medicare_silver.fact_clfs_national_rate` · Medicare Advantage, Part D, Medicaid · status live · 55,116 rows Every quarterly CLFS release since 2019 re-collected through the provenance envelope on 2026-09-07: indicator and national_limit_amount as published, modifier rows kept (the legacy medicare_clfs_rates held a single release, 2025 Q1, unmodified rows only). The 2019 files come from CMS's old Downloads path; 2023Q4 and later sit behind the AMA CPT click-through license, accepted openly with the license page kept in bronze. CPT descriptors are not stored. release = the publisher slug (e.g. 26clabq3); 20clabq2 is a publisher gap (the release page names a file CMS no longer serves). **Grain.** One row per calendar_year x quarter x HCPCS x modifier as published; natural key (calendar_year, quarter, row_seq); 55,116 rows over 29 releases (2019Q1-2026Q3) on 2026-09-07. | column | type | meaning | |---|---|---| | calendar_year | int | | | quarter | string | | | row_seq | bigint | | | hcpcs_code | string | | | modifier | string | | | effective_date | string | | | indicator | string | | | national_limit_amount | double | | | release | 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 | | Tools that read it: medicare_allowed Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_clfs_national_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_clfs_national_rate")` first. # Medicare CLFS preliminary CY2027 rates (PAMA weighted medians, raw vs trimmed, capped) `medicare_silver.fact_clfs_preliminary_rate` · Medicare Advantage, Part D, Medicaid · status live · 1,924 rows CMS's preliminary CY2027 Clinical Laboratory Fee Schedule per code: the 2026 CLFS rate, the raw and trimmed private-payor weighted medians, the percent change, the reporting-TIN count (withheld under 10), and the CY2027 rate after the 15% payment-reduction cap. Published 2026-09-21; comment window 30 days; final rates post November 2026 and supersede this edition. **Grain.** One row per HCPCS code in CMS's preliminary CY2027 CLFS rate calculation file (rate_year, hcpcs_code). | column | type | meaning | |---|---|---| | rate_year | int | | | collection_year | int | | | stage | string | | | hcpcs_code | string | | | description | string | | | category | string | | | rate_2026 | double | | | raw_weighted_median | double | | | raw_pct_change | double | | | trimmed_weighted_median | double | | | trimmed_pct_change | double | | | rate_2027_preliminary | double | | | reporting_tins_text | string | | | observed_period | date | | | asserted_at | date | | | source_url | string | | | sha256_content_hash | string | | | source_id | string | | | is_current | boolean | | | vintage_tag | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_clfs_preliminary_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_clfs_preliminary_rate")` first. # Medicare CLFS Private Payer Rates and Volumes (PAMA) `medicare_silver.fact_clfs_private_payer_rate` · Medicare Advantage, Part D, Medicaid · status live · 7,515,432 rows The PAMA "applicable information" — private-payer rates and volumes labs report to CMS, per HCPCS. A RARE public private-rate signal (distinct from the standard CLFS fee schedule `medicare_clfs`). The CMS-computed weighted median of these sets the CLFS; this is the underlying per-observation distribution. **Grain.** One row per reported (collection_year, row_seq) private-payer rate/volume observation, keyed to HCPCS. | column | type | meaning | |---|---|---| | collection_year | int | | | row_seq | bigint | | | hcpcs_cd | string | | | private_payer_rate | double | | | volume_text | 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 medicare_silver.fact_clfs_private_payer_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_clfs_private_payer_rate")` first. # Medicare DME, Devices & Supplies — by Supplier and Service (granular supplier price) `medicare_silver.fact_dme_by_supplier_service` · Medicare Advantage, Part D, Medicaid · status live · 463,784 rows The CMS Medicare DME PUF at the supplier×HCPCS grain: per supplier NPI and HCPCS, the avg submitted charge, Medicare allowed, paid, and standardized amounts + bene/claim/service counts, with RBCS clinical category, specialty, and rental indicator. The granular per-supplier DME price (provider-level counterpart to fact_dme_payment_by_geo). ~464k rows/year, 2014-2023, partition by data_year. **Grain.** One row per (data_year, supplier NPI, HCPCS) — charge/allowed/paid/standardized. | column | type | meaning | |---|---|---| | data_year | int | | | suplr_npi | string | | | last_name_org | string | | | first_name | string | | | entity_code | string | | | state | string | | | zip5 | string | | | ruca_cat | string | | | specialty_desc | string | | | rbcs_desc | string | | | hcpcs_cd | string | | | hcpcs_desc | string | | | rental_ind | string | | | tot_benes | double | | | tot_claims | double | | | tot_services | double | | | avg_submitted_charge | double | | | avg_medicare_allowed | double | | | avg_medicare_payment | double | | | avg_medicare_standardized | 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_dme_by_supplier_service WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_dme_by_supplier_service")` first. # Medicare DME by Geography & Service (avg allowed/payment per HCPCS) `medicare_silver.fact_dme_payment_by_geo` · Medicare Advantage, Part D, Medicaid · status live · 38,675 rows CMS public-use file "Medicare Durable Medical Equipment, Devices & Supplies - by Geography and Service" — annual, claims-derived average Medicare ALLOWED and PAYMENT per DME HCPCS at national + per-state granularity, with submitted charge, standardized payment, and provider/supplier/beneficiary/claim/service counts. This is the pragmatic Medicare DME benchmark for repricing DME claim lines (the lines that had no Medicare anchor). NOTE: it is the claims-derived average, NOT the contractual DMEPOS Fee Schedule price list (a separate quarterly cms.gov ZIP, not yet ingested). **Grain.** One row per (geography [National|State], HCPCS, rental-indicator) per data year. | column | type | meaning | |---|---|---| | data_year | int | | | geo_level | string | | | geo_cd | string | | | geo_desc | string | | | hcpcs_cd | string | | | hcpcs_desc | string | | | rental_ind | string | | | rbcs_id | string | | | rbcs_desc | string | | | tot_rfrg_prvdrs | bigint | | | tot_suplrs | bigint | | | tot_benes | bigint | | | tot_clms | bigint | | | tot_srvcs | double | | | avg_sbmtd_chrg | double | | | avg_mdcr_alowd_amt | double | | | avg_mdcr_pymt_amt | double | | | avg_mdcr_stdzd_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_dme_payment_by_geo WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_dme_payment_by_geo")` first. # Medicare DMEPOS fee schedule, every release October 1998 - October 2026 `medicare_silver.fact_dmepos_fee_schedule` · Medicare Advantage, Part D, Medicaid · status live · 14,503,024 rows Medicare's DMEPOS fee schedule as CMS published it in 95 quarterly and corrective releases: per HCPCS code, modifiers and state, the non-rural fee and (2016 on) rural fee, ceiling, floor, category, jurisdiction and gap-fill indicator. October 2026 (dme26-d): CPAP E0601 rental $50.04 non-rural / $97.02 rural in NY. **Grain.** One row per (release_id, hcpcs, modifier_1, modifier_2, state). | column | type | meaning | |---|---|---| | release_id | string | | | release_order | int | | | effective_start | date | | | source_format | string | | | source_layout | string | | | source_row_number | int | | | fee_schedule_year | int | | | hcpcs | string | | | modifier_1 | string | | | modifier_2 | string | | | jurisdiction | string | | | category | string | | | hcpcs_status | string | | | region | string | | | state | string | | | fee | double | | | fee_status | string | | | rural_fee | double | | | rural_fee_status | string | | | original_base_fee | double | | | ceiling | double | | | floor | double | | | gap_fill_indicator | string | | | pricing_change_indicator | string | | | description | string | | | release_title | 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 medicare_silver.fact_dmepos_fee_schedule WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_dmepos_fee_schedule")` first. # CMS ESRD QIP Total Performance Score (dialysis pay-for-performance) `medicare_silver.fact_esrd_qip` · Medicare Advantage, Part D, Medicaid · status live · 7,558 rows The CMS ESRD Quality Incentive Program Total Performance Score — per dialysis facility the Total Performance Score vs state and national averages, and the resulting payment_reduction_pct (0–2%). The dialysis pay-for-performance / penalty layer (the dialysis counterpart to HVBP/HRRP for hospitals). **Grain.** One row per (payment_year, dialysis facility CCN) — TPS + payment reduction. | column | type | meaning | |---|---|---| | payment_year | int | | | ccn | string | | | facility_name | string | | | alternate_ccn | string | | | state | string | | | zip_code | string | | | network | string | | | total_performance_score | double | | | state_avg_tps | double | | | national_avg_tps | double | | | payment_reduction_pct | 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_esrd_qip WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_esrd_qip")` first. # Facility cost reports — HHA supplies/drugs/devices cost-to-charge rows, stamped `medicare_silver.fact_facility_cost_report_ccr` · Medicare Advantage, Part D, Medicaid · status live · 29,692 rows HHA Worksheet C Part II cost-to-charge rows (medical supplies, vaccines/drugs, administration, covered disposable devices), re-collected through the provenance envelope on 2026-09-07 with the same validation and charge_as_cost rules as the legacy facility_cost_report_ccr. Not a whole-agency ratio. **Grain.** One row per (ccn, fiscal-year-end, HHA Worksheet C Part II line); partitioned by partition_key = hha_. 29,692 rows on 2026-09-07. | column | type | meaning | |---|---|---| | partition_key | string | | | row_seq | bigint | | | facility_type | string | | | ccn | string | | | fy_begin | string | | | fy_end | string | | | fy_year | string | | | status | string | | | rpt_rec_num | string | | | worksheet | string | | | line | string | | | service_category | string | | | revenue_code | string | | | total_cost | string | | | total_charge | string | | | reported_ratio | string | | | computed_ratio | string | | | validation_delta | string | | | validation_ok | string | | | charge_as_cost | string | | | plausible | string | | | source | 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 medicare_silver.fact_facility_cost_report_ccr WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_facility_cost_report_ccr")` first. # Facility cost reports — non-acute unit-cost metrics, stamped (HHA/hospice/ESRD/FQHC/RHC) `medicare_silver.fact_facility_cost_report_unit` · Medicare Advantage, Part D, Medicaid · status live · 1,046,007 rows The non-acute ACTUAL-COST unit lens, re-collected through the provenance envelope on 2026-09-07 (same cells, validation and plausibility rules as the legacy facility_cost_report_unit; every row carries source_url, sha256_content_hash, asserted_at). Use computed_value as the direct unit cost. Do not convert these rows into fake CCRs. **Grain.** One row per (facility_type, ccn, fiscal-year-end, worksheet line/service metric); partitioned by partition_key =
_. 1,046,007 rows on 2026-09-07 across 57 form-years. | column | type | meaning | |---|---|---| | partition_key | string | | | row_seq | bigint | | | facility_type | string | | | ccn | string | | | fy_begin | string | | | fy_end | string | | | fy_year | string | | | status | string | | | rpt_rec_num | string | | | worksheet | string | | | line | string | | | service_category | string | | | revenue_code | string | | | metric_type | string | | | total_cost | string | | | units | string | | | unit_type | string | | | reported_value | string | | | computed_value | string | | | validation_delta | string | | | validation_ok | string | | | plausible | string | | | source | 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 medicare_silver.fact_facility_cost_report_unit WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_facility_cost_report_unit")` first. # CMS FQHC PPS Base Payment Rate `medicare_silver.fact_fqhc_pps_rate` · Medicare Advantage, Part D, Medicaid · status live · 2 rows CMS Federally Qualified Health Center PPS national per-visit base payment rate, extracted from the annual CMS Pricer-update transmittal and anchor-VALIDATED (CY2026 = $207.72). The FQHC repricing base for the FQHCs we roster — adjusted per FQHC by the Geographic Adjustment Factor (derived from the PFS GPCIs we already hold in medicare_gpci_locality) + the new-patient/IPPE/AWV adjustment. CY2025 ($202.65) + CY2026 ($207.72) live. Fifth non-acute repricer; completes the cleanly-sourceable non-acute rate set. **Grain.** One row per calendar_year — the national FQHC PPS per-visit base payment rate. | column | type | meaning | |---|---|---| | calendar_year | int | | | base_payment_rate | 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_fqhc_pps_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_fqhc_pps_rate")` first. # CMS Care Compare HCAHPS — Hospital patient-experience survey `medicare_silver.fact_hcahps` · Medicare Advantage, Part D, Medicaid · status live · 4,208,689 rows The HCAHPS hospital patient-experience survey (CMS Care Compare): one long-format row per hospital CCN and HCAHPS measure for each reporting_year, carrying patient-survey star rating, answer percent, linear-mean value, completed surveys, and response rate. **Grain.** One row per (reporting_year, CCN × HCAHPS measure) — long-format measure row; writer key (reporting_year,row_seq). | column | type | meaning | |---|---|---| | reporting_year | int | | | row_seq | bigint | | | ccn | string | | | facility_name | string | | | state | string | | | zip_code | string | | | county | string | | | hcahps_measure_id | string | | | hcahps_question | string | | | hcahps_answer_description | string | | | start_date | string | | | end_date | string | | | star_rating | double | | | answer_percent | double | | | linear_mean_value | double | | | completed_surveys | double | | | response_rate_percent | 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 | | Tools that read it: get_hospital_quality Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_hcahps WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hcahps")` first. # CMS Home Health PDGM Case-Mix Weights `medicare_silver.fact_hh_pdgm_weight` · Medicare Advantage, Part D, Medicaid · status live · 432 rows CMS Home Health Patient-Driven Groupings Model (PDGM) case-mix table — per HIPPS code (432): clinical group + admission source/timing + comorbidity adjustment, the recalibrated case-mix WEIGHT, and the LUPA visit threshold. Sourced from the CMS Home Health PPS Case-Mix Weights zip (clean XLSX) and anchor-VALIDATED (HIPPS 1FC11 = 1.0804). Reprices HH 30-day periods for the 23k+ HHAs we roster (dim_hha): payment ~= 30-day base rate x recalibrated_weight x wage index. CY2026 live. Third full non-acute repricer. **Grain.** One row per (calendar_year, HIPPS) — recalibrated PDGM case-mix weight + LUPA threshold. | column | type | meaning | |---|---|---| | calendar_year | int | | | hipps | string | | | clinical_group_timing | string | | | admission_source_timing | string | | | comorbidity_adjustment | string | | | recalibrated_weight | double | | | lupa_threshold | 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_hh_pdgm_weight WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hh_pdgm_weight")` first. # CMS Care Compare Home Health Agencies — per-agency quality `medicare_silver.fact_home_health_quality` · Medicare Advantage, Part D, Medicaid · status live · 12,392 rows CMS Care Compare Home Health Agencies (wide per-agency): identity + ownership + service-offering flags + patient-care star rating + key quality-measure rates + DTC/PPR/PPH risk-standardized rates + Medicare spending ratio. The home-health quality comparability dimension. ~12.4k agencies, curated ~30 of 96 columns. **Grain.** One row per (reporting_year, home-health agency CCN) — star rating, measure rates, DTC/PPR/PPH, spending. | column | type | meaning | |---|---|---| | reporting_year | int | | | row_seq | bigint | | | ccn | string | | | provider_name | string | | | state | string | | | zip_code | string | | | type_of_ownership | string | | | certification_date | string | | | offers_nursing | string | | | offers_physical_therapy | string | | | offers_occupational_therapy | string | | | offers_speech_pathology | string | | | offers_medical_social | string | | | offers_home_health_aide | string | | | dtc_performance | string | | | ppr_performance | string | | | pph_performance | string | | | quality_star_rating | double | | | timely_care | double | | | flu_shot | double | | | better_walking | double | | | better_bed | double | | | better_bathing | double | | | breathing_improved | double | | | better_oral_meds | double | | | pressure_ulcer | double | | | med_issues_timely | double | | | falls_major_injury | double | | | discharge_function_score | double | | | transfer_hinfo_provider | double | | | transfer_hinfo_patient | double | | | dtc_risk_std_rate | double | | | ppr_risk_std_rate | double | | | pph_risk_std_rate | double | | | medicare_spending_ratio | 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_home_health_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_home_health_quality")` first. # CMS Hospice PPS Per-Diem Rates (Federal Register final rule) `medicare_silver.fact_hospice_pps_rate` · Medicare Advantage, Part D, Medicaid · status live · 164 rows CMS Hospice PPS per-diem payment rates, extracted from CMS transmittals and Federal Register final-rule tables: Routine Home Care, Continuous Home Care (+ hourly), Inpatient Respite Care, General Inpatient Care — full rates + reduced rates for hospices not meeting quality reporting. The hospice repricing benchmark for the 9k+ hospices we roster (dim_hospice); wage index applies by CBSA on top. Each load is VALIDATED against the rule's stated rate. FY2005-FY2026 are live and proven: FY2005-FY2013 standard pre-HQRP CMS transmittal years, FY2014-FY2015 legacy single-RHC years, FY2016's exact Oct-Dec single-RHC plus Jan-Sep two-tier transition, and FY2017-FY2026 modern two-tier-RHC years. **Grain.** One row per (fiscal_year, quality_compliant, level_of_care) — hospice per-diem rate. | column | type | meaning | |---|---|---| | fiscal_year | int | | | quality_compliant | boolean | | | level_of_care | string | | | revenue_code | string | | | level_description | string | | | base_rate | double | | | final_rate | double | | | hourly_rate | 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_hospice_pps_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hospice_pps_rate")` first. # CMS Care Compare Hospice provider-quality measures `medicare_silver.fact_hospice_quality` · Medicare Advantage, Part D, Medicaid · status live · 459,084 rows CMS Care Compare hospice provider-quality (long format): per hospice (CCN) × quality measure code/name → score (+ footnote). The post-acute (hospice) quality comparability dimension, alongside hospital quality / HCAHPS / SNF. ~459k rows, partition by reporting_year. **Grain.** One row per (reporting_year, hospice CCN × measure code) — quality score. | column | type | meaning | |---|---|---| | reporting_year | int | | | row_seq | bigint | | | ccn | string | | | facility_name | string | | | state | string | | | zip_code | string | | | county | string | | | cms_region | string | | | measure_code | string | | | measure_name | string | | | footnote | string | | | score | 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_hospice_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hospice_quality")` first. # Medicare Inpatient Hospitals — by Provider and Service (granular DRG price) `medicare_silver.fact_inpatient_by_provider_service` · Medicare Advantage, Part D, Medicaid · status live · 2,451,944 rows The CMS Medicare Inpatient Hospitals PUF at the provider×DRG grain: per hospital (CCN) and MS-DRG, total discharges, average submitted covered charge, average total payment, and average Medicare payment. The granular per-hospital inpatient price (provider-level counterpart to fact_inpatient_payment_by_geo). FY2011-FY2024 are loaded; FY2011-FY2013 are the CMS top-100-DRG era, while FY2014+ are broader all-DRG files. **Grain.** One row per (data_year, hospital CCN, MS-DRG) — discharges + charge + payments. | column | type | meaning | |---|---|---| | data_year | int | | | ccn | string | | | org_name | string | | | state | string | | | zip5 | string | | | ruca | string | | | drg_cd | string | | | drg_desc | string | | | tot_discharges | double | | | avg_submitted_charge | double | | | avg_total_payment | double | | | avg_medicare_payment | 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_inpatient_by_provider_service WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_inpatient_by_provider_service")` first. # Medicare IPPS Base Rate (operating + capital standardized amounts) `medicare_silver.fact_ipps_base_rate` · Medicare Advantage, Part D, Medicaid · status live · 66 rows The CMS IPPS base payment rates per fiscal year: operating standardized amount, capital standardized amount, and labor-related share. The MISSING LEG that makes an ABSOLUTE Medicare inpatient dollar computable — combine with the MS-DRG relative weight (drug_silver.dim_msdrg) and the hospital wage index (vlada/rbp/ref) to localize: payment ≈ base × DRG weight × (labor_share × wage_index + non_labor_share). **Grain.** One row per (fiscal_year, capital_area, rate_context vintage) -- national IPPS standardized base = operating_std_amount + capital_std_amount. DEEP FY2006-2026; select capital_area=national, final_rule (a correction supersedes only when no final rule loaded), as-of fiscal year. The shallow dim_ipps_base_rate is deprecated. | column | type | meaning | |---|---|---| | fiscal_year | int | | | rate_context | string | | | wage_index_regime | string | | | operating_std_amount | decimal(38,12) | | | capital_std_amount | decimal(38,12) | | | labor_share | decimal(38,12) | | | labor_amount | decimal(38,12) | | | nonlabor_amount | decimal(38,12) | | | operating_totals_match | boolean | | | source_member | string | | | sheet_name | string | | | table_1a_label | string | | | table_1b_label | string | | | source_note | string | | | capital_area | 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 medicare_silver.fact_ipps_base_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ipps_base_rate")` first. # Medicare IPPS Wage Index (geographic wage adjustment) `medicare_silver.fact_ipps_wage_index` · Medicare Advantage, Part D, Medicaid · status live · 84,746 rows The CMS IPPS Wage Index with Cap (FY2026), per hospital CCN — the geographic labor-cost adjustment factor used to localize the inpatient operating payment to a hospital's labor market. Bundled as a reference CSV and consumed directly by the RBP pricing engine (wage_index_for(ccn)); it is the wage-localization leg the dim_msdrg entry flags as "not loaded" for absolute IPPS dollars — this is where it lives. **Grain.** One row per (fiscal_year, hospital CCN) -- IPPS wage index (with cap) for inpatient localization. DEEP FY2006-2026. | column | type | meaning | |---|---|---| | fiscal_year | int | | | ccn | string | | | wage_index | decimal(38,12) | | | geographic_cbsa | string | | | county_fips | string | | | wage_index_prior_to_cap | decimal(38,12) | | | source_member | string | | | source_sheet | string | | | source_row_number | int | | | source_note | string | | | rate_context | string | | | source_column_index | int | | | source_column_label | 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 medicare_silver.fact_ipps_wage_index WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ipps_wage_index")` first. # CMS IRF PPS CMG Relative Weights (rule data files) `medicare_silver.fact_irf_pps_cmg_weight` · Medicare Advantage, Part D, Medicaid · status live · 8,443 rows CMS Inpatient Rehabilitation Facility PPS case-mix table — per Case-Mix Group (CMG) x comorbidity tier (1/2/3/none): the relative weight, average length of stay, and the official IRF standard payment conversion factor. Sourced from annual IRF PPS rule data files and FY2006 CMS-1290-F Table 4, anchor-VALIDATED against published weights. Reprices IRF claims for the 666 IRFs we roster (dim_irf): payment ~= std_payment_amount x relative_weight x wage index x adjustments. Source-truth coverage is FY2006-FY2026 after the 2026-07-05 effective-period replay, FY2014 recovery, and FY2006 Table 4 recovery. **Grain.** One row per (fiscal_year, effective_period_start, effective_period_end, CMG, comorbidity tier) — relative weight + ALOS + standard payment amount. | column | type | meaning | |---|---|---| | fiscal_year | int | | | cmg | string | | | tier | string | | | cmg_description | string | | | relative_weight | double | | | avg_los | double | | | std_payment_amount | 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_irf_pps_cmg_weight WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_irf_pps_cmg_weight")` first. # CMS LTCH PPS MS-LTC-DRG Relative Weights (Table 11) `medicare_silver.fact_ltch_pps_drg_weight` · Medicare Advantage, Part D, Medicaid · status live · 772 rows CMS Long-Term Care Hospital PPS MS-LTC-DRG case-mix table (Table 11) — per MS-LTC-DRG: the relative weight, geometric average length of stay, and the short-stay-outlier threshold. The LTCH repricing case-mix table for the 655 LTCHs we roster (dim_ltch): payment = relative_weight x LTCH standard federal rate x wage index. Sourced from the CMS-1833-F MS-LTC-DRG File zip (clean XLSX) and anchor-VALIDATED (DRG 003 = 3.644). FY2026 live (772 DRGs). Seventh non-acute repricer — COMPLETES the non-acute PPS rate family (SNF/HH/IRF/LTCH/hospice/ ESRD-base/FQHC + ambulance). **Grain.** One row per (fiscal_year, MS-LTC-DRG) — relative weight + geometric LOS + short-stay-outlier threshold. | column | type | meaning | |---|---|---| | fiscal_year | int | | | ms_ltc_drg | string | | | drg_title | string | | | relative_weight | double | | | geometric_avg_los | double | | | short_stay_outlier_threshold | 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_ltch_pps_drg_weight WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ltch_pps_drg_weight")` first. # MA Claims Processing Contacts, 2011-2026 `medicare_silver.fact_ma_claims_processing_contact` · Medicare Advantage, Part D, Medicaid · status live · 50,450 rows For every MA, cost, PACE and demo contract, the claims-processing contact CMS publishes (title, name, phone, fax, email, address, last update) with the contract's names, parent and types. 2026-09: 923 contracts. **Grain.** One row per contract per edition. | column | type | meaning | |---|---|---| | report_month | date | | | edition | string | | | row_seq | int | | | contract_id | string | | | contract_effective_date | date | | | claims_contact_last_update | date | | | source_member | string | | | source_member_sha256 | string | | | capture_origin | string | | | captured_at | string | | | wayback_raw_url | string | | | legal_entity_name | string | | | organization_marketing_name | string | | | parent_organization | string | | | organization_type | string | | | plan_type | string | | | contract_effective_date_raw | string | | | claims_contact_title | string | | | claims_contact_last_name | string | | | claims_contact_first_name | string | | | claims_contact_middle_initial | string | | | claims_contact_phone | string | | | claims_contact_phone_ext | string | | | claims_contact_fax | string | | | claims_contact_email | string | | | claims_contact_street_address | string | | | claims_contact_street_address2 | string | | | claims_contact_city | string | | | claims_contact_state | string | | | claims_contact_zip | string | | | claims_contact_last_update_raw | 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 medicare_silver.fact_ma_claims_processing_contact WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_claims_processing_contact")` first. # Medicare Advantage Geographic Variation, national and state, 2016-2023 `medicare_silver.fact_ma_geographic_variation` · Medicare Advantage, Part D, Medicaid · status live · 432 rows MA enrollees' demographics and service use per state and nationally per year, 2016-2023, from encounter data: users, share of enrollees (a proportion 0-1) and stays / days / events per 1,000 for 15 service types. 2023 national: 31,848,969 full-year MA enrollees, 13.29% with an inpatient stay, 205.16 stays per 1,000. **Grain.** One row per (year, state, bene_geo_cd) per release; is_current marks the newest release. | column | type | meaning | |---|---|---| | publisher_version | string | | | year | int | | | bene_geo_lvl | string | | | state | string | | | bene_geo_cd | string | | | benes_ma_cnt | bigint | | | bene_avg_age | double | | | bene_feml_pct | double | | | bene_male_pct | double | | | bene_race_wht_pct | double | | | bene_race_black_pct | double | | | bene_race_hspnc_pct | double | | | bene_race_othr_pct | double | | | bene_dual_pct | double | | | benes_ip_stay_cnt | bigint | | | benes_ip_pct | double | | | ip_stays_per_1000_benes | double | | | ip_days_per_1000_benes | double | | | benes_irf_cnt | bigint | | | benes_irf_pct | double | | | irf_stays_per_1000_benes | double | | | irf_days_per_1000_benes | double | | | benes_ltc_cnt | bigint | | | benes_ltc_pct | double | | | ltc_stays_per_1000_benes | double | | | ltc_days_per_1000_benes | double | | | benes_snf_cnt | bigint | | | benes_snf_pct | double | | | snf_stays_per_1000_benes | double | | | snf_days_per_1000_benes | double | | | benes_em_cnt | bigint | | | benes_em_pct | double | | | em_events_per_1000_benes | double | | | benes_prcdrs_cnt | bigint | | | benes_prcdrs_pct | double | | | prcdrs_events_per_1000_benes | double | | | benes_tests_cnt | bigint | | | benes_tests_pct | double | | | tests_events_per_1000_benes | double | | | benes_imgng_cnt | bigint | | | benes_imgng_pct | double | | | imgng_events_per_1000_benes | double | | | benes_dme_cnt | bigint | | | benes_dme_pct | double | | | dme_events_per_1000_benes | double | | | benes_amblnc_cnt | bigint | | | benes_amblnc_pct | double | | | amblnc_events_per_1000_benes | double | | | benes_trtmnt_cnt | bigint | | | benes_trtmnt_pct | double | | | trtmnt_events_per_1000_benes | double | | | benes_op_dlys_cnt | bigint | | | benes_op_dlys_pct | double | | | op_dlys_visits_per_1000_benes | double | | | benes_fqhc_rhc_cnt | bigint | | | benes_fqhc_rhc_pct | double | | | fqhc_rhc_visits_per_1000_benes | double | | | benes_op_cnt | bigint | | | benes_op_pct | double | | | op_visits_per_1000_benes | double | | | benes_er_visits_cnt | bigint | | | benes_er_visits_pct | double | | | er_visits_per_1000_benes | double | | | suppressed_measure_count | int | | | 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_ma_geographic_variation WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_geographic_variation")` first. # CMS MA / Part D Landscape, every era CY2006-CY2027, stamped `medicare_silver.fact_ma_landscape` · Medicare Advantage, Part D, Medicaid · status live · 1,684,158 rows The CMS Landscape files re-collected through the provenance envelope on 2026-09-07: 38 header signatures across three publisher eras (2006 premium-only; 2007-2024 per-category files; CY2025+ one combined file) resolved by exact header contracts (pipelines/medicare/silver/ma_landscape_contracts.yaml); every row carries source_url, sha256_content_hash, asserted_at. Filter record_family = 'landscape' AND is_current for the plan roster; record_family = 'plan_premium' holds the plan-and-premium files. Column mapping stress-tested (docs/knowledge/recollection/landscape-stress-test-2026-09-06.md); the 2010 MA 'MOOP $3,400' column is the Yes/No flag moop_at_or_below_3400_flag, not an amount. **Grain.** One row per report_year x record_family x category x plan (contract, plan, segment) as published; natural key (report_year, row_seq); 1,684,158 landscape rows + plan-and-premium rows; 78 year x category partitions on 2026-09-07. | column | type | meaning | |---|---|---| | report_year | int | | | row_seq | bigint | | | record_family | string | | | category | string | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | source_member | string | | | source_member_sha256 | string | | | state | string | | | county | string | | | org_name | string | | | plan_name | string | | | plan_type | string | | | snp_indicator | string | | | benefit_type | string | | | consolidated_premium | string | | | part_c_premium | string | | | part_d_premium | string | | | part_d_deductible | string | | | moop_in_network | string | | | overall_star_rating | string | | | part_d_star | string | | | gap_coverage | string | | | sanctioned | string | | | state_name | string | | | us_territory | string | | | org_marketing_name | string | | | parent_org_name | string | | | contract_name | string | | | organization_type | string | | | snp_type | string | | | snp_institutional_type | string | | | snp_institutional_category | string | | | dsnp_integration_status | string | | | dsnp_aip_identifier | string | | | csnp_condition_type | string | | | zero_dollar_cost_sharing_dsnp | string | | | drug_benefit_category | string | | | benefit_type_detail | string | | | part_d_coverage_indicator | string | | | national_pdp | string | | | de_minimis_participant | string | | | part_d_basic_premium_at_or_below_benchmark | string | | | zero_premium_with_full_lis | string | | | lis_auto_enrollment | string | | | tier_without_deductible | string | | | increased_initial_coverage_limit | string | | | part_d_basic_premium | string | | | part_d_supplemental_premium | string | | | part_d_oop_threshold | string | | | lips_amount | string | | | part_c_star | string | | | ma_region_code | string | | | ma_region | string | | | pdp_region_code | string | | | pdp_region | string | | | mmp_start_date | string | | | demo_type | string | | | moop_at_or_below_3400_flag | 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 | | | part_d_lips_cms_pays | string | | | part_d_low_income_beneficiary_premium | string | | | enrollment_capacity_limit_accepted | string | | | enrollment_capacity_limit_amount | string | | | part_d_premium_obligation_75pct_assistance | string | | | part_d_premium_obligation_50pct_assistance | string | | | part_d_premium_obligation_25pct_assistance | string | | | gap_coverage_type | string | | | state_code | string | | | lis_auto_enrollment_all_eras | string | | | drug_benefit_category_all_eras | string | | | drug_benefit_type_all_eras | string | | Tools that read it: get_county_view, get_landscape, get_landscape_benefit_change, get_landscape_exits, get_network_breadth, get_network_groups, get_network_system_change, get_pbp_benefit, get_plan_network Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_ma_landscape WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_landscape")` first. # CMS MA / Part D Landscape, EVERY edition held (Wayback originals + revisions + served copy), one partition per publisher zip `medicare_silver.fact_ma_landscape_edition` · Medicare Advantage, Part D, Medicaid · status live · 6,066,778 rows Sibling of fact_ma_landscape (which holds ONE edition per report_year: the copy CMS serves today, a REVISED bundle for CY2006-CY2025 with the star column re-stamped and sanctioned rows removed). This table holds every edition we have of a year side by side: the original September publication captured from the Wayback Machine (22 zips, CY2021-CY2026, bronze initial_editions/ with SHA-256), each mid-year revision, and the served copy. edition = the publisher zip stem (cy2026-landscape-202509 = the original CY2026 file of Sept 2025; cy2026-landscape-202608 = the Aug 2026 revision; cy2006-cy2025-landscape-files = the served bundle). Same columns as fact_ma_landscape plus edition; strings as published, cast on read. Use for what the market saw on Landscape day and the original-vs-revised diff; use fact_ma_landscape for the single served view. **Grain.** One row per edition x report_year x record_family x category x plan (contract, plan, segment) as published; natural key (edition, report_year, row_seq); 24 editions, 4,034,483 landscape rows (6,066,778 incl. plan-and-premium rows) on 2026-09-08. | column | type | meaning | |---|---|---| | report_year | int | | | row_seq | bigint | | | record_family | string | | | category | string | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | source_member | string | | | source_member_sha256 | string | | | state | string | | | county | string | | | org_name | string | | | plan_name | string | | | plan_type | string | | | snp_indicator | string | | | benefit_type | string | | | consolidated_premium | string | | | part_c_premium | string | | | part_d_premium | string | | | part_d_deductible | string | | | moop_in_network | string | | | overall_star_rating | string | | | part_d_star | string | | | gap_coverage | string | | | sanctioned | string | | | state_name | string | | | us_territory | string | | | org_marketing_name | string | | | parent_org_name | string | | | contract_name | string | | | organization_type | string | | | snp_type | string | | | snp_institutional_type | string | | | snp_institutional_category | string | | | dsnp_integration_status | string | | | dsnp_aip_identifier | string | | | csnp_condition_type | string | | | zero_dollar_cost_sharing_dsnp | string | | | drug_benefit_category | string | | | benefit_type_detail | string | | | part_d_coverage_indicator | string | | | national_pdp | string | | | de_minimis_participant | string | | | part_d_basic_premium_at_or_below_benchmark | string | | | zero_premium_with_full_lis | string | | | lis_auto_enrollment | string | | | tier_without_deductible | string | | | increased_initial_coverage_limit | string | | | part_d_basic_premium | string | | | part_d_supplemental_premium | string | | | part_d_oop_threshold | string | | | lips_amount | string | | | part_c_star | string | | | ma_region_code | string | | | ma_region | string | | | pdp_region_code | string | | | pdp_region | string | | | mmp_start_date | string | | | demo_type | string | | | moop_at_or_below_3400_flag | 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 | | | edition | string | | | part_d_lips_cms_pays | string | | | part_d_low_income_beneficiary_premium | string | | | enrollment_capacity_limit_accepted | string | | | enrollment_capacity_limit_amount | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_ma_landscape_edition WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_landscape_edition")` first. # CMS MA / Part D Medical Loss Ratio public-use files CY2014-CY2023, stamped `medicare_silver.fact_ma_mlr` · Medicare Advantage, Part D, Medicaid · status live · 4,984 rows The MLR public-use files re-collected through the provenance envelope on 2026-09-07 (identical row counts and spot values to the legacy ma_mlr). detail_available = 'true' marks the wide years (2014-2017, 2023) where every MLR report line is published; 2018-2022 carry only adjusted MLR and remittance. Strings; cast on read. **Grain.** One row per contract_year x contract; 4,984 rows over 10 contract years on 2026-09-07. | column | type | meaning | |---|---|---| | contract_year | int | | | contract_id | string | | | source_member | string | | | source_member_sha256 | string | | | organization_name | string | | | adjusted_mlr | string | | | remittance_amount | string | | | detail_available | string | | | total_revenue | string | | | ma_plan_payments | string | | | part_d_direct_subsidy | string | | | part_d_reinsurance_subsidy | string | | | part_d_lipsa | string | | | total_claims | string | | | claims_incurred | string | | | claims_parts_a_b | string | | | claims_supplemental | string | | | claims_part_d_drugs | string | | | lics_amount | string | | | dir_amount | string | | | supp_dental | string | | | supp_vision | string | | | supp_hearing | string | | | supp_transportation | string | | | supp_fitness | string | | | supp_otc | string | | | supp_meals | string | | | total_taxes_and_fees | string | | | total_qi_expenses | string | | | total_non_claims_costs | string | | | member_months | string | | | mlr_numerator | string | | | mlr_denominator | string | | | credibility_member_months | string | | | unadjusted_mlr | string | | | credibility_adjustment | string | | | mlr_standard | string | | | is_credible | string | | | beneficiary_premium_ma | string | | | beneficiary_premium_part_d | string | | | broker_commissions | string | | | direct_sales_salaries | string | | | cost_containment | string | | | other_g_and_a | string | | | qi_improve_health_outcomes | string | | | qi_prevent_readmission | string | | | qi_patient_safety | string | | | qi_wellness | string | | | qi_health_it | string | | | qi_mtm | string | | | qi_fraud_reduction | string | | | supp_worldwide | string | | | supp_remote_access | string | | | supp_foot_care | string | | | supp_acupuncture | string | | | supp_chiropractic | string | | | supp_pers | string | | | supp_health_education | string | | | supp_smoking_cessation | string | | | supp_ssbci | string | | | supp_out_of_network | string | | | supp_other_primarily_health | string | | | tax_federal_income | string | | | tax_state_premium | string | | | tax_state_income | 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 medicare_silver.fact_ma_mlr WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_mlr")` first. # CMS MA / Part D Medical Loss Ratio public-use files CY2014-CY2023, loader revision 2 (every report line) `medicare_silver.fact_ma_mlr_v2` · Medicare Advantage, Part D, Medicaid · status live · 4,984 rows The MLR public-use files re-parsed from the held bytes with loader revision 2: every revision-1 column unchanged plus the 39 MLR report lines revision 1 never mapped (sequestration, premium reductions, risk corridor, reserves, incentive pools, fraud reduction and recoveries, the 2014-2017 Worksheet 2 lines, base credibility factor). detail_available = 'true' marks the wide years (2014-2017, 2023); 2018-2022 carry only adjusted MLR and remittance. Strings; cast on read. get_mlr reads this table from 2026-10-05. **Grain.** One row per contract_year x contract among is_current rows; 4,984 rows over 10 contract years, the served table's rows one for one (Athena 0f0e7cdc). | column | type | meaning | |---|---|---| | contract_year | int | | | contract_id | string | | | source_member | string | | | source_member_sha256 | string | | | organization_name | string | | | adjusted_mlr | string | | | remittance_amount | string | | | detail_available | string | | | total_revenue | string | | | ma_plan_payments | string | | | part_d_direct_subsidy | string | | | part_d_reinsurance_subsidy | string | | | part_d_lipsa | string | | | total_claims | string | | | claims_incurred | string | | | claims_parts_a_b | string | | | claims_supplemental | string | | | claims_part_d_drugs | string | | | lics_amount | string | | | dir_amount | string | | | supp_dental | string | | | supp_vision | string | | | supp_hearing | string | | | supp_transportation | string | | | supp_fitness | string | | | supp_otc | string | | | supp_meals | string | | | total_taxes_and_fees | string | | | total_qi_expenses | string | | | total_non_claims_costs | string | | | member_months | string | | | mlr_numerator | string | | | mlr_denominator | string | | | credibility_member_months | string | | | unadjusted_mlr | string | | | credibility_adjustment | string | | | mlr_standard | string | | | is_credible | string | | | beneficiary_premium_ma | string | | | beneficiary_premium_part_d | string | | | broker_commissions | string | | | direct_sales_salaries | string | | | cost_containment | string | | | other_g_and_a | string | | | qi_improve_health_outcomes | string | | | qi_prevent_readmission | string | | | qi_patient_safety | string | | | qi_wellness | string | | | qi_health_it | string | | | qi_mtm | string | | | qi_fraud_reduction | string | | | supp_worldwide | string | | | supp_remote_access | string | | | supp_foot_care | string | | | supp_acupuncture | string | | | supp_chiropractic | string | | | supp_pers | string | | | supp_health_education | string | | | supp_smoking_cessation | string | | | supp_ssbci | string | | | supp_out_of_network | string | | | supp_other_primarily_health | string | | | tax_federal_income | string | | | tax_state_premium | string | | | tax_state_income | string | | | ma_sequestration_adjustment | string | | | part_d_sequestration_adjustment | string | | | ma_rebate_part_b_premium_reduction | string | | | ma_rebate_part_d_premium_reduction | string | | | msa_enrollee_deposit | string | | | part_d_risk_corridor | string | | | supp_other_non_primarily_health | string | | | claims_liability_reserves | string | | | incentive_pools_paid | string | | | incentive_pools_accrued | string | | | contingent_benefit_reserves | string | | | claims_ma_rebate_part_b_premium_reduction | string | | | claims_msa_enrollee_deposit | string | | | fraud_reduction_expense_total | string | | | fraud_recoveries | string | | | part_d_claims_included | string | | | tax_other_federal | string | | | tax_community_benefit | string | | | regulatory_fees | string | | | aca_9010_fee | string | | | qi_icd10 | string | | | other_claims_adjustment_expenses | string | | | taxes_not_excluded_from_revenue | string | | | regulatory_fines_penalties | string | | | non_claims_community_benefit | string | | | icd10_implementation_expenses | string | | | egwp_allocation_method | string | | | egwp_allocation_pct | string | | | ws2_claims | string | | | ws2_qi_expenses | string | | | ws2_revenue | string | | | ws2_taxes_and_fees | string | | | credibility_table | string | | | base_credibility_factor | string | | | msa_deductible_factor | string | | | ws2_credibility_adjustment_4_2 | string | | | subject_to_remittance | string | | | ws2_adjusted_mlr_5_3 | string | | | ws2_mlr_denominator_5_4 | 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 medicare_silver.fact_ma_mlr_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_mlr_v2")` first. # MA and Part D Ad-Hoc Corrective Action Plans, 2014-2026 `medicare_silver.fact_ma_part_d_corrective_action_plan` · Medicare Advantage, Part D, Medicaid · status live · 67,206 rows Every Ad-Hoc CAP CMS issued to an MA or Part D sponsor, one row per contract named, per monthly edition: compliance issue id, letter date, issue type, topic, summary, parent and contact. 1,408 CAPs; since 2025, 94 Drug Benefit, 84 Health Benefit, 9 both. **Grain.** One row per contract per compliance issue per edition; is_current marks each issue's newest edition. | column | type | meaning | |---|---|---| | edition | string | | | report_month | date | | | row_seq | int | | | issue_row_seq | int | | | compliance_issue_id | string | | | contract_id | string | | | contract_name | string | | | contracts_on_issue | int | | | all_contracts_terminated | boolean | | | date_letter_sent | date | | | report_created_raw | string | | | source_member | string | | | source_member_sha256 | string | | | capture_origin | string | | | captured_at | string | | | wayback_raw_url | string | | | contracts_raw | string | | | parent_organization | string | | | organization_contact_name | string | | | organization_contact_phone | string | | | compliance_issue_id_raw | string | | | date_letter_sent_raw | string | | | issue_type | string | | | issue_topic | string | | | issue_summary | string | | | letter_name | 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 medicare_silver.fact_ma_part_d_corrective_action_plan WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_part_d_corrective_action_plan")` first. # CMS MA and Part D warning letters, September 2024 - September 2026 `medicare_silver.fact_ma_part_d_warning_letter` · Medicare Advantage, Part D, Medicaid · status live · 3,079 rows Every warning letter CMS issued to an MA or Part D sponsor since September 2024, one row per contract named, per monthly edition: compliance issue id, date sent, issue type, topic, summary, parent and contact. 195 letters (115 Drug Benefit, 60 Health and Drug, 20 Health Benefit) to 2026-05-15. **Grain.** One row per contract per warning letter per monthly edition; is_current marks each letter's newest edition. | column | type | meaning | |---|---|---| | edition | string | | | report_month | date | | | row_seq | int | | | issue_row_seq | int | | | compliance_issue_id | string | | | contract_id | string | | | contract_name | string | | | contracts_on_issue | int | | | all_contracts_terminated | boolean | | | date_letter_sent | date | | | report_created_raw | string | | | summary_format | string | | | source_member | string | | | source_member_sha256 | string | | | contracts_raw | string | | | parent_organization | string | | | organization_contact_name | string | | | organization_contact_phone | string | | | compliance_issue_id_raw | string | | | date_letter_sent_raw | string | | | issue_type | string | | | issue_topic | string | | | issue_summary | string | | | letter_name | string | | | type_of_action | string | | | contract_plan_type | string | | | contract_count_raw | string | | | csv_issue_topic | 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 medicare_silver.fact_ma_part_d_warning_letter WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ma_part_d_warning_letter")` first. # CMS Market Saturation & Utilization (provider competition by county × service) `medicare_silver.fact_market_saturation` · Medicare Advantage, Part D, Medicaid · status live · 2,455,330 rows The CMS Market Saturation & Utilization file — per rolling reference period, service type, and county: number of FFS beneficiaries, number of providers, number of users, average users-per-provider, average providers-per-county, dual-eligible user counts/percentages, and total payment. The provider COMPETITION / market-concentration signal (high providers-per-county = saturated; used to flag over/under-supply). Curated subset of the dashboard file (drops *_dual_color / *_description / *_change rendering columns). **Grain.** One row per (reference_period, type_of_service, aggregation_level, state_fips, county_fips) — providers/users/payment. | column | type | meaning | |---|---|---| | reference_period | string | | | type_of_service | string | | | aggregation_level | string | | | state | string | | | county | string | | | state_fips | string | | | county_fips | string | | | moratorium | string | | | n_ffs_beneficiaries | double | | | n_providers | double | | | avg_users_per_provider | double | | | pct_users_of_ffs | double | | | n_users | double | | | avg_providers_per_county | double | | | n_dual_eligible_users | double | | | pct_dual_of_total_users | double | | | pct_dual_of_dual_ffs | double | | | total_payment | 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_market_saturation WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_market_saturation")` first. # CMS Medicaid/CHIP Child and Adult Core Set State Quality `medicare_silver.fact_medicaid_core_set_quality` · Medicare Advantage, Part D, Medicaid · status live · 31,344 rows State-level performance rates and comparison benchmarks for CMS Medicaid and CHIP Child and Adult Core Set measures, preserving populations, methodologies, suppression statuses, notes, state comments, and source lineage. **Grain.** One publisher row per reporting year, state, reporting program, measure/rate definition, population, and methodology. | column | type | meaning | |---|---|---| | source_row_number | int | | | reporting_year | int | | | state_code | string | | | state_name_raw | string | | | domain | string | | | reporting_program | string | | | measure_name | string | | | measure_abbreviation | string | | | measure_type | string | | | rate_definition | string | | | population | string | | | methodology | string | | | state_rate_raw | string | | | state_rate_numeric | double | | | state_rate_status | string | | | number_states_reporting_raw | string | | | number_states_reporting | int | | | mean_raw | string | | | mean_numeric | double | | | median_raw | string | | | median_numeric | double | | | bottom_quartile_raw | string | | | bottom_quartile_numeric | double | | | top_quartile_raw | string | | | top_quartile_numeric | double | | | notes | string | | | source_description | string | | | state_specific_comments | string | | | benchmark_used_raw | string | | | benchmark_used | boolean | | | semantic_row_sha256 | string | | | publisher_dataset_id | string | | | publisher_modified_date | date | | | publisher_schema_era | 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 medicare_silver.fact_medicaid_core_set_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_medicaid_core_set_quality")` first. # CMS Medicaid Managed Care (utilization by MCO × county) `medicare_silver.fact_medicaid_managed_care` · Medicare Advantage, Part D, Medicaid · status live · 19,559 rows CMS Medicaid Managed Care utilization — per state, county, managed-care organization, and service category: active patients, eligible MCO patients, providers, % of eligible receiving services, services per active patient. The Medicaid MCO access/utilization lens (note: Medicaid managed-care utilization, not medical rates — those remain unavailable). **Grain.** One row per (calendar_year, state, county, MCO, service category). | column | type | meaning | |---|---|---| | calendar_year | int | | | state | string | | | county | string | | | mco_name | string | | | service_category | string | | | plan_category | string | | | n_active_patients | double | | | n_eligible_patients | double | | | n_providers | double | | | pct_eligible_receiving | double | | | services_per_active_patient | double | | | active_patients_per_provider | 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 | | Tools that read it: get_medicaid_mco_enrollment Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_medicaid_managed_care WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_medicaid_managed_care")` first. # CMS Medicare Geographic Variation (per-capita cost + utilization by geography) `medicare_silver.fact_medicare_geo_variation` · Medicare Advantage, Part D, Medicaid · status live · 37,000 rows The CMS Medicare Geographic Variation PUF — Medicare FFS standardized per-capita cost and utilization by geography and year (National / State / County), curated to the high-value subset: population + demographics, total standardized per-capita payment, per-service-category standardized per-capita cost (IP, OP, ASC, SNF, HH, hospice, E&M, procedures, tests, imaging, DME, FQHC/RHC, ambulance), and key utilization (IP stays /1,000, readmission %, ER visits /1,000, imaging events /1,000). THE medical geographic-variation benchmark — how Medicare spend per beneficiary varies by market (the cost counterpart to the drug geo-variation we already had). **Grain.** One row per (year, bene_geo_level, bene_geo_code, bene_age_level) — National/State/County. | column | type | meaning | |---|---|---| | year | int | | | bene_geo_level | string | | | bene_geo_desc | string | | | bene_geo_code | string | | | bene_age_level | string | | | benes_total_cnt | double | | | benes_ffs_cnt | double | | | benes_ma_cnt | double | | | ma_participation_rate | double | | | bene_avg_age | double | | | bene_female_pct | double | | | bene_dual_pct | double | | | tot_mdcr_pymt_pc | double | | | tot_mdcr_stdzd_pymt_pc | double | | | acute_readmission_pct | double | | | er_visits_per_1000 | double | | | ip_stdzd_pymt_pc | double | | | ip_stays_per_1000 | double | | | op_stdzd_pymt_pc | double | | | op_visits_per_1000 | double | | | asc_stdzd_pymt_pc | double | | | snf_stdzd_pymt_pc | double | | | snf_stays_per_1000 | double | | | hh_stdzd_pymt_pc | double | | | hospice_stdzd_pymt_pc | double | | | em_stdzd_pymt_pc | double | | | procedures_stdzd_pymt_pc | double | | | tests_stdzd_pymt_pc | double | | | imaging_stdzd_pymt_pc | double | | | imaging_events_per_1000 | double | | | dme_stdzd_pymt_pc | double | | | fqhc_rhc_stdzd_pymt_pc | double | | | ambulance_stdzd_pymt_pc | 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_medicare_geo_variation WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_medicare_geo_variation")` first. # Medicare Monthly Enrollment (national, state, county), 2013-2026 `medicare_silver.fact_medicare_monthly_enrollment` · Medicare Advantage, Part D, Medicaid · status live · 583,780 rows Medicare beneficiaries by county, state and nation, monthly from 2013-01 (plus person-year rows): total, Original Medicare vs MA and other plans, aged / disabled / ESRD, demographics, dual status and Part D. January 2026 national: 70,290,546 beneficiaries, 35,705,175 in MA and other plans. **Grain.** One row per (release, year, month, bene_geo_lvl, bene_state_abrvtn, bene_fips_cd). | column | type | meaning | |---|---|---| | year | int | | | month | string | | | month_num | int | | | period_type | string | | | period_start | date | | | bene_geo_lvl | string | | | bene_state_abrvtn | string | | | bene_state_desc | string | | | bene_county_desc | string | | | bene_fips_cd | string | | | tot_benes | bigint | | | orgnl_mdcr_benes | bigint | | | ma_and_oth_benes | bigint | | | aged_tot_benes | bigint | | | aged_esrd_benes | bigint | | | aged_no_esrd_benes | bigint | | | dsbld_tot_benes | bigint | | | dsbld_esrd_and_esrd_only_benes | bigint | | | dsbld_no_esrd_benes | bigint | | | male_tot_benes | bigint | | | female_tot_benes | bigint | | | white_tot_benes | bigint | | | black_tot_benes | bigint | | | api_tot_benes | bigint | | | hspnc_tot_benes | bigint | | | natind_tot_benes | bigint | | | othr_tot_benes | bigint | | | age_lt_25_benes | bigint | | | age_25_to_44_benes | bigint | | | age_45_to_64_benes | bigint | | | age_65_to_69_benes | bigint | | | age_70_to_74_benes | bigint | | | age_75_to_79_benes | bigint | | | age_80_to_84_benes | bigint | | | age_85_to_89_benes | bigint | | | age_90_to_94_benes | bigint | | | age_gt_94_benes | bigint | | | dual_tot_benes | bigint | | | full_dual_tot_benes | bigint | | | part_dual_tot_benes | bigint | | | nodual_tot_benes | bigint | | | qmb_only_benes | bigint | | | qmb_plus_benes | bigint | | | slmb_only_benes | bigint | | | slmb_plus_benes | bigint | | | qdwi_qi_benes | bigint | | | othr_full_dual_mdcd_benes | bigint | | | a_b_tot_benes | bigint | | | a_b_orgnl_mdcr_benes | bigint | | | a_b_ma_and_oth_benes | bigint | | | a_tot_benes | bigint | | | a_orgnl_mdcr_benes | bigint | | | a_ma_and_oth_benes | bigint | | | b_tot_benes | bigint | | | b_orgnl_mdcr_benes | bigint | | | b_ma_and_oth_benes | bigint | | | prscrptn_drug_tot_benes | bigint | | | prscrptn_drug_pdp_benes | bigint | | | prscrptn_drug_mapd_benes | bigint | | | prscrptn_drug_deemed_eligible_full_lis_benes | bigint | | | prscrptn_drug_full_lis_benes | bigint | | | prscrptn_drug_partial_lis_benes | bigint | | | prscrptn_drug_no_lis_benes | bigint | | | suppressed_measure_count | int | | | 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_medicare_monthly_enrollment WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_medicare_monthly_enrollment")` first. # MSSP ACO performance year financial and quality results, PY2013-PY2024 `medicare_silver.fact_mssp_aco_performance_cell` · Medicare Advantage, Part D, Medicaid · status live · 878,574 rows Every Shared Savings Program ACO's annual reconciliation as CMS published it, one row per cell: assigned beneficiaries, benchmark and actual expenditures, savings rate, earned shared savings or losses, quality score, risk scores and per-capita spending by enrollment type. PY2024: 476 ACOs, $4.12B earned shared savings, 10.3M assigned beneficiaries. **Grain.** One row per ACO per published column per publisher_version (cell grain); is_current marks the served version. | column | type | meaning | |---|---|---| | publisher_version | string | | | performance_year | int | | | performance_period | string | | | aco_id | string | | | aco_id_scheme | string | | | aco_name | string | | | source_row_number | int | | | field_order | int | | | field_name | string | | | field_variable | string | | | field_mapping | string | | | field_term | string | | | dictionary_id | string | | | value_kind | string | | | value_text | string | | | value_status | string | | | value_numeric | double | | | value_date | date | | | rate_scale | string | | | value_rate_pct | 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_mssp_aco_performance_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_mssp_aco_performance_cell")` first. # MSSP county expenditure and risk of assignable beneficiaries, CY2019-2025 `medicare_silver.fact_mssp_county_expenditure_risk` · Medicare Advantage, Part D, Medicaid · status live · 45,154 rows Per county, per SSP file: per-capita Parts A and B FFS expenditure, average CMS-HCC prospective and demographic risk score and person-years of assignable beneficiaries, by ESRD, disabled, aged/dual, aged/non-dual. The FFS cost and risk of a county: the other side of the MA benchmark. **Grain.** One row per (publisher_version, state_id, county_id) per release. | column | type | meaning | |---|---|---| | publisher_version | string | | | year | int | | | assignment_window | string | | | agreement_start_cohort | string | | | state_name | string | | | county_name | string | | | state_id | int | | | county_id | int | | | county_ssa | string | | | per_capita_exp_esrd | double | | | avg_risk_score_esrd | double | | | avg_demog_score_esrd | double | | | person_years_esrd | double | | | per_capita_exp_dis | double | | | avg_risk_score_dis | double | | | avg_demog_score_dis | double | | | person_years_dis | double | | | per_capita_exp_agdu | double | | | avg_risk_score_agdu | double | | | avg_demog_score_agdu | double | | | person_years_agdu | double | | | per_capita_exp_agnd | double | | | avg_risk_score_agnd | double | | | avg_demog_score_agnd | double | | | person_years_agnd | double | | | esrd_status | string | | | dis_status | string | | | agdu_status | string | | | agnd_status | 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 medicare_silver.fact_mssp_county_expenditure_risk WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_mssp_county_expenditure_risk")` first. # CMS Care Compare Nursing Home (Provider Information) — 5-star quality `medicare_silver.fact_nursing_home_quality` · Medicare Advantage, Part D, Medicaid · status live · 14,695 rows CMS Care Compare Nursing Home Provider Information (wide per-facility): the 5-star ratings (overall / health-inspection / QM / long+short-stay / staffing), certified beds, ownership + chain, staffing hours-per-resident-per-day + turnover, deficiency/fine/penalty counts + geo. The nursing-home quality comparability dimension. ~14.7k facilities, curated ~45 of 99 columns. **Grain.** One row per (reporting_year, nursing-home CCN) — 5-star ratings, beds, staffing, deficiencies. | column | type | meaning | |---|---|---| | reporting_year | int | | | row_seq | bigint | | | ccn | string | | | provider_name | string | | | state | string | | | zip_code | string | | | county | string | | | urban | string | | | ownership_type | string | | | provider_type | string | | | resides_in_hospital | string | | | legal_business_name | string | | | date_first_approved | string | | | chain_name | string | | | chain_id | string | | | continuing_care_retirement_community | string | | | special_focus_status | string | | | abuse_icon | string | | | changed_ownership_12mo | string | | | sprinkler_all_required | string | | | certified_beds | double | | | avg_residents_per_day | double | | | facilities_in_chain | double | | | chain_avg_overall_5star | double | | | chain_avg_health_inspection | double | | | chain_avg_staffing | double | | | chain_avg_qm | double | | | overall_rating | double | | | health_inspection_rating | double | | | qm_rating | double | | | long_stay_qm_rating | double | | | short_stay_qm_rating | double | | | staffing_rating | double | | | nurse_aide_hprd | double | | | lpn_hprd | double | | | rn_hprd | double | | | licensed_hprd | double | | | total_nurse_hprd | double | | | weekend_total_nurse_hprd | double | | | rn_weekend_hprd | double | | | total_nursing_turnover | double | | | rn_turnover | double | | | administrators_left | double | | | total_weighted_health_survey_score | double | | | infection_control_citations | double | | | number_of_fines | double | | | total_fines_dollars | double | | | payment_denials | double | | | total_penalties | double | | | latitude | double | | | longitude | 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_nursing_home_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_nursing_home_quality")` first. # Medicare Plan Finder Online Enrollment Center requests, monthly, 2014-2026 `medicare_silver.fact_oec_monthly_enrollment` · Medicare Advantage, Part D, Medicaid · status live · 205 rows National monthly count of enrollment requests completed through the Medicare Plan Finder Online Enrollment Center: total, PDP and MA, since 2014-12. 2026-08: 120,591 requests (24,424 MA, 96,167 PDP); 2025 total 3,298,042 (789,036 MA). **Grain.** One row per (edition, data_month); is_current marks each data month's newest edition. | column | type | meaning | |---|---|---| | edition | string | | | edition_through_month | date | | | data_month | date | | | month_raw | string | | | publisher_era | string | | | source_member | string | | | source_member_sha256 | string | | | capture_origin | string | | | captured_at | string | | | wayback_raw_url | string | | | total_enrollments | bigint | | | total_enrollments_raw | string | | | pdp_enrollments | bigint | | | pdp_enrollments_raw | string | | | ma_enrollments | bigint | | | ma_enrollments_raw | string | | | ytd_total_enrollments | bigint | | | ytd_total_enrollments_raw | string | | | ytd_pdp_enrollments | bigint | | | ytd_pdp_enrollments_raw | string | | | ytd_ma_enrollments | bigint | | | ytd_ma_enrollments_raw | 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 medicare_silver.fact_oec_monthly_enrollment WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_oec_monthly_enrollment")` first. # 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. # Medicare Outpatient Hospitals — by Provider and Service (granular APC price) `medicare_silver.fact_outpatient_by_provider_service` · Medicare Advantage, Part D, Medicaid · status live · 1,008,975 rows The CMS Medicare Outpatient Hospitals PUF at the provider×APC grain: per hospital (CCN) and comprehensive APC, beneficiary/service counts plus average submitted charge, Medicare allowed, Medicare paid, and outlier amounts. The complete official C-APC series is loaded for 2015-2024 at 1,008,975 rows. This is a claims-derived provider benchmark, not the contractual OPPS fee schedule. **Grain.** One row per (data_year, hospital CCN, APC) — bene/services + charge + Medicare allowed/paid + outlier. | column | type | meaning | |---|---|---| | data_year | int | | | ccn | string | | | org_name | string | | | state | string | | | zip5 | string | | | ruca | string | | | apc_cd | string | | | apc_desc | string | | | bene_cnt | double | | | capc_services | double | | | avg_submitted_charge | double | | | avg_medicare_allowed | double | | | avg_medicare_payment | double | | | outlier_services | double | | | avg_medicare_outlier | 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_outpatient_by_provider_service WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_outpatient_by_provider_service")` first. # CMS PFS Geographic Practice Cost Indices by locality, every RVU release CY2017-2026, stamped `medicare_silver.fact_pfs_gpci_locality` · Medicare Advantage, Part D, Medicaid · status live · 1,111 rows The GPCI member of each CMS PFS RVU release ZIP (RVU17D..RVU26C) re-collected through the provenance envelope on 2026-09-07: work_gpci, pe_gpci, mp_gpci as published, with state, carrier_number, locality_number, locality_name. CY2003-2016 (the dual-carrier era, where (calendar_year, state, locality_number) is not unique) is loadable at source grain with --include-gated-gpci and is not loaded by default. Succeeds medicare_gpci_locality (one CY2025 RDS snapshot). **Grain.** One row per source row of one RVU release's GPCI file (calendar_year x MAC/carrier x locality); natural key (release_label, row_seq); partitioned by release_label. | column | type | meaning | |---|---|---| | release_label | string | | | row_seq | bigint | | | calendar_year | int | | | state | string | | | carrier_number | string | | | locality_number | string | | | locality_name | string | | | work_gpci | double | | | pe_gpci | double | | | mp_gpci | double | | | source_member | string | | | source_row_seq | 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_pfs_gpci_locality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_pfs_gpci_locality")` first. # CMS PFS locality configuration (LOCCO), every RVU release CY2003-2026, stamped `medicare_silver.fact_pfs_locality_config` · Medicare Advantage, Part D, Medicaid · status live · 2,381 rows The LOCCO member of each CMS PFS RVU release ZIP (RVU03D..RVU26C) re-collected through the provenance envelope on 2026-09-07: state, state_name, carrier_number, locality_number, locality_name (fee schedule area) and the publisher's Counties text. It maps county groups to Medicare payment localities and MACs per year; it is NOT a county-FIPS crosswalk (LOCCO publishes text, not FIPS). Succeeds medicare_county_to_locality (one CY2025 RDS snapshot). **Grain.** One row per source row of one RVU release's LOCCO file (calendar_year x MAC/carrier x locality x official Counties text) after exact duplicate source rows are dropped; natural key (release_label, row_seq). | column | type | meaning | |---|---|---| | release_label | string | | | row_seq | bigint | | | calendar_year | int | | | state | string | | | state_name | string | | | carrier_number | string | | | locality_number | string | | | locality_name | string | | | county_name | string | | | source_member | string | | | source_row_seq | 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_pfs_locality_config WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_pfs_locality_config")` first. # Medicare Physician Fee Schedule (PFS) `medicare_silver.fact_pfs_rvu` · Medicare Advantage, Part D, Medicaid · status live · 642,307 rows The universal benchmark denominator for the commercial-to-Medicare ratio ("is this rate fair?"). National payment is DERIVED (fact_pfs_rvu stores components, not precomputed totals): office = total_non_facility_rvu*conversion_factor, facility = total_facility_rvu*conversion_factor. MATCH MODIFIER vs commercial (26 read / TC technical / global = NULL). No locality column; join medicare_gpci_locality / medicare_zip5_locality for a locality-adjusted rate. **Grain.** One row per (hcpcs_code, modifier, calendar_year) -- CMS PFS RVU components (work/PE/MP RVUs + conversion_factor). DEEP CY2003-2026. Filter conversion_factor BETWEEN 20 AND 50. RBP prices at the claim service year (as-of). The shallow medicare_physician_fee_schedule is the deprecated recent-years RDS mirror. | column | type | meaning | |---|---|---| | calendar_year | int | | | hcpcs_code | string | | | modifier | string | | | status_code | string | | | code_description | string | | | work_rvu | decimal(38,12) | | | non_facility_pe_rvu | decimal(38,12) | | | facility_pe_rvu | decimal(38,12) | | | mp_rvu | decimal(38,12) | | | total_non_facility_rvu | decimal(38,12) | | | total_facility_rvu | decimal(38,12) | | | conversion_factor | decimal(38,12) | | | global_period | string | | | pre_service_time | decimal(38,12) | | | intra_service_time | decimal(38,12) | | | post_service_time | decimal(38,12) | | | mult_proc_indicator | string | | | bilateral_surgery_indicator | string | | | assistant_surgery_indicator | string | | | co_surgeon_indicator | string | | | team_surgery_indicator | string | | | pc_tc_indicator | string | | | diagnostic_imaging_family | string | | | physician_supervision_indicator | string | | | endo_base_code | 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_pfs_rvu WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_pfs_rvu")` first. # Medicare Physician & Other Practitioners — by Provider and Service (granular price) `medicare_silver.fact_physician_by_provider_service` · Medicare Advantage, Part D, Medicaid · status live · 116,297,407 rows The CMS Medicare Physician & Other Practitioners PUF at the **provider×service** grain: per rendering NPI, HCPCS, and place of service, the average submitted charge, **Medicare allowed**, Medicare paid, and standardized amounts, plus beneficiary/service counts. The GRANULAR per-provider price — the provider-level counterpart to the geo benchmark (`fact_physician_payment_by_geo`). ~9.8M rows/year, partitioned by data_year (2013-2024 available). **Grain.** One row per (data_year, rendering NPI, HCPCS, place of service) — charge/allowed/paid. | column | type | meaning | |---|---|---| | data_year | int | | | rndrng_npi | string | | | last_org_name | string | | | first_name | string | | | credentials | string | | | entity_code | string | | | state | string | | | zip5 | string | | | ruca | string | | | provider_type | string | | | participating_ind | string | | | hcpcs_cd | string | | | hcpcs_desc | string | | | hcpcs_drug_ind | string | | | place_of_service | string | | | tot_benes | double | | | tot_services | double | | | tot_bene_day_services | double | | | avg_submitted_charge | double | | | avg_medicare_allowed | double | | | avg_medicare_payment | double | | | avg_medicare_standardized | 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_physician_by_provider_service WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_physician_by_provider_service")` first. # Medicare Physician & Other Practitioners by Geography (avg allowed/payment per HCPCS) `medicare_silver.fact_physician_payment_by_geo` · Medicare Advantage, Part D, Medicaid · status live · 268,350 rows CMS public-use file "Medicare Physician & Other Practitioners - by Geography and Service" — annual, claims-derived average Medicare ALLOWED and PAYMENT per professional HCPCS at national + per-state granularity, split by place-of-service (F = facility, O = office/non-facility), with submitted charge, standardized payment, and provider/beneficiary/service counts. The Medicare benchmark for repricing PROFESSIONAL (physician / NPP) claim lines — the largest claim category, where geographic (GPCI) variation matters. Complements the contractual national medicare_physician_fee_schedule with geographic + actual-allowed detail. **Grain.** One row per (geography [National|State], HCPCS, place-of-service) per data year. | column | type | meaning | |---|---|---| | data_year | int | | | geo_level | string | | | geo_cd | string | | | geo_desc | string | | | hcpcs_cd | string | | | hcpcs_desc | string | | | hcpcs_drug_ind | string | | | place_of_srvc | string | | | tot_rndrng_prvdrs | bigint | | | tot_benes | bigint | | | tot_srvcs | double | | | tot_bene_day_srvcs | double | | | avg_sbmtd_chrg | double | | | avg_mdcr_alowd_amt | double | | | avg_mdcr_pymt_amt | double | | | avg_mdcr_stdzd_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_physician_payment_by_geo WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_physician_payment_by_geo")` first. # MA and PDP Plan Directories (contract roster), 2007-2026 `medicare_silver.fact_plan_directory_contract` · Medicare Advantage, Part D, Medicaid · status live · 59,963 rows CMS's monthly contract roster: every MA, cost, PACE, MSA, PFFS, demo and LI NET contract (directory 'ma') and every PDP contract ('pdp'), with legal entity, parent organization, org and plan type, tax status, region, enrollment, address and directory contact. 2026-09: 923 MA and 48 PDP contracts. **Grain.** One row per contract per edition (an edition = one distinct data member, by SHA-256, of one directory for one report month). | column | type | meaning | |---|---|---| | directory | string | | | report_month | date | | | edition | string | | | row_seq | int | | | contract_id | string | | | enrollment_count | int | | | contract_effective_date | date | | | source_member | string | | | source_member_sha256 | string | | | capture_origin | string | | | captured_at | string | | | wayback_raw_url | string | | | legal_entity_name | string | | | organization_marketing_name | string | | | organization_type | string | | | plan_type | string | | | contract_effective_date_raw | string | | | tax_status | string | | | parent_organization | string | | | cms_region_responsible | string | | | enrollment_raw | string | | | legal_entity_street | string | | | legal_entity_street2 | string | | | legal_entity_city | string | | | legal_entity_state_code | string | | | legal_entity_zip | string | | | directory_contact_title | string | | | directory_contact_last_name | string | | | directory_contact_first_name | string | | | directory_contact_middle_initial | string | | | directory_contact_phone | string | | | directory_contact_phone_ext | string | | | directory_contact_fax | string | | | directory_contact_email | string | | | directory_contact_street_address | string | | | directory_contact_street_address2 | string | | | directory_contact_city | string | | | directory_contact_state | string | | | directory_contact_zip | string | | | directory_contact_last_update_raw | 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 medicare_silver.fact_plan_directory_contract WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_plan_directory_contract")` first. # Medicare Post-Acute Care Utilization — by Provider (SNF/HHA/Hospice/IRF/LTCH) `medicare_silver.fact_post_acute_utilization` · Medicare Advantage, Part D, Medicaid · status live · 14,214 rows The CMS Medicare Post-Acute Care Utilization PUFs, unified across the five post-acute settings (SNF, HHA, hospice, IRF, LTCH) into one fact partitioned by (setting, year). Per provider: distinct beneficiaries, episodes/stays, service days, total charge, total allowed, total Medicare payment + standardized payment, plus beneficiary mix (dual %, rural %, avg age, avg risk score). The provider-level post-acute utilization + cost layer — completes provider-level coverage alongside physician / inpatient / outpatient / DME by provider. **Grain.** One row per (setting, year, provider, summary/service category) — episodes/days/charge/allowed/payment. | column | type | meaning | |---|---|---| | setting | string | | | year | int | | | year_type | string | | | summary_category | string | | | service_category | string | | | prvdr_id | string | | | prvdr_name | string | | | prvdr_city | string | | | state | string | | | prvdr_zip | string | | | bene_distinct_cnt | double | | | tot_episode_stay_cnt | double | | | tot_service_days | double | | | tot_charge_amt | double | | | tot_allowed_amt | double | | | tot_medicare_payment_amt | double | | | tot_medicare_standardized_amt | double | | | tot_outlier_payment_amt | double | | | bene_dual_pct | double | | | bene_rural_pct | double | | | bene_avg_age | double | | | bene_avg_risk_score | 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_post_acute_utilization WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_post_acute_utilization")` first. # 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. # CMS Quality Payment Program (QPP/MIPS) Experience — clinician scores `medicare_silver.fact_qpp_experience` · Medicare Advantage, Part D, Medicaid · status live · 503,917 rows The CMS Quality Payment Program Experience file — per clinician (provider key / NPI) the MIPS final score, payment adjustment percentage, and the four category scores (quality, promoting interoperability, improvement activities, cost), plus practice size, specialty, participation option, and small/rural/ HPSA status. The clinician value-based-performance layer. ~500k-1.05M clinicians/year, 2017-2024. Curated ~21-col subset of the 212-col file. **Grain.** One row per (data_year, clinician record) — MIPS final score + category scores + payment adjustment. | column | type | meaning | |---|---|---| | data_year | int | | | row_seq | bigint | | | provider_key | string | | | npi | string | | | practice_state | string | | | practice_size | string | | | clinician_type | string | | | clinician_specialty | string | | | years_in_medicare | string | | | participation_option | string | | | small_practice_status | string | | | rural_status | string | | | hpsa_status | string | | | medicare_patients | double | | | allowed_charges | double | | | services | double | | | final_score | double | | | payment_adjustment_pct | double | | | quality_category_score | double | | | pi_category_score | double | | | ia_category_score | double | | | cost_category_score | 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_qpp_experience WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_qpp_experience")` first. # Medicare Part D Retiree Drug Subsidy sponsors, payment years 2006-2024 `medicare_silver.fact_retiree_drug_subsidy_sponsor` · Medicare Advantage, Part D, Medicaid · status live · 45,769 rows Every employer or union plan sponsor CMS paid the Part D Retiree Drug Subsidy, with the subsidy paid and retirees covered, per payment year 2006-2024. PY2024: 1,081 sponsors, $497.7M paid, 988,527 retirees (2006: 4,220 sponsors, $3.56B). **Grain.** One row per plan sponsor (business name) per payment year. | column | type | meaning | |---|---|---| | payment_year | int | | | business_name | string | | | subsidy_paid | double | | | retiree_count | bigint | | | source_row_number | int | | | header_layout | string | | | file_note | 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 medicare_silver.fact_retiree_drug_subsidy_sponsor WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_retiree_drug_subsidy_sponsor")` first. # CMS SNF PPS PDPM Case-Mix-Adjusted Rates (urban & rural) `medicare_silver.fact_snf_pdpm_rate` · Medicare Advantage, Part D, Medicaid · status live · 350 rows CMS Skilled Nursing Facility PPS PDPM case-mix-adjusted federal rates by fiscal year and urban/rural setting. The complete PDPM program era FY2020-FY2026 is live: FY2020-FY2022 are SHA-locked Federal Register final-rule tables and FY2023-FY2026 are CMS 508 CSV ZIPs. Each year has the 25-row A-Y wide grid for PT, OT, SLP, Nursing, and NTA CMIs and adjusted component rates. **Grain.** One row per (fiscal_year, urban_rural, PDPM grid row) — PT/OT/SLP/Nursing/NTA CMIs + component rates. | column | type | meaning | |---|---|---| | fiscal_year | int | | | urban_rural | string | | | row_seq | bigint | | | pdpm_group | string | | | nursing_cmg | string | | | pt_cmi | double | | | pt_component_rate | double | | | ot_cmi | double | | | ot_component_rate | double | | | slp_cmi | double | | | slp_component_rate | double | | | nursing_cmi | double | | | nursing_component_rate | double | | | nta_cmi | double | | | nta_component_rate | 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_snf_pdpm_rate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_snf_pdpm_rate")` first. # HCPCS/CPT -> HCRIS cost-center crosswalk (the precision layer) `medicare_silver.hcpcs_cost_center_crosswalk` · Medicare Advantage, Part D, Medicaid · status live · 28,328 rows The map that makes cost-based pricing accurate: each billing code -> the cost center where a hospital accumulates that service's cost (CT, MRI, Lab, OR, Clinic, ...). Derived from a 1.8-billion-row EMPIRICAL bridge (the modal UB-04 revenue code hospitals actually billed each code under, from our MRF) mapped through the authoritative CMS revenue-code -> cost-center spine, then adversarially validated by a sub-agent fleet (2,805 high-value codes). Join hcpcs -> cost_center_line, then use hospital_cost_report_dept for that center's CCR. **Grain.** One row per HCPCS/CPT code. 28,328 codes -> their HCRIS 2552-10 Worksheet C cost center, so a code can be priced on the RIGHT department cost-to-charge ratio. | column | type | meaning | |---|---|---| | hcpcs | string | | | cost_center_line | string | | | cost_center_label | string | | | modal_rc | string | | | modal_share | string | | | rc_support_rows | string | | | method | string | | | confidence | string | | | is_em_professional | string | | | fleet_validated | string | | | validation_note | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hcpcs_cost_center_crosswalk WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hcpcs_cost_center_crosswalk")` first. # MA hedis hos frm `medicare_silver.hedis_hos_frm` · Medicare Advantage, Part D, Medicaid · status live One row per (contract, year). Health Outcomes Survey: Falls Risk Management. Two rates: (rate1) Talking with Doctor about Falling or Balance Problems, (rate2) Receiving Fall Risk Reduction Recommendation. ~600 rows per year. **Grain.** One row per Medicare Advantage contract per report year. Verified: 3,207 rows = 3,207 distinct (contract_id, report_year) combinations. Each contract has exactly one row per year (max 1 plan_name and 1 source file per contract-year), covering 6 report years (2019, 2021-2025; 2020 absent because CMS suspended HEDIS reporting for measurement year 2020 during COVID). **How to use it.** "SELECT contract_id, plan_name_raw, rate1, rate2 FROM medicare_silver.hedis_hos_frm WHERE report_year = 2025 ORDER BY rate2 DESC" answers: for the 2025 reporting year, which MA contracts have the highest share of members who received a fall-prevention recommendation (rate2) and discussed falls with their doctor (rate1) — a quality-benchmark ranking of plans on the HOS Falls Risk Management measure. To trend a single plan over time, drop the year filter and add 'WHERE contract_id = ' a specific contract and 'ORDER BY report_year'. Join to medicare_silver.hedis_general or Stars tables on (contract_id, report_year) to pull plan-type/enrollment/Star-rating context. **Traps.** - NOT a cost/price table despite living in a US-healthcare-COST catalog. 'rate1' and 'rate2' are patient-reported survey PERCENTAGES (0-100, fall-prevention process measures), not dollars, not negotiated rates. Its value to a cost catalog is indirect: it's a Star-Ratings quality input, and Stars drive MA plan quality-bonus payments — so it informs plan-quality/payment context, not procedure prices. - The minimal grain is just (contract_id, report_year) = 3,207 rows. The profiler reported a 4-column key (adding plan_name_raw + effective_period_start + observed_period) but those three are redundant: observed_period/effective_period_start are collinear with report_year, and plan_name_raw is functionally determined within a contract-year. Don't add them to a join/dedup key. - contract_id is NOT unique on its own (735 distinct vs 3,207 rows — same contract recurs each year) and plan_name_raw is unstable (one contract can carry up to 4 different printed names across years; many contracts share a parent name). Key on contract_id, never on plan_name_raw. - Year 2020 is legitimately absent (CMS suspended HEDIS/HOS reporting for measurement year 2020 due to COVID) — do not treat the 2019->2021 gap as a missing load or pipeline error. - Nulls carry meaning and rate2 is null far more than rate1 (443 vs 56, ~14% vs ~2%, rising in recent years) due to CMS small-denominator suppression. A row with rate1 present but rate2 null means the contract reported but the second indicator was suppressed — not zero, not missing data. rate2 is always >= rate1 when both present (0 inversions). - No snapshot/version churn and no is_current column: cms_vintage_sequence, parse_revision, and asserted_at are all single-valued constants (1, 1, 2026-05-15) across every row, and there's exactly one source SHA per year. This is one clean historical load — no de-dup-to-latest step is needed, unlike point-in-time tables in this catalog. - Sibling-table confusion: this is specifically the FRM (Falls Risk Management) HOS sheet. medicare_silver has parallel HOS tables hedis_hos_mui (Management of Urinary Incontinence, 3 rates, 2021+), hedis_hos_pao (Physical Activity, 2 rates), and hedis_hos_oto (one rate, 2019+2021 only) with the SAME (contract_id, report_year) grain and identical-looking rate1/rate2 columns — the rate columns mean DIFFERENT clinical things per table. Some scout docs label the siblings with '(?)' guesses; FRM's two indicators (talking-to-doctor / receiving-recommendation) are the confirmed meanings here per the parser config. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract number, the natural key. 735 distinct. Format = 1 letter + 4 digits: 'H' = HMO/local-PPO/MA-EGHP (~92%), 'R' = regional PPO (~8%). No 'S' (standalone PDP) contracts — correct, since HOS is a medical-survey measure with no drug-only plans. Joins to other medicare_silver HEDIS tables (hedis_general, hedis_measures, hedis_service_area) and to Stars contract data on contract_id + report_year. | | plan_name_raw | string | Sponsoring organization / plan name exactly as printed in the CMS file (e.g. 'BLUE CROSS AND BLUE SHIELD OF ALABAMA', 'WELLCARE OF MISSISSIPPI, INC.'). 635 distinct, uppercase, un-normalized ('_raw'). NOT a grain key and NOT stable: a single contract_id can show up to 4 different names across years (rebrands/legal-name changes), and many distinct contracts share the same parent-org name. Always key on contract_id, treat plan_name_raw as a display label. | | rate1 | double | HOS Falls Risk Management measure, indicator 1: percent of survey-eligible members who reported TALKING WITH THEIR DOCTOR about a fall or balance/walking problem. A 0-100 percentage (verified 0 out of bounds; observed range ~12.4-56.7, mean ~26%). Nullable: 56 rows null (small-sample/suppressed by CMS). This is a patient-reported quality rate, not a price. | | rate2 | double | HOS Falls Risk Management measure, indicator 2: percent of members who reported RECEIVING A RECOMMENDATION / fall-prevention intervention from their provider. 0-100 percentage (verified in bounds; range ~27-92, mean ~56%). Always >= rate1 (2,764 of 2,764 non-null-pair rows; 0 inversions). Heavily nullable — 443 rows null (14%), increasing in recent years (e.g. 131 null in 2023) due to CMS small-denominator suppression. A null rate2 with a present rate1 is meaningful: the contract reported but the second indicator was suppressed. | | report_year | int | HEDIS reporting year (the year the PUF labels the data). int. 6 values: 2019, 2021, 2022, 2023, 2024, 2025. 2020 is genuinely missing (COVID HEDIS suspension), not a load gap. Part of the grain. Row counts grow over time (417 in 2019 -> 609 in 2025) as MA enrollment/contract count grows. | | observed_period | date | Jan 1 of report_year (date). Audit/temporal-anchor column stamped by the loader, perfectly collinear with report_year — adds no grain. e.g. report_year 2024 -> 2024-01-01. | | asserted_at | date | Ingest/load date — when Vlada parsed and wrote the row. Constant 2026-05-15 across ALL 3,207 rows (single bulk historical load). Provenance only; does NOT vary by report_year and is not a snapshot/version axis here. | | effective_period_start | date | Jan 1 of report_year (date). Loader-stamped period bound; collinear with report_year. The profiler's temporal column. | | effective_period_end | date | Dec 31 of report_year (date). Loader-stamped period bound; collinear with report_year (e.g. 2024 -> 2024-12-31). | | cms_vintage_sequence | int | Intended version axis for re-released CMS files. Constant = 1 for every row — only one CMS vintage of each year has been ingested, so this never disambiguates rows today. Reserved for future restatements. | | parse_revision | int | Vlada parser revision number. Constant = 1 for every row. Provenance/lineage; no current distinguishing value. | | parser_artifact_hash | string | SHA-256 of the parser code artifact that produced the row (lineage). 6 distinct values — one per report_year's parse run (same parser, per-run artifact). Not a data field. | | source_url | string | CMS download URL of the source ZIP, one per year. e.g. https://www.cms.gov/files/zip/ma-hedis-pufs-2024.zip (2019 uses the differently-named hedis-ma-puf-2019.zip). 6 distinct, perfectly 1:1 with report_year. Provenance. | | sha256_content_hash | string | SHA-256 of the source file content (the HEDIS PUF ZIP/sheet). 6 distinct — exactly one per report_year, confirming a single source file backs each year. Use for source-integrity / dedup verification, not as a row key. | Tools that read it: get_hos Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_hos_frm WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_hos_frm")` first. # MA hedis hos mui `medicare_silver.hedis_hos_mui` · Medicare Advantage, Part D, Medicaid · status live One row per (contract, year). HOS Management of Urinary Incontinence. Three rates (rate1, rate2, rate3). Published 2021+ only. **Grain.** One row per Medicare Advantage contract per reporting year — i.e. one row per (contract_id, report_year). Verified minimal: COUNT(*) = 2,790 = COUNT(DISTINCT contract_id, report_year), with 0 duplicate (contract_id, report_year) pairs. contract_id is unique within any single year (475-609 contracts/year, no intra-year dups). **How to use it.** Trend the Stars 'Improving Bladder Control' rate for a contract: SELECT report_year, plan_name_raw, rate3 FROM medicare_silver.hedis_hos_mui WHERE contract_id='H0104' ORDER BY report_year — returns BCBS Alabama's Star-reported MUI treatment rate per year (11.05, 16.67, 13.5, 9.0, 12.04 for 2021-2025), one row per year. Join on contract_id to MA Star Ratings / enrollment to correlate plan quality with size or premium. **Traps.** - NOT a cost/price table. For a healthcare-COST catalog this is the odd one out: rate1/rate2/rate3 are HEDIS-HOS quality percentages (urinary-incontinence management among members 65+), not dollars or negotiated rates. Use it as a plan-QUALITY signal to pair with MA Star Ratings, not for any cost figure. - The three rate columns are POSITIONAL and the source file does NOT label them. The CMS PUF sheet headers are literally the generic strings 'rate1','rate2','rate3' (confirmed in the parser fixture) — they carry no inline description. Meaning comes from external HOS Volume-6 methodology: by value (rate1 mean 60% >= rate2 45% >= rate3 15%, strict ordering holds in all non-null rows) the low rate3 is the Stars-reported 'Treatment of Urinary Incontinence' / 'Improving Bladder Control' (C16) rate. Do not assume the precise rate1/rate2 sub-definitions from the column name alone. - FOUR columns redundantly encode the same calendar year: report_year, observed_period (Jan 1), effective_period_start (Jan 1), effective_period_end (Dec 31) are all 1:1 (verified aligned in all 2,790 rows). The grain needs only report_year; the date columns add nothing analytically. (This is why the profiler reported a 4-column key — it was a superset.) - plan_name_raw is NOT a key and is dirty. It changes for the same contract across years (rebrands, M&A, and verbatim CMS typos like 'HIGHMARK WESTER AND NORTHEASTER NEW YORK'). That is exactly why (contract_id, plan_name_raw) = 811 exceeds the 704 distinct contracts. Always key on contract_id, never on the name; resolve identity via a clean contract dimension. - NULL rates mean 'not reported / suppressed' (small denominator), not zero. ~749 rows (27%) have all three rates NULL, and they cluster: rates are almost always all-three-present or all-three-absent together. Suppression varies by year (9-35% all-null), so a year-over-year contract panel is unbalanced — filter rate1 IS NOT NULL before averaging. - No snapshot/is_current dedup exists or is needed: cms_vintage_sequence and parse_revision are uniformly 1 (no CMS re-release or re-parse yet), and asserted_at is a single constant (2026-05-15, one bulk ingest). One source file per year (one sha256_content_hash, one source_url each). The 2020 year is intentionally ABSENT (CMS publication gap) and the MUI sheet did not exist before 2021 — so history starts at 2021, not earlier like sibling sheets hedis_hos_frm/pao (which include 2019). - Sibling-table caveat: this is one of several HOS sheets (hedis_hos_frm = 2 falls rates, hedis_hos_oto, hedis_hos_pao = 2 physical-activity rates). They share the same (contract_id, report_year) grain and rate1/rate2 naming but measure DIFFERENT things and have different year coverage (oto = 2019/2021 only). Don't confuse hedis_hos_mui's rates with the falls (frm) or physical-activity (pao) rates. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (e.g. 'H0104', 'R5342'). Prefix encodes contract type: H = local MA/HMO-PPO (2,655 rows / 676 contracts), R = Regional PPO (135 rows / 28 contracts). NO 'S' (standalone Part D) contracts — HOS is MA-only. 704 distinct contracts across all years; unique WITHIN any single report_year (verified 0 intra-year dups). This is the join key to every other contract-level Medicare table (Stars, enrollment, hedis_general, etc.). | | plan_name_raw | string | Parent organization / plan-marketing name as printed in the PUF (e.g. 'BLUE CROSS AND BLUE SHIELD OF ALABAMA'). RAW and UNCLEANED — varies for the SAME contract across years due to rebranding, acquisitions, and CMS typos (e.g. H5526 appears as 'HEALTHNOW NEW YORK', 'HIGHMARK WESTERN AND NORTHEASTERN NEW YORK', and the misspelled 'HIGHMARK WESTER AND NORTHEASTER NEW YORK'). 603 distinct names; (contract_id, plan_name_raw) = 811 > 704 contracts precisely because of this cross-year name drift. A descriptive attribute, NOT part of the key. | | rate1 | double | First of three HEDIS-HOS MUI rates, a PERCENTAGE (verified 0-100; observed 41.82-87.07, mean 59.6). Survey-derived performance rate for the Management of Urinary Incontinence measure among Medicare members 65+ who reported urine leakage in the past 6 months. The HIGHEST of the three rates (rate1 >= rate2 >= rate3 in 2022/2022 non-null rows). Per HOS Vol-6 methodology this is the broadest 'Discussing Urinary Incontinence' rate, BUT the PUF file labels the column only as 'rate1' (no inline descriptive label) — see gotchas. NULL = not reported (suppressed / small denominator). | | rate2 | double | Second MUI rate, percentage (verified 0-100; observed 27.64-71.55, mean 45.1). Middle of the three rates. Per HOS methodology corresponds to the 'Receiving Treatment for Urinary Incontinence' rate, but the source labels it only 'rate2'. NULL = not reported. | | rate3 | double | Third MUI rate, percentage (verified 0-100; observed 3.39-47.53, mean 15.2 — much LOWER than rate1/rate2). The LOWEST of the three. This corresponds to the narrow 'Treatment of Urinary Incontinence' rate that is THE ONE reported to CMS Star Ratings as the 'Improving Bladder Control' (C16) measure (higher = better). Source labels it only 'rate3'. NULL = not reported. | | report_year | int | Measurement / reporting year, int (2021-2025). THE time dimension and the second half of the grain key. Equals the HEDIS PUF release year. observed_period, effective_period_start, effective_period_end are all 1:1 redundant encodings of this (verified: all 2790 rows have report_year = year() of all three date columns). | | observed_period | date | Date = Jan 1 of report_year (e.g. 2023-01-01). Redundant with report_year. Per grain registry 'effective_period_convention: equals_observed' — the observed period equals the effective period. Audit/era column stamped by the runner, not from the source row. | | asserted_at | date | Ingestion date — when Vlada parsed/asserted this row. CONSTANT 2026-05-15 for the entire table (single bulk ingestion of all 5 years). A provenance/bitemporal column, not analytical. | | effective_period_start | date | Date = Jan 1 of report_year. Start of the calendar year the rates describe. Redundant with report_year / observed_period (verified aligned in all rows). | | effective_period_end | date | Date = Dec 31 of report_year. End of the calendar year. Redundant with report_year (verified). | | cms_vintage_sequence | int | Versioning counter for CMS re-releases of the same year's PUF. Currently = 1 for ALL rows (no year has been re-vintaged). Would increment if CMS republished a corrected file for an existing year. | | parse_revision | int | Versioning counter for Vlada re-parses of the same source file. Currently = 1 for ALL rows. Would increment if the parser were re-run with fixes. Together (cms_vintage_sequence, parse_revision) form the bitemporal version; both being uniformly 1 is WHY (contract_id, report_year) is unique with no is_current dedup needed. | | parser_artifact_hash | string | SHA-256 of the parser code artifact that produced the row. One distinct value PER report_year (5 total) — code provenance for reproducibility. | | source_url | string | CMS download URL of the source ZIP, exactly one per year: https://www.cms.gov/files/zip/ma-hedis-pufs-{YEAR}.zip (the MA HEDIS Public Use File). 5 distinct values. | | sha256_content_hash | string | SHA-256 of the raw source-file CONTENT. Exactly one distinct hash per report_year (5 total) — confirms one source file per year and lets you detect if CMS silently changed a file. Lineage anchor. | Tools that read it: get_hos Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_hos_mui WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_hos_mui")` first. # MA hedis hos oto `medicare_silver.hedis_hos_oto` · Medicare Advantage, Part D, Medicaid · status live One row per (contract, year). 3-column HOS sheet. Single rate column. Published 2019 and 2021 only; absent 2022+ (CMS appears to have renamed/retired in favor of hedishos_mui). **Grain.** One row per Medicare Advantage contract per HEDIS report year. The minimal verified key is (contract_id, report_year) — within any single year contract_id alone is unique (2019: 417/417 distinct, 2021: 475/475 distinct), and across the whole table contract_id || report_year yields 892 distinct = the full 892 rows. plan_name_raw, observed_period, effective_period_start, and effective_period_end are all functionally determined by (contract_id, report_year) and add nothing to the key (the profiler's 4-column grain is a non-minimal superset). Total 892 rows = 417 (report_year 2019) + 475 (report_year 2021). **How to use it.** SELECT contract_id, plan_name_raw, report_year, rate FROM medicare_silver.hedis_hos_oto WHERE rate IS NOT NULL ORDER BY contract_id, report_year — gives each MA plan's osteoporosis-testing quality rate for 2019 and 2021, letting you rank plans on this HEDIS measure or compute the 2019->2021 change (e.g. H0028 rose 74.93 -> 80.21). Join on contract_id to other MA/Stars/HEDIS tables to pair quality with enrollment, benefits, or other measures. **Traps.** - NOT a cost/price table. Despite living in a US-healthcare-COST catalog, 'rate' here is a clinical QUALITY percentage (share of eligible women osteoporosis-tested, 0-100), not a dollar amount, payment rate, or price. Never treat 'rate' as money. - OTO = 'Osteoporosis Testing in Older Women', a HEDIS measure collected via the Medicare Health Outcomes Survey (HOS). The sibling tables hedis_hos_frm (Fall Risk Management), hedis_hos_mui (Management of Urinary Incontinence), and hedis_hos_pao (Physical Activity in Older Adults) are different HOS measures with the same shape — pick by the measure, not by structure. Per Vlada's HEDIS verification ledger this OTO measure was RETIRED after 2021 (replaced in the HOS measure set), which is why the data stops at 2021. - 2020 is genuinely missing, not a load bug: only report_year 2019 (417 rows) and 2021 (475 rows) exist (no 2020 HEDIS PUF was produced). Any year-over-year/trend logic must handle the 2019->2021 gap, not assume consecutive years. - Minimal grain is just (contract_id, report_year) — 2 columns. The profiler's reported 4-column key (contract_id, plan_name_raw, effective_period_start, observed_period) is a valid but non-minimal SUPERSET; plan_name_raw, observed_period, effective_period_start/end are all derivable from (contract_id, report_year). contract_id alone is NOT unique across the table (505 distinct contracts span both years; 387 appear in both, 118 in only one) but IS unique within a single year. - rate IS NULL (46 rows, ~5%) is meaningful, not dirty data: the contract exists but the OTO rate was not reported/was suppressed for that year (e.g. small or special-needs plans). Filter or impute deliberately; the contract+name are still valid. - No snapshot/versioning to dedup: asserted_at, cms_vintage_sequence, and parse_revision are all single-valued (1 distinct each) and there is no is_current column. This is a one-time load of two CMS files — one row per contract-year already, so no is_current filter or latest-snapshot dedup is needed (unlike snapshot-style tables elsewhere in the warehouse). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (H-number, e.g. H0028, H0104). 505 distinct contracts across the table; unique within a single report_year. This is the join key to other MA/Stars/HEDIS tables. NOT plan-benefit-package level — contract level only (no PBP/segment dimension). | | plan_name_raw | string | Raw parent-organization / contract name as printed in the CMS HEDIS PUF (e.g. 'CHA HMO, INC.', 'BLUE CROSS AND BLUE SHIELD OF ALABAMA'). 416 distinct values, 'raw' = uncleaned/unnormalized as-published text. Redundant with contract_id for keying (one name per contract-year); do not use it as a grain column. | | rate | double | The OTO measure result: percent (0-100 scale) of eligible older women in the contract who received osteoporosis testing. Observed range ~42-94, median ~77, mean ~75; 0 negatives, 0 values over 100. 46 of 892 rows (5.2%) are NULL = measure not publicly reported for that contract-year (suppressed small denominator / not collected). This is the single fact/value column of the table; everything else is a key or provenance attribute. | | report_year | int | HEDIS reporting year of the PUF: only 2019 and 2021 exist (2020 is absent — the 2020 HOS/HEDIS PUF was not produced, and this OTO measure was retired after 2021). Part of the minimal grain. Equivalent to observed_period / effective_period_start year. | | observed_period | date | Date stamp for the measurement period, always Jan 1 of the report_year (2019-01-01 or 2021-01-01). A year-as-date encoding; 2 distinct values, redundant with report_year. | | asserted_at | date | Ingestion/load date into Vlada's silver layer — constant 2026-05-15 for every row (cardinality 1). Provenance only; carries no row-level versioning meaning here. | | effective_period_start | date | Start of the period the rate covers: Jan 1 of report_year (2019-01-01 / 2021-01-01). Redundant with report_year/observed_period; the profiler used it as the temporal column. | | effective_period_end | date | End of the covered period: Dec 31 of report_year (2019-12-31 / 2021-12-31). 2 distinct values, fully determined by report_year. | | cms_vintage_sequence | int | Provenance sequence number for the CMS source vintage — constant 1 across all rows. No multiple vintages/re-releases are loaded, so it never disambiguates rows. | | parse_revision | int | Vlada parser revision number — constant 1 across all rows. Provenance only; no second parse revision exists. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row. Two distinct values, one per report_year file (2019 vs 2021 used different parser artifacts). Provenance lineage, not a key. | | source_url | string | Original CMS download URL of the source ZIP. Two values: 2019 -> https://www.cms.gov/files/zip/hedis-ma-puf-2019.zip ; 2021 -> https://www.cms.gov/files/zip/ma-hedis-pufs-2021.zip (note the URL naming convention changed between years). One URL per report_year. | | sha256_content_hash | string | SHA-256 content hash of the raw source file for provenance/integrity. Two distinct values, one per report_year file. Identical hash within a year confirms a single source file backs all that year's rows. | Tools that read it: get_hos Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_hos_oto WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_hos_oto")` first. # MA hedis hos pao `medicare_silver.hedis_hos_pao` · Medicare Advantage, Part D, Medicaid · status live One row per (contract, year). 4-column HOS sheet. Two rates (rate1, rate2). Stable across 2019-2025 (excluding 2020 gap). **Grain.** One row per Medicare Advantage contract per HEDIS report year. Verified: contract_id x report_year yields exactly 3,207 distinct combos = the 3,207 total rows, and within every single report_year the count of rows equals the count of distinct contract_id (0 duplicate excess in 2019/2021/2022/2023/2024/2025). The pipeline that builds this table declares pk_columns=["contract_id","report_year"] and asserts that uniqueness. The profiler's 4-column key (adding plan_name_raw + effective_period_start + observed_period) is a SUPERSET — those extra columns are functionally determined by contract_id+report_year and are not needed to make the row unique. **How to use it.** Trend a single plan's preventive-care quality, or rank plans within a year. Example: SELECT report_year, rate1 AS discussing_pa, rate2 AS advising_pa FROM medicare_silver.hedis_hos_pao WHERE contract_id='H0104' AND rate1 IS NOT NULL ORDER BY report_year; -- shows Blue Cross Blue Shield of Alabama's Physical-Activity-in-Older-Adults discussion/advice rates over time. For a peer benchmark in one year: SELECT contract_id, plan_name_raw, rate1, rate2 FROM medicare_silver.hedis_hos_pao WHERE report_year=2025 AND rate1 IS NOT NULL ORDER BY rate1 DESC. Join to other medicare_silver Star/HEDIS tables on contract_id (+ report_year) to assemble a contract's full quality profile. **Traps.** - NOT a cost/dollar table. 'rate1'/'rate2' are SURVEY PERCENTAGES (0-100 scale, observed 26-79), not prices, dollars, or fee-schedule rates. This is a clinical-quality / Star-ratings input. Do not interpret rate1/rate2 as money or as a commercial-vs-Medicare ratio. - The minimal grain is contract_id + report_year (the build pipeline asserts this PK). The auto-generated catalog card says grain='one row per contract_id', which is WRONG across years (contract_id alone has only 735 distinct vs 3,207 rows because most contracts appear in multiple years). The profiler's reported key (contract_id + plan_name_raw + effective_period_start + observed_period) is a redundant SUPERSET — plan_name_raw, observed_period, and effective_period_start are all functionally determined by contract_id+report_year. - 2020 is MISSING from report_year (sequence is 2019 then jumps to 2021) — HOS reporting was waived for the COVID year. Any year-over-year trend across 2019->2021 spans a 2-year gap; do not assume continuous annual coverage. - NULL rate1/rate2 means the measure was suppressed / not reported for that contract-year (small denominator or non-reporting plans like AIDS Healthcare Foundation and niche SNPs), NOT zero performance. 63 rate1 nulls and 58 rate2 nulls; exclude nulls from averages rather than coalescing to 0. - plan_name_raw is verbatim and un-normalized: one contract_id can carry up to 4 different name spellings across years (rebrands / vendor changes). Join and aggregate on contract_id, never on plan_name_raw. - This is the HOS Physical Activity in Older Adults (PAO) measure ONLY. It has sibling tables in medicare_silver (hedis_hos_frm = Falls Risk Management, hedis_hos_mui = Urinary Incontinence, hedis_hos_oto, hedis_measures = headline HEDIS measures). The two rate columns mean different things in each sibling, so do not pool rate1/rate2 across the hedis_hos_* tables. Single snapshot only (one asserted_at, vintage=1, revision=1) — there is no is_current flag and no superseding versions to dedup. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract identifier (the H/R-number), e.g. 'H0028'. 735 distinct values. All values begin with 'H' (707 contracts, MA/MA-PD) or 'R' (28 contracts, regional PPO); no 'S' (PDP) since HOS surveys MA enrollees. Combined with report_year this is the row key. A single contract_id can appear under multiple plan_name_raw strings across years (vendor name changes / rebrands). | | plan_name_raw | string | Marketing/legal name of the contracting organization as printed in the CMS PUF, e.g. 'BLUE CROSS AND BLUE SHIELD OF ALABAMA', 'WELLCARE OF GEORGIA, INC.' (635 distinct). 'raw' = verbatim, un-normalized. NOT part of the grain — it is an attribute of contract_id and can drift year to year (one contract_id maps to up to 4 different name strings). | | rate1 | double | First PAO sub-measure rate, a survey-based percentage (double). Range observed 33.33-79.40, mean ~55.9, median ~55.8, never exceeds 100. For HOS Physical Activity in Older Adults this is the 'Discussing Physical Activity' rate — % of older enrollees who reported their doctor discussed/talked with them about physical activity. 63 NULLs = measure not reported/suppressed for that contract-year (null means no-data, NOT zero). CMS publishes the column literally headered 'rate1'; the two-rate meaning lives in the PUF documentation, not the data. | | rate2 | double | Second PAO sub-measure rate, survey-based percentage (double). Range 26.00-76.44, mean ~49.9, median ~50.2, never >100. For HOS PAO this is the 'Advising Physical Activity' rate — % who received advice to start/maintain/increase physical activity. Consistently lower than rate1 on average (advising is a stricter step than discussing). 58 NULLs (suppressed/no-data). 58 rows are both-null; only 5 rows have rate1 null while rate2 is present, so partial reporting is rare but exists. | | report_year | int | Integer HEDIS reporting year and the temporal half of the grain. Six values present: 2019, 2021, 2022, 2023, 2024, 2025. 2020 is ABSENT (HOS reporting was waived during COVID). Row counts grow over time: 417 (2019) -> 475 -> 522 -> 579 -> 605 -> 609 (2025) as MA contract count grows. | | observed_period | date | Date = Jan 1 of report_year (the period the survey data describes). 6 distinct values. 100% equal to effective_period_start (redundant with it). Part of the profiler's superset key but not needed for uniqueness. | | asserted_at | date | Provenance: the date Vlada ingested/asserted this snapshot into the silver table. Single value for the entire table: 2026-05-15. Use to know data freshness, not as a row dimension. | | effective_period_start | date | Start of the measurement period = Jan 1 of report_year (e.g. 2025-01-01). This is the profiler's temporal column; earliest 2019-01-01, latest 2025-01-01. Equals observed_period for every row. | | effective_period_end | date | End of the measurement period = Dec 31 of report_year (e.g. 2025-12-31). Together with effective_period_start it brackets the calendar reporting year; fully determined by report_year. | | cms_vintage_sequence | int | Provenance/versioning integer for which CMS release vintage of a given period this is. Constant = 1 for all rows (only the first/initial PUF vintage per year has been loaded; no restated/re-released vintages present). A higher number would indicate a CMS re-release of the same year. | | parse_revision | int | Internal parser revision number for the row. Constant = 1 across the whole table (single parse generation; would bump if the file were re-parsed with new logic). | | parser_artifact_hash | string | SHA-256 of the parser artifact/run that produced the row (code+config provenance). 6 distinct values = one per (year) parse run / source file. Lets you trace exactly which parser build emitted a row. | | source_url | string | CMS download URL of the originating ZIP, one per report_year, e.g. 'https://www.cms.gov/files/zip/ma-hedis-pufs-2025.zip' (2019 uses the older 'hedis-ma-puf-2019.zip' naming). The PAO numbers come from the 'hedishos_pao' sheet inside that MA HEDIS PUF zip. | | sha256_content_hash | string | SHA-256 content hash of the exact source file the row was parsed from (byte-level provenance / dedup key). 6 distinct values = one per yearly source ZIP. All rows of a given report_year share one hash. | Tools that read it: get_hos Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_hos_pao WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_hos_pao")` first. # MA HEDIS measures (restated v2) `medicare_silver.hedis_measures_v2` · Medicare Advantage, Part D, Medicaid · status live · 2,058,568 rows A contract's reported HEDIS rate per measure and indicator, with LCL/UCL, denominator, numerator, eligible population (2025) and member count (2024+), from the CMS MA HEDIS PUF hedis_measures sheet. numerator/denominator are double: in 2019 the risk-adjusted utilization rows carry fractional observed/expected counts there. rate_raw is the publisher's Rate cell verbatim (NB, NR, NA, BR status codes where rate is NULL). **Grain.** One row per (report_year, contract_id, measure_code, indicator_key); 0 duplicate keys per year. Rows = the v1 rows: 597,168 / 488,368 / 522,368 / 173,956 / 143,058 / 133,650 for 2019, 2021-2025. | column | type | meaning | |---|---|---| | contract_id | string | | | measure_code | string | | | indicator_key | string | | | rate | double | | | rate_raw | string | | | lcl | double | | | ucl | double | | | denominator | double | | | numerator | double | | | eligible_population | int | | | member_count | int | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_measures_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_measures_v2")` first. # MA hedis national rates `medicare_silver.hedis_national_rates` · Medicare Advantage, Part D, Medicaid · status live CMS-published national weighted-average rate per (measure_code, indicator_key) per year. ~70-85 rows per year. The denominator for computing relative contract performance (Stars Ratings inputs). **Grain.** One row per HEDIS indicator per CMS report year. The minimal verified key is (indicator_key, report_year): 471 distinct = 471 total rows. measure_code does NOT extend or shrink the key (it is a label that drifts year-to-year), and contracts_count / effective_period_start / observed_period that the profiler bundled in are not needed — they are a value and report_year-derived dates respectively. There is no plan/contract/state/county dimension: this is the national aggregate only (one number summarizing all MA contracts). **How to use it.** Trend a quality measure nationally over time, joining on the stable indicator_key (not measure_code). Example: SELECT report_year, weighted_rate, contracts_count, eligible_population FROM hedis_national_rates WHERE indicator_key='200700_20' ORDER BY report_year; -> returns the enrollment-weighted national Controlling-High-Blood-Pressure rate for MA each available year (2019 ~74.5%, ... through 2025), answering 'how has MA plan performance on blood-pressure control changed nationally?'. To list one year's full scorecard: SELECT measure_code, measure_name, weighted_rate FROM hedis_national_rates WHERE report_year=2024 ORDER BY weighted_rate DESC (remembering some measures are lower-is-better). **Traps.** - NOT a cost/price table despite 'national_rates' and 'weighted_rate' — these are HEDIS clinical QUALITY rates (percent of eligible members meeting a quality measure), at the NATIONAL level only. There is no contract/plan/state/county/NPI dimension; you cannot get a per-plan or per-region rate from this table. - measure_code and measure_name are point-in-time LABELS that drift across years, not stable keys. The same clinical indicator is recoded by CMS/NCQA over time (e.g. HbA1c Control <8% = indicator_key 200707_20 shows as measure_code CDC in 2019-2022, HBD in 2023-2024, GSD in 2025; some indicators carry up to 4 different measure_names). ALWAYS join/trend on indicator_key, never on measure_code, or you will break time series and double-count. - weighted_rate polarity is mixed: for most measures higher=better, but for overuse/avoidance measures (UOP multiple prescribers, HDO/UOD high-dose opioids, PSA non-recommended screening) LOWER is better. Ranking measures by raw weighted_rate or averaging across measures without normalizing polarity gives nonsense. - Year 2020 is MISSING entirely (no 2020 MA HEDIS PUF due to COVID reporting relief) — the 6 periods are 2019, 2021, 2022, 2023, 2024, 2025, so any year-over-year delta logic must skip the 2019->2021 gap. - Unbalanced panel: only 57 of 95 indicators appear in all 6 years; 4 appear in just 1 year (e.g. ABA / 200005_20 only in 2019, then retired). Do not assume every indicator exists every year — a missing (indicator_key, year) means the measure wasn't reported that year, not a value of 0. - The grain is exactly (indicator_key, report_year) — 471 rows. The profiler reported a 5-column superset that included contracts_count (a measured value) and the report_year-derived dates; those are NOT part of the key. is_current does not exist and is unnecessary: one immutable sha256 per year, single asserted_at (2026-05-15), no duplicate snapshots. - contracts_count and eligible_population are NATIONAL denominators rolled across all reporting contracts (eligible_population reaches ~32.5M; counts grow year over year with MA enrollment). They are not per-contract figures, and low contracts_count (down to 47) flags thinly-reported indicators whose national rate is less robust. | column | type | meaning | |---|---|---| | measure_code | string | Short HEDIS measure abbreviation, e.g. ABA (Adult BMI Assessment), CBP (Controlling High Blood Pressure), BCS/BCS-E (Breast Cancer Screening), CDC/HBD/GSD (diabetes care). 35 distinct values. CAUTION: this is a point-in-time label, not a stable id — for the SAME indicator_key the code drifts across years as NCQA recodes measures (e.g. indicator 200707_20 = HbA1c Control <8% appears as CDC in 2019-2022, HBD in 2023-2024, GSD in 2025). Do not use it as the cross-year join key; use indicator_key. | | measure_name | string | Human-readable label for the specific indicator/sub-stratum, e.g. 'Controlling High Blood Pressure', or a bare sub-label like '(Total)', '(51-75)', '30 days (Total)', 'HbA1c Control (<8%)'. Also point-in-time and drifts: one indicator_key can carry up to 4 different names across the 6 years (CMS rewords labels). Often it is just the stratum qualifier, not the full measure title. | | indicator_key | string | The stable CMS PUF indicator identifier, formatted '_' where suffix is '10' or '20'. THE durable cross-year join key (95 distinct ids; one indicator_key tracks the same clinical indicator over time even when measure_code/measure_name change). The numeric prefix is the CMS indicator number; the _10/_20 suffix is a fixed PUF coding qualifier (248 rows _10, 223 rows _20). NOT unique on its own (recurs every year) — must be paired with report_year. | | weighted_rate | double | Enrollment-weighted national average performance rate for the indicator, as a percent 0-100 (observed min 0.58, max 98.38; all 471 rows in [0,100], zero nulls). It is the contract-level rates weighted by each MA contract's eligible population, rolled to one national number. POLARITY VARIES: for most measures higher is better (e.g. TRC ~90%, statin therapy ~88%), but for 'overuse'/avoidance measures lower is better (e.g. UOP opioid multiple-prescribers 0.79%, HDO/UOD high-dose opioids, PSA non-recommended screening). Do not assume higher = better. | | contracts_count | int | Number of MA contracts that reported this indicator and were rolled into the national rate (observed 47-630, no nulls). A measured denominator/coverage figure that grows over the years as MA enrollment expands — NOT a key column (the profiler mistakenly included it). Low counts (e.g. 47) flag thinly-reported indicators where the national rate is less robust. | | eligible_population | int | Total national eligible-member count (the measure denominator) summed across reporting contracts (observed ~3.2M to ~32.5M, no nulls). This is the national denominator, not per-contract; it climbs year over year with MA growth. Used as the weight behind weighted_rate. | | report_year | int | CMS HEDIS PUF report year (int): 2019, 2021, 2022, 2023, 2024, 2025. NOTE 2020 is absent — no 2020 MA HEDIS PUF (COVID reporting suspension). Half of the (indicator_key, report_year) grain. Rows per year: 2019=68, 2021=64, 2022=85, 2023=82, 2024=88, 2025=84. | | observed_period | date | Date = January 1 of report_year (derived, redundant with report_year; aligned 471/471). Represents the measurement/reporting period anchor, not a sub-annual period. | | asserted_at | date | Date this record was asserted/loaded into the silver layer. Constant 2026-05-15 for every row (single ingestion event). Effectively a load-batch stamp, not a business date. | | effective_period_start | date | Date = January 1 of report_year (derived; aligned 471/471). Start of the year the rate is effective for. Functionally equal to report_year — the profiler used it as the time column. | | effective_period_end | date | Date = December 31 of report_year (derived; aligned 471/471). End of the effective year. Together with effective_period_start it just bounds the report_year calendar window. | | cms_vintage_sequence | int | Integer revision-sequence of the CMS source vintage. Constant = 1 across all rows (only the first/original vintage of each year's PUF has been loaded; no restatements ingested yet). A versioning hook for future CMS file re-releases. | | parse_revision | int | Internal parser revision number for the extraction. Constant = 1 (single parser version used for the whole load). Provenance/reproducibility field. | | parser_artifact_hash | string | SHA256 of the parser artifact that produced the row (provenance). 6 distinct values — one per source file/year — so it co-varies with the year's source ZIP, identifying which parser run emitted each year's rows. | | source_url | string | CMS download URL of the origin HEDIS MA PUF ZIP, e.g. https://www.cms.gov/files/zip/ma-hedis-pufs-2024.zip. Exactly 6 distinct values, one per report_year (1:1 file-to-year). Note URL naming differs by year (hedis-ma-puf-2019.zip vs ma-hedis-pufs-2021.zip). | | sha256_content_hash | string | SHA256 of the source file's content (provenance/integrity). 6 distinct values, one per year. Confirms a single immutable snapshot per year — total rows 471 = distinct (sha256_content_hash, indicator_key), so there is no duplicate-snapshot fan-out and no dedup is required. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_national_rates WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_national_rates")` first. # MA hedis rau measures `medicare_silver.hedis_rau_measures` · Medicare Advantage, Part D, Medicaid · status live Tall format: one row per (contract, RAU measure, indicator, year). Reports observed vs expected counts (with variance) for risk- adjusted utilization measures (admissions, ED visits, etc.). Added to MA-HEDIS PUFs starting in 2021. Per-row c **Grain.** One row per (MA contract × HEDIS RAU measure × measure indicator/stratum × report year). Verified: 299,901 rows = 299,901 distinct on (contract_id, measure_code, indicator_key, report_year). report_year, observed_period, effective_period_start, and effective_period_end are all 1:1 with each other (each report_year = one calendar-year period), so report_year alone completes the key — the other date columns are redundant for grain purposes. **How to use it.** Compute a contract's risk-adjusted acute-hospital utilization index for a year: SELECT contract_id, SUM(observed_count) AS obs, SUM(expected_count) AS exp, SUM(observed_count)/SUM(expected_count) AS oe_ratio FROM hedis_rau_measures WHERE measure_code='AHU' AND report_year=2025 GROUP BY contract_id ORDER BY oe_ratio DESC. Answers 'which MA plans had higher-than-expected acute hospitalization in 2025' (O/E > 1 = members hospitalized more than the national risk-adjusted benchmark predicts). Swap measure_code to PCR for readmissions or EDU for ED utilization. **Traps.** - NOT a cost/price table. This is utilization & risk-adjusted quality (counts of hospital/ED events vs expected). There are no dollars, rates, or prices anywhere. Use it to characterize how intensively an MA plan's members consume high-cost care, not to price anything. - The key looks like 5 columns but is really 4. The profiler reports (contract_id, measure_code, indicator_key, effective_period_start, observed_period) — but effective_period_start, observed_period, effective_period_end and report_year are all 1:1, so (contract_id, measure_code, indicator_key, report_year) is the true minimal grain (299,901 = 299,901). Don't join on the date columns expecting extra resolution. - Nulls are STRUCTURAL and measure-specific, not missing data. Each measure publishes a different variable set: denominator only for HFS/PCR; non_outlier_member_count only for AHU/EDU/HPC; member_count only for AHU/HPC/PCR (and only in some years). Never write WHERE denominator IS NOT NULL expecting all measures — you'd silently drop AHU/HPC/EDU entirely. observed_count/expected_count/count_variance are the only fields populated across all 5 measures. - indicator_key is opaque in this table. It's a CMS catalog key (e.g. 201583_20) whose human meaning (age band, O/E component) lives in the external MADictionary{YEAR}.xlsx which is NOT ingested. You cannot label strata from this table alone; you must join the (not-yet-loaded) dictionary. The '_10'/'_20' suffix is part of the dictionary code, not a generic flag. - observed_count = 0 (36,795 rows) is a real zero (no events), totally different from NULL (suppressed cell or non-published variable). ~3,150 rows are fully suppressed (every numeric column null) — keep them out of denominators. Treat 0 and NULL distinctly. - This is the RAU sibling, separate from medicare_silver.hedis_measures. hedis_measures holds clinical quality RATES (Lcl/Ucl/Rate) across ~all HEDIS measures; this table holds only the 5 risk-adjusted UTILIZATION measures with observed/expected COUNTS. RAU first appears in 2021 (no 2019/2020 here), and EDU/HFS first appear in 2022. cms_vintage_sequence/parse_revision are constant 1 and asserted_at is a constant load-date — none are real per-row history, so there is no is_current / snapshot semantics to worry about. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID. 747 distinct. Prefix H = local MA/MAPD contracts (719), R = Regional PPO contracts (28). The plan-level entity each utilization figure is reported for. No E (employer) or S (PDP-standalone) contracts here. | | measure_code | string | The HEDIS RAU measure. Exactly 5 values, all hospital/ED utilization measures: AHU = Acute Hospital Utilization (96,579 rows, 55 indicators, all 5 yrs), HPC = Hospitalization for Potentially Preventable Complications (90,027 rows, 36 ind, 5 yrs), EDU = Emergency Department Utilization (58,247 rows, 27 ind, 4 yrs — absent 2021), PCR = Plan All-Cause Readmissions (35,544 rows, 12 ind, 5 yrs), HFS = Hospitalization Following SNF Discharge (19,504 rows, 8 ind, 4 yrs — absent 2021). | | indicator_key | string | CMS dictionary key for the specific stratum / sub-indicator within a measure, format 'NNNNNN_20' or 'NNNNNN_10' (138 distinct overall). It is a CMS-WIDE catalog key, not contract-specific — every indicator_key appears for all reporting contracts in its measure-year (e.g. each PCR indicator spans all 747 contracts). Decodes age bands / observed-vs-expected components per the external MADictionary{YEAR}.xlsx, which is NOT ingested into this table, so the key is opaque here (you cannot get the human stratum name from this table alone). | | denominator | int | Eligible-population denominator for the stratum. STRUCTURALLY NULL except for HFS and PCR (the index-event-based measures); always null for AHU/HPC/EDU. Range 0–326,448. A null here means CMS does not publish a denominator variable for that measure, not missing data. | | member_count | int | Member count for the stratum. Populated only for AHU, HPC, and PCR, and only PARTIALLY within those — the same indicator_key has it in some report years but not others (CMS changed which variables it publishes per measure over time). Never populated for EDU/HFS. Range 0–1,304,625. Null carries meaning (variable not in CMS's published set for that measure/year). | | non_outlier_member_count | int | Members excluded from outlier trimming (the in-distribution population used for the risk-adjusted O/E calc). Populated for AHU, EDU, HPC; always null for HFS and PCR. Range 0–1,934,303. This is the primary 'eligible members' field for the count-based measures. | | outlier_member_count | int | Members flagged as statistical outliers (extreme utilizers, trimmed in the risk-adjustment). Populated for AHU, EDU, HPC, and PCR; null for HFS. Small relative to non_outlier counts (e.g. 32 vs 1,772). | | observed_count | double | Observed number of utilization events (e.g. acute discharges, ED visits, readmissions) for the contract/stratum. Populated for ALL 5 measures (the core measured quantity). Range 0–609,571; avg ~810. 36,795 rows are a true 0 (member group had zero events) — distinct from null. | | expected_count | double | Risk-adjusted EXPECTED number of events for the same population, predicted from the national MA model. Populated for all measures. Range 0–519,521. The observed_count / expected_count ratio is the risk-adjusted O/E utilization index (>1 = uses more high-cost care than expected, <1 = less). | | count_variance | double | Statistical variance of the expected count, used to build confidence intervals around the O/E ratio. Populated wherever observed/expected are (all measures). | | report_year | int | CMS HEDIS reporting year / public-file vintage, 2021–2025 (5 values). Drives row volume (2021=39,300 rising to ~65–70K in 2023–2025 as more measures/contracts were added). This is the file/publication year label; the underlying measurement period is the prior clinical year per HEDIS convention. | | observed_period | date | Start of the measurement period as a date, always Jan-1 of report_year (2021-01-01 … 2025-01-01). 1:1 with report_year — redundant with it. 5 distinct values. | | asserted_at | date | Ingestion/assertion date stamped by Vlada's pipeline — a constant 2026-05-15 for every row (the single load run). Pipeline metadata, not source data; do not use as a real event time. | | effective_period_start | date | Start of the effective annual window, = Jan-1 of report_year (2021-01-01 … 2025-01-01). 1:1 with report_year. The profiler's 'time column'; periodicity is annual (avg gap 365 days). | | effective_period_end | date | End of the effective annual window, = Dec-31 of report_year. 1:1 with report_year. Confirms each row covers one full calendar year. | | cms_vintage_sequence | int | Sequence number for re-issues of a CMS vintage. Constant = 1 for ALL rows (no measure-year has been re-published/superseded). No snapshot-dedup needed. | | parse_revision | int | Vlada parser revision number. Constant = 1 for all rows (single parse). Pipeline metadata. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row (provenance). One hash per report_year file. | | source_url | string | Origin CMS download URL — exactly one per report_year: https://www.cms.gov/files/zip/ma-hedis-pufs-YYYY.zip. Confirms one source ZIP per year, public CMS MA HEDIS PUF. | | sha256_content_hash | string | SHA-256 of the source file content (provenance/integrity). One distinct hash per report_year — no byte-duplicate source files. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hedis_rau_measures WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hedis_rau_measures")` first. # CMS HCRIS Hospital complete alpha cell ledger (ALPHA) `medicare_silver.hospital_cost_report_alpha_cell` · Medicare Advantage, Part D, Medicaid · status live · 55,578,535 rows Complete lossless Form 2552-10 text worksheet cells with exact report key, worksheet, line, column, raw text value, and M-2 lineage. **Grain.** One physical ALPHA source row per (source fiscal-year archive, source row number). | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | source_member_name | string | | | source_row_number | bigint | | | worksheet_code | string | | | worksheet_line_code | string | | | worksheet_line_number | int | | | worksheet_line_subscript | int | | | worksheet_column_code | string | | | worksheet_column_number | int | | | worksheet_column_subscript | int | | | raw_value | string | | | value_status | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.hospital_cost_report_alpha_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_alpha_cell")` first. # Hospital cost report — department cost-to-charge (HCRIS 2552-10 Worksheet C) `medicare_silver.hospital_cost_report_dept` · Medicare Advantage, Part D, Medicaid · status live · 1,474,951 rows The SERVICE-SPECIFIC actual-cost lens, and the load-bearing one: dept_ccr (cost-to-charge ratio for one Worksheet C cost center). CCR spreads ~17x across departments (CT ~0.04 vs Clinic ~0.64), so a per-code cost estimate MUST use the service's own cost center via the HCPCS->cost-center crosswalk, never the hospital overall ratio. cost_center_label names the standard 2552-10 lines (Operating Room=50, CT=57, MRI=58, Cardiac Cath=59, Laboratory=60, Clinic=90, Emergency=91). **Grain.** One row per (ccn, fiscal-year-end, cost_center_line). 1,474,951 rows, 6,887 hospitals, FY2011-2024, 553 distinct cost centers. | column | type | meaning | |---|---|---| | ccn | string | | | fy_year | string | | | cost_center_line | string | | | cost_center_label | string | | | dept_cost | string | | | dept_charge | string | | | dept_ccr | string | | | charge_as_cost | string | | | rpt_rec_num | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hospital_cost_report_dept WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_dept")` first. # CMS HCRIS Hospital financial statements (Worksheets G-2/G-3) `medicare_silver.hospital_cost_report_financial` · Medicare Advantage, Part D, Medicaid · status live · 2,486,705 rows Form 2552-10 G-2 patient revenue/operating expense and G-3 revenue/expense/income statement lines with exact source column amounts and formula-quality flags. **Grain.** One row per (source fiscal-year archive, report record, worksheet, exact worksheet line). | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | report_status | int | | | fy_begin | date | | | fy_end | date | | | fiscal_year | int | | | report_period_days | int | | | date_processed | date | | | date_created | date | | | is_profile_selected | boolean | | | worksheet_code | string | | | worksheet_line_code | string | | | worksheet_line_number | int | | | worksheet_line_subscript | int | | | statement_section | string | | | metric_name | string | | | column_1_amount | double | | | column_2_amount | double | | | column_3_amount | double | | | additional_cells | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.hospital_cost_report_financial WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_financial")` first. # CMS HCRIS Hospital complete numeric cell ledger (NMRC) `medicare_silver.hospital_cost_report_numeric_cell` · Medicare Advantage, Part D, Medicaid · status live · 296,823,696 rows Complete lossless Form 2552-10 numeric worksheet cells with exact report key, worksheet, line, column, raw value, nullable typed value, parse status, and M-2 lineage. **Grain.** One physical NMRC source row per (source fiscal-year archive, source row number). | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | source_member_name | string | | | source_row_number | bigint | | | worksheet_code | string | | | worksheet_line_code | string | | | worksheet_line_number | int | | | worksheet_line_subscript | int | | | worksheet_column_code | string | | | worksheet_column_number | int | | | worksheet_column_subscript | int | | | raw_value | string | | | value_status | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | numeric_value | 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.hospital_cost_report_numeric_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_numeric_cell")` first. # Hospital cost report — whole-hospital cost-to-charge (HCRIS 2552-10) `medicare_silver.hospital_cost_report_overall` · Medicare Advantage, Part D, Medicaid · status live · 81,368 rows The whole-hospital ACTUAL-COST lens: overall_ccr (cost-to-charge ratio = total_cost / total_charge from Worksheet C). Applied to a billed charge it estimates the real cost of care. This is the COST leg reference-based-pricing vendors (Imagine360/ELAP) price against; joined to our MRF negotiated rate + Medicare it completes the cost / rate / Medicare / fair-RBP-price picture that no one else holds. Use the DEPT table for service-specific cost, this for the hospital-wide ratio. **Grain.** One row per (ccn, fiscal-year-end). CMS Medicare Hospital Cost Report (HCRIS, form 2552-10) Worksheet C. 81,368 report-years, 6,949 hospitals, FY2010-2024. | column | type | meaning | |---|---|---| | ccn | string | | | fy_begin | string | | | fy_end | string | | | fy_year | string | | | rpt_status | string | | | rpt_rec_num | string | | | total_cost | string | | | total_charge | string | | | overall_ccr | string | | | charge_as_cost | string | | | plausible | string | | | source_file | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hospital_cost_report_overall WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_overall")` first. # CMS HCRIS Hospital gross patient revenue by payer `medicare_silver.hospital_cost_report_payer_revenue` · Medicare Advantage, Part D, Medicaid · status live · 91,827 rows Revision-bound public gross Medicare, Medicaid, Other, and total patient revenue derived from documented Form 2552-10 D-3, D Part V, S-10, and G-2 cells using a pinned American Hospital Directory formula version. **Grain.** One row per CMS report record, with an explicit latest-record flag per exact (CCN, fiscal-year-end). | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | report_status | int | | | fy_begin | date | | | fy_end | date | | | fiscal_year | int | | | report_period_days | int | | | date_processed | date | | | date_created | date | | | is_profile_selected | boolean | | | formula_version | string | | | formula_source_url | string | | | revenue_basis | string | | | medicare_d3_routine_revenue | double | | | medicare_d3_ancillary_revenue | double | | | medicare_d_part_v_revenue | double | | | medicare_formula_cell_count | int | | | medicaid_formula_cell_count | int | | | medicaid_worksheet_code | string | | | gross_medicare_patient_revenue | double | | | gross_medicaid_patient_revenue | double | | | gross_other_patient_revenue | double | | | gross_total_patient_revenue | double | | | gross_inpatient_patient_revenue | double | | | gross_outpatient_patient_revenue | double | | | g2_reported_total_patient_revenue | double | | | payer_revenue_available | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.hospital_cost_report_payer_revenue WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_payer_revenue")` first. # CMS HCRIS CCN-level hospital operating profile `medicare_silver.hospital_cost_report_profile` · Medicare Advantage, Part D, Medicaid · status live · 90,680 rows A usable CCN report profile built only from documented S-3 line 14 and G-2/G-3 total cells. Includes beds, patient days, discharges, ALOS, ADC, occupancy, gross/net patient revenue, operating expense, and income fields. **Grain.** One row per CMS report record, with an explicit latest-record flag per exact (CCN, fiscal-year-end). | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | report_status | int | | | fy_begin | date | | | fy_end | date | | | fiscal_year | int | | | report_period_days | int | | | date_processed | date | | | date_created | date | | | is_profile_selected | boolean | | | available_beds | double | | | bed_days_available | double | | | title_v_patient_days | double | | | medicare_patient_days | double | | | medicaid_patient_days | double | | | total_patient_days | double | | | title_v_discharges | double | | | medicare_discharges | double | | | medicaid_discharges | double | | | total_discharges | double | | | average_length_of_stay | double | | | average_daily_census | double | | | occupancy_rate | double | | | gross_patient_revenue | double | | | gross_inpatient_revenue | double | | | gross_outpatient_revenue | double | | | net_patient_revenue | double | | | total_operating_expenses | double | | | net_income_from_patient_services | double | | | net_income_or_loss | double | | | revenue_by_payer_available | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.hospital_cost_report_profile WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_profile")` first. # CMS HCRIS Hospital report ledger (RPT) `medicare_silver.hospital_cost_report_report` · Medicare Advantage, Part D, Medicaid · status live · 91,827 rows Lossless Form 2552-10 report metadata and revision ledger, including CCN, NPI, report/fiscal dates, status, control type, provider type, CHOW and amended-report relationships, and the selected-profile flag. **Grain.** One physical RPT source row per (source fiscal-year archive, source row number), retaining all 18 CMS-published fields. | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | source_row_number | bigint | | | provider_control_type_code | string | | | npi | string | | | report_status | int | | | fy_begin | date | | | fy_end | date | | | fiscal_year | int | | | report_period_days | int | | | date_processed | date | | | initial_report_switch | string | | | last_report_switch | string | | | transmittal_number | string | | | fiscal_intermediary_number | string | | | adr_vendor_code | string | | | date_created | date | | | utilization_code | string | | | npr_date | date | | | special_indicator | string | | | fiscal_intermediary_receipt_date | date | | | is_profile_selected | boolean | | | 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.hospital_cost_report_report WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_report")` first. # CMS HCRIS Hospital utilization (Worksheet S-3 Part I) `medicare_silver.hospital_cost_report_utilization` · Medicare Advantage, Part D, Medicaid · status live · 2,462,442 rows Lossless hospital and hospital-complex beds, bed days available, Title V/Medicare/Medicaid/all-patient days, FTEs, and discharges from Form 2552-10 Worksheet S-3 Part I. **Grain.** One row per (source fiscal-year archive, report record, exact S-3 worksheet line). | column | type | meaning | |---|---|---| | source_fiscal_year | int | | | rpt_rec_num | bigint | | | ccn | string | | | report_status | int | | | fy_begin | date | | | fy_end | date | | | fiscal_year | int | | | report_period_days | int | | | date_processed | date | | | date_created | date | | | is_profile_selected | boolean | | | worksheet_code | string | | | worksheet_line_code | string | | | worksheet_line_number | int | | | worksheet_line_subscript | int | | | component_name | string | | | worksheet_a_line_number | double | | | available_beds | double | | | bed_days_available | double | | | cah_patient_hours | double | | | title_v_patient_days | double | | | medicare_patient_days | double | | | medicaid_patient_days | double | | | total_patient_days | double | | | resident_fte | double | | | employee_fte | double | | | nonpaid_worker_fte | double | | | title_v_discharges | double | | | medicare_discharges | double | | | medicaid_discharges | double | | | total_discharges | double | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.hospital_cost_report_utilization WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_cost_report_utilization")` first. # Hospital outpatient facility VOLUME (Medicare, by provider & service) `medicare_silver.hospital_outpatient_volume` · Medicare Advantage, Part D, Medicaid · status live · 892,793 rows The FACILITY-side outpatient volume signal: per hospital (CCN), per Comprehensive APC, the service count (srvcs) and beneficiary count, plus average submitted charge / Medicare allowed / Medicare payment. The utilization weight for distributing a hospital's measured department cost across the services it actually performs. Joins to the cost reports on ccn (95% of its CCNs have a cost report). **Grain.** One row per (ccn, Comprehensive-APC, data_year). CMS Medicare Outpatient Hospitals by Provider & Service, 2015-2023. 892,793 rows, 3,773 hospitals. | column | type | meaning | |---|---|---| | ccn | string | | | fy_year | string | | | org_name | string | | | state | string | | | apc_cd | string | | | apc_desc | string | | | bene_cnt | string | | | srvcs | string | | | avg_submitted_charge | string | | | avg_allowed | string | | | avg_payment | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.hospital_outpatient_volume WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.hospital_outpatient_volume")` first. # CMS inpatient Provider Specific File effective records `medicare_silver.inpatient_psf_provider_record` · Medicare Advantage, Part D, Medicaid · status live · 3,161,162 rows Effective-dated inpatient Provider Specific File history across the accepted current PDS export and quarterly full-history snapshots, retaining the publisher providerCcn identifier, effective/export/termination dates, provider type, geographic and wage assignments, teaching ratios, operating/capital CCRs, case mix, DSH, VBP/HRRP/HAC/EHR factors, uncompensated care, low-volume adjustment, county, NPI, exact raw fields, and Bronze lineage. **Grain.** One full-history inpatient PSF record per accepted snapshot, source-native publisher provider identifier, and effective date. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | snapshot_date | date | | | document_path | string | | | source_row_number | bigint | | | source_encoding | string | | | ccn | string | | | effective_date | date | | | fiscal_year_begin_date | date | | | export_date | date | | | termination_date | date | | | last_updated | date | | | provider_type | string | | | state_code | string | | | intermediary_number | string | | | actual_geographic_msa | string | | | wage_index_msa | string | | | actual_geographic_cbsa | string | | | wage_index_cbsa | string | | | standardized_amount_cbsa | string | | | county_code | string | | | national_provider_identifier | string | | | wage_index_reclassification_code | string | | | supplemental_wage_index | double | | | supplemental_wage_index_indicator | string | | | bed_size | int | | | case_mix_adjusted_cost_per_discharge | double | | | cost_of_living_adjustment | double | | | interns_to_beds_ratio | double | | | operating_cost_to_charge_ratio | double | | | capital_cost_to_charge_ratio | double | | | case_mix_index | double | | | supplemental_security_income_ratio | double | | | medicaid_ratio | double | | | operating_dsh | double | | | hospital_specific_capital_rate | double | | | capital_indirect_medical_education_ratio | double | | | vbp_adjustment | double | | | hrr_adjustment | double | | | uncompensated_care_amount | double | | | low_volume_adjustment_factor | double | | | hospital_quality_indicator | string | | | hac_reduction_indicator | string | | | ehr_reduction_indicator | string | | | raw_fields_json | string | | | semantic_row_sha256 | string | | | is_current_snapshot | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.inpatient_psf_provider_record WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.inpatient_psf_provider_record")` first. # CMS IPPS Impact physical provider rows `medicare_silver.ipps_impact_provider_row` · Medicare Advantage, Part D, Medicaid · status live · 428,432 rows Full FY1994 through FY2027 proposed physical Impact history with 428,432 rows, retaining proposed/final/correction releases and alternate encodings plus promoted CCN, hospital name, wage area/index, teaching ratio, beds, DSH, uncompensated-care, CCR, case-mix, outlier, provider-type, hospital-specific-rate, and modeled-case fields alongside lossless raw headers and cells. **Grain.** One physical provider row per observed period, Impact asset, document, sheet, and source row. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | fiscal_year | int | | | rule_stage | string | | | release_id | string | | | document_path | string | | | sheet_name | string | | | source_row_number | bigint | | | source_encoding | string | | | ccn | string | | | provider_name | string | | | geographic_labor_market_area | string | | | payment_labor_market_area | string | | | county_fips | string | | | wage_index | double | | | resident_to_bed_ratio | double | | | beds | int | | | average_daily_census | double | | | operating_dsh_adjustment | double | | | capital_dsh_adjustment | double | | | dsh_patient_percentage | double | | | uncompensated_care_factor | double | | | uncompensated_care_per_claim | double | | | operating_cost_to_charge_ratio | double | | | capital_cost_to_charge_ratio | double | | | provider_type | string | | | hospital_specific_rate | double | | | medicare_cases | double | | | current_case_mix_index | double | | | operating_outlier_factor | double | | | capital_outlier_factor | double | | | raw_headers_json | string | | | raw_cells_json | string | | | raw_row_json | string | | | semantic_row_sha256 | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ipps_impact_provider_row WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ipps_impact_provider_row")` first. # CMS IPPS Impact and inpatient PSF source/document inventory `medicare_silver.ipps_payment_source_asset` · Medicare Advantage, Part D, Medicaid · status live · 421 rows Complete physical source inventory for the accepted 79-asset CMS IPPS Impact and inpatient Provider Specific File corpus, expanding to 421 top-level and nested documents with publisher release, fiscal year, rule stage, snapshot date, format, bytes, SHA-256, parse disposition, source limits, current-release state, and exact Bronze lineage. **Grain.** One row per acquired top-level CMS asset or recursively indexed archive document. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | source_family | string | | | fiscal_year | int | | | rule_stage | string | | | snapshot_date | date | | | title | string | | | asset_source_url | string | | | publisher_page_url | string | | | publisher_filename | string | | | document_path | string | | | parent_document_path | string | | | archive_depth | int | | | actual_format | string | | | byte_count | bigint | | | document_sha256 | string | | | direct_archive_member_count | int | | | parse_disposition | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ipps_payment_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ipps_payment_source_asset")` first. # LIS Contract Enrollment by County, 2009-2026 `medicare_silver.lis_contract_county` · Medicare Advantage, Part D, Medicaid · status live · 1,927,349 rows The Low-Income-Subsidy enrollees of every Part D contract in every county, MA-PD and PDP separately, one snapshot per plan year: where the dual / LIS members sit by carrier and county. 2026: 96,628 MA-PD and 24,833 PDP contract-county rows. **Grain.** One row per (plan_year, part_d_stream, contract_id, state_fips, county_fips). | column | type | meaning | |---|---|---| | plan_year | int | | | part_d_stream | string | | | contract_id | string | | | state_fips | string | | | county_fips | string | | | fips5 | string | | | state_code_raw | string | | | county_code_raw | string | | | state_name_raw | string | | | county_name_raw | string | | | contract_name_raw | string | | | lis_enrolled | int | | | lis_lower_bound | int | | | lis_upper_bound | int | | | lis_suppression_reason_code | string | | | as_of_date | date | | | as_of_date_basis | string | | | schema_era | string | | | source_member | string | | | source_sheet | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.lis_contract_county WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.lis_contract_county")` first. # LIS Enrollment by Plan, 2006-2026 `medicare_silver.lis_enrollment_plan` · Medicare Advantage, Part D, Medicaid · status live · 102,495 rows CMS's Low-Income-Subsidy enrollment per Part D plan (contract x PBP) per plan year, with the plan's total enrollment from 2011: the plan's LIS / dual mix. 2026: 5,172 MA-PD plans with 9,424,913 LIS enrollees and 472 PDPs with 4,325,701. **Grain.** One row per (plan_year, part_d_stream, contract_id, plan_id): one annual snapshot per plan. | column | type | meaning | |---|---|---| | plan_year | int | | | part_d_stream | string | | | contract_id | string | | | plan_id | string | | | plan_id_raw | string | | | contract_name_raw | string | | | plan_name_raw | string | | | total_enrolled | int | | | total_lower_bound | int | | | total_upper_bound | int | | | total_suppression_reason_code | string | | | lis_enrolled | int | | | lis_lower_bound | int | | | lis_upper_bound | int | | | lis_suppression_reason_code | string | | | lis_measure_basis | string | | | as_of_date | date | | | as_of_date_basis | string | | | schema_era | string | | | source_member | string | | | source_sheet | string | | | publisher_row_multiplicity | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.lis_enrollment_plan WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.lis_enrollment_plan")` first. # MA ma contract service area `medicare_silver.ma_contract_service_area` · Medicare Advantage, Part D, Medicaid · status live One row per (contract_id, county) per month. Each row records the contract's organizational metadata (organization_name, plan_type, EGHP flag) plus the partial-county flag (TRUE when the contract covers only part of the county, per CMS's pu **Grain.** One row per (Medicare contract) per (county) per (monthly snapshot). Verified: contract_id + county_fips + county_ssa + county_name_raw + report_month is exactly unique = 87,764,727 distinct = the full row_count (87,764,727). county_name_raw is needed only to break ties for ~160 rows where the county codes are blank (Connecticut's new planning regions); contract_id + county_fips + county_ssa + report_month alone is unique for 87,764,567 of 87,764,727 rows (20 residual code-blank groups). NOTE: county_fips alone is NOT enough (Los Angeles 06037 = SSA 05200 AND 05210, etc.), and county_ssa alone is NOT enough (85 SSA codes map to multiple FIPS) — both county codes are required. **How to use it.** Answer 'what MA plans / which carriers are available to a Medicare beneficiary in a given county right now, and what plan type are they?' Example: SELECT DISTINCT contract_id, organization_name_raw, organization_type, plan_type FROM medicare_silver.ma_contract_service_area WHERE county_fips='06037' AND report_month=DATE '2026-04-01' ORDER BY organization_name_raw; -> the list of MA contracts approved in Los Angeles County for the latest snapshot, with sponsor and product type. To trend a carrier's geographic footprint over time: SELECT report_month, COUNT(DISTINCT county_fips) counties FROM medicare_silver.ma_contract_service_area WHERE organization_name_raw LIKE 'HUMANA%' GROUP BY 1 ORDER BY 1. Always scope to a single report_month for a point-in-time view; keep county_fips/county_ssa as strings. **Traps.** - NEITHER county code alone is a grain component. county_fips is NOT 1:1 with county_ssa: 15 FIPS codes map to multiple SSA codes (Los Angeles 06037 -> SSA 05200 AND 05210), and 85 SSA codes map to multiple FIPS. Using only county_fips+contract+month leaves 226,649 'duplicate' rows; using only county_ssa is worse (1.1M). You need BOTH county codes (the true minimal practical key is contract_id+county_fips+county_ssa+report_month, unique for all but 160 rows; add county_name_raw for a perfectly unique key). - partial_county, eghp, and notes_raw are DEAD columns: partial_county and eghp are 100% false (never true, never null) and notes_raw is 100% null across all 87.76M rows. They look meaningful from their names but carry zero signal — likely unparsed/placeholder. Do not build filters on them. - There is NO is_current flag and effectively no snapshot dedup to do: cms_vintage_sequence=1 and parse_revision=1 for every row, and asserted_at is a single constant (2026-05-15, the one bulk backfill). The 'history' is the monthly report_month series itself, not a slowly-changing dimension. For time-series use report_month; ignore asserted_at/effective_period_* (they are redundant: report_month = observed_period = effective_period_start = 1st of month, and effective_period_end = month end). - County codes are ZERO-PADDED STRING codes (mostly 5-char). Keep them as strings and preserve leading zeros — casting to int corrupts them. Blank values are empty string '' (never NULL) and MEAN something: blank county_fips = a geography CMS hasn't crosswalked to a standard county code, specifically Alaska non-county boroughs/census areas (7,896 rows) and Connecticut's new planning regions (180 rows, 2024-09 onward). county_name_raw is still populated in those cases, so use it as the geography label. - This is a COVERAGE / FOOTPRINT table, not a cost table — it has NO premiums, rates, benefits, payment amounts, or enrollment counts. For a healthcare-COST catalog its role is the join spine that answers 'which MA contracts are offered in county X in month Z'. Join contract_id to other Medicare-silver tables for plan benefits/enrollment, and to the FIPS/SSA county codes for geographic rollups; this is not a fact table of dollars. - Snapshot-varying attributes: organization_name_raw (593/1,824 contracts change name over time), plan_type (37 change), and organization_type (25 change) are as-of-the-month values, not fixed properties of a contract. Don't treat them as a stable contract dimension across years; pin to a report_month or take the latest. Also: monthly coverage is near-continuous 2006-10 to 2026-04 but has a couple of missing months (2006 starts in Oct with 3 months; 2022 has 11 months; 2026 is partial with 4 months through April). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract identifier (e.g. H0504, R7444, E####). The plan-sponsor's contract with CMS. 1,824 distinct. Letter prefix = product family: H = standard/Local MA contract (1,785 contracts, ~98.8% of rows), R = Regional CCP/Regional PPO (37), E = Employer Direct PFFS (2). No 'S' (standalone Part D PDP) here — this is MA service area, not Part D. A contract groups many underlying plan benefit packages (PBP IDs, not present in this table). | | county_fips | string | 5-character zero-padded Census/FIPS state+county code (e.g. '06037' = LA County). String, leading zeros significant — never cast to int. 3,641 distinct. Blank ('') for 8,076 rows where CMS has no standard FIPS: Alaska non-county boroughs/census areas (7,896 rows) and Connecticut's new planning regions (180 rows, 2024-09+). Never NULL, only empty string. NOT 1:1 with county_ssa. | | county_ssa | string | 5-character zero-padded SSA (Social Security Administration) state+county code — CMS's legacy geography key (e.g. '05200'). 3,600 distinct. String, keep leading zeros. Blank ('') for 180 rows (the CT planning regions). A handful are 4-char (legacy padding). NOT 1:1 with county_fips: one FIPS can map to several SSA codes (LA = 05200/05210) and 85 SSA codes map to multiple FIPS — that is WHY both county codes are needed for the grain. | | state_code | string | 2-letter USPS state/territory abbreviation (AZ, CA, TX...). 56 distinct (50 states + DC + territories like PR/GU/VI/etc.). Functionally derivable from the county codes; included for convenience. | | report_month | date | The monthly snapshot date, always the 1st of the month (2006-10-01 ... 2026-04-01). This is the as-of period for the row and the primary time axis. Identical in value to observed_period and effective_period_start in 100% of rows. | | organization_name_raw | string | Raw plan-sponsor / parent organization name as printed in the CMS file (e.g. 'CALIFORNIA PHYSICIANS\' SERVICE', 'HUMANA INSURANCE COMPANY'). Uppercase, unnormalized ('_raw'). Snapshot attribute, NOT static: 593 of 1,824 contracts show more than one org name over time (rebrands / M&A / DBA changes). Do not treat as a stable contract identity. | | organization_type | string | CMS organization/contract category. 11 distinct values: 'Local CCP' (88% of rows), 'PFFS', 'Regional CCP', 'MSA', 'HCPP - 1833 Cost', 'Employer/Union Only Direct Contract PFFS', 'Demo', '1876 Cost', 'National PACE', 'RFB - PFFS', 'Employer Direct PFFS'. As-of-snapshot (25 contracts changed org_type over time). | | plan_type | string | Product type of the contract. 25 distinct values: top are 'Local PPO' (41.8M), 'HMO/HMOPOS' (35.4M), 'PFFS', 'Regional PPO', 'MSA', cost plans (1876/1833), plus niche dual/special types (Medicare-Medicaid Plan, MN Senior Health Options, ESRD I/II, SHMO, PACE, CCRC, PSO, WI Partnership, etc.). Mostly stable per contract but 37 contracts changed plan_type over time, so it is an as-of-snapshot attribute, not a fixed key — which is why adding it does not refine the county-month grain. | | partial_county | boolean | TRAP: intended to flag a contract that covers only part of a county. In THIS data it is 100% false (0 true, 0 null across all 87.76M rows) — effectively a dead/unparsed placeholder. Do not filter on it expecting partial-county plans. | | eghp | boolean | TRAP: intended Employer Group Health Plan flag. Also 100% false (0 true, 0 null) — carries no information in this table. (Employer plans here are instead identifiable via organization_type / plan_type = 'Employer ...' or contract_id prefix 'E'.) | | county_name_raw | string | Raw county / county-equivalent name from the CMS file (e.g. 'Pinal', 'Los Angeles'; for CT, planning-region names like 'CAPITOL', 'GREATER BRIDGEPORT'). Always populated (0 null, 0 empty) — the only ALWAYS-present geography field, so it is the reliable geo label and is the tie-breaker that makes the grain fully unique when county_fips/county_ssa are blank. | | notes_raw | string | TRAP: intended free-text notes column. It is 100% NULL in this table (no non-null values exist). Dead column. | | observed_period | date | Provenance: the period the source data was observed for. Identical to report_month (= 1st of month) in 100% of rows. Redundant encoding of the snapshot month. | | asserted_at | date | Provenance: load/assert date of this silver build. Single constant value 2026-05-15 across ALL rows (one bulk backfill load). Not a per-snapshot timestamp — do NOT use it for time-series or as-of logic; use report_month. | | effective_period_start | date | Provenance: start of the period the row is effective for. Identical to report_month (1st of month) in 100% of rows. Redundant with report_month/observed_period. | | effective_period_end | date | Provenance: end of the effective period — always the LAST day of report_month (day >= 28 in 100% of rows). So [effective_period_start, effective_period_end] is simply the calendar month of the snapshot. | | cms_vintage_sequence | int | Provenance: dedup/vintage sequence for re-released CMS files. Constant = 1 for every row (no contract month has been superseded by a later CMS re-issue). There is no is_current column and no multi-vintage dedup needed in current data. | | parse_revision | int | Provenance: parser revision number. Constant = 1 for every row (single parse generation; nothing reparsed). | | parser_artifact_hash | string | Provenance: sha256 of the parser artifact/version that produced the row. Varies by source-file era (older 2013 files use a different hash than 2021 files) but is a code-version fingerprint, not a data key. | | source_url | string | Provenance: the exact CMS download URL of the monthly ZIP the row came from (e.g. .../ma-contract-service-area-statecounty-march-2021.zip). 234 distinct = exactly one source file per monthly snapshot. | | sha256_content_hash | string | Provenance: sha256 of the downloaded source-file content. 234 distinct (one per month), 1:1 with source_url/report_month — the file-level integrity fingerprint. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_contract_service_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_contract_service_area")` first. # MA contract service area (revision 2) `medicare_silver.ma_contract_service_area_v2` · Medicare Advantage, Part D, Medicaid · status live · 89,865,222 rows Which counties each MA contract serves each month, from CMS's monthly contract service area file, with organization_name, plan_type, the EGHP (employer-only) flag and the partial-county flag as CMS prints them, and national_service_area for nationwide contracts (National PACE and similar). **Grain.** One row per (contract_id, county, flag variant) per month: 89,865,222 rows in 239 months. A contract-county CMS splits across flag values appears on more than one row (3,788 split rows); national service-area rows have no county or state. | column | type | meaning | |---|---|---| | contract_id | string | | | county_fips | string | | | county_ssa | string | | | state_code | string | | | report_month | date | | | organization_name_raw | string | | | organization_type | string | | | plan_type | string | | | partial_county | boolean | | | eghp | boolean | | | county_name_raw | string | | | notes_raw | 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 | | | national_service_area | boolean | | Tools that read it: get_contract_service_area Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_contract_service_area_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_contract_service_area_v2")` first. # MA county ratebook — CMS plan payment rates by county `medicare_silver.ma_county_ratebook` · Medicare Advantage, Part D, Medicaid · status live · 42,200 rows The county BENCHMARK — what CMS pays an MA plan per member in a county, by the county's quality-bonus tier: rate_5pct_bonus / rate_3_5pct_bonus / rate_0pct_bonus, plus rate_esrd. The revenue-rate INPUT for the Wolfe MA model (actual payment ~= benchmark x member risk score x rebate share). **Grain.** One row per (rate_year, county) — CMS MA county benchmark rates by quality-bonus tier. CERTIFIED 2026-06-03. | column | type | meaning | |---|---|---| | rate_year | int | | | ssa_county_code | string | | | state_name | string | | | county_name | string | | | rate_5pct_bonus | float | | | rate_3_5pct_bonus | float | | | rate_0pct_bonus | float | | | rate_esrd | float | | | effective_period_start | date | | | effective_period_end | date | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parse_revision | int | | | parser_artifact_hash | string | | | cms_vintage_sequence | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_county_ratebook WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_county_ratebook")` first. # CMS MA / Part D Landscape edition ledger (one row per publisher CSV member parsed, per edition) `medicare_silver.ma_landscape_edition_ledger` · Medicare Advantage, Part D, Medicaid · status live · 276 rows The parse ledger behind fact_ma_landscape_edition: which member of which edition zip produced which year and category, under which header signature (47 signatures in pipelines/medicare/silver/ma_landscape_contracts.yaml, 9 of them seen only in original editions), with the exact header-to-column mapping applied. **Grain.** One row per edition x parsed CSV member: member name, sha256, header signature, mapping applied, ignored columns, rows parsed/skipped; 276 members on 2026-09-08. | column | type | meaning | |---|---|---| | report_year | int | | | member | string | | | member_sha256 | string | | | record_family | string | | | signature_id | string | | | signature_sha256 | string | | | header_as_published | string | | | mapping | string | | | ignored | string | | | rows_parsed | bigint | | | rows_skipped_no_contract | bigint | | | categories | 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 | | | edition | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_landscape_edition_ledger WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_landscape_edition_ledger")` first. # CMS MA / Part D Landscape member ledger (one row per publisher CSV member parsed) `medicare_silver.ma_landscape_member_ledger` · Medicare Advantage, Part D, Medicaid · status live · 169 rows The parse ledger behind fact_ma_landscape: which publisher file member produced which year and category, under which header signature, with the exact header-to-column mapping applied. Read it to explain any Landscape number back to its file. **Grain.** One row per parsed CSV member per report_year: member name, sha256, header signature, mapping applied, ignored columns, rows parsed/skipped; 169 members on 2026-09-07. | column | type | meaning | |---|---|---| | report_year | int | | | member | string | | | member_sha256 | string | | | record_family | string | | | signature_id | string | | | signature_sha256 | string | | | header_as_published | string | | | mapping | string | | | ignored | string | | | rows_parsed | bigint | | | rows_skipped_no_contract | bigint | | | categories | 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 medicare_silver.ma_landscape_member_ledger WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_landscape_member_ledger")` first. # MA network intelligence: active grade per listed provider (Medicare billing and enrollment) `medicare_silver.ma_network_active_v1` · Medicare Advantage, Part D, Medicaid · status partial The network lockdown's active check (docs/data-tracker/network-intel/LOCKDOWN-LEDGER.md N1): whether Medicare's own files confirm a listed provider is active. 2027: 1,570,066 billing-type providers, A 52.9%, B 39.8%, C 7.4%. **Grain.** One row per plan_year x listed NPI: provider_class, specialty, enrolled_medicare (PECOS), billed_medicare_year (CMS billing file), contracts_listing, medicare_billing_type, active_grade (A billed Medicare in the newest year, B enrolled only, C neither, n/a a type that does not bill Medicare). Partitioned by dataset_id, plan_year. | column | type | meaning | |---|---|---| | npi | string | | | provider_class | string | | | specialty | string | | | enrolled_medicare | boolean | | | billed_medicare_year | int | | | contracts_listing | bigint | | | medicare_billing_type | boolean | | | active_grade | string | | Tools that read it: get_plan_network Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_network_active_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_network_active_v1")` first. # MA network intelligence: 2026 -> 2027 network change per contract x health system / specialty `medicare_silver.ma_network_change_v1` · Medicare Advantage, Part D, Medicaid · status partial Who joined and left each contract's published network between 2026 and 2027, like for like (own-year lists only, ZIP3 areas listed in both years, members only), rolled to health systems through CMS's hospital affiliation and the system map, with exit / join signals where a system's listing collapsed while the rest of the network held. Typed door get_network_system_change. **Grain.** One row per contract_id x rollup_level (all | specialty | system) x rollup_key: listed_2026, listed_2027, stayed, left_network, joined, keep_rate, contract_keep_rate, contract_keep_rate_2027, zip3_both_years, source_changed, signal (exit_signal | join_signal). Partitioned by dataset_id. | column | type | meaning | |---|---|---| | contract_id | string | | | rollup_level | string | | | rollup_key | string | | | rollup_name | string | | | listed_2026 | bigint | | | listed_2027 | bigint | | | stayed | bigint | | | left_network | bigint | | | joined | bigint | | | keep_rate | double | | | contract_keep_rate | double | | | contract_keep_rate_2027 | double | | | zip3_both_years | bigint | | | source_changed | boolean | | | signal | string | | Tools that read it: get_network_system_change Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_network_change_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_network_change_v1")` first. # MA network intelligence: each contract's network by billing group and health system (share of each listed) `medicare_silver.ma_network_contract_group_v1` · Medicare Advantage, Part D, Medicaid · status partial The network lockdown's N3: a contract's listed clinicians rolled up to the billing groups they reassign Medicare payment to (CMS PECOS reassignment) and the health systems of their hospitals (CMS Doctors and Clinicians affiliation x the hospital system map). 2027: 4.22M contract x group rows (192K groups), 155.6K contract x system rows (643 systems). Typed door get_network_groups. **Grain.** One row per plan_year x contract_id x rollup_level (group | system) x entity_key: entity_name, entity_state, clinicians_listed, entity_clinicians, share_listed. Partitioned by dataset_id, plan_year. | column | type | meaning | |---|---|---| | contract_id | string | | | rollup_level | string | | | entity_key | string | | | entity_name | string | | | entity_state | string | | | clinicians_listed | bigint | | | entity_clinicians | bigint | | | share_listed | double | | Tools that read it: get_network_groups Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_network_contract_group_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_network_contract_group_v1")` first. # MA network intelligence: network breadth per plan x county x specialty vs the county's rivals `medicare_silver.ma_network_plan_county_v1` · Medicare Advantage, Part D, Medicaid · status partial How broad each MA plan's published network is in every county of its CMS service area against the other plans sold there: the providers it lists in the county over every provider any MA plan lists there (the listed universe), ranked among the county's individual plans. Typed door get_network_breadth. **Grain.** One row per plan_year x plan_key x county_fips x specialty ('*' = every provider): plan_npis, county_npis (the county's listed universe), breadth, rank_in_county, plans_ranked, plans_offered, rival_median_breadth, rival_max_breadth, matched_share, carried_share, contract_level_share, employer_plan. Partitioned by dataset_id, plan_year. | column | type | meaning | |---|---|---| | plan_key | string | | | contract_id | string | | | employer_plan | boolean | | | county_fips | string | | | state | string | | | county_name | string | | | specialty | string | | | adequacy_type | boolean | | | plan_npis | bigint | | | county_npis | bigint | | | breadth | double | | | rank_in_county | bigint | | | plans_ranked | bigint | | | plans_offered | bigint | | | rival_median_breadth | double | | | rival_max_breadth | double | | | matched_share | double | | | carried_share | double | | | contract_level_share | double | | | billing_type_npis | bigint | | | verified_share | double | | Tools that read it: get_network_breadth Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_network_plan_county_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_network_plan_county_v1")` first. # MA network intelligence: hospitals in each plan's published network, with evidence (CCN) `medicare_silver.ma_network_plan_hospital_v1` · Medicare Advantage, Part D, Medicaid · status partial Which hospitals each plan's directory puts in network: the hospital's own NPI listed (CMS hospital enrollment NPI = CCN), or how many of the clinicians CMS records as affiliated with it the plan lists (CMS Doctors and Clinicians, 2026-05-29), with the health system. Typed door get_plan_hospitals. **Grain.** One row per plan_year x plan_key x hospital CCN with any evidence: facility_npi_listed, clinicians_listed, clinicians_affiliated, clinician_share, signal (hospital_npi_listed | many_affiliated_clinicians | few_affiliated_clinicians), hospital name, state, county, system_id, system_name, in_service_area, carried. Partitioned by dataset_id, plan_year. | column | type | meaning | |---|---|---| | plan_key | string | | | contract_id | string | | | ccn | string | | | hospital_name | string | | | hospital_state | string | | | hospital_county_fips | string | | | system_id | string | | | system_name | string | | | facility_npi_listed | boolean | | | clinicians_listed | bigint | | | clinicians_affiliated | bigint | | | clinician_share | double | | | signal | string | | | in_service_area | boolean | | | carried | boolean | | Tools that read it: get_plan_hospitals Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_network_plan_hospital_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_network_plan_hospital_v1")` first. # MA network intelligence: plan x NPI x listed ZIP with normalized specialty and county (2026, 2027) `medicare_silver.ma_network_provider_v1` · Medicare Advantage, Part D, Medicaid · status partial The directory table reduced to members and normalized: one specialty per NPI from NPPES (99.96% mapped; the printed label is blank on 87% of rows), the listed ZIP's county, the best source, and whether the row is the plan's own-year list or a labelled stand-in from the other year. **Grain.** One row per plan_year x cms_plan_id x npi x listed zip5, members only (api, printed, mpf, matched grade A/B): contract_id, plan_key (H1234-001), key_level (plan or contract), state, county_fips, NPPES entity_type and taxonomy, provider_class, specialty, adequacy_type, best_basis, year_basis (own_year | carried), plan_key_bases, sources, listings. Partitioned by dataset_id, plan_year. | column | type | meaning | |---|---|---| | contract_id | string | | | cms_plan_id | string | | | plan_key | string | | | key_level | string | | | npi | string | | | zip5 | string | | | state | string | | | county_fips | string | | | entity_type | string | | | taxonomy_code | string | | | provider_class | string | | | specialty | string | | | adequacy_type | boolean | | | best_basis | string | | | year_basis | string | | | plan_key_bases | string | | | sources | string | | | listings | bigint | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_network_provider_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_network_provider_v1")` first. # MA regional benchmarks and Part D national and LIS benchmarks, CY2006-2027 `medicare_silver.ma_part_d_benchmark_figure` · Medicare Advantage, Part D, Medicaid · status live · 3,111 rows Per contract year: the MA regional benchmark components for the 26 MA regions (statutory and plan-bid), the Part D regional low-income premium subsidy amounts for the 34 PDP regions (the regional LIS benchmark), and the national Part D figures from the late-July announcement: NAMBA, base beneficiary premium, de minimis (from 2015) and the statutory / plan-bid weights. 2027: NAMBA $296.05, base beneficiary premium $41.33. **Grain.** One row per published figure: (rate_year, table_kind, region_code, measure), with the verbatim source_line it was read from. | column | type | meaning | |---|---|---| | rate_year | int | | | table_kind | string | | | region_code | string | | | region_states | string | | | measure | string | | | column_header | string | | | value_text | string | | | value_num | double | | | value_unit | string | | | source_line | string | | | source_note | string | | | stated_year | int | | | source_document | string | | | source_member | string | | | extraction_engine | string | | | source_url | string | | | member_sha256 | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_part_d_benchmark_figure WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_part_d_benchmark_figure")` first. # CMS MA / Part D agent and broker compensation limits (FMV initial and renewal caps, referral fee caps), CY2019-CY2027 `medicare_silver.ma_partd_agent_broker_compensation_limit_v1` · Medicare Advantage, Part D, Medicaid · status live · 118 rows The most an MA organization, 1876 cost plan or PDP sponsor may pay an independent agent or broker each contract year, as CMS's annual HPMS memo prints it: fair market value for an initial enrollment, the renewal cap (at most 50% of FMV), and the referral/finder's fee cap; MA by jurisdiction (national; CT, PA, DC; CA, NJ; PR, VI), PDP national. Each row cites its memo, page and regulation. A regulatory ceiling, not what any plan pays. **Grain.** One plan_year x program (MA / PDP) x payment type (initial, renewal, referral) x jurisdiction x memo version. 118 rows CY2019-CY2027; CY2025 carries two memos (12 current + 12 superseded; Athena d2b07c0d, 2026-10-13). | column | type | meaning | |---|---|---| | plan_year | int | | | program | string | | | applies_to | string | | | payment_type | string | | | jurisdiction | string | | | jurisdiction_states | string | | | amount_usd | int | | | cap_rule | string | | | memo_status | string | | | superseded_by_doc_id | string | | | effective_start | date | | | effective_end | date | | | doc_id | string | | | source_doc_title | string | | | memo_date | date | | | memo_signer | string | | | source_url | string | | | source_page_url | string | | | source_member | string | | | page_number | int | | | section_citation | string | | | regulatory_basis | string | | | rounding_note | string | | | doc_sha256 | string | | | zip_sha256 | string | | | bronze_key | string | | | asserted_at | date | | | parser_artifact_hash | string | | | sha256_content_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_partd_agent_broker_compensation_limit_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_partd_agent_broker_compensation_limit_v1")` first. # CMS MA and PDP Enrollment by State/County/Contract (SCC), full version `medicare_silver.ma_pdp_enrollment_by_state_county_contract_v1` · Medicare Advantage, Part D, Medicaid · status live · 143,610,809 rows CMS's monthly enrollment by contract and the enrollee's county of residence (the payment county, not the service area), for MA (incl. 1876 Cost, HCPP, PACE, MSA, PFFS, LI NET) and stand-alone PDP contracts, with organization type and plan type per contract-county. The full version keeps the rows of 10 or fewer as suppressed cells. Heavy: pin report_month. **Grain.** One program (MA or PDP) x contract x county of residence x report_month, as CMS prints the full SCC file. 143,610,809 rows: MA 2006-10..2026-09, PDP 2007-01..2026-09, 240 distinct months (Athena c59eb5a8, 2026-10-13). | column | type | meaning | |---|---|---| | program | string | | | county_name | string | | | state_code | string | | | contract_id | string | | | organization_name | string | | | organization_type | string | | | plan_type | string | | | ssa_county_code | string | | | fips_county_code | string | | | ssa_county_code_raw | string | | | fips_county_code_raw | string | | | enrolled | bigint | | | enrolled_suppressed | boolean | | | enrolled_raw | string | | | report_month | date | | | file_version | string | | | source_member | string | | | source_page_url | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_pdp_enrollment_by_state_county_contract_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_pdp_enrollment_by_state_county_contract_v1")` first. # CMS MA and PDP Enrollment by State/County/Plan Type (SCP) `medicare_silver.ma_pdp_enrollment_by_state_county_plan_type_v1` · Medicare Advantage, Part D, Medicaid · status live · 3,048,097 rows CMS's monthly county enrollment by plan type, MA and stand-alone PDP files: the county total with the least suppression CMS publishes (it suppresses at plan type x county, not contract x county). **Grain.** One program (MA or PDP) x county x plan type x report_month. 3,048,097 rows, 120 months 2016-10..2026-09 (MA 118, PDP 119; Athena c59eb5a8, 2026-10-13). | column | type | meaning | |---|---|---| | program | string | | | county_name | string | | | state_code | string | | | plan_type | string | | | ssa_county_code | string | | | fips_county_code | string | | | ssa_county_code_raw | string | | | fips_county_code_raw | string | | | enrolled | bigint | | | enrolled_suppressed | boolean | | | enrolled_raw | string | | | report_month | date | | | file_version | string | | | source_member | string | | | source_page_url | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_pdp_enrollment_by_state_county_plan_type_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_pdp_enrollment_by_state_county_plan_type_v1")` first. # CMS Monthly Enrollment by State: Medicare eligibles and MA, other and PDP enrollment by state `medicare_silver.ma_pdp_enrollment_by_state_v1` · Medicare Advantage, Part D, Medicaid · status live · 6,565 rows CMS's own monthly state totals of Medicare eligibles and of enrollees in Medicare Advantage, in 'other' plans (1876 Cost, PACE, demonstrations) and in stand-alone PDPs, per state and territory. The external state-level rail for CPSC county enrollment: it prints totals CPSC suppresses, and it carries eligibles, which CPSC does not. **Grain.** One state or territory x report_month, as CMS totals it (eligibles, MA enrolled, other enrolled, PDP enrolled). 6,565 rows, 118 months 2016-10..2026-09 (Athena c59eb5a8, 2026-10-13). | column | type | meaning | |---|---|---| | state_name | string | | | state_code | string | | | ssa_state_code | string | | | fips_state_code | string | | | eligibles | bigint | | | eligibles_suppressed | boolean | | | eligibles_raw | string | | | ma_enrolled | bigint | | | ma_enrolled_suppressed | boolean | | | ma_enrolled_raw | string | | | other_enrolled | bigint | | | other_enrolled_suppressed | boolean | | | other_enrolled_raw | string | | | pdp_enrolled | bigint | | | pdp_enrolled_suppressed | boolean | | | pdp_enrolled_raw | string | | | report_month | date | | | file_version | string | | | source_member | string | | | source_page_url | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_pdp_enrollment_by_state_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_pdp_enrollment_by_state_v1")` first. # MA plan payment — county rollup `medicare_silver.ma_plan_payment_county` · Medicare Advantage, Part D, Medicaid · status live · 140,291 rows CMS county-level summary of MA Part C payments and risk: average PMPM federal payment, average risk score, and average rebate dollars, broken out by county, plan type, and SNP type. The public benchmark for what Medicare pays MA plans in a county. **Grain.** One row per payment year x county (SSA code) x plan type x SNP type. Verified: count(*) = count(distinct payment_year, ssa_county_code, plan_type, snp_plan_type) = 140,291, fully unique. Because there is exactly one CMS publication per year (bronze_publication_id is 1:1 with payment_year), payment_year is the minimal time key and bronze_publication_id is redundant. Each row is an AVERAGE across all the contracts/plans of that type in that county-year, not an individual plan. **How to use it.** Benchmark what Medicare pays MA plans in a county and how it has grown. Example: SELECT payment_year, round(avg(avg_ab_pmpm_payment),0) AS avg_ab_pmpm, round(avg(avg_rebate_pmpm_payment),0) AS avg_rebate FROM medicare_silver.ma_plan_payment_county WHERE ssa_county_code='05060' AND plan_type='HMO' AND snp_plan_type='NOT_SNP' GROUP BY payment_year ORDER BY payment_year; -- returns the year-over-year average A+B PMPM payment and rebate for general HMO plans in Contra Costa County CA. Pair with a state/county filter and plan_type to compare MA payment generosity across markets, or filter snp_plan_type<>'NOT_SNP' to study Special Needs Plan economics. **Traps.** - ssa_county_code is the SSA county scheme, NOT FIPS. Autauga AL is '01000' here but FIPS 01001; codes step by 10. Do NOT join this directly to FIPS-keyed tables without an SSA<->FIPS crosswalk, or every county will mismatch. - Each row is an AVERAGE across all contracts/plans of that type in the county-year, not an individual MA plan or contract. There is no contract_id/plan_id here. For plan-level detail you need a different table — this is the county aggregate only. - bronze_publication_id, sha256_content_hash, asserted_at, and parser_artifact_hash are all exactly 1:1 with payment_year (one CMS file per year). bronze_publication_id appears in the profiler's 'unique key' but is redundant — the true minimal grain is payment_year x ssa_county_code x plan_type x snp_plan_type (140,291 rows). There is no is_current column and no within-year duplication, so no snapshot dedup is required. - snp_plan_type='NOT_SNP' is an explicit value meaning a general (non-Special-Needs) plan, not a missing/null. Filtering snp_plan_type IS NOT NULL will NOT remove general plans; to get only SNPs use snp_plan_type <> 'NOT_SNP'. The other three values map to D-SNP (Dual-Eligible), C-SNP (Chronic or Disabling Condition), I-SNP (Institutional). - avg_rebate_pmpm_payment = 0 is meaningful, not missing: it is structural for MSA plans (all 1,262 rows) and frequent for PFFS. Treating 0 as null/excluding it will bias rebate analyses. There are no actual nulls anywhere in the table. - state_abbreviation has 55 distinct values including territories (GU, PR, VI), DC, and a sentinel '0' (a non-state placeholder). Don't assume exactly 50 states; filter the '0' row if you need real states only. - county_name is descriptive and can vary in spelling across years (e.g. SSA 24380 MN = 'Lake Of Woods' vs 'Lake Of Woods'). Always key/join on ssa_county_code (+ payment_year), never on county_name. | column | type | meaning | |---|---|---| | payment_year | int | MA payment/calendar year the figures apply to (int). Range 2015-2024, 10 distinct years, one CMS file per year. THIS is the time grain. | | ssa_county_code | string | 5-digit SSA/CMS county code (string, zero-padded, e.g. '01000'=Autauga AL, '05000'=Alameda CA). NOT FIPS (FIPS for Autauga is 01001) — codes increment by 10 within a state and the first 2 digits are an SSA state index. 3,224 distinct codes, each maps to exactly one (state, county). This is the county join key. | | state_abbreviation | string | 2-letter state/territory code derived from the county (string). 55 distinct values: 50 states + DC + territories GU, PR, VI, plus a sentinel '0' (non-state placeholder). No nulls. Redundant with ssa_county_code (functionally determined by it). | | county_name | string | Human-readable county name (string, no nulls). Descriptive only — NOT part of the key. Spelling can drift across years (e.g. SSA 24380 MN appears as both 'Lake Of Woods' and 'Lake Of Woods' with a double space). | | plan_type | string | MA plan product type (string). Exactly 6 values: HMO (52,568 rows), Local PPO (42,954), Regional PPO (34,211), PFFS (9,292), MSA (1,262), OTHER (4). Part of the grain key. | | snp_plan_type | string | Special Needs Plan category (string). Exactly 4 values: NOT_SNP (87,377 = general/non-SNP plans), Dual-Eligible (33,853 = D-SNP), Chronic or Disabling Condition (12,077 = C-SNP), Institutional (6,984 = I-SNP). 'NOT_SNP' is an explicit category, never null. Part of the grain key. | | avg_ab_pmpm_payment | double | Average Parts A+B per-member-per-month payment dollars CMS pays plans of this type in this county-year (double). Range $211.27-$1,649.43, mean ~$824, no nulls, no zeros. Rises over time ($714 avg in 2015 -> $895 in 2024). This is the core 'what Medicare pays' cost figure. | | avg_part_c_risk_score | double | Average CMS-HCC Part C risk score for enrollees in this county/plan-type/SNP cell (double, ~1.0 = average-risk beneficiary). Range 0.014-4.70, mean ~1.25. Higher = sicker/higher-paid population; SNP cells run higher. Creeps up over years (1.15->1.38) reflecting coding intensity. No nulls. | | avg_rebate_pmpm_payment | double | Average rebate dollars PMPM (double) — the portion of the bid-below-benchmark savings returned to the plan to fund extra benefits. Range $0-$627.95, mean ~$96, 3,432 zero rows. Zero is by design for MSA plans (all 1,262 = $0) and common for PFFS (1,746 zero); HMO/Regional PPO almost never zero. Grows sharply over time ($36 in 2015 -> $179 in 2024). No nulls. | | source_url | string | Provenance: the exact CMS .zip URL the year's data was extracted from (string). Exactly one per year; URL pattern changes across years (e.g. .../2015-payment-data.zip, .../files/zip/2024-plan-payment-zip-file.zip). | | sha256_content_hash | string | Provenance: SHA-256 of the source file content (string). Exactly one distinct value per payment_year — identifies the specific source artifact ingested. | | bronze_publication_id | string | Provenance: internal bronze-layer publication identifier (string, e.g. 'ma_plan_payment_2024_53379284'). EXACTLY 1:1 with payment_year — looks like a key but adds no grain beyond payment_year. The profiler reports it in the unique key only because it is collinear with the year. | | asserted_at | timestamp | Provenance: timestamp the row was written into the silver layer (timestamp UTC). One distinct value per payment_year (e.g. all 2015 rows = 2026-05-18 19:34:01 UTC). A pipeline/load timestamp, NOT a CMS publication date. | | parser_artifact_hash | string | Provenance: hash of the parser/code version used to extract the file (string, e.g. '3f6230c020473afb'). One distinct value per year; used for lineage/reproducibility. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_plan_payment_county WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_plan_payment_county")` first. # MA plan payment, county rollup, parser 0.4.0 `medicare_silver.ma_plan_payment_county_v2` · Medicare Advantage, Part D, Medicaid · status live · 232,368 rows CMS county-level summary of MA Part C payments and risk by county, plan type and SNP type: average A/B payment PMPM (standardized to a 1.0 risk score), average risk score, average rebate PMPM and the average MSA monthly deposit (2006-2012). Parser 0.4.0 reload; get_ma_plan_payment (level county) reads this table from 2026-10-05. **Grain.** One row per (payment_year, ssa_county_code, plan_type, snp_plan_type). 232,368 rows over 2006-2024, the served table's rows one for one (Athena 09c33b17, 2441fad6). | column | type | meaning | |---|---|---| | payment_year | int | | | ssa_county_code | string | | | state_abbreviation | string | | | county_name | string | | | plan_type | string | | | snp_plan_type | string | | | avg_ab_pmpm_payment | double | | | avg_part_c_risk_score | double | | | avg_rebate_pmpm_payment | double | | | avg_msa_monthly_deposit_pmpm | double | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_plan_payment_county_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_plan_payment_county_v2")` first. # MA plan payment — Part C (contract x plan x year) `medicare_silver.ma_plan_payment_part_c` · Medicare Advantage, Part D, Medicaid · status live · 40,014 rows CMS Part C plan-payment summary: per MA contract+plan+year, the average risk-adjusted A/B payment per member per month (avg_ab_pmpm_payment), the average enrollee risk score (avg_part_c_risk_score), and the average rebate PMPM (avg_rebate_pmpm_payment). The revenue side of MA economics. **Grain.** One row per Medicare Advantage contract x plan x payment year. Verified: contract_id x plan_id x payment_year = 40,014 distinct = 40,014 total rows. (Within any single payment_year, contract_id+plan_id alone is unique — 2,742 rows in 2015 rising to 5,539 in 2024.) **How to use it.** Benchmark what Medicare pays a given MA plan and how rich its rebate-funded extra benefits are, risk-adjusted. Example: SELECT payment_year, avg_ab_pmpm_payment, avg_part_c_risk_score, avg_rebate_pmpm_payment FROM medicare_silver.ma_plan_payment_part_c WHERE contract_id='H0028' AND plan_id='007' ORDER BY payment_year; -> the year-by-year per-member-per-month CMS payment, population risk score, and rebate for that specific plan. Aggregate by contract_id (not contract_name) for an insurer view, or by payment_year + plan_type for market trends; weight carefully since values are plan-level averages, not enrollment-weighted totals. **Traps.** - GRAIN IS contract_id x plan_id x payment_year (40,014 = total). The profiler's 5-column key (adding contract_name + plan_type + bronze_publication_id) is a redundant SUPERSET: within any single year (contract_id, plan_id) is already unique, and bronze_publication_id is 1:1 with payment_year. Do NOT key on or GROUP BY contract_name/plan_type to dedup — they are attributes. - contract_name is NOT stable across years: the same contract_id can carry up to 4 different names over 2015-2024 (organizations rebrand/merge). Join and aggregate on contract_id, not on the name; treating (contract_id, contract_name) as a fixed pair will double-count. - avg_rebate_pmpm_payment = 0.0 is a MEANINGFUL zero (plan receives no rebate), present in 3,844 rows — NOT a null and NOT missing data. All MSA plans are $0 by design, and EGWP plans (plan_id >= '800', 3,509 rows) average near-zero rebate (~$11.6 vs ~$132 for individual-market plans). Filtering out zeros will bias rebate stats upward and drop legitimate plans. - No is_current / no snapshot dedup needed: there is exactly ONE publication per payment_year (10 bronze_publication_ids, 10 source_urls, 10 sha256 hashes), all asserted_at on 2026-05-18. asserted_at is the pipeline LOAD time, not a content date — never use it as the time axis; use payment_year. - Unbalanced panel + plan-ID semantics: only 1,004 of ~9,783 plans appear in all 10 years (2,100 appear in just one) — plans enter/exit, so cross-year trends need care. Also numeric precision differs by vintage: 2015-2023 payment/rebate values are rounded to 2 decimals, but 2024 carries full-precision decimals (a source/parser artifact) — round before exact-equality comparisons across years. - Scope: this is PLAN-level (PBP), aggregate, average-PMPM data — it is the only contract-x-plan-x-year payment table; it is NOT beneficiary-level, NOT monthly, and contains no benchmark/bid or county-rate columns. The three measures (avg AB PMPM payment, avg Part C risk score, avg rebate PMPM) are the entire payment fact set. | column | type | meaning | |---|---|---| | payment_year | int | CMS Medicare Advantage payment year (calendar year), int 2015-2024. The temporal dimension and part of the grain key. Maps 1:1 to bronze_publication_id and source_url (one CMS annual ZIP per year). NOT a snapshot/load date — it is the substantive year the payment data describes. | | contract_id | string | CMS MA contract identifier, 5-char string. Always 'H'+4 digits (39,232 rows, all plan types) or 'R'+4 digits (782 rows, exclusively Regional PPO). 1,047 distinct contracts. Part of the grain key. Join key to other MA contract-level tables (e.g. Star Ratings, enrollment). | | plan_id | string | CMS Plan Benefit Package (PBP) ID within a contract, zero-padded 3-char string (always length 3, e.g. '007', '438', '815'). 518 distinct values. Part of the grain key. plan_id >= '800' (3,509 rows) are employer/union group plans (EGWP) — they have near-zero rebates (avg $11.6 PMPM vs $132 for individual-market plans). The full plan = contract_id + plan_id (a.k.a. H#####-### / CCN-style ID). | | contract_name | string | Legal/marketing name of the contracting organization (e.g. 'AETNA LIFE INSURANCE COMPANY', 'KAISER FOUNDATION HP OF CO'). 890 distinct. ATTRIBUTE of contract_id, NOT part of the minimal key. WARNING: it is NOT stable — the same contract_id can carry up to 4 different names across years (e.g. H5928 rebrands), so do not treat (contract_id, contract_name) as a fixed pair; key on contract_id. | | plan_type | string | MA plan-type category. 6 observed values: HMO (27,183), Local PPO (11,576), Regional PPO (782, always R-prefix contracts), PFFS (416), MSA (54), 'Medicare-Medicaid Plan HMOPOS' (3). Attribute of the plan, not part of the minimal key. MSA plans structurally always have $0 rebate. | | avg_ab_pmpm_payment | double | Average Part A & B benefit payment per member per month (USD), the core risk-adjusted CMS payment to the plan for covering standard Medicare benefits. double, 0% null, never zero. Range 238.6 to 1,360.02, mean ~813. Rises over time (2015 avg $694 -> 2024 avg $880). This is the headline MA Part C cost-to-Medicare figure in this table. | | avg_part_c_risk_score | double | Average Part C (CMS-HCC) risk score for the plan's enrollees. double, 0% null, never zero. Range 0.398 to 4.11, mean ~1.135 (1.0 = average-risk beneficiary). Drives the AB payment: higher = sicker/costlier population. Highest scores (>3.7) concentrate in 2024 and special-needs-type plans. | | avg_rebate_pmpm_payment | double | Average MA rebate payment per member per month (USD) — the portion of the plan's bid-below-benchmark savings CMS returns to fund extra benefits/reduced premiums. double, 0% null. Range 0 to 958.0, mean ~122. 3,844 rows are exactly 0.0 — a MEANINGFUL zero (no rebate), not a null: all 54 MSA rows are $0 by design, PFFS/Regional PPO over-represented, and EGWP (plan_id>=800) plans average near-zero. | | source_url | string | CMS download URL for the originating annual 'plan payment data' ZIP. 10 distinct (one per payment_year). Provenance only; URL pattern changes year to year (e.g. .../downloads/2015-payment-data.zip vs /files/zip/2024-plan-payment-zip-file.zip). | | sha256_content_hash | string | SHA-256 of the ingested source file content. 10 distinct (one per year). Provenance/immutability fingerprint of the raw CMS file; identical for all rows from the same year. | | bronze_publication_id | string | Internal bronze-layer publication identifier, format 'ma_plan_payment__' (e.g. ma_plan_payment_2024_53379284). 10 distinct, maps 1:1 to payment_year. This is the snapshot/ingestion unit — because there is exactly one publication per year, there is no is_current flag and no multi-snapshot dedup to worry about. | | asserted_at | timestamp | Timestamp the row was asserted into silver. 10 distinct values, ALL on 2026-05-18 (within ~2 minutes of each other, one per year-file loaded sequentially). This is pipeline load time, NOT a data-content date — do not use it for time-series analysis; use payment_year. | | parser_artifact_hash | string | Hash of the parser code/artifact that produced these rows. Exactly 1 distinct value across the entire table — all 40,014 rows parsed by the same parser version. Lineage/reproducibility field. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_plan_payment_part_c WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_plan_payment_part_c")` first. # MA plan payment, Part C (contract x plan x year), parser 0.4.0 `medicare_silver.ma_plan_payment_part_c_v2` · Medicare Advantage, Part D, Medicaid · status live · 65,872 rows CMS Part C plan-payment summary per MA contract, plan and payment year: the average A/B payment PMPM standardized to a 1.0 risk score (avg_ab_pmpm_payment, an amount, not the benchmark and not dollars paid), the average Part C risk score and the average rebate PMPM, plus the average MSA monthly deposit (2006-2012). Parser 0.4.0 reload of the same CMS workbooks; get_plan_payment and get_ma_plan_payment read this table from 2026-10-05. **Grain.** One row per (payment_year, contract_id, plan_id). 65,872 rows over 19 payment years 2006-2024, the served table's rows one for one (Athena 09c33b17, 2441fad6). | column | type | meaning | |---|---|---| | payment_year | int | | | contract_id | string | | | plan_id | string | | | contract_name | string | | | plan_type | string | | | avg_ab_pmpm_payment | double | | | avg_part_c_risk_score | double | | | avg_rebate_pmpm_payment | double | | | avg_msa_monthly_deposit_pmpm | double | | | contract_level_row | boolean | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Tools that read it: get_quality_bonus Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_plan_payment_part_c_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_plan_payment_part_c_v2")` first. # MA plan payment — Part D (plan x year) `medicare_silver.ma_plan_payment_part_d` · Medicare Advantage, Part D, Medicaid · status live · 48,455 rows CMS Part D plan-payment reference: per plan+year averages of the federal subsidies CMS pays each MA-PD / standalone PDP (avg_direct_subsidy, avg_reinsurance, avg_low_income_cost_sharing) plus the plan's average Part D risk score (avg_part_d_risk_score). **Grain.** One row per Medicare plan per payment year — uniquely keyed by (payment_year, contract_id, plan_id). Verified: DISTINCT on those three columns = 48,455, exactly equal to the table's row_count of 48,455. contract_name, organization_type, and all dollar/risk values are single-valued attributes of that key (0 groups had >1 name or org_type), so they are descriptive, not part of the key. The profiler's 6-column 'verified_unique_by' is an inflated superset. **How to use it.** Trend a specific drug plan's federal subsidies over time, or benchmark a sponsor against peers. Example: SELECT payment_year, avg_direct_subsidy_pmpm, avg_reinsurance_pmpm, avg_low_income_cost_sharing_pmpm, avg_part_d_risk_score FROM medicare_silver.ma_plan_payment_part_d WHERE contract_id='S5601' AND plan_id='001' ORDER BY payment_year — returns the year-by-year per-member-per-month subsidies CMS paid that standalone PDP and how its risk score moved. To compare plan types in one year, add WHERE payment_year=2024 and GROUP BY organization_type with AVG() over the value columns. **Traps.** - Grain is (payment_year, contract_id, plan_id) — NOT contract_id or plan_id alone. plan_id has only 521 distinct values because '001','801', etc. are reused across thousands of contracts; it is meaningless without contract_id. contract_id+plan_id alone (11,408 combos) ignores the year and collapses the time series. - No is_current/version column and no snapshot duplication. Each payment_year was ingested from exactly ONE CMS file: 1 distinct bronze_publication_id, sha256_content_hash, and source_url per year (10 each), 1 parser_artifact_hash overall, all asserted 2026-05-18. So you can SELECT freely without a dedup filter — the year-grain is already unique. Do not GROUP BY or dedup on the provenance columns expecting per-row variation. - avg_direct_subsidy_pmpm is legitimately NEGATIVE for ~6,200 rows (min -123.40). A negative value means CMS nets a recoupment because the plan's risk-adjusted basic-benefit bid is below the standardized benchmark — it is correct data, not an error. Do not clamp/abs() it. - 0.0 in avg_reinsurance_pmpm and avg_low_income_cost_sharing_pmpm is a real value (a floor), not a missing value — all four value columns are 100% non-null. Whole plan types legitimately sit at 0 (POS Contractor, LI NET Sponsor, MSA have 0 reinsurance and 0 LICS; Employer-direct PDPs have 0 LICS). Filter on organization_type, not on value=0, to scope to real Part-D-bearing plans. - asserted_at is the ingestion timestamp (single 2026-05-18 backfill), NOT the data's effective period — always use payment_year as the time dimension. Likewise contract_name and organization_type can change across years for the same contract_id (renames/recategorization), so join/label by year, not statically. - All amounts are AVERAGES across the plan's enrollees expressed PMPM (per-member-per-month), already aggregated by CMS — they are not enrollment-weighted totals and there is no member-count column here, so you cannot reconstruct total dollars or weight a national average from this table alone. | column | type | meaning | |---|---|---| | payment_year | int | CMS Part D payment/contract year the row describes (the time dimension). Integer, observed 2015-2024 (10 years). One CMS source file per year; part of the grain key. NOTE: this is the payment year, not a publication date. | | contract_id | string | CMS plan-sponsor contract identifier (e.g. H0022, S5601, R3175, E0654). First letter encodes contract type: H = MA/MA-PD coordinated-care & PFFS/Demo/PACE (38,235 rows, 1,254 contracts), S = standalone PDP (9,560 rows, 82 contracts), R = Regional PPO (588 rows), E = Employer/Union direct-contract PDP (39 rows), X = Demo (33 rows). NOT unique alone (1,373 distinct); one contract holds many plans across many years. | | plan_id | string | Zero-padded 3-digit plan/PBP segment within the contract (observed '001'-'879'). Identifies a specific benefit package under the contract. NOT unique on its own (only 521 distinct values; the same plan_id like '001' or '801' recurs across thousands of contracts) — it is only meaningful combined with contract_id. Together contract_id+plan_id = the plan entity (11,408 distinct), and +payment_year = the grain. | | contract_name | string | Plan-sponsor / parent organization name in upper case (e.g. 'BLUE CROSS OF CALIFORNIA', 'IBT VOLUNTARY EMPLOYEE BENEFITS TRUST'). 1,166 distinct. Functionally dependent on contract_id within a year (0 cases of one contract+plan+year mapping to >1 name) — a descriptive label, NOT a key. Can drift year-to-year as sponsors rename/merge. | | organization_type | string | Plan/contract type classification. 11 values observed: Local CCP (35,755 — MA-PD HMO/PPO, the bulk), PDP (9,560 — standalone Part D), National PACE (1,425), Regional CCP (588), Demo (485), 1876 Cost (290), PFFS (279), Employer/Union Only Direct Contract PDP (39), POS Contractor (20), LI NET Sponsor (13), MSA (1). Use this to filter to true Part-D-bearing plan kinds. Functionally dependent on contract+plan+year (never multivalued per group). | | avg_direct_subsidy_pmpm | double | Average CMS Part D direct-subsidy payment, per-member-per-month USD, for the plan in that year. CAN BE NEGATIVE (observed min -123.40, e.g. Imperial Health Plan of CA 2022; max +325.93; mean ~21.36). Negative = CMS net recoups (plan's risk-adjusted bid for basic benefit is below the national average / standardized bid amount). Fully populated (0 nulls). | | avg_part_d_risk_score | double | Average Part D (RxHCC) risk-adjustment score for the plan's enrollees in that year. Range observed 0.0-5.551, mean ~1.06 (1.0 = average-risk beneficiary). Drives the direct-subsidy calculation. Fully populated. A 0.0 here is a genuine reported value for some small/new plans, not a null. | | avg_reinsurance_pmpm | double | Average federal reinsurance subsidy PMPM (USD) — CMS share (historically ~80%) of catastrophic-phase drug costs above the threshold. Range 0.0-5,195.89 (extreme highs are real specialty/high-cost plans, e.g. H6745 2016). 0.0 is a true floor for plan types with no catastrophic reinsurance flow (POS Contractor, LI NET Sponsor, MSA are all 0). Fully populated (0 nulls). | | avg_low_income_cost_sharing_pmpm | double | Average Low-Income Cost-Sharing (LICS) subsidy PMPM (USD) — CMS payment covering cost-sharing for LIS/dual-eligible members. Range 0.0-635.51. 0.0 is a true floor (Employer-direct PDP, POS Contractor, LI NET, MSA are all 0; Demo plans always positive). Fully populated (0 nulls). | | source_url | string | Provenance: the CMS download URL of the year's payment-data zip (e.g. .../downloads/2016-payment-data.zip). Exactly one URL per payment_year (10 distinct total). Identifies the official source file, not a per-row link. | | sha256_content_hash | string | Provenance: SHA-256 of the ingested source file content. Exactly 1 distinct value per payment_year (10 total) — every row from the same year shares one hash. Use to detect upstream file changes / confirm immutability of a year's load. | | bronze_publication_id | string | Provenance: internal bronze-layer publication identifier (e.g. 'ma_plan_payment_2016_19614634'). One distinct value per payment_year (10 total). Ties the silver row back to its bronze ingestion batch. Looks key-ish but is just the per-year load id. | | asserted_at | timestamp | Provenance: timestamp the row was asserted into the silver table (timestamp with tz). 10 distinct values, all on 2026-05-18 (19:34-19:36 UTC) — one assertion event per year-file in a single backfill load. This is an ingestion/processing time, NOT the data's effective date; do not use it as the time dimension (use payment_year). | | parser_artifact_hash | string | Provenance: hash of the parser code/artifact version that produced the rows. Exactly 1 distinct value across the whole table — all rows parsed by the same parser version. Use to detect parser changes on future reloads. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_plan_payment_part_d WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_plan_payment_part_d")` first. # MA plan payment, Part D (plan x year), parser 0.4.0 `medicare_silver.ma_plan_payment_part_d_v2` · Medicare Advantage, Part D, Medicaid · status live · 84,466 rows CMS Part D plan-payment reference per plan and payment year: the average direct subsidy PMPM (standardized to a 1.0 risk score), reinsurance and low-income cost-sharing PMPMs and the average Part D risk score, for MA-PD and stand-alone PDP plans. Parser 0.4.0 reload; get_plan_payment and get_ma_plan_payment read this table from 2026-10-05. **Grain.** One row per (payment_year, contract_id, plan_id). 84,466 rows over 2006-2024: the served table's 84,455 rows one for one plus the 11 contract rows of 2006 (Athena 09c33b17, 2441fad6). | column | type | meaning | |---|---|---| | payment_year | int | | | contract_id | string | | | plan_id | string | | | contract_name | string | | | organization_type | string | | | avg_direct_subsidy_pmpm | double | | | avg_part_d_risk_score | double | | | avg_reinsurance_pmpm | double | | | avg_low_income_cost_sharing_pmpm | double | | | contract_level_row | boolean | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_plan_payment_part_d_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_plan_payment_part_d_v2")` first. # MA Rate Calculation Data: how CMS computed each county's MA rate, 1999-2027 `medicare_silver.ma_rate_calculation_cell` · Medicare Advantage, Part D, Medicaid · status live · 8,268,673 rows CMS's ratebook supporting data: for every rate year and county, how the MA rate was built. The risk-rate build (prior FFS and pre-ACA rates, minimum update, GME/IME/KAC, AGA, credibility, the current FFS rate, the quartile (applicable) percent, the qualifying-county double bonus, the caps and the 0%, 3.5% and 5% bonus-tier rates, which are the ratebook), the pre-2012 aged and disabled builds, the PACE and ESRD builds, the county statutory component of the regional benchmarks, and the five-year county FFS risk-score history. Joins medicare_silver.ma_county_ratebook on (rate_year, geo_code = ssa_county_code). **Grain.** One row per published cell: (rate_year, rate_period, source_member, row_number, column_index). Long form; pivot by measure_key. | column | type | meaning | |---|---|---| | rate_year | int | | | rate_period | string | | | effective_period_start | date | | | effective_period_end | date | | | table_kind | string | | | source_member | string | | | geo_level | string | | | geo_code | string | | | state | string | | | county_name | string | | | row_number | int | | | column_index | int | | | column_header | string | | | column_group | string | | | column_formula | string | | | measure_key | string | | | value_text | string | | | value_num | double | | | value_unit | string | | | source_url | string | | | member_sha256 | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_calculation_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_calculation_cell")` first. # MA Rate Calculation Data, parse revision 2: one measure_key per column, 1999-2027 `medicare_silver.ma_rate_calculation_cell_v2` · Medicare Advantage, Part D, Medicaid · status live · 8,268,673 rows CMS's ratebook supporting data (how every county's MA rate was built, 1999-2027), re-parsed from the same SHA-pinned publisher zips with measure_key unique within each member. Revision 1 keyed a column by its own header stack only, so a sub-label CMS prints under two spanning labels collapsed into one key. Revision 2 changes ONLY those 725,442 cells: it carries in the spanning label that covers the column ('Medicare Aged Benes In 1996 | Demographic Factor | Part A' vs 'Risk HMO Aged Benes 12/97 | ...'; '{Y} Dialysis Rate (a) | After $6 user fee deduction' vs '{Y} Dialysis Rate for PACE Plan (c) | ...'; 'County Rate ... | 3 Stars' vs 'Region Rate ... | 3 Stars'; 'For Non PACE plan | {Y} AGA factor ...' vs 'For PACE plan | ...') or, where no spanning label separates them, names the rate the column follows ('Rate | Category (for: {Y} Rate | Before Budget | Neutr. Adj.)'). Every other key, value and column is identical to revision 1; measure_key_v1 carries the revision-1 key. **Grain.** One row per published cell: (rate_year, rate_period, source_member, row_number, column_index), the same 8,268,673 cells as medicare_silver.ma_rate_calculation_cell; measure_key is unique within (rate_year, rate_period, source_member). | column | type | meaning | |---|---|---| | rate_year | int | | | rate_period | string | | | effective_period_start | date | | | effective_period_end | date | | | table_kind | string | | | source_member | string | | | geo_level | string | | | geo_code | string | | | state | string | | | county_name | string | | | row_number | int | | | column_index | int | | | column_header | string | | | column_group | string | | | column_formula | string | | | measure_key | string | | | value_text | string | | | value_num | double | | | value_unit | string | | | source_url | string | | | member_sha256 | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | | parse_revision | int | | | measure_key_v1 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_calculation_cell_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_calculation_cell_v2")` first. # MA rate notices CY2000-2027: the call letter MOOP, cost-sharing and MLR tables `medicare_silver.ma_rate_notice_call_letter` · Medicare Advantage, Part D, Medicaid · status live · 2,259 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): the call letter MOOP, cost-sharing and MLR tables, one row per cell of the MOOP, cost-sharing and MLR credibility tables. Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per cell of the MOOP, cost-sharing and MLR credibility tables: (sha256_content_hash,page,line_index,token_index). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | source_stage | string | | | product | string | | | family | string | | | table_caption | string | | | row_label | string | | | row_path | string | | | calendar_year | int | | | column_index | int | | | column_header | string | | | value_num | double | | | value_text | string | | | value_unit | string | | | engine2_confirmed | boolean | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | source_line | string | | | source_url | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_call_letter WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_call_letter")` first. # MA rate notices CY2000-2027: the pinned documents (PDF, ZIP, HTML) `medicare_silver.ma_rate_notice_document` · Medicare Advantage, Part D, Medicaid · status live · 124 rows The register of every CMS MA rate notice file since CY2000 (Early Preview, Advance Notice, Rate Announcement, fact sheets and their ZIP attachments): stage, title, release date, source URL, SHA-256, pages, how many values were parsed and the parse scope. Join ma_rate_notice_value and ma_rate_notice_figure on sha256_content_hash. **Grain.** One row per pinned file: (rate_year, sha256_content_hash). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | title | string | | | release_date | string | | | item_page_url | string | | | source_url | string | | | file_name | string | | | media_type | string | | | bytes | int | | | sha256_content_hash | string | | | last_modified | string | | | pages | int | | | values_parsed | int | | | parse_scope | string | | | bronze_uri | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_document WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_document")` first. # MA rate notices CY2000-2027: documents, every printed number, curated figures `medicare_silver.ma_rate_notice_figure` · Medicare Advantage, Part D, Medicaid · status live · 697 rows CMS's Early Preview, Advance Notice, Rate Announcement and fact sheets for every rate year since 2000, loaded as data: the payment impact table, the risk score trend, growth percentages, normalization factors, the coding adjustment, and every other number with its verbatim line. **Grain.** Figures: one row per (rate_year, stage, figure_key, qualifier, source_stage). Values: one row per printed number (sha256_content_hash, page, line_index, token_index). Documents: one row per pinned file. | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | figure_key | string | | | qualifier | string | | | value_num | double | | | value_text | string | | | value_unit | string | | | footnote | string | | | label_as_printed | string | | | includes_risk_score_trend | boolean | | | source_stage | string | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | source_line | string | | | extraction_rule | string | | | source_url | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_figure WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_figure")` first. # MA rate notices CY2000-2027: the Part D benefit parameters by year `medicare_silver.ma_rate_notice_part_d_parameter` · Medicare Advantage, Part D, Medicaid · status live · 3,388 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): the Part D benefit parameters by year, one row per Part D parameter x contract year, and the annual percentage (API / CPI) indexing rows. Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per Part D parameter x contract year, and the annual percentage (API / CPI) indexing rows: (sha256_content_hash,page,line_index,token_index). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | source_stage | string | | | table_caption | string | | | section | string | | | parameter_path | string | | | parameter_label | string | | | contract_year | int | | | column_index | int | | | value_num | double | | | value_text | string | | | value_unit | string | | | engine2_confirmed | boolean | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | source_line | string | | | source_url | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_part_d_parameter WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_part_d_parameter")` first. # MA rate notices CY2000-2027: the MA payment parameter tables `medicare_silver.ma_rate_notice_payment_parameter` · Medicare Advantage, Part D, Medicaid · status live · 1,978 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): the MA payment parameter tables, one row per cell of the rebate, applicable percentage, bid-to-benchmark, blended benchmark, actuarial value and claims-processing tables. Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per cell of the rebate, applicable percentage, bid-to-benchmark, blended benchmark, actuarial value and claims-processing tables: (sha256_content_hash,page,line_index,token_index). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | source_stage | string | | | product | string | | | family | string | | | table_caption | string | | | row_label | string | | | row_path | string | | | calendar_year | int | | | column_index | int | | | column_header | string | | | value_num | double | | | value_text | string | | | value_unit | string | | | engine2_confirmed | boolean | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | source_line | string | | | source_url | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_payment_parameter WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_payment_parameter")` first. # MA rate notices CY2000-2027: the projection and trend-basis tables `medicare_silver.ma_rate_notice_projection` · Medicare Advantage, Part D, Medicaid · status live · 17,358 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): the projection and trend-basis tables, one row per cell of the key projection, enrollment, Part A/B, service category and USPCC trend-basis tables. Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per cell of the key projection, enrollment, Part A/B, service category and USPCC trend-basis tables: (sha256_content_hash,page,line_index,token_index). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | source_stage | string | | | product | string | | | family | string | | | table_caption | string | | | row_label | string | | | row_path | string | | | calendar_year | int | | | column_index | int | | | column_header | string | | | value_num | double | | | value_text | string | | | value_unit | string | | | engine2_confirmed | boolean | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | source_line | string | | | source_url | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_projection WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_projection")` first. # MA rate notices CY2000-2027: every printed risk model factor `medicare_silver.ma_rate_notice_risk_model_cell` · Medicare Advantage, Part D, Medicaid · status live · 57,194 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): every printed risk model factor, one row per printed risk factor (CMS-HCC, RxHCC, ESRD, frailty, risk score, predictive ratio, CY2004-2007 dollar coefficients, CY2005-2008 transplant calculations). Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per printed risk factor (CMS-HCC, RxHCC, ESRD, frailty, risk score, predictive ratio, CY2004-2007 dollar coefficients, CY2005-2008 transplant calculations): (sha256_content_hash,page,line_index,token_index). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | source_stage | string | | | status | string | | | model_key | string | | | table_kind | string | | | table_caption | string | | | row_label | string | | | variable | string | | | calendar_year | int | | | column_index | int | | | column_header | string | | | value_num | double | | | value_text | string | | | value_unit | string | | | engine2_confirmed | boolean | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | source_line | string | | | source_url | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | | row_path | string | | | table_block | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_risk_model_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_risk_model_cell")` first. # MA rate notices CY2000-2027: how each Advance Notice figure moved to the final `medicare_silver.ma_rate_notice_stage_change` · Medicare Advantage, Part D, Medicaid · status live · 374 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): how each Advance Notice figure moved to the final, one row per figure x rate year: the Advance Notice value against the final, with CMS's restatement. Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per figure x rate year: the Advance Notice value against the final, with CMS's restatement: (rate_year,figure_key,qualifier). | column | type | meaning | |---|---|---| | rate_year | int | | | figure_key | string | | | qualifier | string | | | value_unit | string | | | advance_value | double | | | advance_text | string | | | advance_source_stage | string | | | final_value | double | | | final_text | string | | | final_source_stage | string | | | change | double | | | advance_restated_value | double | | | advance_restated_differs | boolean | | | advance_includes_risk_score_trend | boolean | | | final_includes_risk_score_trend | boolean | | | final_sha256_content_hash | string | | | advance_sha256_content_hash | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_stage_change WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_stage_change")` first. # MA rate notices CY2000-2027: the per capita cost (USPCC) history `medicare_silver.ma_rate_notice_uspcc_estimate` · Medicare Advantage, Part D, Medicaid · status live · 5,571 rows A product of the CMS MA rate notices (register cms_ma_rate_notices): the per capita cost (USPCC) history, one row per calendar year x part x population as printed in one edition, current and prior estimate. Built from the same load as the value table and pointing at the printed number (sha256_content_hash, page, line_index, source_line); never more certain than the print. Read the dataset's traps before comparing years. **Grain.** One row per calendar year x part x population as printed in one edition, current and prior estimate: (sha256_content_hash,table_kind,population,part,calendar_year,row_variant). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | source_stage | string | | | table_kind | string | | | population | string | | | part | string | | | calendar_year | int | | | row_variant | string | | | current_estimate | double | | | prior_estimate | double | | | ratio_printed | double | | | ratio_basis | string | | | ratio_check | boolean | | | table_caption | string | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | source_line | string | | | source_url | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | | prior_kind | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_uspcc_estimate WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_uspcc_estimate")` first. # MA rate notices CY2000-2027: every printed number with its verbatim line `medicare_silver.ma_rate_notice_value` · Medicare Advantage, Part D, Medicaid · status live · 209,398 rows Every number printed in CMS's MA rate notices and fact sheets since CY2000, with its page, row label, column header, table caption, verbatim source line and whether a second PDF engine re-found it (engine2_confirmed). Raw print: it includes years, page and section numbers; filter by table_caption and row_label, never sum it. The curated figures are cms_ma_rate_notices. **Grain.** One row per printed number: (sha256_content_hash, page, line_index, token_index). | column | type | meaning | |---|---|---| | rate_year | int | | | stage | string | | | sha256_content_hash | string | | | page | int | | | line_index | int | | | token_index | int | | | row_label | string | | | column_header | string | | | table_caption | string | | | section_heading | string | | | value_text | string | | | value_num | double | | | value_unit | string | | | footnote | string | | | x0 | double | | | source_line | string | | | engine2_confirmed | boolean | | | source_url | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_rate_notice_value WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_rate_notice_value")` first. # MA ma state county penetration `medicare_silver.ma_state_county_penetration` · Medicare Advantage, Part D, Medicaid · status live One row per (county, month). Each row records eligibles (Medicare-eligible population), enrolled (MA-enrolled population), and penetration (enrolled / eligibles). Includes both FIPS-based and SSA-based county identifiers, plus human-readabl **Grain.** One row per county (FIPS) per monthly report. The minimal verified unique key is (fips, report_month): 691,560 rows = 691,560 distinct (fips, report_month) groups, with a proven max duplicate count of 1. fips alone has 3,533 distinct values across 215 monthly snapshots; report_month spans 215 months (2008-06 .. 2026-04). **How to use it.** Trend MA penetration for a county over time: SELECT report_month, eligibles, enrolled, penetration FROM medicare_silver.ma_state_county_penetration WHERE fips='04021' AND suppression_reason_code='none' ORDER BY report_month. Answers 'how has Medicare Advantage market share in Pinal County, AZ evolved month over month?' For a clean national county cross-section, add WHERE fips NOT IN ('00000','0') AND suppression_reason_code='none' to drop the Pending rollup bucket and small-cell-suppressed cells. **Traps.** - The grain is (fips, report_month) — NOT any of the period columns the profiler latched onto. report_month, observed_period, and effective_period_start are three identical copies of the same month (0 mismatches), and effective_period_end is just that month's last day; don't mistake them for separate dimensions. - ssa / (ssa, report_month) looks like an alternate key but is NOT unique: Rota, Saipan and Tinian (N. Mariana Islands) all collapse to ssa '63050', giving ~471 duplicate (ssa, month) pairs. Join and dedup on fips, never on ssa. Likewise fipsst is inconsistently zero-padded ('01' vs '1', '00' vs '0'), so aggregate by substring(fips,1,2) or state_name, not raw fipsst. - Suppression is real and asymmetric: 13,675 rows are 'small_cell_suppressed' → enrolled is NULL but enrolled_lower_bound=0 / enrolled_upper_bound=10 (CMS masks counts of 1-10). penetration is also NULL for these. Treating NULL enrolled as 0 will understate enrollment; use the [0,10] band. A further 270 unsuppressed ('none') rows also have NULL enrolled (early territory months + the Pending bucket where eligibles are known but enrollment wasn't reported). - penetration is mostly 0-1 but 68 rows exceed 1.0 (max 2.136, e.g. Pinal County AZ in 2010 where reported enrolled ~18k > eligibles ~8.5k). This is an upstream CMS data quirk, not a computed error — clamp or flag if you need a guaranteed 0-1 share. Also 300 rows have enrolled > eligibles overall. - There is no vintage/revision/is_current dedup to do: cms_vintage_sequence=1, parse_revision=1, and asserted_at is a single date (2026-05-15) for every row. It is one immutable backfilled snapshot of 215 monthly CMS files (one source_url + sha256 per month). A 'Pending State/County Designation' rollup row (fips '00000', sometimes unpadded '0', ssacnty '999') exists in many months as a not-yet-geocoded bucket — exclude it (and the territory rows) for clean county-level CONUS analysis. | column | type | meaning | |---|---|---| | fipsst | string | State portion of FIPS (first 2 chars). 64 distinct values — note it is NOT consistently zero-padded across the history (you see both '01'/'1', '04'/'4', '00'/'0'), so do not GROUP BY fipsst expecting 50-ish clean states; derive from substring(fips,1,2) or use state_name. Includes territories 60/66/69/72/78. | | fipscnty | string | County portion of FIPS (last 3 chars). '000' for the Pending/rollup bucket. | | report_month | date | First day of the report month (date). Half the grain key. 215 distinct months, monthly cadence 2008-06-01 .. 2026-04-01. Identical in value to observed_period and effective_period_start (0 mismatches) — those are redundant copies. | | state_name | string | Human-readable state/territory name. Has casing/spelling drift over time ('Pending State Designation' vs 'PENDING STATE DESIGNATION', 'Pending County Design' truncation) — treat as descriptive, not a key. | | county_name | string | Human-readable county name (e.g., Autauga, Baldwin). Descriptive only; same casing/truncation drift caveat. | | fips | string | 5-char county FIPS code = fipsst//fipscnty. THE county identifier and half the grain key. 3,533 distinct. Caveat: not always zero-padded — a special rollup bucket appears as both '00000' and '0' in different months (see gotchas). | | ssast | string | SSA state code (CMS's legacy Social Security Administration geography numbering, distinct from FIPS). | | ssacnty | string | SSA county code. '999' marks the Pending/unknown-county rollup bucket; '000' = the state's primary county slot in SSA numbering. | | ssa | string | 5-char SSA code = ssast//ssacnty. An alternate geography key but NOT unique per month: the three Northern Mariana Islands counties (Rota/Saipan/Tinian) all map to ssa '63050', so (ssa, report_month) has ~471 collisions and is finer than the true grain. Use fips, not ssa, as the join key. | | eligibles | int | Count of Medicare beneficiaries eligible for MA in that county-month (the denominator). Never null, never zero in this data. This is total Medicare eligibility (FFS + MA), so penetration = enrolled/eligibles. | | enrolled | int | Count enrolled in an MA/Part-C/cost plan (the numerator). NULL when small_cell_suppressed (13,675 rows) OR when the territory/Pending bucket did not report enrollment (270 'none' rows). When present and unsuppressed it equals both bound columns. | | enrolled_lower_bound | int | Lower bound of enrolled. Equals enrolled exactly for unsuppressed rows. For small_cell_suppressed rows it is 0 (the CMS small-cell band is [0,10]). | | enrolled_upper_bound | int | Upper bound of enrolled. Equals enrolled for unsuppressed rows; 10 for every suppressed row (CMS masks counts 1-10 as the range 0-10). Use the [lower,upper] band to reason about suppressed cells instead of treating enrolled NULL as zero. | | penetration | double | MA penetration rate = enrolled/eligibles, as a fraction (0-1 typically; double). Range observed 0.0016 .. 2.136, avg ~0.284. NULL whenever enrolled is NULL (13,946 rows). 68 rows exceed 1.0 (a known CMS source quirk where reported enrolled > eligibles, e.g. Pinal County AZ 2010 ≈ 2.1×) — clamp/flag if you need a clean 0-1 rate. | | suppression_reason_code | string | Why a cell is masked. Two values: 'none' (677,885 rows, normal) and 'small_cell_suppressed' (13,675 rows, count was 1-10 so enrolled is hidden and bounds are [0,10]). This is the column to filter on to drop suppressed cells. | | observed_period | date | Redundant copy of report_month (0 mismatches). Part of Vlada's temporal-provenance envelope; carries no extra info here. | | asserted_at | date | When Vlada asserted/loaded this snapshot. Single constant value 2026-05-15 for the entire table — confirms this is one backfilled load, not an incrementally appended feed. | | effective_period_start | date | Start of the month the data is effective for — identical to report_month (0 mismatches). Vlada bitemporal-envelope field. | | effective_period_end | date | Last day of the report month (e.g., 2021-05-31 for May-2021). Just the month-end of report_month. | | cms_vintage_sequence | int | Intended to order CMS re-releases of the same month. Constant = 1 everywhere — there are no superseding vintages, so no 'latest vintage' filter is needed. | | parse_revision | int | Parser re-run revision counter. Constant = 1 everywhere; no reprocessed rows exist. | | parser_artifact_hash | string | Hash of the parser artifact used. 215 distinct values — effectively one per monthly file, not a row-level discriminator. | | source_url | string | CMS download URL for that month's ZIP (e.g., https://www.cms.gov/files/zip/ma-statecounty-penetration-may-2021.zip). Exactly 215 distinct = one file per month (1:1 with report_month), confirming the monthly-snapshot lineage. | | sha256_content_hash | string | SHA-256 of the source file contents. 215 distinct = one per monthly file; provenance/integrity, not a grain column. | Tools that read it: get_market_share Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_state_county_penetration WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_state_county_penetration")` first. # USPCC (United States Per Capita Costs), rate years 2003-2027 `medicare_silver.ma_uspcc` · Medicare Advantage, Part D, Medicaid · status live · 6,033 rows CMS's national Medicare cost per beneficiary per month by calendar year, Part A and Part B: the growth base behind every MA benchmark and, from 2020, the FFS USPCC that scales county FFS rates. Through 2012 the columns are retrospective (actual) against prospective (projected); from 2013 current against last year's estimate. Populations change by era: aged, disabled and ESRD (2003-2011); aged+disabled and dialysis-only (2012-2018); total (2019); non-ESRD total, non-ESRD FFS and dialysis-only (2020-2027); a growth-rate row from 2020. **Grain.** One row per published value: (rate_year, rate_period, block, part, row_kind, calendar_year, calendar_period, column_index). Every rate_year restates the series. | column | type | meaning | |---|---|---| | rate_year | int | | | rate_period | string | | | effective_period_start | date | | | effective_period_end | date | | | as_of_label | string | | | block | string | | | part | string | | | row_kind | string | | | row_label | string | | | calendar_year | int | | | calendar_year_correction | string | | | calendar_period | string | | | footnote_ref | string | | | footnote_text | string | | | column_index | int | | | column_header | string | | | population | string | | | estimate_basis | string | | | value_text | string | | | value_num | double | | | value_unit | string | | | source_member | string | | | source_url | string | | | member_sha256 | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | parser_artifact_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ma_uspcc WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ma_uspcc")` first. # CMS Medicare Coverage Database public documents `medicare_silver.mcd_document` · Medicare Advantage, Part D, Medicaid · status live · 5,365 rows Public no-license CMS Medicare coverage documents and report indexes, including national NCD/NCA/CAL history, MEDCAC and technology-assessment material, and current/future/retired local LCD and Article index metadata. **Grain.** One row per (Coverage API snapshot, public endpoint, publisher row ordinal) document or public local-document index record. | column | type | meaning | |---|---|---| | snapshot_date | date | | | source_endpoint | string | | | record_type | string | | | record_ordinal | bigint | | | parent_document_type | string | | | parent_document_id | string | | | parent_document_version | string | | | document_type | string | | | document_id | string | | | document_version | string | | | document_display_id | string | | | title | string | | | status | string | | | note | string | | | contractor_name_type | string | | | publication_number | string | | | benefit_category | string | | | effective_date_raw | string | | | effective_end_date_raw | string | | | implementation_date_raw | string | | | retirement_date_raw | string | | | last_updated_raw | string | | | url | string | | | payload_json | string | | | source_member | string | | | source_member_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.mcd_document WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.mcd_document")` first. # CMS Medicare Coverage Database public document components `medicare_silver.mcd_document_component` · Medicare Advantage, Part D, Medicaid · status live · 899 rows Public child components of national coverage artifacts, retaining exact parent identity, endpoint, raw payload, publisher row ordinal, and response-member hash. **Grain.** One row per (Coverage API snapshot, parent document, public component endpoint, publisher row ordinal). | column | type | meaning | |---|---|---| | snapshot_date | date | | | source_endpoint | string | | | record_type | string | | | record_ordinal | bigint | | | parent_document_type | string | | | parent_document_id | string | | | parent_document_version | string | | | document_type | string | | | document_id | string | | | document_version | string | | | document_display_id | string | | | title | string | | | status | string | | | note | string | | | contractor_name_type | string | | | publication_number | string | | | benefit_category | string | | | effective_date_raw | string | | | effective_end_date_raw | string | | | implementation_date_raw | string | | | retirement_date_raw | string | | | last_updated_raw | string | | | url | string | | | payload_json | string | | | source_member | string | | | source_member_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.mcd_document_component WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.mcd_document_component")` first. # CMS Medicare Coverage Database document relationships `medicare_silver.mcd_document_relationship` · Medicare Advantage, Part D, Medicaid · status live · 2,965 rows Public relationship records linking national coverage documents to version history, tracking sheets, transmittals, related documents, meetings, assessments, and other publicly exposed coverage artifacts. **Grain.** One row per (Coverage API snapshot, parent document, public relationship endpoint, publisher row ordinal). | column | type | meaning | |---|---|---| | snapshot_date | date | | | source_endpoint | string | | | record_type | string | | | record_ordinal | bigint | | | parent_document_type | string | | | parent_document_id | string | | | parent_document_version | string | | | document_type | string | | | document_id | string | | | document_version | string | | | document_display_id | string | | | title | string | | | status | string | | | note | string | | | contractor_name_type | string | | | publication_number | string | | | benefit_category | string | | | effective_date_raw | string | | | effective_end_date_raw | string | | | implementation_date_raw | string | | | retirement_date_raw | string | | | last_updated_raw | string | | | url | string | | | payload_json | string | | | source_member | string | | | source_member_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.mcd_document_relationship WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.mcd_document_relationship")` first. # CMS Medicare Coverage Database reference metadata `medicare_silver.mcd_reference` · Medicare Advantage, Part D, Medicaid · status live · 270 rows Public Coverage API reference metadata, including states, update periods, local-data schedule, contractor types and subtypes, and contractor records. **Grain.** One row per (Coverage API snapshot, public reference endpoint, publisher row ordinal). | column | type | meaning | |---|---|---| | snapshot_date | date | | | source_endpoint | string | | | record_type | string | | | record_ordinal | bigint | | | parent_document_type | string | | | parent_document_id | string | | | parent_document_version | string | | | document_type | string | | | document_id | string | | | document_version | string | | | document_display_id | string | | | title | string | | | status | string | | | note | string | | | contractor_name_type | string | | | publication_number | string | | | benefit_category | string | | | effective_date_raw | string | | | effective_end_date_raw | string | | | implementation_date_raw | string | | | retirement_date_raw | string | | | last_updated_raw | string | | | url | string | | | payload_json | string | | | source_member | string | | | source_member_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.mcd_reference WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.mcd_reference")` first. # Clinical Laboratory Fee Schedule, local amounts by carrier locality `medicare_silver.medicare_clfs_locality_rates` · Medicare Advantage, Part D, Medicaid · status live · 1,051,939 rows The CLFS by carrier locality: base fee, national limitation amount, median and pricing amount at the 60% and 62% levels, with the gap-fill indicator, per release. The national table (fact_clfs_national_rate) holds the limit only; this holds the local amounts. **Grain.** One row per (release_label, hcpcs_code, modifier, carrier, locality): the local fee amounts and national limit for a lab code. | column | type | meaning | |---|---|---| | release_label | string | | | calendar_year | int | | | effective_date | date | | | hcpcs_code | string | | | modifier | string | | | carrier | string | | | locality | string | | | carrier_locality | string | | | base_fee_amount_60_pct | double | | | base_fee_amount_62_pct | double | | | national_limit_amount_60_pct | double | | | national_limit_amount_62_pct | double | | | median_amount_60_pct | double | | | pricing_amount_60_pct | double | | | pricing_amount_62_pct | double | | | gap_fill_indicator | string | | | short_descriptor | string | | | floor_amount_60_pct | double | | | source_zip_url | string | | | source_zip_sha256 | string | | | source_member | string | | | source_member_sha256 | string | | | asserted_at | date | | | created_at | timestamp | | | source_id | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicare_clfs_locality_rates WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicare_clfs_locality_rates")` first. # Medicare PFS Conversion Factor (by effective period) `medicare_silver.medicare_conversion_factor` · Medicare Advantage, Part D, Medicaid · status live · 27 rows The CMS Physician Fee Schedule conversion factor (dollars per RVU), keyed by calendar year, effective date, and payment track so mid-year changes and the CY2026 qpp/nonqpp split do not collapse into one scalar. Default/general serving is nonqpp, the full fee schedule; qpp applies only to qualifying APM participants. **Grain.** One row per Medicare calendar year. There are exactly 7 rows, one each for CY2020 through CY2026 (the latest, 2026, just added). Each row carries that year's national PFS conversion factor and its year-over-year change. **How to use it.** SELECT calendar_year, pfs_conversion_factor, percent_change FROM medicare_silver.medicare_conversion_factor ORDER BY calendar_year — returns the 7 annual national PFS conversion factors (2020-2026) with their YoY change, e.g. to look up the multiplier for converting a code's RVUs into a Medicare-allowed amount for a given year, or to show the CF trend (steady decline 2020-2025, +2.92% rebound to 33.29 in 2026). **Traps.** - Grain is calendar_year, NOT id. The profiler reports id as the unique key, but id is a pure sequential surrogate equal to calendar_year-2019 (VERIFIED 0 mismatches) — it adds nothing. Join and filter on calendar_year. - Five columns are 100% NULL and are dead/aspirational schema, not meaningful: end_date, anesthesia_conversion_factor, rule_number, public_law, source_file_id. In particular there is NO usable anesthesia conversion factor here, and NO rule/public-law/file provenance — only the coarse mirror_source string. Don't try to price anesthesia or cite the enacting law from this table. - No is_current / no snapshot duplication. This is a single mirrored snapshot: created_at is one identical timestamp for all rows and asserted_at is a single date (2026-06-03). There is exactly one row per year, so no dedup/as-of filtering is needed — but also don't expect bitemporal history of CF revisions. - The table models only ONE CF per year at Jan-1 effective_date. It does NOT capture intra-year/mid-year CF revisions that occurred via legislation in some of these years (end_date is null, no second row). Treat each year's value as the single representative annual CF. - prior_year_cf for the earliest year (2020 = 36.0391) is an external anchor with no matching row in this table; every other year's prior_year_cf is just the previous row's pfs_conversion_factor. Don't assume prior_year_cf is always derivable from this table — it isn't for the first year. - This is the standard PFS conversion factor only. To get a Medicare-allowed dollar amount you must multiply by per-code geographically-adjusted RVUs from the fee-schedule tables (PFS RVU/GPCI sources) — this table is just the scalar multiplier, not a fee schedule itself. The 2026 value (33.29) reverses the multi-year decline (first positive percent_change, +2.92%). | column | type | meaning | |---|---|---| | id | bigint | Sequential surrogate integer 1..7. VERIFIED to equal exactly calendar_year - 2019 for every row, so it carries no information beyond calendar_year and is just a row id mirrored from the source RDS table. Do not treat as a meaningful key — use calendar_year. | | calendar_year | bigint | The Medicare calendar year the conversion factor applies to (2020-2026). THE real grain key — individually unique across all 7 rows. This is the join/filter column for picking the right year's factor. | | effective_date | date | First day the factor is in effect — always Jan 1 of calendar_year (2020-01-01 ... 2026-01-01). Individually unique; redundant with calendar_year. Note: this does NOT capture historical mid-year CF revisions (e.g. legislative patches) — there is exactly one row per year with a clean Jan-1 effective date. | | end_date | date | Intended last-effective date. ALWAYS NULL (0 of 7 populated). Null here means open-ended / not tracked, not a real interval — the table does not model intra-year CF changes via this column. | | pfs_conversion_factor | double | THE core value: the national PFS conversion factor in dollars-per-RVU for that year. Observed: 2020=36.0896, 2021=34.8931, 2022=34.6062, 2023=33.8872, 2024=32.7442, 2025=32.3465, 2026=33.29. Steady decline 2020-2025, then a jump up in 2026. Allowed payment = (sum of geographically-adjusted RVUs for a code) x this factor. | | anesthesia_conversion_factor | double | Intended to hold the separate, lower anesthesia-specific national CF (anesthesia uses base+time units, not RVUs). ALWAYS NULL (0 of 7 populated). This table currently only carries the standard PFS CF — for anesthesia pricing this column is unusable; the value is not present in this mirror. | | rule_number | string | Intended CFR/Federal Register rule citation that set the factor. ALWAYS NULL (0 of 7). No provenance-to-rule linkage is populated. | | public_law | string | Intended public-law citation (e.g. the Act that overrode a scheduled cut). ALWAYS NULL (0 of 7). Legislative provenance is not populated despite several of these years being legislatively adjusted. | | prior_year_cf | double | The conversion factor used as the prior-year baseline for computing percent_change. VERIFIED: for 2021-2026 it exactly equals the previous row's pfs_conversion_factor (e.g. 2021's prior=36.0896 = 2020's CF). The 2020 row's prior_year_cf (36.0391) is the ONLY one with no matching row in this table — it is an external 2019 anchor carried in from the source. | | percent_change | double | Year-over-year percent change of the CF vs prior_year_cf. VERIFIED to reproduce (cur/prior - 1)*100 within rounding (2020=+0.14, 2021=-3.31, 2022=-0.82, 2023=-2.08, 2024=-3.37, 2025=-1.21, 2026=+2.92). 2026 is the only positive year (the CF rebound). | | source_file_id | bigint | Intended FK to a source-file registry. ALWAYS NULL (0 of 7). File-level provenance is not wired up; provenance is only the coarse mirror_source string below. | | created_at | timestamp | Load timestamp. A single identical value for all 7 rows (2026-04-04 19:35:46.454) — the whole table was mirrored in one batch. Not a per-year publish date. | | asserted_at | date | Bitemporal 'as-asserted' date. A single identical value for all rows (2026-06-03, = today's mirror run). All 7 rows share one assertion date; this is not a per-row history axis here. | | mirror_source | string | Provenance string, identical for all rows: 'rds:vlada_enterprise.public.medicare_conversion_factor'. Confirms this Glue/Iceberg table is a mirror of the operational RDS table (the source of truth lives in hospital-server RDS vlada_enterprise). | | source_url | string | | | sha256_content_hash | string | | | source_id | string | | | is_current | boolean | | | vintage_tag | string | | | parser_artifact_hash | string | | | parse_revision | int | | | fetcher_version | string | | | parser_version | string | | | parsed_member | string | | | payment_track | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicare_conversion_factor WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicare_conversion_factor")` first. # CMS PFS Payment-Policy Indicators (PPRRVU) `medicare_silver.medicare_pfs_indicators` · Medicare Advantage, Part D, Medicaid · status live · 19,356 rows Per HCPCS x modifier, the payment-policy indicators from the CMS PFS Relative Value File (PPRRVU) that the National Physician Fee Schedule pricing files drop: status_code (A/B/N/X...), global_period (000/010/090/XXX...), pctc_ind (PC/TC split), mult_proc_ind (the multiple-procedure reduction rule: 2=standard surgical MPPR 100/50/50, 3=endoscopy, 4=imaging, 5=therapy, 9=n/a), and bilat_ind (the bilateral rule: 1=150% adjustment applies). Used by the claims-repricing engine to apply the multiple-procedure reduction and bilateral adjustment so professional claims aren't paid in full where Medicare reduces. Quarterly CMS release (2026, rvu26c). **Grain.** One row per HCPCS x modifier from the CMS PFS Relative Value File — the status / global / PC-TC / multiple-procedure / bilateral indicators. | column | type | meaning | |---|---|---| | year | int | | | row_seq | bigint | | | hcpcs | string | | | modifier | string | | | status_code | string | | | pctc_ind | string | | | global_period | string | | | mult_proc_ind | string | | | bilat_ind | 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 medicare_silver.medicare_pfs_indicators WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicare_pfs_indicators")` first. # CMS ZIP5 → PFS Locality Crosswalk (authoritative) `medicare_silver.medicare_zip5_locality` · Medicare Advantage, Part D, Medicaid · status live · 687,053 rows The authoritative CMS Zip Code to Carrier Locality File (ZIP5) — maps every 5-digit ZIP to its Medicare PFS pricing locality (+ carrier/MAC, state, rural indicator). This is the routing table GPCI localization needs to price a professional claim to the provider's geography. It supersedes medicare_zip_to_locality, which collapsed big-metro ZIPs into rest-of-state. Annual end-of-year ZIP5 history is loaded for 2011-2025 plus the current 2026Q3 file; 94110 -> SF locality 05, 90001 -> LA 18, 10001 -> Manhattan 01. **Grain.** One row per (loaded year, 5-digit ZIP) from the CMS Zip Code to Carrier Locality File (ZIP5) \u2014 state, carrier/MAC, PFS pricing locality, rural indicator, and CMS year-quarter. | column | type | meaning | |---|---|---| | year | int | | | row_seq | bigint | | | zip_code | string | | | state | string | | | carrier | string | | | locality_number | string | | | rural_indicator | string | | | year_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 medicare_silver.medicare_zip5_locality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicare_zip5_locality")` first. # Legacy Medicare ZIP → Payment Locality Crosswalk (superseded) `medicare_silver.medicare_zip_to_locality` · Medicare Advantage, Part D, Medicaid · status live · 31,913 rows Legacy RDS-mirrored ZIP-to-locality surface retained for compatibility only. It is not the canonical PFS ZIP locality resolver because it collapses big-metro ZIPs into rest-of-state localities; use cms_zip5_locality / medicare_silver.medicare_zip5_locality instead. **Grain.** One row per 5-digit ZIP code (CY2025 snapshot). VERIFIED: 31,913 rows = 31,913 distinct zip_code = 31,913 distinct id, so zip_code alone is the minimal natural key (id is just a surrogate). Every ZIP maps to exactly one (state, locality_number) Medicare locality. There is no per-ZIP time dimension — the whole table is a single 2025 vintage. **How to use it.** Map a provider ZIP to its locality-adjusted Medicare geography, then chain to GPCI for the cost adjustment. Example: SELECT z.zip_code, z.locality_name, g.work_gpci, g.pe_gpci, g.mp_gpci FROM medicare_zip_to_locality z JOIN medicare_gpci_locality g ON z.state=g.state AND z.locality_number=g.locality_number AND g.calendar_year=2025 WHERE z.zip_code='10001'; → returns NY / 'MANHATTAN' with work=1.065, pe=1.166, mp=1.656, answering 'which Medicare payment locality and geographic price index applies to a service billed at ZIP 10001'. **Traps.** - locality_number is NOT a key by itself (only 15 distinct values, e.g. '99' means 'REST OF ' in 15 different states). The real Medicare locality identity is (state, locality_number) = exactly 64 distinct combos. Never group or join by locality_number alone. - is_statewide_locality is BROKEN: false for 100% of rows. Do not use it to detect statewide localities — use locality_number='00' (the actual whole-state code, present in 17 states) instead. - Four columns are 100% NULL/empty in this snapshot: cbsa_code, cbsa_name, rural_urban_code, and effective_date. The schema lists them but there is no data — do not build logic on them. (The dated, GPCI-bearing version of effective_date lives in sibling medicare_gpci_locality.) - Single-vintage snapshot: calendar_year is constant 2025 and there is no is_current / version column. created_at, asserted_at, source_file_id, mirror_source are all single constants (load/provenance metadata, not business dates). Treat the whole table as CY2025. - This table has NO prices or GPCI values — it is purely the ZIP→locality lookup. To get the actual Medicare cost adjustment you must join on (state, locality_number) to medicare_gpci_locality (work/pe/mp GPCI; join is 100% complete — 64/64 localities matched) and then to medicare_physician_fee_schedule. Don't confuse it with its sibling medicare_county_to_locality (county-keyed, used when you have county not ZIP). | column | type | meaning | |---|---|---| | id | bigint | Surrogate bigint row key from the source RDS table. Unique (31,913 distinct) but carries no business meaning — do NOT use for joins; join on zip_code or (state, locality_number). | | zip_code | string | 5-digit USPS ZIP code, stored as a string. The true grain. 100% populated, all exactly 5 chars, all numeric (e.g. '35004','10001'). This is the natural lookup key. | | state | string | 2-letter USPS state code (e.g. 'AL','NY','CA'). 51 distinct values (50 states + DC). 100% populated. Part of the Medicare locality key (state, locality_number). | | county | string | County name for the ZIP (e.g. 'St. Clair','Jefferson'). 100% populated. Descriptive geography; NOT a Medicare payment dimension (Medicare prices by locality, not county) — for county-level locality mapping use sibling medicare_county_to_locality. | | city | string | City/place name for the ZIP (e.g. 'Acmar','Adamsville'). 100% populated. Descriptive only. | | cbsa_code | string | Core-Based Statistical Area (metro) code. 100% NULL in this snapshot — column exists in schema but is entirely unpopulated. Do not rely on it. | | cbsa_name | string | CBSA/metro name. 100% NULL — entirely unpopulated. | | rural_urban_code | string | Rural/urban classification (e.g. RUCA-style). 100% NULL — entirely unpopulated. | | locality_number | string | 2-digit Medicare carrier-locality code WITHIN a state (e.g. '00','01','75','99'). Only 15 distinct values and NOT unique on its own — meaningful only combined with state. '00' = whole-state locality (17 states), '99' = 'REST OF ' catch-all (15 states), other codes = specific metros (e.g. NY '01' MANHATTAN, FL '03' FORT LAUDERDALE, TX '31' AUSTIN). The join key into medicare_gpci_locality. | | locality_name | string | Human-readable locality name (e.g. 'ALABAMA','MANHATTAN','REST OF CALIFORNIA','FORT LAUDERDALE'). 64 distinct = exactly the number of distinct (state, locality_number) pairs, so it is a clean label for the locality. Some names carry a trailing '**' footnote marker (1,426 rows, 5 names, e.g. 'SOUTH DAKOTA**','WYOMING**') — a CMS source annotation, not part of the name. | | calendar_year | bigint | Fee-schedule vintage year. Constant 2025 for every row — this is a single-year snapshot, not a history. | | effective_date | date | Intended locality effective date. 100% NULL in this table (unpopulated here; the dated version lives in medicare_gpci_locality.effective_date = 2025-01-01). | | is_statewide_locality | boolean | Boolean flag intended to mark whole-state localities. TRAP: it is FALSE for 100% of rows (0 true), so it is broken/unpopulated and does NOT actually flag statewide localities. To identify statewide localities use locality_number='00' instead. | | source_file_id | bigint | FK to the ingested source file. Constant value 4 across the whole table (single source file = one CMS ZIP-to-locality file). | | created_at | timestamp | Ingest timestamp from the upstream RDS load. Single constant value (2026-04-04 19:41:42.910) for all rows — load metadata, not a business date. | | asserted_at | date | Date this snapshot was asserted/mirrored into the lake. Single constant value (2026-06-03) — mirror metadata. | | mirror_source | string | Provenance string identifying the upstream source: constant 'rds:vlada_enterprise.public.medicare_zip_to_locality'. Confirms this Glue/Iceberg table is a mirror of the hospital-server RDS table. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicare_zip_to_locality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicare_zip_to_locality")` first. # MedPAC Data Book workbook exhibit index `medicare_silver.medpac_databook_exhibit` · Medicare Advantage, Part D, Medicaid · status live · 56 rows Governed semantic index for all 56 numeric exhibits in the 19 publisher-supplied MedPAC Data Book workbooks for 2024 through 2026, retaining chart or figure identity, exact publisher title and unit, numeric data extent, measurement-year bounds, observation count, source cells, document hash, and Bronze lineage. **Grain.** One publisher-supplied workbook sheet and exhibit per accepted edition and source asset. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_year | int | | | section_number | int | | | sheet_name | string | | | sheet_index | int | | | exhibit_type | string | | | exhibit_number | string | | | exhibit_title | string | | | unit_label | string | | | population_label | string | | | geography_label | string | | | notes_text | string | | | methodology_text | string | | | publisher_scope_note | string | | | chapter_pdf_url | string | | | data_start_row | int | | | data_end_row | int | | | observation_count | int | | | measurement_year_min | int | | | measurement_year_max | int | | | title_cell_coordinate | string | | | unit_cell_coordinate | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.medpac_databook_exhibit WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medpac_databook_exhibit")` first. # MedPAC Data Book numeric metric observations `medicare_silver.medpac_databook_metric_observation` · Medicare Advantage, Part D, Medicaid · status live · 5,567 rows Source-faithful numeric observations from every accepted MedPAC supporting workbook, with metric header path, measurement period and year, quarter, unit, category, projection status, exact value/header/dimension cell coordinates, formula, number format, document hash, and content-addressed Bronze lineage. **Grain.** One exact publisher numeric value cell per accepted workbook exhibit, excluding detected period and dimension cells. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | observation_id | string | | | asset_id | string | | | edition_year | int | | | section_number | int | | | sheet_name | string | | | sheet_index | int | | | exhibit_type | string | | | exhibit_number | string | | | exhibit_title | string | | | measure_name | string | | | unit_label | string | | | unit_code | string | | | value_numeric | double | | | value_text | string | | | value_status | string | | | measurement_period | string | | | measurement_year | int | | | measurement_quarter | int | | | period_type | string | | | category_label | string | | | population_label | string | | | geography_label | string | | | dimension_json | string | | | value_cell_coordinate | string | | | period_cell_coordinate | string | | | measure_header_cells_json | string | | | dimension_cells_json | string | | | formula | string | | | number_format | string | | | raw_value_json | string | | | displayed_value_json | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.medpac_databook_metric_observation WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medpac_databook_metric_observation")` first. # MedPAC annual Data Book page evidence `medicare_silver.medpac_databook_page` · Medicare Advantage, Part D, Medicaid · status live · 5,091 rows Layout-preserving page evidence for all 5,091 pages in the 24 accepted annual MedPAC Data Books from 2003 through 2026, retaining page text, section and exhibit detection, page hash, extraction eligibility, source URL, and content-addressed Bronze lineage. **Grain.** One physical PDF page per accepted annual edition and source asset. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_year | int | | | document_role | string | | | page_number | int | | | section_number | int | | | exhibit_type | string | | | exhibit_number | string | | | exhibit_title | string | | | page_text | string | | | page_text_sha256 | string | | | word_count | int | | | extraction_method | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.medpac_databook_page WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medpac_databook_page")` first. # MedPAC annual Data Book source asset inventory `medicare_silver.medpac_databook_source_asset` · Medicare Advantage, Part D, Medicaid · status live · 43 rows Complete recoverable public inventory for MedPAC's annual Health Care Spending and the Medicare Program Data Book, covering 24 annual PDFs from 2003 through 2026 and 19 selectively published supporting workbooks from 2024 through 2026, with edition, section, archive/live provenance, document hash, parse disposition, and exact Bronze lineage. **Grain.** One row per accepted annual full-report PDF or publisher-supplied section workbook. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_year | int | | | publication_family | string | | | document_role | string | | | section_number | int | | | title | string | | | publisher_page_url | string | | | original_source_url | string | | | acquisition_url | string | | | publisher_filename | string | | | actual_format | string | | | byte_count | bigint | | | document_sha256 | string | | | archive_timestamp | string | | | source_availability | string | | | parse_disposition | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.medpac_databook_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medpac_databook_source_asset")` first. # MedPAC Data Book supporting workbook cells `medicare_silver.medpac_databook_workbook_cell` · Medicare Advantage, Part D, Medicaid · status live · 7,862 rows Lossless cell-level evidence from all 19 publisher-supplied MedPAC Data Book supporting workbooks for 2024 through 2026, preserving raw and displayed values, formulas, number formats, merged ranges, hyperlinks, sheet identity, section identity, semantic hashes, and exact Bronze lineage. **Grain.** One nonempty physical cell per accepted workbook, sheet, and coordinate. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_year | int | | | section_number | int | | | sheet_name | string | | | sheet_index | int | | | cell_coordinate | string | | | row_number | int | | | column_number | int | | | exhibit_number | string | | | raw_value_json | string | | | displayed_value_json | string | | | formula | string | | | data_type | string | | | number_format | string | | | merged_range | string | | | hyperlink | string | | | semantic_value_text | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.medpac_databook_workbook_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medpac_databook_workbook_cell")` first. # MA enrollment — monthly contract summary `medicare_silver.monthly_contract_enrollment_summary` · Medicare Advantage, Part D, Medicaid · status live · 198,917 rows CMS "Monthly Enrollment by Contract" — member counts per MA/Part D contract per month (enrollment_count). The member-volume input for MA revenue (revenue ~= enrollment x county benchmark x risk x rebate share). **Grain.** One row per (contract_id, report_month) — CMS Monthly Enrollment by Contract (member counts). CERTIFIED 2026-06-03. | column | type | meaning | |---|---|---| | contract_id | string | | | report_month | date | | | organization_type | string | | | plan_type | string | | | organization_name_raw | string | | | organization_marketing_name_raw | string | | | parent_org_raw | string | | | contract_effective_date | date | | | offers_part_d | boolean | | | enrollment_count | int | | | enrollment_lower_bound | int | | | enrollment_upper_bound | int | | | enrollment_suppression_reason | string | | | ma_only_count | int | | | ma_only_lower_bound | int | | | ma_only_upper_bound | int | | | ma_only_suppression_reason | string | | | part_d_count | int | | | part_d_lower_bound | int | | | part_d_upper_bound | int | | | part_d_suppression_reason | 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 | | Tools that read it: get_enrollment, get_stars_rollup, prove_ma_enrollment_trend Query it: `query_substrate` with `SELECT ... FROM medicare_silver.monthly_contract_enrollment_summary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.monthly_contract_enrollment_summary")` first. # MA mpf benefit summary annual `medicare_silver.mpf_benefit_summary_annual` · Medicare Advantage, Part D, Medicaid · status live One row per (contract, plan, segment, year, service category, service). Cost_share is human-readable (e.g. "$25 copay", "20% coinsurance", "$0 copay", "Not covered"). Includes Original Medicare baseline rows for FFS comparison. Categories f **Grain.** One row per (contract_id, plan_id, segment_id, contract_year) plan-year x (category_name, service_desc, network_description) benefit line x distinct cost_share/flag variant. IMPORTANT: this table has NO unique key. Even using every plan key AND every descriptive column (org_name, plan_type_desc, category_name, service_desc, cost_share, network_description, limit_flag, authorization_flag, referral_flag), the physical 2,775,723 rows collapse to only 2,240,145 distinct combinations -- 535,578 rows are exact byte-for-byte duplicates (up to 7 identical copies of the same plan-benefit line, e.g. a Kaiser H0524/043 2021 'Comprehensive dental / Not covered' row appears 7x). The duplication comes from a finer source grain (plan x county/service-area) that was flattened away and not carried into this table. Treat the grain as the deduped logical row above and ALWAYS query with SELECT DISTINCT or GROUP BY; do not COUNT(*) raw rows as benefit lines. **How to use it.** "What does each 2026 PPO plan charge for an in-network specialist visit?" -> SELECT DISTINCT org_name, contract_id, plan_id, segment_id, cost_share, authorization_flag, referral_flag FROM mpf_benefit_summary_annual WHERE contract_year=2026 AND category_name='Doctor visits' AND service_desc='Specialist' AND network_description='In-Network'. Use SELECT DISTINCT (not COUNT(*)) because of the duplicate rows, and note 2026 encodes the auth/referral flags as 'Yes'/'No'/'N/A' whereas 2020-2024 use '0'/'1'/'2' and 2025 uses '0.0'/'1.0'/'2.0'. Join to other mpf_/Stars tables on (contract_id, plan_id, segment_id, contract_year); the synthetic 'Original Medicare' contract H0001 is the FFS baseline for benchmarking. **Traps.** - NO unique key exists. Physical rows (2,775,723) exceed distinct combinations of plan-key + ALL descriptive columns (2,240,145) by 535,578 -- up to 7 byte-identical duplicate rows per plan-benefit line. The source grain is finer (plan x county/service-area) and was flattened away. ALWAYS SELECT DISTINCT / GROUP BY; never COUNT(*) raw rows as a benefit or plan count. - The auth/referral/limit flags are encoded DIFFERENTLY in every era: '0'/'1'/'2' (2020-2024), '0.0'/'1.0'/'2.0' (2025), and 'No'/'Yes'/'N/A' (2026, auth/referral only). Decode 0=No, 1=Yes, 2=N/A. Cross-year filters/aggregations on these flags are WRONG unless you normalize the encodings first. - plan_type_desc AND category_name are free-text and vintage-drifted -- the same plan-type or benefit category appears under multiple spellings/casings across years ('Local Preferred Provider Organization' vs 'Local PPO'; 'Comprehensive dental' vs 'Comprehensive Dental'). Canonicalize (lower/trim/map) before grouping or you will split one category/plan-type into several. - cost_share is FREE TEXT, not numeric, and 0% null: it mixes percentages, dollar copays, deductible/MOOP amounts, prose ('Not covered'), and even embedded HTML ('
'); the same logical value differs by year ('$0' vs '0' vs '0.0'). You must parse it to get numbers. - Single snapshot, no versioning: asserted_at=2026-05-16, cms_vintage_sequence=1, parse_revision=1 for every row, and there is NO is_current column. The provenance columns (sha256/source_url/parser hashes) only vary by contract_year (one file each) and cannot be used to dedup the within-year duplicate rows or to pick a 'latest' version. - contract H0001 / plan 001 / segment 000 labelled 'Original Medicare' is a SYNTHETIC fee-for-service baseline injected by CMS for comparison (present 2021-2026, ~36-37 rows/yr), not a real MA plan -- include it for benchmarking, exclude it (plan_type_desc <> 'Original Medicare') when you want only real MA plans. - network_description NULL and service_desc NULL carry meaning, not just absence: NULL network = single-network (HMO) or plan-level line (deductible/MOOP); NULL service_desc (~61% of rows) = category-level benefit with no sub-service breakdown. | column | type | meaning | |---|---|---| | org_name | string | Parent organization / carrier marketing name for the contract (e.g. 'Kaiser Permanente', 'UPMC for Life', 'Original Medicare'). Free text, NOT stable per contract across years: 241 of 1,014 contract_ids carry more than one org_name over time (rebrands/acquisitions/relabeling). Use as a label, not a join key. | | contract_id | string | CMS Medicare Advantage contract identifier. 1,014 distinct. Prefixes observed: 'H' (986 contracts, standard local MA/HMO/PPO incl. the synthetic Original-Medicare contract H0001) and 'R' (28 contracts, Regional PPO). No S/E/D prefixes present (this table is MA benefit data, not standalone PDP/employer). Part of the plan key; not unique on its own. | | plan_id | string | Plan benefit package (PBP) number within the contract, zero-padded 3 chars (e.g. '001', '043'). 564 distinct values but only meaningful in combination with contract_id (+segment+year). Not unique on its own. | | segment_id | string | Service-area segment within a plan, zero-padded 3 chars. '000' for the overwhelming majority (2,414,868 of 2,775,723 rows); non-zero segments ('001'..'011') exist only for PPO/regional plans whose benefits vary by geographic segment. Part of the plan key; usually '000'. | | plan_type_desc | string | Plan type label (HMO, Local PPO, HMOPOS, Regional PPO, Cost Plan, PFFS, MSA, Medicare-Medicaid Plan, 'Original Medicare', etc.). GOTCHA: free-text and vintage-drifted -- the SAME plan-key shows different labels across years (3,362 plan-keys have >1 value) because CMS changed wording: 'Local Preferred Provider Organization'->'Local PPO', 'HMO with POS Option'->'HMOPOS', 'Private Fee for Service'->'PFFS', 'Medical Savings Account'->'MSA'. Normalize before grouping by plan type. | | contract_year | int | The plan/benefit calendar year (2020-2026). This is the canonical time dimension and aligns 1:1 with effective_period_start/end (year Y -> Y-01-01..Y-12-31) and observed_period (Y-01-01). One source ZIP file per contract_year (7 files, 7 sha256 hashes). | | category_name | string | Benefit category label, 32 distinct values (Vision, Comprehensive dental, Mental health services, Diagnostic procedures/lab services/imaging, Doctor visits, Health plan deductible, Maximum out-of-pocket..., etc.). GOTCHA: NOT normalized across vintages -- several values are case/wording variants of one category: 'Comprehensive dental' vs 'Comprehensive Dental'; 'Diagnostic and Preventive dental' vs 'Diagnostic and Preventive Dental'. Lower-case / canonicalize before grouping. | | service_desc | string | Sub-service within the category (70 distinct, e.g. 'Specialist', 'Primary', 'Lab services', 'Endodontics', 'Diagnostic radiology services (e.g., MRI)'). NULL for ~61% of rows (1,702,642) -- meaning the benefit is captured only at category level with no sub-service breakdown. A NULL here is structural, not missing-data. | | limit_flag | string | Whether the benefit has a quantity/dollar limit. GOTCHA: encoding varies by contract_year -- '1'/'0' (int strings, 2020-2024), '1.0'/'0.0' (decimal strings, 2025), and large NULL share (1,719,487 rows, mostly categories where a limit is inapplicable). 1=limited, 0=not limited. Normalize ('1'='1.0') for cross-year use. (Note: unlike auth/referral, 2026 limit_flag was not observed as Yes/No text in the sampled distribution.) | | authorization_flag | string | Whether prior authorization is required for the benefit. THREE-valued and encoded DIFFERENTLY each year: 2020-2024 use '0'/'1'/'2'; 2025 uses '0.0'/'1.0'/'2.0'; 2026 uses 'No'/'Yes'/'N/A'. Decode: 0=No, 1=Yes, 2=N/A (verified by cross-year counts). ~190K NULL. Any cross-year analysis MUST normalize these encodings. | | referral_flag | string | Whether a referral is required for the benefit. Same three-valued, year-dependent encoding as authorization_flag: '0'/'1'/'2' (2020-2024), '0.0'/'1.0'/'2.0' (2025), 'No'/'Yes'/'N/A' (2026); decode 0=No, 1=Yes, 2=N/A (confirmed: 2024 '2'=101,682 maps to 2026 'N/A'=129,962). ~190K NULL. Normalize before cross-year comparison. | | network_description | string | Network tier the cost_share applies to: 'In-Network' (1,040,965), 'Out-of-Network' (623,164), or NULL (1,111,594). NULL is meaningful: it marks single-network plans (HMO) and plan-level lines (deductible/MOOP) where the in/out split does not apply. For PPO/POS plans each benefit appears as separate In-Network and Out-of-Network rows with different cost_share. | | cost_share | string | The enrollee's cost as FREE TEXT (13,859 distinct, 0 nulls). Mixed formats: percentages ('20%'), dollar copays ('$30 copay per visit'), deductible/MOOP dollar amounts ('$3,400 In-network', '$10,000 In and Out-of-network
$6,700 In-network' -- note embedded HTML), and prose ('Not covered', 'Yes, contact plan for further details'). GOTCHA: same value rendered differently by year ('$0' vs '0' vs '0.0' for a $0 deductible). NOT numeric -- must be parsed/regex'd to extract amounts. | | observed_period | date | Date the benefit is observed/effective-from; always Jan 1 of contract_year (e.g. 2023-01-01). Redundant with contract_year and effective_period_start. A provenance/as-of date, not an independent dimension. | | asserted_at | date | Ingest/assertion date of this silver build. Constant 2026-05-16 for ALL rows -- the entire table is a single ingest/snapshot. Not a versioning column; carries no SCD/is_current semantics. | | effective_period_start | date | First day the plan year is in effect; Jan 1 of contract_year. The profiler's chosen time column; aligns 1:1 with contract_year. Span 2020-01-01 .. 2026-01-01, annual cadence. | | effective_period_end | date | Last day of the plan year; Dec 31 of contract_year. Together with effective_period_start it just brackets the contract_year; no partial-year periods exist. | | cms_vintage_sequence | int | Source-vintage sequence number. Constant = 1 for every row. There is only one vintage per contract_year and one overall ingest; this column does NOT distinguish snapshots and cannot be used to pick a 'latest' version. | | parse_revision | int | Parser revision number. Constant = 1 for every row. No re-parses recorded; not useful for dedup or version selection. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row. 7 distinct values, one per contract_year file. Provenance only. | | source_url | string | CMS download URL of the source ZIP, e.g. 'https://www.cms.gov/files/zip/cy-2023-mpf-benefit-summary.zip'. Exactly 7 distinct URLs = one file per contract_year (CY2020-CY2026). Lineage column; functionally determined by contract_year. | | sha256_content_hash | string | SHA-256 of the source file content. 7 distinct values (one per contract_year ZIP). Provenance/integrity; identical across all rows from the same year, so it does not help distinguish the duplicate benefit rows within a year. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.mpf_benefit_summary_annual WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.mpf_benefit_summary_annual")` first. # Medicare Plan Finder — optional supplemental benefits (annual) `medicare_silver.mpf_optional_supplemental_annual` · Medicare Advantage, Part D, Medicaid · status live Medicare Plan Finder optional supplemental benefit packages by plan and year: package, service category, whether offered, cost-share type and amount. The optional-supplemental benefit detail layer for MA plans. **Grain.** One row per MA plan-segment per optional-supplemental PACKAGE per benefit SERVICE-CATEGORY per COST-SHARING TYPE, per contract year. Example: Humana H0028/013/000, 2022, "Package #1", "Preventive dental", "Monthly Premium" = $22.90 is one row; the matching "Deductible" line for that same package+service is a separate row. The minimal verified key is contract_id + plan_id + segment_id + contract_year + package_description + package_number + services_category + type_of_cost_sharing, which yields 49,544 unique combinations. The raw table is 57,780 rows because contract years 2022 and 2023 contain ~8,236 EXACT byte-for-byte duplicate rows (a source/parse artifact); de-duplicating on the business columns recovers the true 49,544-row grain. **How to use it.** Compare the buy-up cost of a supplemental benefit across plans for a year. Example — added monthly premium for comprehensive dental, 2026: SELECT DISTINCT org_name, contract_id, plan_id, package_description, cost_share FROM medicare_silver.mpf_optional_supplemental_annual WHERE contract_year=2026 AND lower(services_category) LIKE '%comprehensive dental%' AND type_of_cost_sharing='Monthly Premium'. Use SELECT DISTINCT (to drop the 2022/2023 exact-dup artifact), filter to one type_of_cost_sharing so cost_share has consistent units, and strip '$'/handle 'N/A' before treating cost_share as a number. Answers: 'which MA plans offer a comprehensive-dental buy-up and what extra monthly premium / deductible / annual cap do they charge?' **Traps.** - GRAIN IS POLLUTED BY EXACT DUPLICATE ROWS: the table has 57,780 raw rows but only 49,544 distinct business rows. Contract years 2022 and 2023 contain ~8,236 byte-for-byte identical rows (every column equal — verified by counting DISTINCT across all business columns). There is NO disambiguating column. ALWAYS SELECT DISTINCT on the business columns (or GROUP BY the grain) before counting/aggregating, or you will over-count plans, premiums, and benefit counts in 2022/2023. - TWO INCOMPATIBLE FORMAT ERAS sharing one schema. OLD format (2020-2023): package_number, nmc_services_offered, and maximum_plan_periodicity are 100% NULL; packages are only the generic 'Package #1..#5'. NEW format (2025-2026): those three columns are populated, package_description holds real plan-specific names, and a third cost-sharing type 'Maximum Plan Coverage' (annual cap) appears. Any query spanning years must handle both shapes; the grain key needs BOTH package_description (old) and package_number (new). - 2024 IS MISSING. Years present are 2020, 2021, 2022, 2023, 2025, 2026 — there is a hole at 2024 (the cy-2024 CMS file was never ingested; source_url list confirms it). Trend/year-over-year analysis must not assume contiguous years. - cost_share IS A STRING WITH UNITS THAT DEPEND ON ANOTHER COLUMN. Its meaning (monthly premium $ vs deductible $ vs annual coverage cap $) is set by type_of_cost_sharing, and its formatting is inconsistent across years (bare '22.9' vs '$44.00'), with 'N/A' meaning zero/none. You must filter to a single type_of_cost_sharing and strip '$'/handle 'N/A' before any arithmetic — never AVG/SUM cost_share raw. - NO is_current FLAG AND NO SNAPSHOT HISTORY. cms_vintage_sequence, parse_revision are constant=1 and asserted_at is constant (2026-05-16) for every row — this is a single static backfill, one source file per year. Do not look for a current-snapshot filter; the period columns (observed_period, effective_period_start/end) are just contract_year restated and carry no independent information. - NULLS CARRY MEANING, NOT MISSINGNESS. maximum_plan_periodicity is NULL except on 'Maximum Plan Coverage' rows (NULL = 'not a coverage-cap row'); package_number/nmc_services_offered NULL = 'old-format year, use package_description'. services_category and plan_type_desc have case/wording variants across years that must be normalized before grouping (e.g. 'Comprehensive dental' vs 'Comprehensive Dental'). | column | type | meaning | |---|---|---| | org_name | string | Marketing/parent organization name (e.g. 'Humana', 'UnitedHealthcare', 'Anthem Blue Cross and Blue Shield', 'Kaiser Permanente'). 241 distinct values. Free-text label, NOT a stable key — the same insurer appears under multiple spellings/sub-brands ('Anthem Blue Cross' vs 'Anthem Blue Cross and Blue Shield'). Join/group on contract_id for the stable carrier identity, not org_name. | | contract_id | string | CMS Medicare Advantage contract ID, e.g. 'H0028', 'H8849' (H/R/S/E prefix). 326 distinct. Part of the plan identity key. Alone it is NOT the grain (one contract has many plans/packages). | | plan_id | string | Plan benefit package number within the contract, 3-char zero-padded string e.g. '013', '008', '017'. 331 distinct values. contract_id + plan_id + segment_id together identify the MA plan. | | segment_id | string | Plan segment ID, 3-char zero-padded e.g. '000', '001'. Most plans are '000'; non-zero segments are geographic/service-area sub-divisions of the same plan. Only 17 distinct values but it IS load-bearing for the grain (dropping it collapses 49,544 -> 43,476 rows). Treat '000' as 'no segmentation'. | | contract_year | int | Calendar/plan year the benefit applies to (int): 2020, 2021, 2022, 2023, 2025, 2026. This is the real time dimension and the partition by source file (one CMS zip per year). 2024 is absent. | | plan_type_desc | string | MA plan type, free-text and INCONSISTENTLY coded across format eras: old years use long labels ('Local Preferred Provider Organization', 'Private Fee for Service', '1876 Cost') while new years use short codes ('Local PPO', 'PFFS', 'MSA') for the same types. Top value 'HMO'. Normalize before grouping (e.g. 'Local Preferred Provider Organization' == 'Local PPO'). | | package_number | string | Optional-supplemental package number, e.g. '001','002','003'. POPULATED ONLY IN NEW-FORMAT YEARS 2025-2026 (NULL for all 2020-2023 rows; ~48,446 of 57,780 rows are NULL). NULL here means 'old format, use package_description instead'. Load-bearing for the grain together with package_description. | | package_description | string | Human-readable name of the buy-up package. Old years (2020-2023) only have generic 'Package #1'..'Package #5'. New years (2025-2026) carry real plan-specific names ('MyOption DEN972', 'Dental Platinum Rider', 'Dental Gold/Silver', 'NCAL Advantage Plus'). Load-bearing: dropping it collapses 49,544 -> 36,870 because old years key on it and some new-year packages differ only by name. | | services_category | string | The supplemental benefit category this row prices: dental (Comprehensive / Preventive / Diagnostic and Preventive), Eyewear, Eye exams, Hearing aids/exam, Acupuncture, Chiropractic, Transportation, Wellness/fitness, OTC items, Meal benefit, Point of Service (POS), Worldwide emergency, etc. CASE/WORDING VARIES BY YEAR ('Comprehensive dental' vs 'Comprehensive Dental', 'Hearing aids' vs 'Hearing Aids') — lower/normalize before grouping. Part of the grain. | | nmc_services_offered | string | The specific CMS PBP benefit line-items included in this service category, as a comma-joined code:label string (e.g. '16c1: Restorative Services, 16c2: Endodontics, ...' for comprehensive dental; '17b1: Contact Lenses, 17b2: Eyeglasses...' for eyewear; '18b1: Prescription Hearing Aids'; 'POS: POS option'). The 16x/17x/18x prefixes map to CMS PBP service-area sections. POPULATED ONLY IN 2025-2026 (NULL for 2020-2023). Descriptive detail of the package, NOT needed for uniqueness. | | type_of_cost_sharing | string | Which price dimension this row reports. Exactly 3 values: 'Monthly Premium' (added $/month to buy the package, 31,651 rows), 'Deductible' (annual deductible, 24,434 rows), and 'Maximum Plan Coverage' (annual benefit dollar cap, 1,695 rows, NEW FORMAT 2025-2026 ONLY). Part of the grain — a plan-package-service appears as multiple rows, one per cost-sharing type. The cost_share value's UNITS depend entirely on this column. | | cost_share | string | The dollar amount, stored as a MESSY STRING (not numeric) whose meaning is set by type_of_cost_sharing: added monthly premium, the deductible, or the annual coverage cap. Formatting is INCONSISTENT across years — bare numbers ('22.9', '38') in old years vs currency strings ('$44.00', '$1500.00') in new years. 'N/A' is common for Deductible (22,387 rows = no deductible). Must be parsed/cleaned (strip '$', handle 'N/A') before any math. | | maximum_plan_periodicity | string | The period over which a 'Maximum Plan Coverage' cap applies — values 'Every year', 'Other, Describe', or NULL. Meaningful ONLY for type_of_cost_sharing='Maximum Plan Coverage' rows; NULL (56,085 of 57,780 rows) for Monthly Premium / Deductible rows and for all pre-2025 years. NULL here carries the meaning 'not a coverage-cap row'. Not needed for grain uniqueness. | | observed_period | date | Provenance date = Jan 1 of contract_year (always). 100% redundant with contract_year. Carries no extra information; do not use as a separate time axis. | | asserted_at | date | Date Vlada ingested/asserted the record. Constant '2026-05-16' for ALL 57,780 rows (single backfill load). Not a per-record update timestamp. | | effective_period_start | date | Benefit-year start = Jan 1 of contract_year (always). The profiler picks this as the time column, but it is just contract_year restated. 6 distinct values matching the 6 years. | | effective_period_end | date | Benefit-year end = Dec 31 of contract_year (always). Redundant with contract_year. | | cms_vintage_sequence | int | Intended source-vintage counter, but constant = 1 for every row. There is NO multi-vintage / snapshot history and NO is_current flag in this table — only one ingest of one file per year exists, so no snapshot dedup is needed. | | parse_revision | int | Parser revision number, constant = 1 for every row. No re-parse history present. | | parser_artifact_hash | string | SHA-256 of the parser artifact/build that produced the rows. One distinct value per contract_year (the parser used for that year's file). Provenance/lineage only. | | source_url | string | CMS download URL of the source ZIP, exactly one per year, of the form https://www.cms.gov/files/zip/cy--mpf-benefit-summary.zip. Confirms one official CMS MPF Benefit Summary file per contract_year (and confirms 2024 is missing). | | sha256_content_hash | string | SHA-256 of the source file content. One distinct hash per contract_year — i.e. one source file per year. Provenance/integrity only, not a row key. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.mpf_optional_supplemental_annual WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.mpf_optional_supplemental_annual")` first. # CMS NPPES Deactivated NPI Report: every deactivated NPI with its date, one partition per monthly report `medicare_silver.nppes_deactivated_npi_v1` · Medicare Advantage, Part D, Medicaid · status partial CMS's monthly list of NPIs deactivated in NPPES and not reactivated, loaded by tools/data_tracker/load_nppes_deactivated.py (raw ZIP archived under its sha256). 2026-11-02: 360,014 NPIs. Read the newest report_date; each report replaces the last. **Grain.** One row per NPI x report_date: deactivation_date, source_url, source_member, sha256_content_hash. Partitioned by report_date. | column | type | meaning | |---|---|---| | npi | string | | | deactivation_date | date | | | source_url | string | | | source_member | string | | | sha256_content_hash | string | | | loaded_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.nppes_deactivated_npi_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.nppes_deactivated_npi_v1")` first. # MA pbp changelog `medicare_silver.pbp_changelog` · Medicare Advantage, Part D, Medicaid · status partial Parsed Readme_PBP_Benefits_YYYY.txt. Categories: column_length_change / variable_added / variable_removed / file_added / file_removed / policy_note / txt_sas_pairing / file_description / description. 2001-era Readmes have only description + **Grain.** "One row per parsed line of a CMS PBP-Benefits README/CHANGE-LOG document, per source-file vintage. The minimal verified unique key is (report_year, quarter, change_seq, cms_vintage_sequence) = exactly 4,650 distinct combinations == 4,650 rows. change_seq is a per-document line ordinal that resets for each (report_year, quarter, cms_vintage_sequence), so all four columns are required; (report_year, quarter, change_seq) alone is only 4,397/4,650. Equivalently (report_year, source_url, change_seq) is also unique." **How to use it.** "To find every PBP schema change in a given benefit year, filter to the event categories and the latest vintage, e.g.: SELECT report_year, change_category, file_name, field_name, change_description FROM medicare_silver.pbp_changelog WHERE report_year = 2026 AND cms_vintage_sequence = (SELECT max(cms_vintage_sequence) FROM medicare_silver.pbp_changelog WHERE report_year = 2026) AND change_category IN ('variable_added','variable_removed','column_length_change','file_removed') ORDER BY change_seq; -- answers: which PBP/MRX fields were added, dropped, or resized for CY2026 (e.g. PBP_A_SNP_COND length 23 -> 33), so you know how the upstream PBP source layout shifted before parsing the benefit facts." **Traps.** - NO is_current / latest flag and no dedup column. Multiple CMS source ZIPs (vintages) per year are ALL retained as separate rows, so the same logical README line appears once per vintage. For the 2018-2024 years (2-4 vintages each) a naive COUNT or GROUP BY report_year double/quadruple-counts. To get the latest view per year, filter to MAX(cms_vintage_sequence) per report_year (or join on the newest source_url/sha256_content_hash). - change_seq looks like a key but is NOT — it is a 1-based line ordinal that RESETS inside every (report_year, quarter, cms_vintage_sequence) document (max change_seq == that document's row count). (report_year, quarter, change_seq) alone is only 4397/4650 unique. The MINIMAL verified key is (report_year, quarter, change_seq, cms_vintage_sequence) = 4650/4650. Equivalent natural key (report_year, source_url, change_seq) works too; but (source_url, change_seq) or (sha256_content_hash, change_seq) WITHOUT report_year/quarter is only 4525 because one 2022 ZIP is loaded under two quarters. - This is NOT a benefit/cost-amount table and contains NO plan, contract, premium, copay, or dollar values. It is the parsed CMS README + CHANGE-LOG shipped inside each PBP Benefits ZIP — a documentation/schema-evolution log. ~98% of rows (txt_sas_pairing + file_description + description + policy_note = 4533) are README boilerplate (file<->SAS pairings, section descriptions, header prose). Only 117 rows are real schema-change events (variable_added/removed, column_length_change, file_removed). To analyze actual PBP schema drift, filter change_category to those four event types and read field_name + change_description. - Empty strings '' are used instead of NULL for file_name and field_name and they CARRY MEANING: field_name is populated ONLY for variable_added/variable_removed/column_length_change (115 rows); file_name is '' for description/policy_note/column_length_change. Predicates must test = '' not IS NULL. - All five date columns are DERIVED from report_year, not real event dates: observed_period == effective_period_start == Jan 1 of report_year (0 rows differ), effective_period_end == Dec 31 of report_year. They bracket the benefit calendar year and tell you nothing about when a change actually happened. asserted_at is the ingestion date (May 2026) and parse_revision/parser_artifact_hash/sha256_content_hash are pipeline-provenance, NOT content time. Do not use any of them as a 'change occurred on' date. - Sibling/scope caveat: this is the PBP-Benefits documentation changelog only (covers the PBP_*/MRX_* section files and their SAS programs). It is metadata ABOUT the PBP source files, distinct from the actual parsed benefit/cost fact tables in medicare_silver. Use it to interpret schema changes across PBP vintages (e.g. a field's storage length changed 5->4 in 2026), not to retrieve plan benefits. | column | type | meaning | |---|---|---| | report_year | int | The CMS Plan-Benefit-Package (PBP) contract/benefit year that the source README/changelog document describes (e.g. 2024). int. Range 2001-2026 across 26 years. All the date columns are derived purely from this. This is the primary partition/filter. | | quarter | int | The CMS quarterly publication slot (1-4) the parsed source ZIP was filed under for that year. Part of the grain. NOTE it is NOT a clean publication-quarter: for 2001-2017 and 2025-26 every row is quarter=1 (only one annual ZIP existed); for 2018-2024 it tracks the quarterly re-release. One known quirk: the 2022 quarter-2.zip is loaded under BOTH quarter=1/vintage=1 and quarter=2/vintage=2. | | change_category | string | Type of line parsed from the CMS README/CHANGE-LOG text. 8 values: txt_sas_pairing (2163, README .txt<->.sas file manifest), file_description (2080, one-line description of each PBP section file), description (272, free-text README header prose), variable_added (85), column_length_change (23), policy_note (18), variable_removed (7), file_removed (2). Only the last group of event types (variable_added/removed, column_length_change, file_removed = 117 rows, ~2.5%) are actual schema-change events; the other ~98% is README boilerplate. | | file_name | string | The PBP section file the row refers to (e.g. 'pbp_b2_snf.txt', 'pbp_b1a_inpat_hosp.txt'). Populated for txt_sas_pairing, file_description, variable_added/removed, file_removed. EMPTY STRING '' (not NULL) for category=description, policy_note, and column_length_change (those carry the field in field_name instead, or are header prose with no file). | | field_name | string | The PBP/MRX variable (uppercase column name, e.g. 'PBP_B14E_COPAY_EHC', 'MRX_ALT_RED_COST_SHARING_ITEMS') affected by the change. Populated ONLY for variable_added, variable_removed, and column_length_change (115 of 4650 rows). EMPTY STRING '' for all other categories. This + change_category is how you find which PBP fields were added/dropped/resized in a given year. | | change_description | string | The raw parsed text of the changelog/README line. For event rows it carries the detail (e.g. 'length 5 -> 4', the added-variable note); for txt_sas_pairing it is 'paired with .sas'; for file_description it is the section description; for description/policy_note it is verbatim README prose. The human-readable payload of the row. | | change_seq | int | 1-based line/sequence ordinal of the row WITHIN its (report_year, quarter, cms_vintage_sequence) document. Range 1-254. It RESETS for every source document (max change_seq == row count of that document, e.g. 168 for each 2024 vintage), so it is NOT a global key and is meaningless without the year/quarter/vintage context. Preserves the original line order of the README. | | observed_period | date | date. Always identical to effective_period_start (0 rows differ) = Jan 1 of report_year. Derived field, carries no independent information; it is the bitemporal 'observed period' stamp set to the benefit year start. | | asserted_at | date | date. Bitemporal 'when this row was loaded/asserted into the warehouse' — the ingestion timestamp, NOT content time. Only 3 distinct values, all in May 2026 (2026-05-15 x2341, 2026-05-20 x2056, 2026-05-25 x253), correlating with parse_revision (the 2341 on 05-15 == parse_revision=1 count). Use for provenance/run-tracking, never as event time. | | effective_period_start | date | date. Jan 1 of report_year (e.g. 2024-01-01). Derived from report_year; marks the start of the benefit-year coverage window. Not an actual change date. | | effective_period_end | date | date. Dec 31 of report_year (e.g. 2024-12-31). Derived from report_year; the end of the benefit-year coverage window. Together with effective_period_start it just brackets the calendar year — it does NOT pinpoint when a schema change occurred. | | cms_vintage_sequence | int | int 1-4. Per-report_year ordinal of the distinct CMS source ZIP that produced the row (1 = first/earliest release that year, then 2,3,4 for quarterly updates). REQUIRED disambiguator in the grain. Strictly 1:1 with source_url within a year (1 tiny exception around the 2022 quarter-2.zip cross-mapping). Years 2001-2017,2025,2026 have only vintage=1; 2018-2024 have 2-4 vintages. This is the reliable 'which CMS publication' key. | | parse_revision | int | int, values 1 (2341 rows) or 2 (2309 rows). A re-parse/run marker for the ingestion pipeline (which version of the parse run produced the row). CONSTANT within the grain key (0 groups have >1 value), so it is provenance metadata, NOT part of the grain. Correlates with asserted_at. | | parser_artifact_hash | string | string sha256. Hash of the parser code/artifact that generated the row (the lineage of HOW it was parsed). 40 distinct values — roughly one per source document (vs 41 source files), i.e. the parser version used per ZIP. Provenance/reproducibility, not analytical content. | | source_url | string | string. The CMS.gov download URL of the PBP Benefits ZIP this row was parsed from (e.g. 'https://www.cms.gov/files/zip/pbp-benefits-2022-updated-07012022.zip'). 41 distinct URLs, never reused across report_years. 1:1 with cms_vintage_sequence within a year. The upstream provenance pointer. | | sha256_content_hash | string | string. sha256 of the downloaded source-file CONTENT (the ZIP/README bytes), used for content-addressed dedup and change detection. 41 distinct values, 1:1 with source_url. Same hash never spans report_years; one hash spans 2 quarters (the 2022 quarter-2.zip dual-load). Use to detect whether CMS republished identical vs changed content. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_changelog WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_changelog")` first. # MA pbp field dictionary `medicare_silver.pbp_field_dictionary` · Medicare Advantage, Part D, Medicaid · status partial Parsed PBP{YEAR}_dictionary.xls/xlsx. 26K rows / year mapping (file, field) → (type, length, service category, codes). Substrate-as-self-documenting layer. **Grain.** One row per (report_year, file/PBP-section, field name, code value) within a single CMS publication vintage. Two physical archetypes share the table: ~268,159 "field header" rows (carry type/length/title, one per field+code) and ~386,180 pure "code-enumeration" rows (title/type NULL, carry just codes/code_values for the field's remaining allowed values). 654,345 total rows. The MINIMAL verified-unique key is (report_year, quarter, file, name, codes, code_values, cms_vintage_sequence, field_title) = exactly 654,345 distinct. There is no single natural PK: the same field name can appear twice in one file/year with different field_title/title (e.g. pbp_a_ben_cov is both "Coverage Criteria" and "Enrollee Type:"), which is why both code_values AND field_title are needed on top of the obvious (year,quarter,file,name,codes,vintage) key — dropping either reintroduces 94 duplicate groups (188 rows). **How to use it.** Decode a coded PBP field for a given benefit year. Example: SELECT codes, code_values FROM medicare_silver.pbp_field_dictionary WHERE report_year=2026 AND name='pbp_a_ben_cov' AND cms_vintage_sequence=(SELECT max(cms_vintage_sequence) FROM medicare_silver.pbp_field_dictionary WHERE report_year=2026 AND name='pbp_a_ben_cov') AND codes IS NOT NULL — answers "what does each value of the pbp_a_ben_cov (Coverage Criteria) column in pbp_section_a mean in 2026" (1 -> 'Part A and Part B', 2 -> 'Part B Only'), so you can label the raw codes stored in the pbp_section_* benefit tables. **Traps.** - This is a DICTIONARY/codebook, not benefit data. It carries NO plan, contract (H-number), premium, or dollar values — it describes the COLUMNS of the sibling pbp_section_* / pbp_step_* fact tables. To decode a coded value in those tables you join on (file->table, name, codes) and read code_values, scoped to the matching report_year (and ideally the same cms_vintage_sequence). - No is_current flag and the same report_year can have up to 4 coexisting vintages (cms_vintage_sequence 1-4 = quarterly CMS republications, 2018-2024). If you query a coded field for a year without filtering to MAX(cms_vintage_sequence) per report_year you will get duplicate/old definitions. quarter loosely tracks vintage but is unreliable (2021 has 2 vintages both quarter=1). - name is NOT a unique field identifier within a year/file: the same name can hold two different meanings with different field_title/title (e.g. pbp_a_ben_cov is both 'Coverage Criteria' and 'Enrollee Type:'). That is why the true unique key needs BOTH code_values AND field_title on top of (report_year,quarter,file,name,codes,cms_vintage_sequence); dropping either reveals 94 duplicate groups. - Two row archetypes are mixed: ~268K 'header' rows carry type/length/title/field_title (one per field, with its first code), and ~386K pure code rows carry only codes/code_values with title/type/length NULL. So NULL type/title does NOT mean a missing field — it means that row is an additional code value of a field defined on another (header) row. To list fields, filter title IS NOT NULL; to enumerate a field's allowed values, take all rows for that (year,file,name). - codes is a dirty code 'system': the same logical code appears as '1' and float-cast '1.0' in different years, label text is not normalized ('Part B Only' vs 'Part B only'), and some codes are ratio strings like '1 in 2' / '1 in 3' (per-period cost-share), not integers. Match defensively across years. - service_category_derived is 100% NULL (dead column). service_category (7% filled) and json_question (8% filled) are sparse/recent-only. observed_period and effective_period_start are exact duplicates of each other and both equal Jan-1-of-report_year, so all three are redundant. asserted_at is the May-2026 pipeline load date, NOT a CMS date. The file column also contains ~1,129 junk rows ('planArea.txt', 'accompany this PBP submission.', empty) from parser leakage. | column | type | meaning | |---|---|---| | report_year | int | CMS PBP benefit/contract year the field definition applies to. INT, 2001-2026, 26 distinct values. Primary time dimension; always equals year(effective_period_start) and year(observed_period) (0 mismatches). Field schema grows over time: ~5,000-6,200 distinct field names across ~65-79 files per recent year. | | quarter | int | CMS quarterly republication index within the report_year, INT 1-4. Part of the grain (dropping it loses ~22K rows). NOT the calendar quarter of validity — it tracks which quarterly PBP PUF release this definition came from. Pre-2018 years are single-release (quarter=1 only); from 2018 on, multiple quarters appear. Caveat: not perfectly aligned to vintage — e.g. 2021 has 2 vintages both labeled quarter=1 (sourced from updated-07012021.zip vs updated-08022021.zip). | | file | string | The PBP section/sub-file the field belongs to, e.g. pbp_Section_A, pbp_Section_D, pbp_b1a_inpat_hosp, pbp_b13_other_services, pbp_b16_dental. 129 distinct values. Maps (after normalization) to the sibling fact tables pbp_section_a, pbp_section_b1a_inpat_hosp, pbp_section_d, etc. GOTCHA: mixed casing/prefix (pbp_Section_A vs pbp_b1a... and the actual table is pbp_section_b1a_inpat_hosp), and it is finer-grained than the tables (pbp_Section_C_1, pbp_b13_other_services_2, pbp_b13h_other_services_1 are sub-files unioned into one table). Also contains 1,129 junk/non-standard rows (file='planArea.txt', 'accompany this PBP submission.', or empty) from parser leakage / plan-area files. | | name | string | The machine field/column name as it appears in the PBP data tables, e.g. pbp_a_hnumber, pbp_a_ben_cov, segment_id, pbp_b1a_bendesc_yn. 11,250 distinct. This is the JOIN key from a PBP fact table column to this dictionary. A field name is repeated across many rows (one per allowed code value, plus collisions across files/years). | | type | string | SAS-style storage type of the field: only two values, 'NUM' (152,319) or 'CHAR' (115,843). Populated only on the ~268,159 field-header rows; NULL on the 386,180 pure code-enumeration rows. | | length | int | Field width (character/numeric length) from the SAS/fixed-width layout, INT. Populated only on header rows (same ~268,162 coverage as type); NULL on pure code rows. | | service_category | string | Benefit service-category label as given by CMS. SPARSE: only 47,719 non-null (~7%), concentrated in recent years. Often NULL — its absence does not mean the field has no service category, just that CMS did not tag it in that vintage. | | field_title | string | The LONG / verbose human description of the field, frequently phrased as the full CMS question, e.g. 'Does the plan provide Inpatient Hospital-Acute Services as a supplemental benefit under Part C?' or short labels like 'H Number'. ~268,065 non-null. Part of the grain because the same name can carry two different field_title meanings in one file/year. Distinct from 'title' (which is the short label). | | json_question | string | The question text / form-field phrasing as surfaced in CMS's JSON/online PBP entry form, or the literal token 'DERIVED' for computed fields. SPARSE: 53,796 non-null (~8%), recent years only. | | title | string | The SHORT abbreviated field label, e.g. 'IHA Supp Benefits YN', 'Coverage Criteria', 'Plan ID'. ~268,159 non-null (header rows). NOT used as the grain key (it is trimmed/normalized vs field_title — keying on title leaves 24 residual dup groups because e.g. 'Enrollee Type:' (field_title) vs 'Enrollee Type' (title)). | | codes | string | The raw code value as stored in the PBP data (the left side of the decode). 485,738 non-null, 589 distinct. GOTCHA: NOT a clean integer code system — values include '1', but also float-cast '1.0' (and '2'/'2.0' across different years — same meaning, different string), and ratio/frequency strings like '1 in 2', '1 in 3' (cost-share-per-period codes). String matching across years must account for the '1' vs '1.0' formatting drift. | | code_values | string | The human-readable label for the code (the right side of the decode), e.g. 'Part A and Part B', 'Part B Only', 'HMO', 'Local CCP', 'Yes', 'Additional Days'. 485,738 non-null (1:1 populated with codes), 1,594 distinct. GOTCHA: label text is not normalized across vintages ('Part B Only' vs 'Part B only'), which is part of why it is needed in the grain key. | | service_category_derived | string | DEAD COLUMN. 0 non-null rows across the entire table — reserved/never populated. Do not use. | | observed_period | date | DATE, the benefit-year start as observed; always Jan 1 of report_year and always identical to effective_period_start (0 differences). Redundant with report_year/effective_period_start — a bitemporal 'observed' anchor. | | asserted_at | date | DATE the row was asserted/loaded by Vlada's ingestion pipeline (bitemporal 'asserted' timestamp), NOT a CMS date. Only 3 values, all in May 2026 (2026-05-15, 2026-05-20, 2026-05-25) — the whole dictionary was ingested in one window. Useful for pipeline auditing, not for plan-year analysis. | | effective_period_start | date | DATE the definition is effective from = Jan 1 of report_year (year always equals report_year, 0 mismatches). The profiler's chosen time column. Redundant with report_year/observed_period. | | effective_period_end | date | DATE the definition is effective through = Dec 31 of report_year. Together with effective_period_start it just brackets the calendar benefit year. | | cms_vintage_sequence | int | INT 1-4, the sequence number of the CMS source publication within a report_year. 1:1 with distinct source_url and distinct sha256_content_hash per year. =1 for single-release years (2001-2017, 2025-2026); 2-4 for years CMS republished the PBP PUF quarterly (2018-2024). Part of the grain. To get 'the latest CMS view' of a year, filter to MAX(cms_vintage_sequence) for that report_year (there is no is_current flag). | | parse_revision | int | INT 1-2, Vlada parser revision number for the source artifact. Adds no grain resolution beyond cms_vintage_sequence (not part of the unique key); provenance/versioning of the extraction logic. | | parser_artifact_hash | string | SHA-256 hash of the parser artifact/code that produced these rows. Provenance — lets you tie a row back to the exact extraction build. | | source_url | string | The CMS download URL of the source ZIP, e.g. https://www.cms.gov/files/zip/pbp-benefits-2022-quarter-2.zip or .../pbp-benefits-2021-updated-08022021.zip. 1:1 with cms_vintage_sequence within a year; documents the exact CMS publication. | | sha256_content_hash | string | SHA-256 of the source file content. Content-addressable provenance; 1:1 with source_url/cms_vintage_sequence within a year. Distinct sha => distinct CMS publication. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_field_dictionary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_field_dictionary")` first. # MA pbp mrx `medicare_silver.pbp_mrx` · Medicare Advantage, Part D, Medicaid · status partial Part D Rx plan-level/group detail from mrx.txt. Coverage begins in 2006; insulin/IRA fields are added in later eras. Legacy repeated rows are retained at the source-native MRx group grain. **Grain.** One row per Medicare plan-segment (a CMS 'bid': contract_id + plan_id + segment_id, captured as bid_id) per quarterly CMS PBP release (report_year + quarter + cms_vintage_sequence). The minimal verified unique key is (bid_id, report_year, quarter, cms_vintage_sequence) — equivalently (contract_id, plan_id, segment_id, report_year, quarter, cms_vintage_sequence) — which yields exactly 208,537 distinct combinations against 208,537 rows. Within a single release, bid_id alone is unique (e.g. 8,326 plans in the 2026 Q1 vintage-1 snapshot). This is the plan-level Section MRx (Part D Rx benefit) record, NOT one row per formulary tier. **How to use it.** Pick ONE snapshot, then read plan-level Part D design. Example: SELECT bid_id, mrx_drug_ben_yn, mrx_benefit_type, mrx_alt_ded_amount FROM medicare_silver.pbp_mrx WHERE report_year=2026 AND quarter=1 AND cms_vintage_sequence=1 AND mrx_drug_ben_yn='1' — returns, for every 2026 Medicare plan that offers Part D, its benefit type (4=Enhanced Alternative) and Part D deductible (e.g. 615.0 = the CY2026 standard). To analyze actual generic/brand copays per formulary tier and pharmacy channel, join bid_id+snapshot to the sibling table medicare_silver.pbp_mrx_tier (this table does NOT carry usable tier copays). To trend a plan over years, group by report_year keeping one release per year (e.g. MIN(quarter)/MIN(cms_vintage_sequence)). **Traps.** - NOT a tier/copay table. This is the PLAN-LEVEL Part D record (~8K plans/year). The per-tier × per-pharmacy generic/brand copay & coinsurance amounts live in the SIBLING table pbp_mrx_tier (~27-33K rows = one per plan×tier). The mrx_gen_* copay matrix here is ~empty (mrx_gen_in_1m: 632 non-null of 208,537). NEVER read 'the plan's drug copay' from this table, and never sum tier copays here. - Grain needs FOUR columns, not the obvious ones. Minimal verified key = (bid_id, report_year, quarter, cms_vintage_sequence) [= contract_id+plan_id+segment_id+report_year+quarter+cms_vintage_sequence], 208,537 distinct = 208,537 rows. Dropping cms_vintage_sequence creates 16,307 dup rows (2021 Q1 & 2022 Q1 were each loaded at two vintages from two CMS ZIPs); dropping quarter creates 8,336 dups. bid_id is unique only WITHIN one snapshot (8,326 in 2025 Q1). - The profiler's reported grain is WRONG/superset — it leaned on mrx_grp_id, mrx_grp_type_id, mrx_v_bid_attestation, etc. mrx_grp_id and mrx_grp_type_id are 100% NULL across all 208,537 rows (this table is never exploded to benefit-group rows), so those columns spuriously appeared to 'add uniqueness.' Ignore them as keys. - No is_current column and NO dedup applied — every quarterly CMS release is STACKED. There are 30 snapshots (report_year × quarter × cms_vintage_sequence). To get 'the current plan benefits' you MUST filter, e.g. report_year=2026 AND quarter=1 AND cms_vintage_sequence=1 (or pick MAX vintage per year). Querying without a snapshot filter double/triple-counts plans and mixes 16 years. - Massive year-dependent column sparsity driven by documented PBP layout churn. Of 356 columns most are NULL for any given year: CY2022-Q2 moved 42 cols OUT of pbp_mrx into siblings (pbp_vbid, pbp_mrx_dmodel, pbp_mrx_ssm); CY2024 'New PBP' redesign reshaped Section D; CY2026 discontinued VBID and removed the coverage-gap (IRA). Examples observed: mrx_formulary_yn/mrx_basic_plan_yn/mrx_alt_drug_type 100% NULL in 2026; mrx_quantity_limits only 2010-2021; mrx_form_tier_model_5 only 2013-2016. Always check non-null coverage for your target year before trusting a column. - Report year 2020 is entirely MISSING (data jumps 2019→2021). This is the documented CY2020 CMS filename quirk (the file shipped as 'pbp_mrx 2.txt' with the canonical 'pbp_mrx.txt' absent), so 2020 was not ingested. Don't treat the gap as data loss for other years. - mrx_drug_ben_yn='2' (~12% of plans) means the plan offers NO Part D benefit — those rows are shells with all cost/deductible fields NULL (verified: 0 such rows have mrx_alt_ded_amount set). Filter to mrx_drug_ben_yn='1' before analyzing drug cost-share. - Identifier columns are zero-padded strings, not numbers: plan_id='001', segment_id='0', pbp_a_plan_type='01', orgtype='08'. Join/compare as strings. version, report_year, quarter, mrx_*_amt are doubles. Missing values are true SQL NULL (no '.' or '' sentinel leakage — verified). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage/Part D contract ID (e.g. H0016, H0022). String, 1,806 distinct. First component of bid_id. A contract holds many plans. | | plan_id | string | 3-digit plan number within the contract (e.g. 001, 003, 007). String, 656 distinct values (reused across contracts). Second component of bid_id. | | segment_id | string | Plan segment number, string '0'-'25'. '0' for unsegmented plans (the vast majority); >0 identifies geographic/benefit segments of a segmented plan. Third component of bid_id. Part of the grain. | | version | double | CMS bid submission/refile version for that plan-year (double 1..12+). Plan metadata, NOT a snapshot/dedup key; most plans are v1-4, higher versions progressively rarer. Do not use to dedup. | | report_year | double | Benefit/contract year the PBP describes (double, 2010-2026; 2020 is ABSENT). Part of the snapshot grain. Equals YEAR(effective_period_start). | | quarter | double | CMS release quarter for that plan-year (double 1-4). PBP is re-released quarterly; quarter labels which release. Part of the grain. NOTE: 2010-2017 only have Q1; later years have multiple quarters. | | bid_id | string | Concatenated plan identity contract_id_plan_id_segment_id (e.g. 'H0028_007_0'). The natural per-snapshot primary key; exactly = (contract_id//plan_id//segment_id). Unique within one CMS release. | | max_rai_ann_partd_rew_amt_1rx | double | | | max_rai_ann_partd_rew_amt_2rx | double | | | max_rai_ann_partd_rew_amt_3rx | double | | | max_rai_frq_rew_incent_1rx | string | | | max_rai_frq_rew_incent_2rx | string | | | max_rai_frq_rew_incent_3rx | string | | | max_rai_partd_rew_inc_amt_1rx | double | | | max_rai_partd_rew_inc_amt_2rx | double | | | max_rai_partd_rew_inc_amt_3rx | double | | | mrx_ae_copay_lesser_yn | string | | | mrx_ae_cstshr_apply | string | | | mrx_ae_cstshr_grps | double | | | mrx_ae_oon_cstshr_struct | string | | | mrx_ae_ooptcs_apply | string | | | mrx_ae_ot_grps | double | | | mrx_alt_copay_lesser_yn | string | | | mrx_alt_cov_lmt_amt | double | | | mrx_alt_cov_lmt_yn | string | | | mrx_alt_cstshr_post_oopt | string | | | mrx_alt_cstshr_post_oopt_mmp | string | | | mrx_alt_ded_amount | double | Part D deductible dollar amount for the plan's (enhanced-alternative) design (double). Real & current: CY2026 standard = 615.0. Populated for ~half of drug-offering plans (others use $0 or tier-differential deductibles). One of the few cost fields reliably populated in this parent table. | | mrx_alt_ded_charge | string | | | mrx_alt_ded_tier_cstshr_yn | string | | | mrx_alt_ded_type_yn | string | | | mrx_alt_drug_type | string | | | mrx_alt_excl_drugs_maxplan_yn | string | | | mrx_alt_excl_drugs_yn | string | | | mrx_alt_excl_max_plan_amt | double | | | mrx_alt_fulfill_desc | string | | | mrx_alt_gap_covg_brand | string | | | mrx_alt_gap_covg_gen | string | | | mrx_alt_gap_covg_tier | string | | | mrx_alt_gap_covg_yn | string | | | mrx_alt_gap_drug_type | string | | | mrx_alt_gen_coins_pct | double | | | mrx_alt_gen_copay_amt | double | | | mrx_alt_gen_cstshr_struct | string | | | mrx_alt_ira_covg_tier | string | | | mrx_alt_lim_amt | double | | | mrx_alt_max_enroll_mmp_amt | double | | | mrx_alt_max_enroll_mmp_yn | string | | | mrx_alt_no_ded_tier | string | | | mrx_alt_oon_cstshr_struct | string | | | mrx_alt_post_icl_yn | string | | | mrx_alt_pre_icl_cost_share | string | | | mrx_alt_pre_icl_cost_share_mmp | string | | | mrx_alt_pre_icl_exclud_only_yn | string | | | mrx_alt_pre_icl_lis_mmp_tiers | string | | | mrx_alt_pre_icl_lis_mmp_yn | string | | | mrx_alt_red_cost_sharing | string | | | mrx_alt_red_cost_sharing_items | string | | | mrx_auth_ynba | string | | | mrx_avg_exp_cost_share_attest | string | | | mrx_b_auth_yn | string | | | mrx_b_coins_amt_maacqcost | double | | | mrx_b_coins_awp_disc | double | | | mrx_b_coins_covbasis | string | | | mrx_b_coins_max_dispfee | double | | | mrx_b_coins_min_dispfee | double | | | mrx_b_coins_pct | double | | | mrx_b_coins_prp_disc | double | | | mrx_b_coins_yn | string | | | mrx_b_copay_max_amt | double | | | mrx_b_copay_min_amt | double | | | mrx_b_copay_yn | string | | | mrx_b_ded_amt | double | | | mrx_b_ded_yn | string | | | mrx_b_max_oop_amt | double | | | mrx_b_max_oop_per | string | | | mrx_b_max_oop_yn | string | | | mrx_ba_cov_lmt_amt | double | | | mrx_ba_cov_lmt_yn | string | | | mrx_ba_cstshr_apply | string | | | mrx_ba_cstshr_grps | double | | | mrx_ba_ded_amount | double | | | mrx_ba_ded_charge | string | | | mrx_ba_ooptcs_apply | string | | | mrx_ba_ot_grps | double | | | mrx_basic_plan_yn | string | | | mrx_basic_plan_zero_prem_yn | string | | | mrx_benefit_type | string | Part D benefit design type, string '1'-'4' (4=Enhanced Alternative dominant; 1=Defined Standard, 2=Actuarially Equivalent, 3=Basic Alternative) plus NULL (~2,500/yr, mostly the no-drug plans). Distinguishes basic vs enhanced coverage. | | mrx_ceiling_price_yn | string | | | mrx_d_adher_goal | string | | | mrx_d_adher_goal_desc | string | | | mrx_d_elig_freq_other | string | | | mrx_d_eligcrit_chk | string | | | mrx_d_eligcrit_other | string | | | mrx_d_pmm_flex_chk | string | | | mrx_d_red_cs_lisb_detail | string | | | mrx_d_ri_amt | double | | | mrx_d_ri_elig_rdo | string | | | mrx_d_ri_max_amt | double | | | mrx_d_ri_type_chk | string | | | mrx_d_ri_type_other | string | | | mrx_demo_type | string | | | mrx_demo_yn | string | | | mrx_drug_ben_yn | string | KEY GATE: does the plan offer a Part D drug benefit? String '1'=yes (offers Rx, ~88%), '2'=no (~12%). drug_ben_yn='2' rows are shells with all cost fields NULL. | | mrx_ea_cov_lmt_amt | double | | | mrx_ea_cov_lmt_yn | string | | | mrx_ea_cstshr_apply | string | | | mrx_ea_cstshr_group | double | | | mrx_ea_cstshr_group_sec | double | | | mrx_ea_cstshr_grps | double | | | mrx_ea_cstshr_post_oopt | string | | | mrx_ea_cstshr_post_oopt_sec | string | | | mrx_ea_ded_amount | double | | | mrx_ea_ded_charge | string | | | mrx_ea_oop_th_amt | double | | | mrx_ea_oop_th_amt_sec | double | | | mrx_ea_oop_th_yn | string | | | mrx_ea_oop_th_yn_sec | string | | | mrx_ea_sec_covlmt_icl_amt | double | | | mrx_ea_sec_covlmt_icl_yn | string | | | mrx_excluded_tiers_yn | string | | | mrx_first_fill | string | | | mrx_floor_price_yn | string | | | mrx_form_model_desc | string | | | mrx_form_model_type | string | | | mrx_form_tier_model_2 | string | | | mrx_form_tier_model_2_mmp | string | | | mrx_form_tier_model_3 | string | | | mrx_form_tier_model_3_mmp | string | | | mrx_form_tier_model_4 | string | | | mrx_form_tier_model_4_mmp | string | | | mrx_form_tier_model_5 | string | | | mrx_form_tier_model_5_mmp | string | | | mrx_form_tier_model_5_opt1 | string | | | mrx_form_tier_model_5_opt2 | string | | | mrx_form_tier_model_5_opt3 | string | | | mrx_form_tier_model_5_opt4 | string | | | mrx_form_tier_model_5_opt5 | string | | | mrx_form_tier_model_5_opt6 | string | | | mrx_form_tier_model_6 | string | | | mrx_form_tier_model_6_mmp | string | | | mrx_form_tier_model_6_opt1 | string | | | mrx_form_tier_model_6_opt2 | string | | | mrx_form_tier_model_6_opt3 | string | | | mrx_form_tier_model_6_opt4 | string | | | mrx_form_tier_model_6_opt5 | string | | | mrx_formulary_tiers_num | string | | | mrx_formulary_yn | string | | | mrx_free_gnrc_max_amt | double | | | mrx_free_gnrc_yn | string | | | mrx_gen_extd_first_fill | string | | | mrx_gen_in_1m | double | | | mrx_gen_in_2m | double | | | mrx_gen_in_3m | double | | | mrx_gen_innpp_1m | double | | | mrx_gen_innpp_2m | double | | | mrx_gen_innpp_3m | double | | | mrx_gen_innpp_os | double | | | mrx_gen_inp_1m | double | | | mrx_gen_inp_2m | double | | | mrx_gen_inp_3m | double | | | mrx_gen_inp_os | double | | | mrx_gen_inpp_1m | double | | | mrx_gen_inpp_2m | double | | | mrx_gen_inpp_3m | double | | | mrx_gen_inpp_os | double | | | mrx_gen_ira_ltcp_coins_1m | double | | | mrx_gen_ira_ltcp_copay_1m | double | | | mrx_gen_ira_mostd_coins_1m | double | | | mrx_gen_ira_mostd_coins_2m | double | | | mrx_gen_ira_mostd_coins_3m | double | | | mrx_gen_ira_mostd_copay_1m | double | | | mrx_gen_ira_mostd_copay_2m | double | | | mrx_gen_ira_mostd_copay_3m | double | | | mrx_gen_ira_oonp_coins_1m | double | | | mrx_gen_ira_oonp_coins_othnum | double | | | mrx_gen_ira_oonp_copay_1m | double | | | mrx_gen_ira_oonp_copay_othnum | double | | | mrx_gen_ira_rstd_coins_1m | double | | | mrx_gen_ira_rstd_coins_2m | double | | | mrx_gen_ira_rstd_coins_3m | double | | | mrx_gen_ira_rstd_copay_1m | double | | | mrx_gen_ira_rstd_copay_2m | double | | | mrx_gen_ira_rstd_copay_3m | double | | | mrx_gen_loc | string | | | mrx_gen_loc_in | string | | | mrx_gen_loc_inp | string | | | mrx_gen_loc_ltc | string | | | mrx_gen_loc_mo | string | | | mrx_gen_loc_mop | string | | | mrx_gen_loc_mostd | string | | | mrx_gen_loc_oon | string | | | mrx_gen_loc_rstd | string | | | mrx_gen_ltc_1m | double | | | mrx_gen_ltcp_1m | double | | | mrx_gen_ltcp_b_1m | double | | | mrx_gen_ltcp_b_os | double | | | mrx_gen_ltcp_g_1m | double | | | mrx_gen_ltcp_g_os | double | | | mrx_gen_mo_1m | double | | | mrx_gen_mo_2m | double | | | mrx_gen_mo_3m | double | | | mrx_gen_mo_os | double | | | mrx_gen_monpp_1m | double | | | mrx_gen_monpp_2m | double | | | mrx_gen_monpp_3m | double | | | mrx_gen_monpp_os | double | | | mrx_gen_mop_1m | double | | | mrx_gen_mop_2m | double | | | mrx_gen_mop_3m | double | | | mrx_gen_mopp_1m | double | | | mrx_gen_mopp_2m | double | | | mrx_gen_mopp_3m | double | | | mrx_gen_mopp_os | double | | | mrx_gen_mostd_1m | double | | | mrx_gen_mostd_2m | double | | | mrx_gen_mostd_3m | double | | | mrx_gen_oon_1m | double | | | mrx_gen_oon_os | double | | | mrx_gen_oonp_1m | double | | | mrx_gen_oonp_3m | double | | | mrx_gen_oonp_os | double | | | mrx_gen_rstd_1m | double | | | mrx_gen_rstd_2m | double | | | mrx_gen_rstd_3m | double | | | mrx_grp_coins_yn | string | | | mrx_grp_copay_yn | string | | | mrx_grp_id | string | | | mrx_grp_innpp_1m_num | double | | | mrx_grp_innpp_3m_num | double | | | mrx_grp_innpp_coins_1m | double | | | mrx_grp_innpp_coins_3m | double | | | mrx_grp_innpp_coins_os | double | | | mrx_grp_innpp_copay_1m | double | | | mrx_grp_innpp_copay_3m | double | | | mrx_grp_innpp_copay_os | double | | | mrx_grp_innpp_othnum | double | | | mrx_grp_innpp_presup | string | | | mrx_grp_inpp_1m_num | double | | | mrx_grp_inpp_3m_num | double | | | mrx_grp_inpp_co_num | double | | | mrx_grp_inpp_coins_1m | double | | | mrx_grp_inpp_coins_3m | double | | | mrx_grp_inpp_coins_os | double | | | mrx_grp_inpp_copay_1m | double | | | mrx_grp_inpp_copay_3m | double | | | mrx_grp_inpp_copay_os | double | | | mrx_grp_inpp_ps | string | | | mrx_grp_lbl | string | | | mrx_grp_lbl1 | string | | | mrx_grp_lbl2 | string | | | mrx_grp_locat | string | | | mrx_grp_mo_1m_num | double | | | mrx_grp_mo_3m_num | double | | | mrx_grp_mo_coins_1m | double | | | mrx_grp_mo_coins_3m | double | | | mrx_grp_mo_coins_os | double | | | mrx_grp_mo_copay_1m | double | | | mrx_grp_mo_copay_3m | double | | | mrx_grp_mo_copay_os | double | | | mrx_grp_mo_othnum | double | | | mrx_grp_mo_presup | string | | | mrx_grp_oonp_1m_num | double | | | mrx_grp_oonp_3m_num | double | | | mrx_grp_oonp_coins_1m | double | | | mrx_grp_oonp_coins_3m | double | | | mrx_grp_oonp_coins_os | double | | | mrx_grp_oonp_copay_1m | double | | | mrx_grp_oonp_copay_3m | double | | | mrx_grp_oonp_copay_os | double | | | mrx_grp_oonp_othnumn | double | | | mrx_grp_oonp_presup | string | | | mrx_grp_tier_lbl1 | string | | | mrx_grp_tier_lbl2 | string | | | mrx_grp_tierlbl | string | | | mrx_grp_type | string | | | mrx_grp_type_id | string | | | mrx_innpp_1m_num | double | | | mrx_innpp_3m_num | double | | | mrx_innpp_othnum | double | | | mrx_innpp_presup | string | | | mrx_inpp_1m_num | double | | | mrx_inpp_3m_num | double | | | mrx_inpp_co_num | double | | | mrx_inpp_ps | string | | | mrx_insulin_attest | string | | | mrx_limit_ofc_yn | string | | | mrx_locat | string | | | mrx_ltc_attest_flag | string | | | mrx_mo_1m_num | double | | | mrx_mo_3m_num | double | | | mrx_mo_othnum | double | | | mrx_mo_presup | string | | | mrx_nat_rx_cov_yn | string | | | mrx_oonp_1m_num | double | | | mrx_oonp_3m_num | double | | | mrx_oonp_othnumn | double | | | mrx_oonp_presup | string | | | mrx_otc_meds_attest_flag | string | | | mrx_otc_meds_pay_ump_yn | string | | | mrx_otc_step_therapy_yn | string | | | mrx_partd_network_loc | string | | | mrx_pen_lessexpen_yn | string | | | mrx_pen_oonpharm_yn | string | | | mrx_post_exclud_only_yn | string | | | mrx_pro_part_fill | string | | | mrx_ptd_nat_avg | double | | | mrx_quantity_limits | string | | | mrx_rai_adh_goal_notes_1rx | string | | | mrx_rai_adh_goal_notes_2rx | string | | | mrx_rai_adh_goal_notes_3rx | string | | | mrx_rai_elig_crit_1rx | string | | | mrx_rai_elig_crit_2rx | string | | | mrx_rai_elig_crit_3rx | string | | | mrx_rai_elig_crit_notes_1rx | string | | | mrx_rai_elig_crit_notes_2rx | string | | | mrx_rai_elig_crit_notes_3rx | string | | | mrx_rai_frq_ri_desc_1rx | string | | | mrx_rai_frq_ri_desc_2rx | string | | | mrx_rai_frq_ri_desc_3rx | string | | | mrx_rai_meet_adh_goal_yn_1rx | string | | | mrx_rai_meet_adh_goal_yn_2rx | string | | | mrx_rai_meet_adh_goal_yn_3rx | string | | | mrx_rai_num_partd_offrd | string | | | mrx_rai_off_rew_incent_yn | string | | | mrx_rai_rew_inc_notes_1rx | string | | | mrx_rai_rew_inc_notes_2rx | string | | | mrx_rai_rew_inc_notes_3rx | string | | | mrx_rai_type_partd_rew_1rx | string | | | mrx_rai_type_partd_rew_2rx | string | | | mrx_rai_type_partd_rew_3rx | string | | | mrx_reduct_cost_yn | string | | | mrx_snp_zerocost_attest | string | | | mrx_sp_access_yn | string | | | mrx_step_ther_drugs_yn | string | | | mrx_tier_extd_days_gen_yn | string | | | mrx_tier_form_ex | string | | | mrx_tier_form_ex_2 | double | | | mrx_tier_form_ex_2_yn | string | | | mrx_tier_group_num | double | | | mrx_v_bid_attestation | string | | | mrx_vaccine_attest | string | | | orgtype | string | CMS organization type code, string (01=Local CCP/HMO-PPO dominant, 08, 10, 11, 06, 04, 02...). Plan-sponsor org category. Largely co-varies with pbp_a_plan_type. | | part_d_enhncd_cvrg_demo | string | | | part_d_model_demo | string | | | pbp_a_ben_cov | string | Section-A benefit-coverage scope code (string; '1' dominant, '2', plus nulls). Indicates the plan's overall benefit coverage class. | | pbp_a_plan_type | string | PBP plan-type code, string ('01'=HMO, '02'=HMO-POS, '04'=Local PPO, '29'=PDP-style, '20', '31'=Regional PPO, etc.). Carried from Section A; identifies the MA/PDP product type. | | observed_period | date | Vlada-normalized observation period (date) = Jan 1 of report_year. Always equals effective_period_start in this table; does NOT distinguish quarterly releases (so it cannot stand in for quarter/vintage in the grain). | | asserted_at | date | Vlada ingestion/assert date (date; 3 values: 2026-05-16, 2026-05-20, 2026-05-25). The 16,307 rows asserted 2026-05-25 are exactly the 2021/2022 dual-vintage backfill rows. Pipeline provenance, not benefit data. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer ordinal of the CMS release within the plan-year, normally tracking quarter (Q1=1...Q4=4). REQUIRED in the grain: in 2021/2022 the same (year,quarter) was loaded at two different vintage sequences from two different CMS source ZIPs (mid-year 'updated-MMDDYYYY' re-releases). | | parse_revision | int | | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | source_row_ordinal | double | | | mrx_bal_model_attest | string | | | mrx_bal_opt_flex | string | | | mrx_bal_opt_flex_other_desc | string | | | mrx_balance_covg_tier | string | | | mrx_balance_cstshr_struc_type | string | | | mrx_balance_deductible_amt | double | | | mrx_balance_deductible_opt | string | | | mrx_balance_extended_tier | string | | | mrx_balance_mo_tier | string | | | mrx_dsnp_buydown_attest | string | | | mrx_alt_* (family) | | ~35 cols describing the Enhanced Alternative coverage design: deductible (ded_amount/charge/type), coverage limits (cov_lmt_amt/yn), gap coverage (gap_covg_brand/gen/tier/yn — pre-2026; IRA removed the gap in 2026), generic cost-share (gen_coins_pct/gen_copay_amt/gen_cstshr_struct), excluded/reduced drugs, pre/post-ICL cost share, and MMP (Medicare-Medicaid plan) variants. Sparse; which sub-fields are valid depends on report_year (PBP layout churn). | | mrx_b_* (family) | | ~22 cols for the Part D supplemental/'B' cost-share block (coinsurance pct, copay min/max, AWP discount, dispensing-fee min/max, deductible, max-OOP). Mostly NULL in recent years (mrx_b_ded_amt=0 non-null across all 208K rows in sample) — legacy/rarely-used design fields. | | mrx_gen_* tier-copay matrix (mrx_gen_in/inp/innpp/mo/mop/oon/rstd/mostd/ltc _1m/_2m/_3m) | | ~120 double cols intended for generic-drug copay/coins by pharmacy location (in-network, preferred, mail-order, OON, retail/mail standard, LTC) and days-supply (1/2/3-month). TRAP: essentially EMPTY in this parent table (mrx_gen_in_1m = 632 non-null of 208,537, only legacy years). Tier×pharmacy cost detail lives in the child table pbp_mrx_tier, not here. | | mrx_gen_loc_* / mrx_locat / mrx_partd_network_loc | | Part D pharmacy-location indicators (rstd=retail-standard, mostd=mail-order-standard, oon=out-of-network-preferred, ltc=long-term-care-preferred, in/inp/mo/mop). String flags describing which pharmacy channels the plan structures cost-share for. | | mrx_gen_ira_* (family) | | ~30 cols added for IRA (Inflation Reduction Act) standardized Part D cost-share — generic coins/copay by standard-retail (rstd), mail-standard (mostd), LTC-preferred (ltcp), OON-preferred (oonp) at 1/2/3-month supply. Populated only in IRA-era years (CY2024+). | | mrx_grp_* (family) | | ~50 cols for cost-share 'group' constructs (group id/type/labels, per-group copay/coins by pharmacy×supply). TRAP: mrx_grp_id and mrx_grp_type_id are 100% NULL across all 208K rows — this table is NEVER exploded to group rows. The profiler wrongly used these as a 'key'. | | mrx_rai_* / max_rai_* (family) | | ~30 cols for Part D Rewards & Incentives programs (offered y/n, type, eligibility criteria, adherence-goal notes, max annual reward amounts _1rx/_2rx/_3rx). Free-text + amounts; mostly NULL. | | mrx_ae_/mrx_ba_/mrx_ea_* (family) | | Cost-share-group apply flags and out-of-pocket-threshold structures for Alternative-Enhanced (ae), Basic-Alternative (ba), Enhanced-Alternative (ea) tiers — cstshr_apply, cstshr_grps, ded_amount, oop_th_amt, post_oopt. Sparse design-detail fields. | | mrx_form_* / mrx_formulary_yn / mrx_formulary_tiers_num / mrx_form_tier_model_2..6 | | Formulary model descriptors: formulary y/n, number of tiers, tier-model codes (2-6 tiers, with _mmp and _opt variants). mrx_form_tier_model_5 populated only CY2013-2016; mrx_formulary_yn 100% NULL in 2026 — strongly year-dependent (these moved/changed in the CY2022-Q2 and CY2024 PBP redesigns). | | mrx_quantity_limits / mrx_step_ther_drugs_yn / mrx_otc_step_therapy_yn / mrx_auth_ynba / mrx_first_fill / mrx_excluded_tiers_yn | | Utilization-management flags: quantity limits (string, populated 2010-2021 then NULL), step therapy, prior auth, first-fill/extended-first-fill, excluded tiers. String y/n-style indicators; coverage varies by year. | | mrx_demo_yn / mrx_demo_type / part_d_model_demo / part_d_enhncd_cvrg_demo | | Part D demonstration/model-test participation flags and type (e.g. VBID, Enhanced Med Therapy demos). VBID-related fields blanked in CY2026 (VBID discontinued). | | effective_period_start / effective_period_end | | Plan-year coverage window: always Jan 1 .. Dec 31 of report_year (dates). Derived from report_year; identical for all quarterly releases of the same year. | | cms_vintage_sequence / parse_revision / parser_artifact_hash / source_url / sha256_content_hash | | Lineage: source_url = the exact CMS PBP ZIP (29 distinct, e.g. pbp-benefits-2025.zip, pbp-benefits-2021-updated-08022021.zip); sha256_content_hash = content hash of that file; parse_revision (1 or 2) = Vlada parser version; parser_artifact_hash = parser build. source_url is the truest snapshot discriminator. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_mrx WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_mrx")` first. # MA pbp mrx gap coverage `medicare_silver.pbp_mrx_gap_coverage` · Medicare Advantage, Part D, Medicaid · status partial Part D coverage-gap detail keyed by the source-native MRx tier identifier. Folded into pbp_mrx in 2026. Coverage: 2008-2025. **Grain.** One row per (plan-segment x benefit year x CMS quarterly snapshot x formulary tier x gap-cost-share indicator x ingestion batch). In plain words: for a given plan segment in a given report_year, as published in a given CMS quarterly PUF vintage, each Part D drug tier gets one or more rows distinguished by the gap cost-share code — and because two ingestion runs loaded overlapping snapshots, asserted_at must be included to make the key exact. The minimal VERIFIED unique key is (contract_id, plan_id, segment_id, report_year, quarter, mrx_tier_id, mrx_tier_gap_cost_share, asserted_at) = 516,458 rows, 0 duplicates. Dropping asserted_at collapses to 452,545 groups (63,913 logical records were loaded twice, all from the 2021-Q1 and 2022-Q1 files); dropping mrx_tier_gap_cost_share further collapses because a single tier can carry multiple gap cost-share rows. **How to use it.** For benefit year 2024, list each plan's tiers and gap cost-share variants while taking a single snapshot to avoid double counting: SELECT contract_id, plan_id, segment_id, mrx_tier_id, mrx_tier_label_list, mrx_tier_gap_cost_share FROM medicare_silver.pbp_mrx_gap_coverage WHERE report_year=2024 AND quarter=(SELECT MAX(quarter) FROM medicare_silver.pbp_mrx_gap_coverage WHERE report_year=2024) AND asserted_at=(SELECT MAX(asserted_at) FROM medicare_silver.pbp_mrx_gap_coverage). This answers "how is each Part D plan's coverage-gap (donut-hole) benefit structured by formulary tier" for that year. Always pin one quarter per report_year and one asserted_at to avoid snapshot/re-ingest double-counting; join to sibling PBP tables on (contract_id, plan_id, segment_id, report_year) for fuller plan context. **Traps.** - NO is_current column and the table is NOT deduped: 63,913 logical records were loaded in BOTH ingestion batches (asserted_at 2026-05-20 and 2026-05-25), all from the 2021-Q1 and 2022-Q1 source files. You will double-count 2021/2022 unless you pick ONE asserted_at (e.g. MAX(asserted_at)) or include asserted_at in your dedup. Total 516,458 rows vs only 452,545 logical records. - Multiple quarterly snapshots per benefit year: the same report_year is republished in several quarters (e.g. 2018 has Q2/Q3/Q4). To get ONE benefit-year view per plan, also pick one quarter per report_year (e.g. the latest), or you triple-count plans. quarter is a snapshot label, not just a calendar field. - mrx_tier_gap_cost_share looks like a duplicate-causing nuisance but is REAL grain: a single (plan, year, quarter, tier) can have several rows differing only by this code (NULL/'1'/'2'). Do not collapse it away blindly. NULL (~86%) is the normal 'no special gap cost-share' case, not missing data. - Five columns are 100% NULL and carry zero information: mrx_tier_alt_gap_covg_excl_yn, mrx_tier_gap_all_drug_yn, mrx_tier_gap_drug_type_lmtd, mrx_tier_gap_excluded_only_yn, mrx_tier_lbl. They are empty schema placeholders — never filter or join on them. - bid_id is NOT an independent key — it is exactly contract_id + '_' + plan_id + '_' + segment_id (verified 516,458/516,458). Likewise observed_period / effective_period_start / effective_period_end are all derived from report_year (Jan 1 / Jan 1 / Dec 31). Including any of these does not refine the grain. - mrx_tier_drug_type is a coarse code (01/10/11) that does NOT cleanly name the tier — the same code spans many different tier names. Use mrx_tier_label_list for the human tier name; mrx_tier_id is just the tier number (1-7), also not self-describing. - Demo flags are year-scoped: part_d_enhncd_cvrg_demo exists only for 2021-2022 and part_d_model_demo essentially only 2021; NULL elsewhere means 'demo not in effect that year', not 'no'. cms_vintage_sequence is not a reliable clean key either — it disagrees with quarter for the re-ingested 2021/2022 rows. - parse_revision is a constant (2) and version (1-26) is a CMS bid-version attribute, not a snapshot selector — neither is needed in the grain key and neither should be used to pick 'the current' record (use asserted_at + quarter for that). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID (e.g. H0022). 902 distinct. Part of the plan key. Letter prefix indicates contract type (H=MA/MA-PD local, R=Regional PPO, S=standalone PDP, etc.). Always populated. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001', zero-padded). 452 distinct values, NOT unique on its own. Part of the plan key. Always populated. | | segment_id | string | Plan segment/sub-area ID. '0' = non-segmented plan (461,438 rows, ~89%); 1-7+ are geographic service-area segments of a segmented plan. Part of the plan key; do NOT drop it. Always populated. | | version | double | CMS PBP bid record version number (double, 1-26, 23 distinct). The plan's bid submission version within that PUF release. NOT needed for the grain (the key is unique without it); only 30 grain-groups ever carry >1 version. A plan-bid-versioning attribute, not a snapshot discriminator. | | report_year | double | Benefit/contract year the record applies to (double, 2018-2024, 7 values). Drives observed_period, effective_period_start (Jan 1) and effective_period_end (Dec 31). This is the real time dimension; periodicity is annual. | | quarter | double | Quarter of the CMS PUF release that this snapshot came from (double, 1-4). The same report_year appears in multiple quarterly releases (republished benefit data). Part of the grain because it labels which quarterly vintage. CAUTION: mostly 1:1 with cms_vintage_sequence but they disagree for the re-ingested 2021/2022 records. | | bid_id | string | Concatenation contract_id + '_' + plan_id + '_' + segment_id (e.g. 'H0022_001_0'). VERIFIED redundant: equals that concat in 516,458/516,458 rows. A convenience join key, NOT an independent identifier — do not treat as adding grain. Always populated. | | mrx_tier_drug_type | string | CMS PBP code for the drug type of the tier (string: '11' ~64%, '01' ~32%, '10' ~4%). Roughly 01=generic-class, 10=brand-class, 11=mixed/other-catch-all. NOT a clean label — the same code maps to many different tier names (code '11' alone spans Preferred Generic, Brand, Specialty, etc.). Use mrx_tier_label_list for the human name. | | mrx_tier_gap_cost_share | string | Gap-phase cost-share indicator code for the tier. Only 3 values: NULL (441,858, ~86%), '1' (61,839), '2' (12,761). NULL is the common case (no special gap cost-share row); '1'/'2' denote distinct gap cost-share variants of the SAME tier. This column is PART OF THE GRAIN — a single tier can produce multiple rows that differ only here. It is a small enum/flag, not a dollar or percent amount. | | mrx_tier_id | string | Formulary tier number within the plan (string '1'-'7'). 1-5 are the standard tiers (dominant); 6 = ~29.5K rows; 7 = rare (79 rows). Part of the grain. Always populated. Tier semantics (preferred generic / generic / preferred brand / non-preferred / specialty) are conveyed by mrx_tier_label_list, not by the number alone. | | mrx_tier_label_list | string | Human-readable tier name as filed by the plan (e.g. 'Generic Drugs', 'Preferred Brand', 'Specialty Tier', 'Vaccines ($0 cost sharing)'). Free-text-ish, high cardinality, plan-authored. 100% populated. This is the descriptive label to surface to users; it is functionally determined by the grain key (does not subdivide it). | | orgtype | string | CMS organization type code (string, e.g. '01' local CCP/MA, '10' standalone PDP, '11' Regional PPO, '05' PACE, '04'/'06' cost/other). 100% populated. Classifies the offering org; functionally determined by the plan key. | | pbp_a_ben_cov | string | PBP Section A benefit-coverage indicator (string '1' = 431,413, '2' = 401, NULL = 84,644). NULL is meaningful: it lines up exactly with the standalone-PDP rows (orgtype '10' / plan_type '29'), which have no Part A/B medical benefit section. Functionally determined by the plan key. | | pbp_a_plan_type | string | CMS PBP plan-type code (string). Top values: '01' HMO (245K), '04' Local PPO (128K), '29' standalone-PDP-type (85K), '02' HMOPOS (48K), '31' Regional PPO, '48'/'49' PACE, '09' cost plan, '18' other. 100% populated. Classifies plan structure; functionally determined by the plan key. | | observed_period | date | Date = Jan 1 of report_year (one value per year). Fully derived from report_year; carries no extra information beyond the benefit year start. Not part of the minimal grain (report_year already encodes it). | | asserted_at | date | Ingestion/load date into the silver layer (date). Only TWO values: 2026-05-20 (452,545 rows, main batch) and 2026-05-25 (63,913 rows, a re-ingest of the 2021-Q1 and 2022-Q1 files). REQUIRED in the grain key to disambiguate the duplicated logical records — there is no is_current flag, so both copies persist. This is the snapshot/dedup discriminator. | | effective_period_start | date | Benefit-year start = Jan 1 of report_year (date, 2018-2024). The profiler's nominal time column. Derived from report_year; one value per year. | | effective_period_end | date | Benefit-year end = Dec 31 of report_year (date). Derived from report_year; one value per year. Confirms each row applies to a full calendar benefit year. | | cms_vintage_sequence | int | CMS-assigned snapshot ordinal for the release (int, 1-4). Usually equals quarter, but NOT always: for the re-ingested 2021/2022 records the same quarter maps to two different vintage_sequence values (quarter=1 -> seq 1 and 4 in 2021; seq 1 and 2 in 2022). Treat as a vintage label, not a clean key; the grain uses quarter + asserted_at instead. | | parse_revision | int | Parser revision number for this ingestion (int). CONSTANT = 2 for every row. Provenance metadata; carries no analytic signal currently. | | parser_artifact_hash | string | SHA-256 of the parser artifact/code that produced the row (string). Provenance; functionally determined by the snapshot. Same hash across the sample (one parser build). | | source_url | string | CMS download URL of the source PBP PUF zip (e.g. .../pbp-pufs/pbp-benefits-2018-q3.zip). Provenance — directly ties each row to a specific quarterly CMS file. One URL per (report_year, quarter) snapshot. | | sha256_content_hash | string | SHA-256 content hash of the downloaded source file (string). Provenance/integrity of the raw CMS zip. Functionally determined by the snapshot. | | mrx_tier_alt_gap_covg_excl_yn | string | ALWAYS NULL across all 516,458 rows. Schema placeholder (intended 'alternative gap coverage excluded Y/N') that was never populated. Carries no data. | | mrx_tier_gap_all_drug_yn | string | ALWAYS NULL across all 516,458 rows. Schema placeholder ('gap covers all drugs Y/N') never populated. Carries no data. | | mrx_tier_gap_drug_type_lmtd | string | ALWAYS NULL across all 516,458 rows. Schema placeholder ('gap coverage limited by drug type') never populated. Carries no data. | | mrx_tier_gap_excluded_only_yn | string | ALWAYS NULL across all 516,458 rows. Schema placeholder ('gap covers excluded-only drugs Y/N') never populated. Carries no data. | | mrx_tier_lbl | string | ALWAYS NULL across all 516,458 rows. Schema placeholder (an alternate tier-label field) never populated. Use mrx_tier_label_list for the tier name instead. | | part_d_enhncd_cvrg_demo | string | Y/N flag for the Part D Enhanced/Senior-Savings-Model demonstration. Populated ONLY for report_year 2021 (61,236) and 2022 (97,752); 100% NULL for all other years. Y=59,826 / N=97,948 among populated. NULL outside 2021-2022 means 'not applicable / pre-demo', not 'no'. | | part_d_model_demo | string | Y/N flag for the broader Part D payment-model demonstration. Populated almost only in 2021 (~1,214 rows total non-null). Y=88 / N=818 among populated, NULL otherwise. A rare niche flag; NULL is the overwhelming default and means not-applicable. | | source_row_ordinal | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_mrx_gap_coverage WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_mrx_gap_coverage")` first. # MA pbp mrx p `medicare_silver.pbp_mrx_p` · Medicare Advantage, Part D, Medicaid · status partial Part D plan x pharmacy-tier formulary detail from mrx_p. The source-native post-tier identifiers retain repeated legacy rows without a synthetic mrx_p_id. **Grain.** One row per Part D plan segment per formulary drug tier per quarterly CMS snapshot. Verified minimal key = contract_id + plan_id + segment_id + report_year + quarter + mrx_tier_post_id (each column is required; dropping any makes it non-unique). 622,445 rows total; 290,631 within a single quarter (quarter=1). The "p" in the table name = the POST (post-deductible / initial coverage) phase of the Part D benefit. **How to use it.** To compare a plan's published drug-tier cost structure for a benefit year, filter to one snapshot and inspect the tiers. Example: SELECT mrx_tier_post_id, mrx_tier_post_label_list, mrx_tier_post_cost_struct, mrx_tier_post_copay_amt, mrx_tier_post_coins_pct FROM medicare_silver.pbp_mrx_p WHERE contract_id='H0028' AND plan_id='014' AND segment_id='0' AND report_year=2026 AND quarter=1 ORDER BY CAST(mrx_tier_post_id AS int); — returns that plan's 2026 formulary tiers (Preferred Generic → Specialty) and their post-deductible cost-sharing structure. For the actual retail/mail copays by day-supply, join the same plan key to medicare_silver.pbp_mrx_tier. **Traps.** - COST IS MOSTLY NULL HERE. Only ~23.6% of the standard 5-tier rows carry any copay or coinsurance (148K/622K have a copay, 8K have coinsurance, 472K rows have neither). This 'post' table is the tier SUMMARY; the real per-pharmacy-channel cost-sharing (preferred vs standard retail, mail order, 1/2/3-month supply, LTC, OON) is in the SIBLING table medicare_silver.pbp_mrx_tier (columns mrx_tier_inp_copay_1m, mrx_tier_innpp_*, mrx_tier_oon_*, etc.). For actual drug copays, join to pbp_mrx_tier, not this table alone. - NO is_current flag and quarter is the snapshot dimension. CMS republishes the entire PBP file each quarter, so one plan-year appears up to 4 times (Q1–Q4) as near-duplicate rows. The grain REQUIRES quarter. To get one row per plan-year, filter to a single quarter (quarter=1, or MAX(quarter)). Counting rows without this double/triple/quadruple-counts plans in 2018–2024. - Decode copay vs coinsurance via mrx_tier_post_cost_struct: NULL=cost not stored here (look in pbp_mrx_tier), '2'=copay only, '1'=coinsurance only, '3'=both. Don't assume a NULL copay means $0 — it usually means 'detail lives elsewhere'. - Dead / near-dead columns: mrx_tier_post_type_id is the constant '2' (the profiler wrongly put it in the grain — it adds nothing); mrx_tier_post_ref_prcng_yn and mrx_tier_post_lbl are 100% NULL; spec_yn/inject_yn/cst_shr_type/includes_mmp are >98% NULL. bid_id is just contract_id_plan_id_segment_id concatenated. plan_type/effective_period_start/observed_period in the profiler's 10-col key are redundant — the true minimal grain is 6 columns. - plan_id and segment_id are zero-padded STRINGS ('001','0'), not integers — cast carefully when joining. report_year/quarter/version are stored as doubles (2023.0, 1.0). orgtype='10' rows are standalone PDPs and legitimately have NULL pbp_a_ben_cov. - asserted_at / parse_revision / cms_vintage_sequence / parser_artifact_hash / sha256_content_hash are Vlada ingestion provenance, NOT plan attributes. asserted_at (2026-05-16/20) is the load date — never use it as a plan effective date; use report_year / effective_period_start for that. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID (e.g. H0022, H0028); 1,275 distinct. Part of the plan identity. H-contracts=MA/MA-PD, S-contracts=PDP. | | plan_id | string | 3-digit plan number within the contract, zero-padded string (e.g. '001','014'); 546 distinct. NOT unique on its own. | | segment_id | string | Plan segment ('0' for non-segmented; up to 24 distinct). Distinguishes geographic/benefit segments of the same plan. Required for the grain. | | mrx_tier_post_label_list | string | Human label of THIS tier as named by the plan (e.g. 'Preferred Brand','Specialty Tier','Preferred Generic','Generic','Non-Preferred Drug','Vaccines','Select Care Drugs'). The descriptive name for the tier whose number is mrx_tier_post_id. | | version | double | PBP bid submission version for this plan (1.0–26.0). Constant across all tier rows of a given plan-year-quarter (verified: no plan-year-quarter has >1 version). Higher = later resubmission of that plan's bid. | | report_year | double | Plan/benefit year the cost-sharing applies to (2010–2026). Equals the year of effective_period_start. The main time dimension. | | quarter | double | CMS quarterly release (1–4) the row was sourced from. CMS republishes the full PBP file each quarter, so one plan-year can appear up to 4 times. THIS is the snapshot/dedup dimension — there is NO is_current flag. Pick quarter=1 (or MAX) for one row per plan-year. | | bid_id | string | Concatenation contract_id_plan_id_segment_id (e.g. 'H0022_001_0'). Fully redundant with the first three columns; convenience key only. | | mrx_tier_post_benefit_type | string | Part-D benefit-design code for the tier: '4' (defined standard / actuarially-equivalent, 88% of rows), '3', '2'. Indicates the standard-vs-enhanced benefit context, not the dollar amount. | | mrx_tier_post_coins_pct | double | Coinsurance percentage the member pays for this tier in the post-deductible phase (0–50%, avg ~5.4 when set). NULL on 98.6% of rows. Set only when cost_struct IN (1,3). Mutually-exclusive-ish with copay_amt. | | mrx_tier_post_copay_amt | double | Flat dollar copay the member pays for this tier (post-deductible) ($0–$100, avg ~$1.40 over all rows). NULL on 76% of rows. Populated only when cost_struct IN (2,3). | | mrx_tier_post_copay_amt_mmpmax | double | Upper-bound copay for Medicare-Medicaid Plans (MMP/D-SNP integrated) members. Non-null for only 3,623 rows / 72 contracts (range 0–3.4). NULL = not an MMP-specific row. | | mrx_tier_post_copay_amt_mmpmin | double | Lower-bound MMP copay (companion to mmpmax). Same 3,623-row MMP-only population. NULL = not MMP-specific. | | mrx_tier_post_cost_struct | string | Cost-sharing structure flag that decodes which cost column is populated: NULL=neither populated here (76% — detail is in pbp_mrx_tier), '2'=copay only, '1'=coinsurance only, '3'=both copay AND coinsurance. The key to interpreting copay vs coins. | | mrx_tier_post_cst_shr_type | string | Cost-share type sub-code; almost entirely NULL (616,230 rows), '2'=5,737, '1'=478. Low-value / rarely populated. | | mrx_tier_post_drug_type | string | Bitmask-style code of drug categories the tier covers ('11'=most common, '01','10', plus 6-digit masks like '010010'). Encodes generic/brand/specialty mix; pairs with form_model_desc. | | mrx_tier_post_form_model_desc | string | Full ordered tier-model string for the WHOLE plan (e.g. 'Preferred Generic, Generic, Preferred Brand, Non-Preferred Drug, Specialty Tier'). Same value repeated on every tier row of that plan; describes the overall formulary tier layout. | | mrx_tier_post_id | string | Tier NUMBER 1–7 (1=lowest/preferred-generic … 5=specialty; 6–7 rare extra tiers). Part of the grain — identifies which tier the row's cost-sharing is for. mrx_tier_post_label_list is its name. | | mrx_tier_post_includes | string | Code for what the tier 'includes' relative to other tiers: '1' (89%), '3','2', NULL. Cross-references tiers (e.g. specialty tier includes injectables). Mostly '1'. | | mrx_tier_post_includes_mmp | string | MMP-specific 'includes' code; NULL on 99.4% of rows (only the 3,623 MMP rows populate '1'/'2'/'3'). | | mrx_tier_post_inject_yn | string | Whether the tier is for injectable drugs ('1'/'2'); 99.8% NULL. Sparse flag. | | mrx_tier_post_lbl | string | Free-text tier label override; 100% NULL in this extract — effectively a dead column. | | mrx_tier_post_ref_prcng_yn | string | Reference-pricing yes/no flag; 100% NULL across all 622,445 rows — DEAD column, never populated. | | mrx_tier_post_spec_yn | string | Whether the tier is a specialty tier ('1'/'2'); 99.8% NULL. Specialty tiers are usually identified via the label instead. | | mrx_tier_post_type_id | string | CONSTANT '2' on all 622,445 rows — a dead key. The profiler put it in the grain but it carries no information. | | orgtype | string | CMS organization type: '01'=local CCP/MA-PD (79%), '10'=standalone PDP (113K rows, these have NULL pbp_a_ben_cov), plus '04','05','06','11'. Identifies MA vs standalone-PDP context. | | part_d_enhncd_cvrg_demo | string | Enhanced-coverage demonstration flag ('Y'/'N'); NULL on 76% of rows (older years). Indicates participation in the Part D enhanced-coverage demo. | | part_d_model_demo | string | Part D model/demonstration participation ('Y'/'N'); 97% NULL, 'Y' only 122 rows. Niche demo marker (e.g. VBID/Senior Savings). | | pbp_a_ben_cov | string | Benefit-coverage indicator from PBP section A: '1'=508K, NULL=113K (all the orgtype=10 standalone-PDP rows), '2'=547. Distinguishes MA-PD vs PDP benefit-coverage context. | | pbp_a_plan_type | string | MA/PDP plan-type code: '01'=HMO (283K), '04'=Local PPO (150K), '29'=PDP standalone (113K), '02'=HMO-POS, '31'=Regional PPO, '48','18','09'… Identifies the product type. Part of the profiler's superset key but redundant given contract/plan/segment+year+quarter. | | observed_period | date | Date the data represents = Jan 1 of report_year (always equals effective_period_start in this table). Vlada bitemporal column. | | asserted_at | date | Date Vlada loaded/asserted the row (two batches: 2026-05-16 and 2026-05-20). Pure ingestion provenance — NOT plan data; do not use as plan effective date. | | effective_period_start | date | Start of the plan year = Jan 1 of report_year (2010-01-01 … 2026-01-01). The profiler's temporal anchor; interchangeable with report_year. | | effective_period_end | date | End of the plan year = Dec 31 of report_year. Always the full calendar year. | | cms_vintage_sequence | int | CMS file-vintage sequence (1–4). Roughly tracks quarter for re-released years (2→Q2, 3→Q3, 4→Q4) but for Q1 it is mostly 1 with exceptions (2022→2, 2024→4). Provenance/dedup helper; do NOT treat as identical to quarter. | | parse_revision | int | Vlada parser revision that produced the row ('1' for the 2026-05-16 batch, '2' for 2026-05-20). Ingestion provenance only. | | parser_artifact_hash | string | SHA-256 of the parser artifact/code version. Provenance for reproducibility. | | source_url | string | CMS source ZIP the row came from, e.g. https://www.cms.gov/files/zip/pbp-benefits-2023-quarter-1.zip. Encodes year+quarter of the release. | | sha256_content_hash | string | SHA-256 of the underlying source content file. Provenance/integrity hash. | | source_row_ordinal | double | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_mrx_p WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_mrx_p")` first. # MA pbp mrx tier `medicare_silver.pbp_mrx_tier` · Medicare Advantage, Part D, Medicaid · status partial Part D Rx tier detail from mrx_tier.txt, keyed by both CMS-native tier identifiers so legacy repeated rows remain distinct. **Grain.** One row per (Medicare plan benefit segment) x (formulary tier) x (coverage phase) within a single CMS quarterly release. Concretely: contract_id x plan_id x segment_id x mrx_tier_id x mrx_tier_type_id, scoped to one report_year + quarter snapshot. Verified: the 7-tuple (contract_id, plan_id, segment_id, mrx_tier_id, mrx_tier_type_id, report_year, quarter) yields exactly 792,027 distinct = the full row_count (unique). Within a single snapshot (2023 Q4 = 34,169 rows) the 5-tuple contract_id+plan_id+segment_id+mrx_tier_id+mrx_tier_type_id is already unique; bid_id can substitute for contract+plan+segment because bid_id = contract_id_plan_id_segment_id. **How to use it.** To get the current member copay for each formulary tier of a Medicare drug plan, filter to one snapshot and the initial-coverage phase, then read the retail-standard 30-day cost column. Example: SELECT mrx_tier_id, mrx_tier_label_list, mrx_tier_rstd_copay_1m AS copay_30d, mrx_tier_rstd_coins_1m AS coins_30d_pct FROM medicare_silver.pbp_mrx_tier WHERE report_year=2024 AND quarter=4 AND mrx_tier_type_id='1' AND bid_id='H0028_014_0' ORDER BY cast(mrx_tier_id AS int). Returns one row per tier (Preferred Generic $0, Generic $0, Preferred Brand $47, Non-Preferred $99, Specialty 33% coinsurance) - the patient's out-of-pocket drug cost ladder for that plan. Switch mrx_tier_type_id to '3' to see the coverage-gap (donut-hole) cost-sharing for the same tiers. **Traps.** - mrx_tier_id (the tier number 1-7) is NOT a unique key for a plan: each tier appears up to twice, split by mrx_tier_type_id = '1' INITIAL-coverage vs '3' COVERAGE-GAP cost-sharing. You MUST include mrx_tier_type_id, or filter to one phase (mrx_tier_type_id='1' for the normal/initial-coverage copay), or you double-count. Verified: all 116,195 type-3 rows carry mrx_tier_gap_cost_share; zero type-1 rows do. - This table keeps MULTIPLE CMS quarterly releases per contract year and there is NO is_current flag. The 7-key includes both report_year AND quarter. For a single clean per-plan-per-tier view you must pick one snapshot, e.g. WHERE report_year=2024 AND quarter=4 (the latest available quarter for that year). Quarters retained per year are uneven: 2010-2017/2021/2025/2026 have only 1 quarter, 2018/2019/2023 have 4, 2020/2024 have 3, 2022 has 2 - so raw row counts per year are NOT comparable. - The cost lives in ~200 sparse columns (channel x days-supply x copay/coinsurance). Any single row has only a few non-null cost fields and copay is mutually exclusive with coinsurance on the same row (verified: retail-std-30d copay_only=165k, coins_only=63k, both=49). The everyday number most users want is mrx_tier_rstd_copay_1m (retail-standard 30-day copay) OR mrx_tier_rstd_coins_1m (coinsurance %). A NULL copay does not mean free - check the coinsurance column and the right channel family. - Identifier hygiene: plan_id zero-padding is inconsistent across vintages (unpadded in 2020, 3-digit padded elsewhere) - join/group on bid_id (= contract_id_plan_id_segment_id, canonical padded) rather than raw plan_id. effective_period_start/observed_period are just Jan-1 of report_year (annual), and asserted_at/cms_vintage_sequence are ETL provenance (2026-05 load dates), NOT data recency or a reliable quarter proxy. - mrx_tier_label_list is the friendly tier name but is NULL for all of 2010 and sometimes a bare numeric code in early years; mrx_tier_cstshr_struct_type does NOT cleanly map to copay-vs-coinsurance (observed struct='2' rows carrying copays) - infer copay vs coinsurance from which value column is populated, not from the struct code. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID (e.g. H0022, H0028). First part of the plan identity. 1,427 distinct. | | plan_id | string | Plan ID within the contract (e.g. 001, 014). 645 distinct. GOTCHA: zero-padding is inconsistent across years - stored unpadded ('1','14') in the 2020 vintage but 3-digit padded elsewhere; use bid_id for the canonical padded form. | | segment_id | string | Plan benefit segment (regional/employer service-area split within a contract+plan). Almost always '0' (716k rows); '1'-'5'+ are segmented plans. Part of the grain. | | version | double | CMS PBP software version (e.g. 3.0). Format/vintage marker, not a row version. | | mrx_tier_id | string | Formulary tier NUMBER, 1-7 (1 typically Preferred Generic/lowest, 5-6 Specialty, 7 rare=119 rows). NOT unique by itself - see mrx_tier_type_id. | | report_year | double | CMS contract/benefit year (double 2010.0-2026.0). Equals year of effective_period_start. Part of the grain (a given plan+tier recurs every year). | | quarter | double | CMS quarterly RELEASE within the report_year (1-4). NOT a sub-annual benefit period - it identifies WHICH quarterly PBP publication the row came from. The table retains multiple quarterly releases per year, so quarter is REQUIRED for grain uniqueness. | | bid_id | string | Derived plan key = contract_id // '_' // plan_id(padded) // '_' // segment_id (e.g. H0028_014_0). Canonical zero-padded plan identifier; equivalent to contract+plan+segment for grain purposes. | | mrx_tier_alt_gap_covg_excl_yn | string | | | mrx_tier_benefit_type | string | Benefit-type code: '4' (705k, standard cost-share tier), '2' (45k), '3' (42k). | | mrx_tier_copay_amt_inp_mmpmax | double | | | mrx_tier_copay_amt_inp_mmpmin | double | | | mrx_tier_copay_amt_ltc_mmpmax | double | | | mrx_tier_copay_amt_ltc_mmpmin | double | | | mrx_tier_copay_amt_mo_mmpmax | double | | | mrx_tier_copay_amt_mo_mmpmin | double | | | mrx_tier_copay_amt_mstd_mmpmax | double | | | mrx_tier_copay_amt_mstd_mmpmin | double | | | mrx_tier_copay_amt_oon_mmpmax | double | | | mrx_tier_copay_amt_oon_mmpmin | double | | | mrx_tier_copay_amt_rstd_mmpmax | double | | | mrx_tier_copay_amt_rstd_mmpmin | double | | | mrx_tier_cstshr_struct_type | string | Cost-share structure type code: '2' (583k), '1' (202k), rare '3'/'4', NULL for ~6.7k. Indicates the tier's cost-sharing structure; do not assume a clean 1=copay/2=coinsurance mapping (observed plans with struct='2' carrying copays). | | mrx_tier_drug_type | string | Drug-category code the tier covers. Mixed encodings across years: short ('01','10','11','1') and 6-digit bitmask forms ('010010','001000') flagging Generic/Brand/Non-Medicare-OTC etc. Decode per the CMS PBP data dictionary; not a clean stable enum. | | mrx_tier_excep_yn | string | | | mrx_tier_extd_days_yn | string | | | mrx_tier_extd_first_fill | string | | | mrx_tier_form_model_desc | string | The plan's full tier-structure description (comma-joined list of all tier labels for that plan), e.g. 'Preferred Generic, Generic, Preferred Brand, Non-Preferred Drug, Specialty Tier'. Repeats on every tier row of the plan. | | mrx_tier_gap_all_drug_yn | string | | | mrx_tier_gap_cost_share | string | Coverage-gap cost-share indicator. Populated ONLY on type_id='3' (gap) rows - the discriminator proving type 3 = gap phase. | | mrx_tier_gap_drug_type_lmtd | string | | | mrx_tier_gap_excluded_only_yn | string | | | mrx_tier_gap_part_drugs | string | | | mrx_tier_gap_part_includes | string | | | mrx_tier_includes | string | | | mrx_tier_includes_mmp | string | | | mrx_tier_inject_yn | string | | | mrx_tier_innpp_1m_num | double | | | mrx_tier_innpp_2m_num | double | | | mrx_tier_innpp_3m_num | double | | | mrx_tier_innpp_coins_1m | double | | | mrx_tier_innpp_coins_2m | double | | | mrx_tier_innpp_coins_3m | double | | | mrx_tier_innpp_coins_avg_1m | double | | | mrx_tier_innpp_coins_othnum | double | | | mrx_tier_innpp_copay_1m | double | | | mrx_tier_innpp_copay_2m | double | | | mrx_tier_innpp_copay_3m | double | | | mrx_tier_innpp_copay_daily | double | | | mrx_tier_innpp_copay_othnum | double | | | mrx_tier_innpp_othnum | double | | | mrx_tier_inp_1m_num | double | | | mrx_tier_inp_2m_num | double | | | mrx_tier_inp_3m_num | double | | | mrx_tier_inp_coins_1m | double | | | mrx_tier_inp_coins_2m | double | | | mrx_tier_inp_coins_3m | double | | | mrx_tier_inp_coins_avg_1m | double | | | mrx_tier_inp_coins_othnum | double | | | mrx_tier_inp_copay_1m | double | | | mrx_tier_inp_copay_2m | double | | | mrx_tier_inp_copay_3m | double | | | mrx_tier_inp_copay_daily | double | | | mrx_tier_inp_copay_othnum | double | | | mrx_tier_inp_othnum | double | | | mrx_tier_inpp_1m_num | double | | | mrx_tier_inpp_2m_num | double | | | mrx_tier_inpp_3m_num | double | | | mrx_tier_inpp_coins_1m | double | | | mrx_tier_inpp_coins_2m | double | | | mrx_tier_inpp_coins_3m | double | | | mrx_tier_inpp_coins_avg_1m | double | | | mrx_tier_inpp_coins_othnum | double | | | mrx_tier_inpp_copay_1m | double | | | mrx_tier_inpp_copay_2m | double | | | mrx_tier_inpp_copay_3m | double | | | mrx_tier_inpp_copay_daily | double | | | mrx_tier_inpp_copay_othnum | double | | | mrx_tier_inpp_othnum | double | | | mrx_tier_ira_ltcp_coins_1m | double | | | mrx_tier_ira_ltcp_copay_1m | double | | | mrx_tier_ira_mopfd_coins_1m | double | | | mrx_tier_ira_mopfd_coins_2m | double | | | mrx_tier_ira_mopfd_coins_3m | double | | | mrx_tier_ira_mopfd_copay_1m | double | | | mrx_tier_ira_mopfd_copay_2m | double | | | mrx_tier_ira_mopfd_copay_3m | double | | | mrx_tier_ira_mostd_coins_1m | double | | | mrx_tier_ira_mostd_coins_2m | double | | | mrx_tier_ira_mostd_coins_3m | double | | | mrx_tier_ira_mostd_copay_1m | double | | | mrx_tier_ira_mostd_copay_2m | double | | | mrx_tier_ira_mostd_copay_3m | double | | | mrx_tier_ira_oonp_coins_1m | double | | | mrx_tier_ira_oonp_coins_othnum | double | | | mrx_tier_ira_oonp_copay_1m | double | | | mrx_tier_ira_oonp_copay_othnum | double | | | mrx_tier_ira_rspfd_coins_1m | double | | | mrx_tier_ira_rspfd_coins_2m | double | | | mrx_tier_ira_rspfd_coins_3m | double | | | mrx_tier_ira_rspfd_copay_1m | double | | | mrx_tier_ira_rspfd_copay_2m | double | | | mrx_tier_ira_rspfd_copay_3m | double | | | mrx_tier_ira_rstd_coins_1m | double | | | mrx_tier_ira_rstd_coins_2m | double | | | mrx_tier_ira_rstd_coins_3m | double | | | mrx_tier_ira_rstd_copay_1m | double | | | mrx_tier_ira_rstd_copay_2m | double | | | mrx_tier_ira_rstd_copay_3m | double | | | mrx_tier_label_list | string | Human-readable tier name: Preferred Generic, Generic, Preferred Brand, Specialty Tier, Non-Preferred Drug, Non-Preferred Brand, Select Care Drugs, Vaccines, etc. GOTCHA: NULL for all 2010 rows (21,330) and some early years store a bare numeric code ('26','16','8') instead of a name. | | mrx_tier_lbl | string | | | mrx_tier_lbl_2 | string | | | mrx_tier_lbl_4 | string | | | mrx_tier_lbl_5 | string | | | mrx_tier_lbl_6 | string | | | mrx_tier_locat | string | | | mrx_tier_locat_coins | string | | | mrx_tier_locat_copay | string | | | mrx_tier_locat_in | string | | | mrx_tier_locat_inp | string | | | mrx_tier_locat_ltc | string | | | mrx_tier_locat_mo | string | | | mrx_tier_locat_mop | string | | | mrx_tier_locat_mosplt | string | | | mrx_tier_locat_mostd | string | | | mrx_tier_locat_oon | string | | | mrx_tier_locat_rsplt | string | | | mrx_tier_locat_rstd | string | | | mrx_tier_ltcp_1m | double | | | mrx_tier_ltcp_b_1m | double | | | mrx_tier_ltcp_b_os | double | | | mrx_tier_ltcp_coins_1m | double | | | mrx_tier_ltcp_coins_b_1m | double | | | mrx_tier_ltcp_coins_g_1m | double | | | mrx_tier_ltcp_copay_1m | double | | | mrx_tier_ltcp_copay_b_1m | double | | | mrx_tier_ltcp_copay_b_daily | double | | | mrx_tier_ltcp_copay_daily | double | | | mrx_tier_ltcp_copay_g_1m | double | | | mrx_tier_ltcp_copay_g_daily | double | | | mrx_tier_ltcp_g_1m | double | | | mrx_tier_ltcp_g_os | double | | | mrx_tier_mo_1m_num | double | | | mrx_tier_mo_2m_num | double | | | mrx_tier_mo_3m_num | double | | | mrx_tier_mo_coins_1m | double | | | mrx_tier_mo_coins_2m | double | | | mrx_tier_mo_coins_3m | double | | | mrx_tier_mo_coins_othnum | double | | | mrx_tier_mo_copay_1m | double | | | mrx_tier_mo_copay_2m | double | | | mrx_tier_mo_copay_3m | double | | | mrx_tier_mo_copay_daily | double | | | mrx_tier_mo_copay_othnum | double | | | mrx_tier_mo_othnum | double | | | mrx_tier_monpp_1m_num | double | | | mrx_tier_monpp_2m_num | double | | | mrx_tier_monpp_3m_num | double | | | mrx_tier_monpp_coins_1m | double | | | mrx_tier_monpp_coins_2m | double | | | mrx_tier_monpp_coins_3m | double | | | mrx_tier_monpp_coins_othnum | double | | | mrx_tier_monpp_copay_1m | double | | | mrx_tier_monpp_copay_2m | double | | | mrx_tier_monpp_copay_3m | double | | | mrx_tier_monpp_copay_daily | double | | | mrx_tier_monpp_copay_othnum | double | | | mrx_tier_monpp_othnum | double | | | mrx_tier_mopp_1m_num | double | | | mrx_tier_mopp_2m_num | double | | | mrx_tier_mopp_3m_num | double | | | mrx_tier_mopp_coins_1m | double | | | mrx_tier_mopp_coins_2m | double | | | mrx_tier_mopp_coins_3m | double | | | mrx_tier_mopp_coins_othnum | double | | | mrx_tier_mopp_copay_1m | double | | | mrx_tier_mopp_copay_2m | double | | | mrx_tier_mopp_copay_3m | double | | | mrx_tier_mopp_copay_daily | double | | | mrx_tier_mopp_copay_othnum | double | | | mrx_tier_mopp_othnum | double | | | mrx_tier_mospfd_coins_1m | double | | | mrx_tier_mospfd_coins_2m | double | | | mrx_tier_mospfd_coins_3m | double | | | mrx_tier_mospfd_copay_1m | double | | | mrx_tier_mospfd_copay_2m | double | | | mrx_tier_mospfd_copay_3m | double | | | mrx_tier_mospfd_copay_daily | double | | | mrx_tier_mosplt_1m_num | double | | | mrx_tier_mosplt_2m_num | double | | | mrx_tier_mosplt_3m_num | double | | | mrx_tier_mosstd_coins_1m | double | | | mrx_tier_mosstd_coins_2m | double | | | mrx_tier_mosstd_coins_3m | double | | | mrx_tier_mosstd_copay_1m | double | | | mrx_tier_mosstd_copay_2m | double | | | mrx_tier_mosstd_copay_3m | double | | | mrx_tier_mosstd_copay_daily | double | | | mrx_tier_mostd_1m_num | double | | | mrx_tier_mostd_2m_num | double | | | mrx_tier_mostd_3m_num | double | | | mrx_tier_mostd_coins_1m | double | | | mrx_tier_mostd_coins_2m | double | | | mrx_tier_mostd_coins_3m | double | | | mrx_tier_mostd_copay_1m | double | | | mrx_tier_mostd_copay_2m | double | | | mrx_tier_mostd_copay_3m | double | | | mrx_tier_mostd_copay_daily | double | | | mrx_tier_nds_includes | string | | | mrx_tier_nds_includes_mmp | string | | | mrx_tier_oonp_1m_num | double | | | mrx_tier_oonp_3m_num | double | | | mrx_tier_oonp_coins_1m | double | | | mrx_tier_oonp_coins_3m | double | | | mrx_tier_oonp_coins_othnum | double | | | mrx_tier_oonp_copay_1m | double | | | mrx_tier_oonp_copay_3m | double | | | mrx_tier_oonp_copay_othnum | double | | | mrx_tier_oonp_othnumn | double | | | mrx_tier_ref_price_yn | string | | | mrx_tier_rspfd_coins_1m | double | | | mrx_tier_rspfd_coins_2m | double | | | mrx_tier_rspfd_coins_3m | double | | | mrx_tier_rspfd_coins_avg_1m | double | | | mrx_tier_rspfd_copay_1m | double | | | mrx_tier_rspfd_copay_2m | double | | | mrx_tier_rspfd_copay_3m | double | | | mrx_tier_rspfd_copay_daily | double | | | mrx_tier_rsplt_1m_num | double | | | mrx_tier_rsplt_2m_num | double | | | mrx_tier_rsplt_3m_num | double | | | mrx_tier_rsstd_coins_1m | double | | | mrx_tier_rsstd_coins_2m | double | | | mrx_tier_rsstd_coins_3m | double | | | mrx_tier_rsstd_coins_avg_1m | double | | | mrx_tier_rsstd_copay_1m | double | | | mrx_tier_rsstd_copay_2m | double | | | mrx_tier_rsstd_copay_3m | double | | | mrx_tier_rsstd_copay_daily | double | | | mrx_tier_rstd_1m_num | double | | | mrx_tier_rstd_2m_num | double | | | mrx_tier_rstd_3m_num | double | | | mrx_tier_rstd_coins_1m | double | | | mrx_tier_rstd_coins_2m | double | | | mrx_tier_rstd_coins_3m | double | | | mrx_tier_rstd_coins_avg_1m | double | | | mrx_tier_rstd_copay_1m | double | | | mrx_tier_rstd_copay_2m | double | | | mrx_tier_rstd_copay_3m | double | | | mrx_tier_rstd_copay_daily | double | | | mrx_tier_spec_yn | string | Specialty-tier flag: mostly NULL (739k, not asked/not applicable), '2'=11k, '1'=41k. Y/N-style coded field for whether the tier is a specialty tier. | | mrx_tier_type_id | string | Coverage-phase variant of the tier: '1' = INITIAL-coverage cost-sharing (675,832 rows, the default), '3' = COVERAGE-GAP (donut-hole) cost-sharing (116,195 rows). The same tier appears as up to two rows, one per phase. VERIFIED: all type-3 rows have mrx_tier_gap_cost_share populated, zero type-1 rows do. This is the column that makes mrx_tier_id non-unique. | | orgtype | string | | | part_d_enhncd_cvrg_demo | string | | | part_d_model_demo | string | | | pbp_a_ben_cov | string | | | pbp_a_plan_type | string | | | observed_period | date | Provenance: the period the data was observed for = Jan 1 of report_year (date). Equals effective_period_start; redundant with report_year. | | asserted_at | date | Provenance: silver-load assertion date. Only two values: 2026-05-16 (the parse_revision=1 snapshots) and 2026-05-20 (parse_revision=2). It is the ETL load date, NOT when CMS published - do not use as data recency. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | CMS vintage ordinal (int 1-4). Roughly tracks release order within a year but NOT 1:1 with quarter (2021 Q1 = vintage 4; 2022 Q1 = vintage 2). Do not equate to quarter. | | parse_revision | int | Parser revision (int): 1 or 2. Tracks the extractor version, pairs with asserted_at (rev1->2026-05-16, rev2->2026-05-20). | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | source_row_ordinal | double | | | mrx_tier_bal_ltcp_copay_1m | double | | | mrx_tier_bal_ltcp_copay_day | double | | | mrx_tier_bal_mopfd_copay_1m | double | | | mrx_tier_bal_mopfd_copay_2m | double | | | mrx_tier_bal_mopfd_copay_3m | double | | | mrx_tier_bal_mopfd_copay_day | double | | | mrx_tier_bal_mostd_copay_1m | double | | | mrx_tier_bal_mostd_copay_2m | double | | | mrx_tier_bal_mostd_copay_3m | double | | | mrx_tier_bal_mostd_copay_day | double | | | mrx_tier_bal_oonp_copay_1m | double | | | mrx_tier_bal_rspfd_copay_1m | double | | | mrx_tier_bal_rspfd_copay_2m | double | | | mrx_tier_bal_rspfd_copay_3m | double | | | mrx_tier_bal_rspfd_copay_day | double | | | mrx_tier_bal_rstd_copay_1m | double | | | mrx_tier_bal_rstd_copay_2m | double | | | mrx_tier_bal_rstd_copay_3m | double | | | mrx_tier_bal_rstd_copay_day | double | | | mrx_tier_rstd_copay_1m / _2m / _3m | | RETAIL-STANDARD pharmacy COPAY (flat dollar) for 1-/2-/3-month (30/60/90-day) supply. The headline retail out-of-pocket. Mutually exclusive with the coins counterpart on the same row (copay XOR coinsurance). Example: 2024Q4 H0028/014 Tier3 Preferred Brand = $47 (30-day). | | mrx_tier_rstd_coins_1m / _2m / _3m | | RETAIL-STANDARD pharmacy COINSURANCE (percent) for 1-/2-/3-month supply. Used instead of copay for percentage-cost tiers (e.g. Specialty 33%). 0-50 range. | | mrx_tier_rspfd_copay_* / mrx_tier_rspfd_coins_* | | RETAIL-PREFERRED pharmacy copay/coinsurance by days supply (lower cost-share preferred-network variant of rstd). | | mrx_tier_mostd_copay_* / mrx_tier_mostd_coins_* | | MAIL-ORDER-STANDARD copay/coinsurance by days supply (1m/2m/3m). Mail channel equivalent of rstd. | | mrx_tier_mospfd_* / mrx_tier_mosstd_* / mrx_tier_mosplt_* | | Mail-order PREFERRED / mail-order-standard-split / mail-order-split cost-share families - additional mail pharmacy channel/structure variants by days supply. | | mrx_tier_ltcp_* (and _b_/_g_ variants) | | LONG-TERM-CARE pharmacy cost-share family (copay/coinsurance, brand '_b_' vs generic '_g_', daily and 1-month). LTC channel pricing. | | mrx_tier_oonp_* | | OUT-OF-NETWORK pharmacy cost-share family (copay/coinsurance, 1m/3m/othnum). What the member pays at a non-network pharmacy. | | mrx_tier_inp_* / mrx_tier_innpp_* / mrx_tier_inpp_* | | IN-NETWORK / in-network-preferred / in-network-pharmacy cost-share families (copay/coinsurance/avg by days supply). Network-channel pricing variants. | | mrx_tier_mo_* / mrx_tier_monpp_* / mrx_tier_mopp_* | | MAIL-ORDER (mo), mail-order-non-preferred (monpp), mail-order-preferred (mopp) cost-share families by days supply. | | mrx_tier_copay_amt_*_mmpmin / _mmpmax | | MMP (Medicare-Medicaid Plan / dual) min and max copay bounds per channel (inp, ltc, mo, mstd, oon, rstd). Channel-specific copay floor/ceiling for dual-eligible cost-sharing. | | mrx_tier_ira_* | | Inflation-Reduction-Act-era cost-share fields (mopfd/mostd/rspfd/rstd/ltcp/oonp copay & coins by days supply). Populate in recent years reflecting IRA Part D redesign; mostly NULL in older vintages. | | mrx_tier_*_1m_num / _2m_num / _3m_num / _othnum | | Days-supply quantity/count fields paired with the cost-share columns of each channel family (the 'number' of the supply band the copay/coins applies to). | | mrx_tier_locat / mrx_tier_locat_* | | Location/pharmacy-placement codes per channel (in, inp, ltc, mo, mop, mostd, oon, rstd, coins, copay). Coded fields describing where/how the tier cost-share applies. | | mrx_tier_includes / _includes_mmp / mrx_tier_nds_includes / _nds_includes_mmp | | Codes for what the tier includes (and the MMP/non-defined-supplemental 'includes' variants). Coded references. | | mrx_tier_extd_days_yn / mrx_tier_extd_first_fill | | Extended-days-supply flag and extended first-fill code (Y/N-style coded). | | mrx_tier_excep_yn / mrx_tier_inject_yn / mrx_tier_ref_price_yn / mrx_tier_alt_gap_covg_excl_yn | | Y/N-style flags: exception applies, injectable, reference-pricing used, alternative gap-coverage excluded. | | mrx_tier_gap_all_drug_yn / _gap_drug_type_lmtd / _gap_excluded_only_yn / _gap_part_drugs / _gap_part_includes | | Coverage-gap scoping flags/codes (all drugs in gap, drug-type-limited, excluded-only, Part-D drugs, gap includes). Relevant to type_id='3' gap rows. | | mrx_tier_lbl / _lbl_2 / _lbl_4 / _lbl_5 / _lbl_6 | | Additional tier label slots (mostly NULL); supplementary naming used in some plan layouts. | | mrx_tier_type_id (note) and orgtype | | orgtype = CMS organization-type code (e.g. '05','01') describing the plan org (MA-PD, PDP, cost plan, etc.). | | pbp_a_plan_type / pbp_a_ben_cov | | Plan-level PBP attributes: pbp_a_plan_type = CMS plan-type code (e.g. '48','01'); pbp_a_ben_cov = benefit-coverage flag. Functionally dependent on the plan (not needed for grain). | | part_d_model_demo / part_d_enhncd_cvrg_demo | | Part D demonstration flags: model demo participation and enhanced-coverage demo ('Y'). Mostly NULL. | | effective_period_start / effective_period_end | | Benefit-year start/end dates (Jan 1 -> Dec 31 of report_year). GOTCHA: effective_period_start is Jan-1 of the year for ALL quarterly releases of that year, which is why profiler periodicity reads 'annual' (17 distinct year-starts) despite quarterly publication. | | parser_artifact_hash / source_url / sha256_content_hash | | Provenance: parser build hash, the CMS source ZIP URL (e.g. https://www.cms.gov/files/zip/pbp-benefits-2023-quarter-4.zip - confirms the quarterly-release origin), and content hash of the source file. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_mrx_tier WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_mrx_tier")` first. # MA pbp plan area `medicare_silver.pbp_plan_area` · Medicare Advantage, Part D, Medicaid · status partial Plan × county service area. ~2.3M rows per modern year. PlanArea + PlanRegionArea consolidated via area_type enum. **Grain.** One row per Medicare Advantage / Part C plan-segment offered IN one county, per contract year, per quarterly PUF snapshot, per EGHP flag. The MINIMAL verified-unique key is (contract_id, plan_id, segment_id, county_code, observed_period, quarter, eghp_flag) = 57,326,072 distinct = exactly the row_count (57,326,072). Plainer: it is the county-level service-area / availability roster of every MA plan-benefit-package — which plans are offered in which counties each year — snapshotted up to 4 times a year (one quarterly PUF release each). It is NOT a benefit-detail or cost-amount table; it carries the plan's identity/area attributes, not premiums or cost-sharing dollars. **How to use it.** Scope MA plans to a market and a single clean annual snapshot. Example: SELECT DISTINCT contract_id, plan_id, county, stcd, pbp_a_plan_type, orgtype FROM pbp_plan_area WHERE stcd='TX' AND county_code='45610' AND report_year=2026 AND quarter=(SELECT MAX(quarter) FROM pbp_plan_area WHERE report_year=2026) AND eghp_flag='0'. Answers: 'which non-employer MA plans (and of what plan type) are offered in Harris County, TX for 2026?' Filtering to one quarter (latest cms_vintage_sequence) collapses the 1–4 quarterly republications to one record per plan-county-year; excluding eghp_flag='1' removes employer-group plans." **Traps.** - NO is_current column and the same plan-county-year appears up to 4 times (once per quarterly PUF snapshot, quarter 1:1 with cms_vintage_sequence). 2010-2017 have only quarter=1; 2018+ carry Q2/Q3/Q4 reloads. Always filter to a single quarter (e.g. MAX(quarter) / latest cms_vintage_sequence) or you will 2x-4x count plans. Distribution: 18.1M plan-county-year keys appear once, 6.3M appear 3x, 3.9M appear 4x. - (contract_id, plan_id, segment_id, county_code, observed_period, quarter) is NOT unique — eghp_flag is required for the true grain. Exactly 539 keys appear twice differing ONLY in eghp_flag ('0' vs '1') with otherwise byte-identical content and the SAME sha256_content_hash; a source-PUF artifact, not a real versioning event. sha256/version/cms_vintage_sequence do NOT separate these dupes — only eghp_flag does. - segment_id is a STRING with '' (empty, 41.9M rows) AND '0' (15.4M rows) both meaning 'segment 0 / unsegmented' — empty string is NOT missing data, it is the dominant valid value. The separate pbp_segment_id (double) column is 100% NULL and must be ignored. Also bid_id always ends in '_0' for the segment slot regardless of segment_id, so bid_id <> contract||plan||segment_id for all 41.9M empty-segment rows (a false mismatch). - Heavy redundancy / dead columns: report_year == contract_year == year(observed_period) == year(effective_period_start) (all verified equal); version is always 0.0; parse_revision is always 1; pbp_segment_id is always NULL. asserted_at (2026-05-16 / 2026-05-20) is the lakehouse load batch, NOT a CMS publish date — do not use it as a time axis. Use report_year (or observed_period) for the plan year. - county_code is the 5-digit CMS SSA code, NOT FIPS (Harris TX = 45610, LA = 05200) — you must apply an SSA-to-FIPS crosswalk before joining to FIPS-keyed geographic data. Also: this table carries plan identity + availability only (org type, plan type, flags) — it has NO premium, no cost-sharing, no benefit-amount columns, so it cannot answer 'how much does the plan cost'; use the PBP benefit-detail / premium tables for dollars. Code systems pbp_a_plan_type/orgtype are the PBP-file code sets (e.g. plan_type 04=Local HMO, 01=Local PPO, 09=PFFS, 30=MSA/Cost, 07=Regional PPO) and differ from the plan_type codes in enrollment/landscape files. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage / Part C contract number. H-prefix = standard MA contracts (1,644 distinct, 56.9M rows); E-prefix = employer/union direct (EGHP) contracts (11 distinct, 433K rows). No S/R/PDP-only contracts — this is the MA/Part-C PBP universe. 100% populated. Joins to plan-level PBP, enrollment, and Stars tables on contract_id. | | plan_id | string | 3-digit plan-benefit-package (PBP) number within the contract (e.g. '801', '803'). 656 distinct values. Unique only WITHIN a contract; (contract_id, plan_id) is the plan key. 100% populated. | | segment_id | string | Plan segment number (for service-area-segmented plans). STRING with a data-quality quirk: 41.9M rows = '' (empty string), 15.4M = '0', and 1–24 for genuinely segmented plans (regional PPOs / large employer plans, < 60K rows total). Empty-string and '0' BOTH mean 'segment 0 / unsegmented' — do not treat '' as missing. Part of the grain key. 100% populated (as empty string at minimum). | | county_code | string | 5-digit CMS SSA county code (NOT FIPS). Always exactly 5 chars, 100% populated. 3,274 distinct counties. Example: Harris TX = 45610, Los Angeles CA = 05200, Miami-Dade FL = 10120. This is THE row dimension — one row per county the plan is offered/available in. Use a SSA↔FIPS crosswalk to join to FIPS-keyed data. | | report_year | double | double. The CMS PUF contract/benefit year (2010–2026). Identical to contract_year (cast) and to year(observed_period) — verified 0 mismatches. The plan-year dimension. | | quarter | double | double 1–4. The WITHIN-YEAR quarterly PUF snapshot, 1:1 with cms_vintage_sequence (Q1↔seq1 ... Q4↔seq4). Years 2010–2017 have only Q1; 2018+ years carry multiple quarterly re-publications of the same annual PBP roster. THIS is the snapshot/dedup dimension — there is no is_current flag, so to get one record per plan-county-year you must pick one quarter (e.g. MAX(quarter) or the latest cms_vintage_sequence). | | bid_id | string | Composite plan-bid identifier, format contract_id_plan_id_0 (e.g. 'H0332_803_0'). ALWAYS uses '_0' for the segment portion regardless of the segment_id column value — so bid_id does NOT equal contract//plan//segment_id when segment_id is '' (41.9M such 'mismatches', which are not real mismatches). Effectively redundant with (contract_id, plan_id). 100% populated. | | contract_year | string | string. The contract year as text (e.g. '2015'). Redundant with report_year (verified equal after cast) and with observed_period year. 100% populated. | | county | string | Human-readable county name (e.g. 'Harris', 'Los Angeles', 'Rio Grande'). 100% populated. Decode/label for county_code; pair with stcd for uniqueness (county names repeat across states). | | eghp_flag | string | Employer Group Health Plan flag, string '0' (5.58M) or '1' (51.74M). 100% populated. IMPORTANT: this is part of the unique grain — 539 plan-county-year-quarter keys appear twice, differing ONLY in eghp_flag (a source PUF quirk where one plan-county is listed under both EGHP='0' and '1' with otherwise identical content + identical sha256). Note value distribution skews to '1' here, which is unusual for a flag and reflects how CMS populates section-A EGHP indicator in the benefits PUF. | | orgtype | string | CMS organization type code, string, 100% populated. 01 = Local Coordinated Care Plan (55.6M, dominant), 04 = PFFS (770K), 13 = MSA/Cost (423K), 02 = Regional PPO (412K), 06, 08, 05, 14 = other. 1:1 correlated with pbp_a_plan_type. | | partial_flag | string | Partial service-area indicator. 99.94% NULL; only 33,161 rows = '*' (the only non-null value). Marks the small set of plan-county rows flagged as partial-county service areas. Treat NULL as 'not partial / not flagged'. | | pbp_a_ben_cov | string | PBP Section-A benefit-coverage type code, string: '1' (50.7M, ~88%), '2' (5.79M, ~10%), NULL (805K, ~1.4%). Indicates the coverage-bundle category (Part C health-only family vs health+drug family). NULL is concentrated in specific plan types (30 MSA/Cost, 07 Regional PPO, 18) — a structural null, not random missingness. | | pbp_a_plan_type | string | PBP Section-A plan type code, string, 100% populated. 04 = Local HMO (39.5M, dominant), 01 = Local PPO (12.1M), 02 (3.95M), 09 = PFFS (770K), 30 = MSA/Cost (423K), 07 = Regional PPO (412K), plus a long tail (18, 20, 48, 40, 38, 37, 49, 05, 39). 1:1 correlated with orgtype. This is the plan-type used in PBP files (distinct code system from the plan_type in enrollment/landscape files). | | pbp_segment_id | double | double. DEAD COLUMN — 100% NULL (0 non-null across all 57.3M rows). Do not use; the real segment dimension is the string segment_id column. | | pending_flag | string | Pending-plan indicator, string '0' (57,325,821) or '1' (only 251 rows). 100% populated. '1' marks the tiny set of pending/not-yet-approved plan-area rows. | | stcd | string | 2-letter USPS state code (e.g. 'TX','CA','CO','AL'). 56 distinct values (50 states + DC + territories). 100% populated. Pair with county/county_code for geographic joins. | | version | double | double. DEAD/CONSTANT — always 0.0 across all rows. No information; not a real version dimension. | | observed_period | date | date, always Jan-1 of the report year (2010-01-01 ... 2026-01-01), 17 distinct values. Year(observed_period) == report_year == contract_year (verified). The canonical annual time anchor. | | asserted_at | date | date the row was loaded into the silver lakehouse: only two values, 2026-05-16 and 2026-05-20 (a two-batch backfill ingest). NOT a CMS publish date and NOT per-year. Several years (2018-2020, 2022-2024) have rows from both batches — the Q2/Q3/Q4 snapshots were loaded on 2026-05-20. Provenance/lineage only; do not use as a business time axis. | | effective_period_start | date | date = Jan-1 of the contract year (== observed_period). The plan-year coverage start. Used as the profiler's time column; 17 annual values 2010–2026, annual periodicity. | | effective_period_end | date | date = Dec-31 of the contract year (e.g. 2015-12-31). The plan-year coverage end. Always the calendar-year close paired with effective_period_start. | | cms_vintage_sequence | int | int 1–4. The CMS publication sequence within a year, 1:1 with quarter (1=Q1...4=Q4). Use the MAX value per plan-county-year to select the latest within-year republication (de-facto 'is_current' surrogate, since no is_current column exists). | | parse_revision | int | int, constant = 1 across the sample/observed data. The parser revision that produced the row; no current variation. Lineage field. | | parser_artifact_hash | string | sha256 of the parser artifact/code version that produced the row (e.g. '7853ed8e...'). Lineage/reproducibility; not a business key. | | source_url | string | The CMS source ZIP the row was extracted from, e.g. https://www.cms.gov/.../pbp-pufs/pbp-benefits-{year}.zip. One URL per report year (the PBP Benefits PUF). Confirms provenance = CMS PBP Benefits Public Use Files. | | sha256_content_hash | string | sha256 of the source file content (one value per source ZIP / year-batch; identical across all rows from the same file). De-dup/integrity at the file level — note it does NOT distinguish the 539 eghp duplicate rows (they share the same hash). | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_plan_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_plan_area")` first. # MA pbp plan region area `medicare_silver.pbp_plan_region_area` · Medicare Advantage, Part D, Medicaid · status partial Regional-plan service area (parallel to plan_area for regional PPO). Coverage: 2006-present. **Grain.** One row per plan offering in one CMS region for one benefit year and one quarterly CMS snapshot — i.e. one row per (contract_id x plan_id x segment_id x ma_or_pdp_region_code x contract_year x quarter). VERIFIED unique: this 6-column set yields 335,374 distinct combinations = the full 335,374 row count. A nationally-offered PDP shows up as one row per region (up to 39 PDP regions), so plans explode 4-16x into rows; and multi-quarter years repeat the same plan-region up to 4 times (once per quarterly snapshot). **How to use it.** To list the regions a given standalone PDP serves in the latest 2026 view: SELECT region_type, ma_or_pdp_region_code, region FROM medicare_silver.pbp_plan_region_area WHERE contract_id='S5601' AND plan_id='001' AND contract_year='2026' AND quarter=1 ORDER BY ma_or_pdp_region_code. This answers 'where is this Part D plan offered' (its geographic footprint) for that benefit year. For a year-over-year footprint trend, always pin quarter (e.g. quarter=1) to avoid double-counting multi-quarter snapshots. **Traps.** - NO is_current flag and quarter is a true snapshot dimension: several years (2018, 2019, 2023, 2024) carry up to 4 quarterly re-publications of the SAME plans (each a distinct CMS file with its own sha256), so a naive COUNT/aggregate without filtering quarter over-counts plan-regions up to 4x. To get one current view per year, filter quarter = max(quarter) for that contract_year. - ma_or_pdp_region_code is meaningless without region_type: codes 01-39 are PDP regions when region_type='PD' but 01-26 are MA regions when region_type='MA', and the SAME numeric code maps to different geographies (e.g. '11' = Florida under PD, Michigan under MA). Always pair the code with region_type (and the region name). - This is NOT a benefit or cost table despite being PBP-sourced: it has zero premium/copay/dollar columns. ONE row = a plan-region offering (geographic footprint). For actual cost/benefit values you must join to the other pbp_* / PBP benefit tables on contract_id+plan_id+segment_id+year. - bid_id looks like a key but is broken: it is NULL for all of 2006 (7,536 rows) and matches contract_plan_segment in only ~37% of rows. segment_id is also format-unstable — '' vs '0' for the same logical value, flipping by quarter within a year (2019 Q1='' , Q2-Q4='0'). Reconstruct identity from contract_id/plan_id/segment_id, normalizing segment_id, rather than trusting bid_id. - Several columns are dead/constant and carry no signal: version (always 0.0), partial_flag (100% null), pbp_segment_id (100% null - not the real segment), pending_flag (always '0'). pbp_a_ben_cov is null for the entire PD slice (MA-only). asserted_at is a warehouse load date (only 2026-05-16 / 2026-05-20), not a real-world date - don't use it for plan timing. - The table is ~99% standalone Part D (region_type='PD', contract prefix 'S'); MA regional plans ('R', region_type='MA') are only 3,869 rows and the 'X'-prefixed orgtype=16 slice is a single CMS demo/test contract (1,598 rows). Also note eghp_flag: ~64% of PD rows are Employer Group Health Plans (eghp_flag='1') - filter on it to separate individual-market from employer/union-sponsored Part D. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract identifier (5 chars). Prefix encodes plan family: 'S####' = standalone Part D drug plan (PDP, the bulk = 329,907 rows / 153 contracts), 'R####' = MA regional plan (3,869 rows / 37 contracts), 'X####' = a single CMS demo/test contract (1,598 rows). Part of the grain key. Not null. | | plan_id | string | 3-digit plan number within the contract (e.g. '001','801','802'). 473 distinct values. Part of the grain. NOT unique on its own. The contract_id+plan_id+segment_id triple = the plan benefit package (PBP). | | segment_id | string | Plan segment number, part of the grain. TRAP: representation is inconsistent across snapshots — it is the empty string '' in 203,075 rows and the literal '0' in 132,299 rows, and the choice flips even within a single year by quarter (2019 Q1 = '', Q2-Q4 = '0'). Both '' and '0' mean 'base plan / no segmentation'. Only 2 distinct values overall; no real multi-segment plans observed in this table. | | ma_or_pdp_region_code | string | 2-digit CMS region code (zero-padded '01'..'39'). SCOPED BY region_type: for region_type='PD' it is one of the 39 standalone-PDP regions (01-39); for region_type='MA' it is one of the 26 MA regions (observed 01-25). The SAME code means different geographies across the two systems — code '11' = 'Florida' under PD but 'Michigan' under MA. Part of the grain. Pair with region (the name) and region_type. | | region_type | string | Which CMS regional system the code belongs to. Only two values: 'PD' = standalone Part D / PDP region (331,505 rows, the overwhelming majority) and 'MA' = Medicare Advantage region (3,869 rows). NOTE: value is 'PD' not 'PDP'. The first few sample rows the profiler returned were the rare MA slice and are not representative — this is essentially a PDP table. | | version | double | DEAD COLUMN. Always 0.0 across all 335,374 rows. Carries no information. (double) | | report_year | double | The CMS PBP report year as a number (e.g. 2013.0). VERIFIED identical to contract_id's contract_year in 100% of rows — it is just the numeric (double) twin of contract_year. Spans 2006-2026. | | quarter | double | CMS quarterly release number (1.0-4.0) — part of the grain and the SNAPSHOT dimension. Most early years have only Q1; several recent years (2018, 2019, 2023, 2024) carry up to 4 quarterly re-publications of the SAME plan set. Each quarter is a genuinely distinct CMS file (sha256 differs per quarter), so the same plan-region appears as up to 4 separate rows in a year. No is_current flag exists; to get one row per plan-region per year you must filter to the max quarter. | | bid_id | string | Bid identifier string, usually 'contract_plan_segment' (e.g. 'R3175_001_0'). UNRELIABLE as a key: it equals contract//'_'//plan//'_'//segment in only 124,763 of 335,374 rows, and it is NULL for all 7,536 rows of 2006. Do not use as a join key; reconstruct from contract_id/plan_id/segment_id instead. | | contract_year | string | Plan/benefit year as a string ('2006'..'2026'). Part of the grain. This is the real-world year the plan offering applies to. observed_period, effective_period_start (Jan 1) and effective_period_end (Dec 31) are all derived from it. | | eghp_flag | string | Employer Group Health Plan flag ('0'/'1'). MEANINGFUL: in the PD slice, 211,197 of 331,505 rows are '1' (employer/union-sponsored Part D, the so-called 800-series), vs 120,308 '0' (individual market). In the MA slice almost all are '0'. Use this to separate employer-group from individual-market plans in cost analysis. Never null. | | orgtype | string | CMS organization type code. Three values, each tied to a slice: '10' (329,907) = the standalone PDP bulk, '11' (3,869) = MA regional plans, '16' (1,598) = the single 'X' demo/test contract. Correlates 1:1 with region_type/contract prefix. Never null. | | partial_flag | string | DEAD COLUMN. 100% NULL across all rows. No information. | | pbp_a_ben_cov | string | PBP Section A benefit-coverage indicator. NULL for the entire PD slice (331,505 rows); only populated ('1') for the 3,869 MA rows. Effectively MA-only and mostly absent — treat as null-means-not-applicable. | | pbp_a_plan_type | string | PBP plan-type code. '29' = PDP (the 329,907-row bulk), '31' = MA regional, NULL for the orgtype-16/'X' demo slice (1,598). Redundant with orgtype/region_type. | | pbp_segment_id | double | DEAD COLUMN. 100% NULL across all rows (a double). Despite appearing in the profiler's reported grain key, it adds nothing — the real segment is the string segment_id column. | | pending_flag | string | DEAD COLUMN. Always '0' across all rows. No information (no pending plans in this extract). | | region | string | Human-readable region name corresponding to ma_or_pdp_region_code, scoped by region_type (e.g. PD '11'='Florida', PD '01'='Northern New England (New Hampshire and Maine)'; MA '11'='Michigan'). Distinct names per system: 39 for PD, 23-26 for MA. Note region names can drift slightly across years (e.g. 'Pennsylvania and West Virginia' vs 'Pennsylvania, West Virginia'). | | observed_period | date | Derived date = Jan 1 of contract_year (the start of the plan year the snapshot describes). Redundant with contract_year. (date) | | asserted_at | date | Warehouse LOAD date, NOT a real-world plan date. Only two values exist: 2026-05-16 (initial backfill of 19 years, 173,047 rows) and 2026-05-20 (later load of 7 years, 162,327 rows). Provenance/bookkeeping only — do not use for plan-year analysis. | | effective_period_start | date | Jan 1 of contract_year — the plan year start. The profiler's primary time column. Derived from contract_year (redundant). (date) | | effective_period_end | date | Dec 31 of contract_year — the plan year end. Derived from contract_year. (date) | | cms_vintage_sequence | int | Provenance counter (1-4) tracking which CMS source vintage / quarterly snapshot pass produced the row; moves with parse_revision. Operational lineage, not a business attribute. (int) | | parse_revision | int | Internal parser revision (1 or 2) that produced the row. Provenance only. (int) | | parser_artifact_hash | string | SHA-256 of the parser artifact/code that emitted the row. Provenance/reproducibility only. | | source_url | string | The CMS download URL of the source PBP-PUF zip (e.g. '.../pbp-benefits-2019-q2.zip'). Encodes year and quarter of the source file. Provenance. | | sha256_content_hash | string | SHA-256 of the source file's content. VERIFIED to differ per quarter (each quarterly CMS release is a distinct file), confirming quarter is a real snapshot dimension. Provenance/integrity. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_plan_region_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_plan_region_area")` first. # MA pbp sas schema `medicare_silver.pbp_sas_schema` · Medicare Advantage, Part D, Medicaid · status partial SAS-parsed column manifest. One row per (table, year, column). Built from SAS files in the archive via sas_schema_parser primitive. **Grain.** One row per (report_year, quarter, source PBP table, column) — i.e. one column-definition per table per release vintage. Verified: (report_year, quarter, table_name, column_name) yields exactly 80,409 distinct combinations = 80,409 rows (no duplication). column_position is interchangeable with column_name as the 4th key (1:1 within group, 0 violations). **How to use it.** To parse a PBP benefit PUF, fetch its column layout for a given year: SELECT column_position, column_name, column_type, column_length FROM medicare_silver.pbp_sas_schema WHERE table_name='pbp_b16_dental' AND report_year=2023 ORDER BY quarter, column_position. This returns the exact ordered field list (e.g. pbp_a_hnumber CHAR(5) at pos 1, pbp_b16a_bendesc_amo_oe CHAR(1) ...) so you can correctly read/interpret the dental cost-sharing columns in the actual pbp_b16_dental benefit table. Answers: 'what columns, in what order, of what type/width does this PBP table have for this benefit year?' **Traps.** - This is a DATA DICTIONARY, not data. It contains zero benefit/cost values — only column layouts. To get actual MA/Part-D plan cost-sharing you must query the described pbp_* benefit tables; use this table to know which column is which (name, position, CHAR/NUM type, length). - Minimal grain needs all four of (report_year, quarter, table_name, column_name); none alone is a key. column_name is NOT globally unique (header fields like pbp_a_hnumber/bid_id/segment_id/version repeat across 33-46 tables), and table_name+column_name without (year,quarter) collapses ~80k rows to ~41k. quarter is load-bearing. - table_name aliasing: the same logical PBP section appears under two naming schemes across years — older short names with a populated input_filename (pbp_b13, pbp_b16, planarea.txt) and newer descriptive names with NULL input_filename (pbp_b13_other_services, pbp_b16_dental, planarea). A naive GROUP BY table_name double-counts the same section. - NOT a snapshot/is_current table — there is no is_current column and no dedup is needed. The two ingestion batches (asserted_at 2026-05-15 / parse_revision 1, and 2026-05-20 / parse_revision 2) are disjoint on the grain key (0 overlap); the older batch holds 2001-2026 annual/Q1 baselines, the newer holds 2018-2024 quarterly reissues. Use all rows. - input_filename is NULL for 66,562 of 80,409 rows (~83%) — do not treat it as an identity or join key. Use table_name (with the aliasing caveat) instead. - cms_vintage_sequence is a per-year release ORDINAL, not the quarter and not a snapshot version — Q1 rows scatter across vintage 1/2/4. observed_period, effective_period_start, and effective_period_end are all 1:1 redundant derivations of report_year (calendar-year benefit period). - History is lopsided: 2001-2017 carry only ~8 coarse tables/year (the single annual file, quarter=1); coverage explodes from 2018 (33-39 tables/year) with quarterly reissues. 2025-2026 are partial (11 tables). Don't expect a given pbp_* table's layout to exist in early years. | column | type | meaning | |---|---|---| | table_name | string | Name of the source PBP PUF table this column belongs to (e.g. pbp_b16_dental, pbp_section_a, pbp_mrx_tier, planarea). 46+ logical tables. GOTCHA: same logical table appears under TWO naming conventions across history — older short names (pbp_b13, planarea.txt) vs newer descriptive names (pbp_b13_other_services, planarea); treat as the same table. | | report_year | int | CMS PBP contract/benefit year (2001-2026). The primary time dimension; one annual PUF release per year (with quarterly reissues from 2018+). | | quarter | int | Quarter (1-4) of the release vintage within report_year. Part of the grain: 25,322 year/table/column groups span >1 quarter. Pre-2018 years are quarter=1 only (single annual file); 2018+ have Q1-Q4 quarterly reissues of the layout. | | column_name | string | The column/field name in the source PBP table (e.g. pbp_b16a_bendesc_amo_oe, pbp_a_hnumber, bid_id). GOTCHA: NOT globally unique — plan-key header fields (pbp_a_hnumber, pbp_a_plan_type, segment_id, bid_id, version) repeat across 33-46 tables since every section carries the same header block. | | column_type | string | SAS storage type. Only two values: CHAR (text, 44,093 rows) or NUM (numeric, 36,316 rows). Most CHAR fields are length-1 coded Y/N or category flags. | | column_length | int | Declared field byte/character width in the SAS layout (1-51+). For CHAR=character width, for NUM=numeric width. Always non-null. Length-1 CHAR dominates (coded benefit flags). | | column_position | int | 1-based ordinal position of the column within the table layout. 1:1 with column_name inside a (year,quarter,table) group — interchangeable with column_name as the grain key. | | input_filename | string | Original raw SAS/txt filename inside the CMS zip (e.g. '.\\pbp\\pbp_Section_A.txt'). GOTCHA: NULL for 66,562 of 80,409 rows — the entire 2026-05-20 reload batch plus part of the older batch left it blank. Not a reliable join/identity key; populated mostly on the older short-named table rows. | | observed_period | date | Date the schema is observed-for; always Jan 1 of report_year. Redundant — 1:1 derived from report_year. | | asserted_at | date | Date Vlada ingested/asserted this row. Only two values: 2026-05-15 (13,341 rows, the first/baseline load) and 2026-05-20 (67,068 rows, the quarterly-reissue load). Pairs exactly with parse_revision; marks the ingestion batch, not the CMS publication date. | | effective_period_start | date | Start of the benefit year the layout applies to; Jan 1 of report_year. The profiler's temporal column. Redundant with report_year. | | effective_period_end | date | End of the benefit year; Dec 31 of report_year. Redundant with report_year (calendar-year benefit period). | | cms_vintage_sequence | int | Per-year CMS release ordinal: 1=first/annual load, 2=Q2 reissue, 3=Q3, 4=Q4. GOTCHA: correlates with but is NOT equal to quarter — Q1 rows appear under vintage 1, 2, AND 4 across different years. It counts the Nth release CMS issued within a report_year. | | parse_revision | int | Parser/ingestion revision: 1 (13,341 rows, years 2001-2026, the annual/Q1 baseline) or 2 (67,068 rows, years 2018-2024 only, the quarterly reissues). Pairs 1:1 with asserted_at. The two revisions are DISJOINT on grain (0 overlapping keys) — together they form the full unique set; this is NOT a versioned/snapshot table. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced this layout. 40 distinct values = one per (year x quarter) source release. Provenance only. | | source_url | string | CMS download URL of the PBP PUF zip this layout came from (e.g. .../pbp-benefits-2009.zip). Always non-null. 40 distinct = one zip per release. Lineage/provenance. | | sha256_content_hash | string | SHA-256 content hash of the downloaded source zip. Always non-null. 40 distinct = one per release; identifies the exact source file version for provenance/dedup. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_sas_schema WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_sas_schema")` first. # MA pbp section a `medicare_silver.pbp_section_a` · Medicare Advantage, Part D, Medicaid · status partial Plan universe. One row per (contract, plan, segment, version) per (year, quarter). Era-1 (pre-2010) rows synthesize segment_id='', version=0. **Grain.** One row per Medicare plan-segment per PUF release snapshot — i.e. one row per (contract_id, plan_id, segment_id, report_year, quarter). VERIFIED unique: COUNT(DISTINCT of those 5 cols) = 244,035 = row_count exactly, and max rows-per-key = 1 with zero keys having >1 row. report_year+quarter is the snapshot (release) dimension, NOT a benefit period: a plan year appears once for 2001-2017 (annual, Q1 only) and up to four times for 2018+ (CMS started quarterly PBP re-releases). ~101k plan-years have 1 snapshot; ~45k have 2-4. **How to use it.** Get the current roster of distinct Medicare plans for 2026 (one row per plan, latest snapshot): SELECT contract_id, plan_id, segment_id, pbp_a_plan_name, pbp_a_plan_type, pbp_a_org_marketing_name, pbp_a_special_need_flag, pbp_a_est_memb FROM medicare_silver.pbp_section_a WHERE report_year = 2026 AND quarter = (SELECT MAX(quarter) FROM medicare_silver.pbp_section_a WHERE report_year = 2026). This answers 'which MA/PD plans exist this year, who operates them, what type are they, and roughly how big' — and gives the contract/plan/segment key to join into the cost-sharing and drug PBP sections for actual benefit/cost analysis. **Traps.** - GRAIN IS THE SNAPSHOT, NOT THE PLAN-YEAR. quarter = the CMS PUF RELEASE quarter, not a coverage quarter. For 2018+ a single plan-year appears up to 4 times (one row per quarterly re-release; ~45k plan-years have 2-4 snapshots). If you want one row per plan per year you MUST dedup to MAX(quarter) (optionally MAX(version)/MAX(cms_vintage_sequence)) within (contract_id, plan_id, segment_id, report_year) — otherwise you over-count plans ~1.4x in recent years. - bid_id LOOKS like the key but is NOT: it is NULL for all 9,994 pre-2007 rows and equals contract_id_plan_id_segment_id for only 229k of 244k rows; bid_id+year+quarter is NOT unique (234,041 < 244,035). Always key on the 5 columns contract_id, plan_id, segment_id, report_year, quarter (verified exactly unique = 244,035). - CODE COLUMNS ARE NOT ZERO-PADDED CONSISTENTLY across the history. plan_type has both '01' (98k) and '1' (3.4k) for HMO; orgtype has '01'/'1', '04'/'4', '08'/'8', etc. The early-year files use unpadded codes. Filtering e.g. plan_type='01' silently drops the '1' rows — normalize with LPAD or match both forms. - FLAG POLARITY IS INVERTED from intuition: pbp_a_special_need_flag = '1' means IS a SNP (31,002 rows) and '2' means NOT a SNP (207,959). Many Y/N flags here are coded '1'/'2', not 1/0 or Y/N. - NULLS CARRY MEANING (N/A, not zero/false). pbp_a_est_memb is null for ~70% of rows (= enrollment not reported, NOT zero members); all snp_* fields and special_need_plan_type are null for non-SNP plans; vbid_indicator/pbpver are null in years before the feature existed. Do not coalesce these to 0/false. - SECTION A IS A DIMENSION/HEADER, NOT A COST TABLE. It carries plan identity, type, contacts and flags but essentially no dollar cost-sharing — for premiums, copays, deductibles, and drug costs you must join to the other PBP sections (and the cost-sharing/MOOP tables) on the same contract_id/plan_id/segment_id key plus report_year/quarter. - Provenance is multi-vintage: asserted_at has 2 values and cms_vintage_sequence ranges 1-4 (the 2018-2024 quarterly snapshots were loaded 2026-05-20 on top of the 2026-05-16 historical load). sha256_content_hash is a per-FILE hash (40 distinct, one per release zip), not a per-row hash, so it cannot be used to detect row-level duplicates. | column | type | meaning | |---|---|---| | contract_id | string | CMS contract number (e.g. H0028, E0654, R0110, S-prefix=PDP). 2,146 distinct. First part of the grain. Letter prefix encodes product line (H/R=MA, S=PDP, E=employer/EGHP, etc.). | | plan_id | string | Plan ID within the contract (e.g. '001','801'). 755 distinct, zero-padded string. Employer plans typically use 800-series. Second part of the grain; NOT unique on its own. | | segment_id | string | Plan segment (geographic/benefit sub-division of a plan), usually '0'. 27 distinct. Third part of the grain. Most plans have only segment 0. | | version | double | CMS PBP submission/version iteration for that plan-year (0-27; higher = later re-submission). version 0 = the 9,994 pre-2007 legacy rows. FUNCTIONALLY DETERMINED by the 5-col grain (adding it does not subdivide rows) — it is metadata, not a key column. Stored as double. | | report_year | double | Plan/benefit year the bid applies to (2001-2026). Part of the grain. The single most useful filter for picking a year of plans. Stored as double. | | quarter | double | PUF RELEASE quarter (1-4), i.e. which quarterly re-publication of the PBP this row came from — NOT a quarter of coverage. 1 for 2001-2017; 1-4 for 2018+. Part of the grain. To get the latest view of a plan-year, take MAX(quarter) within (contract,plan,segment,report_year). | | bid_id | string | Convenience concatenation contract_id_plan_id_segment_id. UNRELIABLE: NULL for all 9,994 pre-2007 rows and equals the concat for only 229,443 of 244,035 rows. Do NOT use as a key — use the 5 grain columns instead. 27,601 distinct. | | orgtype | string | Numeric organization-type code (01=Local CCP/HMO-PPO dominant at 170k, 10=PDP, 08, 04, 11=Regional PPO, 13=employer, etc.). CAUTION: not zero-padded consistently — both '01' and '1', '04'/'4' appear; ~2,058 nulls. Duplicates pbp_a_org_type. | | pbp_a_ben_cov | string | | | pbp_a_bpt_esrd_date_time | string | | | pbp_a_bpt_ma_date_time | string | | | pbp_a_bpt_msa_date_time | string | | | pbp_a_bpt_pd_date_time | string | | | pbp_a_ceo_name | string | | | pbp_a_ceo_title | string | | | pbp_a_cfo_name | string | | | pbp_a_continue_costshare_yn | string | | | pbp_a_continue_yesno | string | | | pbp_a_continue_yn | string | | | pbp_a_contract_number | string | | | pbp_a_contract_partd_flag | string | Whether the plan includes Part D drug coverage ('1' observed = has Part D). Distinguishes MA-PD from MA-only. | | pbp_a_contract_period | string | | | pbp_a_curmbr_loc_phone | string | | | pbp_a_curmbr_loc_phone_ext | string | | | pbp_a_curmbr_phone | string | | | pbp_a_curmbr_phone_ext | string | | | pbp_a_dsnp_zerodollar | string | | | pbp_a_eghp_yn | string | Employer Group Health Plan flag. '1' = employer/union group plan (52,908 rows), '2' = individual-market. Identifies the employer (800-series) plans. | | pbp_a_est_memb | double | Estimated enrollment for the plan (double). Non-null for only 74,329 rows (~30%); range 0 to 10,658,990, avg ~31,748. NULL = not reported (not zero). Only useful enrollment-like measure in Section A. | | pbp_a_ffs_bid_b_auth_cats | string | | | pbp_a_ffs_bid_b_auth_yn | string | | | pbp_a_ffs_bid_b_ref_cats | string | | | pbp_a_ffs_bid_b_ref_yn | string | | | pbp_a_ffs_bid_b_yn | string | | | pbp_a_ffs_bid_c_auth_cats | string | | | pbp_a_ffs_bid_c_auth_yn | string | | | pbp_a_ffs_bid_c_ref_cats | string | | | pbp_a_ffs_bid_c_ref_yn | string | | | pbp_a_ffs_bid_c_yn | string | | | pbp_a_ffs_bid_d_yn | string | | | pbp_a_formulary_web_addr | string | | | pbp_a_hospice_care_yn | string | | | pbp_a_last_data_entry_date | string | | | pbp_a_network_flag | string | | | pbp_a_npffs_flag | string | | | pbp_a_opd_web_addr | string | | | pbp_a_org_marketing_name | string | | | pbp_a_org_name | string | | | pbp_a_org_type | string | | | pbp_a_org_website | string | | | pbp_a_partd_model_flag | string | | | pbp_a_pbp_address1 | string | | | pbp_a_pbp_address2 | string | | | pbp_a_pbp_address3 | string | | | pbp_a_pbp_address4 | string | | | pbp_a_pbp_address5 | string | | | pbp_a_pbp_contact_fax | string | | | pbp_a_pbp_contact_name | string | | | pbp_a_pbp_contact_phone | string | | | pbp_a_pbp_contact_phone_ext | string | | | pbp_a_pbp_contact_position | string | | | pbp_a_pbp_email | string | | | pbp_a_pd_curmbr_loc_phone | string | | | pbp_a_pd_curmbr_loc_phone_ext | string | | | pbp_a_pd_curmbr_phone | string | | | pbp_a_pd_curmbr_phone_ext | string | | | pbp_a_pd_prombr_loc_phone | string | | | pbp_a_pd_prombr_loc_phone_ext | string | | | pbp_a_pd_prombr_phone | string | | | pbp_a_pd_prombr_phone_ext | string | | | pbp_a_pd_ttytdd_cur_loc_phn_ex | string | | | pbp_a_pd_ttytdd_cur_loc_phone | string | | | pbp_a_pd_ttytdd_curmbr_phn_ext | string | | | pbp_a_pd_ttytdd_curmbr_phone | string | | | pbp_a_pd_ttytdd_pro_loc_phn_ex | string | | | pbp_a_pd_ttytdd_pro_loc_phone | string | | | pbp_a_pd_ttytdd_prombr_phn_ext | string | | | pbp_a_pd_ttytdd_prombr_phone | string | | | pbp_a_pdss_model_flag | string | | | pbp_a_pharmacy_website | string | | | pbp_a_phys_web_addr | string | | | pbp_a_plan_geog_name | string | Free-text geographic description of the service area, e.g. 'National', 'Honolulu, Kauai and Maui counties', 'Cleveland, Dayton, Toledo and surrounding counties'. Descriptive only, not a coded geography. | | pbp_a_plan_name | string | Full marketed plan name incl. type suffix, e.g. 'Humana Gold Plus H0028-004 (HMO)', 'Kaiser Permanente Medicare Part D Group Plan (PDP)'. Human-readable plan label. | | pbp_a_plan_phone | string | | | pbp_a_plan_type | string | Plan-type code: 01=HMO, 02=HMO-POS, 04=Local PPO, 05=, 06/07=MSA, 09=PFFS, 18=Cost, 20=PACE, 26, 29=PDP, 30=Employer PDP, 31=Regional PPO, 37, 48=Medicare-Medicaid Plan. Verified against plan-name suffixes. CAUTION: NOT zero-padded uniformly — '01' (98k) and '1' (3.4k) both mean HMO; filtering '01' silently drops '1'. | | pbp_a_platino_flag | string | | | pbp_a_platino_yn | string | | | pbp_a_pos_amo | string | | | pbp_a_pos_choices | string | | | pbp_a_pos_yesno | string | | | pbp_a_prombr_loc_phone | string | | | pbp_a_prombr_loc_phone_ext | string | | | pbp_a_prombr_phone | string | | | pbp_a_prombr_phone_ext | string | | | pbp_a_ready_for_upload_date_tm | string | | | pbp_a_segment_id | double | | | pbp_a_segment_name | string | | | pbp_a_service_area | string | | | pbp_a_snp_cond | string | | | pbp_a_snp_cond_oth1 | string | | | pbp_a_snp_cond_oth2 | string | | | pbp_a_snp_cond_oth3 | string | | | pbp_a_snp_full_dual | string | | | pbp_a_snp_institutional_type | string | | | pbp_a_snp_part_dual | string | | | pbp_a_snp_pct | string | | | pbp_a_snp_pop | string | | | pbp_a_snp_state_cvg_yn | string | | | pbp_a_special_need_flag | string | Whether the plan is a Special Needs Plan. '1' = IS a SNP (31,002 rows), '2' = NOT a SNP (207,959). Counter-intuitive: 1=yes, 2=no. Pairs with pbp_a_special_need_plan_type. | | pbp_a_special_need_plan_type | string | SNP subtype, non-null only for SNPs (31,002): '3'=Dual-eligible D-SNP (19,407, most common), '4'=Institutional I-SNP (7,244), '1'=Chronic C-SNP (4,351). NULL = not a SNP. (Code '2' not observed.) | | pbp_a_squish_id | string | | | pbp_a_tier_bendesc_bens | string | | | pbp_a_tier_mc_bendesc_cats | string | | | pbp_a_tier_nmc_bendesc_cats | string | | | pbp_a_tier_yn | string | | | pbp_a_ttytdd_cur_loc_phone | string | | | pbp_a_ttytdd_cur_loc_phone_ext | string | | | pbp_a_ttytdd_curmbr_phone | string | | | pbp_a_ttytdd_curmbr_phone_ext | string | | | pbp_a_ttytdd_phone | string | | | pbp_a_ttytdd_pro_loc_phone | string | | | pbp_a_ttytdd_pro_loc_phone_ext | string | | | pbp_a_ttytdd_prombr_phone | string | | | pbp_a_ttytdd_prombr_phone_ext | string | | | pbp_a_upload_date_time | string | | | pbp_a_vbid_indicator | string | Value-Based Insurance Design participation flag. Non-null for only 30,420 rows (recent years only); NULL elsewhere = feature did not exist / not applicable. | | pbp_a_vp_name | string | | | pbp_a_vtprogram_yn | string | | | pbpver | string | CMS PBP software version string (e.g. '2018.03'). NULL before 2018 (d_pbpver=0 in early years). Free text, not a clean version key. | | observed_period | date | Vlada provenance: Jan-1 of report_year (date). Normalized point-in-time the row represents. | | asserted_at | date | Vlada ingest date (date): when this row was parsed/loaded. Only 2 values: 2026-05-16 (bulk historical load, all years, vintage 1) and 2026-05-20 (the 2018-2024 quarterly re-release snapshots, vintages 2-4). Co-varies with cms_vintage_sequence; absorbed by the grain (no key collisions). | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Which CMS re-release vintage within a plan-year (1-4). 1 = primary/historical; 2/3/4 = additional 2018-2024 quarterly publications loaded 2026-05-20. Co-varies with quarter; already implied by the (report_year, quarter) grain — not an extra key dimension. | | parse_revision | int | Vlada parser revision (int, 2 distinct values). Internal lineage of the parsing code, not analytical. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row. Code-provenance. | | source_url | string | Exact CMS PBP PUF zip the row was extracted from, e.g. '.../pbp-pufs/pbp-benefits-2018-q1.zip'. 40 distinct = one per year-quarter release. Maps each row to its raw CMS file. | | sha256_content_hash | string | SHA-256 of the source file's content. 40 distinct (one per source zip), so all rows from the same release share one hash — it is a FILE hash, not a row hash. | | pbp_a_balance_flag | string | | | pbp_a_dsnp_buydown | string | | | pbp_a_dsnp_buydown_nominal_att | string | | | pbp_a_org_type / pbp_a_org_name / pbp_a_org_marketing_name | | Organization-type code (mirror of orgtype), legal organization name (e.g. 'BUCKEYE COMMUNITY HEALTH PLAN, INC.'), and consumer marketing name (e.g. 'Buckeye Health Plan - MyCare Ohio'). org_marketing_name is the brand a member sees. | | pbp_a_snp_* (snp_cond, snp_full_dual, snp_part_dual, snp_pct, snp_pop, snp_institutional_type, snp_state_cvg_yn, snp_cond_oth1-3) | | SNP-only detail fields (eligible chronic conditions, dual-eligibility scope, institutional type, % thresholds). Sparsely populated — e.g. snp_pop non-null for only 3,204 rows. NULL for the ~213k non-SNP plans (null carries meaning = N/A). | | pbp_a_ffs_bid_b_yn / _c_yn / _d_yn and *_auth_yn / *_ref_yn / *_auth_cats / *_ref_cats | | Bid-related flags about whether the plan's Part B/C/D benefits require prior authorization or referral, and which category lists. Mostly NULL (only populated for actual MA bids, not PDP/legacy). Y/N coded '1'/'2'. | | pbp_a_tier_yn / pbp_a_tier_bendesc_bens / pbp_a_tier_mc_bendesc_cats / pbp_a_tier_nmc_bendesc_cats | | Whether the plan uses benefit tiers and which benefit categories are tiered (Medicare-covered vs non-Medicare-covered). Pointer fields into the cost-sharing sections; sparsely populated. | | contact block: pbp_a_ceo_name, cfo_name, vp_name, ceo_title, pbp_contact_name/phone/fax/email/position, plan_phone, and the large family of *_curmbr_phone / *_prombr_phone / *_ttytdd_* / *_loc_phone(_ext) (current-member, prospective-member, and TTY/TDD phones, plus PD- (Part D) variants) | | Administrative contact info: executive names and dozens of member-service / TTY phone-number columns split by audience (current vs prospective member) and by medical vs Part-D line, with _loc_ (local) and _ext (extension) variants. Operational metadata, heavily NULL, frequently placeholder like '(711)-' for TTY. Not analytical. | | web block: pbp_a_org_website, org_marketing... , formulary_web_addr, pharmacy_website, phys_web_addr, opd_web_addr | | Plan/org, formulary, pharmacy, physician-directory, and OPD website URLs. Reference links; many NULL. | | address block: pbp_a_pbp_address1-5 | | Plan mailing address lines. Almost entirely NULL in observed data. | | pbp_a_segment_id / pbp_a_segment_name | | Segment number (double, mirrors segment_id) and optional segment label. segment_name almost always NULL. | | pbp_a_plan_type vs misc flags (pbp_a_network_flag, npffs_flag, partd_model_flag, pdss_model_flag, platino_flag/yn, dsnp_zerodollar, vtprogram_yn, hospice_care_yn, continue_yn/yesno/costshare_yn, pos_yesno/choices/amo, contract_period, contract_number) | | Assorted Y/N program/model flags: network-based?, non-network PFFS?, Part D model demo?, Puerto-Rico Platino?, D-SNP $0 cost share?, value-based transformation?, hospice carve-in?, continuation-area?, point-of-service option?. contract_number/contract_period duplicate contract_id/report_year. Most are '1'/'2' coded and sparsely populated by plan type. | | pbp_a_last_data_entry_date / pbp_a_ready_for_upload_date_tm / pbp_a_upload_date_time / pbp_a_bpt_*_date_time | | CMS-side submission timestamps as raw strings (e.g. '05/23/2017 12:46:50 PM Eastern Daylight Time'). When the org last edited / uploaded the bid and BPT (bid pricing tool) timestamps for MA/PD/ESRD/MSA. String, not parsed dates. | | effective_period_start / effective_period_end | | Vlada provenance: the benefit year the plan is in effect — Jan 1 to Dec 31 of report_year. This is the profiler's chosen 'time_column' (annual, 2001-2026). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_a WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_a")` first. # MA pbp section b10 amb trans `medicare_silver.pbp_section_b10_amb_trans` · Medicare Advantage, Part D, Medicaid · status partial Section B10: Ambulance / transport cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan-segment per benefit-year per quarterly PBP release, keyed by contract_id, plan_id, segment_id, report_year, quarter. Verified exactly unique at 201488 distinct combinations equal to the 201488 rows, zero collisions. Each row is one plan full B-10 ambulance plus transportation benefit design as published in that quarter CMS PBP PUF for that contract year. **How to use it.** For the latest filed ambulance and transportation cost-sharing for 2026 plans, filter report_year to 2026 and pick the max quarter per plan, then read pbp_b10a_copay_gas_amt_min for ground ambulance copay, pbp_b10a_coins_aas_pct_min for air ambulance coinsurance percent, pbp_b10b_bendesc_yn for whether a supplemental transportation benefit is offered, and pbp_b10b_bendesc_amt_pal for trips per year. **Traps.** - Grain is 5 columns not the profiler 14. The profiler superset padded the real key with constant attribute pbp_a_plan_type, benefit data columns pbp_b10b_maxplan and pbp_b_10b_maxplan_yesno, redundant bid_id, and year-derived effective_period_start and observed_period. Group only by the 5 real keys. - No is_current or snapshot flag, and multiple quarterly snapshots exist per plan-year: 38598 plan-years span 2 to 4 quarters while 75577 are single-quarter. report_year alone is not unique per plan since contract plan segment report_year gives 114175 not 201488. Dedup to max quarter for one current row per plan-year. - bid_id is a derived redundant key equal to contract plan segment and is NULL for 8316 rows in years 2001 to 2006. Do not use it as grain or full-history join key, use the three id columns. For non-null rows bid_id report_year quarter is unique but silently drops the early years. - All yes-no fields use CMS codes 1 Yes and 2 No, not booleans, and NULL means not-applicable or not-collected. Proven copay_yn 1 always has a copay amount and copay_yn 2 never does. Treat NULL as unknown not zero. - pbp_b10a is ambulance emergency Medicare-covered with gas ground aas air mc generic, pbp_b10b is supplemental non-emergency transportation. Two different benefits in one table, do not conflate them, and this is member cost-sharing not provider reimbursement. - asserted_at is the Vlada load date and observed_period and effective_period_start are just Jan 1 of report_year, none are a snapshot selector. cms_vintage_sequence usually equals quarter but not always, so use quarter. Sibling table pbp_b10_b19b_amb_trans_vbid_uf holds the VBID variant of this benefit, keep distinct. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract number such as H0028. Always populated, 1972 distinct. Grain column and join to the MA contract and plan spine. | | plan_id | string | Plan ID within the contract such as 001, three-char zero-padded. Always populated, 656 distinct, unique only within a contract. Grain column. | | segment_id | string | Plan segment or service-area subdivision such as 0, 27 distinct. Always populated, 0 for non-segmented. Grain column, so a multi-segment plan has one row per segment. | | version | double | CMS PBP bid-software version number 0 to 11 plus. Not a key, not a snapshot selector. version 0 lines up with the early null bid_id rows of 2001 to 2006. | | report_year | double | Contract or benefit year the PBP describes, 2001 to 2026. The plan year benefits are effective for, equal to year of effective_period_start. Grain column. | | quarter | double | Which quarterly CMS PBP PUF release 1 to 4 within report_year. Intra-year snapshot dimension and grain column. 2001 to 2017 have only Q1, multi-quarter starts 2018 with gaps such as 2020 Q1 Q2 Q4 and 2024 Q1 Q3 Q4. | | bid_id | string | Convenience key equal to contract underscore plan underscore segment, 193172 of 193172 match. Derived and redundant. NULL for 8316 rows in 2001 to 2006. Do not use as grain or full-history join key. | | orgtype | string | MA organization type code. 01 dominates with 177737 rows, others 08 04 11 06 05 02 14 03. Constant within a plan. | | pbp_a_ben_cov | string | Plan benefit-coverage indicator from PBP section A. 1 standard Part C medical coverage 196773 rows, 2 has 4373, NULL 342. | | pbp_a_plan_type | string | PBP section A plan type code. 01 HMO 101510, 04 local PPO 55909, 02 HMO-POS 20097, 20 PFFS 8806, 09 regional PPO 5663. Constant per plan. The profiler wrongly put it in the unique key. | | pbp_b10a_auth | string | | | pbp_b10a_auth_yn | string | | | pbp_b10a_coins_aas_pct_max | double | | | pbp_b10a_coins_aas_pct_min | double | | | pbp_b10a_coins_cov_mc | string | | | pbp_b10a_coins_ehc | string | | | pbp_b10a_coins_gas_pct_max | double | | | pbp_b10a_coins_gas_pct_min | double | | | pbp_b10a_coins_pct_mc | double | | | pbp_b10a_coins_pct_mc_max | double | | | pbp_b10a_coins_wav_yn | string | | | pbp_b10a_coins_yesno | string | | | pbp_b10a_coins_yn | string | | | pbp_b10a_copay_aas_amt_max | double | | | pbp_b10a_copay_aas_amt_min | double | | | pbp_b10a_copay_ehc | string | | | pbp_b10a_copay_gas_amt_max | double | | | pbp_b10a_copay_gas_amt_min | double | | | pbp_b10a_copay_mc_amt | double | | | pbp_b10a_copay_mc_amt_max | double | | | pbp_b10a_copay_wav_yn | string | | | pbp_b10a_copay_yesno | string | | | pbp_b10a_copay_yn | string | | | pbp_b10a_ded_aas_amt | double | | | pbp_b10a_ded_amt | double | | | pbp_b10a_ded_ehc | string | | | pbp_b10a_ded_gas_amt | double | | | pbp_b10a_ded_yesno | string | | | pbp_b10a_ded_yn | string | | | pbp_b10a_maxenr_aas_amt | double | | | pbp_b10a_maxenr_aas_per | string | | | pbp_b10a_maxenr_aas_per_d | string | | | pbp_b10a_maxenr_amt | double | | | pbp_b10a_maxenr_ehc | string | | | pbp_b10a_maxenr_gas_amt | double | | | pbp_b10a_maxenr_gas_per | string | | | pbp_b10a_maxenr_gas_per_d | string | | | pbp_b10a_maxenr_per | string | | | pbp_b10a_maxenr_yesno | string | | | pbp_b10a_maxenr_yn | string | | | pbp_b10a_refer_yn | string | | | pbp_b10b_auth | string | | | pbp_b10b_auth_yn | string | | | pbp_b10b_bendec_trn | string | | | pbp_b10b_bendec_yesno | string | | | pbp_b10b_bendes_per_al | string | | | pbp_b10b_bendes_per_pal | string | | | pbp_b10b_bendesc_amo_al | string | | | pbp_b10b_bendesc_amo_pal | string | | | pbp_b10b_bendesc_amt_al | double | | | pbp_b10b_bendesc_amt_al_days | double | | | pbp_b10b_bendesc_amt_pal | double | | | pbp_b10b_bendesc_amt_pal_days | double | | | pbp_b10b_bendesc_lim_al | string | | | pbp_b10b_bendesc_lim_pal | string | | | pbp_b10b_bendesc_mt_al | string | | | pbp_b10b_bendesc_mt_al_d | string | | | pbp_b10b_bendesc_mt_pal | string | | | pbp_b10b_bendesc_mt_pal_d | string | | | pbp_b10b_bendesc_per_al | string | | | pbp_b10b_bendesc_per_al_d | string | | | pbp_b10b_bendesc_per_pal | string | | | pbp_b10b_bendesc_per_pal_d | string | | | pbp_b10b_bendesc_trn | string | | | pbp_b10b_bendesc_tt_al | string | | | pbp_b10b_bendesc_tt_al_d | string | | | pbp_b10b_bendesc_tt_pal | string | | | pbp_b10b_bendesc_tt_pal_d | string | | | pbp_b10b_bendesc_yn | string | | | pbp_b10b_coins_cov | string | | | pbp_b10b_coins_pct | double | | | pbp_b10b_coins_pct_max | double | | | pbp_b10b_coins_pct_min | double | | | pbp_b10b_coins_yesno | string | | | pbp_b10b_coins_yn | string | | | pbp_b10b_copay_amt | double | | | pbp_b10b_copay_amt_max | double | | | pbp_b10b_copay_amt_min | double | | | pbp_b10b_copay_yesno | string | | | pbp_b10b_copay_yn | string | | | pbp_b10b_ded_amt | double | | | pbp_b10b_ded_yesno | string | | | pbp_b10b_ded_yn | string | | | pbp_b10b_maxenr_amt | double | | | pbp_b10b_maxenr_per | string | | | pbp_b10b_maxenr_per_d | string | | | pbp_b10b_maxenr_yesno | string | | | pbp_b10b_maxenr_yn | string | | | pbp_b10b_maxplan_amt | double | | | pbp_b10b_maxplan_cov | string | | | pbp_b10b_maxplan_per | string | | | pbp_b10b_maxplan_per_d | string | | | pbp_b10b_maxplan_yn | string | | | pbp_b10b_maxpln_per | string | | | pbp_b10b_refer_yn | string | | | pbp_b_10b_maxplan_yesno | string | | | observed_period | date | Date equal to Jan 1 of report_year, derived and annual, same as effective_period_start. Does not distinguish quarters so use quarter for snapshots. | | asserted_at | date | Vlada ingest or load date 2026-05-16 to 2026-05-20. Pipeline bitemporal field, not a data or effective date. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer CMS release-ordering sequence for the source ZIP. Equals quarter for about 93 percent of rows but not always since 2021 Q1 is vintage 4 and 2022 Q1 is vintage 2. Prefer quarter. | | parse_revision | int | Vlada parser revision 1 or 2. Lineage. | | parser_artifact_hash | string | SHA-256 of the parser code or config artifact. Lineage. | | source_url | string | CMS source ZIP for the row, cms.gov pbp-pufs pbp-benefits-YYYY-qN.zip. 40 distinct URLs equal the 40 quarterly PUF releases, one to one with sha256_content_hash. | | sha256_content_hash | string | SHA-256 of the source file contents, 40 distinct, one per source_url. Content-addressed provenance. | | pbp_b10a ambulance block | | Section B-10a ambulance cost-sharing for emergency Medicare-covered ambulance. auth_yn prior-auth required. coins coinsurance and copay copayment with suffix gas ground, aas air, mc generic Medicare-covered. yn flags whether the cost-share exists, min and max give the filed dollar copay or percent coinsurance range, ehc multi-select of which services it applies to, ded deductible, maxenr service-specific MOOP, wav_yn waived if admitted, refer_yn referral required. Proven ground copay 0 to median about 251 to max 560 dollars, air coinsurance 0 to median 20 to max 50 percent. | | pbp_b10b transportation block | | Section B-10b transportation, a supplemental non-emergency routine Part C benefit. bendesc_yn whether plan provides Transportation as supplemental benefit, 1 Yes 58504, 2 No 132795, NULL 10189. bendesc_amt with al Any health-related Location or pal Plan-Approved Location is number of trips, median 24 per year range 1 to 1500. bendesc_amo benefit type 2 Mandatory 3 Optional 4 Both. bendesc_trn transport-type code. coins copay ded maxenr mirror the B10a structure. maxplan and pbp_b_10b_maxplan_yesno are Maximum Plan Benefit Coverage amount and period. Transportation copay where present 0 to 350 dollars median 0. | | effective_period_start and effective_period_end | | Benefit-year validity window Jan 1 to Dec 31 of report_year. Derived from report_year, identical across all quarters of a report_year. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b10_amb_trans WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b10_amb_trans")` first. # MA pbp section b11 dme prosth orth sup `medicare_silver.pbp_section_b11_dme_prosth_orth_sup` · Medicare Advantage, Part D, Medicaid · status partial Section B11: Durable medical equipment, prosthetics, orthotics, supplies. Per-plan benefit detail (plaintiff use case). **Grain.** One row per Medicare Advantage / Part C plan benefit package, per PBP report_year, per within-year CMS re-release quarter. The MINIMAL verified-unique key is (contract_id, plan_id, segment_id, report_year, quarter) = exactly 201,488 distinct = the full row count. report_year alone is NOT enough (only 114,175 distinct) because CMS republished the PBP PUF up to 4 times within some years (2018-2020, 2022-2024 have quarters 1-4); segment_id is load-bearing (dropping it gives 191,793, since 5,295 plan-years are split into multiple geographic segments). This is plan-level Part C cost-share DESIGN for the Durable Medical Equipment / Prosthetics / Orthotics / Medical Supplies benefit (PBP Section B-11), not a claims or rate table. **How to use it.** "What in-network coinsurance % do Medicare Advantage plans charge for DME in 2026?" -> SELECT pbp_b11a_coins_pct_mc, count(*) FROM medicare_silver.pbp_section_b11_dme_prosth_orth_sup WHERE report_year=2026 AND quarter=1 AND pbp_b11a_coins_yn='1' GROUP BY 1 ORDER BY 2 DESC. This returns the distribution of DME coinsurance rates across plans; the dominant value is 20.0% (the Medicare standard), with a long tail of 0% (zero-cost-share plans), 10/15/30%, etc. Always pin report_year AND quarter to a single snapshot. **Traps.** - NOT a rate/price table. This is plan benefit DESIGN - what the MA plan charges the ENROLLEE for DME (coinsurance %, copays, deductibles), sourced from CMS PBP PUFs. It contains no provider rates, no claims, no allowed amounts. To get the commercial-to-Medicare cost story you join plan design here to actual DME fee schedules elsewhere. - GRAIN TRAP: the profiler reports an 18-column superset key (adds maxplan/maxenr benefit-value columns). The TRUE minimal grain is just (contract_id, plan_id, segment_id, report_year, quarter) = 201,488 = row count. report_year alone is NOT unique (114,175) and (contract,plan,seg,effective_period_start) is NOT unique - you MUST include quarter because CMS republished the PBP PUF up to 4x within 2018-2020 & 2022-2024. - DEPRECATED COLUMN FAMILY: pbp_b11_* (no a/b/c letter) is populated ONLY in report_year 2001 (742 rows) and is 100% NULL for 2002+. Querying it for modern DME cost-share returns nothing. Use pbp_b11a_* (DME), pbp_b11b_* (prosthetics/orthotics), pbp_b11c_* (medical supplies), which are populated 2002-2026. - NO is_current column and NO snapshot-dedup needed: the natural key already yields one row each, so do NOT add a row_number()/latest filter. But quarter is a RE-RELEASE axis, not coverage-quarter - if you want the canonical annual benefit pin quarter=1 (and the latest cms_vintage_sequence if a year was republished), otherwise a single plan-year can be counted 2-4 times. - NULLS CARRY MEANING and yn convention is CMS-style: '1'=Yes, '2'=No (strings), NULL=not applicable / not separately captured for that vintage (e.g. pbp_b11a_auth_yn is NULL for 62K older rows even though the plan had an auth rule encoded in the 5-char pbp_b11a_auth string). Treat '2' as an explicit No, not as missing; treat NULL as unknown/legacy. - segment_id is part of the grain and must not be dropped: 5,295 plan-years are split into multiple geographic segments with different DME benefits. Most rows are segment '0' (single segment) but multi-segment plans ('1'..'N') and empty '' (2001-era) both occur. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA/Part-C contract id (e.g. H0104). 1,972 distinct. Part of grain. Pairs with plan_id. | | plan_id | string | 3-char plan id within the contract (e.g. '001','005'). 656 distinct. Part of grain. | | segment_id | string | Plan benefit segment, for plans whose benefits vary by geographic segment. Values '0' (single segment, 181K rows, the norm), '' empty (mostly 2001-era), '1'..'N' for multi-segment plans. LOAD-BEARING in grain: 5,295 plan-years carry >1 segment. Do not drop it. | | version | double | CMS PBP/bid version number (0-27, double). A snapshot revision indicator, fully determined by the grain (NOT an extra key axis). High versions are rare (version>=10 < 1% of rows). | | report_year | double | PBP contract/benefit year (2001-2026). The primary time axis. Equals year(effective_period_start). NOT unique per plan by itself - see quarter. | | quarter | double | Within-year CMS RE-RELEASE quarter (1-4), NOT a calendar quarter of coverage. Most years are quarter=1 only; 2018-2020 & 2022-2024 were republished mid-year so carry quarters 2/3/4. A plan-year can appear up to 4 times, once per released quarter. Part of grain - required for uniqueness. | | bid_id | string | CMS bid identifier. NULL for older years (2001-era samples show null); present in recent files. Not required for grain uniqueness (grain holds without it). | | orgtype | string | MA organization type code. '01' dominates (177K, local CCP/HMO-PPO); '08','04','11','06','05' are other org types (PFFS, MSA, cost, regional, etc.). String code, CMS PBP codebook. | | pbp_a_ben_cov | string | Plan benefit-coverage indicator from Section A. '1'=standard (196K), '2'=alternative (4K), NULL (342, the 2001/no-URL rows). Carries meaning when null (legacy rows). | | pbp_a_plan_type | string | Plan type code (string): '01' local HMO (101K), '04' local PPO (56K), '02' (20K), '20' MSA, '09','31','18','48' etc. CMS PBP plan-type codebook. Describes plan structure. | | pbp_b11_auth | string | | | pbp_b11_auth_pos | string | | | pbp_b11_coins_cov__pos | string | | | pbp_b11_coins_cov_mc | string | | | pbp_b11_coins_pct_disc | double | | | pbp_b11_coins_pct_mc | double | | | pbp_b11_coins_pct_mcmax | double | | | pbp_b11_coins_pct_pos | double | | | pbp_b11_coins_pct_prpdisc_pos | double | | | pbp_b11_coins_pctmax_pos | double | | | pbp_b11_coins_yesno | string | | | pbp_b11_coins_yesno_pos | string | | | pbp_b11_copay_amt_pos | double | | | pbp_b11_copay_amtmax_pos | double | | | pbp_b11_copay_mc_amt | double | | | pbp_b11_copay_mcmax_amt | double | | | pbp_b11_copay_yesno | string | | | pbp_b11_copay_yesno_pos | string | | | pbp_b11_ded_amt | double | | | pbp_b11_ded_amt_pos | double | | | pbp_b11_ded_yesno | string | | | pbp_b11_ded_yesno_pos | string | | | pbp_b11_maxenr_amt | double | | | pbp_b11_maxenr_amt_pos | double | | | pbp_b11_maxenr_per | string | | | pbp_b11_maxenr_yesno | string | | | pbp_b11_maxenr_yn_pos | string | | | pbp_b11_maxplan_yesno_pos | string | | | pbp_b11_maxpln_amt_pos | double | | | pbp_b11_maxpln_cov_pos | string | | | pbp_b11_maxpln_pct_prpdisc_pos | double | | | pbp_b11_maxpln_per_pos | string | | | pbp_b11a_auth | string | | | pbp_b11a_auth_yn | string | | | pbp_b11a_coins_cov_mc | string | | | pbp_b11a_coins_pct_disc | double | | | pbp_b11a_coins_pct_mc | double | | | pbp_b11a_coins_pct_mcmax | double | | | pbp_b11a_coins_yn | string | | | pbp_b11a_copay_mc_amt | double | | | pbp_b11a_copay_mcmax_amt | double | | | pbp_b11a_copay_yn | string | | | pbp_b11a_ded_amt | double | | | pbp_b11a_ded_yn | string | | | pbp_b11a_dme_pref_vend_man_yn | string | | | pbp_b11a_esrd_coins | double | | | pbp_b11a_esrd_maxamt | double | | | pbp_b11a_maxenr_amt | double | | | pbp_b11a_maxenr_per | string | | | pbp_b11a_maxenr_per_d | string | | | pbp_b11a_maxenr_yn | string | | | pbp_b11a_mm_add_service_other1 | string | | | pbp_b11a_mm_add_service_other2 | string | | | pbp_b11a_mm_auth | string | | | pbp_b11a_mm_auth_yn | string | | | pbp_b11a_mm_coins_dme_max | double | | | pbp_b11a_mm_coins_dme_min | double | | | pbp_b11a_mm_coins_other1_max | double | | | pbp_b11a_mm_coins_other1_min | double | | | pbp_b11a_mm_coins_other2_max | double | | | pbp_b11a_mm_coins_other2_min | double | | | pbp_b11a_mm_coins_services | string | | | pbp_b11a_mm_coins_yn | string | | | pbp_b11a_mm_copay_dme_max | double | | | pbp_b11a_mm_copay_dme_min | double | | | pbp_b11a_mm_copay_other1_max | double | | | pbp_b11a_mm_copay_other1_min | double | | | pbp_b11a_mm_copay_other2_max | double | | | pbp_b11a_mm_copay_other2_min | double | | | pbp_b11a_mm_copay_services | string | | | pbp_b11a_mm_copay_yn | string | | | pbp_b11a_mm_maxplan_amt | double | | | pbp_b11a_mm_maxplan_per | string | | | pbp_b11a_mm_maxplan_per_d | string | | | pbp_b11a_mm_maxplan_yn | string | | | pbp_b11a_mm_nmc_yn | string | | | pbp_b11a_mm_refer_yn | string | | | pbp_b11a_mm_services | string | | | pbp_b11a_pffs_coins | double | | | pbp_b11a_pffs_maxamt | double | | | pbp_b11b_auth | string | | | pbp_b11b_auth_pos | string | | | pbp_b11b_auth_yn | string | | | pbp_b11b_coins_cov__pos | string | | | pbp_b11b_coins_cov_mc | string | | | pbp_b11b_coins_cov_mcms | string | | | pbp_b11b_coins_ehc | string | | | pbp_b11b_coins_pct_disc | double | | | pbp_b11b_coins_pct_disc_ms | double | | | pbp_b11b_coins_pct_mc | double | | | pbp_b11b_coins_pct_mcmax | double | | | pbp_b11b_coins_pct_mcms_max | double | | | pbp_b11b_coins_pct_mcms_min | double | | | pbp_b11b_coins_pct_pos | double | | | pbp_b11b_coins_pct_prpdisc_pos | double | | | pbp_b11b_coins_pctmax_pos | double | | | pbp_b11b_coins_yesno | string | | | pbp_b11b_coins_yesno_pos | string | | | pbp_b11b_coins_yn | string | | | pbp_b11b_copay_amt_pos | double | | | pbp_b11b_copay_amtmax_pos | double | | | pbp_b11b_copay_ehc | string | | | pbp_b11b_copay_mcmax_amt | double | | | pbp_b11b_copay_mcmin_amt | double | | | pbp_b11b_copay_mcms_max_amt | double | | | pbp_b11b_copay_mcms_min_amt | double | | | pbp_b11b_copay_yesno | string | | | pbp_b11b_copay_yesno_pos | string | | | pbp_b11b_copay_yn | string | | | pbp_b11b_ded_amt | double | | | pbp_b11b_ded_amt_pos | double | | | pbp_b11b_ded_yesno | string | | | pbp_b11b_ded_yesno_pos | string | | | pbp_b11b_ded_yn | string | | | pbp_b11b_esrd_coins | double | | | pbp_b11b_esrd_maxamtb | double | | | pbp_b11b_maxenr_amt | double | | | pbp_b11b_maxenr_amt_pos | double | | | pbp_b11b_maxenr_cost_type | string | | | pbp_b11b_maxenr_per | string | | | pbp_b11b_maxenr_per_d | string | | | pbp_b11b_maxenr_yesno | string | | | pbp_b11b_maxenr_yn | string | | | pbp_b11b_maxenr_yn_pos | string | | | pbp_b11b_maxplan_yesno_pos | string | | | pbp_b11b_maxpln_amt_pos | double | | | pbp_b11b_maxpln_cov_pos | string | | | pbp_b11b_maxpln_pct_prpdis_pos | double | | | pbp_b11b_maxpln_per_pos | string | | | pbp_b11b_mm_add_service_other1 | string | | | pbp_b11b_mm_auth | string | | | pbp_b11b_mm_auth_yn | string | | | pbp_b11b_mm_coins_pct | double | | | pbp_b11b_mm_coins_yn | string | | | pbp_b11b_mm_copay_amt | double | | | pbp_b11b_mm_copay_yn | string | | | pbp_b11b_mm_maxplan_amt | double | | | pbp_b11b_mm_maxplan_per | string | | | pbp_b11b_mm_maxplan_per_d | string | | | pbp_b11b_mm_maxplan_yn | string | | | pbp_b11b_mm_nmc_yn | string | | | pbp_b11b_mm_refer_yn | string | | | pbp_b11b_pffs_coins | double | | | pbp_b11b_pffs_maxamtb | double | | | pbp_b11c_auth | string | | | pbp_b11c_auth_yn | string | | | pbp_b11c_coins_cov_mc | string | | | pbp_b11c_coins_dtsi_mcmax_pct | double | | | pbp_b11c_coins_dtsi_mcmin_pct | double | | | pbp_b11c_coins_ehc | string | | | pbp_b11c_coins_pct_disc | double | | | pbp_b11c_coins_pct_mc | double | | | pbp_b11c_coins_pct_mcmax | double | | | pbp_b11c_coins_pct_mcmin | double | | | pbp_b11c_coins_yn | string | | | pbp_b11c_copay_dtsi_mcmax_amt | double | | | pbp_b11c_copay_dtsi_mcmin_amt | double | | | pbp_b11c_copay_ehc | string | | | pbp_b11c_copay_mcmax_amt | double | | | pbp_b11c_copay_mcmin_amt | double | | | pbp_b11c_copay_yn | string | | | pbp_b11c_ded_amt | double | | | pbp_b11c_ded_yn | string | | | pbp_b11c_dme_limit_manufact_yn | string | | | pbp_b11c_maxenr_amt | double | | | pbp_b11c_maxenr_cost_type | string | | | pbp_b11c_maxenr_per | string | | | pbp_b11c_maxenr_per_d | string | | | pbp_b11c_maxenr_yn | string | | | observed_period | date | Date the benefit period was observed (= effective_period_start, 2001-01-01 .. 2026-01-01). Provenance date axis. | | asserted_at | date | Pipeline assertion/load date. Exactly TWO values: 2026-05-16 (100,054 rows, parse_revision=1) and 2026-05-20 (101,434 rows, parse_revision=2). These two parse batches partition the table with NO overlap (they loaded different plan-year-quarter snapshots), so this is NOT within-grain re-assertion. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer 1-4 that tracks the within-year release ordinal (maps to quarter: 1=Q1...4=Q4 release). NOT a correction/restatement counter. | | parse_revision | int | Parser batch number (1 or 2). 1 -> asserted_at 2026-05-16; 2 -> asserted_at 2026-05-20. Provenance only; not a grain axis. | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | pbp_b11c3_coins_max_pct | double | | | pbp_b11c3_coins_min_pct | double | | | pbp_b11c3_copay_max_amt | double | | | pbp_b11c3_copay_min_amt | double | | | pbp_b11_* (no letter suffix) | | DEPRECATED 2001-only combined DME layout (pbp_b11_auth, pbp_b11_coins_*, pbp_b11_copay_*, pbp_b11_ded_*, pbp_b11_maxenr_*, pbp_b11_maxpln_*). Populated ONLY in report_year 2001 (742 rows); 100% NULL for 2002+. Do NOT use for modern DME cost-share - use b11a/b/c. | | pbp_b11a_* (DME sub-benefit) | | Durable Medical Equipment cost-share design, populated 2002-2026. Key fields: pbp_b11a_coins_yn (1=Yes/2=No, coinsurance applies), pbp_b11a_coins_pct_mc (in-network DME coinsurance %, dominant 20.0, range 0-50, avg ~17.7 - this is real cost data), pbp_b11a_copay_yn / pbp_b11a_copay_mc_amt (copay $, 0-200), pbp_b11a_ded_yn / pbp_b11a_ded_amt (deductible $, 0-500), pbp_b11a_auth_yn (prior auth: 1=Yes 130K, 2=No 9K, NULL 62K), pbp_b11a_maxenr_amt/_per (max-enrollee OOP cap & period), pbp_b11a_esrd_coins, pbp_b11a_pffs_coins. The b11a_mm_* family = optional supplemental (Medicare-uncovered, non-Medicare-covered) DME/other-item cost-share with min/max coins & copay tiers (mostly NULL). | | pbp_b11b_* (Prosthetics/Orthotics sub-benefit) | | Prosthetics & medical supplies / orthotics cost-share, populated 2002-2026 in lockstep with b11a. Same shape as b11a: coins_yn, coins_pct_mc, copay_*, ded_*, auth_yn, maxenr_*, esrd, plus _ms / _mcms variants (medical-supply split) and b11b_mm_* supplemental tier. | | pbp_b11c_* (Medical Supplies sub-benefit) | | Diabetes/medical supplies cost-share, populated 2002-2026 in lockstep with b11a/b. Fields: coins_yn, coins_pct_mc(/min/max), copay_mc*_amt, ded_yn/amt, auth_yn, dme_limit_manufact_yn (network/manufacturer limit), maxenr_*, plus dtsi (diabetes testing supplies/insulin) min/max coins & copay fields. | | *_pos columns | | Point-Of-Service / out-of-network counterparts of the in-network cost-share fields (e.g. pbp_b11a... none; mostly on parent pbp_b11_*_pos and b11b_*_pos). Largely NULL except for plans with an OON benefit. Mirror the in-network fields for the OON side. | | *_yn / *_yesno | | CMS boolean convention: '1'=Yes, '2'=No (string), NULL=not captured/not applicable for that vintage. Applies to all coins_yn, copay_yn, ded_yn, auth_yn, maxenr_yn, refer_yn flags. | | effective_period_start / effective_period_end | | Benefit-year coverage window, always Jan 1 - Dec 31 of report_year (e.g. 2005-01-01 .. 2005-12-31). Annual. effective_period_start is the canonical time column (26 distinct years). | | parser_artifact_hash / sha256_content_hash / source_url | | Provenance: source_url is the CMS PBP zip (one per report_year, or per year-quarter for republished years, e.g. pbp-benefits-2024-quarter-4.zip; 40 distinct URLs = 40 snapshots). Hashes pin the extractor build and source-file content. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b11_dme_prosth_orth_sup WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b11_dme_prosth_orth_sup")` first. # MA pbp section b12 renal dialysis `medicare_silver.pbp_section_b12_renal_dialysis` · Medicare Advantage, Part D, Medicaid · status partial Section B12: Renal dialysis cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan-benefit-package per quarterly CMS PBP vintage: the minimal verified key is (contract_id, plan_id, segment_id, report_year, quarter), which yields exactly 201,488 distinct combinations = the full row count (0 duplicates). Each row is one plan's renal-dialysis cost-sharing design as filed in one quarterly PBP release of one contract year. **How to use it.** To get each MA plan's latest renal-dialysis coinsurance for the 2026 benefit year (deduping the quarterly snapshots to the newest vintage): SELECT contract_id, plan_id, segment_id, pbp_b12_coins_pct_mc, COALESCE(pbp_b12_coins_yn, pbp_b12_coins_yesno) AS charges_coins FROM pbp_section_b12_renal_dialysis WHERE report_year=2026 AND quarter=(SELECT MAX(quarter) FROM pbp_section_b12_renal_dialysis WHERE report_year=2026). Answers: 'what coinsurance % does each Medicare Advantage plan charge its members for renal dialysis in 2026?' (most plans = 20%, the standard Medicare cost share)." **Traps.** - GRAIN IS NOT bid_id-based. The profiler reports an 8-column superset; the TRUE minimal key is just 5 columns: (contract_id, plan_id, segment_id, report_year, quarter) = 201,488 distinct = exact row count (verified 0 dups). bid_id, pbp_a_plan_type, effective_period_start, observed_period are all redundant. bid_id is additionally NULL for every row 2001-2006, so it cannot be a key. - NO is_current / no snapshot dedup. This is a quarterly-vintage PANEL: the SAME plan-year is re-published each quarter and ALL quarters are kept (2023 alone has 4 copies = 31,005 rows for ~7,766 bids). quarter == cms_vintage_sequence. To get one row per plan-year you MUST pick a quarter yourself (e.g. MAX(quarter) per report_year, or filter quarter=1). Pre-2018 years only have Q1; 2018+ have 2-4 quarters. - Legacy/current Yes-No column PAIRS. Cost-structure switches exist in two mutually-exclusive encodings: pbp_b12_coins_yn (modern) vs pbp_b12_coins_yesno (pre-~2005), and likewise for copay/ded/maxenr. They never co-populate — you MUST COALESCE(yn, yesno) to read the full 2001-2026 history. 1=Yes, 2=No throughout. - NULL cost fields mean 'not applicable / not filed', not zero. ~10,199 rows have NULL across coins_yn/copay_yn/ded_yn/maxenr_yn (and pbp_b12_sep_cost_yn is NULL for 188K rows because it was added in later CMS schema years). Do not coerce these NULLs to 0% or $0 — treat as unknown/section-not-applicable. Headline cost = pbp_b12_coins_pct_mc (median 20.0 = standard Medicare 20% coinsurance); copay is rare (only 9,672 rows). - In-area vs out-of-area suffix confusion. Two parallel families exist: the POPULATED area-split fields are the *_mc_ia / *_mc_oa forms (~5,442 / 4,791 rows). The similarly-named *_ia_mc / *_oa_mc forms are near-empty legacy variants (~63 rows). Use *_pct_mc as the default, and *_pct_mc_ia / *_pct_mc_oa only for the minority of plans that vary cost by service area. pbp_b12_auth is a positional 5-digit BITMASK string, not free text. - Provenance dates are not benefit dates. asserted_at (2026-05-16..20) is the Vlada load date; filter by report_year / effective_period_start for the benefit year. orgtype and pbp_a_plan_type are coded CMS values (decode via the PBP data dictionary: plan_type '01'=HMO, '04'=local PPO, '02'=HMO-POS, '20'=PFFS, etc.); they are carried-down Section-A attributes, not part of the grain. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage/Part C contract ID (e.g. 'H0028'). 1,972 distinct. Part of the grain. Joins to plan/enrollment/Stars tables. Letter prefix indicates org type (H=local MA, R=regional, etc.). | | plan_id | string | Plan benefit package ID within the contract, zero-padded 3-char string (e.g. '001','017'). 656 distinct values but only unique WITHIN a contract. Part of the grain. | | segment_id | string | Plan segment ID, string (e.g. '0'). 27 distinct. Most plans are segment '0'; segments split a PBP by service-area region. Part of the grain. | | version | double | CMS PBP-software bid version number that generated this record (double, 0-27). NOT a grain dimension and NOT a snapshot/revision selector — verified 0 grain-keys carry more than one version. A per-bid attribute; ignore for dedup. | | report_year | double | Contract/benefit year the bid applies to (double, 2001-2026). Part of the minimal grain. Equivalent 1:1 to effective_period_start year and observed_period year. | | quarter | double | CMS quarterly re-release of the PBP file (double, 1-4). Part of the grain. This is a SNAPSHOT axis: the same plan-year is re-published across quarters and ALL quarters are retained (e.g. 2023 has 4 quarterly copies of each bid). Older years (<=2017) only have Q1. Equals cms_vintage_sequence. | | bid_id | string | Concatenated key contract_plan_segment (e.g. 'H0028_007_0'). TRAP: NULL for all rows 2001-2006 (~7,316 rows) because CMS did not emit it pre-2007. Do NOT use as a primary key. Redundant with contract_id+plan_id+segment_id when present. | | orgtype | string | CMS organization-type code (string). '01'=local CCP/HMO-PPO (88% of rows, 177,737), '08'=PFFS, '04'=regional PPO, '11'=MSA/cost, '06','05','02' other. Describes the carrier's organizational form. | | pbp_a_ben_cov | string | Section-A benefit-coverage flag (string): '1'=plan offers this benefit category (196,773 rows), '2'=not offered (4,373), NULL (342). Carried from the PBP Section A header; loosely associated with whether the B12 cost fields are populated. | | pbp_a_plan_type | string | CMS plan-type code (string): '01'=HMO (101,510), '04'=local PPO (55,909), '02'=HMO-POS (20,097), '20'=PFFS, '09'=regional PPO, '31'=MSA, '18'=1876 cost, '48'=PDP-like/other. Carried from Section A; describes the product. | | pbp_b12_auth | string | 5-digit BITMASK string (e.g. '01000','00111') flagging which renal-dialysis sub-services require prior authorization; NOT free text. NULL where not applicable (61,759 rows). Decode positionally against the CMS PBP B12 data dictionary. | | pbp_b12_auth_yn | string | Does any renal-dialysis service require prior authorization? '1'=Yes (77,101), '2'=No (62,628), NULL (61,759). 1/2 = Yes/No throughout this table. | | pbp_b12_coins_cov_ia_mc | string | Coinsurance-coverage descriptor for in-area Medicare-covered dialysis (string). Almost entirely NULL in this table; a rarely-used variant field. Treat as edge-case detail, not a primary signal. | | pbp_b12_coins_cov_mc | string | Coinsurance-coverage descriptor for Medicare-covered renal dialysis (string). Mostly NULL; the populated cost signal lives in the *_pct_mc numeric fields, not this descriptor. | | pbp_b12_coins_cov_mc_ia | string | Coinsurance coverage descriptor, Medicare-covered / in-area split (string). Sparse. Companion descriptor to pbp_b12_coins_pct_mc_ia. | | pbp_b12_coins_cov_mc_oa | string | Coinsurance coverage descriptor, Medicare-covered / out-of-area split (string). Sparse. Companion to pbp_b12_coins_pct_mc_oa. | | pbp_b12_coins_cov_oa_mc | string | Coinsurance coverage descriptor, out-of-area Medicare-covered (string). Nearly always NULL; rarely-used variant. | | pbp_b12_coins_max_pct_mc | double | Maximum coinsurance PERCENT for Medicare-covered dialysis (double). 152,283 non-null. Tracks pbp_b12_coins_pct_mc closely; the ceiling when a plan expresses a range. Median ~20. | | pbp_b12_coins_pct_ia_mc | double | Coinsurance percent, in-area variant (double). Extremely sparse (63 non-null) — legacy/edge field. Use *_pct_mc or *_pct_mc_ia instead. | | pbp_b12_coins_pct_mc | double | PRIMARY cost field: coinsurance PERCENT the member pays for Medicare-covered renal dialysis (double). 155,043 non-null; median = 20.0 (the standard Medicare 20% cost share), range 0-100. This is the headline renal-dialysis cost-share number. | | pbp_b12_coins_pct_mc_ia | double | Coinsurance percent for the IN-AREA (in-network service-area) split of Medicare-covered dialysis (double). 5,442 non-null — used by a minority of plans that vary cost by area. Overrides pbp_b12_coins_pct_mc for those plans. | | pbp_b12_coins_pct_mc_oa | double | Coinsurance percent for the OUT-OF-AREA split of Medicare-covered dialysis (double). 5,442 non-null, pairs with *_mc_ia. The out-of-network-area cost share. | | pbp_b12_coins_pct_oa_mc | double | Coinsurance percent, out-of-area variant (double). Extremely sparse (63 non-null) — legacy/edge field, distinct from the *_mc_oa field which is the populated one. | | pbp_b12_coins_yesno | string | LEGACY (pre-~2005) coinsurance Yes/No flag (string '1'/'2'). Populated only for ~742 old rows where pbp_b12_coins_yn is NULL. GOTCHA: COALESCE with pbp_b12_coins_yn to read the full history — the two never co-populate. | | pbp_b12_coins_yn | string | Current coinsurance Yes/No switch (string): '1'=plan charges coinsurance for dialysis (160,485), '2'=No (30,804), NULL (10,199). The main 'does this plan use coinsurance' flag for modern years. | | pbp_b12_copay_ia_mc_amt | double | Copay dollar amount, in-area variant (double). Very sparse (423 non-null) — legacy/edge field. | | pbp_b12_copay_mc_amt | double | PRIMARY copay field: dollar copay the member pays per dialysis service, Medicare-covered (double). Only 9,672 non-null (most plans use coinsurance, not copay); median ~$2.68, max $600. Read alongside pbp_b12_copay_yn. | | pbp_b12_copay_mc_amt_ia | double | Copay dollar amount for the IN-AREA split (double). 4,791 non-null. Area-specific copay override paired with *_amt_oa. | | pbp_b12_copay_mc_amt_oa | double | Copay dollar amount for the OUT-OF-AREA split (double). 4,791 non-null, pairs with *_amt_ia. | | pbp_b12_copay_mc_max_amt | double | Maximum copay dollar amount for Medicare-covered dialysis (double). 8,795 non-null. Ceiling when a plan expresses a copay range. | | pbp_b12_copay_oa_mc_amt | double | Copay amount, out-of-area variant (double). Very sparse (423 non-null) — legacy/edge field, distinct from the populated *_amt_oa field. | | pbp_b12_copay_yesno | string | LEGACY copay Yes/No flag (string '1'/'2'); populated only for a small set of old rows where pbp_b12_copay_yn is NULL. COALESCE with pbp_b12_copay_yn for full history. | | pbp_b12_copay_yn | string | Current copay Yes/No switch (string): '2'=No copay (176,831, the majority — plans favor coinsurance), '1'=Yes (14,458), NULL (10,199). | | pbp_b12_ded_amt | double | Deductible dollar amount specific to renal dialysis (double). Almost always NULL — only ~69 plans (ded_yn='1') charge a dialysis-specific deductible. | | pbp_b12_ded_yesno | string | LEGACY deductible Yes/No flag (string). Sparse; COALESCE with pbp_b12_ded_yn for old years. | | pbp_b12_ded_yn | string | Does the plan charge a deductible for renal dialysis? '2'=No (191,220, essentially all plans), '1'=Yes (only 69), NULL (10,199). | | pbp_b12_maxenr_amt | double | Maximum enrollee out-of-pocket dollar amount for renal dialysis (double). Almost entirely NULL — only ~44 plans set a dialysis-specific max. | | pbp_b12_maxenr_per | string | Period code for the max-enrollee-cost cap (string). When set (maxenr_yn='1'), observed value '3'. Decode against CMS period codes (e.g. per-year). Almost always NULL. | | pbp_b12_maxenr_per_d | string | Free-text/description of the max-enrollee period (string). Observed NULL even when maxenr_per='3'. Rarely populated. | | pbp_b12_maxenr_yesno | string | LEGACY max-enrollee-cost Yes/No flag (string). Sparse; COALESCE with maxenr_yn. | | pbp_b12_maxenr_yn | string | Does the plan set a maximum enrollee out-of-pocket for renal dialysis? '2'=No (191,245, virtually all), '1'=Yes (only 44), NULL (10,199). | | pbp_b12_refer_yn | string | Is a referral required for renal dialysis? '2'=No (141,251), '1'=Yes (47,648), NULL (12,589). 1/2=Yes/No. | | pbp_b12_sep_cost_yn | string | Does dialysis have a SEPARATE cost-share structure (vs folded into general benefits)? Mostly NULL (188,366 — field added in later years), '2'=No (11,140), '1'=Yes (1,982). | | observed_period | date | Vlada provenance: the benefit period this snapshot describes (date), always Jan-1 of report_year. 1:1 with report_year — redundant as a grain column. | | asserted_at | date | Vlada provenance: ingestion/load date into the silver layer (date). All rows loaded 2026-05-16 to 2026-05-20. Not a CMS field; do not use for benefit-year filtering. | | effective_period_start | date | Vlada provenance: benefit-year start date (date), Jan-1 of report_year. Range 2001-01-01 to 2026-01-01. Redundant with report_year. | | effective_period_end | date | Vlada provenance: benefit-year end date (date), Dec-31 of report_year. Redundant with report_year. | | cms_vintage_sequence | int | Snapshot sequence number within a report_year (int 1-4) = the quarter. EQUALS the quarter column (1=Q1...4=Q4). Confirms multiple quarterly vintages per year are all retained; not an is_current selector. | | parse_revision | int | Vlada parser revision that produced the row (int, 1 or 2). 100,054 rows at rev 1, rest at rev 2. Pipeline-internal; not a grain dimension and not a row-supersession flag. | | parser_artifact_hash | string | SHA-256 of the parser code/config artifact (string). Provenance/lineage for reproducibility; same hash shared across a load batch. | | source_url | string | CMS source ZIP the row was extracted from (string), e.g. 'https://www.cms.gov/files/zip/pbp-benefits-2023-quarter-3.zip'. Encodes year+quarter; the raw-substrate provenance link. | | sha256_content_hash | string | SHA-256 of the source file content (string). Integrity/dedup hash of the downloaded CMS ZIP; shared by all rows from the same file. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b12_renal_dialysis WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b12_renal_dialysis")` first. # PBP Section B13 — Other Services (silver) `medicare_silver.pbp_section_b13_other_services` · Medicare Advantage, Part D, Medicaid · status partial Medicare Plan Benefit Package (PBP) Section B13 "Other Services" silver table, built by pipelines/medicare/ingest/pbp_runner.py from the CMS PBP SAS source into a medicare_silver Iceberg table. This is the exact source surface the PBP benefit tools read for this section; the entry catalogues table identity only, not benefit semantics. **Grain.** One row per (contract_id, plan_id, segment_id, version, report_year, quarter) PBP segment record. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | bid_id | string | | | orgtype | string | | | pbp_a_ben_cov | string | | | pbp_a_plan_type | string | | | pbp_b13a_auth | string | | | pbp_b13a_auth_pos | string | | | pbp_b13a_auth_yn | string | | | pbp_b13a_bendec | string | | | pbp_b13a_bendec_yesno | string | | | pbp_b13a_bendesc_amo | string | | | pbp_b13a_bendesc_ehc | string | | | pbp_b13a_bendesc_enhan | string | | | pbp_b13a_bendesc_lim | string | | | pbp_b13a_bendesc_numv | double | | | pbp_b13a_bendesc_per | string | | | pbp_b13a_bendesc_per_d | string | | | pbp_b13a_bendesc_yn | string | | | pbp_b13a_coins_cov__pos | string | | | pbp_b13a_coins_cov_mc | string | | | pbp_b13a_coins_pct | double | | | pbp_b13a_coins_pct_max | double | | | pbp_b13a_coins_pct_mc | double | | | pbp_b13a_coins_pct_min | double | | | pbp_b13a_coins_pct_pos | double | | | pbp_b13a_coins_yesno | string | | | pbp_b13a_coins_yesno_pos | string | | | pbp_b13a_coins_yn | string | | | pbp_b13a_combined_ben | string | | | pbp_b13a_copay_amt | double | | | pbp_b13a_copay_amt_max | double | | | pbp_b13a_copay_amt_min | double | | | pbp_b13a_copay_amt_pos | double | | | pbp_b13a_copay_mc_amt | double | | | pbp_b13a_copay_yesno | string | | | pbp_b13a_copay_yesno_pos | string | | | pbp_b13a_copay_yn | string | | | pbp_b13a_ded_amt | double | | | pbp_b13a_ded_amt_pos | double | | | pbp_b13a_ded_yesno | string | | | pbp_b13a_ded_yesno_pos | string | | | pbp_b13a_ded_yn | string | | | pbp_b13a_maxenr_amt | double | | | pbp_b13a_maxenr_amt_pos | double | | | pbp_b13a_maxenr_per | string | | | pbp_b13a_maxenr_per_d | string | | | pbp_b13a_maxenr_yesno | string | | | pbp_b13a_maxenr_yn | string | | | pbp_b13a_maxenr_yn_pos | string | | | pbp_b13a_maxplan_amt | double | | | pbp_b13a_maxplan_per | string | | | pbp_b13a_maxplan_per_d | string | | | pbp_b13a_maxplan_yesno_pos | string | | | pbp_b13a_maxplan_yn | string | | | pbp_b13a_maxpln_amt_pos | double | | | pbp_b13a_maxpln_cov_pos | string | | | pbp_b13a_maxpln_per_pos | string | | | pbp_b13a_refer_yn | string | | | pbp_b13b_auth | string | | | pbp_b13b_auth_pos | string | | | pbp_b13b_bendesc_amo | string | | | pbp_b13b_bendesc_enhan | string | | | pbp_b13b_bendesc_lim | string | | | pbp_b13b_bendesc_numv | double | | | pbp_b13b_bendesc_otc | string | | | pbp_b13b_bendesc_per | string | | | pbp_b13b_bendesc_yesno | string | | | pbp_b13b_bendesc_yn | string | | | pbp_b13b_cms_otc_list_yn | string | | | pbp_b13b_coins_cov | string | | | pbp_b13b_coins_cov__pos | string | | | pbp_b13b_coins_pct | double | | | pbp_b13b_coins_pct_max | double | | | pbp_b13b_coins_pct_min | double | | | pbp_b13b_coins_pct_pos | double | | | pbp_b13b_coins_yesno | string | | | pbp_b13b_coins_yesno_pos | string | | | pbp_b13b_coins_yn | string | | | pbp_b13b_copay_amt | double | | | pbp_b13b_copay_amt_max | double | | | pbp_b13b_copay_amt_min | double | | | pbp_b13b_copay_amt_pos | double | | | pbp_b13b_copay_yesno | string | | | pbp_b13b_copay_yesno_pos | string | | | pbp_b13b_copay_yn | string | | | pbp_b13b_ded_amt | double | | | pbp_b13b_ded_amt_pos | double | | | pbp_b13b_ded_yesno | string | | | pbp_b13b_ded_yesno_pos | string | | | pbp_b13b_ded_yn | string | | | pbp_b13b_maxenr_amt | double | | | pbp_b13b_maxenr_amt_pos | double | | | pbp_b13b_maxenr_per | string | | | pbp_b13b_maxenr_per_d | string | | | pbp_b13b_maxenr_yesno | string | | | pbp_b13b_maxenr_yesno_pos | string | | | pbp_b13b_maxenr_yn | string | | | pbp_b13b_maxplan_amt | double | | | pbp_b13b_maxplan_cov | string | | | pbp_b13b_maxplan_per | string | | | pbp_b13b_maxplan_prd_yn | string | | | pbp_b13b_maxplan_yesno | string | | | pbp_b13b_maxplan_yesno_pos | string | | | pbp_b13b_maxplan_yn | string | | | pbp_b13b_maxpln_amt_pos | double | | | pbp_b13b_maxpln_cov_pos | string | | | pbp_b13b_maxpln_per_pos | string | | | pbp_b13b_mode | string | | | pbp_b13b_mode_desc | string | | | pbp_b13b_naloxone_yn | string | | | pbp_b13b_nrt_attestation | string | | | pbp_b13b_nrt_yn | string | | | pbp_b13b_otc_maxplan_per | string | | | pbp_b13b_refer_yn | string | | | pbp_b13c_auth | string | | | pbp_b13c_auth_pos | string | | | pbp_b13c_auth_yn | string | | | pbp_b13c_bendesc_amo | string | | | pbp_b13c_bendesc_otc | string | | | pbp_b13c_bendesc_service | string | | | pbp_b13c_cms_otc_list_yn | string | | | pbp_b13c_coins_cov | string | | | pbp_b13c_coins_cov__pos | string | | | pbp_b13c_coins_pct | double | | | pbp_b13c_coins_pct_max | double | | | pbp_b13c_coins_pct_min | double | | | pbp_b13c_coins_pct_pos | double | | | pbp_b13c_coins_yesno | string | | | pbp_b13c_coins_yesno_pos | string | | | pbp_b13c_coins_yn | string | | | pbp_b13c_copay_amt | double | | | pbp_b13c_copay_amt_max | double | | | pbp_b13c_copay_amt_min | double | | | pbp_b13c_copay_amt_pos | double | | | pbp_b13c_copay_yesno | string | | | pbp_b13c_copay_yesno_pos | string | | | pbp_b13c_copay_yn | string | | | pbp_b13c_days | double | | | pbp_b13c_ded_amt | double | | | pbp_b13c_ded_amt_pos | double | | | pbp_b13c_ded_yesno | string | | | pbp_b13c_ded_yesno_pos | string | | | pbp_b13c_ded_yn | string | | | pbp_b13c_max_meals | double | | | pbp_b13c_maxenr_amt | double | | | pbp_b13c_maxenr_amt_pos | double | | | pbp_b13c_maxenr_per | string | | | pbp_b13c_maxenr_per_d | string | | | pbp_b13c_maxenr_yesno | string | | | pbp_b13c_maxenr_yesno_pos | string | | | pbp_b13c_maxenr_yn | string | | | pbp_b13c_maxplan_amt | double | | | pbp_b13c_maxplan_cov | string | | | pbp_b13c_maxplan_per | string | | | pbp_b13c_maxplan_per_d | string | | | pbp_b13c_maxplan_yesno | string | | | pbp_b13c_maxplan_yesno_pos | string | | | pbp_b13c_maxplan_yn | string | | | pbp_b13c_maxpln_amt_pos | double | | | pbp_b13c_maxpln_cov_pos | string | | | pbp_b13c_maxpln_per_pos | string | | | pbp_b13c_meal_type_chk | string | | | pbp_b13c_otc_fsa_list_yn | string | | | pbp_b13c_otc_maxplan_per | string | | | pbp_b13c_refer_yn | string | | | pbp_b13c_weeks | double | | | pbp_b13d_auth | string | | | pbp_b13d_auth_pos | string | | | pbp_b13d_auth_yn | string | | | pbp_b13d_bendesc_amo | string | | | pbp_b13d_bendesc_service | string | | | pbp_b13d_coins_cov | string | | | pbp_b13d_coins_cov__pos | string | | | pbp_b13d_coins_pct | double | | | pbp_b13d_coins_pct_max | double | | | pbp_b13d_coins_pct_min | double | | | pbp_b13d_coins_pct_pos | double | | | pbp_b13d_coins_yesno | string | | | pbp_b13d_coins_yesno_pos | string | | | pbp_b13d_coins_yn | string | | | pbp_b13d_copay_amt | double | | | pbp_b13d_copay_amt_max | double | | | pbp_b13d_copay_amt_min | double | | | pbp_b13d_copay_amt_pos | double | | | pbp_b13d_copay_yesno | string | | | pbp_b13d_copay_yesno_pos | string | | | pbp_b13d_copay_yn | string | | | pbp_b13d_ded_amt | double | | | pbp_b13d_ded_amt_pos | double | | | pbp_b13d_ded_yesno | string | | | pbp_b13d_ded_yesno_pos | string | | | pbp_b13d_ded_yn | string | | | pbp_b13d_maxenr_amt | double | | | pbp_b13d_maxenr_amt_pos | double | | | pbp_b13d_maxenr_per | string | | | pbp_b13d_maxenr_per_d | string | | | pbp_b13d_maxenr_yesno | string | | | pbp_b13d_maxenr_yesno_pos | string | | | pbp_b13d_maxenr_yn | string | | | pbp_b13d_maxplan_amt | double | | | pbp_b13d_maxplan_cov | string | | | pbp_b13d_maxplan_per | string | | | pbp_b13d_maxplan_per_d | string | | | pbp_b13d_maxplan_yesno | string | | | pbp_b13d_maxplan_yesno_pos | string | | | pbp_b13d_maxplan_yn | string | | | pbp_b13d_maxpln_amt_pos | double | | | pbp_b13d_maxpln_cov_pos | string | | | pbp_b13d_maxpln_per_pos | string | | | pbp_b13d_refer_yn | string | | | pbp_b13e_auth | string | | | pbp_b13e_auth_pos | string | | | pbp_b13e_auth_yn | string | | | pbp_b13e_bendesc_amo | string | | | pbp_b13e_bendesc_service | string | | | pbp_b13e_coins_cov | string | | | pbp_b13e_coins_cov__pos | string | | | pbp_b13e_coins_pct | double | | | pbp_b13e_coins_pct_max | double | | | pbp_b13e_coins_pct_min | double | | | pbp_b13e_coins_pct_pos | double | | | pbp_b13e_coins_yesno | string | | | pbp_b13e_coins_yesno_pos | string | | | pbp_b13e_coins_yn | string | | | pbp_b13e_copay_amt | double | | | pbp_b13e_copay_amt_max | double | | | pbp_b13e_copay_amt_min | double | | | pbp_b13e_copay_amt_pos | double | | | pbp_b13e_copay_yesno | string | | | pbp_b13e_copay_yesno_pos | string | | | pbp_b13e_copay_yn | string | | | pbp_b13e_ded_amt | double | | | pbp_b13e_ded_amt_pos | double | | | pbp_b13e_ded_yesno | string | | | pbp_b13e_ded_yesno_pos | string | | | pbp_b13e_ded_yn | string | | | pbp_b13e_maxenr_amt | double | | | pbp_b13e_maxenr_amt_pos | double | | | pbp_b13e_maxenr_per | string | | | pbp_b13e_maxenr_per_d | string | | | pbp_b13e_maxenr_yesno | string | | | pbp_b13e_maxenr_yesno_pos | string | | | pbp_b13e_maxenr_yn | string | | | pbp_b13e_maxplan_amt | double | | | pbp_b13e_maxplan_cov | string | | | pbp_b13e_maxplan_per | string | | | pbp_b13e_maxplan_per_d | string | | | pbp_b13e_maxplan_yesno | string | | | pbp_b13e_maxplan_yesno_pos | string | | | pbp_b13e_maxplan_yn | string | | | pbp_b13e_maxpln_amt_pos | double | | | pbp_b13e_maxpln_cov_pos | string | | | pbp_b13e_maxpln_per_pos | string | | | pbp_b13e_refer_yn | string | | | pbp_b13f_auth | string | | | pbp_b13f_auth_yn | string | | | pbp_b13f_bendesc_amo | string | | | pbp_b13f_bendesc_service | string | | | pbp_b13f_coins_pct | double | | | pbp_b13f_coins_pct_max | double | | | pbp_b13f_coins_pct_min | double | | | pbp_b13f_coins_yn | string | | | pbp_b13f_copay_amt | double | | | pbp_b13f_copay_amt_max | double | | | pbp_b13f_copay_amt_min | double | | | pbp_b13f_copay_yn | string | | | pbp_b13f_ded_amt | double | | | pbp_b13f_ded_yn | string | | | pbp_b13f_maxenr_amt | double | | | pbp_b13f_maxenr_per | string | | | pbp_b13f_maxenr_per_d | string | | | pbp_b13f_maxenr_yn | string | | | pbp_b13f_maxplan_amt | double | | | pbp_b13f_maxplan_per | string | | | pbp_b13f_maxplan_per_d | string | | | pbp_b13f_maxplan_yn | string | | | pbp_b13f_refer_yn | string | | | pbp_b13g_attestation | string | | | pbp_b13g_auth | string | | | pbp_b13g_auth_yn | string | | | pbp_b13g_bendesc_amo | string | | | pbp_b13g_bendesc_service | string | | | pbp_b13g_coins_max_pct | double | | | pbp_b13g_coins_min_pct | double | | | pbp_b13g_coins_pct | double | | | pbp_b13g_coins_yn | string | | | pbp_b13g_copay_amt | double | | | pbp_b13g_copay_max_amt | double | | | pbp_b13g_copay_min_amt | double | | | pbp_b13g_copay_yn | string | | | pbp_b13g_ded_amt | double | | | pbp_b13g_ded_yn | string | | | pbp_b13g_maxenr_amt | double | | | pbp_b13g_maxenr_per | string | | | pbp_b13g_maxenr_per_d | string | | | pbp_b13g_maxenr_yn | string | | | pbp_b13g_maxplan_amt | double | | | pbp_b13g_maxplan_per | string | | | pbp_b13g_maxplan_per_d | string | | | pbp_b13g_maxplan_yn | string | | | pbp_b13g_refer_yn | string | | | pbp_b13h_add_srvcs_coins_items | string | | | pbp_b13h_add_srvcs_coins_yn | string | | | pbp_b13h_add_srvcs_copay_items | string | | | pbp_b13h_add_srvcs_copay_yn | string | | | pbp_b13h_add_srvcs_yn | string | | | pbp_b13h_addl_service_other1 | string | | | pbp_b13h_addl_service_other10 | string | | | pbp_b13h_addl_service_other11 | string | | | pbp_b13h_addl_service_other12 | string | | | pbp_b13h_addl_service_other13 | string | | | pbp_b13h_addl_service_other14 | string | | | pbp_b13h_addl_service_other15 | string | | | pbp_b13h_addl_service_other16 | string | | | pbp_b13h_addl_service_other17 | string | | | pbp_b13h_addl_service_other18 | string | | | pbp_b13h_addl_service_other19 | string | | | pbp_b13h_addl_service_other2 | string | | | pbp_b13h_addl_service_other20 | string | | | pbp_b13h_addl_service_other21 | string | | | pbp_b13h_addl_service_other22 | string | | | pbp_b13h_addl_service_other23 | string | | | pbp_b13h_addl_service_other24 | string | | | pbp_b13h_addl_service_other25 | string | | | pbp_b13h_addl_service_other26 | string | | | pbp_b13h_addl_service_other27 | string | | | pbp_b13h_addl_service_other28 | string | | | pbp_b13h_addl_service_other29 | string | | | pbp_b13h_addl_service_other3 | string | | | pbp_b13h_addl_service_other30 | string | | | pbp_b13h_addl_service_other31 | string | | | pbp_b13h_addl_service_other32 | string | | | pbp_b13h_addl_service_other33 | string | | | pbp_b13h_addl_service_other34 | string | | | pbp_b13h_addl_service_other35 | string | | | pbp_b13h_addl_service_other36 | string | | | pbp_b13h_addl_service_other37 | string | | | pbp_b13h_addl_service_other38 | string | | | pbp_b13h_addl_service_other4 | string | | | pbp_b13h_addl_service_other5 | string | | | pbp_b13h_addl_service_other6 | string | | | pbp_b13h_addl_service_other7 | string | | | pbp_b13h_addl_service_other8 | string | | | pbp_b13h_addl_service_other9 | string | | | pbp_b13h_addl_services | string | | | pbp_b13h_auth_cm | string | | | pbp_b13h_auth_cm_ltc | string | | | pbp_b13h_auth_epsdt | string | | | pbp_b13h_auth_fbcs | string | | | pbp_b13h_auth_fps | string | | | pbp_b13h_auth_hcbs | string | | | pbp_b13h_auth_icfmrs | string | | | pbp_b13h_auth_imds | string | | | pbp_b13h_auth_nhs | string | | | pbp_b13h_auth_other1 | string | | | pbp_b13h_auth_other10 | string | | | pbp_b13h_auth_other11 | string | | | pbp_b13h_auth_other12 | string | | | pbp_b13h_auth_other13 | string | | | pbp_b13h_auth_other14 | string | | | pbp_b13h_auth_other15 | string | | | pbp_b13h_auth_other16 | string | | | pbp_b13h_auth_other17 | string | | | pbp_b13h_auth_other18 | string | | | pbp_b13h_auth_other19 | string | | | pbp_b13h_auth_other2 | string | | | pbp_b13h_auth_other20 | string | | | pbp_b13h_auth_other21 | string | | | pbp_b13h_auth_other22 | string | | | pbp_b13h_auth_other23 | string | | | pbp_b13h_auth_other24 | string | | | pbp_b13h_auth_other25 | string | | | pbp_b13h_auth_other26 | string | | | pbp_b13h_auth_other27 | string | | | pbp_b13h_auth_other28 | string | | | pbp_b13h_auth_other29 | string | | | pbp_b13h_auth_other3 | string | | | pbp_b13h_auth_other30 | string | | | pbp_b13h_auth_other31 | string | | | pbp_b13h_auth_other32 | string | | | pbp_b13h_auth_other33 | string | | | pbp_b13h_auth_other34 | string | | | pbp_b13h_auth_other35 | string | | | pbp_b13h_auth_other36 | string | | | pbp_b13h_auth_other37 | string | | | pbp_b13h_auth_other38 | string | | | pbp_b13h_auth_other4 | string | | | pbp_b13h_auth_other5 | string | | | pbp_b13h_auth_other6 | string | | | pbp_b13h_auth_other7 | string | | | pbp_b13h_auth_other8 | string | | | pbp_b13h_auth_other9 | string | | | pbp_b13h_auth_pcs | string | | | pbp_b13h_auth_pdns | string | | | pbp_b13h_auth_rcs | string | | | pbp_b13h_auth_sdpas | string | | | pbp_b13h_auth_services | string | | | pbp_b13h_auth_tccpw | string | | | pbp_b13h_auth_yn | string | | | pbp_b13h_coins_cm_ltc_max | double | | | pbp_b13h_coins_cm_ltc_min | double | | | pbp_b13h_coins_cm_max | double | | | pbp_b13h_coins_cm_min | double | | | pbp_b13h_coins_epsdt_max | double | | | pbp_b13h_coins_epsdt_min | double | | | pbp_b13h_coins_fbcs_max | double | | | pbp_b13h_coins_fbcs_min | double | | | pbp_b13h_coins_fps_max | double | | | pbp_b13h_coins_fps_min | double | | | pbp_b13h_coins_hcbs_max | double | | | pbp_b13h_coins_hcbs_min | double | | | pbp_b13h_coins_icfmrs_max | double | | | pbp_b13h_coins_icfmrs_min | double | | | pbp_b13h_coins_imds_max | double | | | pbp_b13h_coins_imds_min | double | | | pbp_b13h_coins_nhs_max | double | | | pbp_b13h_coins_nhs_min | double | | | pbp_b13h_coins_other10_max | double | | | pbp_b13h_coins_other10_min | double | | | pbp_b13h_coins_other11_max | double | | | pbp_b13h_coins_other11_min | double | | | pbp_b13h_coins_other12_max | double | | | pbp_b13h_coins_other12_min | double | | | pbp_b13h_coins_other13_max | double | | | pbp_b13h_coins_other13_min | double | | | pbp_b13h_coins_other14_max | double | | | pbp_b13h_coins_other14_min | double | | | pbp_b13h_coins_other15_max | double | | | pbp_b13h_coins_other15_min | double | | | pbp_b13h_coins_other16_max | double | | | pbp_b13h_coins_other16_min | double | | | pbp_b13h_coins_other17_max | double | | | pbp_b13h_coins_other17_min | double | | | pbp_b13h_coins_other18_max | double | | | pbp_b13h_coins_other18_min | double | | | pbp_b13h_coins_other19_max | double | | | pbp_b13h_coins_other19_min | double | | | pbp_b13h_coins_other1_max | double | | | pbp_b13h_coins_other1_min | double | | | pbp_b13h_coins_other20_max | double | | | pbp_b13h_coins_other20_min | double | | | pbp_b13h_coins_other21_max | double | | | pbp_b13h_coins_other21_min | double | | | pbp_b13h_coins_other22_max | double | | | pbp_b13h_coins_other22_min | double | | | pbp_b13h_coins_other23_max | double | | | pbp_b13h_coins_other23_min | double | | | pbp_b13h_coins_other24_max | double | | | pbp_b13h_coins_other24_min | double | | | pbp_b13h_coins_other25_max | double | | | pbp_b13h_coins_other25_min | double | | | pbp_b13h_coins_other26_max | double | | | pbp_b13h_coins_other26_min | double | | | pbp_b13h_coins_other27_max | double | | | pbp_b13h_coins_other27_min | double | | | pbp_b13h_coins_other28_max | double | | | pbp_b13h_coins_other28_min | double | | | pbp_b13h_coins_other29_max | double | | | pbp_b13h_coins_other29_min | double | | | pbp_b13h_coins_other2_max | double | | | pbp_b13h_coins_other2_min | double | | | pbp_b13h_coins_other30_max | double | | | pbp_b13h_coins_other30_min | double | | | pbp_b13h_coins_other31_max | double | | | pbp_b13h_coins_other31_min | double | | | pbp_b13h_coins_other32_max | double | | | pbp_b13h_coins_other32_min | double | | | pbp_b13h_coins_other33_max | double | | | pbp_b13h_coins_other33_min | double | | | pbp_b13h_coins_other34_max | double | | | pbp_b13h_coins_other34_min | double | | | pbp_b13h_coins_other35_max | double | | | pbp_b13h_coins_other35_min | double | | | pbp_b13h_coins_other36_max | double | | | pbp_b13h_coins_other36_min | double | | | pbp_b13h_coins_other37_max | double | | | pbp_b13h_coins_other37_min | double | | | pbp_b13h_coins_other38_max | double | | | pbp_b13h_coins_other38_min | double | | | pbp_b13h_coins_other3_max | double | | | pbp_b13h_coins_other3_min | double | | | pbp_b13h_coins_other4_max | double | | | pbp_b13h_coins_other4_min | double | | | pbp_b13h_coins_other5_max | double | | | pbp_b13h_coins_other5_min | double | | | pbp_b13h_coins_other6_max | double | | | pbp_b13h_coins_other6_min | double | | | pbp_b13h_coins_other7_max | double | | | pbp_b13h_coins_other7_min | double | | | pbp_b13h_coins_other8_max | double | | | pbp_b13h_coins_other8_min | double | | | pbp_b13h_coins_other9_max | double | | | pbp_b13h_coins_other9_min | double | | | pbp_b13h_coins_pcs_max | double | | | pbp_b13h_coins_pcs_min | double | | | pbp_b13h_coins_pdns_max | double | | | pbp_b13h_coins_pdns_min | double | | | pbp_b13h_coins_rcs_max | double | | | pbp_b13h_coins_rcs_min | double | | | pbp_b13h_coins_sdpas_max | double | | | pbp_b13h_coins_sdpas_min | double | | | pbp_b13h_coins_tccpw_max | double | | | pbp_b13h_coins_tccpw_min | double | | | pbp_b13h_copay_cm_ltc_max | double | | | pbp_b13h_copay_cm_ltc_min | double | | | pbp_b13h_copay_cm_max | double | | | pbp_b13h_copay_cm_min | double | | | pbp_b13h_copay_epsdt_max | double | | | pbp_b13h_copay_epsdt_min | double | | | pbp_b13h_copay_fbcs_max | double | | | pbp_b13h_copay_fbcs_min | double | | | pbp_b13h_copay_fps_max | double | | | pbp_b13h_copay_fps_min | double | | | pbp_b13h_copay_hcbs_max | double | | | pbp_b13h_copay_hcbs_min | double | | | pbp_b13h_copay_icfmrs_max | double | | | pbp_b13h_copay_icfmrs_min | double | | | pbp_b13h_copay_imds_max | double | | | pbp_b13h_copay_imds_min | double | | | pbp_b13h_copay_nhs_max | double | | | pbp_b13h_copay_nhs_min | double | | | pbp_b13h_copay_other10_max | double | | | pbp_b13h_copay_other10_min | double | | | pbp_b13h_copay_other11_max | double | | | pbp_b13h_copay_other11_min | double | | | pbp_b13h_copay_other12_max | double | | | pbp_b13h_copay_other12_min | double | | | pbp_b13h_copay_other13_max | double | | | pbp_b13h_copay_other13_min | double | | | pbp_b13h_copay_other14_max | double | | | pbp_b13h_copay_other14_min | double | | | pbp_b13h_copay_other15_max | double | | | pbp_b13h_copay_other15_min | double | | | pbp_b13h_copay_other16_max | double | | | pbp_b13h_copay_other16_min | double | | | pbp_b13h_copay_other17_max | double | | | pbp_b13h_copay_other17_min | double | | | pbp_b13h_copay_other18_max | double | | | pbp_b13h_copay_other18_min | double | | | pbp_b13h_copay_other19_max | double | | | pbp_b13h_copay_other19_min | double | | | pbp_b13h_copay_other1_max | double | | | pbp_b13h_copay_other1_min | double | | | pbp_b13h_copay_other20_max | double | | | pbp_b13h_copay_other20_min | double | | | pbp_b13h_copay_other21_max | double | | | pbp_b13h_copay_other21_min | double | | | pbp_b13h_copay_other22_max | double | | | pbp_b13h_copay_other22_min | double | | | pbp_b13h_copay_other23_max | double | | | pbp_b13h_copay_other23_min | double | | | pbp_b13h_copay_other24_max | double | | | pbp_b13h_copay_other24_min | double | | | pbp_b13h_copay_other25_max | double | | | pbp_b13h_copay_other25_min | double | | | pbp_b13h_copay_other26_max | double | | | pbp_b13h_copay_other26_min | double | | | pbp_b13h_copay_other27_max | double | | | pbp_b13h_copay_other27_min | double | | | pbp_b13h_copay_other28_max | double | | | pbp_b13h_copay_other28_min | double | | | pbp_b13h_copay_other29_max | double | | | pbp_b13h_copay_other29_min | double | | | pbp_b13h_copay_other2_max | double | | | pbp_b13h_copay_other2_min | double | | | pbp_b13h_copay_other30_max | double | | | pbp_b13h_copay_other30_min | double | | | pbp_b13h_copay_other31_max | double | | | pbp_b13h_copay_other31_min | double | | | pbp_b13h_copay_other32_max | double | | | pbp_b13h_copay_other32_min | double | | | pbp_b13h_copay_other33_max | double | | | pbp_b13h_copay_other33_min | double | | | pbp_b13h_copay_other34_max | double | | | pbp_b13h_copay_other34_min | double | | | pbp_b13h_copay_other35_max | double | | | pbp_b13h_copay_other35_min | double | | | pbp_b13h_copay_other36_max | double | | | pbp_b13h_copay_other36_min | double | | | pbp_b13h_copay_other37_max | double | | | pbp_b13h_copay_other37_min | double | | | pbp_b13h_copay_other38_max | double | | | pbp_b13h_copay_other38_min | double | | | pbp_b13h_copay_other3_max | double | | | pbp_b13h_copay_other3_min | double | | | pbp_b13h_copay_other4_max | double | | | pbp_b13h_copay_other4_min | double | | | pbp_b13h_copay_other5_max | double | | | pbp_b13h_copay_other5_min | double | | | pbp_b13h_copay_other6_max | double | | | pbp_b13h_copay_other6_min | double | | | pbp_b13h_copay_other7_max | double | | | pbp_b13h_copay_other7_min | double | | | pbp_b13h_copay_other8_max | double | | | pbp_b13h_copay_other8_min | double | | | pbp_b13h_copay_other9_max | double | | | pbp_b13h_copay_other9_min | double | | | pbp_b13h_copay_pcs_max | double | | | pbp_b13h_copay_pcs_min | double | | | pbp_b13h_copay_pdns_max | double | | | pbp_b13h_copay_pdns_min | double | | | pbp_b13h_copay_rcs_max | double | | | pbp_b13h_copay_rcs_min | double | | | pbp_b13h_copay_sdpas_max | double | | | pbp_b13h_copay_sdpas_min | double | | | pbp_b13h_copay_tccpw_max | double | | | pbp_b13h_copay_tccpw_min | double | | | pbp_b13h_lim_unit_type_cm_lt_d | string | | | pbp_b13h_lim_unit_type_epsdt_d | string | | | pbp_b13h_lim_unit_type_icfmr_d | string | | | pbp_b13h_lim_unit_type_oth10_d | string | | | pbp_b13h_lim_unit_type_oth11_d | string | | | pbp_b13h_lim_unit_type_oth12_d | string | | | pbp_b13h_lim_unit_type_oth13_d | string | | | pbp_b13h_lim_unit_type_oth14_d | string | | | pbp_b13h_lim_unit_type_oth15_d | string | | | pbp_b13h_lim_unit_type_oth16_d | string | | | pbp_b13h_lim_unit_type_oth17_d | string | | | pbp_b13h_lim_unit_type_oth18_d | string | | | pbp_b13h_lim_unit_type_oth19_d | string | | | pbp_b13h_lim_unit_type_oth20_d | string | | | pbp_b13h_lim_unit_type_oth21_d | string | | | pbp_b13h_lim_unit_type_oth22_d | string | | | pbp_b13h_lim_unit_type_oth23_d | string | | | pbp_b13h_lim_unit_type_oth24_d | string | | | pbp_b13h_lim_unit_type_oth25_d | string | | | pbp_b13h_lim_unit_type_oth26_d | string | | | pbp_b13h_lim_unit_type_oth27_d | string | | | pbp_b13h_lim_unit_type_oth28_d | string | | | pbp_b13h_lim_unit_type_oth29_d | string | | | pbp_b13h_lim_unit_type_oth30_d | string | | | pbp_b13h_lim_unit_type_oth31_d | string | | | pbp_b13h_lim_unit_type_oth32_d | string | | | pbp_b13h_lim_unit_type_oth33_d | string | | | pbp_b13h_lim_unit_type_oth34_d | string | | | pbp_b13h_lim_unit_type_oth35_d | string | | | pbp_b13h_lim_unit_type_oth36_d | string | | | pbp_b13h_lim_unit_type_oth37_d | string | | | pbp_b13h_lim_unit_type_oth38_d | string | | | pbp_b13h_lim_unit_type_sdpas_d | string | | | pbp_b13h_lim_unit_type_tccpw_d | string | | | pbp_b13h_limit_services | string | | | pbp_b13h_limit_unit_num_cm | double | | | pbp_b13h_limit_unit_num_cm_lt | double | | | pbp_b13h_limit_unit_num_epsdt | double | | | pbp_b13h_limit_unit_num_fbcs | double | | | pbp_b13h_limit_unit_num_fps | double | | | pbp_b13h_limit_unit_num_hcbs | double | | | pbp_b13h_limit_unit_num_icfmr | double | | | pbp_b13h_limit_unit_num_imds | double | | | pbp_b13h_limit_unit_num_nhs | double | | | pbp_b13h_limit_unit_num_oth1 | double | | | pbp_b13h_limit_unit_num_oth10 | double | | | pbp_b13h_limit_unit_num_oth11 | double | | | pbp_b13h_limit_unit_num_oth12 | double | | | pbp_b13h_limit_unit_num_oth13 | double | | | pbp_b13h_limit_unit_num_oth14 | double | | | pbp_b13h_limit_unit_num_oth15 | double | | | pbp_b13h_limit_unit_num_oth16 | double | | | pbp_b13h_limit_unit_num_oth17 | double | | | pbp_b13h_limit_unit_num_oth18 | double | | | pbp_b13h_limit_unit_num_oth19 | double | | | pbp_b13h_limit_unit_num_oth2 | double | | | pbp_b13h_limit_unit_num_oth20 | double | | | pbp_b13h_limit_unit_num_oth21 | double | | | pbp_b13h_limit_unit_num_oth22 | double | | | pbp_b13h_limit_unit_num_oth23 | double | | | pbp_b13h_limit_unit_num_oth24 | double | | | pbp_b13h_limit_unit_num_oth25 | double | | | pbp_b13h_limit_unit_num_oth26 | double | | | pbp_b13h_limit_unit_num_oth27 | double | | | pbp_b13h_limit_unit_num_oth28 | double | | | pbp_b13h_limit_unit_num_oth29 | double | | | pbp_b13h_limit_unit_num_oth3 | double | | | pbp_b13h_limit_unit_num_oth30 | double | | | pbp_b13h_limit_unit_num_oth31 | double | | | pbp_b13h_limit_unit_num_oth32 | double | | | pbp_b13h_limit_unit_num_oth33 | double | | | pbp_b13h_limit_unit_num_oth34 | double | | | pbp_b13h_limit_unit_num_oth35 | double | | | pbp_b13h_limit_unit_num_oth36 | double | | | pbp_b13h_limit_unit_num_oth37 | double | | | pbp_b13h_limit_unit_num_oth38 | double | | | pbp_b13h_limit_unit_num_oth4 | double | | | pbp_b13h_limit_unit_num_oth5 | double | | | pbp_b13h_limit_unit_num_oth6 | double | | | pbp_b13h_limit_unit_num_oth7 | double | | | pbp_b13h_limit_unit_num_oth8 | double | | | pbp_b13h_limit_unit_num_oth9 | double | | | pbp_b13h_limit_unit_num_pcs | double | | | pbp_b13h_limit_unit_num_pdns | double | | | pbp_b13h_limit_unit_num_rcs | double | | | pbp_b13h_limit_unit_num_sdpas | double | | | pbp_b13h_limit_unit_num_tccpw | double | | | pbp_b13h_limit_unit_per_cm | string | | | pbp_b13h_limit_unit_per_cm_d | string | | | pbp_b13h_limit_unit_per_cm_lt | string | | | pbp_b13h_limit_unit_per_epsdt | string | | | pbp_b13h_limit_unit_per_fbcs | string | | | pbp_b13h_limit_unit_per_fbcs_d | string | | | pbp_b13h_limit_unit_per_fps | string | | | pbp_b13h_limit_unit_per_fps_d | string | | | pbp_b13h_limit_unit_per_hcbs | string | | | pbp_b13h_limit_unit_per_hcbs_d | string | | | pbp_b13h_limit_unit_per_icfmr | string | | | pbp_b13h_limit_unit_per_imds | string | | | pbp_b13h_limit_unit_per_imds_d | string | | | pbp_b13h_limit_unit_per_nhs | string | | | pbp_b13h_limit_unit_per_nhs_d | string | | | pbp_b13h_limit_unit_per_oth1 | string | | | pbp_b13h_limit_unit_per_oth10 | string | | | pbp_b13h_limit_unit_per_oth11 | string | | | pbp_b13h_limit_unit_per_oth12 | string | | | pbp_b13h_limit_unit_per_oth13 | string | | | pbp_b13h_limit_unit_per_oth14 | string | | | pbp_b13h_limit_unit_per_oth15 | string | | | pbp_b13h_limit_unit_per_oth16 | string | | | pbp_b13h_limit_unit_per_oth17 | string | | | pbp_b13h_limit_unit_per_oth18 | string | | | pbp_b13h_limit_unit_per_oth19 | string | | | pbp_b13h_limit_unit_per_oth1_d | string | | | pbp_b13h_limit_unit_per_oth2 | string | | | pbp_b13h_limit_unit_per_oth20 | string | | | pbp_b13h_limit_unit_per_oth21 | string | | | pbp_b13h_limit_unit_per_oth22 | string | | | pbp_b13h_limit_unit_per_oth23 | string | | | pbp_b13h_limit_unit_per_oth24 | string | | | pbp_b13h_limit_unit_per_oth25 | string | | | pbp_b13h_limit_unit_per_oth26 | string | | | pbp_b13h_limit_unit_per_oth27 | string | | | pbp_b13h_limit_unit_per_oth28 | string | | | pbp_b13h_limit_unit_per_oth29 | string | | | pbp_b13h_limit_unit_per_oth2_d | string | | | pbp_b13h_limit_unit_per_oth3 | string | | | pbp_b13h_limit_unit_per_oth30 | string | | | pbp_b13h_limit_unit_per_oth31 | string | | | pbp_b13h_limit_unit_per_oth32 | string | | | pbp_b13h_limit_unit_per_oth33 | string | | | pbp_b13h_limit_unit_per_oth34 | string | | | pbp_b13h_limit_unit_per_oth35 | string | | | pbp_b13h_limit_unit_per_oth36 | string | | | pbp_b13h_limit_unit_per_oth37 | string | | | pbp_b13h_limit_unit_per_oth38 | string | | | pbp_b13h_limit_unit_per_oth3_d | string | | | pbp_b13h_limit_unit_per_oth4 | string | | | pbp_b13h_limit_unit_per_oth4_d | string | | | pbp_b13h_limit_unit_per_oth5 | string | | | pbp_b13h_limit_unit_per_oth5_d | string | | | pbp_b13h_limit_unit_per_oth6 | string | | | pbp_b13h_limit_unit_per_oth6_d | string | | | pbp_b13h_limit_unit_per_oth7 | string | | | pbp_b13h_limit_unit_per_oth7_d | string | | | pbp_b13h_limit_unit_per_oth8 | string | | | pbp_b13h_limit_unit_per_oth8_d | string | | | pbp_b13h_limit_unit_per_oth9 | string | | | pbp_b13h_limit_unit_per_oth9_d | string | | | pbp_b13h_limit_unit_per_pcs | string | | | pbp_b13h_limit_unit_per_pcs_d | string | | | pbp_b13h_limit_unit_per_pdns | string | | | pbp_b13h_limit_unit_per_pdns_d | string | | | pbp_b13h_limit_unit_per_rcs | string | | | pbp_b13h_limit_unit_per_rcs_d | string | | | pbp_b13h_limit_unit_per_sdpas | string | | | pbp_b13h_limit_unit_per_tccpw | string | | | pbp_b13h_limit_unit_type_cm | string | | | pbp_b13h_limit_unit_type_cm_d | string | | | pbp_b13h_limit_unit_type_cm_lt | string | | | pbp_b13h_limit_unit_type_epsdt | string | | | pbp_b13h_limit_unit_type_fbcs | string | | | pbp_b13h_limit_unit_type_fps | string | | | pbp_b13h_limit_unit_type_fps_d | string | | | pbp_b13h_limit_unit_type_hcbs | string | | | pbp_b13h_limit_unit_type_icfmr | string | | | pbp_b13h_limit_unit_type_imds | string | | | pbp_b13h_limit_unit_type_nhs | string | | | pbp_b13h_limit_unit_type_nhs_d | string | | | pbp_b13h_limit_unit_type_oth1 | string | | | pbp_b13h_limit_unit_type_oth10 | string | | | pbp_b13h_limit_unit_type_oth11 | string | | | pbp_b13h_limit_unit_type_oth12 | string | | | pbp_b13h_limit_unit_type_oth13 | string | | | pbp_b13h_limit_unit_type_oth14 | string | | | pbp_b13h_limit_unit_type_oth15 | string | | | pbp_b13h_limit_unit_type_oth16 | string | | | pbp_b13h_limit_unit_type_oth17 | string | | | pbp_b13h_limit_unit_type_oth18 | string | | | pbp_b13h_limit_unit_type_oth19 | string | | | pbp_b13h_limit_unit_type_oth2 | string | | | pbp_b13h_limit_unit_type_oth20 | string | | | pbp_b13h_limit_unit_type_oth21 | string | | | pbp_b13h_limit_unit_type_oth22 | string | | | pbp_b13h_limit_unit_type_oth23 | string | | | pbp_b13h_limit_unit_type_oth24 | string | | | pbp_b13h_limit_unit_type_oth25 | string | | | pbp_b13h_limit_unit_type_oth26 | string | | | pbp_b13h_limit_unit_type_oth27 | string | | | pbp_b13h_limit_unit_type_oth28 | string | | | pbp_b13h_limit_unit_type_oth29 | string | | | pbp_b13h_limit_unit_type_oth3 | string | | | pbp_b13h_limit_unit_type_oth30 | string | | | pbp_b13h_limit_unit_type_oth31 | string | | | pbp_b13h_limit_unit_type_oth32 | string | | | pbp_b13h_limit_unit_type_oth33 | string | | | pbp_b13h_limit_unit_type_oth34 | string | | | pbp_b13h_limit_unit_type_oth35 | string | | | pbp_b13h_limit_unit_type_oth36 | string | | | pbp_b13h_limit_unit_type_oth37 | string | | | pbp_b13h_limit_unit_type_oth38 | string | | | pbp_b13h_limit_unit_type_oth4 | string | | | pbp_b13h_limit_unit_type_oth5 | string | | | pbp_b13h_limit_unit_type_oth6 | string | | | pbp_b13h_limit_unit_type_oth7 | string | | | pbp_b13h_limit_unit_type_oth8 | string | | | pbp_b13h_limit_unit_type_oth9 | string | | | pbp_b13h_limit_unit_type_pcs | string | | | pbp_b13h_limit_unit_type_pcs_d | string | | | pbp_b13h_limit_unit_type_pdns | string | | | pbp_b13h_limit_unit_type_rcs | string | | | pbp_b13h_limit_unit_type_rcs_d | string | | | pbp_b13h_limit_unit_type_sdpas | string | | | pbp_b13h_limit_unit_type_tccpw | string | | | pbp_b13h_limit_yn | string | | | pbp_b13h_limt_unit_per_cm_lt_d | string | | | pbp_b13h_limt_unit_per_epsdt_d | string | | | pbp_b13h_limt_unit_per_icfmr_d | string | | | pbp_b13h_limt_unit_per_oth10_d | string | | | pbp_b13h_limt_unit_per_oth11_d | string | | | pbp_b13h_limt_unit_per_oth12_d | string | | | pbp_b13h_limt_unit_per_oth13_d | string | | | pbp_b13h_limt_unit_per_oth14_d | string | | | pbp_b13h_limt_unit_per_oth15_d | string | | | pbp_b13h_limt_unit_per_oth16_d | string | | | pbp_b13h_limt_unit_per_oth17_d | string | | | pbp_b13h_limt_unit_per_oth18_d | string | | | pbp_b13h_limt_unit_per_oth19_d | string | | | pbp_b13h_limt_unit_per_oth20_d | string | | | pbp_b13h_limt_unit_per_oth21_d | string | | | pbp_b13h_limt_unit_per_oth22_d | string | | | pbp_b13h_limt_unit_per_oth23_d | string | | | pbp_b13h_limt_unit_per_oth24_d | string | | | pbp_b13h_limt_unit_per_oth25_d | string | | | pbp_b13h_limt_unit_per_oth26_d | string | | | pbp_b13h_limt_unit_per_oth27_d | string | | | pbp_b13h_limt_unit_per_oth28_d | string | | | pbp_b13h_limt_unit_per_oth29_d | string | | | pbp_b13h_limt_unit_per_oth30_d | string | | | pbp_b13h_limt_unit_per_oth31_d | string | | | pbp_b13h_limt_unit_per_oth32_d | string | | | pbp_b13h_limt_unit_per_oth33_d | string | | | pbp_b13h_limt_unit_per_oth34_d | string | | | pbp_b13h_limt_unit_per_oth35_d | string | | | pbp_b13h_limt_unit_per_oth36_d | string | | | pbp_b13h_limt_unit_per_oth37_d | string | | | pbp_b13h_limt_unit_per_oth38_d | string | | | pbp_b13h_limt_unit_per_sdpas_d | string | | | pbp_b13h_limt_unit_per_tccpw_d | string | | | pbp_b13h_limt_unit_type_fbcs_d | string | | | pbp_b13h_limt_unit_type_hcbs_d | string | | | pbp_b13h_limt_unit_type_imds_d | string | | | pbp_b13h_limt_unit_type_oth1_d | string | | | pbp_b13h_limt_unit_type_oth2_d | string | | | pbp_b13h_limt_unit_type_oth3_d | string | | | pbp_b13h_limt_unit_type_oth4_d | string | | | pbp_b13h_limt_unit_type_oth5_d | string | | | pbp_b13h_limt_unit_type_oth6_d | string | | | pbp_b13h_limt_unit_type_oth7_d | string | | | pbp_b13h_limt_unit_type_oth8_d | string | | | pbp_b13h_limt_unit_type_oth9_d | string | | | pbp_b13h_limt_unit_type_pdns_d | string | | | pbp_b13h_maxplan_cm_amt | double | | | pbp_b13h_maxplan_cm_ltc_amt | double | | | pbp_b13h_maxplan_cm_ltc_per | string | | | pbp_b13h_maxplan_cm_ltc_per_d | string | | | pbp_b13h_maxplan_cm_per | string | | | pbp_b13h_maxplan_cm_per_d | string | | | pbp_b13h_maxplan_epsdt_amt | double | | | pbp_b13h_maxplan_epsdt_per | string | | | pbp_b13h_maxplan_epsdt_per_d | string | | | pbp_b13h_maxplan_fbcs_amt | double | | | pbp_b13h_maxplan_fbcs_per | string | | | pbp_b13h_maxplan_fbcs_per_d | string | | | pbp_b13h_maxplan_fps_amt | double | | | pbp_b13h_maxplan_fps_per | string | | | pbp_b13h_maxplan_fps_per_d | string | | | pbp_b13h_maxplan_hcbs_amt | double | | | pbp_b13h_maxplan_hcbs_per | string | | | pbp_b13h_maxplan_hcbs_per_d | string | | | pbp_b13h_maxplan_icfmrs_amt | double | | | pbp_b13h_maxplan_icfmrs_per | string | | | pbp_b13h_maxplan_icfmrs_per_d | string | | | pbp_b13h_maxplan_imds_amt | double | | | pbp_b13h_maxplan_imds_per | string | | | pbp_b13h_maxplan_imds_per_d | string | | | pbp_b13h_maxplan_nhs_amt | double | | | pbp_b13h_maxplan_nhs_per | string | | | pbp_b13h_maxplan_nhs_per_d | string | | | pbp_b13h_maxplan_other10_amt | double | | | pbp_b13h_maxplan_other10_per | string | | | pbp_b13h_maxplan_other10_per_d | string | | | pbp_b13h_maxplan_other11_amt | double | | | pbp_b13h_maxplan_other11_per | string | | | pbp_b13h_maxplan_other11_per_d | string | | | pbp_b13h_maxplan_other12_amt | double | | | pbp_b13h_maxplan_other12_per | string | | | pbp_b13h_maxplan_other12_per_d | string | | | pbp_b13h_maxplan_other13_amt | double | | | pbp_b13h_maxplan_other13_per | string | | | pbp_b13h_maxplan_other13_per_d | string | | | pbp_b13h_maxplan_other14_amt | double | | | pbp_b13h_maxplan_other14_per | string | | | pbp_b13h_maxplan_other14_per_d | string | | | pbp_b13h_maxplan_other15_amt | double | | | pbp_b13h_maxplan_other15_per | string | | | pbp_b13h_maxplan_other15_per_d | string | | | pbp_b13h_maxplan_other16_amt | double | | | pbp_b13h_maxplan_other16_per | string | | | pbp_b13h_maxplan_other16_per_d | string | | | pbp_b13h_maxplan_other17_amt | double | | | pbp_b13h_maxplan_other17_per | string | | | pbp_b13h_maxplan_other17_per_d | string | | | pbp_b13h_maxplan_other18_amt | double | | | pbp_b13h_maxplan_other18_per | string | | | pbp_b13h_maxplan_other18_per_d | string | | | pbp_b13h_maxplan_other19_amt | double | | | pbp_b13h_maxplan_other19_per | string | | | pbp_b13h_maxplan_other19_per_d | string | | | pbp_b13h_maxplan_other1_amt | double | | | pbp_b13h_maxplan_other1_per | string | | | pbp_b13h_maxplan_other1_per_d | string | | | pbp_b13h_maxplan_other20_amt | double | | | pbp_b13h_maxplan_other20_per | string | | | pbp_b13h_maxplan_other20_per_d | string | | | pbp_b13h_maxplan_other21_amt | double | | | pbp_b13h_maxplan_other21_per | string | | | pbp_b13h_maxplan_other21_per_d | string | | | pbp_b13h_maxplan_other22_amt | double | | | pbp_b13h_maxplan_other22_per | string | | | pbp_b13h_maxplan_other22_per_d | string | | | pbp_b13h_maxplan_other23_amt | double | | | pbp_b13h_maxplan_other23_per | string | | | pbp_b13h_maxplan_other23_per_d | string | | | pbp_b13h_maxplan_other24_amt | double | | | pbp_b13h_maxplan_other24_per | string | | | pbp_b13h_maxplan_other24_per_d | string | | | pbp_b13h_maxplan_other25_amt | double | | | pbp_b13h_maxplan_other25_per | string | | | pbp_b13h_maxplan_other25_per_d | string | | | pbp_b13h_maxplan_other26_amt | double | | | pbp_b13h_maxplan_other26_per | string | | | pbp_b13h_maxplan_other26_per_d | string | | | pbp_b13h_maxplan_other27_amt | double | | | pbp_b13h_maxplan_other27_per | string | | | pbp_b13h_maxplan_other27_per_d | string | | | pbp_b13h_maxplan_other28_amt | double | | | pbp_b13h_maxplan_other28_per | string | | | pbp_b13h_maxplan_other28_per_d | string | | | pbp_b13h_maxplan_other29_amt | double | | | pbp_b13h_maxplan_other29_per | string | | | pbp_b13h_maxplan_other29_per_d | string | | | pbp_b13h_maxplan_other2_amt | double | | | pbp_b13h_maxplan_other2_per | string | | | pbp_b13h_maxplan_other2_per_d | string | | | pbp_b13h_maxplan_other30_amt | double | | | pbp_b13h_maxplan_other30_per | string | | | pbp_b13h_maxplan_other30_per_d | string | | | pbp_b13h_maxplan_other31_amt | double | | | pbp_b13h_maxplan_other31_per | string | | | pbp_b13h_maxplan_other31_per_d | string | | | pbp_b13h_maxplan_other32_amt | double | | | pbp_b13h_maxplan_other32_per | string | | | pbp_b13h_maxplan_other32_per_d | string | | | pbp_b13h_maxplan_other33_amt | double | | | pbp_b13h_maxplan_other33_per | string | | | pbp_b13h_maxplan_other33_per_d | string | | | pbp_b13h_maxplan_other34_amt | double | | | pbp_b13h_maxplan_other34_per | string | | | pbp_b13h_maxplan_other34_per_d | string | | | pbp_b13h_maxplan_other35_amt | double | | | pbp_b13h_maxplan_other35_per | string | | | pbp_b13h_maxplan_other35_per_d | string | | | pbp_b13h_maxplan_other36_amt | double | | | pbp_b13h_maxplan_other36_per | string | | | pbp_b13h_maxplan_other36_per_d | string | | | pbp_b13h_maxplan_other37_amt | double | | | pbp_b13h_maxplan_other37_per | string | | | pbp_b13h_maxplan_other37_per_d | string | | | pbp_b13h_maxplan_other38_amt | double | | | pbp_b13h_maxplan_other38_per | string | | | pbp_b13h_maxplan_other38_per_d | string | | | pbp_b13h_maxplan_other3_amt | double | | | pbp_b13h_maxplan_other3_per | string | | | pbp_b13h_maxplan_other3_per_d | string | | | pbp_b13h_maxplan_other4_amt | double | | | pbp_b13h_maxplan_other4_per | string | | | pbp_b13h_maxplan_other4_per_d | string | | | pbp_b13h_maxplan_other5_amt | double | | | pbp_b13h_maxplan_other5_per | string | | | pbp_b13h_maxplan_other5_per_d | string | | | pbp_b13h_maxplan_other6_amt | double | | | pbp_b13h_maxplan_other6_per | string | | | pbp_b13h_maxplan_other6_per_d | string | | | pbp_b13h_maxplan_other7_amt | double | | | pbp_b13h_maxplan_other7_per | string | | | pbp_b13h_maxplan_other7_per_d | string | | | pbp_b13h_maxplan_other8_amt | double | | | pbp_b13h_maxplan_other8_per | string | | | pbp_b13h_maxplan_other8_per_d | string | | | pbp_b13h_maxplan_other9_amt | double | | | pbp_b13h_maxplan_other9_per | string | | | pbp_b13h_maxplan_other9_per_d | string | | | pbp_b13h_maxplan_pcs_amt | double | | | pbp_b13h_maxplan_pcs_per | string | | | pbp_b13h_maxplan_pcs_per_d | string | | | pbp_b13h_maxplan_pdns_amt | double | | | pbp_b13h_maxplan_pdns_per | string | | | pbp_b13h_maxplan_pdns_per_d | string | | | pbp_b13h_maxplan_rcs_amt | double | | | pbp_b13h_maxplan_rcs_per | string | | | pbp_b13h_maxplan_rcs_per_d | string | | | pbp_b13h_maxplan_sdpas_amt | double | | | pbp_b13h_maxplan_sdpas_per | string | | | pbp_b13h_maxplan_sdpas_per_d | string | | | pbp_b13h_maxplan_services | string | | | pbp_b13h_maxplan_tccpw_amt | double | | | pbp_b13h_maxplan_tccpw_per | string | | | pbp_b13h_maxplan_tccpw_per_d | string | | | pbp_b13h_maxplan_yn | string | | | pbp_b13h_payamt | string | | | pbp_b13h_payamt_cm_ltc_max | double | | | pbp_b13h_payamt_cm_ltc_min | double | | | pbp_b13h_payamt_cm_max | double | | | pbp_b13h_payamt_cm_min | double | | | pbp_b13h_payamt_epsdt_max | double | | | pbp_b13h_payamt_epsdt_min | double | | | pbp_b13h_payamt_fbcs_max | double | | | pbp_b13h_payamt_fbcs_min | double | | | pbp_b13h_payamt_fps_max | double | | | pbp_b13h_payamt_fps_min | double | | | pbp_b13h_payamt_hcbs_max | double | | | pbp_b13h_payamt_hcbs_min | double | | | pbp_b13h_payamt_icfmrs_max | double | | | pbp_b13h_payamt_icfmrs_min | double | | | pbp_b13h_payamt_imds_max | double | | | pbp_b13h_payamt_imds_min | double | | | pbp_b13h_payamt_nhs_max | double | | | pbp_b13h_payamt_nhs_min | double | | | pbp_b13h_payamt_other10_max | double | | | pbp_b13h_payamt_other10_min | double | | | pbp_b13h_payamt_other11_max | double | | | pbp_b13h_payamt_other11_min | double | | | pbp_b13h_payamt_other12_max | double | | | pbp_b13h_payamt_other12_min | double | | | pbp_b13h_payamt_other13_max | double | | | pbp_b13h_payamt_other13_min | double | | | pbp_b13h_payamt_other14_max | double | | | pbp_b13h_payamt_other14_min | double | | | pbp_b13h_payamt_other15_max | double | | | pbp_b13h_payamt_other15_min | double | | | pbp_b13h_payamt_other16_max | double | | | pbp_b13h_payamt_other16_min | double | | | pbp_b13h_payamt_other17_max | double | | | pbp_b13h_payamt_other17_min | double | | | pbp_b13h_payamt_other18_max | double | | | pbp_b13h_payamt_other18_min | double | | | pbp_b13h_payamt_other19_max | double | | | pbp_b13h_payamt_other19_min | double | | | pbp_b13h_payamt_other1_max | double | | | pbp_b13h_payamt_other1_min | double | | | pbp_b13h_payamt_other20_max | double | | | pbp_b13h_payamt_other20_min | double | | | pbp_b13h_payamt_other21_max | double | | | pbp_b13h_payamt_other21_min | double | | | pbp_b13h_payamt_other22_max | double | | | pbp_b13h_payamt_other22_min | double | | | pbp_b13h_payamt_other23_max | double | | | pbp_b13h_payamt_other23_min | double | | | pbp_b13h_payamt_other24_max | double | | | pbp_b13h_payamt_other24_min | double | | | pbp_b13h_payamt_other25_max | double | | | pbp_b13h_payamt_other25_min | double | | | pbp_b13h_payamt_other26_max | double | | | pbp_b13h_payamt_other26_min | double | | | pbp_b13h_payamt_other27_max | double | | | pbp_b13h_payamt_other27_min | double | | | pbp_b13h_payamt_other28_max | double | | | pbp_b13h_payamt_other28_min | double | | | pbp_b13h_payamt_other29_max | double | | | pbp_b13h_payamt_other29_min | double | | | pbp_b13h_payamt_other2_max | double | | | pbp_b13h_payamt_other2_min | double | | | pbp_b13h_payamt_other30_max | double | | | pbp_b13h_payamt_other30_min | double | | | pbp_b13h_payamt_other31_max | double | | | pbp_b13h_payamt_other31_min | double | | | pbp_b13h_payamt_other32_max | double | | | pbp_b13h_payamt_other32_min | double | | | pbp_b13h_payamt_other33_max | double | | | pbp_b13h_payamt_other33_min | double | | | pbp_b13h_payamt_other34_max | double | | | pbp_b13h_payamt_other34_min | double | | | pbp_b13h_payamt_other35_max | double | | | pbp_b13h_payamt_other35_min | double | | | pbp_b13h_payamt_other36_max | double | | | pbp_b13h_payamt_other36_min | double | | | pbp_b13h_payamt_other37_max | double | | | pbp_b13h_payamt_other37_min | double | | | pbp_b13h_payamt_other38_max | double | | | pbp_b13h_payamt_other38_min | double | | | pbp_b13h_payamt_other3_max | double | | | pbp_b13h_payamt_other3_min | double | | | pbp_b13h_payamt_other4_max | double | | | pbp_b13h_payamt_other4_min | double | | | pbp_b13h_payamt_other5_max | double | | | pbp_b13h_payamt_other5_min | double | | | pbp_b13h_payamt_other6_max | double | | | pbp_b13h_payamt_other6_min | double | | | pbp_b13h_payamt_other7_max | double | | | pbp_b13h_payamt_other7_min | double | | | pbp_b13h_payamt_other8_max | double | | | pbp_b13h_payamt_other8_min | double | | | pbp_b13h_payamt_other9_max | double | | | pbp_b13h_payamt_other9_min | double | | | pbp_b13h_payamt_pcs_max | double | | | pbp_b13h_payamt_pcs_min | double | | | pbp_b13h_payamt_pdns_max | double | | | pbp_b13h_payamt_pdns_min | double | | | pbp_b13h_payamt_rcs_max | double | | | pbp_b13h_payamt_rcs_min | double | | | pbp_b13h_payamt_sdpas_max | double | | | pbp_b13h_payamt_sdpas_min | double | | | pbp_b13h_payamt_tccpw_max | double | | | pbp_b13h_payamt_tccpw_min | double | | | pbp_b13h_payamt_yn | string | | | pbp_b13h_ref_services | string | | | pbp_b13h_ref_yn | string | | | pbp_b13h_waiver | string | | | pbp_b13h_waiver_yn | 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 | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b13_other_services WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b13_other_services")` first. # MA pbp section b14 preventive `medicare_silver.pbp_section_b14_preventive` · Medicare Advantage, Part D, Medicaid · status partial Section B14: Preventive services. Widest single section (190 cols in 2026). **Grain.** One row per Medicare Advantage plan-segment per CMS quarterly PBP release. The MINIMAL verified-unique key is contract_id × plan_id × segment_id × report_year × quarter = 193,488 distinct = 193,488 total rows (exact). report_year may be swapped for effective_period_start (they are 1:1). Dropping quarter collapses to 106,175 (a plan-year appears in up to 4 quarterly snapshots), so quarter is required. version, bid_id, pbp_a_plan_type and the ~95 maxplan/_d columns the profiler appended are NOT needed and must not be added to the key. **How to use it.** To compare 2025 Medicare Advantage preventive cost-sharing across plans, pin a single snapshot and read the per-service copay/coins/cap columns: SELECT contract_id, plan_id, segment_id, pbp_a_plan_type, pbp_b14b_copay_amt_rpe_max AS routine_physical_copay, pbp_b14e_coins_pct_max_diab AS diabetes_screen_coins_pct, pbp_b14c_maxplan_amt_wig AS wig_annual_cap FROM medicare_silver.pbp_section_b14_preventive WHERE report_year=2025 AND quarter=1. This answers 'what does each MA plan charge an enrollee for a routine physical, a diabetes screening, and how much wig coverage it caps at' (observed: routine physical $0 median–$20 max; diabetes screening 20% median coins; wig cap $400 median–$1,000 max). **Traps.** - The profiler's reported 'grain' (~100 columns) is a massive SUPERSET — it just kept appending maxplan/_d columns until unique. The TRUE minimal grain is only 5 columns: contract_id, plan_id, segment_id, report_year, quarter. - quarter is a SNAPSHOT/release dimension, not a benefit attribute. The same plan-year is re-published in multiple quarterly CMS files (most visible 2018-2024 with Q1-Q4); rows across quarters are near-identical re-releases. For 'the plan's 2025 benefits' filter to ONE quarter (e.g. quarter=1) or you will multi-count plans. There is NO is_current / is_latest flag — you must pick the snapshot yourself (latest quarter, or quarter=1). - report_year, effective_period_start, effective_period_end and observed_period are all redundant: report_year = year(effective_period_start) for 100% of rows; start=Jan 1, end=Dec 31 of that year. asserted_at is the May-2026 ingestion/load date (NOT a benefit date) — never use it as the coverage period. - The 800+ pbp_b14* columns are SPARSE and layout-shifts by year: most specific copay/coins columns are NULL for any given plan/year (e.g. the b14b_ame_* copay columns are entirely null in 2025; only ~102 of ~392 cost columns are populated in 2025 Q1). NULL means 'benefit/field not applicable to this plan', not zero — and $0 (a real value, e.g. $0 preventive copay) is distinct from NULL. Always COUNT() non-nulls before averaging a sub-benefit column. - Codes use CMS PBP conventions, not booleans: yes/no fields (*_auth_yn, *_refer_yn) are 1=Yes, 2=No (NOT 1/0). orgtype and pbp_a_plan_type are 2-digit CMS plan-classification codes ('01'=HMO, '02'=local PPO, '04'=HMO-POS, '20'=PFFS, '31'=MSA...). bid_id is NULL and segment_id is '' for older years (pre-bid era / non-segmented plans) — both blanks are meaningful, not data errors. Years 2010 and 2011 are entirely absent from the table. - Cost columns come in _min / _max pairs and per-service tags (mhc=mental-health counseling, rat=transportation, bsd=bundled, sc/sce=smoking cessation, wig; bar=bone density, diab, glauc, ekg, dre). *_copay_*_amt = dollars, *_coins_*_pct = percent, *_maxplan_amt_ = annual plan-coverage dollar CAP (not a cost share). Don't mix amt vs pct vs maxplan when aggregating. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage / Part C contract number (e.g. 'H0150'). Part of the natural plan key. 1,966 distinct across history; 1,966 is NOT row-unique. Letter prefix encodes contract type (H=local MA, R=regional PPO, etc.). | | plan_id | string | 3-char plan number within the contract (e.g. '001','004'). Combined with contract_id+segment_id identifies a Plan Benefit Package. 656 distinct codes (reused across contracts, so not unique alone). | | segment_id | string | Plan segment (service-area split). Empty string '' for non-segmented plans (5,074 rows in full table) — blank is a real value meaning 'no segment', not missing. Part of the plan key. | | version | double | CMS within-cycle PBP submission/revision counter (double). Up to ~21-22 distinct values per report_year. NOT needed for grain uniqueness — the table is already deduped to one effective row per plan per quarterly release, so do not add version to the key. | | report_year | double | PBP contract/benefit year (double, 2001-2026). 100% equal to year(effective_period_start) — fully redundant with it. The primary time dimension. Note gaps: 2010 and 2011 are absent from the data. | | quarter | double | CMS quarterly RELEASE/snapshot number (1-4) within report_year. THIS is the snapshot disambiguator that makes the row unique: same plan-year reappears in multiple quarterly CMS re-releases. Most years have only Q1; 2018-2024 carry Q1-Q4. Plan counts barely change across quarters (re-publications, not new benefits). | | bid_id | string | CMS bid identifier (string). NULL for 8,316 older rows (pre-bid_id era, e.g. 2003). Supplemental provenance id, not part of the minimal grain. | | orgtype | string | CMS organization type code carried from PBP Section A (string, 9 distinct: '01'=local CCP/HMO dominant ~7,004/yr, '08','11','06','05','04','02'...). Classifies the contracting org. Descriptive filter dimension. | | pbp_a_ben_cov | string | Benefit-coverage indicator from Section A (string). '1'=Part C medical (Parts A+B benefits) — ~98% of rows; '2'=other; NULL for a few. Descriptive. | | pbp_a_plan_type | string | CMS plan-type code from Section A (string, 33 distinct: '01'=HMO, '02'=local PPO, '04'=HMO-POS/regional, '20'=PFFS, '31'=MSA, '18','48','09','07'...). Was appended to the profiler's bloated key but is functionally dependent on the plan, not a real grain component. | | pbp_b14a_auth | string | | | pbp_b14a_auth_yn | string | | | pbp_b14a_mc_prevent_attest | string | | | pbp_b14a_refer_yn | string | | | pbp_b14b_ace_coins_max_pct | double | | | pbp_b14b_ace_coins_min_pct | double | | | pbp_b14b_ame_coins_pct | double | | | pbp_b14b_ame_copay_amt | double | | | pbp_b14b_ape_coins_pct | double | | | pbp_b14b_ape_copay_amt | double | | | pbp_b14b_auth | string | | | pbp_b14b_auth_yn | string | | | pbp_b14b_bendesc_ace_amo | string | | | pbp_b14b_bendesc_ace_per | string | | | pbp_b14b_bendesc_ame_amo | string | | | pbp_b14b_bendesc_ame_per | string | | | pbp_b14b_bendesc_amo_pe | string | | | pbp_b14b_bendesc_amo_ps | string | | | pbp_b14b_bendesc_apr_amo | string | | | pbp_b14b_bendesc_apr_per | string | | | pbp_b14b_bendesc_ehc | string | | | pbp_b14b_bendesc_lim_ace_yn | string | | | pbp_b14b_bendesc_lim_ame_yn | string | | | pbp_b14b_bendesc_lim_apr_yn | string | | | pbp_b14b_bendesc_lim_pe_yn | string | | | pbp_b14b_bendesc_lim_ps_yn | string | | | pbp_b14b_bendesc_numace | double | | | pbp_b14b_bendesc_numame | double | | | pbp_b14b_bendesc_numapr | double | | | pbp_b14b_bendesc_numpe | double | | | pbp_b14b_bendesc_numps | double | | | pbp_b14b_bendesc_oi_amo | string | | | pbp_b14b_bendesc_pe_per | string | | | pbp_b14b_bendesc_ps_per | string | | | pbp_b14b_bendesc_rpe_amo | string | | | pbp_b14b_bendesc_rpe_lim_yn | string | | | pbp_b14b_bendesc_rpe_numv | double | | | pbp_b14b_bendesc_rpe_per | string | | | pbp_b14b_bendesc_yn | string | | | pbp_b14b_coins_ehc | string | | | pbp_b14b_coins_pct_maxoi | double | | | pbp_b14b_coins_pct_minoi | double | | | pbp_b14b_coins_pct_pap | double | | | pbp_b14b_coins_pct_pe | double | | | pbp_b14b_coins_pct_rpe | double | | | pbp_b14b_coins_pct_rpe_max | double | | | pbp_b14b_coins_pct_rpe_min | double | | | pbp_b14b_coins_yn | string | | | pbp_b14b_copay_ace_max_amt | double | | | pbp_b14b_copay_ace_min_amt | double | | | pbp_b14b_copay_amt_pap | double | | | pbp_b14b_copay_amt_pe | double | | | pbp_b14b_copay_amt_rpe | double | | | pbp_b14b_copay_amt_rpe_max | double | | | pbp_b14b_copay_amt_rpe_min | double | | | pbp_b14b_copay_ehc | string | | | pbp_b14b_copay_oi_max_amt | double | | | pbp_b14b_copay_oi_min_amt | double | | | pbp_b14b_copay_yn | string | | | pbp_b14b_cstshr_coins_ace_max | double | | | pbp_b14b_cstshr_coins_ace_min | double | | | pbp_b14b_cstshr_coins_ace_yn | string | | | pbp_b14b_cstshr_coins_ame_max | double | | | pbp_b14b_cstshr_coins_ame_min | double | | | pbp_b14b_cstshr_coins_ame_yn | string | | | pbp_b14b_cstshr_copay_ace_max | double | | | pbp_b14b_cstshr_copay_ace_min | double | | | pbp_b14b_cstshr_copay_ace_yn | string | | | pbp_b14b_cstshr_copay_ame_max | double | | | pbp_b14b_cstshr_copay_ame_min | double | | | pbp_b14b_cstshr_copay_ame_yn | string | | | pbp_b14b_cstshr_yn | string | | | pbp_b14b_ded_amt | double | | | pbp_b14b_ded_yn | string | | | pbp_b14b_maxenr_amt | double | | | pbp_b14b_maxenr_per | string | | | pbp_b14b_maxenr_yn | string | | | pbp_b14b_maxplan_amt | double | | | pbp_b14b_maxplan_per | string | | | pbp_b14b_maxplan_yn | string | | | pbp_b14b_refer_yn | string | | | pbp_b14c_at_visits | double | | | pbp_b14c_auth | string | | | pbp_b14c_auth_yn | string | | | pbp_b14c_bendesc_adcs | string | | | pbp_b14c_bendesc_amo_at | string | | | pbp_b14c_bendesc_amo_bsd | string | | | pbp_b14c_bendesc_amo_cs | string | | | pbp_b14c_bendesc_amo_edm | string | | | pbp_b14c_bendesc_amo_hec | string | | | pbp_b14c_bendesc_amo_imr | string | | | pbp_b14c_bendesc_amo_isa | string | | | pbp_b14c_bendesc_amo_mhc | string | | | pbp_b14c_bendesc_amo_mnt | string | | | pbp_b14c_bendesc_amo_nhl | string | | | pbp_b14c_bendesc_amo_ntb | string | | | pbp_b14c_bendesc_amo_prs | string | | | pbp_b14c_bendesc_amo_rat | string | | | pbp_b14c_bendesc_amo_rp | string | | | pbp_b14c_bendesc_amo_sc | string | | | pbp_b14c_bendesc_amo_tm | string | | | pbp_b14c_bendesc_amo_wig | string | | | pbp_b14c_bendesc_amo_wm | string | | | pbp_b14c_bendesc_amo_wpt | string | | | pbp_b14c_bendesc_dur_cs | string | | | pbp_b14c_bendesc_dur_ntb | string | | | pbp_b14c_bendesc_dur_num_cs | double | | | pbp_b14c_bendesc_ehc | string | | | pbp_b14c_bendesc_hbpc | string | | | pbp_b14c_bendesc_ihss | string | | | pbp_b14c_bendesc_lim_at | string | | | pbp_b14c_bendesc_lim_cs | string | | | pbp_b14c_bendesc_lim_ntb | string | | | pbp_b14c_bendesc_num_cs | double | | | pbp_b14c_bendesc_num_ntb | double | | | pbp_b14c_bendesc_sce | string | | | pbp_b14c_bendesc_thp_msg | string | | | pbp_b14c_bendesc_typ_mhc | string | | | pbp_b14c_bendesc_visit_num_sc | double | | | pbp_b14c_bendesc_yn | string | | | pbp_b14c_coins_ehc | string | | | pbp_b14c_coins_pct_edm | double | | | pbp_b14c_coins_pct_max_adcs | double | | | pbp_b14c_coins_pct_max_at | double | | | pbp_b14c_coins_pct_max_bsd | double | | | pbp_b14c_coins_pct_max_cs | double | | | pbp_b14c_coins_pct_max_edm | double | | | pbp_b14c_coins_pct_max_hbpc | double | | | pbp_b14c_coins_pct_max_hec | double | | | pbp_b14c_coins_pct_max_ihss | double | | | pbp_b14c_coins_pct_max_imr | double | | | pbp_b14c_coins_pct_max_isa | double | | | pbp_b14c_coins_pct_max_mhc | double | | | pbp_b14c_coins_pct_max_mnt | double | | | pbp_b14c_coins_pct_max_ntb | double | | | pbp_b14c_coins_pct_max_prs | double | | | pbp_b14c_coins_pct_max_rat | double | | | pbp_b14c_coins_pct_max_rat_nh | double | | | pbp_b14c_coins_pct_max_rat_wp | double | | | pbp_b14c_coins_pct_max_rp | double | | | pbp_b14c_coins_pct_max_sc | double | | | pbp_b14c_coins_pct_max_sce | double | | | pbp_b14c_coins_pct_max_thmg | double | | | pbp_b14c_coins_pct_max_tm | double | | | pbp_b14c_coins_pct_max_wig | double | | | pbp_b14c_coins_pct_max_wm | double | | | pbp_b14c_coins_pct_min_adcs | double | | | pbp_b14c_coins_pct_min_at | double | | | pbp_b14c_coins_pct_min_bsd | double | | | pbp_b14c_coins_pct_min_cs | double | | | pbp_b14c_coins_pct_min_edm | double | | | pbp_b14c_coins_pct_min_hbpc | double | | | pbp_b14c_coins_pct_min_hec | double | | | pbp_b14c_coins_pct_min_ihss | double | | | pbp_b14c_coins_pct_min_imr | double | | | pbp_b14c_coins_pct_min_isa | double | | | pbp_b14c_coins_pct_min_mhc | double | | | pbp_b14c_coins_pct_min_mnt | double | | | pbp_b14c_coins_pct_min_ntb | double | | | pbp_b14c_coins_pct_min_prs | double | | | pbp_b14c_coins_pct_min_rat | double | | | pbp_b14c_coins_pct_min_rat_nh | double | | | pbp_b14c_coins_pct_min_rat_wp | double | | | pbp_b14c_coins_pct_min_rp | double | | | pbp_b14c_coins_pct_min_sc | double | | | pbp_b14c_coins_pct_min_sce | double | | | pbp_b14c_coins_pct_min_thmg | double | | | pbp_b14c_coins_pct_min_tm | double | | | pbp_b14c_coins_pct_min_wig | double | | | pbp_b14c_coins_pct_min_wm | double | | | pbp_b14c_coins_pct_nhl | double | | | pbp_b14c_coins_pct_ntb | double | | | pbp_b14c_coins_pct_sc | double | | | pbp_b14c_coins_pct_tm | double | | | pbp_b14c_coins_pct_wpt | double | | | pbp_b14c_coins_yn | string | | | pbp_b14c_combined_ben | string | | | pbp_b14c_copay_at_max_amt | double | | | pbp_b14c_copay_at_min_amt | double | | | pbp_b14c_copay_bsd_max_amt | double | | | pbp_b14c_copay_bsd_min_amt | double | | | pbp_b14c_copay_cs_max_amt | double | | | pbp_b14c_copay_cs_min_amt | double | | | pbp_b14c_copay_edm_amt | double | | | pbp_b14c_copay_edm_max_amt | double | | | pbp_b14c_copay_edm_min_amt | double | | | pbp_b14c_copay_ehc | string | | | pbp_b14c_copay_hec_amt | double | | | pbp_b14c_copay_hec_max_amt | double | | | pbp_b14c_copay_hec_min_amt | double | | | pbp_b14c_copay_imr_max_amt | double | | | pbp_b14c_copay_imr_min_amt | double | | | pbp_b14c_copay_isa_max_amt | double | | | pbp_b14c_copay_isa_min_amt | double | | | pbp_b14c_copay_max_amt_adcs | double | | | pbp_b14c_copay_max_amt_hbpc | double | | | pbp_b14c_copay_max_amt_ihss | double | | | pbp_b14c_copay_max_amt_sce | double | | | pbp_b14c_copay_max_amt_thmg | double | | | pbp_b14c_copay_mhc_max_amt | double | | | pbp_b14c_copay_mhc_min_amt | double | | | pbp_b14c_copay_min_amt_adcs | double | | | pbp_b14c_copay_min_amt_hbpc | double | | | pbp_b14c_copay_min_amt_ihss | double | | | pbp_b14c_copay_min_amt_sce | double | | | pbp_b14c_copay_min_amt_thmg | double | | | pbp_b14c_copay_mnt_max_amt | double | | | pbp_b14c_copay_mnt_min_amt | double | | | pbp_b14c_copay_nhl_amt | double | | | pbp_b14c_copay_ntb_amt | double | | | pbp_b14c_copay_ntb_max_amt | double | | | pbp_b14c_copay_ntb_min_amt | double | | | pbp_b14c_copay_prs_max_amt | double | | | pbp_b14c_copay_prs_min_amt | double | | | pbp_b14c_copay_rat_max_amt | double | | | pbp_b14c_copay_rat_min_amt | double | | | pbp_b14c_copay_rat_nh_max_amt | double | | | pbp_b14c_copay_rat_nh_min_amt | double | | | pbp_b14c_copay_rat_wp_max_amt | double | | | pbp_b14c_copay_rat_wp_min_amt | double | | | pbp_b14c_copay_rp_max_amt | double | | | pbp_b14c_copay_rp_min_amt | double | | | pbp_b14c_copay_sc_amt | double | | | pbp_b14c_copay_sc_max_amt | double | | | pbp_b14c_copay_sc_min_amt | double | | | pbp_b14c_copay_tm_amt | double | | | pbp_b14c_copay_tm_max_amt | double | | | pbp_b14c_copay_tm_min_amt | double | | | pbp_b14c_copay_wig_max_amt | double | | | pbp_b14c_copay_wig_min_amt | double | | | pbp_b14c_copay_wm_max_amt | double | | | pbp_b14c_copay_wm_min_amt | double | | | pbp_b14c_copay_wpt_amt | double | | | pbp_b14c_copay_yn | string | | | pbp_b14c_ded_amt | double | | | pbp_b14c_ded_yn | string | | | pbp_b14c_maxenr_amt | double | | | pbp_b14c_maxenr_amt_adcs | double | | | pbp_b14c_maxenr_amt_at | double | | | pbp_b14c_maxenr_amt_bsd | double | | | pbp_b14c_maxenr_amt_cs | double | | | pbp_b14c_maxenr_amt_edm | double | | | pbp_b14c_maxenr_amt_hbpc | double | | | pbp_b14c_maxenr_amt_hec | double | | | pbp_b14c_maxenr_amt_ihss | double | | | pbp_b14c_maxenr_amt_imr | double | | | pbp_b14c_maxenr_amt_isa | double | | | pbp_b14c_maxenr_amt_mhc | double | | | pbp_b14c_maxenr_amt_mnt | double | | | pbp_b14c_maxenr_amt_ntb | double | | | pbp_b14c_maxenr_amt_prs | double | | | pbp_b14c_maxenr_amt_rat | double | | | pbp_b14c_maxenr_amt_rp | double | | | pbp_b14c_maxenr_amt_sc | double | | | pbp_b14c_maxenr_amt_sce | double | | | pbp_b14c_maxenr_amt_thmg | double | | | pbp_b14c_maxenr_amt_tm | double | | | pbp_b14c_maxenr_amt_wig | double | | | pbp_b14c_maxenr_amt_wm | double | | | pbp_b14c_maxenr_ehc | string | | | pbp_b14c_maxenr_per | string | | | pbp_b14c_maxenr_per_adcs | string | | | pbp_b14c_maxenr_per_adcs_d | string | | | pbp_b14c_maxenr_per_at | string | | | pbp_b14c_maxenr_per_at_d | string | | | pbp_b14c_maxenr_per_bsd | string | | | pbp_b14c_maxenr_per_bsd_d | string | | | pbp_b14c_maxenr_per_cs | string | | | pbp_b14c_maxenr_per_cs_d | string | | | pbp_b14c_maxenr_per_edm | string | | | pbp_b14c_maxenr_per_edm_d | string | | | pbp_b14c_maxenr_per_hbpc | string | | | pbp_b14c_maxenr_per_hbpc_d | string | | | pbp_b14c_maxenr_per_hec | string | | | pbp_b14c_maxenr_per_hec_d | string | | | pbp_b14c_maxenr_per_ihss | string | | | pbp_b14c_maxenr_per_ihss_d | string | | | pbp_b14c_maxenr_per_imr | string | | | pbp_b14c_maxenr_per_imr_d | string | | | pbp_b14c_maxenr_per_isa | string | | | pbp_b14c_maxenr_per_isa_d | string | | | pbp_b14c_maxenr_per_mhc | string | | | pbp_b14c_maxenr_per_mhc_d | string | | | pbp_b14c_maxenr_per_mnt | string | | | pbp_b14c_maxenr_per_mnt_d | string | | | pbp_b14c_maxenr_per_ntb | string | | | pbp_b14c_maxenr_per_ntb_d | string | | | pbp_b14c_maxenr_per_prs | string | | | pbp_b14c_maxenr_per_prs_d | string | | | pbp_b14c_maxenr_per_rat | string | | | pbp_b14c_maxenr_per_rat_d | string | | | pbp_b14c_maxenr_per_rp | string | | | pbp_b14c_maxenr_per_rp_d | string | | | pbp_b14c_maxenr_per_sc | string | | | pbp_b14c_maxenr_per_sc_d | string | | | pbp_b14c_maxenr_per_sce | string | | | pbp_b14c_maxenr_per_sce_d | string | | | pbp_b14c_maxenr_per_thmg | string | | | pbp_b14c_maxenr_per_thmg_d | string | | | pbp_b14c_maxenr_per_tm | string | | | pbp_b14c_maxenr_per_tm_d | string | | | pbp_b14c_maxenr_per_wig | string | | | pbp_b14c_maxenr_per_wig_d | string | | | pbp_b14c_maxenr_per_wm | string | | | pbp_b14c_maxenr_per_wm_d | string | | | pbp_b14c_maxenr_yn | string | | | pbp_b14c_maxplan_amt | double | | | pbp_b14c_maxplan_amt_adcs | double | | | pbp_b14c_maxplan_amt_at | double | | | pbp_b14c_maxplan_amt_bsd | double | | | pbp_b14c_maxplan_amt_cs | double | | | pbp_b14c_maxplan_amt_edm | double | | | pbp_b14c_maxplan_amt_hbpc | double | | | pbp_b14c_maxplan_amt_hec | double | | | pbp_b14c_maxplan_amt_ihss | double | | | pbp_b14c_maxplan_amt_imr | double | | | pbp_b14c_maxplan_amt_isa | double | | | pbp_b14c_maxplan_amt_mhc | double | | | pbp_b14c_maxplan_amt_mnt | double | | | pbp_b14c_maxplan_amt_ntb | double | | | pbp_b14c_maxplan_amt_prs | double | | | pbp_b14c_maxplan_amt_rat | double | | | pbp_b14c_maxplan_amt_rp | double | | | pbp_b14c_maxplan_amt_sc | double | | | pbp_b14c_maxplan_amt_sce | double | | | pbp_b14c_maxplan_amt_thms | double | | | pbp_b14c_maxplan_amt_tm | double | | | pbp_b14c_maxplan_amt_wig | double | | | pbp_b14c_maxplan_amt_wm | double | | | pbp_b14c_maxplan_ehc | string | | | pbp_b14c_maxplan_per | string | | | pbp_b14c_maxplan_per_adcs | string | | | pbp_b14c_maxplan_per_adcs_d | string | | | pbp_b14c_maxplan_per_at | string | | | pbp_b14c_maxplan_per_at_d | string | | | pbp_b14c_maxplan_per_bsd | string | | | pbp_b14c_maxplan_per_bsd_d | string | | | pbp_b14c_maxplan_per_cs | string | | | pbp_b14c_maxplan_per_cs_d | string | | | pbp_b14c_maxplan_per_edm | string | | | pbp_b14c_maxplan_per_edm_d | string | | | pbp_b14c_maxplan_per_hbpc | string | | | pbp_b14c_maxplan_per_hbpc_d | string | | | pbp_b14c_maxplan_per_hec | string | | | pbp_b14c_maxplan_per_hec_d | string | | | pbp_b14c_maxplan_per_ihss | string | | | pbp_b14c_maxplan_per_ihss_d | string | | | pbp_b14c_maxplan_per_imr | string | | | pbp_b14c_maxplan_per_imr_d | string | | | pbp_b14c_maxplan_per_isa | string | | | pbp_b14c_maxplan_per_isa_d | string | | | pbp_b14c_maxplan_per_mhc | string | | | pbp_b14c_maxplan_per_mhc_d | string | | | pbp_b14c_maxplan_per_mnt | string | | | pbp_b14c_maxplan_per_mnt_d | string | | | pbp_b14c_maxplan_per_ntb | string | | | pbp_b14c_maxplan_per_ntb_d | string | | | pbp_b14c_maxplan_per_prs | string | | | pbp_b14c_maxplan_per_prs_d | string | | | pbp_b14c_maxplan_per_rat | string | | | pbp_b14c_maxplan_per_rat_d | string | | | pbp_b14c_maxplan_per_rp | string | | | pbp_b14c_maxplan_per_rp_d | string | | | pbp_b14c_maxplan_per_sc | string | | | pbp_b14c_maxplan_per_sc_d | string | | | pbp_b14c_maxplan_per_sce | string | | | pbp_b14c_maxplan_per_sce_d | string | | | pbp_b14c_maxplan_per_thms | string | | | pbp_b14c_maxplan_per_thms_d | string | | | pbp_b14c_maxplan_per_tm | string | | | pbp_b14c_maxplan_per_tm_d | string | | | pbp_b14c_maxplan_per_wig | string | | | pbp_b14c_maxplan_per_wig_d | string | | | pbp_b14c_maxplan_per_wm | string | | | pbp_b14c_maxplan_per_wm_d | string | | | pbp_b14c_maxplan_yn | string | | | pbp_b14c_mnt_mcd_num | string | | | pbp_b14c_mnt_mcd_unit | string | | | pbp_b14c_mnt_mcd_unit_d | string | | | pbp_b14c_mnt_mcd_yn | string | | | pbp_b14c_mnt_nmcd_num | string | | | pbp_b14c_mnt_nmcd_unit | string | | | pbp_b14c_mnt_nmcd_yn | string | | | pbp_b14c_rat_bendesc_ehc | string | | | pbp_b14c_refer_yn | string | | | pbp_b14c_rp_bendesc_ehc | string | | | pbp_b14c_rp_bendesc_other | string | | | pbp_b14c_rp_days | double | | | pbp_b14c_rp_max_meals | double | | | pbp_b14c_rp_other_yn | string | | | pbp_b14c_sce_note | string | | | pbp_b14c_sce_type_chk | string | | | pbp_b14c_thp_msg_num_amt | double | | | pbp_b14c_thp_msg_period | string | | | pbp_b14c_thp_msg_period_d | string | | | pbp_b14c_thp_msg_unlimited | string | | | pbp_b14d_auth | string | | | pbp_b14d_auth_yn | string | | | pbp_b14d_coins_mc_max_pct | double | | | pbp_b14d_coins_mc_min_pct | double | | | pbp_b14d_coins_yn | string | | | pbp_b14d_copay_mc_max_amt | double | | | pbp_b14d_copay_mc_min_amt | double | | | pbp_b14d_copay_yn | string | | | pbp_b14d_ded_amt | double | | | pbp_b14d_ded_yn | string | | | pbp_b14d_maxenr_amt | double | | | pbp_b14d_maxenr_per | string | | | pbp_b14d_maxenr_per_d | string | | | pbp_b14d_maxenr_yn | string | | | pbp_b14d_refer_yn | string | | | pbp_b14e_auth | string | | | pbp_b14e_auth_diab | string | | | pbp_b14e_auth_glauc | string | | | pbp_b14e_auth_other1 | string | | | pbp_b14e_auth_other2 | string | | | pbp_b14e_auth_other3 | string | | | pbp_b14e_auth_other4 | string | | | pbp_b14e_auth_other5 | string | | | pbp_b14e_auth_yn_bar | string | | | pbp_b14e_auth_yn_diab | string | | | pbp_b14e_auth_yn_dre | string | | | pbp_b14e_auth_yn_ekg | string | | | pbp_b14e_auth_yn_glauc | string | | | pbp_b14e_auth_yn_other | string | | | pbp_b14e_coins_ehc | string | | | pbp_b14e_coins_max_pct | double | | | pbp_b14e_coins_pct | double | | | pbp_b14e_coins_pct_max_bar | double | | | pbp_b14e_coins_pct_max_diab | double | | | pbp_b14e_coins_pct_max_dre | double | | | pbp_b14e_coins_pct_max_ekg | double | | | pbp_b14e_coins_pct_max_glauc | double | | | pbp_b14e_coins_pct_max_other | double | | | pbp_b14e_coins_pct_max_other1 | double | | | pbp_b14e_coins_pct_max_other2 | double | | | pbp_b14e_coins_pct_max_other3 | double | | | pbp_b14e_coins_pct_max_other4 | double | | | pbp_b14e_coins_pct_max_other5 | double | | | pbp_b14e_coins_pct_min_bar | double | | | pbp_b14e_coins_pct_min_diab | double | | | pbp_b14e_coins_pct_min_dre | double | | | pbp_b14e_coins_pct_min_ekg | double | | | pbp_b14e_coins_pct_min_glauc | double | | | pbp_b14e_coins_pct_min_other | double | | | pbp_b14e_coins_pct_min_other1 | double | | | pbp_b14e_coins_pct_min_other2 | double | | | pbp_b14e_coins_pct_min_other3 | double | | | pbp_b14e_coins_pct_min_other4 | double | | | pbp_b14e_coins_pct_min_other5 | double | | | pbp_b14e_coins_yn | string | | | pbp_b14e_copay_amt_max_bar | double | | | pbp_b14e_copay_amt_max_diab | double | | | pbp_b14e_copay_amt_max_dre | double | | | pbp_b14e_copay_amt_max_ekg | double | | | pbp_b14e_copay_amt_max_glauc | double | | | pbp_b14e_copay_amt_max_other | double | | | pbp_b14e_copay_amt_max_other1 | double | | | pbp_b14e_copay_amt_max_other2 | double | | | pbp_b14e_copay_amt_max_other3 | double | | | pbp_b14e_copay_amt_max_other4 | double | | | pbp_b14e_copay_amt_max_other5 | double | | | pbp_b14e_copay_amt_min_bar | double | | | pbp_b14e_copay_amt_min_diab | double | | | pbp_b14e_copay_amt_min_dre | double | | | pbp_b14e_copay_amt_min_ekg | double | | | pbp_b14e_copay_amt_min_glauc | double | | | pbp_b14e_copay_amt_min_other | double | | | pbp_b14e_copay_amt_min_other1 | double | | | pbp_b14e_copay_amt_min_other2 | double | | | pbp_b14e_copay_amt_min_other3 | double | | | pbp_b14e_copay_amt_min_other4 | double | | | pbp_b14e_copay_amt_min_other5 | double | | | pbp_b14e_copay_ehc | string | | | pbp_b14e_copay_mc_max_amt | double | | | pbp_b14e_copay_mc_min_amt | double | | | pbp_b14e_copay_yn | string | | | pbp_b14e_cost_share | string | | | pbp_b14e_cost_share_coins_max | double | | | pbp_b14e_cost_share_coins_min | double | | | pbp_b14e_cost_share_coins_yn | string | | | pbp_b14e_cost_share_copay_max | double | | | pbp_b14e_cost_share_copay_min | double | | | pbp_b14e_cost_share_copay_yn | string | | | pbp_b14e_ded_amt | double | | | pbp_b14e_ded_amt_bar | double | | | pbp_b14e_ded_amt_diab | double | | | pbp_b14e_ded_amt_dre | double | | | pbp_b14e_ded_amt_ekg | double | | | pbp_b14e_ded_amt_glauc | double | | | pbp_b14e_ded_amt_other | double | | | pbp_b14e_ded_amt_other1 | double | | | pbp_b14e_ded_amt_other2 | double | | | pbp_b14e_ded_amt_other3 | double | | | pbp_b14e_ded_amt_other4 | double | | | pbp_b14e_ded_amt_other5 | double | | | pbp_b14e_ded_ehc | string | | | pbp_b14e_ded_yn | string | | | pbp_b14e_maxenr_amt | double | | | pbp_b14e_maxenr_amt_bar | double | | | pbp_b14e_maxenr_amt_diab | double | | | pbp_b14e_maxenr_amt_dre | double | | | pbp_b14e_maxenr_amt_ekg | double | | | pbp_b14e_maxenr_amt_glauc | double | | | pbp_b14e_maxenr_amt_other | double | | | pbp_b14e_maxenr_amt_other1 | double | | | pbp_b14e_maxenr_amt_other2 | double | | | pbp_b14e_maxenr_amt_other3 | double | | | pbp_b14e_maxenr_amt_other4 | double | | | pbp_b14e_maxenr_amt_other5 | double | | | pbp_b14e_maxenr_ehc | string | | | pbp_b14e_maxenr_per | string | | | pbp_b14e_maxenr_per_bar | string | | | pbp_b14e_maxenr_per_bar_d | string | | | pbp_b14e_maxenr_per_diab | string | | | pbp_b14e_maxenr_per_diab_d | string | | | pbp_b14e_maxenr_per_dre | string | | | pbp_b14e_maxenr_per_dre_d | string | | | pbp_b14e_maxenr_per_ekg | string | | | pbp_b14e_maxenr_per_ekg_d | string | | | pbp_b14e_maxenr_per_glauc | string | | | pbp_b14e_maxenr_per_glauc_d | string | | | pbp_b14e_maxenr_per_other | string | | | pbp_b14e_maxenr_per_other1 | string | | | pbp_b14e_maxenr_per_other2 | string | | | pbp_b14e_maxenr_per_other3 | string | | | pbp_b14e_maxenr_per_other4 | string | | | pbp_b14e_maxenr_per_other5 | string | | | pbp_b14e_maxenr_yn | string | | | pbp_b14e_other1_name | string | | | pbp_b14e_other2_name | string | | | pbp_b14e_other3_name | string | | | pbp_b14e_other4_name | string | | | pbp_b14e_other5_name | string | | | pbp_b14e_other_yn | string | | | pbp_b14e_others_ehc | string | | | pbp_b14e_refer_ehc | string | | | pbp_b14e_refer_yn | string | | | observed_period | date | Date = Jan 1 of report_year (the benefit-year start as observed). Redundant with effective_period_start in practice. | | asserted_at | date | Date Vlada ingested/asserted this snapshot (May 2026 batch). Q1 rows asserted 2026-05-16; Q2/Q3/Q4 rows asserted 2026-05-20. It is the load date, NOT a benefit date — do not confuse with effective period. | | effective_period_start | date | Date the benefit year begins = Jan 1 of report_year (profiler's chosen time_column; earliest 2001-01-01, latest 2026-01-01). 1:1 with report_year. | | effective_period_end | date | Date the benefit year ends = Dec 31 of report_year. Together with start gives the annual coverage window. | | cms_vintage_sequence | int | Internal ingestion ordering int (1-4). Loosely tracks quarter but NOT clean 1:1 (Q1 carries vintages 1, 2 and 4). Do not use as the snapshot key — use quarter. Used with cps+effstart it yields 186,188 (_min/max_amt ($), coins pct, and maxplan_amt_ = annual plan-coverage dollar cap (e.g. wig cap $400 median, $1,000 max; mental-health counseling copay $0-$250). Periodicity/yes-no/type sub-fields per service. | | pbp_b14d_* (77 cols) | | Subsection B-14d = Medicare-covered ('mc') preventive cost sharing where the plan DOES apply cost share. pbp_b14d_coins_mc_min/max_pct (percent) and pbp_b14d_copay_mc_min/max_amt (dollars). ~2,500-2,650 plans populate it in 2025. | | pbp_b14e_* (127 cols) | | Subsection B-14e = specific Medicare-covered preventive screenings with per-service cost share: tags bar=bone-mass/bone-density, diab=diabetes, glauc=glaucoma, ekg=EKG, dre=digital-rectal-exam. copay_amt_min/max_ ($) and coins_pct_min/max_ (%). E.g. diabetes screening $0 copay median, 20% coinsurance median (up to 35%). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b14_preventive WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b14_preventive")` first. # MA pbp section b15 partb rx drugs `medicare_silver.pbp_section_b15_partb_rx_drugs` · Medicare Advantage, Part D, Medicaid · status partial Section B15: Part B Rx drugs benefit detail. Drug-substrate join surface. Coverage: All years. **Grain.** One row per Medicare plan offering per benefit year per quarterly CMS PUF snapshot. Minimal verified key = contract_id × plan_id × segment_id × report_year × quarter (0 duplicate groups; 189,385 rows = the full count). bid_id is just contract_id||plan_id||segment_id concatenated, so it is interchangeable with those three. For a single 'one row per plan per year' view you must additionally collapse to the latest snapshot, e.g. MAX(quarter) per (contract_id,plan_id,segment_id,report_year) — that yields 102,072 plan-years. **How to use it.** Latest-snapshot Part B drug cost-share for current MA plans: SELECT contract_id, plan_id, mrx_b_auth_yn, mrx_b_coins_yn, mrx_b_step_tpy_yn, mrx_b_hi_yn, mrx_b_ira_coins_yn FROM medicare_silver.pbp_section_b15_partb_rx_drugs WHERE report_year=2026 AND quarter=1. Answers 'for each 2026 MA/MA-PD plan, does the Part B drug benefit require prior authorization / step therapy / coinsurance, and does it cover home-infusion and IRA-capped drugs?' To trend coinsurance %, restrict to report_year<=2017 (where mrx_b_coins_pct is populated) and always pick MAX(quarter) per plan-year to avoid snapshot double-counting. **Traps.** - DEAD COLUMNS: all 149 pbp_b15_* columns (grp1-5 tiers, coins/copay/ded/maxplan/bendesc/maxenr) are 100% NULL/empty across every one of the 189,385 rows — they are schema placeholders from a newer PBP layout that was never populated here. The only columns carrying data are the 53 mrx_b_* fields plus the id/plan-context/provenance columns. Do NOT build any analysis on a pbp_b15_* column. - SNAPSHOT DOUBLE-COUNTING: there is NO is_current column. A plan can appear up to 4 times in one report_year (once per quarterly CMS re-release: quarter 1-4, 1:1 with cms_vintage_sequence). Years 2018,2019,2020,2022,2023,2024 are multi-snapshot; the rest are single (quarter=1). Counting plans, averaging cost-share, or joining without first picking MAX(quarter)/MAX(cms_vintage_sequence) per (contract,plan,segment,report_year) inflates results ~1.85x overall. - SCHEMA-ERA SHIFT in populated fields: the detailed legacy cost-share numbers (mrx_b_coins_pct, mrx_b_chemo_*, min/max pct & dispensing fees) are populated ONLY 2008-2017 and go NULL from 2018 on. Conversely the IRA fields (mrx_b_ira_*) appear ONLY 2024+. mrx_b_auth_yn (prior-auth) is the one field present the whole 2008-2026 span. Trend queries on coinsurance % will silently break at 2018. - YN CONVENTION IS 1/2, NOT 1/0: every *_yn flag uses CMS coding '1'=Yes, '2'=No (stored as strings). Treating '2' as falsy-zero or summing them is wrong. Likewise coins_covbasis (1-10), coins_ehc (01/10/11), orgtype, and pbp_a_plan_type are CMS LOOKUP CODES needing the PBP data dictionary, not literal values. - NULL MOSTLY MEANS 'NOT APPLICABLE / NOT THIS MECHANISM', not zero: mrx_b_ded_amt is non-null on just 7 rows (all $131) and mrx_b_max_oop_amt on ~773 — a NULL deductible/OOP does not imply $0. mrx_b_coins_pct is NULL where the plan uses copay instead of coinsurance. - IDENTITY TRAPS: bid_id looks like a primary key but is a redundant concatenation of the three id columns; version looks temporal but is the per-bid revision number (scalar per row, not a snapshot). asserted_at has only 2 values (2026-05-16/20) — this is a one-time historical backfill, not a live feed, so 'latest asserted_at' is meaningless for currency; use report_year + quarter/vintage instead. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA/MA-PD contract number, e.g. 'H0028' (string). Part of the plan identity. First char encodes org type (H=local CCP, R=regional PPO, etc.). | | plan_id | string | Plan number within the contract, e.g. '001','034' (zero-padded string). contract_id + plan_id + segment_id identifies one Medicare plan offering. | | segment_id | string | Service-area segment, almost always '0' (string). Part of the plan identity; non-zero only for segmented plans. | | version | double | CMS PBP per-plan bid VERSION NUMBER (double, 1-27), one scalar value per row. This is the plan's bid-submission revision, NOT a temporal/snapshot version — every report_year contains a scattered range of values. Does NOT disambiguate the grain. | | report_year | double | Benefit/contract year the PBP describes (double, 2008.0-2026.0). The primary time dimension. Equals year of effective_period_start/observed_period. | | quarter | double | Which quarterly CMS PUF re-release the row came from (double, 1.0-4.0). 1:1 with cms_vintage_sequence. Most years have only quarter=1 (single annual release); 2018,2019,2020,2022,2023,2024 have multiple quarterly republications. This is the within-year snapshot disambiguator — part of the grain. | | bid_id | string | Derived convenience key = contract_id//'_'//plan_id//'_'//segment_id, e.g. 'H0028_001_0'. REDUNDANT with the three id columns (22,455 distinct = same as contract//plan//segment); not an independent dimension. | | mrx_b_auth_yn | string | Prior authorization required for Part B Rx drugs? CMS code '1'=Yes, '2'=No. The ONE substantive field populated across the full 2008-2026 history (~152K of 189K rows non-null). | | mrx_b_chemo_coins_amt_maacqcos | double | | | mrx_b_chemo_coins_awp_disc | double | | | mrx_b_chemo_coins_cov | string | | | mrx_b_chemo_coins_max_dispfee | double | | | mrx_b_chemo_coins_max_pct | double | | | mrx_b_chemo_coins_min_dispfee | double | | | mrx_b_chemo_coins_min_pct | double | | | mrx_b_chemo_coins_pct | double | | | mrx_b_chemo_coins_prp_disc | double | | | mrx_b_chemo_copay_amt | double | | | mrx_b_chemo_copay_amt_max | double | | | mrx_b_chemo_copay_amt_min | double | | | mrx_b_coins_amt_maacqcost | double | | | mrx_b_coins_awp_disc | double | | | mrx_b_coins_covbasis | string | | | mrx_b_coins_ehc | string | | | mrx_b_coins_max_dispfee | double | | | mrx_b_coins_max_pct | double | | | mrx_b_coins_min_dispfee | double | | | mrx_b_coins_min_pct | double | | | mrx_b_coins_pct | double | | | mrx_b_coins_prp_disc | double | | | mrx_b_coins_yn | string | | | mrx_b_copay_ehc | string | | | mrx_b_copay_max_amt | double | | | mrx_b_copay_min_amt | double | | | mrx_b_copay_yn | string | | | mrx_b_cost_share_attest | string | Plan attestation about Part B drug cost-sharing structure (newer field, ~36K rows, 2018+ era). | | mrx_b_ded_amt | double | Part B Rx deductible dollar amount. Extremely sparse — only 7 non-null rows, all $131 (a single year's Part B deductible). Effectively NULL across the table; do not treat absence as $0. | | mrx_b_ded_yn | string | | | mrx_b_hi_coins_pct_max | double | | | mrx_b_hi_coins_pct_min | double | | | mrx_b_hi_coins_yn | string | | | mrx_b_hi_copay_amt_max | double | | | mrx_b_hi_copay_amt_min | double | | | mrx_b_hi_copay_yn | string | | | mrx_b_hi_mcaid_yn | string | | | mrx_b_hi_yn | string | | | mrx_b_ira_coins_max_pct | double | | | mrx_b_ira_coins_min_pct | double | | | mrx_b_ira_coins_yn | string | | | mrx_b_ira_copay_amt_max | double | | | mrx_b_ira_copay_amt_min | double | | | mrx_b_ira_copay_month_amt | double | | | mrx_b_ira_copay_yn | string | | | mrx_b_ira_deduct_yn | string | | | mrx_b_max_oop_amt | double | | | mrx_b_max_oop_per | string | | | mrx_b_max_oop_per_d | string | | | mrx_b_max_oop_yn | string | | | mrx_b_step_tpy_yn | string | | | mrx_b_stp_tpy_chk | string | | | orgtype | string | CMS organization type code (string: '01' local CCP, '02','04','06','08','11'...). Correlates with pbp_a_plan_type and the contract_id prefix. | | pbp_a_ben_cov | string | Plan A-level benefit-coverage indicator (string, e.g. '1'). High-level plan context carried into this section. | | pbp_a_plan_type | string | CMS plan-type code (string): '01'=HMO (dominant, 94K), '04'=Local PPO (54K), '02'=HMO-POS (20K), '20'=PDP/employer, '09','31','18',... Most codes span all 19 years. | | observed_period | date | Date the benefit is observed for = Jan 1 of report_year (2008-01-01 ... 2026-01-01). Aligns with effective_period_start. Provenance/bookkeeping, not a separate grain dimension. | | asserted_at | date | Date this row was loaded/asserted into the silver table. Only two values (2026-05-16, 2026-05-20) — confirms a one-time historical backfill in May 2026, NOT a live/incremental feed. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer rank of the CMS source vintage within a report_year (1=first/Q1 release ... 4). 1:1 with quarter. Use MAX(cms_vintage_sequence) (= MAX(quarter)) per plan-year to get the latest restatement. | | parse_revision | int | | | parser_artifact_hash | string | | | source_url | string | CMS source ZIP the row was parsed from, e.g. .../pbp-pufs/pbp-benefits-2013.zip. One distinct file per report_year×quarter snapshot. | | sha256_content_hash | string | SHA-256 of the source file content. Varies per snapshot file, so (bid_id, report_year, sha256) is also unique — but it's a provenance fingerprint, not a semantic key. | | pbp_b15_addl_cost | string | | | pbp_b15_auth | string | | | pbp_b15_auth_nonform | string | | | pbp_b15_bendec_ehc_yn | string | | | pbp_b15_bendec_for | string | | | pbp_b15_bendec_nfor | string | | | pbp_b15_bendesc_amo | string | | | pbp_b15_bendesc_ehc_yn | string | | | pbp_b15_bendesc_for | string | | | pbp_b15_bendesc_nfor | string | | | pbp_b15_bendesc_nfor_med_yn | string | | | pbp_b15_bendesc_nfor_yn | string | | | pbp_b15_bendesc_yesno | string | | | pbp_b15_bendesc_yn | string | | | pbp_b15_bendesc_yn_nfor | string | | | pbp_b15_coins_cov_b | string | | | pbp_b15_coins_cov_fb | string | | | pbp_b15_coins_cov_fg | string | | | pbp_b15_coins_cov_fpb | string | | | pbp_b15_coins_cov_gen | string | | | pbp_b15_coins_cov_mc | string | | | pbp_b15_coins_cov_nfb | string | | | pbp_b15_coins_cov_nfg | string | | | pbp_b15_coins_cov_pb | string | | | pbp_b15_coins_fb_yn | string | | | pbp_b15_coins_fg_yn | string | | | pbp_b15_coins_fpb_yn | string | | | pbp_b15_coins_mc_cov | string | | | pbp_b15_coins_mc_yn | string | | | pbp_b15_coins_yesno | string | | | pbp_b15_coins_yn | string | | | pbp_b15_coins_yn_nfb | string | | | pbp_b15_coins_yn_nfg | string | | | pbp_b15_copay_add_fb_yn | string | | | pbp_b15_copay_add_nfb_yn | string | | | pbp_b15_copay_fb_yn | string | | | pbp_b15_copay_fg_yn | string | | | pbp_b15_copay_fpb_yn | string | | | pbp_b15_copay_mc_yn | string | | | pbp_b15_copay_nfb_yn | string | | | pbp_b15_copay_nfg_yn | string | | | pbp_b15_ded_cdt | string | | | pbp_b15_ded_yesno | string | | | pbp_b15_ded_yn | string | | | pbp_b15_deduct_cdt | string | | | pbp_b15_fb_place | string | | | pbp_b15_fg_place | string | | | pbp_b15_fpb_place | string | | | pbp_b15_grp1_coins_cov | string | | | pbp_b15_grp1_coins_yn | string | | | pbp_b15_grp1_copay_yn | string | | | pbp_b15_grp1_drug_types | string | | | pbp_b15_grp1_label | string | | | pbp_b15_grp1_maxplan_cov | string | | | pbp_b15_grp1_maxplan_per | string | | | pbp_b15_grp1_maxplan_yn | string | | | pbp_b15_grp1_place | string | | | pbp_b15_grp2_coins_cov | string | | | pbp_b15_grp2_coins_yn | string | | | pbp_b15_grp2_copay_yn | string | | | pbp_b15_grp2_drug_types | string | | | pbp_b15_grp2_label | string | | | pbp_b15_grp2_maxplan_cov | string | | | pbp_b15_grp2_maxplan_per | string | | | pbp_b15_grp2_maxplan_yn | string | | | pbp_b15_grp2_place | string | | | pbp_b15_grp3_coins_cov | string | | | pbp_b15_grp3_coins_yn | string | | | pbp_b15_grp3_copay_yn | string | | | pbp_b15_grp3_drug_types | string | | | pbp_b15_grp3_label | string | | | pbp_b15_grp3_maxplan_cov | string | | | pbp_b15_grp3_maxplan_per | string | | | pbp_b15_grp3_maxplan_yn | string | | | pbp_b15_grp3_place | string | | | pbp_b15_grp4_coins_cov | string | | | pbp_b15_grp4_coins_yn | string | | | pbp_b15_grp4_copay_yn | string | | | pbp_b15_grp4_drug_types | string | | | pbp_b15_grp4_label | string | | | pbp_b15_grp4_maxplan_cov | string | | | pbp_b15_grp4_maxplan_per | string | | | pbp_b15_grp4_maxplan_yn | string | | | pbp_b15_grp4_place | string | | | pbp_b15_grp5_coins_cov | string | | | pbp_b15_grp5_coins_yn | string | | | pbp_b15_grp5_copay_yn | string | | | pbp_b15_grp5_drug_types | string | | | pbp_b15_grp5_label | string | | | pbp_b15_grp5_maxplan_cov | string | | | pbp_b15_grp5_maxplan_per | string | | | pbp_b15_grp5_maxplan_yn | string | | | pbp_b15_grp5_place | string | | | pbp_b15_maxenr_cdt | string | | | pbp_b15_maxenr_per | string | | | pbp_b15_maxenr_yesno | string | | | pbp_b15_maxenr_yn | string | | | pbp_b15_maxplan1_yesno | string | | | pbp_b15_maxplan_cdt | string | | | pbp_b15_maxplan_cov_cdt | string | | | pbp_b15_maxplan_cov_fb | string | | | pbp_b15_maxplan_cov_fg | string | | | pbp_b15_maxplan_cov_fpb | string | | | pbp_b15_maxplan_cov_gen | string | | | pbp_b15_maxplan_cov_nfb | string | | | pbp_b15_maxplan_cov_nfg | string | | | pbp_b15_maxplan_cov_pb | string | | | pbp_b15_maxplan_fb_less_copay | string | | | pbp_b15_maxplan_fb_yn | string | | | pbp_b15_maxplan_fg_less_copay | string | | | pbp_b15_maxplan_fg_unlm | string | | | pbp_b15_maxplan_fg_yesno | string | | | pbp_b15_maxplan_fg_yn | string | | | pbp_b15_maxplan_fpb_less_copay | string | | | pbp_b15_maxplan_fpb_yesno | string | | | pbp_b15_maxplan_fpb_yn | string | | | pbp_b15_maxplan_gen_unlm | string | | | pbp_b15_maxplan_grp_unlm_yn | string | | | pbp_b15_maxplan_grp_waived | string | | | pbp_b15_maxplan_less_copay | string | | | pbp_b15_maxplan_net_copay_yn | string | | | pbp_b15_maxplan_nfb_less_copay | string | | | pbp_b15_maxplan_nfb_yn | string | | | pbp_b15_maxplan_nfg_less_copay | string | | | pbp_b15_maxplan_nfg_yn | string | | | pbp_b15_maxplan_per | string | | | pbp_b15_maxplan_per_cdt | string | | | pbp_b15_maxplan_per_cdt1 | string | | | pbp_b15_maxplan_per_fb | string | | | pbp_b15_maxplan_per_fbyn | string | | | pbp_b15_maxplan_per_fg | string | | | pbp_b15_maxplan_per_fgen | string | | | pbp_b15_maxplan_per_nfb | string | | | pbp_b15_maxplan_per_nfg | string | | | pbp_b15_maxplan_per_pb | string | | | pbp_b15_maxplan_types | string | | | pbp_b15_maxplan_unused_yn | string | | | pbp_b15_maxplan_us_yesno | string | | | pbp_b15_maxplan_yesno | string | | | pbp_b15_maxplan_yn | string | | | pbp_b15_maxplan_yn_nfb | string | | | pbp_b15_maxplan_yn_nfg | string | | | pbp_b15_nfb_place | string | | | pbp_b15_nfg_place | string | | | pbp_b15copay_fb_yn | string | | | pbp_b15copay_fgen_yn | string | | | pbp_b15copay_fpb_yn | string | | | pbp_b15copay_nfb_yn | string | | | pbp_b15copay_nfgen_yn | string | | | mrx_b_coins_yn / mrx_b_copay_yn / mrx_b_ded_yn / mrx_b_max_oop_yn | | Yes/No flags ('1'=Yes,'2'=No) for whether the Part B drug benefit applies coinsurance / copay / a deductible / a max-OOP. CMS 1/2 boolean convention (NOT 1/0). | | mrx_b_coins_pct (and *_max_pct/*_min_pct) | | Part B drug COINSURANCE percentage. Median 20.0 (standard Medicare Part B coinsurance), range 0-100. POPULATED ONLY 2008-2017 (~34K rows); NULL from 2018 onward when CMS dropped these detailed legacy fields. | | mrx_b_chemo_* (coins/copay) | | Cost-share specifically for Part B chemotherapy/anti-cancer drugs (coins pct, copay amt, dispensing-fee min/max). Same 2008-2017-only population pattern as the general coins fields (~34K). | | mrx_b_max_oop_amt / mrx_b_max_oop_per | | Max out-of-pocket dollar cap (0-6700) and its period. Only ~773 rows populated; mostly NULL. | | mrx_b_hi_yn / mrx_b_hi_coins_* / mrx_b_hi_copay_* / mrx_b_hi_mcaid_yn | | Home-Infusion (HI) drug cost-share block: whether covered ('1'/'2'), coinsurance pct min/max, copay min/max, and a Medicaid-coverage flag. mrx_b_hi_yn populated ~152K rows. | | mrx_b_ira_* (coins/copay/deduct, copay_month_amt) | | Inflation Reduction Act Part B drug provisions (e.g. capped insulin cost-share). NEW columns — populated ONLY 2024 onward (~23K rows). ira_*_yn use '1'/'2'. mrx_b_ira_copay_month_amt is the monthly capped copay. | | mrx_b_step_tpy_yn / mrx_b_stp_tpy_chk | | Step-therapy required for Part B drugs? '1'/'2'. step_tpy_yn populated ~86K rows. | | mrx_b_coins_covbasis / mrx_b_coins_ehc / mrx_b_copay_ehc | | CMS lookup codes describing the coinsurance coverage basis (values 1-10) and 'enhanced/EHC' coverage indicator (01/10/11). Coded values, not free text; require the CMS PBP data dictionary to interpret. | | pbp_b15_* (149 columns: grp1-5_*, coins_*, copay_*, ded_*, maxplan_*, maxenr_*, bendesc_*, auth_*, place_*, etc.) | | The MODERN PBP B-15 layout (drug-group tiers grp1-grp5 with labels/drug_types/copay/coins/max-plan-coverage, formulary/non-formulary brand/generic cost-share, plan-coverage maxima). ENTIRELY NULL/EMPTY in this dataset — every one of the 149 pbp_b15_* columns has 0 non-null values across all 189,385 rows. Schema placeholders only; carry no information here. | | effective_period_start / effective_period_end | | Benefit-year validity window: Jan 1 to Dec 31 of report_year. effective_period_start is the profiler's designated time_column (annual). | | parse_revision / parser_artifact_hash | | Internal ETL provenance: parser revision number and a hash of the parser artifact used to extract the row. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b15_partb_rx_drugs WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b15_partb_rx_drugs")` first. # PBP Section B16 — Dental (silver) `medicare_silver.pbp_section_b16_dental` · Medicare Advantage, Part D, Medicaid · status partial Medicare Plan Benefit Package (PBP) Section B16 dental-benefit silver table, built by pipelines/medicare/ingest/pbp_runner.py from the CMS PBP SAS source into a medicare_silver Iceberg table. This is the exact source surface the PBP benefit tools read for this section; the entry catalogues table identity only, not benefit semantics. **Grain.** One row per (contract_id, plan_id, segment_id, version, report_year, quarter) PBP segment record. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | bid_id | string | | | orgtype | string | | | pbp_a_ben_cov | string | | | pbp_a_plan_type | string | | | pbp_b16a_auth | string | | | pbp_b16a_auth_mc_yn | string | | | pbp_b16a_auth_pos | string | | | pbp_b16a_auth_yn | string | | | pbp_b16a_bendec_ehc | string | | | pbp_b16a_bendesc_amo_dx | string | | | pbp_b16a_bendesc_amo_ft | string | | | pbp_b16a_bendesc_amo_oe | string | | | pbp_b16a_bendesc_amo_pc | string | | | pbp_b16a_bendesc_ehc | string | | | pbp_b16a_bendesc_lim_dx | string | | | pbp_b16a_bendesc_lim_ft | string | | | pbp_b16a_bendesc_lim_oe | string | | | pbp_b16a_bendesc_lim_pc | string | | | pbp_b16a_bendesc_numv_dx | double | | | pbp_b16a_bendesc_numv_ft | double | | | pbp_b16a_bendesc_numv_oe | double | | | pbp_b16a_bendesc_numv_pc | double | | | pbp_b16a_bendesc_per_dx | string | | | pbp_b16a_bendesc_per_dx_d | string | | | pbp_b16a_bendesc_per_ft | string | | | pbp_b16a_bendesc_per_ft_d | string | | | pbp_b16a_bendesc_per_oe | string | | | pbp_b16a_bendesc_per_oe_d | string | | | pbp_b16a_bendesc_per_pc | string | | | pbp_b16a_bendesc_per_pc_d | string | | | pbp_b16a_bendesc_yesno | string | | | pbp_b16a_bendesc_yn | string | | | pbp_b16a_coins_cov__pos | string | | | pbp_b16a_coins_cov_dx | string | | | pbp_b16a_coins_cov_ft | string | | | pbp_b16a_coins_cov_oe | string | | | pbp_b16a_coins_cov_pc | string | | | pbp_b16a_coins_cov_sc_pov | string | | | pbp_b16a_coins_cserv_sc_pov | string | | | pbp_b16a_coins_cserv_sc_pov_yn | string | | | pbp_b16a_coins_ehc | string | | | pbp_b16a_coins_mc_pct | double | | | pbp_b16a_coins_mc_pct_max | double | | | pbp_b16a_coins_mc_pct_min | double | | | pbp_b16a_coins_mc_yn | string | | | pbp_b16a_coins_pct_dx | double | | | pbp_b16a_coins_pct_ft | double | | | pbp_b16a_coins_pct_maxdx | double | | | pbp_b16a_coins_pct_maxft | double | | | pbp_b16a_coins_pct_maxoe | double | | | pbp_b16a_coins_pct_maxov | double | | | pbp_b16a_coins_pct_maxpc | double | | | pbp_b16a_coins_pct_minov | double | | | pbp_b16a_coins_pct_oe | double | | | pbp_b16a_coins_pct_ov | double | | | pbp_b16a_coins_pct_pc | double | | | pbp_b16a_coins_pct_pos | double | | | pbp_b16a_coins_pctmax_pos | double | | | pbp_b16a_coins_yesno | string | | | pbp_b16a_coins_yesno_pos | string | | | pbp_b16a_coins_yn | string | | | pbp_b16a_copay_amt_dxmax | double | | | pbp_b16a_copay_amt_dxmin | double | | | pbp_b16a_copay_amt_ftmax | double | | | pbp_b16a_copay_amt_ftmin | double | | | pbp_b16a_copay_amt_oemax | double | | | pbp_b16a_copay_amt_oemin | double | | | pbp_b16a_copay_amt_ovmax | double | | | pbp_b16a_copay_amt_ovmin | double | | | pbp_b16a_copay_amt_pcmax | double | | | pbp_b16a_copay_amt_pcmin | double | | | pbp_b16a_copay_cserv_sc_pov | string | | | pbp_b16a_copay_cserv_sc_pov_yn | string | | | pbp_b16a_copay_ehc | string | | | pbp_b16a_copay_maxamt_pos | double | | | pbp_b16a_copay_mc_amt | double | | | pbp_b16a_copay_mc_amt_max | double | | | pbp_b16a_copay_mc_amt_min | double | | | pbp_b16a_copay_mc_yn | string | | | pbp_b16a_copay_minamt_pos | double | | | pbp_b16a_copay_ov_amt | double | | | pbp_b16a_copay_yesno | string | | | pbp_b16a_copay_yesno_pos | string | | | pbp_b16a_copay_yn | string | | | pbp_b16a_ded_amt | double | | | pbp_b16a_ded_amt_pos | double | | | pbp_b16a_ded_mc_amt | double | | | pbp_b16a_ded_mc_yn | string | | | pbp_b16a_ded_yesno | string | | | pbp_b16a_ded_yesno_pos | string | | | pbp_b16a_ded_yn | string | | | pbp_b16a_maxenr_amt | double | | | pbp_b16a_maxenr_amt_pos | double | | | pbp_b16a_maxenr_mc_amt | double | | | pbp_b16a_maxenr_mc_per | string | | | pbp_b16a_maxenr_mc_per_desc | string | | | pbp_b16a_maxenr_mc_yn | string | | | pbp_b16a_maxenr_per | string | | | pbp_b16a_maxenr_per_desc | string | | | pbp_b16a_maxenr_yesno | string | | | pbp_b16a_maxenr_yn | string | | | pbp_b16a_maxenr_yn_pos | string | | | pbp_b16a_maxplan_amt | double | | | pbp_b16a_maxplan_cov | string | | | pbp_b16a_maxplan_in_oon | string | | | pbp_b16a_maxplan_per | string | | | pbp_b16a_maxplan_per_desc | string | | | pbp_b16a_maxplan_yesno | string | | | pbp_b16a_maxplan_yesno_pos | string | | | pbp_b16a_maxplan_yn | string | | | pbp_b16a_maxpln_amt_pos | double | | | pbp_b16a_maxpln_cov_pos | string | | | pbp_b16a_maxpln_per_pos | string | | | pbp_b16a_refer_mc_yn | string | | | pbp_b16a_refer_yn | string | | | pbp_b16b_auth | string | | | pbp_b16b_auth_dx_yn | string | | | pbp_b16b_auth_ft_yn | string | | | pbp_b16b_auth_ods_yn | string | | | pbp_b16b_auth_oe_yn | string | | | pbp_b16b_auth_ops_yn | string | | | pbp_b16b_auth_pc_yn | string | | | pbp_b16b_auth_pos | string | | | pbp_b16b_auth_yn | string | | | pbp_b16b_bendec_ehc | string | | | pbp_b16b_bendesc_amo_ds | string | | | pbp_b16b_bendesc_amo_end | string | | | pbp_b16b_bendesc_amo_epe | string | | | pbp_b16b_bendesc_amo_es | string | | | pbp_b16b_bendesc_amo_ext | string | | | pbp_b16b_bendesc_amo_peri | string | | | pbp_b16b_bendesc_amo_poo | string | | | pbp_b16b_bendesc_amo_rs | string | | | pbp_b16b_bendesc_dx_amo | string | | | pbp_b16b_bendesc_dx_desc | string | | | pbp_b16b_bendesc_dx_lim | string | | | pbp_b16b_bendesc_dx_num | double | | | pbp_b16b_bendesc_dx_per | string | | | pbp_b16b_bendesc_ehc | string | | | pbp_b16b_bendesc_ft_amo | string | | | pbp_b16b_bendesc_ft_desc | string | | | pbp_b16b_bendesc_ft_lim | string | | | pbp_b16b_bendesc_ft_num | double | | | pbp_b16b_bendesc_ft_per | string | | | pbp_b16b_bendesc_lim_ds | string | | | pbp_b16b_bendesc_lim_end | string | | | pbp_b16b_bendesc_lim_epe | string | | | pbp_b16b_bendesc_lim_es | string | | | pbp_b16b_bendesc_lim_ext | string | | | pbp_b16b_bendesc_lim_peri | string | | | pbp_b16b_bendesc_lim_poo | string | | | pbp_b16b_bendesc_lim_rs | string | | | pbp_b16b_bendesc_num_end | double | | | pbp_b16b_bendesc_num_ext | double | | | pbp_b16b_bendesc_num_peri | double | | | pbp_b16b_bendesc_numv_ds | double | | | pbp_b16b_bendesc_numv_epe | double | | | pbp_b16b_bendesc_numv_es | double | | | pbp_b16b_bendesc_numv_poo | double | | | pbp_b16b_bendesc_numv_rs | double | | | pbp_b16b_bendesc_ods_amo | string | | | pbp_b16b_bendesc_ods_desc | string | | | pbp_b16b_bendesc_ods_lim | string | | | pbp_b16b_bendesc_ods_num | double | | | pbp_b16b_bendesc_ods_per | string | | | pbp_b16b_bendesc_oe_amo | string | | | pbp_b16b_bendesc_oe_desc | string | | | pbp_b16b_bendesc_oe_lim | string | | | pbp_b16b_bendesc_oe_num | double | | | pbp_b16b_bendesc_oe_per | string | | | pbp_b16b_bendesc_ops_amo | string | | | pbp_b16b_bendesc_ops_desc | string | | | pbp_b16b_bendesc_ops_lim | string | | | pbp_b16b_bendesc_ops_num | double | | | pbp_b16b_bendesc_ops_per | string | | | pbp_b16b_bendesc_pc_amo | string | | | pbp_b16b_bendesc_pc_desc | string | | | pbp_b16b_bendesc_pc_lim | string | | | pbp_b16b_bendesc_pc_num | double | | | pbp_b16b_bendesc_pc_per | string | | | pbp_b16b_bendesc_per_ds | string | | | pbp_b16b_bendesc_per_ds_d | string | | | pbp_b16b_bendesc_per_end | string | | | pbp_b16b_bendesc_per_end_d | string | | | pbp_b16b_bendesc_per_epe | string | | | pbp_b16b_bendesc_per_es | string | | | pbp_b16b_bendesc_per_es_d | string | | | pbp_b16b_bendesc_per_ext | string | | | pbp_b16b_bendesc_per_ext_d | string | | | pbp_b16b_bendesc_per_peri | string | | | pbp_b16b_bendesc_per_peri_d | string | | | pbp_b16b_bendesc_per_poo | string | | | pbp_b16b_bendesc_per_poo_d | string | | | pbp_b16b_bendesc_per_rs | string | | | pbp_b16b_bendesc_per_rs_d | string | | | pbp_b16b_bendesc_yesno | string | | | pbp_b16b_bendesc_yn | string | | | pbp_b16b_coins_cov__pos | string | | | pbp_b16b_coins_cov_ds | string | | | pbp_b16b_coins_cov_epe | string | | | pbp_b16b_coins_cov_es | string | | | pbp_b16b_coins_cov_mc | string | | | pbp_b16b_coins_cov_poo | string | | | pbp_b16b_coins_cov_rs | string | | | pbp_b16b_coins_dx_pct | double | | | pbp_b16b_coins_dx_pct_max | double | | | pbp_b16b_coins_dx_pct_min | double | | | pbp_b16b_coins_dx_yn | string | | | pbp_b16b_coins_ehc | string | | | pbp_b16b_coins_ft_pct | double | | | pbp_b16b_coins_ft_pct_max | double | | | pbp_b16b_coins_ft_pct_min | double | | | pbp_b16b_coins_ft_yn | string | | | pbp_b16b_coins_ods_pct | double | | | pbp_b16b_coins_ods_pct_max | double | | | pbp_b16b_coins_ods_pct_min | double | | | pbp_b16b_coins_ods_yn | string | | | pbp_b16b_coins_oe_pct | double | | | pbp_b16b_coins_oe_pct_max | double | | | pbp_b16b_coins_oe_pct_min | double | | | pbp_b16b_coins_oe_yn | string | | | pbp_b16b_coins_ops_pct | double | | | pbp_b16b_coins_ops_pct_max | double | | | pbp_b16b_coins_ops_pct_min | double | | | pbp_b16b_coins_ops_yn | string | | | pbp_b16b_coins_ov_pct | double | | | pbp_b16b_coins_ov_pct_max | double | | | pbp_b16b_coins_ov_pct_min | double | | | pbp_b16b_coins_ov_svcs | string | | | pbp_b16b_coins_ov_yn | string | | | pbp_b16b_coins_pc_pct | double | | | pbp_b16b_coins_pc_pct_max | double | | | pbp_b16b_coins_pc_pct_min | double | | | pbp_b16b_coins_pc_yn | string | | | pbp_b16b_coins_pct_ds | double | | | pbp_b16b_coins_pct_ds_max | double | | | pbp_b16b_coins_pct_ds_min | double | | | pbp_b16b_coins_pct_end_max | double | | | pbp_b16b_coins_pct_end_min | double | | | pbp_b16b_coins_pct_epe | double | | | pbp_b16b_coins_pct_es | double | | | pbp_b16b_coins_pct_es_max | double | | | pbp_b16b_coins_pct_es_min | double | | | pbp_b16b_coins_pct_ext_max | double | | | pbp_b16b_coins_pct_ext_min | double | | | pbp_b16b_coins_pct_max_mc | double | | | pbp_b16b_coins_pct_maxds | double | | | pbp_b16b_coins_pct_maxepe | double | | | pbp_b16b_coins_pct_maxes | double | | | pbp_b16b_coins_pct_maxpoo | double | | | pbp_b16b_coins_pct_maxrs | double | | | pbp_b16b_coins_pct_mc | double | | | pbp_b16b_coins_pct_mc_max | double | | | pbp_b16b_coins_pct_mc_min | double | | | pbp_b16b_coins_pct_peri_max | double | | | pbp_b16b_coins_pct_peri_min | double | | | pbp_b16b_coins_pct_poo | double | | | pbp_b16b_coins_pct_poo_max | double | | | pbp_b16b_coins_pct_poo_min | double | | | pbp_b16b_coins_pct_pos | double | | | pbp_b16b_coins_pct_rs | double | | | pbp_b16b_coins_pct_rs_max | double | | | pbp_b16b_coins_pct_rs_min | double | | | pbp_b16b_coins_pctmax_mc | double | | | pbp_b16b_coins_pctmax_pos | double | | | pbp_b16b_coins_yesno | string | | | pbp_b16b_coins_yesno_pos | string | | | pbp_b16b_coins_yn | string | | | pbp_b16b_copay_amt_ds_max | double | | | pbp_b16b_copay_amt_ds_min | double | | | pbp_b16b_copay_amt_dsmax | double | | | pbp_b16b_copay_amt_dsmin | double | | | pbp_b16b_copay_amt_end_max | double | | | pbp_b16b_copay_amt_end_min | double | | | pbp_b16b_copay_amt_epemax | double | | | pbp_b16b_copay_amt_epemin | double | | | pbp_b16b_copay_amt_es_max | double | | | pbp_b16b_copay_amt_es_min | double | | | pbp_b16b_copay_amt_esmax | double | | | pbp_b16b_copay_amt_esmin | double | | | pbp_b16b_copay_amt_ext_max | double | | | pbp_b16b_copay_amt_ext_min | double | | | pbp_b16b_copay_amt_mc_max | double | | | pbp_b16b_copay_amt_mc_min | double | | | pbp_b16b_copay_amt_peri_max | double | | | pbp_b16b_copay_amt_peri_min | double | | | pbp_b16b_copay_amt_poo_max | double | | | pbp_b16b_copay_amt_poo_min | double | | | pbp_b16b_copay_amt_poomax | double | | | pbp_b16b_copay_amt_poomin | double | | | pbp_b16b_copay_amt_rs_max | double | | | pbp_b16b_copay_amt_rs_min | double | | | pbp_b16b_copay_amt_rsmax | double | | | pbp_b16b_copay_amt_rsmin | double | | | pbp_b16b_copay_dx_amt | double | | | pbp_b16b_copay_dx_amt_max | double | | | pbp_b16b_copay_dx_amt_min | double | | | pbp_b16b_copay_dx_yn | string | | | pbp_b16b_copay_ehc | string | | | pbp_b16b_copay_ft_amt | double | | | pbp_b16b_copay_ft_amt_max | double | | | pbp_b16b_copay_ft_amt_min | double | | | pbp_b16b_copay_ft_yn | string | | | pbp_b16b_copay_maxamt_pos | double | | | pbp_b16b_copay_mc_amt | double | | | pbp_b16b_copay_mcmax_amt | double | | | pbp_b16b_copay_minamt_pos | double | | | pbp_b16b_copay_ods_amt | double | | | pbp_b16b_copay_ods_amt_max | double | | | pbp_b16b_copay_ods_amt_min | double | | | pbp_b16b_copay_ods_yn | string | | | pbp_b16b_copay_oe_amt | double | | | pbp_b16b_copay_oe_amt_max | double | | | pbp_b16b_copay_oe_amt_min | double | | | pbp_b16b_copay_oe_yn | string | | | pbp_b16b_copay_ops_amt | double | | | pbp_b16b_copay_ops_amt_max | double | | | pbp_b16b_copay_ops_amt_min | double | | | pbp_b16b_copay_ops_yn | string | | | pbp_b16b_copay_ov_amt | double | | | pbp_b16b_copay_ov_amt_max | double | | | pbp_b16b_copay_ov_amt_min | double | | | pbp_b16b_copay_ov_svcs | string | | | pbp_b16b_copay_ov_yn | string | | | pbp_b16b_copay_pc_amt | double | | | pbp_b16b_copay_pc_amt_max | double | | | pbp_b16b_copay_pc_amt_min | double | | | pbp_b16b_copay_pc_yn | string | | | pbp_b16b_copay_yesno | string | | | pbp_b16b_copay_yesno_pos | string | | | pbp_b16b_copay_yn | string | | | pbp_b16b_cost_share | string | | | pbp_b16b_cost_share_coins_max | double | | | pbp_b16b_cost_share_coins_min | double | | | pbp_b16b_cost_share_coins_yn | string | | | pbp_b16b_cost_share_copay_max | double | | | pbp_b16b_cost_share_copay_min | double | | | pbp_b16b_cost_share_copay_yn | string | | | pbp_b16b_ded_amt | double | | | pbp_b16b_ded_amt_pos | double | | | pbp_b16b_ded_pv_amt | double | | | pbp_b16b_ded_pv_yn | string | | | pbp_b16b_ded_yesno | string | | | pbp_b16b_ded_yesno_pos | string | | | pbp_b16b_ded_yn | string | | | pbp_b16b_maxbene_type | string | | | pbp_b16b_maxenr_amt | double | | | pbp_b16b_maxenr_amt_pos | double | | | pbp_b16b_maxenr_per | string | | | pbp_b16b_maxenr_per_desc | string | | | pbp_b16b_maxenr_pv_amt | double | | | pbp_b16b_maxenr_pv_per | string | | | pbp_b16b_maxenr_pv_per_desc | string | | | pbp_b16b_maxenr_pv_yn | string | | | pbp_b16b_maxenr_type | string | | | pbp_b16b_maxenr_type_pos | string | | | pbp_b16b_maxenr_yesno | string | | | pbp_b16b_maxenr_yesno_pos | string | | | pbp_b16b_maxenr_yn | string | | | pbp_b16b_maxplan_amt | double | | | pbp_b16b_maxplan_covb | string | | | pbp_b16b_maxplan_in_oon | string | | | pbp_b16b_maxplan_per | string | | | pbp_b16b_maxplan_per_desc | string | | | pbp_b16b_maxplan_pv_amt | double | | | pbp_b16b_maxplan_pv_in_oon | string | | | pbp_b16b_maxplan_pv_per | string | | | pbp_b16b_maxplan_pv_per_desc | string | | | pbp_b16b_maxplan_pv_yn | string | | | pbp_b16b_maxplan_type_pos | string | | | pbp_b16b_maxplan_yesno | string | | | pbp_b16b_maxplan_yesno_pos | string | | | pbp_b16b_maxplan_yn | string | | | pbp_b16b_maxpln_amt_pos | double | | | pbp_b16b_maxpln_cov_pos | string | | | pbp_b16b_maxpln_per_pos | string | | | pbp_b16b_refer_dx_yn | string | | | pbp_b16b_refer_ft_yn | string | | | pbp_b16b_refer_ods_yn | string | | | pbp_b16b_refer_oe_yn | string | | | pbp_b16b_refer_ops_yn | string | | | pbp_b16b_refer_pc_yn | string | | | pbp_b16b_refer_yn | string | | | pbp_b16c_auth_ags_yn | string | | | pbp_b16c_auth_end_yn | string | | | pbp_b16c_auth_impl_yn | string | | | pbp_b16c_auth_mxpr_yn | string | | | pbp_b16c_auth_omsg_yn | string | | | pbp_b16c_auth_orth_yn | string | | | pbp_b16c_auth_peri_yn | string | | | pbp_b16c_auth_prf_yn | string | | | pbp_b16c_auth_prm_yn | string | | | pbp_b16c_auth_rs_yn | string | | | pbp_b16c_bendesc_ags_amo | string | | | pbp_b16c_bendesc_ags_desc | string | | | pbp_b16c_bendesc_ags_lim | string | | | pbp_b16c_bendesc_ags_num | double | | | pbp_b16c_bendesc_ags_per | string | | | pbp_b16c_bendesc_end_amo | string | | | pbp_b16c_bendesc_end_desc | string | | | pbp_b16c_bendesc_end_lim | string | | | pbp_b16c_bendesc_end_num | double | | | pbp_b16c_bendesc_end_per | string | | | pbp_b16c_bendesc_impl_amo | string | | | pbp_b16c_bendesc_impl_desc | string | | | pbp_b16c_bendesc_impl_lim | string | | | pbp_b16c_bendesc_impl_num | double | | | pbp_b16c_bendesc_impl_per | string | | | pbp_b16c_bendesc_mxpr_amo | string | | | pbp_b16c_bendesc_mxpr_desc | string | | | pbp_b16c_bendesc_mxpr_lim | string | | | pbp_b16c_bendesc_mxpr_num | double | | | pbp_b16c_bendesc_mxpr_per | string | | | pbp_b16c_bendesc_omsg_amo | string | | | pbp_b16c_bendesc_omsg_desc | string | | | pbp_b16c_bendesc_omsg_lim | string | | | pbp_b16c_bendesc_omsg_num | double | | | pbp_b16c_bendesc_omsg_per | string | | | pbp_b16c_bendesc_orth_amo | string | | | pbp_b16c_bendesc_orth_desc | string | | | pbp_b16c_bendesc_orth_lim | string | | | pbp_b16c_bendesc_orth_num | double | | | pbp_b16c_bendesc_orth_per | string | | | pbp_b16c_bendesc_peri_amo | string | | | pbp_b16c_bendesc_peri_desc | string | | | pbp_b16c_bendesc_peri_lim | string | | | pbp_b16c_bendesc_peri_num | double | | | pbp_b16c_bendesc_peri_per | string | | | pbp_b16c_bendesc_prf_amo | string | | | pbp_b16c_bendesc_prf_desc | string | | | pbp_b16c_bendesc_prf_lim | string | | | pbp_b16c_bendesc_prf_num | double | | | pbp_b16c_bendesc_prf_per | string | | | pbp_b16c_bendesc_prm_amo | string | | | pbp_b16c_bendesc_prm_desc | string | | | pbp_b16c_bendesc_prm_lim | string | | | pbp_b16c_bendesc_prm_num | double | | | pbp_b16c_bendesc_prm_per | string | | | pbp_b16c_bendesc_rs_amo | string | | | pbp_b16c_bendesc_rs_desc | string | | | pbp_b16c_bendesc_rs_lim | string | | | pbp_b16c_bendesc_rs_num | double | | | pbp_b16c_bendesc_rs_per | string | | | pbp_b16c_coins_ags_pct | double | | | pbp_b16c_coins_ags_pct_max | double | | | pbp_b16c_coins_ags_pct_min | double | | | pbp_b16c_coins_ags_yn | string | | | pbp_b16c_coins_end_pct | double | | | pbp_b16c_coins_end_pct_max | double | | | pbp_b16c_coins_end_pct_min | double | | | pbp_b16c_coins_end_yn | string | | | pbp_b16c_coins_impl_pct | double | | | pbp_b16c_coins_impl_pct_max | double | | | pbp_b16c_coins_impl_pct_min | double | | | pbp_b16c_coins_impl_yn | string | | | pbp_b16c_coins_mxpr_pct | double | | | pbp_b16c_coins_mxpr_pct_max | double | | | pbp_b16c_coins_mxpr_pct_min | double | | | pbp_b16c_coins_mxpr_yn | string | | | pbp_b16c_coins_omsg_pct | double | | | pbp_b16c_coins_omsg_pct_max | double | | | pbp_b16c_coins_omsg_pct_min | double | | | pbp_b16c_coins_omsg_yn | string | | | pbp_b16c_coins_orth_pct | double | | | pbp_b16c_coins_orth_pct_max | double | | | pbp_b16c_coins_orth_pct_min | double | | | pbp_b16c_coins_orth_yn | string | | | pbp_b16c_coins_peri_pct | double | | | pbp_b16c_coins_peri_pct_max | double | | | pbp_b16c_coins_peri_pct_min | double | | | pbp_b16c_coins_peri_yn | string | | | pbp_b16c_coins_prf_pct | double | | | pbp_b16c_coins_prf_pct_max | double | | | pbp_b16c_coins_prf_pct_min | double | | | pbp_b16c_coins_prf_yn | string | | | pbp_b16c_coins_prm_pct | double | | | pbp_b16c_coins_prm_pct_max | double | | | pbp_b16c_coins_prm_pct_min | double | | | pbp_b16c_coins_prm_yn | string | | | pbp_b16c_coins_rs_pct | double | | | pbp_b16c_coins_rs_pct_max | double | | | pbp_b16c_coins_rs_pct_min | double | | | pbp_b16c_coins_rs_yn | string | | | pbp_b16c_copay_ags_amt | double | | | pbp_b16c_copay_ags_amt_max | double | | | pbp_b16c_copay_ags_amt_min | double | | | pbp_b16c_copay_ags_yn | string | | | pbp_b16c_copay_end_amt | double | | | pbp_b16c_copay_end_amt_max | double | | | pbp_b16c_copay_end_amt_min | double | | | pbp_b16c_copay_end_yn | string | | | pbp_b16c_copay_impl_amt | double | | | pbp_b16c_copay_impl_amt_max | double | | | pbp_b16c_copay_impl_amt_min | double | | | pbp_b16c_copay_impl_yn | string | | | pbp_b16c_copay_mxpr_amt | double | | | pbp_b16c_copay_mxpr_amt_max | double | | | pbp_b16c_copay_mxpr_amt_min | double | | | pbp_b16c_copay_mxpr_yn | string | | | pbp_b16c_copay_omsg_amt | double | | | pbp_b16c_copay_omsg_amt_max | double | | | pbp_b16c_copay_omsg_amt_min | double | | | pbp_b16c_copay_omsg_yn | string | | | pbp_b16c_copay_orth_amt | double | | | pbp_b16c_copay_orth_amt_max | double | | | pbp_b16c_copay_orth_amt_min | double | | | pbp_b16c_copay_orth_yn | string | | | pbp_b16c_copay_peri_amt | double | | | pbp_b16c_copay_peri_amt_max | double | | | pbp_b16c_copay_peri_amt_min | double | | | pbp_b16c_copay_peri_yn | string | | | pbp_b16c_copay_prf_amt | double | | | pbp_b16c_copay_prf_amt_max | double | | | pbp_b16c_copay_prf_amt_min | double | | | pbp_b16c_copay_prf_yn | string | | | pbp_b16c_copay_prm_amt | double | | | pbp_b16c_copay_prm_amt_max | double | | | pbp_b16c_copay_prm_amt_min | double | | | pbp_b16c_copay_prm_yn | string | | | pbp_b16c_copay_rs_amt | double | | | pbp_b16c_copay_rs_amt_max | double | | | pbp_b16c_copay_rs_amt_min | double | | | pbp_b16c_copay_rs_yn | string | | | pbp_b16c_ded_cmp_amt | double | | | pbp_b16c_ded_cmp_yn | string | | | pbp_b16c_maxenr_cmp_amt | double | | | pbp_b16c_maxenr_cmp_per | string | | | pbp_b16c_maxenr_cmp_per_desc | string | | | pbp_b16c_maxenr_cmp_type | string | | | pbp_b16c_maxenr_cmp_yn | string | | | pbp_b16c_maxplan_cmp_amt | double | | | pbp_b16c_maxplan_cmp_in_oon | string | | | pbp_b16c_maxplan_cmp_per | string | | | pbp_b16c_maxplan_cmp_per_desc | string | | | pbp_b16c_maxplan_cmp_type | string | | | pbp_b16c_maxplan_cmp_yn | string | | | pbp_b16c_refer_ags_yn | string | | | pbp_b16c_refer_end_yn | string | | | pbp_b16c_refer_impl_yn | string | | | pbp_b16c_refer_mxpr_yn | string | | | pbp_b16c_refer_omsg_yn | string | | | pbp_b16c_refer_orth_yn | string | | | pbp_b16c_refer_peri_yn | string | | | pbp_b16c_refer_prf_yn | string | | | pbp_b16c_refer_prm_yn | string | | | pbp_b16c_refer_rs_yn | 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 | | | pbp_b16b_maxplan_csg_groups | string | | | pbp_b16b_maxplan_excl_csg_yn | string | | | pbp_b16c_maxplan_csg_groups | string | | | pbp_b16c_maxplan_excl_csg_yn | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b16_dental WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b16_dental")` first. # PBP Section B17 — Eye Exams / Eyewear (silver) `medicare_silver.pbp_section_b17_eye_exams_wear` · Medicare Advantage, Part D, Medicaid · status partial Medicare Plan Benefit Package (PBP) Section B17 eye-exam / eyewear silver table, built by pipelines/medicare/ingest/pbp_runner.py from the CMS PBP SAS source into a medicare_silver Iceberg table. This is the exact source surface the PBP benefit tools read for this section; the entry catalogues table identity only, not benefit semantics. **Grain.** One row per (contract_id, plan_id, segment_id, version, report_year, quarter) PBP segment record. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | bid_id | string | | | orgtype | string | | | pbp_a_ben_cov | string | | | pbp_a_plan_type | string | | | pbp_b17a_addl_service_other | string | | | pbp_b17a_auth | string | | | pbp_b17a_auth_pos | string | | | pbp_b17a_auth_yn | string | | | pbp_b17a_bendec_enh | string | | | pbp_b17a_bendec_yesno | string | | | pbp_b17a_bendesc_amo_other | string | | | pbp_b17a_bendesc_amo_rex | string | | | pbp_b17a_bendesc_ehc | string | | | pbp_b17a_bendesc_enh | string | | | pbp_b17a_bendesc_lim | string | | | pbp_b17a_bendesc_lim_other | string | | | pbp_b17a_bendesc_lim_rex | string | | | pbp_b17a_bendesc_num_other | double | | | pbp_b17a_bendesc_num_rex | double | | | pbp_b17a_bendesc_numv | double | | | pbp_b17a_bendesc_per | string | | | pbp_b17a_bendesc_per_other | string | | | pbp_b17a_bendesc_per_other_d | string | | | pbp_b17a_bendesc_per_rex | string | | | pbp_b17a_bendesc_per_rex_d | string | | | pbp_b17a_bendesc_rex_amo | string | | | pbp_b17a_bendesc_yn | string | | | pbp_b17a_coins_cov__pos | string | | | pbp_b17a_coins_cov_mc | string | | | pbp_b17a_coins_ehc | string | | | pbp_b17a_coins_mccov | string | | | pbp_b17a_coins_mcmax_pct | double | | | pbp_b17a_coins_mcmin_pct | double | | | pbp_b17a_coins_pct_mc_max | double | | | pbp_b17a_coins_pct_mc_min | double | | | pbp_b17a_coins_pct_other_max | double | | | pbp_b17a_coins_pct_other_min | double | | | pbp_b17a_coins_pct_pos | double | | | pbp_b17a_coins_pct_rex_max | double | | | pbp_b17a_coins_pct_rex_min | double | | | pbp_b17a_coins_rexcov | string | | | pbp_b17a_coins_rexmax_pct | double | | | pbp_b17a_coins_rexmin_pct | double | | | pbp_b17a_coins_yesno | string | | | pbp_b17a_coins_yesno_pos | string | | | pbp_b17a_coins_yn | string | | | pbp_b17a_copay_amt_mc_max | double | | | pbp_b17a_copay_amt_mc_min | double | | | pbp_b17a_copay_amt_other_max | double | | | pbp_b17a_copay_amt_other_min | double | | | pbp_b17a_copay_amt_rex_max | double | | | pbp_b17a_copay_amt_rex_min | double | | | pbp_b17a_copay_ehc | string | | | pbp_b17a_copay_mcmax_amt | double | | | pbp_b17a_copay_mcmaxamt | double | | | pbp_b17a_copay_mcmin_amt | double | | | pbp_b17a_copay_mcminamt | double | | | pbp_b17a_copay_rexamt_pos | double | | | pbp_b17a_copay_rexmax_amt | double | | | pbp_b17a_copay_rexmin_amt | double | | | pbp_b17a_copay_yesno | string | | | pbp_b17a_copay_yesno_pos | string | | | pbp_b17a_copay_yn | string | | | pbp_b17a_cost_share | string | | | pbp_b17a_cost_share_coins_max | double | | | pbp_b17a_cost_share_coins_min | double | | | pbp_b17a_cost_share_coins_yn | string | | | pbp_b17a_cost_share_copay_max | double | | | pbp_b17a_cost_share_copay_min | double | | | pbp_b17a_cost_share_copay_yn | string | | | pbp_b17a_ded_amt | double | | | pbp_b17a_ded_amt_pos | double | | | pbp_b17a_ded_nmc_amt | double | | | pbp_b17a_ded_nmc_yn | string | | | pbp_b17a_ded_yesno | string | | | pbp_b17a_ded_yesno_pos | string | | | pbp_b17a_ded_yn | string | | | pbp_b17a_maxenr_amt | double | | | pbp_b17a_maxenr_amt_pos | double | | | pbp_b17a_maxenr_per | string | | | pbp_b17a_maxenr_per_d | string | | | pbp_b17a_maxenr_yesno | string | | | pbp_b17a_maxenr_yn | string | | | pbp_b17a_maxenr_yn_pos | string | | | pbp_b17a_maxplan_amt | double | | | pbp_b17a_maxplan_cov | string | | | pbp_b17a_maxplan_in_oon | string | | | pbp_b17a_maxplan_per | string | | | pbp_b17a_maxplan_per_d | string | | | pbp_b17a_maxplan_yesno | string | | | pbp_b17a_maxplan_yesno_pos | string | | | pbp_b17a_maxplan_yn | string | | | pbp_b17a_maxpln_amt_pos | double | | | pbp_b17a_maxpln_cov_pos | string | | | pbp_b17a_maxpln_per_pos | string | | | pbp_b17a_refer_yn | string | | | pbp_b17b_auth | string | | | pbp_b17b_auth_pos | string | | | pbp_b17b_auth_yn | string | | | pbp_b17b_bendec_enh | string | | | pbp_b17b_bendec_yesno | string | | | pbp_b17b_bendesc_amo_cl | string | | | pbp_b17b_bendesc_amo_egf | string | | | pbp_b17b_bendesc_amo_egi | string | | | pbp_b17b_bendesc_amo_egs | string | | | pbp_b17b_bendesc_amo_upg | string | | | pbp_b17b_bendesc_cl_amo | string | | | pbp_b17b_bendesc_ehc | string | | | pbp_b17b_bendesc_enh | string | | | pbp_b17b_bendesc_lim_cl | string | | | pbp_b17b_bendesc_lim_egf | string | | | pbp_b17b_bendesc_lim_egl | string | | | pbp_b17b_bendesc_lim_egs | string | | | pbp_b17b_bendesc_numv_cl | double | | | pbp_b17b_bendesc_numv_egf | double | | | pbp_b17b_bendesc_numv_egl | double | | | pbp_b17b_bendesc_numv_egs | double | | | pbp_b17b_bendesc_per_cl | string | | | pbp_b17b_bendesc_per_cl_d | string | | | pbp_b17b_bendesc_per_egf | string | | | pbp_b17b_bendesc_per_egf_d | string | | | pbp_b17b_bendesc_per_egl | string | | | pbp_b17b_bendesc_per_egl_d | string | | | pbp_b17b_bendesc_per_egs | string | | | pbp_b17b_bendesc_per_egs_d | string | | | pbp_b17b_bendesc_yn | string | | | pbp_b17b_coins_cov_cl | string | | | pbp_b17b_coins_cov_egf | string | | | pbp_b17b_coins_cov_egl | string | | | pbp_b17b_coins_cov_egs | string | | | pbp_b17b_coins_cov_mc | string | | | pbp_b17b_coins_cov_upg | string | | | pbp_b17b_coins_ehc | string | | | pbp_b17b_coins_pct_cl | double | | | pbp_b17b_coins_pct_cl_max | double | | | pbp_b17b_coins_pct_cl_min | double | | | pbp_b17b_coins_pct_egf | double | | | pbp_b17b_coins_pct_egf_max | double | | | pbp_b17b_coins_pct_egf_min | double | | | pbp_b17b_coins_pct_egl | double | | | pbp_b17b_coins_pct_egl_max | double | | | pbp_b17b_coins_pct_egl_min | double | | | pbp_b17b_coins_pct_egs | double | | | pbp_b17b_coins_pct_egs_max | double | | | pbp_b17b_coins_pct_egs_min | double | | | pbp_b17b_coins_pct_mc | double | | | pbp_b17b_coins_pct_mc_max | double | | | pbp_b17b_coins_pct_mc_min | double | | | pbp_b17b_coins_pct_upg | double | | | pbp_b17b_coins_pct_upg_max | double | | | pbp_b17b_coins_pct_upg_min | double | | | pbp_b17b_coins_yn | string | | | pbp_b17b_comb_maxplan_amt | double | | | pbp_b17b_comb_maxplan_per | string | | | pbp_b17b_comb_maxplan_per_d | string | | | pbp_b17b_comb_maxplan_yn | string | | | pbp_b17b_copay_amt_cl | double | | | pbp_b17b_copay_amt_cl_max | double | | | pbp_b17b_copay_amt_cl_min | double | | | pbp_b17b_copay_amt_egf | double | | | pbp_b17b_copay_amt_egf_max | double | | | pbp_b17b_copay_amt_egf_min | double | | | pbp_b17b_copay_amt_egl | double | | | pbp_b17b_copay_amt_egl_max | double | | | pbp_b17b_copay_amt_egl_min | double | | | pbp_b17b_copay_amt_egs | double | | | pbp_b17b_copay_amt_egs_max | double | | | pbp_b17b_copay_amt_egs_min | double | | | pbp_b17b_copay_amt_mc | double | | | pbp_b17b_copay_amt_mc_max | double | | | pbp_b17b_copay_amt_mc_min | double | | | pbp_b17b_copay_amt_pos | double | | | pbp_b17b_copay_amt_upg | double | | | pbp_b17b_copay_amt_upg_max | double | | | pbp_b17b_copay_amt_upg_min | double | | | pbp_b17b_copay_amtmax_pos | double | | | pbp_b17b_copay_ehc | string | | | pbp_b17b_copay_yesno | string | | | pbp_b17b_copay_yesno_pos | string | | | pbp_b17b_copay_yn | string | | | pbp_b17b_ded_amt | double | | | pbp_b17b_ded_amt_pos | double | | | pbp_b17b_ded_nmc_amt | double | | | pbp_b17b_ded_nmc_yn | string | | | pbp_b17b_ded_yesno | string | | | pbp_b17b_ded_yesno_pos | string | | | pbp_b17b_ded_yn | string | | | pbp_b17b_disct_cov__pos | string | | | pbp_b17b_disct_cov_cl | string | | | pbp_b17b_disct_cov_egf | string | | | pbp_b17b_disct_cov_egl | string | | | pbp_b17b_disct_cov_egs | string | | | pbp_b17b_disct_cov_mc | string | | | pbp_b17b_disct_cov_upg | string | | | pbp_b17b_disct_pct_cl | double | | | pbp_b17b_disct_pct_egf | double | | | pbp_b17b_disct_pct_egl | double | | | pbp_b17b_disct_pct_egs | double | | | pbp_b17b_disct_pct_mc | double | | | pbp_b17b_disct_pct_pos | double | | | pbp_b17b_disct_pct_upg | double | | | pbp_b17b_disct_pctmax_pos | double | | | pbp_b17b_disct_yesno | string | | | pbp_b17b_disct_yesno_pos | string | | | pbp_b17b_ind_maxplan_per_egf_d | string | | | pbp_b17b_ind_maxplan_per_egl_d | string | | | pbp_b17b_ind_maxplan_per_egs_d | string | | | pbp_b17b_ind_maxplan_per_upg_d | string | | | pbp_b17b_indv_maxplan_amt_cl | double | | | pbp_b17b_indv_maxplan_amt_egf | double | | | pbp_b17b_indv_maxplan_amt_egl | double | | | pbp_b17b_indv_maxplan_amt_egs | double | | | pbp_b17b_indv_maxplan_amt_upg | double | | | pbp_b17b_indv_maxplan_bendesc | string | | | pbp_b17b_indv_maxplan_per_cl | string | | | pbp_b17b_indv_maxplan_per_cl_d | string | | | pbp_b17b_indv_maxplan_per_egf | string | | | pbp_b17b_indv_maxplan_per_egl | string | | | pbp_b17b_indv_maxplan_per_egs | string | | | pbp_b17b_indv_maxplan_per_upg | string | | | pbp_b17b_maxenr_amt | double | | | pbp_b17b_maxenr_amt_pos | double | | | pbp_b17b_maxenr_per | string | | | pbp_b17b_maxenr_per_d | string | | | pbp_b17b_maxenr_type | string | | | pbp_b17b_maxenr_type_pos | string | | | pbp_b17b_maxenr_yesno | string | | | pbp_b17b_maxenr_yn | string | | | pbp_b17b_maxenr_yn_pos | string | | | pbp_b17b_maxplan_amt | double | | | pbp_b17b_maxplan_cov | string | | | pbp_b17b_maxplan_in_oon | string | | | pbp_b17b_maxplan_pct | double | | | pbp_b17b_maxplan_pctprp_pos | double | | | pbp_b17b_maxplan_per | string | | | pbp_b17b_maxplan_type | string | | | pbp_b17b_maxplan_yesno | string | | | pbp_b17b_maxplan_yesno_pos | string | | | pbp_b17b_maxplan_yn | string | | | pbp_b17b_maxpln_amt_pos | double | | | pbp_b17b_maxpln_cov_pos | string | | | pbp_b17b_maxpln_per_pos | string | | | pbp_b17b_refer_yn | 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 | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b17_eye_exams_wear WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b17_eye_exams_wear")` first. # PBP Section B18 — Hearing Exams / Aids (silver) `medicare_silver.pbp_section_b18_hearing_exams_aids` · Medicare Advantage, Part D, Medicaid · status partial Medicare Plan Benefit Package (PBP) Section B18 hearing-exam / hearing-aid silver table, built by pipelines/medicare/ingest/pbp_runner.py from the CMS PBP SAS source into a medicare_silver Iceberg table. This is the exact source surface the PBP benefit tools read for this section; the entry catalogues table identity only, not benefit semantics. **Grain.** One row per (contract_id, plan_id, segment_id, version, report_year, quarter) PBP segment record. | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | bid_id | string | | | orgtype | string | | | pbp_a_ben_cov | string | | | pbp_a_plan_type | string | | | pbp_b18a_auth | string | | | pbp_b18a_auth_pos | string | | | pbp_b18a_auth_yn | string | | | pbp_b18a_bendec_enh | string | | | pbp_b18a_bendec_yesno | string | | | pbp_b18a_bendesc_amo_fha | string | | | pbp_b18a_bendesc_amo_rht | string | | | pbp_b18a_bendesc_ehc | string | | | pbp_b18a_bendesc_enh | string | | | pbp_b18a_bendesc_fha_amo | string | | | pbp_b18a_bendesc_lim_fha | string | | | pbp_b18a_bendesc_lim_rht | string | | | pbp_b18a_bendesc_numv_cl | double | | | pbp_b18a_bendesc_numv_fha | double | | | pbp_b18a_bendesc_per_fha | string | | | pbp_b18a_bendesc_per_fha_d | string | | | pbp_b18a_bendesc_per_rht | string | | | pbp_b18a_bendesc_per_rht_d | string | | | pbp_b18a_bendesc_rht_amo | string | | | pbp_b18a_bendesc_yn | string | | | pbp_b18a_coins_cov | string | | | pbp_b18a_coins_cov_fha | string | | | pbp_b18a_coins_cov_pos | string | | | pbp_b18a_coins_cov_rht | string | | | pbp_b18a_coins_ehc | string | | | pbp_b18a_coins_pct_fha | double | | | pbp_b18a_coins_pct_max_fha | double | | | pbp_b18a_coins_pct_max_rht | double | | | pbp_b18a_coins_pct_pos | double | | | pbp_b18a_coins_pct_rht | double | | | pbp_b18a_coins_pctmax_pos | double | | | pbp_b18a_coins_yesno | string | | | pbp_b18a_coins_yesno_pos | string | | | pbp_b18a_coins_yn | string | | | pbp_b18a_copay_amt | double | | | pbp_b18a_copay_amt_fha | double | | | pbp_b18a_copay_amt_max_fha | double | | | pbp_b18a_copay_amt_max_rht | double | | | pbp_b18a_copay_amt_pos | double | | | pbp_b18a_copay_amt_rht | double | | | pbp_b18a_copay_amtmax_pos | double | | | pbp_b18a_copay_ehc | string | | | pbp_b18a_copay_yesno | string | | | pbp_b18a_copay_yesno_pos | string | | | pbp_b18a_copay_yn | string | | | pbp_b18a_ded_amt | double | | | pbp_b18a_ded_amt_pos | double | | | pbp_b18a_ded_nmc_amt | double | | | pbp_b18a_ded_nmc_yn | string | | | pbp_b18a_ded_yesno | string | | | pbp_b18a_ded_yesno_pos | string | | | pbp_b18a_ded_yn | string | | | pbp_b18a_maxenr_amt | double | | | pbp_b18a_maxenr_amt_pos | double | | | pbp_b18a_maxenr_per | string | | | pbp_b18a_maxenr_per_d | string | | | pbp_b18a_maxenr_yesno | string | | | pbp_b18a_maxenr_yn | string | | | pbp_b18a_maxenr_yn_pos | string | | | pbp_b18a_maxplan_amt | double | | | pbp_b18a_maxplan_cov | string | | | pbp_b18a_maxplan_in_oon | string | | | pbp_b18a_maxplan_per | string | | | pbp_b18a_maxplan_per_d | string | | | pbp_b18a_maxplan_yesno | string | | | pbp_b18a_maxplan_yesno_pos | string | | | pbp_b18a_maxplan_yn | string | | | pbp_b18a_maxpln_amt_pos | double | | | pbp_b18a_maxpln_cov_pos | string | | | pbp_b18a_maxpln_per_pos | string | | | pbp_b18a_med_coins_pct | double | | | pbp_b18a_med_coins_pct_max | double | | | pbp_b18a_med_copay_amt_max | double | | | pbp_b18a_refer_yn | string | | | pbp_b18b_auth | string | | | pbp_b18b_auth_pos | string | | | pbp_b18b_auth_yn | string | | | pbp_b18b_bendec_enh | string | | | pbp_b18b_bendec_yesno | string | | | pbp_b18b_bendesc_amo_at | string | | | pbp_b18b_bendesc_amo_ie | string | | | pbp_b18b_bendesc_amo_oe | string | | | pbp_b18b_bendesc_amo_ote | string | | | pbp_b18b_bendesc_ehc | string | | | pbp_b18b_bendesc_enh | string | | | pbp_b18b_bendesc_ie_amo | string | | | pbp_b18b_bendesc_lim_at | string | | | pbp_b18b_bendesc_lim_ie | string | | | pbp_b18b_bendesc_lim_oe | string | | | pbp_b18b_bendesc_lim_ote | string | | | pbp_b18b_bendesc_lim_rb | string | | | pbp_b18b_bendesc_numv_at | double | | | pbp_b18b_bendesc_numv_ie | double | | | pbp_b18b_bendesc_numv_oe | double | | | pbp_b18b_bendesc_numv_ote | double | | | pbp_b18b_bendesc_numv_rb | double | | | pbp_b18b_bendesc_oe_amo | string | | | pbp_b18b_bendesc_ote_amo | string | | | pbp_b18b_bendesc_per_at | string | | | pbp_b18b_bendesc_per_at_d | string | | | pbp_b18b_bendesc_per_ie | string | | | pbp_b18b_bendesc_per_ie_d | string | | | pbp_b18b_bendesc_per_oe | string | | | pbp_b18b_bendesc_per_oe_d | string | | | pbp_b18b_bendesc_per_ote | string | | | pbp_b18b_bendesc_per_ote_d | string | | | pbp_b18b_bendesc_per_rb | string | | | pbp_b18b_bendesc_rb_amo | string | | | pbp_b18b_bendesc_yn | string | | | pbp_b18b_coins_cov_at | string | | | pbp_b18b_coins_cov_ie | string | | | pbp_b18b_coins_cov_oe | string | | | pbp_b18b_coins_cov_ote | string | | | pbp_b18b_coins_ehc | string | | | pbp_b18b_coins_pct_at | double | | | pbp_b18b_coins_pct_at_max | double | | | pbp_b18b_coins_pct_at_min | double | | | pbp_b18b_coins_pct_ie | double | | | pbp_b18b_coins_pct_ie_max | double | | | pbp_b18b_coins_pct_ie_min | double | | | pbp_b18b_coins_pct_oe | double | | | pbp_b18b_coins_pct_oe_max | double | | | pbp_b18b_coins_pct_oe_min | double | | | pbp_b18b_coins_pct_ote | double | | | pbp_b18b_coins_pct_ote_max | double | | | pbp_b18b_coins_pct_ote_min | double | | | pbp_b18b_coins_yn | string | | | pbp_b18b_copay_amt_p2_ie_max | double | | | pbp_b18b_copay_amt_p2_ie_min | double | | | pbp_b18b_copay_amt_p2_oe_max | double | | | pbp_b18b_copay_amt_p2_oe_min | double | | | pbp_b18b_copay_amt_p2_ote_max | double | | | pbp_b18b_copay_amt_p2_ote_min | double | | | pbp_b18b_copay_amt_per2_ie | double | | | pbp_b18b_copay_amt_per2_oe | double | | | pbp_b18b_copay_amt_per2_ote | double | | | pbp_b18b_copay_amt_per2_rb | double | | | pbp_b18b_copay_amt_per_ie | double | | | pbp_b18b_copay_amt_per_ie_max | double | | | pbp_b18b_copay_amt_per_ie_min | double | | | pbp_b18b_copay_amt_per_oe | double | | | pbp_b18b_copay_amt_per_oe_max | double | | | pbp_b18b_copay_amt_per_oe_min | double | | | pbp_b18b_copay_amt_per_ote | double | | | pbp_b18b_copay_amt_per_ote_max | double | | | pbp_b18b_copay_amt_per_ote_min | double | | | pbp_b18b_copay_amt_per_rb | double | | | pbp_b18b_copay_amt_pos | double | | | pbp_b18b_copay_amtmax_pos | double | | | pbp_b18b_copay_at_max_amt | double | | | pbp_b18b_copay_at_min_amt | double | | | pbp_b18b_copay_ehc | string | | | pbp_b18b_copay_yesno | string | | | pbp_b18b_copay_yesno_pos | string | | | pbp_b18b_copay_yn | string | | | pbp_b18b_ded_amt | double | | | pbp_b18b_ded_amt_pos | double | | | pbp_b18b_ded_yesno | string | | | pbp_b18b_ded_yesno_pos | string | | | pbp_b18b_ded_yn | string | | | pbp_b18b_disct_cov_ie | string | | | pbp_b18b_disct_cov_oe | string | | | pbp_b18b_disct_cov_ote | string | | | pbp_b18b_disct_cov_pos | string | | | pbp_b18b_disct_cov_rb | string | | | pbp_b18b_disct_pct_ie | double | | | pbp_b18b_disct_pct_oe | double | | | pbp_b18b_disct_pct_ote | double | | | pbp_b18b_disct_pct_pos | double | | | pbp_b18b_disct_pct_rb | double | | | pbp_b18b_disct_pctmax_pos | double | | | pbp_b18b_disct_pctprp_pos | double | | | pbp_b18b_disct_yesno | string | | | pbp_b18b_disct_yesno_pos | string | | | pbp_b18b_maxenr_amt | double | | | pbp_b18b_maxenr_amt_pos | double | | | pbp_b18b_maxenr_per | string | | | pbp_b18b_maxenr_per_d | string | | | pbp_b18b_maxenr_type | string | | | pbp_b18b_maxenr_type_pos | string | | | pbp_b18b_maxenr_yesno | string | | | pbp_b18b_maxenr_yn | string | | | pbp_b18b_maxenr_yn_pos | string | | | pbp_b18b_maxplan_amt | double | | | pbp_b18b_maxplan_cov | string | | | pbp_b18b_maxplan_in_oon | string | | | pbp_b18b_maxplan_pct | double | | | pbp_b18b_maxplan_pctprp_pos | double | | | pbp_b18b_maxplan_per | string | | | pbp_b18b_maxplan_per_d | string | | | pbp_b18b_maxplan_perear | string | | | pbp_b18b_maxplan_perear_yn | string | | | pbp_b18b_maxplan_type | string | | | pbp_b18b_maxplan_type_pos | string | | | pbp_b18b_maxplan_yesno | string | | | pbp_b18b_maxplan_yesno_pos | string | | | pbp_b18b_maxplan_yn | string | | | pbp_b18b_maxpln_amt_pos | double | | | pbp_b18b_maxpln_cov_pos | string | | | pbp_b18b_maxpln_per_pos | string | | | pbp_b18b_otc_yn | string | | | pbp_b18b_refer_yn | string | | | pbp_b18c_auth_yn | string | | | pbp_b18c_bendesc_amo | string | | | pbp_b18c_bendesc_desc | string | | | pbp_b18c_bendesc_lim | string | | | pbp_b18c_bendesc_num | double | | | pbp_b18c_bendesc_per | string | | | pbp_b18c_coins_pct | double | | | pbp_b18c_coins_pct_max | double | | | pbp_b18c_coins_pct_min | double | | | pbp_b18c_coins_yn | string | | | pbp_b18c_copay_amt | double | | | pbp_b18c_copay_amt_max | double | | | pbp_b18c_copay_amt_min | double | | | pbp_b18c_copay_yn | string | | | pbp_b18c_ded_amt | double | | | pbp_b18c_ded_yn | string | | | pbp_b18c_maxenr_amt | double | | | pbp_b18c_maxenr_per | string | | | pbp_b18c_maxenr_per_desc | string | | | pbp_b18c_maxenr_yn | string | | | pbp_b18c_maxplan_aid_type | string | | | pbp_b18c_maxplan_amt | double | | | pbp_b18c_maxplan_in_oon | string | | | pbp_b18c_maxplan_per | string | | | pbp_b18c_maxplan_per_desc | string | | | pbp_b18c_maxplan_yn | string | | | pbp_b18c_refer_yn | 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 | | | pbp_b18c_maxplan_choice | string | | | pbp_b18c_maxplan_type | string | | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b18_hearing_exams_aids WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b18_hearing_exams_aids")` first. # MA pbp section b19 model test `medicare_silver.pbp_section_b19_model_test` · Medicare Advantage, Part D, Medicaid · status partial Section B19: Model test slot. Net-new base file 2026 (was VBID-only pre-2026). Coverage: 2026-present. **Grain.** One row per Medicare Advantage plan-segment per benefit year: (contract_id, plan_id, segment_id, report_year). VERIFIED — contract_id||plan_id||segment_id||report_year yields exactly 40,737 distinct = the full 40,737 row_count, with zero duplicate groups. Equivalent shorthand keys: (bid_id, report_year) since bid_id IS exactly contract_id_'_'_plan_id_'_'_segment_id (0 mismatches), and (contract_id, plan_id, segment_id, observed_period) since observed_period = Jan-1 of report_year. quarter is constant (always 1.0) and adds nothing. **How to use it.** "SELECT report_year, COUNT(*) AS plans, SUM(CASE WHEN pbp_b19a_ssbci_yn='1' THEN 1 ELSE 0 END) AS ssbci_yes, SUM(CASE WHEN pbp_b19a_uf_yn='1' THEN 1 ELSE 0 END) AS uf_yes, SUM(CASE WHEN pbp_b19a_vbd_yn='1' THEN 1 ELSE 0 END) AS vbd_yes FROM medicare_silver.pbp_section_b19_model_test GROUP BY report_year ORDER BY report_year;" answers 'how many MA plan-segments offer SSBCI / MA Uniformity Flexibility / VBID supplemental benefits each year, and how did adoption shift (e.g. VBID going to zero in 2026)?'. Join to pbp_section_a (or pbp_vbid_overlay) on (contract_id, plan_id, segment_id, report_year) to attach plan name/enrollment/region. Always GROUP BY or filter report_year first because field availability is year-dependent." **Traps.** - NAME TRAP — '_model_test' is NOT a dev/sample/partial table. It is the literal CMS PBP source section name ('B-19 Model Test', the VBID/MA-Uniformity-Flexibility 'model test' supplemental-benefit section). It carries ~88-95% of all MA contracts for its years (e.g. 2024: 953 of 1,034 contracts vs full pbp_section_a). It IS real production data, just only for plans that file Section B-19. - GRAIN TRAP — the profiler reports an 11-column SUPERSET key. The true minimal grain is just (contract_id, plan_id, segment_id, report_year) = 40,737 distinct = row_count, zero dupes. bid_id, quarter, observed_period, effective_period_start are all redundant (bid_id = contract_'_'_plan_'_'_segment exactly; quarter is always 1; observed_period/eff_start = Jan-1 of report_year). The extra columns the profiler added (pbp_a_plan_type, max_plan_ben_amt, whp_provid_incent...) are NOT keys — they just happen not to break uniqueness. - YEAR GAPS — only 2017, 2021, 2022, 2024, 2025, 2026 exist; 2018/2019/2020/2023 are MISSING from silver. Never assume a continuous yearly series. For a continuous VBID index across 2017-2026 use the sibling pbp_vbid_overlay (16 cols, index-only, no benefit fields). Also quarter=1 always, but the source files are mixed quarters per year (see source_url) — don't read quarter as the true release. - NULL-MEANS-NOT-COLLECTED, varying by year — this is the single biggest analysis trap. 2017 has EVERY B19a/HEP/WHP/B19b field 100% NULL (the section had a totally different shape then; only legacy base cols). HEP fields are populated ONLY in 2024. WHP and VBID fields are populated 2021/2022/2024 and NULL in 2025/2026 (VBID demonstration sunset; CMS restructured ~40 fields CY2024->CY2025). So NULL on vbd_yn/hep_action/whp_* usually means 'field absent that year', NOT 'plan answered No'. Always filter by report_year before interpreting a flag, and read 1/2/NULL as Yes/No/not-applicable. - ONLY ~90 of 1,181 source columns are extracted (92% of the per-sub-benefit cost-share matrix is NOT in silver). The detailed reduced-cost-share dollar amounts a cost analyst wants (pbp_b19a_coins_16a_min, copay/deductible per sub-benefit) DO NOT EXIST here — only top-level yes/no flags + package counts + a handful of sparse aggregate dollars survive. Whole column families are placeholder-empty in every year: all pbp_b19_c_* Part-C cash-rebate/R&I fields (the live reward data is in pbp_b19_whp_* instead), pbp_b19a_reduct_cost_add_yn, and most pbp_b19c_* hospice cost-share cells (≤10 rows ever). See docs/research/26_pbp_b19_column_ledger.md for the per-column inhabitance-by-year ledger. - SINGLE SNAPSHOT, no is_current / no dedup needed — there is no is_current column. asserted_at (2026-05-16), cms_vintage_sequence (=1), and parse_revision (=1) are CONSTANT across all rows: the bi-temporal columns are scaffolding for future re-releases but currently carry exactly one vintage. Do NOT write supersession/dedup logic; one row per (bid, year) already. Provenance columns (source_url, sha256_content_hash, parser_artifact_hash) have 6 distinct values = one per report_year. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0022, H0028); 1,296 distinct. First component of bid_id. Part of grain. | | plan_id | string | Plan ID within the contract (3-char, e.g. 001, 014); 655 distinct values. Second component of bid_id. Part of grain. | | segment_id | string | Plan segment (regional split). Mostly '0' (36,975 rows = non-segmented); 1-7 are regional segments of PPO/regional plans (segment 1=1,264 ... 7=40 rows). Third component of bid_id. Part of grain. | | version | double | CMS PBP software submission/version number of the bid filing (range 1-27, 25 distinct). Metadata of the bid, NOT a grain or dedup key — there is exactly one row per bid per year, no version stacking. | | report_year | double | Contract/benefit year the PBP describes (double). Six values present: 2017, 2021, 2022, 2024, 2025, 2026. GAPPED — 2018/2019/2020/2023 are absent. Part of grain. | | quarter | double | CMS PBP release quarter. CONSTANT = 1.0 for every row. Not part of grain; do not rely on it to distinguish releases (the underlying source files are actually mixed quarters Q1/Q2 per year — see source_url). | | bid_id | string | Composite plan key = contract_id // '_' // plan_id // '_' // segment_id (verified 0 mismatches). 13,953 distinct = distinct (contract,plan,segment). Fully redundant with those three columns; a convenience join key, not extra grain. | | orgtype | string | CMS organization type code. 01=Local MA (37,402, dominant), 08=Cost plan (1,896), 11=Regional MA/RPPO (541), 06=MSA (390), 05/04/02 small. (Code meanings per docs/kbs/pbp/CY2024.md.) | | pbp_a_ben_cov | string | Plan benefit-coverage type from Section A. 1=most plans (39,836), 2=822, NULL=79. Carried over from Section A as a join/context attribute. | | pbp_a_plan_type | string | Plan type code (from Section A). 01=HMO (18,951), 04=Local PPO (13,123), 02=HMO-POS (5,328), 20=Cost (1,896), 31=Regional PPO (541), 18=MSA (390). (Meanings per CY2024 KB; '[INFERRED]' there.) | | pbp_b19_c_cash_rebate_max_amt | double | | | pbp_b19_c_cash_rebate_mnt_amt | double | | | pbp_b19_c_cash_rebate_other | string | | | pbp_b19_c_cash_rebate_type | string | | | pbp_b19_c_ri_amt_1 | double | | | pbp_b19_c_ri_amt_2 | double | | | pbp_b19_c_ri_amt_3 | double | | | pbp_b19_c_ri_cnt | string | | | pbp_b19_c_ri_freq_1 | string | | | pbp_b19_c_ri_freq_2 | string | | | pbp_b19_c_ri_freq_3 | string | | | pbp_b19_c_ri_freq_desc_1 | string | | | pbp_b19_c_ri_freq_desc_2 | string | | | pbp_b19_c_ri_freq_desc_3 | string | | | pbp_b19_c_ri_max_1 | double | | | pbp_b19_c_ri_max_2 | double | | | pbp_b19_c_ri_max_3 | double | | | pbp_b19_c_ri_type_1 | string | | | pbp_b19_c_ri_type_2 | string | | | pbp_b19_c_ri_type_3 | string | | | pbp_b19_c_ri_type_note_1 | string | | | pbp_b19_c_ri_type_note_2 | string | | | pbp_b19_c_ri_type_note_3 | string | | | pbp_b19_hep_action | string | | | pbp_b19_hep_action_desc | string | | | pbp_b19_hep_data_source | string | | | pbp_b19_hep_data_source_desc | string | | | pbp_b19_hep_tool | string | | | pbp_b19_hep_tool_desc | string | | | pbp_b19_whp_ben_eng_ann_amt | double | | | pbp_b19_whp_eligibil_crit | string | | | pbp_b19_whp_freq_rew | string | | | pbp_b19_whp_mode_of_eng | string | | | pbp_b19_whp_partc_rew_inc_yn | string | | | pbp_b19_whp_prog_connectedness | string | | | pbp_b19_whp_prog_type | string | | | pbp_b19_whp_prog_type_other | string | | | pbp_b19_whp_provid_incent | string | | | pbp_b19_whp_rew_inc_amt | double | | | pbp_b19_whp_type_partc_rew | string | | | pbp_b19a_attestation | string | VBID attestation flag. 1=3,049 rows, else NULL. Populated 2021/2022/2024 only (VBID-participating plans). | | pbp_b19a_reduct_cost_add_yn | string | Variant 'Part-C reductions in cost OR additional benefits' flag. Truly empty in silver across all years (0 populated) — present in schema but never filled. | | pbp_b19a_reduct_cost_yn | string | Does the VBID/UF/SSBCI benefit offer Part-C reductions in cost-sharing? 1=Yes (3,084), 2=No (20,467), NULL=17,186 (all-2017 + 2021/2022 where the field was barely collected). | | pbp_b19a_reduct_package_num | double | Number of 19a Reduction-in-Cost-Sharing packages the plan files (double, e.g. 1.0, 2.0). Populated where reduct_cost_yn=Yes; NULL otherwise. | | pbp_b19a_ssbci_bendesc | string | Type/category of benefit the SSBCI includes (coded string, e.g. '11'). Populated 2021+ where SSBCI=Yes; NULL otherwise. | | pbp_b19a_ssbci_yn | string | Does the plan offer Special Supplemental Benefits for the Chronically Ill (SSBCI)? 1=Yes (7,567), 2=No (27,082), NULL=6,088. NULL is concentrated in 2017 (field did not exist) plus a few hundred 'not answered' per later year. | | pbp_b19a_uf_yn | string | Does the plan include MA Uniformity Flexibility (reductions in cost-share/added benefits for targeted enrollees)? 1=Yes (3,029), 2=No (31,903), NULL=5,805 (all-2017 + a few hundred/year). | | pbp_b19a_vbd_hospice_ben_yn | string | Does the plan offer VBID Hospice benefits? Yes/No, sparsely populated 2021-2025, ZERO in 2026 (demonstration ended). | | pbp_b19a_vbd_type | string | Which additional VBID interventions (beyond wellness/care-planning) the plan offers (coded string, e.g. '01','010'). Populated only 2021/2022/2024; NULL in 38,641 rows. | | pbp_b19a_vbd_yn | string | Does the plan offer Value-Based Insurance Design flexibilities (by condition / socioeconomic status)? 1=Yes (2,998), 2=No (949), NULL=36,790. NULL dominates: VBID was only collected 2021/2022/2024 (and ZERO in 2026 — VBID demonstration sunset). Treat NULL as 'not in scope that year', not 'No'. | | pbp_b19b_add_cost_yn | string | Does the VBID/UF/SSBCI benefit offer ADDITIONAL Part-C benefits (b19b)? 1=Yes (10,499), 2=No (14,566), NULL=15,672 (2017 absent + ~half of 2021/2022). | | pbp_b19b_add_package_num | double | Number of additional-benefit packages (1-15) the plan files in b19b (double). The most-populated b19b dollar/count field across 2021-2026. | | pbp_b19c_coins_pct2_maxov | double | | | pbp_b19c_coins_pct2_minov | double | | | pbp_b19c_coins_pct_maxov | double | | | pbp_b19c_coins_pct_minov | double | | | pbp_b19c_coins_pct_resp2_max | double | | | pbp_b19c_coins_pct_resp2_min | double | | | pbp_b19c_coins_pct_resp_max | double | | | pbp_b19c_coins_pct_resp_min | double | | | pbp_b19c_conins_enrol2_yn | string | | | pbp_b19c_conins_enrol_yn | string | | | pbp_b19c_conins_resp_enrol2_yn | string | | | pbp_b19c_conins_resp_enrol_yn | string | | | pbp_b19c_copay_amt2_maxov | double | | | pbp_b19c_copay_amt2_minov | double | | | pbp_b19c_copay_amt_maxov | double | | | pbp_b19c_copay_amt_minov | double | | | pbp_b19c_copay_amt_resp2_max | double | | | pbp_b19c_copay_amt_resp2_min | double | | | pbp_b19c_copay_amt_resp_max | double | | | pbp_b19c_copay_amt_resp_min | double | | | pbp_b19c_copay_enrol2_yn | string | | | pbp_b19c_copay_enrol_yn | string | | | pbp_b19c_copay_resp_enrol2_yn | string | | | pbp_b19c_copay_resp_enrol_yn | string | | | pbp_b19c_cov_hlth_rltd | string | | | pbp_b19c_cov_hlth_rltd_yn | string | | | pbp_b19c_hosp_supp_ben_cont_yn | string | | | pbp_b19c_mand_supp_ben_yn | string | | | pbp_b19c_max_plan_ben_amt | double | | | pbp_b19c_max_plan_ben_yn | string | | | pbp_b19c_oth_man_supp_ben | string | | | pbp_b19c_oth_man_supp_ben_yn | string | | | pbp_b19c_pres_drug2_max | double | | | pbp_b19c_pres_drug_max | double | | | pbp_b19c_red_cost_shar_yn | string | | | pbp_b19c_resp_care2_max | double | | | pbp_b19c_resp_care_max | double | | | pbp_b19c_tmp_cov_res_fac_yn | string | | | observed_period | date | Bi-temporal: the period the data describes = Jan-1 of report_year (date). Derivable from report_year; equals effective_period_start. Constant within a (bid, year). | | asserted_at | date | Bi-temporal: when this fact was loaded/asserted. CONSTANT = 2026-05-16 for every row — single load. No supersession history. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Bi-temporal vintage ordinal for superseding CMS re-releases. CONSTANT = 1 for every row (only one vintage loaded). Scaffolding for future versioning; nothing to filter today. | | parse_revision | int | Parser revision ordinal. CONSTANT = 1 everywhere. Scaffolding; not a dedup key in current data. | | parser_artifact_hash | string | SHA-256 of the parser build that produced the row. 6 distinct values (one per report_year's extraction run). Provenance. | | source_url | string | CMS download URL of the PBP ZIP this row came from. 6 distinct (one per year). Reveals the real release quarter despite quarter=1: 2021=updated-07012021, 2022=quarter-2, 2024=quarter-1, etc. Provenance. | | sha256_content_hash | string | SHA-256 of the source file content. 6 distinct (one per year). Provenance / integrity. | | pbp_b19_hep_action / pbp_b19_hep_action_desc / pbp_b19_hep_data_source / pbp_b19_hep_data_source_desc / pbp_b19_hep_tool / pbp_b19_hep_tool_desc | | VBID Health Equity Plan (HEP) fields: actions, disparity data-sources, screening tool, and free-text descriptions. CODED multi-select strings (e.g. action='0111111', tool='0110'). POPULATED ONLY IN 2024 (118 rows); NULL in every other year — a one-year CMS data collection. Major NULL-means-'not-collected' trap. | | pbp_b19_whp_* (ben_eng_ann_amt, mode_of_eng, partc_rew_inc_yn, prog_connectedness, prog_type, prog_type_other, provid_incent, freq_rew, rew_inc_amt, type_partc_rew, eligibil_crit) | | Wellness & Health-Planning (WHP) program fields: expected beneficiaries engaged annually (ben_eng_ann_amt, $/count 0-389,061), mode of engagement, program type/connectedness (coded strings like '111','11111'), provider-incentive and reward flags, reward amount/type/frequency, and a free-text 'other program' description. Populated 2021/2022/2024 only; NULL in 2025/2026 (field retired). eligibil_crit is empty in all years. | | pbp_b19_c_cash_rebate_* and pbp_b19_c_ri_* (amt_1..3, max_1..3, freq_1..3, type_1..3, type_note_1..3, freq_desc_1..3, cnt) | | Part-C cash/monetary rebate and Rewards-and-Incentives package fields (max annual rebate, monthly amount, R&I amounts/maxes/frequencies/types/notes for up to 3 packages). In THIS silver table they are ENTIRELY EMPTY (0 populated in every year) — placeholder columns the silver writer never filled. The live R&I/reward data that IS populated lives in the pbp_b19_whp_* family instead. | | pbp_b19c_* hospice cost-share block (mand_supp_ben_yn, oth_man_supp_ben(_yn), red_cost_shar_yn, cov_hlth_rltd(_yn), hosp_supp_ben_cont_yn, tmp_cov_res_fac_yn, max_plan_ben_yn, max_plan_ben_amt, conins_enrol(2)_yn, conins_resp_enrol(2)_yn, copay_enrol(2)_yn, copay_resp_enrol(2)_yn, coins_pct*_min/max(ov), copay_amt*_min/max(ov), resp_care(2)_max, pres_drug(2)_max) | | VBID Hospice supplemental-benefit cost-share matrix: yes/no toggles for hospice supplemental benefits and a min/max copay/coinsurance grid (INN/OON, respite, prescription). EXTREMELY SPARSE — at most ~10 rows populated (2022) and many sub-fields (coins_pct*ov, copay_amt_resp*, pres_drug*) are 0 across all years. max_plan_ben_amt populated for only 102 rows (range $0-$500). Treat this whole block as near-empty in the current extract. | | effective_period_start / effective_period_end | | The benefit year window: Jan-1 to Dec-31 of report_year (dates). Fully derivable from report_year; the profiler's reported time axis (2017-01-01 .. 2026-01-01). | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b19_model_test WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b19_model_test")` first. # MA pbp section b1a inpat hosp `medicare_silver.pbp_section_b1a_inpat_hosp` · Medicare Advantage, Part D, Medicaid · status partial Section B1a: Inpatient hospital (acute) cost-share. Splits from b1b psych starting 2010. Coverage: All years. **Grain.** One row per Medicare Advantage plan-segment per quarterly CMS PBP landscape release, for the inpatient-hospital (acute) benefit. The MINIMAL verified key is (bid_id, report_year, quarter) — 179,479 distinct = exactly the row_count, 0 duplicate rows. Equivalent keys: bid_id + effective_period_start + quarter, or bid_id + observed_period + quarter (report_year ≡ effective_period_start ≡ observed_period). `version` is NOT part of the grain (exactly one version per snapshot). The profiler's 25-column key is a bloated superset (it mistakenly swept the maxplan benefit columns in because their names contain 'plan'). **How to use it.** To get one current-design row per plan for a plan year, pick the latest quarter per plan: e.g. `SELECT bid_id, pbp_a_plan_type, pbp_b1a_copay_mcs_amt_int1_t1, pbp_b1a_copay_mcs_bgnd_int1_t1, pbp_b1a_copay_mcs_endd_int1_t1 FROM medicare_silver.pbp_section_b1a_inpat_hosp WHERE report_year=2026 AND quarter=(SELECT max(quarter) FROM medicare_silver.pbp_section_b1a_inpat_hosp WHERE report_year=2026)`. Answers: 'what is the per-day inpatient copay (and for which days) for each MA plan in 2026?' To read a plan's day-tiered copay, walk int1->int2->int3 with their bgnd/endd day boundaries (e.g. $375/day for days 1-7, then $0). **Traps.** - NO is_current / latest flag exists. The table keeps EVERY quarterly snapshot, so there are multiple rows per plan-year (179,479 rows vs only 92,166 bid x year combos vs 19,819 distinct plans). A query like `WHERE report_year=2023` returns up to 4 rows per plan and will double/quadruple-count. ALWAYS filter to one quarter (e.g. quarter=max per year, or cms_vintage_sequence=max per year). - The grain is (bid_id, report_year, quarter) -- NOT bid_id alone, NOT bid_id+report_year, and `version` is NOT part of it. The profiler reported a 25-column superset key only because the inpatient `maxplan` benefit columns contain the substring 'plan'; those are benefit attributes, not identifiers. - Two parallel copay encodings: a plan populates EITHER the flat per-tier copay (pbp_b1a_copay_mcs_amt_t1) when cost does not vary by day, OR the per-day-interval set (pbp_b1a_copay_mcs_amt_int1_t1 + bgnd/endd day bounds) when it does. Reading only one family misses ~half the plans (in 2026Q1: 5,108 use flat _t1, 4,046 use _int1_t1). 'mcs' = Medicare-Covered Stay; that is the inpatient field -- not _ad (additional days), _up (uncovered), _lrd (lifetime reserve), or _nmcs. - Coinsurance (pbp_b1a_coins_mcs_pct) and deductible (pbp_b1a_ded_amt) are essentially UNUSED for MA inpatient (0 populated in 2026Q1) -- MA inpatient cost-sharing is copay-based. Empty here means 'not how this benefit is structured', not missing data. - The `_bonly` column family (e.g. pbp_b1a_coins_pct_bonly, copay_amt_ps_bonly) is populated ONLY for the ~2% of rows that are Part-B-only plans (pbp_a_ben_cov='2'); it is always null for standard Part-A plans (ben_cov='1'). Use the non-bonly fields for normal plans. - asserted_at (2 values), parse_revision, parser_artifact_hash, sha256_content_hash, source_url, cms_vintage_sequence are silver-layer PROVENANCE/load metadata, not business data. asserted_at is the ingest date (May 2026), not a plan date; cms_vintage_sequence resets to 1 each year (it is the quarter-rank within the year, not a global version). effective_period_start/end and observed_period are fully redundant with report_year (Jan 1 / Dec 31 / Jan 1). - Early years (2010-2017) have ONLY a Q1 snapshot while 2018+ have several quarters, and some year/quarter combos are absent (e.g. 2020 has Q1,Q2,Q4 but no Q3; 2024 has Q1,Q3,Q4 but no Q2). Do not assume four quarters per year. Within-year benefit drift is tiny though (only 2 of 7,741 plans changed inpatient copay between 2023 Q1 and Q4), so any single quarter is a fair representation of that plan-year's design -- but you must still pick exactly one. | column | type | meaning | |---|---|---| | contract_id | string | CMS 5-char MA/MA-PD contract ID (e.g. 'H0028'). 1,680 distinct. First component of bid_id. Joins to other Medicare contract-level tables. | | plan_id | string | 3-char Plan Benefit Package ID within the contract (e.g. '001'). 656 distinct values reused across contracts; NOT unique alone. | | segment_id | string | Plan segment number as string ('0'..'15'). 92% are '0' (single-segment); >0 means a service-area segment of a regional/PPO plan that varies benefits by sub-area. | | version | double | CMS bid submission version of this PBP record (1..27; double). The plan's bid can be refiled many times in a year. Exactly ONE version per (bid,year,quarter) snapshot (verified), so it is a carried attribute, NOT part of the grain. Lower mass at high versions. | | report_year | double | Plan/contract year the benefit design applies to (double, 2010..2026). Equivalent to year(effective_period_start) and year(observed_period) (verified identical). Part of the grain. | | quarter | double | Which quarterly CMS PBP landscape re-release within the plan year (1..4, double). Part of the grain. Early years (2010-2017) have only Q1; 2018+ have multiple quarters. The reason there are ~2.5x more rows than plan-years. | | bid_id | string | The plan-segment identifier = contract_id//'_'//plan_id//'_'//segment_id EXACTLY (verified 0 mismatches), e.g. 'H0028_001_0'. 19,819 distinct plans. This is THE plan key; combine with report_year+quarter for the row grain. | | orgtype | string | CMS contract organization-type code (string): '01'=Local CCP (HMO/PPO, ~90% of rows), '04'=PFFS, '02','05','06','08','11','14'=other org types. Plan-level attribute repeated each snapshot. | | pbp_a_ben_cov | string | Part A/B coverage indicator: '1'=plan covers Part A+B (97.7%), '2'=Part B only (2.1%, has no standard inpatient stay -> uses the _bonly fields), null (288 rows). Gates which cost-share family is populated. | | pbp_a_plan_type | string | MA plan-type code (string): '01'=HMO (50%), '04'=Local/Regional PPO (29%), '02'=HMO-POS, '20','31','18','09','48' etc. Describes the plan product type. | | pbp_b1a_ad_cost_vary_low_tier | string | | | pbp_b1a_ad_cost_vary_tier_num | string | | | pbp_b1a_ad_cost_vary_tiers_yn | string | | | pbp_b1a_auth | string | | | pbp_b1a_auth_bonly | string | | | pbp_b1a_auth_yn | string | | | pbp_b1a_auth_yn_bonly | string | | | pbp_b1a_bendesc_ad_up_nmcs | string | | | pbp_b1a_bendesc_amo_ad | string | | | pbp_b1a_bendesc_amo_iact_bonly | string | | | pbp_b1a_bendesc_amo_nmcs | string | | | pbp_b1a_bendesc_amo_up | string | | | pbp_b1a_bendesc_amt_ad | double | | | pbp_b1a_bendesc_amt_days_bonly | double | | | pbp_b1a_bendesc_lim_ad | string | | | pbp_b1a_bendesc_per_bonly | string | | | pbp_b1a_bendesc_per_bonly_d | string | | | pbp_b1a_bendesc_ulim_bonly | string | | | pbp_b1a_bendesc_yn | string | | | pbp_b1a_bendesc_yn_bonly | string | | | pbp_b1a_coins_ad_bgnd_int1_t1 | double | | | pbp_b1a_coins_ad_bgnd_int1_t2 | double | | | pbp_b1a_coins_ad_bgnd_int1_t3 | double | | | pbp_b1a_coins_ad_bgnd_int2_t1 | double | | | pbp_b1a_coins_ad_bgnd_int2_t2 | double | | | pbp_b1a_coins_ad_bgnd_int2_t3 | double | | | pbp_b1a_coins_ad_bgnd_int3_t1 | double | | | pbp_b1a_coins_ad_bgnd_int3_t2 | double | | | pbp_b1a_coins_ad_bgnd_int3_t3 | double | | | pbp_b1a_coins_ad_bgnd_intrvl1 | double | | | pbp_b1a_coins_ad_bgnd_intrvl2 | double | | | pbp_b1a_coins_ad_bgnd_intrvl3 | double | | | pbp_b1a_coins_ad_endd_int1_t1 | double | | | pbp_b1a_coins_ad_endd_int1_t2 | double | | | pbp_b1a_coins_ad_endd_int1_t3 | double | | | pbp_b1a_coins_ad_endd_int2_t1 | double | | | pbp_b1a_coins_ad_endd_int2_t2 | double | | | pbp_b1a_coins_ad_endd_int2_t3 | double | | | pbp_b1a_coins_ad_endd_int3_t1 | double | | | pbp_b1a_coins_ad_endd_int3_t2 | double | | | pbp_b1a_coins_ad_endd_int3_t3 | double | | | pbp_b1a_coins_ad_endd_intrvl1 | double | | | pbp_b1a_coins_ad_endd_intrvl2 | double | | | pbp_b1a_coins_ad_endd_intrvl3 | double | | | pbp_b1a_coins_ad_intrvl_num | string | | | pbp_b1a_coins_ad_intrvl_num_t1 | string | | | pbp_b1a_coins_ad_intrvl_num_t2 | string | | | pbp_b1a_coins_ad_intrvl_num_t3 | string | | | pbp_b1a_coins_ad_pct_int1_t1 | double | | | pbp_b1a_coins_ad_pct_int1_t2 | double | | | pbp_b1a_coins_ad_pct_int1_t3 | double | | | pbp_b1a_coins_ad_pct_int2_t1 | double | | | pbp_b1a_coins_ad_pct_int2_t2 | double | | | pbp_b1a_coins_ad_pct_int2_t3 | double | | | pbp_b1a_coins_ad_pct_int3_t1 | double | | | pbp_b1a_coins_ad_pct_int3_t2 | double | | | pbp_b1a_coins_ad_pct_int3_t3 | double | | | pbp_b1a_coins_ad_pct_intrvl1 | double | | | pbp_b1a_coins_ad_pct_intrvl2 | double | | | pbp_b1a_coins_ad_pct_intrvl3 | double | | | pbp_b1a_coins_cov_ad | string | | | pbp_b1a_coins_cov_bonly | string | | | pbp_b1a_coins_cov_lrd | string | | | pbp_b1a_coins_cov_mcs | string | | | pbp_b1a_coins_cov_nmcs | string | | | pbp_b1a_coins_cov_up | string | | | pbp_b1a_coins_lrd_bgnd_int1_t1 | double | | | pbp_b1a_coins_lrd_bgnd_int1_t2 | double | | | pbp_b1a_coins_lrd_bgnd_int1_t3 | double | | | pbp_b1a_coins_lrd_bgnd_int2_t1 | double | | | pbp_b1a_coins_lrd_bgnd_int2_t2 | double | | | pbp_b1a_coins_lrd_bgnd_int2_t3 | double | | | pbp_b1a_coins_lrd_bgnd_int3_t1 | double | | | pbp_b1a_coins_lrd_bgnd_int3_t2 | double | | | pbp_b1a_coins_lrd_bgnd_int3_t3 | double | | | pbp_b1a_coins_lrd_bgnd_intrvl1 | double | | | pbp_b1a_coins_lrd_bgnd_intrvl2 | double | | | pbp_b1a_coins_lrd_bgnd_intrvl3 | double | | | pbp_b1a_coins_lrd_endd_int1_t1 | double | | | pbp_b1a_coins_lrd_endd_int1_t2 | double | | | pbp_b1a_coins_lrd_endd_int1_t3 | double | | | pbp_b1a_coins_lrd_endd_int2_t1 | double | | | pbp_b1a_coins_lrd_endd_int2_t2 | double | | | pbp_b1a_coins_lrd_endd_int2_t3 | double | | | pbp_b1a_coins_lrd_endd_int3_t1 | double | | | pbp_b1a_coins_lrd_endd_int3_t2 | double | | | pbp_b1a_coins_lrd_endd_int3_t3 | double | | | pbp_b1a_coins_lrd_endd_intrvl1 | double | | | pbp_b1a_coins_lrd_endd_intrvl2 | double | | | pbp_b1a_coins_lrd_endd_intrvl3 | double | | | pbp_b1a_coins_lrd_int_num_t1 | string | | | pbp_b1a_coins_lrd_int_num_t2 | string | | | pbp_b1a_coins_lrd_int_num_t3 | string | | | pbp_b1a_coins_lrd_intrvl_num | string | | | pbp_b1a_coins_lrd_pct_int1_t1 | double | | | pbp_b1a_coins_lrd_pct_int1_t2 | double | | | pbp_b1a_coins_lrd_pct_int1_t3 | double | | | pbp_b1a_coins_lrd_pct_int2_t1 | double | | | pbp_b1a_coins_lrd_pct_int2_t2 | double | | | pbp_b1a_coins_lrd_pct_int2_t3 | double | | | pbp_b1a_coins_lrd_pct_int3_t1 | double | | | pbp_b1a_coins_lrd_pct_int3_t2 | double | | | pbp_b1a_coins_lrd_pct_int3_t3 | double | | | pbp_b1a_coins_lrd_pct_intrvl1 | double | | | pbp_b1a_coins_lrd_pct_intrvl2 | double | | | pbp_b1a_coins_lrd_pct_intrvl3 | double | | | pbp_b1a_coins_mcs_bgnd_int1_t1 | double | | | pbp_b1a_coins_mcs_bgnd_int1_t2 | double | | | pbp_b1a_coins_mcs_bgnd_int1_t3 | double | | | pbp_b1a_coins_mcs_bgnd_int2_t1 | double | | | pbp_b1a_coins_mcs_bgnd_int2_t2 | double | | | pbp_b1a_coins_mcs_bgnd_int2_t3 | double | | | pbp_b1a_coins_mcs_bgnd_int3_t1 | double | | | pbp_b1a_coins_mcs_bgnd_int3_t2 | double | | | pbp_b1a_coins_mcs_bgnd_int3_t3 | double | | | pbp_b1a_coins_mcs_bgnd_intrvl1 | double | | | pbp_b1a_coins_mcs_bgnd_intrvl2 | double | | | pbp_b1a_coins_mcs_bgnd_intrvl3 | double | | | pbp_b1a_coins_mcs_endd_int1_t1 | double | | | pbp_b1a_coins_mcs_endd_int1_t2 | double | | | pbp_b1a_coins_mcs_endd_int1_t3 | double | | | pbp_b1a_coins_mcs_endd_int2_t1 | double | | | pbp_b1a_coins_mcs_endd_int2_t2 | double | | | pbp_b1a_coins_mcs_endd_int2_t3 | double | | | pbp_b1a_coins_mcs_endd_int3_t1 | double | | | pbp_b1a_coins_mcs_endd_int3_t2 | double | | | pbp_b1a_coins_mcs_endd_int3_t3 | double | | | pbp_b1a_coins_mcs_endd_intrvl1 | double | | | pbp_b1a_coins_mcs_endd_intrvl2 | double | | | pbp_b1a_coins_mcs_endd_intrvl3 | double | | | pbp_b1a_coins_mcs_int_num_t1 | string | | | pbp_b1a_coins_mcs_int_num_t2 | string | | | pbp_b1a_coins_mcs_int_num_t3 | string | | | pbp_b1a_coins_mcs_intrvl_num | string | | | pbp_b1a_coins_mcs_pct | double | | | pbp_b1a_coins_mcs_pct_int1_t1 | double | | | pbp_b1a_coins_mcs_pct_int1_t2 | double | | | pbp_b1a_coins_mcs_pct_int1_t3 | double | | | pbp_b1a_coins_mcs_pct_int2_t1 | double | | | pbp_b1a_coins_mcs_pct_int2_t2 | double | | | pbp_b1a_coins_mcs_pct_int2_t3 | double | | | pbp_b1a_coins_mcs_pct_int3_t1 | double | | | pbp_b1a_coins_mcs_pct_int3_t2 | double | | | pbp_b1a_coins_mcs_pct_int3_t3 | double | | | pbp_b1a_coins_mcs_pct_intrvl1 | double | | | pbp_b1a_coins_mcs_pct_intrvl2 | double | | | pbp_b1a_coins_mcs_pct_intrvl3 | double | | | pbp_b1a_coins_mcs_pct_t1 | double | | | pbp_b1a_coins_mcs_pct_t2 | double | | | pbp_b1a_coins_mcs_pct_t3 | double | | | pbp_b1a_coins_nmcs_bgnd_ntrvl1 | double | | | pbp_b1a_coins_nmcs_bgnd_ntrvl2 | double | | | pbp_b1a_coins_nmcs_bgnd_ntrvl3 | double | | | pbp_b1a_coins_nmcs_endd_ntrvl1 | double | | | pbp_b1a_coins_nmcs_endd_ntrvl2 | double | | | pbp_b1a_coins_nmcs_endd_ntrvl3 | double | | | pbp_b1a_coins_nmcs_intrvl_num | string | | | pbp_b1a_coins_nmcs_pct | double | | | pbp_b1a_coins_nmcs_pct_intrvl1 | double | | | pbp_b1a_coins_nmcs_pct_intrvl2 | double | | | pbp_b1a_coins_nmcs_pct_intrvl3 | double | | | pbp_b1a_coins_nmcs_struc_yn | string | | | pbp_b1a_coins_pct_bonly | double | | | pbp_b1a_coins_pct_up | double | | | pbp_b1a_coins_ps_bgnd1_bonly | double | | | pbp_b1a_coins_ps_bgnd2_bonly | double | | | pbp_b1a_coins_ps_bgnd3_bonly | double | | | pbp_b1a_coins_ps_endd1_bonly | double | | | pbp_b1a_coins_ps_endd2_bonly | double | | | pbp_b1a_coins_ps_endd3_bonly | double | | | pbp_b1a_coins_ps_num_bonly | string | | | pbp_b1a_coins_ps_pct1_bonly | double | | | pbp_b1a_coins_ps_pct2_bonly | double | | | pbp_b1a_coins_ps_pct3_bonly | double | | | pbp_b1a_coins_up_cstshr_yn | string | | | pbp_b1a_coins_yn | string | | | pbp_b1a_coins_yn_bonly | string | | | pbp_b1a_copay_ad_amt_int1_t1 | double | | | pbp_b1a_copay_ad_amt_int1_t2 | double | | | pbp_b1a_copay_ad_amt_int1_t3 | double | | | pbp_b1a_copay_ad_amt_int2_t1 | double | | | pbp_b1a_copay_ad_amt_int2_t2 | double | | | pbp_b1a_copay_ad_amt_int2_t3 | double | | | pbp_b1a_copay_ad_amt_int3_t1 | double | | | pbp_b1a_copay_ad_amt_int3_t2 | double | | | pbp_b1a_copay_ad_amt_int3_t3 | double | | | pbp_b1a_copay_ad_amt_intrvl1 | double | | | pbp_b1a_copay_ad_amt_intrvl2 | double | | | pbp_b1a_copay_ad_amt_intrvl3 | double | | | pbp_b1a_copay_ad_bgnd_int1_t1 | double | | | pbp_b1a_copay_ad_bgnd_int1_t2 | double | | | pbp_b1a_copay_ad_bgnd_int1_t3 | double | | | pbp_b1a_copay_ad_bgnd_int2_t1 | double | | | pbp_b1a_copay_ad_bgnd_int2_t2 | double | | | pbp_b1a_copay_ad_bgnd_int2_t3 | double | | | pbp_b1a_copay_ad_bgnd_int3_t1 | double | | | pbp_b1a_copay_ad_bgnd_int3_t2 | double | | | pbp_b1a_copay_ad_bgnd_int3_t3 | double | | | pbp_b1a_copay_ad_bgnd_intrvl1 | double | | | pbp_b1a_copay_ad_bgnd_intrvl2 | double | | | pbp_b1a_copay_ad_bgnd_intrvl3 | double | | | pbp_b1a_copay_ad_endd_int1_t1 | double | | | pbp_b1a_copay_ad_endd_int1_t2 | double | | | pbp_b1a_copay_ad_endd_int1_t3 | double | | | pbp_b1a_copay_ad_endd_int2_t1 | double | | | pbp_b1a_copay_ad_endd_int2_t2 | double | | | pbp_b1a_copay_ad_endd_int2_t3 | double | | | pbp_b1a_copay_ad_endd_int3_t1 | double | | | pbp_b1a_copay_ad_endd_int3_t2 | double | | | pbp_b1a_copay_ad_endd_int3_t3 | double | | | pbp_b1a_copay_ad_endd_intrvl1 | double | | | pbp_b1a_copay_ad_endd_intrvl2 | double | | | pbp_b1a_copay_ad_endd_intrvl3 | double | | | pbp_b1a_copay_ad_intrvl_num | string | | | pbp_b1a_copay_ad_intrvl_num_t1 | string | | | pbp_b1a_copay_ad_intrvl_num_t2 | string | | | pbp_b1a_copay_ad_intrvl_num_t3 | string | | | pbp_b1a_copay_amt_ps_bonly | double | | | pbp_b1a_copay_lrd_amt_int1_t1 | double | | | pbp_b1a_copay_lrd_amt_int1_t2 | double | | | pbp_b1a_copay_lrd_amt_int1_t3 | double | | | pbp_b1a_copay_lrd_amt_int2_t1 | double | | | pbp_b1a_copay_lrd_amt_int2_t2 | double | | | pbp_b1a_copay_lrd_amt_int2_t3 | double | | | pbp_b1a_copay_lrd_amt_int3_t1 | double | | | pbp_b1a_copay_lrd_amt_int3_t2 | double | | | pbp_b1a_copay_lrd_amt_int3_t3 | double | | | pbp_b1a_copay_lrd_amt_intrvl1 | double | | | pbp_b1a_copay_lrd_amt_intrvl2 | double | | | pbp_b1a_copay_lrd_amt_intrvl3 | double | | | pbp_b1a_copay_lrd_bgnd_int1_t1 | double | | | pbp_b1a_copay_lrd_bgnd_int1_t2 | double | | | pbp_b1a_copay_lrd_bgnd_int1_t3 | double | | | pbp_b1a_copay_lrd_bgnd_int2_t1 | double | | | pbp_b1a_copay_lrd_bgnd_int2_t2 | double | | | pbp_b1a_copay_lrd_bgnd_int2_t3 | double | | | pbp_b1a_copay_lrd_bgnd_int3_t1 | double | | | pbp_b1a_copay_lrd_bgnd_int3_t2 | double | | | pbp_b1a_copay_lrd_bgnd_int3_t3 | double | | | pbp_b1a_copay_lrd_bgnd_intrvl1 | double | | | pbp_b1a_copay_lrd_bgnd_intrvl2 | double | | | pbp_b1a_copay_lrd_bgnd_intrvl3 | double | | | pbp_b1a_copay_lrd_endd_int1_t1 | double | | | pbp_b1a_copay_lrd_endd_int1_t2 | double | | | pbp_b1a_copay_lrd_endd_int1_t3 | double | | | pbp_b1a_copay_lrd_endd_int2_t1 | double | | | pbp_b1a_copay_lrd_endd_int2_t2 | double | | | pbp_b1a_copay_lrd_endd_int2_t3 | double | | | pbp_b1a_copay_lrd_endd_int3_t1 | double | | | pbp_b1a_copay_lrd_endd_int3_t2 | double | | | pbp_b1a_copay_lrd_endd_int3_t3 | double | | | pbp_b1a_copay_lrd_endd_intrvl1 | double | | | pbp_b1a_copay_lrd_endd_intrvl2 | double | | | pbp_b1a_copay_lrd_endd_intrvl3 | double | | | pbp_b1a_copay_lrd_int_num_t1 | string | | | pbp_b1a_copay_lrd_int_num_t2 | string | | | pbp_b1a_copay_lrd_int_num_t3 | string | | | pbp_b1a_copay_lrd_intrvl_num | string | | | pbp_b1a_copay_mcs_amt | double | | | pbp_b1a_copay_mcs_amt_int1_t1 | double | | | pbp_b1a_copay_mcs_amt_int1_t2 | double | | | pbp_b1a_copay_mcs_amt_int1_t3 | double | | | pbp_b1a_copay_mcs_amt_int2_t1 | double | | | pbp_b1a_copay_mcs_amt_int2_t2 | double | | | pbp_b1a_copay_mcs_amt_int2_t3 | double | | | pbp_b1a_copay_mcs_amt_int3_t1 | double | | | pbp_b1a_copay_mcs_amt_int3_t2 | double | | | pbp_b1a_copay_mcs_amt_int3_t3 | double | | | pbp_b1a_copay_mcs_amt_intrvl1 | double | | | pbp_b1a_copay_mcs_amt_intrvl2 | double | | | pbp_b1a_copay_mcs_amt_intrvl3 | double | | | pbp_b1a_copay_mcs_amt_t1 | double | | | pbp_b1a_copay_mcs_amt_t2 | double | | | pbp_b1a_copay_mcs_amt_t3 | double | | | pbp_b1a_copay_mcs_bgnd_int1_t1 | double | | | pbp_b1a_copay_mcs_bgnd_int1_t2 | double | | | pbp_b1a_copay_mcs_bgnd_int1_t3 | double | | | pbp_b1a_copay_mcs_bgnd_int2_t1 | double | | | pbp_b1a_copay_mcs_bgnd_int2_t2 | double | | | pbp_b1a_copay_mcs_bgnd_int2_t3 | double | | | pbp_b1a_copay_mcs_bgnd_int3_t1 | double | | | pbp_b1a_copay_mcs_bgnd_int3_t2 | double | | | pbp_b1a_copay_mcs_bgnd_int3_t3 | double | | | pbp_b1a_copay_mcs_bgnd_intrvl1 | double | | | pbp_b1a_copay_mcs_bgnd_intrvl2 | double | | | pbp_b1a_copay_mcs_bgnd_intrvl3 | double | | | pbp_b1a_copay_mcs_endd_int1_t1 | double | | | pbp_b1a_copay_mcs_endd_int1_t2 | double | | | pbp_b1a_copay_mcs_endd_int1_t3 | double | | | pbp_b1a_copay_mcs_endd_int2_t1 | double | | | pbp_b1a_copay_mcs_endd_int2_t2 | double | | | pbp_b1a_copay_mcs_endd_int2_t3 | double | | | pbp_b1a_copay_mcs_endd_int3_t1 | double | | | pbp_b1a_copay_mcs_endd_int3_t2 | double | | | pbp_b1a_copay_mcs_endd_int3_t3 | double | | | pbp_b1a_copay_mcs_endd_intrvl1 | double | | | pbp_b1a_copay_mcs_endd_intrvl2 | double | | | pbp_b1a_copay_mcs_endd_intrvl3 | double | | | pbp_b1a_copay_mcs_int_num_t1 | string | | | pbp_b1a_copay_mcs_int_num_t2 | string | | | pbp_b1a_copay_mcs_int_num_t3 | string | | | pbp_b1a_copay_mcs_intrvl_num | string | | | pbp_b1a_copay_nmcs_amt | double | | | pbp_b1a_copay_nmcs_amt_intrvl1 | double | | | pbp_b1a_copay_nmcs_amt_intrvl2 | double | | | pbp_b1a_copay_nmcs_amt_intrvl3 | double | | | pbp_b1a_copay_nmcs_bgnd_ntrvl1 | double | | | pbp_b1a_copay_nmcs_bgnd_ntrvl2 | double | | | pbp_b1a_copay_nmcs_bgnd_ntrvl3 | double | | | pbp_b1a_copay_nmcs_endd_ntrvl1 | double | | | pbp_b1a_copay_nmcs_endd_ntrvl2 | double | | | pbp_b1a_copay_nmcs_endd_ntrvl3 | double | | | pbp_b1a_copay_nmcs_intrvl_num | string | | | pbp_b1a_copay_nmcs_struc_yn | string | | | pbp_b1a_copay_ps_amt1_bonly | double | | | pbp_b1a_copay_ps_amt2_bonly | double | | | pbp_b1a_copay_ps_amt3_bonly | double | | | pbp_b1a_copay_ps_bgnd1_bonly | double | | | pbp_b1a_copay_ps_bgnd2_bonly | double | | | pbp_b1a_copay_ps_bgnd3_bonly | double | | | pbp_b1a_copay_ps_endd1_bonly | double | | | pbp_b1a_copay_ps_endd2_bonly | double | | | pbp_b1a_copay_ps_endd3_bonly | double | | | pbp_b1a_copay_ps_num_bonly | string | | | pbp_b1a_copay_up_amt_day | double | | | pbp_b1a_copay_up_amt_stay | double | | | pbp_b1a_copay_up_cstshr_yn | string | | | pbp_b1a_copay_yn | string | | | pbp_b1a_copay_yn_bonly | string | | | pbp_b1a_cost_discharge_yn | string | | | pbp_b1a_cost_share_vary_yn | string | | | pbp_b1a_cost_vary_low_tier | string | | | pbp_b1a_cost_vary_tier_num | string | | | pbp_b1a_cost_vary_tiers_yn | string | | | pbp_b1a_ded_amt | double | | | pbp_b1a_ded_amt_bonly | double | | | pbp_b1a_ded_amt_t1 | double | | | pbp_b1a_ded_amt_t2 | double | | | pbp_b1a_ded_amt_t3 | double | | | pbp_b1a_ded_yn | string | | | pbp_b1a_ded_yn_bonly | string | | | pbp_b1a_discharge_yn_bonly | string | | | pbp_b1a_esrd_copay_amt | double | | | pbp_b1a_esrd_maxenr_amt | double | | | pbp_b1a_hosp_ben_period | string | | | pbp_b1a_hosp_ben_period_oth | string | | | pbp_b1a_maxenr_amt | double | | | pbp_b1a_maxenr_amt_bonly | double | | | pbp_b1a_maxenr_per | string | | | pbp_b1a_maxenr_per_bonly | string | | | pbp_b1a_maxenr_per_bonly_d | string | | | pbp_b1a_maxenr_per_d | string | | | pbp_b1a_maxenr_yn | string | | | pbp_b1a_maxenr_yn_bonly | string | | | pbp_b1a_maxplan_amt_bonly | double | | | pbp_b1a_maxplan_cov_bonly | string | | | pbp_b1a_maxplan_per_bonly | string | | | pbp_b1a_maxplan_per_bonly_d | string | | | pbp_b1a_maxplan_yn_bonly | string | | | pbp_b1a_mc_coins_cstshr_yn_t1 | string | | | pbp_b1a_mc_coins_cstshr_yn_t2 | string | | | pbp_b1a_mc_coins_cstshr_yn_t3 | string | | | pbp_b1a_mc_copay_cstshr_yn_t1 | string | | | pbp_b1a_mc_copay_cstshr_yn_t2 | string | | | pbp_b1a_mc_copay_cstshr_yn_t3 | string | | | pbp_b1a_mdcr_coins_cstshrs_yn | string | | | pbp_b1a_mdcr_copay_cstshrs_yn | string | | | pbp_b1a_pffs_copay_amt | double | | | pbp_b1a_pffs_maxenr_amt | double | | | pbp_b1a_refer_yn | string | | | pbp_b1a_refer_yn_bonly | string | | | observed_period | date | Date the snapshot represents = Jan 1 of report_year (date); identical to effective_period_start (verified). Silver-layer snapshot anchor. | | asserted_at | date | Silver-layer LOAD date -- when Vlada asserted these facts (only 2 values: 2026-05-16, 2026-05-20). Pipeline metadata, NOT a business/CMS date. Do not use for plan-year logic. | | effective_period_start | date | Plan year start = Jan 1 of report_year (date). Silver-layer temporal column; redundant with report_year. Profiler's primary time column (2010-01-01 .. 2026-01-01). | | effective_period_end | date | Plan year end = Dec 31 of report_year (verified, 0 mismatch). Fully redundant with report_year. 17 distinct values. | | cms_vintage_sequence | int | Ordinal of the snapshot WITHIN its report_year (int): 1=Q1, 2=Q2, 3=Q3, 4=Q4 -- it resets each year, it is NOT a global sequence. max(cms_vintage_sequence) per (bid,year) = the latest within-year release. | | parse_revision | int | Parser version that produced the row (int, 1 or 2). Pipeline provenance metadata. | | parser_artifact_hash | string | Hash of the parser artifact used (string). Provenance/lineage metadata. | | source_url | string | URL of the CMS PBP landscape source file (string). Exactly 31 distinct = one per (report_year, quarter) snapshot. The provenance link for every row in a snapshot. | | sha256_content_hash | string | SHA-256 content hash of the source record (string). Provenance/dedup integrity column. | | pbp_b1a_auth_pos | string | | | pbp_b1a_auth_pos_bonly | string | | | pbp_b1a_bendec_yesno_bonly | string | | | pbp_b1a_bendes_per_bonly | string | | | pbp_b1a_coins_cov_pos | string | | | pbp_b1a_coins_cov_pos_bonly | string | | | pbp_b1a_coins_yesno | string | | | pbp_b1a_coins_yesno_bonly | string | | | pbp_b1a_coins_yesno_pos | string | | | pbp_b1a_coins_yesno_pos_bonly | string | | | pbp_b1a_copay_yesno_bonly | string | | | pbp_b1a_copay_yesno_pos | string | | | pbp_b1a_copay_yesno_pos_bonly | string | | | pbp_b1a_ded_yesno_pos | string | | | pbp_b1a_ded_yesno_pos_bonly | string | | | pbp_b1a_maxenr_yesno_bonly | string | | | pbp_b1a_maxenr_yesno_pos | string | | | pbp_b1a_maxenr_yn_pos_bonly | string | | | pbp_b1a_maxplan_yesno_bonly | string | | | pbp_b1a_maxplan_yesno_pos | string | | | pbp_b1a_maxplan_yesno_pos_b | string | | | pbp_b1a_maxpln_cov_pos | string | | | pbp_b1a_maxpln_cov_pos_bonly | string | | | pbp_b1a_maxpln_per_pos | string | | | pbp_b1a_maxpln_per_pos_bonly | string | | | pbp_b1b_auth_bonly | string | | | pbp_b1b_auth_pos | string | | | pbp_b1b_auth_pos_bonly | string | | | pbp_b1b_bendec_yesno_bonly | string | | | pbp_b1b_bendes_per_bonly | string | | | pbp_b1b_bendesc_amo_bonly | string | | | pbp_b1b_bendesc_lim_bonly | string | | | pbp_b1b_coins_cov_pos | string | | | pbp_b1b_coins_cov_pos_bonly | string | | | pbp_b1b_coins_yesno | string | | | pbp_b1b_coins_yesno_bonly | string | | | pbp_b1b_coins_yesno_pos | string | | | pbp_b1b_coins_yesno_pos_bonly | string | | | pbp_b1b_copay_yesno_bonly | string | | | pbp_b1b_copay_yesno_pos | string | | | pbp_b1b_copay_yesno_pos_bonly | string | | | pbp_b1b_ded_yesno_bonly | string | | | pbp_b1b_ded_yesno_pos | string | | | pbp_b1b_ded_yesno_pos_bonly | string | | | pbp_b1b_maxenr__cov_yn_pos | string | | | pbp_b1b_maxenr_cov_yn_pos_b | string | | | pbp_b1b_maxenr_per_bonly | string | | | pbp_b1b_maxenr_type_bonly | string | | | pbp_b1b_maxenr_yesno_bonly | string | | | pbp_b1b_maxenr_yesno_pos | string | | | pbp_b1b_maxenr_yesno_pos_bonly | string | | | pbp_b1b_maxplan_cov_bonly | string | | | pbp_b1b_maxplan_cov_pos | string | | | pbp_b1b_maxplan_cov_pos_bonly | string | | | pbp_b1b_maxplan_per_bonly | string | | | pbp_b1b_maxplan_type_bonly | string | | | pbp_b1b_maxplan_type_pos | string | | | pbp_b1b_maxplan_type_pos_bonly | string | | | pbp_b1b_maxplan_yesno_bonly | string | | | pbp_b1b_maxplan_yesno_pos | string | | | pbp_b1b_maxplan_yesno_pos_b | string | | | pbp_b1b_maxpln_per_pos | string | | | pbp_b1b_maxpln_per_pos_bonly | string | | | pbp_b_1a_auth | string | | | pbp_b_1a_auth_bonly | string | | | pbp_b_1a_bendec_ad_up | string | | | pbp_b_1a_bendec_yesno | string | | | pbp_b_1a_bendesc_amo_ad | string | | | pbp_b_1a_bendesc_amo_up | string | | | pbp_b_1a_bendesc_lim_ad | string | | | pbp_b_1a_coins_cov_ad | string | | | pbp_b_1a_coins_cov_mc | string | | | pbp_b_1a_coins_cov_up | string | | | pbp_b_1a_copay_yesno | string | | | pbp_b_1a_ded_yesno | string | | | pbp_b_1a_ded_yesno_bonly | string | | | pbp_b_1a_maxenr_per | string | | | pbp_b_1a_maxenr_yesno | string | | | pbp_b_1b_auth | string | | | pbp_b_1b_bendec_ad | string | | | pbp_b_1b_bendec_yesno | string | | | pbp_b_1b_bendesc_amo_ad | string | | | pbp_b_1b_bendesc_lim_ad | string | | | pbp_b_1b_coins_cov_ad | string | | | pbp_b_1b_coins_cov_bonly | string | | | pbp_b_1b_coins_cov_mc | string | | | pbp_b_1b_copay_yesno | string | | | pbp_b_1b_ded_yesno | string | | | pbp_b_1b_maxenr_per | string | | | pbp_b_1b_maxenr_type | string | | | pbp_b_1b_maxenr_yesno | string | | | pbp_b1a_copay_mcs_amt_int{1,2,3}_t{1,2,3} (+ _intrvl1..3) | | Inpatient copay DOLLAR amount for a Medicare-Covered Stay (MCS=Medicare-covered stay), per day-interval (int1/2/3) and cost tier (t1/2/3). The headline cost field. Populated ~4,046/7,420 in 2026Q1. e.g. $375 for interval 1. The dominant inpatient cost-share mechanism (coinsurance/deductible are near-zero). | | pbp_b1a_copay_mcs_bgnd_int{n}_t{m} / _endd_int{n}_t{m} | | Begin-day (bgnd) and end-day (endd) of each copay day-interval, e.g. days 1-7 then 8+. Defines the 'pay $X/day for days 1..N then $0' structure. Pairs with the copay_mcs_amt fields. | | pbp_b1a_copay_mcs_amt_t{1,2,3} | | Flat (non-interval) MCS copay per tier, used when copay does NOT vary by day. ALTERNATIVE encoding to the _int* fields (~5,108 populated in 2026Q1). A plan populates EITHER the flat _t* OR the per-interval _int*_t* set, not both -> a real trap when reading copays. | | pbp_b1a_coins_mcs_pct (+ _pct_int*_t*, _pct_t*) | | Inpatient coinsurance PERCENTAGE for a Medicare-covered stay, per interval/tier. Near-zero population for MA (0 in 2026Q1) -- MA inpatient is copay-based, not coinsurance. The _ad (additional days), _up (uncovered/non-Medicare), _lrd (lifetime reserve days), _nmcs (non-MCS) variants exist for special day categories. | | pbp_b1a_ded_amt (+ _t1..t3, _yn) | | Inpatient deductible dollar amount and yes/no flags. ~0 populated for MA inpatient in 2026 (MA plans rarely use a Part-A-style deductible). Mostly null. | | pbp_b1a_maxenr_amt / _per / _yn | | Maximum enrollee out-of-pocket for THIS inpatient benefit, the period it applies over (_per), and yes/no flags. Sparse (~101/7,420 in 2026Q1). | | pbp_b1a_maxplan_* and pbp_b1b_maxplan_* | | Plan-side benefit maximums (amount/coverage/period/yesno) for B-1a and the related B-1b psychiatric section. Mostly null. NOTE: the profiler wrongly swept these into the grain key because their names contain 'plan'; they are benefit attributes, NOT keys. | | pbp_b1a_*_bonly (e.g. coins_pct_bonly, copay_amt_ps_bonly, bendesc_*_bonly) | | Parallel cost-share encoding used ONLY for Part-B-only plans (pbp_a_ben_cov='2'): populated for 274 rows, all under ben_cov='2', zero under '1'. Ignore for standard Part-A plans. | | pbp_b1a_auth / _yn / _refer / _refer_yn (+ _bonly, _pos) | | Prior-authorization and referral requirement codes/flags for inpatient hospital (e.g. auth='00001'). String coded fields describing utilization-management rules, not dollars. | | pbp_b1a_bendesc_* (yn, amo, amt, lim, per, ulim) | | Benefit-description fields: whether a benefit description exists (yn), amount/limit/period of any plan-defined day limit (e.g. amt_days_bonly), unlimited flag. Describe coverage limits on the inpatient benefit. | | pbp_b1a_ad_cost_vary_* / cost_vary_tiers_yn / tier_num | | Flags indicating whether additional-day (ad) cost-sharing varies, the number of cost tiers, and the lowest tier. Govern how to interpret the t1/t2/t3 tier suffixes. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b1a_inpat_hosp WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b1a_inpat_hosp")` first. # MA pbp section b1b inpat hosp psych `medicare_silver.pbp_section_b1b_inpat_hosp_psych` · Medicare Advantage, Part D, Medicaid · status partial Section B1b: Inpatient hospital psych cost-share. Split from b1a in 2010. Coverage: 2010-present. **Grain.** One row per Medicare Advantage plan-segment per benefit year per CMS quarterly release snapshot. The MINIMAL verified-unique key is contract_id + plan_id + segment_id + report_year + quarter, which yields exactly 200,746 distinct combinations = the full row_count (verified one-to-one). 'quarter' is the within-year CMS publication snapshot, so a single plan-year can appear up to 4 times (once per released quarter in 2018+). **How to use it.** Get one row per plan-year (de-duplicating the quarterly snapshots) and read the primary Medicare-covered-stay inpatient-psych copay: SELECT contract_id, plan_id, segment_id, pbp_b1b_copay_mcs_amt_int1_t1 AS copay_days1to5, pbp_b1b_copay_mcs_bgnd_int1_t1 AS begin_day, pbp_b1b_copay_mcs_endd_int1_t1 AS end_day, pbp_b1b_auth_yn FROM pbp_section_b1b_inpat_hosp_psych WHERE report_year=2026 AND quarter=1 AND pbp_a_ben_cov='1'. Answers: 'for plan H#### in 2026, what does a member pay per day for the first days of a psychiatric inpatient stay, and is prior authorization required?' (median first-interval copay ~$333/day for days 1-5, then $0 days 6-90; auth required for ~87% of plans). **Traps.** - MINIMAL GRAIN is 5 columns: contract_id + plan_id + segment_id + report_year + quarter = 200,746 distinct = exactly the row count. The profiler's 14-column key is a SUPERSET — it needlessly pads with bid_id and six pbp_b1b_maxplan_* columns. Do NOT add bid_id (NULL in 7,574 old rows) or version to the key. - `quarter` is the killer trap. It is the CMS WITHIN-YEAR release snapshot, not a benefit attribute. 2002-2017 have only Q1, but 2018+ carry Q1-Q4 (e.g. 2023 = 4 near-identical copies, ~7,750 rows each). Counting plans across years WITHOUT pinning quarter inflates recent years up to 4x. There are 39 distinct year x quarter snapshots vs only 25 report_years. To get one row per plan-year, filter to one quarter (e.g. MAX(quarter) per year) or GROUP BY year only. - No `is_current` column and no snapshot fan-out: the table is already deduped to ONE physical row per logical key (max rows/key=1; exactly 1 cms_vintage_sequence / asserted_at / parse_revision / sha256 per key). It is a 'best-vintage' silver snapshot, NOT SCD-2 history — there is no current-flag to filter and no de-dup step needed beyond picking a quarter. - Cost-share columns are SPARSE and split into day-phase FAMILIES, so naive 'pick the copay column' fails. The populated family for inpatient psych is `mcs` (Medicare-Covered Stay): use pbp_b1b_copay_mcs_amt_int{1,2,3}_t1 (~4,034 plans in 2026) with paired bgnd/endd day boundaries. The `ad` (additional-days) and `lrd` (lifetime-reserve-days) families are tiny (73 / 210 plans). Verified day structure: int1 = days 1-5 (~$333/day copay), int2 = days 6-90 ($0). pct_* columns hold % coinsurance instead of $. - Y/N flags use CMS encoding 1=Yes, 2=No (NOT 1/0, NOT true/false), and NULL means 'not applicable / benefit not covered'. E.g. ded_yn=2 for ~all plans (no separate psych deductible); auth_yn=1 for the vast majority (prior auth required). Also observed_period == effective_period_start == Jan 1 of report_year for every row (redundant), and `version` (PBP software version) varies plan-to-plan within a single year and is NOT a time/dedup key. - Sibling table: pbp_section_b1a_inpat_hosp is ACUTE inpatient hospital; this b1b table is the PSYCHIATRIC inpatient sub-section (Medicare's psych benefit has the unique 190-day lifetime limit and its own day-interval cost-sharing). Don't confuse the two; join both for total inpatient cost-share. All `*_bonly` (Part-B-only-enrollee) columns are effectively empty in modern data. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (e.g. 'H0104', 'H0150'). 1,932 distinct all-time, 914 in 2026. Part 1 of the plan identity. The 'H/R/S/E' prefix encodes contract type. | | plan_id | string | Plan benefit package (PBP) number within the contract (e.g. '001','002','801'). 656 distinct values reused across contracts (NOT unique on its own). Part 2 of plan identity. | | segment_id | string | Plan segment, mostly '000' (non-segmented) with real segment numbers for segmented/regional plans; 27 distinct. Empty-string '' in 4,332 old rows (pre-segment era). Part 3 of plan identity — DO NOT drop it; needed for the unique grain. | | version | double | CMS PBP-authoring software version for that plan filing (double; 27 distinct overall, up to ~22 distinct WITHIN a single year). NOT a snapshot/dedup key, NOT part of the grain — it varies plan-to-plan within one year×quarter. | | report_year | double | CMS contract/benefit year the PBP describes (double: 2002.0 .. 2026.0; 25 distinct). One of the two true time keys. year(observed_period)=report_year for every row. | | quarter | double | CMS within-year RELEASE snapshot (1-4). THE non-obvious grain key. Older years (2002-2017) have only Q1; 2018+ carry multiple quarters (e.g. 2023 has Q1-Q4 ~7,750 rows each). Same plan-year is repeated once per released quarter. | | bid_id | string | CMS bid identifier; NULL for 7,574 oldest rows (pre-bid-id era). Redundant given contract+plan+segment+year — the profiler wrongly included it in the key. Informational only. | | orgtype | string | Organization type code (string; 9 distinct). 2026: 01=Local CCP (6,860), 08=Regional CCP/PPO (396), 11=PFFS, 06, 04, 02. Standard CMS PBP org-type enum. | | pbp_a_ben_cov | string | Carried-down Section-A flag: does the plan cover this benefit. 1=Yes (7,276 in 2026), 2=No (125), NULL (19). Gate: when 2/NULL the b1b cost fields are typically empty. | | pbp_a_plan_type | string | Carried-down plan type code (string; 30 distinct). 2026: 01=HMO (3,056), 04=Local PPO (2,502), 02=HMOPOS (1,302), 20=Regional PPO (396), 31, 18, 09, 07. Standard CMS enum. | | pbp_b1b_ad_cost_vary_low_tier | string | | | pbp_b1b_ad_cost_vary_tier_num | string | | | pbp_b1b_ad_cost_vary_tiers_yn | string | | | pbp_b1b_auth | string | | | pbp_b1b_auth_bonly | string | | | pbp_b1b_auth_yn | string | | | pbp_b1b_auth_yn_bonly | string | | | pbp_b1b_bendesc_ad_nmcs | string | | | pbp_b1b_bendesc_amo_ad | string | | | pbp_b1b_bendesc_amo_bonly | string | | | pbp_b1b_bendesc_amo_nmcs | string | | | pbp_b1b_bendesc_amt_ad | double | | | pbp_b1b_bendesc_amt_bonly | double | | | pbp_b1b_bendesc_lim_ad | string | | | pbp_b1b_bendesc_lim_bonly | string | | | pbp_b1b_bendesc_per_bonly | string | | | pbp_b1b_bendesc_per_bonly_d | string | | | pbp_b1b_bendesc_yn | string | | | pbp_b1b_bendesc_yn_bonly | string | | | pbp_b1b_coins_ad_bgnd_int1_t1 | double | | | pbp_b1b_coins_ad_bgnd_int1_t2 | double | | | pbp_b1b_coins_ad_bgnd_int1_t3 | double | | | pbp_b1b_coins_ad_bgnd_int2_t1 | double | | | pbp_b1b_coins_ad_bgnd_int2_t2 | double | | | pbp_b1b_coins_ad_bgnd_int2_t3 | double | | | pbp_b1b_coins_ad_bgnd_int3_t1 | double | | | pbp_b1b_coins_ad_bgnd_int3_t2 | double | | | pbp_b1b_coins_ad_bgnd_int3_t3 | double | | | pbp_b1b_coins_ad_bgnd_intrvl1 | double | | | pbp_b1b_coins_ad_bgnd_intrvl2 | double | | | pbp_b1b_coins_ad_bgnd_intrvl3 | double | | | pbp_b1b_coins_ad_endd_int1_t1 | double | | | pbp_b1b_coins_ad_endd_int1_t2 | double | | | pbp_b1b_coins_ad_endd_int1_t3 | double | | | pbp_b1b_coins_ad_endd_int2_t1 | double | | | pbp_b1b_coins_ad_endd_int2_t2 | double | | | pbp_b1b_coins_ad_endd_int2_t3 | double | | | pbp_b1b_coins_ad_endd_int3_t1 | double | | | pbp_b1b_coins_ad_endd_int3_t2 | double | | | pbp_b1b_coins_ad_endd_int3_t3 | double | | | pbp_b1b_coins_ad_endd_intrvl1 | double | | | pbp_b1b_coins_ad_endd_intrvl2 | double | | | pbp_b1b_coins_ad_endd_intrvl3 | double | | | pbp_b1b_coins_ad_intrvl_num | string | | | pbp_b1b_coins_ad_intrvl_num_t1 | string | | | pbp_b1b_coins_ad_intrvl_num_t2 | string | | | pbp_b1b_coins_ad_intrvl_num_t3 | string | | | pbp_b1b_coins_ad_pct_int1_t1 | double | | | pbp_b1b_coins_ad_pct_int1_t2 | double | | | pbp_b1b_coins_ad_pct_int1_t3 | double | | | pbp_b1b_coins_ad_pct_int2_t1 | double | | | pbp_b1b_coins_ad_pct_int2_t2 | double | | | pbp_b1b_coins_ad_pct_int2_t3 | double | | | pbp_b1b_coins_ad_pct_int3_t1 | double | | | pbp_b1b_coins_ad_pct_int3_t2 | double | | | pbp_b1b_coins_ad_pct_int3_t3 | double | | | pbp_b1b_coins_ad_pct_intrvl1 | double | | | pbp_b1b_coins_ad_pct_intrvl2 | double | | | pbp_b1b_coins_ad_pct_intrvl3 | double | | | pbp_b1b_coins_cov_ad | string | | | pbp_b1b_coins_cov_bonly | string | | | pbp_b1b_coins_cov_lrd | string | | | pbp_b1b_coins_cov_mcs | string | | | pbp_b1b_coins_cov_nmcs | string | | | pbp_b1b_coins_lrd_bgnd_int1_t1 | double | | | pbp_b1b_coins_lrd_bgnd_int1_t2 | double | | | pbp_b1b_coins_lrd_bgnd_int1_t3 | double | | | pbp_b1b_coins_lrd_bgnd_int2_t1 | double | | | pbp_b1b_coins_lrd_bgnd_int2_t2 | double | | | pbp_b1b_coins_lrd_bgnd_int2_t3 | double | | | pbp_b1b_coins_lrd_bgnd_int3_t1 | double | | | pbp_b1b_coins_lrd_bgnd_int3_t2 | double | | | pbp_b1b_coins_lrd_bgnd_int3_t3 | double | | | pbp_b1b_coins_lrd_bgnd_intrvl1 | double | | | pbp_b1b_coins_lrd_bgnd_intrvl2 | double | | | pbp_b1b_coins_lrd_bgnd_intrvl3 | double | | | pbp_b1b_coins_lrd_endd_int1_t1 | double | | | pbp_b1b_coins_lrd_endd_int1_t2 | double | | | pbp_b1b_coins_lrd_endd_int1_t3 | double | | | pbp_b1b_coins_lrd_endd_int2_t1 | double | | | pbp_b1b_coins_lrd_endd_int2_t2 | double | | | pbp_b1b_coins_lrd_endd_int2_t3 | double | | | pbp_b1b_coins_lrd_endd_int3_t1 | double | | | pbp_b1b_coins_lrd_endd_int3_t2 | double | | | pbp_b1b_coins_lrd_endd_int3_t3 | double | | | pbp_b1b_coins_lrd_endd_intrvl1 | double | | | pbp_b1b_coins_lrd_endd_intrvl2 | double | | | pbp_b1b_coins_lrd_endd_intrvl3 | double | | | pbp_b1b_coins_lrd_int_num_t1 | string | | | pbp_b1b_coins_lrd_int_num_t2 | string | | | pbp_b1b_coins_lrd_int_num_t3 | string | | | pbp_b1b_coins_lrd_intrvl_num | string | | | pbp_b1b_coins_lrd_pct_int1_t1 | double | | | pbp_b1b_coins_lrd_pct_int1_t2 | double | | | pbp_b1b_coins_lrd_pct_int1_t3 | double | | | pbp_b1b_coins_lrd_pct_int2_t1 | double | | | pbp_b1b_coins_lrd_pct_int2_t2 | double | | | pbp_b1b_coins_lrd_pct_int2_t3 | double | | | pbp_b1b_coins_lrd_pct_int3_t1 | double | | | pbp_b1b_coins_lrd_pct_int3_t2 | double | | | pbp_b1b_coins_lrd_pct_int3_t3 | double | | | pbp_b1b_coins_lrd_pct_intrvl1 | double | | | pbp_b1b_coins_lrd_pct_intrvl2 | double | | | pbp_b1b_coins_lrd_pct_intrvl3 | double | | | pbp_b1b_coins_mcs_bgnd_int1_t1 | double | | | pbp_b1b_coins_mcs_bgnd_int1_t2 | double | | | pbp_b1b_coins_mcs_bgnd_int1_t3 | double | | | pbp_b1b_coins_mcs_bgnd_int2_t1 | double | | | pbp_b1b_coins_mcs_bgnd_int2_t2 | double | | | pbp_b1b_coins_mcs_bgnd_int2_t3 | double | | | pbp_b1b_coins_mcs_bgnd_int3_t1 | double | | | pbp_b1b_coins_mcs_bgnd_int3_t2 | double | | | pbp_b1b_coins_mcs_bgnd_int3_t3 | double | | | pbp_b1b_coins_mcs_bgnd_intrvl1 | double | | | pbp_b1b_coins_mcs_bgnd_intrvl2 | double | | | pbp_b1b_coins_mcs_bgnd_intrvl3 | double | | | pbp_b1b_coins_mcs_endd_int1_t1 | double | | | pbp_b1b_coins_mcs_endd_int1_t2 | double | | | pbp_b1b_coins_mcs_endd_int1_t3 | double | | | pbp_b1b_coins_mcs_endd_int2_t1 | double | | | pbp_b1b_coins_mcs_endd_int2_t2 | double | | | pbp_b1b_coins_mcs_endd_int2_t3 | double | | | pbp_b1b_coins_mcs_endd_int3_t1 | double | | | pbp_b1b_coins_mcs_endd_int3_t2 | double | | | pbp_b1b_coins_mcs_endd_int3_t3 | double | | | pbp_b1b_coins_mcs_endd_intrvl1 | double | | | pbp_b1b_coins_mcs_endd_intrvl2 | double | | | pbp_b1b_coins_mcs_endd_intrvl3 | double | | | pbp_b1b_coins_mcs_int_num_t1 | string | | | pbp_b1b_coins_mcs_int_num_t2 | string | | | pbp_b1b_coins_mcs_int_num_t3 | string | | | pbp_b1b_coins_mcs_intrvl_num | string | | | pbp_b1b_coins_mcs_pct_int1_t1 | double | | | pbp_b1b_coins_mcs_pct_int1_t2 | double | | | pbp_b1b_coins_mcs_pct_int1_t3 | double | | | pbp_b1b_coins_mcs_pct_int2_t1 | double | | | pbp_b1b_coins_mcs_pct_int2_t2 | double | | | pbp_b1b_coins_mcs_pct_int2_t3 | double | | | pbp_b1b_coins_mcs_pct_int3_t1 | double | | | pbp_b1b_coins_mcs_pct_int3_t2 | double | | | pbp_b1b_coins_mcs_pct_int3_t3 | double | | | pbp_b1b_coins_mcs_pct_intrvl1 | double | | | pbp_b1b_coins_mcs_pct_intrvl2 | double | | | pbp_b1b_coins_mcs_pct_intrvl3 | double | | | pbp_b1b_coins_mcs_pct_t1 | double | | | pbp_b1b_coins_mcs_pct_t2 | double | | | pbp_b1b_coins_mcs_pct_t3 | double | | | pbp_b1b_coins_nmcs_bgnd_ntrvl1 | double | | | pbp_b1b_coins_nmcs_bgnd_ntrvl2 | double | | | pbp_b1b_coins_nmcs_bgnd_ntrvl3 | double | | | pbp_b1b_coins_nmcs_endd_ntrvl1 | double | | | pbp_b1b_coins_nmcs_endd_ntrvl2 | double | | | pbp_b1b_coins_nmcs_endd_ntrvl3 | double | | | pbp_b1b_coins_nmcs_intrvl_num | string | | | pbp_b1b_coins_nmcs_pct_intrvl1 | double | | | pbp_b1b_coins_nmcs_pct_intrvl2 | double | | | pbp_b1b_coins_nmcs_pct_intrvl3 | double | | | pbp_b1b_coins_nmcs_struc_yn | string | | | pbp_b1b_coins_pct_bonly | double | | | pbp_b1b_coins_pct_mcs | double | | | pbp_b1b_coins_pct_nmcs | double | | | pbp_b1b_coins_ps_bgnd1_bonly | double | | | pbp_b1b_coins_ps_bgnd2_bonly | double | | | pbp_b1b_coins_ps_bgnd3_bonly | double | | | pbp_b1b_coins_ps_endd1_bonly | double | | | pbp_b1b_coins_ps_endd2_bonly | double | | | pbp_b1b_coins_ps_endd3_bonly | double | | | pbp_b1b_coins_ps_num_bonly | string | | | pbp_b1b_coins_ps_pct1_bonly | double | | | pbp_b1b_coins_ps_pct2_bonly | double | | | pbp_b1b_coins_ps_pct3_bonly | double | | | pbp_b1b_coins_yn | string | | | pbp_b1b_coins_yn_bonly | string | | | pbp_b1b_copay_ad_amt_int1_t1 | double | | | pbp_b1b_copay_ad_amt_int1_t2 | double | | | pbp_b1b_copay_ad_amt_int1_t3 | double | | | pbp_b1b_copay_ad_amt_int2_t1 | double | | | pbp_b1b_copay_ad_amt_int2_t2 | double | | | pbp_b1b_copay_ad_amt_int2_t3 | double | | | pbp_b1b_copay_ad_amt_int3_t1 | double | | | pbp_b1b_copay_ad_amt_int3_t2 | double | | | pbp_b1b_copay_ad_amt_int3_t3 | double | | | pbp_b1b_copay_ad_amt_intrvl1 | double | | | pbp_b1b_copay_ad_amt_intrvl2 | double | | | pbp_b1b_copay_ad_amt_intrvl3 | double | | | pbp_b1b_copay_ad_bgnd_int1_t1 | double | | | pbp_b1b_copay_ad_bgnd_int1_t2 | double | | | pbp_b1b_copay_ad_bgnd_int1_t3 | double | | | pbp_b1b_copay_ad_bgnd_int2_t1 | double | | | pbp_b1b_copay_ad_bgnd_int2_t2 | double | | | pbp_b1b_copay_ad_bgnd_int2_t3 | double | | | pbp_b1b_copay_ad_bgnd_int3_t1 | double | | | pbp_b1b_copay_ad_bgnd_int3_t2 | double | | | pbp_b1b_copay_ad_bgnd_int3_t3 | double | | | pbp_b1b_copay_ad_bgnd_intrvl1 | double | | | pbp_b1b_copay_ad_bgnd_intrvl2 | double | | | pbp_b1b_copay_ad_bgnd_intrvl3 | double | | | pbp_b1b_copay_ad_endd_int1_t1 | double | | | pbp_b1b_copay_ad_endd_int1_t2 | double | | | pbp_b1b_copay_ad_endd_int1_t3 | double | | | pbp_b1b_copay_ad_endd_int2_t1 | double | | | pbp_b1b_copay_ad_endd_int2_t2 | double | | | pbp_b1b_copay_ad_endd_int2_t3 | double | | | pbp_b1b_copay_ad_endd_int3_t1 | double | | | pbp_b1b_copay_ad_endd_int3_t2 | double | | | pbp_b1b_copay_ad_endd_int3_t3 | double | | | pbp_b1b_copay_ad_endd_intrvl1 | double | | | pbp_b1b_copay_ad_endd_intrvl2 | double | | | pbp_b1b_copay_ad_endd_intrvl3 | double | | | pbp_b1b_copay_ad_intrvl_num | string | | | pbp_b1b_copay_ad_intrvl_num_t1 | string | | | pbp_b1b_copay_ad_intrvl_num_t2 | string | | | pbp_b1b_copay_ad_intrvl_num_t3 | string | | | pbp_b1b_copay_amt_ps_bonly | double | | | pbp_b1b_copay_lrd_amt_int1_t1 | double | | | pbp_b1b_copay_lrd_amt_int1_t2 | double | | | pbp_b1b_copay_lrd_amt_int1_t3 | double | | | pbp_b1b_copay_lrd_amt_int2_t1 | double | | | pbp_b1b_copay_lrd_amt_int2_t2 | double | | | pbp_b1b_copay_lrd_amt_int2_t3 | double | | | pbp_b1b_copay_lrd_amt_int3_t1 | double | | | pbp_b1b_copay_lrd_amt_int3_t2 | double | | | pbp_b1b_copay_lrd_amt_int3_t3 | double | | | pbp_b1b_copay_lrd_amt_intrvl1 | double | | | pbp_b1b_copay_lrd_amt_intrvl2 | double | | | pbp_b1b_copay_lrd_amt_intrvl3 | double | | | pbp_b1b_copay_lrd_bgnd_int1_t1 | double | | | pbp_b1b_copay_lrd_bgnd_int1_t2 | double | | | pbp_b1b_copay_lrd_bgnd_int1_t3 | double | | | pbp_b1b_copay_lrd_bgnd_int2_t1 | double | | | pbp_b1b_copay_lrd_bgnd_int2_t2 | double | | | pbp_b1b_copay_lrd_bgnd_int2_t3 | double | | | pbp_b1b_copay_lrd_bgnd_int3_t1 | double | | | pbp_b1b_copay_lrd_bgnd_int3_t2 | double | | | pbp_b1b_copay_lrd_bgnd_int3_t3 | double | | | pbp_b1b_copay_lrd_bgnd_intrvl1 | double | | | pbp_b1b_copay_lrd_bgnd_intrvl2 | double | | | pbp_b1b_copay_lrd_bgnd_intrvl3 | double | | | pbp_b1b_copay_lrd_endd_int1_t1 | double | | | pbp_b1b_copay_lrd_endd_int1_t2 | double | | | pbp_b1b_copay_lrd_endd_int1_t3 | double | | | pbp_b1b_copay_lrd_endd_int2_t1 | double | | | pbp_b1b_copay_lrd_endd_int2_t2 | double | | | pbp_b1b_copay_lrd_endd_int2_t3 | double | | | pbp_b1b_copay_lrd_endd_int3_t1 | double | | | pbp_b1b_copay_lrd_endd_int3_t2 | double | | | pbp_b1b_copay_lrd_endd_int3_t3 | double | | | pbp_b1b_copay_lrd_endd_intrvl1 | double | | | pbp_b1b_copay_lrd_endd_intrvl2 | double | | | pbp_b1b_copay_lrd_endd_intrvl3 | double | | | pbp_b1b_copay_lrd_int_num_t1 | string | | | pbp_b1b_copay_lrd_int_num_t2 | string | | | pbp_b1b_copay_lrd_int_num_t3 | string | | | pbp_b1b_copay_lrd_intrvl_num | string | | | pbp_b1b_copay_mcs_amt | double | | | pbp_b1b_copay_mcs_amt_int1_t1 | double | | | pbp_b1b_copay_mcs_amt_int1_t2 | double | | | pbp_b1b_copay_mcs_amt_int1_t3 | double | | | pbp_b1b_copay_mcs_amt_int2_t1 | double | | | pbp_b1b_copay_mcs_amt_int2_t2 | double | | | pbp_b1b_copay_mcs_amt_int2_t3 | double | | | pbp_b1b_copay_mcs_amt_int3_t1 | double | | | pbp_b1b_copay_mcs_amt_int3_t2 | double | | | pbp_b1b_copay_mcs_amt_int3_t3 | double | | | pbp_b1b_copay_mcs_amt_intrvl1 | double | | | pbp_b1b_copay_mcs_amt_intrvl2 | double | | | pbp_b1b_copay_mcs_amt_intrvl3 | double | | | pbp_b1b_copay_mcs_amt_t1 | double | | | pbp_b1b_copay_mcs_amt_t2 | double | | | pbp_b1b_copay_mcs_amt_t3 | double | | | pbp_b1b_copay_mcs_bgnd_int1_t1 | double | | | pbp_b1b_copay_mcs_bgnd_int1_t2 | double | | | pbp_b1b_copay_mcs_bgnd_int1_t3 | double | | | pbp_b1b_copay_mcs_bgnd_int2_t1 | double | | | pbp_b1b_copay_mcs_bgnd_int2_t2 | double | | | pbp_b1b_copay_mcs_bgnd_int2_t3 | double | | | pbp_b1b_copay_mcs_bgnd_int3_t1 | double | | | pbp_b1b_copay_mcs_bgnd_int3_t2 | double | | | pbp_b1b_copay_mcs_bgnd_int3_t3 | double | | | pbp_b1b_copay_mcs_bgnd_intrvl1 | double | | | pbp_b1b_copay_mcs_bgnd_intrvl2 | double | | | pbp_b1b_copay_mcs_bgnd_intrvl3 | double | | | pbp_b1b_copay_mcs_endd_int1_t1 | double | | | pbp_b1b_copay_mcs_endd_int1_t2 | double | | | pbp_b1b_copay_mcs_endd_int1_t3 | double | | | pbp_b1b_copay_mcs_endd_int2_t1 | double | | | pbp_b1b_copay_mcs_endd_int2_t2 | double | | | pbp_b1b_copay_mcs_endd_int2_t3 | double | | | pbp_b1b_copay_mcs_endd_int3_t1 | double | | | pbp_b1b_copay_mcs_endd_int3_t2 | double | | | pbp_b1b_copay_mcs_endd_int3_t3 | double | | | pbp_b1b_copay_mcs_endd_intrvl1 | double | | | pbp_b1b_copay_mcs_endd_intrvl2 | double | | | pbp_b1b_copay_mcs_endd_intrvl3 | double | | | pbp_b1b_copay_mcs_int_num_t1 | string | | | pbp_b1b_copay_mcs_int_num_t2 | string | | | pbp_b1b_copay_mcs_int_num_t3 | string | | | pbp_b1b_copay_mcs_intrvl_num | string | | | pbp_b1b_copay_nmcs_amt | double | | | pbp_b1b_copay_nmcs_amt_intrvl1 | double | | | pbp_b1b_copay_nmcs_amt_intrvl2 | double | | | pbp_b1b_copay_nmcs_amt_intrvl3 | double | | | pbp_b1b_copay_nmcs_bgnd_ntrvl1 | double | | | pbp_b1b_copay_nmcs_bgnd_ntrvl2 | double | | | pbp_b1b_copay_nmcs_bgnd_ntrvl3 | double | | | pbp_b1b_copay_nmcs_endd_ntrvl1 | double | | | pbp_b1b_copay_nmcs_endd_ntrvl2 | double | | | pbp_b1b_copay_nmcs_endd_ntrvl3 | double | | | pbp_b1b_copay_nmcs_intrvl_num | string | | | pbp_b1b_copay_nmcs_struc_yn | string | | | pbp_b1b_copay_ps_amt1_bonly | double | | | pbp_b1b_copay_ps_amt2_bonly | double | | | pbp_b1b_copay_ps_amt3_bonly | double | | | pbp_b1b_copay_ps_bgnd1_bonly | double | | | pbp_b1b_copay_ps_bgnd2_bonly | double | | | pbp_b1b_copay_ps_bgnd3_bonly | double | | | pbp_b1b_copay_ps_endd1_bonly | double | | | pbp_b1b_copay_ps_endd2_bonly | double | | | pbp_b1b_copay_ps_endd3_bonly | double | | | pbp_b1b_copay_ps_num_bonly | string | | | pbp_b1b_copay_yn | string | | | pbp_b1b_copay_yn_bonly | string | | | pbp_b1b_cost_discharge_yn | string | | | pbp_b1b_cost_share_vary_yn | string | | | pbp_b1b_cost_vary_low_tier | string | | | pbp_b1b_cost_vary_tier_num | string | | | pbp_b1b_cost_vary_tiers_yn | string | | | pbp_b1b_ded_amt | double | Per-stay/per-benefit-period inpatient-psych deductible in $ (double). RARELY set (0 non-null in 2026; ded_yn=2 for nearly all). All-time median ~$952, max $2,000 (near the Part A inpatient deductible). Most MA plans use copays, not a separate psych deductible. | | pbp_b1b_ded_amt_bonly | double | | | pbp_b1b_ded_amt_t1 | double | | | pbp_b1b_ded_amt_t2 | double | | | pbp_b1b_ded_amt_t3 | double | | | pbp_b1b_ded_yn | string | | | pbp_b1b_ded_yn_bonly | string | | | pbp_b1b_discharge_yn_bonly | string | | | pbp_b1b_esrd_copay_amt | double | | | pbp_b1b_esrd_maxenr_amt | double | | | pbp_b1b_hosp_ben_period | string | Cost-sharing accumulation basis (string). 2026: 3=per benefit period (4,684), 1=per stay (2,105), 2=per day (86), 4 (rare), NULL (543). Determines whether the copay/coins applies per-stay vs per-period. | | pbp_b1b_hosp_ben_period_oth | string | | | pbp_b1b_maxenr_amt | double | | | pbp_b1b_maxenr_amt_bonly | double | | | pbp_b1b_maxenr_per | string | | | pbp_b1b_maxenr_per_bonly | string | | | pbp_b1b_maxenr_per_bonly_d | string | | | pbp_b1b_maxenr_per_d | string | | | pbp_b1b_maxenr_type | string | | | pbp_b1b_maxenr_type_bonly | string | | | pbp_b1b_maxenr_yn | string | | | pbp_b1b_maxenr_yn_bonly | string | | | pbp_b1b_maxplan_amt_bonly | double | | | pbp_b1b_maxplan_cov_bonly | string | | | pbp_b1b_maxplan_per_bonly | string | | | pbp_b1b_maxplan_per_bonly_d | string | | | pbp_b1b_maxplan_type_bonly | string | | | pbp_b1b_maxplan_yn_bonly | string | | | pbp_b1b_mc_coins_cstshr_yn_t1 | string | | | pbp_b1b_mc_coins_cstshr_yn_t2 | string | | | pbp_b1b_mc_coins_cstshr_yn_t3 | string | | | pbp_b1b_mc_copay_cstshr_yn_t1 | string | | | pbp_b1b_mc_copay_cstshr_yn_t2 | string | | | pbp_b1b_mc_copay_cstshr_yn_t3 | string | | | pbp_b1b_mdcr_coins_cstshrs_yn | string | | | pbp_b1b_mdcr_copay_cstshrs_yn | string | | | pbp_b1b_pffs_copay_amt | double | | | pbp_b1b_pffs_maxenr_amt | double | | | pbp_b1b_refer_yn | string | | | pbp_b1b_refer_yn_bonly | string | | | observed_period | date | Date = Jan 1 of report_year; EQUALS effective_period_start for 100% of rows and is redundant with report_year. Annual granularity — does NOT distinguish quarters. | | asserted_at | date | Provenance: date this record/vintage was asserted into the silver table (e.g. '2026-05-16'). Single-valued per logical key. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Provenance: which CMS re-publication vintage was selected (int; 4 distinct overall, but exactly 1 per logical key — confirming dedup to best vintage). | | parse_revision | int | Provenance: parser revision used (int; 2 distinct overall, 1 per key). parser_artifact_hash = hash of the parser build. | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | pbp_b1b_* (367 benefit columns) | | The Section B-1b 'Inpatient Hospital - Psychiatric' cost-share matrix. Grouped families: ded (7) deductible; copay (149) and coins (154) cost-sharing; auth (4) prior-auth flags; refer (2) referral; maxenr/maxplan/maxplan_bonly OOP caps; esrd/pffs/mc/mdcr special-population variants; hosp_ben_period accumulation basis; bendesc benefit-description. See gotchas for the day-phase encoding. | | pbp_b1b cost-share SUB-STRUCTURE | | Each copay/coins amount is indexed by day-phase family x interval x tier: family prefix mcs=Medicare-Covered Stay (the populated one, ~4-5k plans), lrd=Lifetime Reserve Days, ad=Additional Days (beyond Medicare), nmcs=Non-Medicare-Covered; intN=day-interval (int1/int2/int3); tN=cost tier (t1/t2/t3); bgnd/endd=begin/end DAY of the interval; amt=$ copay, pct=% coinsurance. Verified 2026: mcs int1=days 1-5 (~$333/day), int2=days 6-90 ($0). | | pbp_b1b_*_yn flags | | Boolean drivers, CMS encoding 1=Yes / 2=No (NOT 1/0). 2026: copay_yn 1=5,345/2=1,532; coins_yn 1=1,450/2=5,427 (most plans copay not coins); ded_yn mostly 2 (only 42 charge a psych deductible); auth_yn 1=6,485 (prior auth near-universal). mc_*_cstshr_yn_t1/2/3 = per-tier Medicare-covered cost-share flags. | | pbp_b1b_*_bonly columns | | 'Part-B-only enrollee' cost-share variant (separate copay/coins/ded/maxplan set). Essentially UNUSED in modern data (copay_yn_bonly populated for only 1 of 7,420 rows in 2026). Treat as near-empty. | | effective_period_start / effective_period_end | | Validity window of the plan-year: Jan 1 .. Dec 31 of report_year (dates). effective_period_start is the profiler's declared time_column; both are derivable from report_year. | | source_url / sha256_content_hash | | Provenance: source MRF/PBP file URL and SHA-256 of the source content for lineage/reproducibility. sha256 is single-valued per logical key. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b1b_inpat_hosp_psych WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b1b_inpat_hosp_psych")` first. # MA pbp section b20 `medicare_silver.pbp_section_b20` · Medicare Advantage, Part D, Medicaid · status partial Section B20: Supplemental benefits — other / unclassified. Coverage: All years. **Grain.** One row per Medicare Advantage plan segment per quarterly PBP PUF snapshot. The minimal verified unique key is (contract_id, plan_id, segment_id, report_year, quarter) = exactly 463 distinct = 463 rows. bid_id is just contract_id_plan_id_segment_id concatenated, so (bid_id, report_year, quarter) is an equivalent key. The same plan-year benefit is republished across multiple quarterly PUF releases, so the 463 rows collapse to only 215 distinct plan-years (contract×plan×segment×report_year) spread over 19 quarterly snapshots — there is NO is_current flag and NO dedup, so you must pick a snapshot yourself. **How to use it.** Get the latest-snapshot Part B outpatient-drug cost sharing for each plan in 2024: pick one row per plan from the most recent quarterly PUF, then read the coinsurance. e.g. SELECT contract_id, plan_id, pbp_b20_coins_mc_yn, pbp_b20_coins_mc_pct, pbp_b20_auth_yn FROM pbp_section_b20 WHERE report_year=2024 AND quarter=(SELECT max(quarter) FROM pbp_section_b20 WHERE report_year=2024) — answers 'what do these MA plans charge enrollees (coinsurance %) for Medicare Part B drugs, and do they require prior authorization?' To trend across years, GROUP BY contract_id,plan_id,report_year and take the latest quarter per year to avoid double-counting the republished snapshots. **Traps.** - NO is_current / no dedup, and NO single-version flag. The 463 rows are only 215 distinct plan-years (contract×plan×segment×report_year) republished across 19 quarterly PUF snapshots. Summing or counting rows double-counts plans. To get one row per plan-year, filter to a chosen snapshot (e.g. the max cms_vintage_sequence / latest quarter per report_year) or GROUP to the (contract,plan,segment,report_year) grain. - 'version' is a TRAP for picking 'latest'. It is the plan's bid Version Number (a per-contract attribute that differs across contracts within the very same snapshot, e.g. v1/v5/v8 all in 2020-Q4), NOT a global data vintage. Use cms_vintage_sequence + quarter for snapshot recency; use asserted_at for nothing data-related (it's just the load date). - bid_id, observed_period, and effective_period_start are all redundant restatements of the grain (bid_id = contract_plan_segment; observed_period/effective_period_start = Jan-1 of report_year). pbp_b20_bendesc_grp_num LOOKS like a sub-grain but is NOT — there is exactly one row per plan per snapshot. - This table is Medicare Part B / OUTPATIENT DRUGS (chemo, insulin, other Part B drugs administered in a clinical setting) under MA plans — it is NOT Part D pharmacy benefits. For Part D drug tiers/formulary use the pbp_mrx* tables; sibling pbp_section_b15_partb_rx_drugs also covers Part B Rx, so confirm which section the use-case needs. B20 ('Outpatient Drugs') carries the prior-auth, coinsurance (mostly the standard 20%), and supplemental-bundling design. - Most fields are NULL by design: deductible amount, copay amounts, MOOP, addl_cost, all grp1-5 supplemental blocks, and the maxplan_* caps are almost entirely empty — the sampled plans price Part B drugs via simple Medicare-covered coinsurance (commonly 20%). A NULL _yn means the question wasn't answered/parsed (10 all-null placeholder rows = plan_type '02'/orgtype '01'); a '2' explicitly means 'No'. coins_mc_ehc is a concatenated bitmask code string ('11','101'), not a numeric value. - This is a small SAMPLE (7 contracts / 50 plans), not the national MA universe. Do not treat counts here as population statistics. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (the 'H number', e.g. H0602). 7 distinct in this sample. Part of grain. | | plan_id | string | 3-char plan identifier within the contract (e.g. '001'). 30 distinct values. Part of grain. | | segment_id | string | Plan segment ID; always '0' in this sample (1 distinct). A real PBP grain dimension (plans can have service-area segments) so kept in the canonical key even though it adds no cardinality here. | | pbp_b20_bendesc_grp_num | string | Benefit-description group number for the supplemental (Part C) outpatient-drug benefit. Mostly empty string ''; value '2' on 31 rows. NOT part of the grain — there is always exactly 1 row per plan×snapshot (max rows per cps×year×quarter = 1). | | version | double | CMS dict 'Version Number' — the plan's BID submission version. A per-plan/per-contract attribute that varies across contracts within a single snapshot (in 2020-Q4: H0602=v1, H4140=v8, H5256=v5). NOT a global data vintage; do not use it to pick 'latest'. | | report_year | double | Contract/benefit year the PBP describes (2018-2026, 9 distinct). Part of grain. Equals YEAR(observed_period)=YEAR(effective_period_start). | | quarter | double | Which quarterly PUF release (1-4) the row came from. Part of grain. The SAME report_year appears under several quarters (e.g. 2018 has Q2,Q3,Q4), which is what makes 463 rows but only 215 distinct plan-years. | | bid_id | string | Concatenation contract_id_plan_id_segment_id (e.g. 'H0602_001_0'). Redundant with the three ID columns; (bid_id, report_year, quarter) is an equivalent grain key. | | orgtype | string | CMS organization-type code: '06' (443+10 rows) and '01' (10 rows). '01' co-occurs with the all-null cost-share placeholder rows. | | pbp_a_ben_cov | string | Part A/plan benefit-coverage indicator ('1' on 453 rows, '2' on 10). From the shared PBP Section-A plan header. | | pbp_a_plan_type | string | CMS plan-type code: '18' (453 rows) vs '02' (10 rows). The '02'/orgtype-'01' rows are the all-null B20 placeholder records. | | pbp_b20_addl_cost | string | Does the enrollee pay EXTRA (above coins/copay) for choosing a higher-priced drug when a cheaper one exists? service_category '20(NMC)'=non-Medicare-covered. 1=Yes,2=No. Entirely NULL in data. | | pbp_b20_auth | string | Free-text authorization detail. Entirely NULL in this data. | | pbp_b20_auth_yn | string | Is prior authorization required for Medicare-covered outpatient (Part B) drugs? 1=Yes, 2=No (CMS YN convention). 77 plans=Yes, 288=No, 10 null. | | pbp_b20_b_coins_max_pct | double | | | pbp_b20_b_coins_min_pct | double | | | pbp_b20_b_copay_max | double | | | pbp_b20_b_min_copay | double | | | pbp_b20_bendesc_amo | string | | | pbp_b20_bendesc_yn | string | | | pbp_b20_chemo_coins_max_pct | double | Max coinsurance % for Part B Chemotherapy/Radiation drugs. Always 20.0 where present. | | pbp_b20_coins_awpd_mc_pct | double | | | pbp_b20_coins_awpf_mc_amt | double | | | pbp_b20_coins_awpf_mc_amt_max | double | | | pbp_b20_coins_mc_cov | string | | | pbp_b20_coins_mc_ehc | string | Multi-select code for WHICH Medicare-covered drug categories carry the coinsurance. Raw concatenated yes/no bitmask string (observed '11' with 20%, '101' with 0%). CMS code legend: position1=Other Part B Drugs, position2=Part B Insulin Drugs, position3=Chemotherapy/Radiation Drugs. Treat as a code string, NOT a number. | | pbp_b20_coins_mc_pct | double | Coinsurance % for Medicare-covered Part B drugs (dict title: min coins for chemo/radiation). Only 2 distinct non-null values: 20.0 (standard Part B, 77 rows) and 0.0 (2 rows). 79 non-null total; NULL when coins_mc_yn=2. | | pbp_b20_coins_mc_yn | string | Is there enrollee COINSURANCE for Medicare-COVERED Part B drugs? 1=Yes,2=No. Drives whether the coins_mc_* fields are populated. | | pbp_b20_coins_mcoacp_mc_amt | double | | | pbp_b20_coins_prp_mc_pct | double | | | pbp_b20_copay_max_mc_amt | double | | | pbp_b20_copay_mc_ehc | string | | | pbp_b20_copay_mc_yn | string | | | pbp_b20_copay_min_mc_amt | double | | | pbp_b20_cost_share_attest | string | Cost-share attestation flag. Entirely NULL in this data. | | pbp_b20_ded_amt | double | | | pbp_b20_ded_cdt | string | | | pbp_b20_ded_yn | string | | | pbp_b20_grp1_coins_awp_amt_max | double | | | pbp_b20_grp1_coins_awpd_pct | double | | | pbp_b20_grp1_coins_awpf_amt | double | | | pbp_b20_grp1_coins_cov | string | | | pbp_b20_grp1_coins_mcoacp_amt | double | | | pbp_b20_grp1_coins_pct_drp | double | | | pbp_b20_grp1_coins_pct_hmo | double | | | pbp_b20_grp1_coins_pct_mo | double | | | pbp_b20_grp1_coins_pct_oth | double | | | pbp_b20_grp1_coins_prp_pct | double | | | pbp_b20_grp1_coins_yn | string | | | pbp_b20_grp1_copay_drp_amt | double | | | pbp_b20_grp1_copay_hmo_amt | double | | | pbp_b20_grp1_copay_mo_amt | double | | | pbp_b20_grp1_copay_oth_amt | double | | | pbp_b20_grp1_copay_yn | string | | | pbp_b20_grp1_drp_days | double | | | pbp_b20_grp1_drug_types | string | | | pbp_b20_grp1_hmo_days | double | | | pbp_b20_grp1_label | string | | | pbp_b20_grp1_maxplan_amt_1mth | double | | | pbp_b20_grp1_maxplan_amt_1yr | double | | | pbp_b20_grp1_maxplan_amt_3mth | double | | | pbp_b20_grp1_maxplan_amt_6mth | double | | | pbp_b20_grp1_maxplan_amt_oth | double | | | pbp_b20_grp1_maxplan_amt_pres | double | | | pbp_b20_grp1_maxplan_awpd_pct | double | | | pbp_b20_grp1_maxplan_awpf_amt | double | | | pbp_b20_grp1_maxplan_cov | string | | | pbp_b20_grp1_maxplan_mcoac_amt | double | | | pbp_b20_grp1_maxplan_per | string | | | pbp_b20_grp1_maxplan_per_d | string | | | pbp_b20_grp1_maxplan_prp_pct | double | | | pbp_b20_grp1_maxplan_yn | string | | | pbp_b20_grp1_maxpln_awp_amt_mx | double | | | pbp_b20_grp1_mo_days | double | | | pbp_b20_grp1_name | string | | | pbp_b20_grp1_oth_days | double | | | pbp_b20_grp1_place | string | | | pbp_b20_grp1_place_d | string | | | pbp_b20_grp2_coins_awp_amt_max | double | | | pbp_b20_grp2_coins_awpd_pct | double | | | pbp_b20_grp2_coins_awpf_amt | double | | | pbp_b20_grp2_coins_cov | string | | | pbp_b20_grp2_coins_mcoacp_amt | double | | | pbp_b20_grp2_coins_pct_drp | double | | | pbp_b20_grp2_coins_pct_hmo | double | | | pbp_b20_grp2_coins_pct_mo | double | | | pbp_b20_grp2_coins_pct_oth | double | | | pbp_b20_grp2_coins_prp_pct | double | | | pbp_b20_grp2_coins_yn | string | | | pbp_b20_grp2_copay_drp_amt | double | | | pbp_b20_grp2_copay_hmo_amt | double | | | pbp_b20_grp2_copay_mo_amt | double | | | pbp_b20_grp2_copay_oth_amt | double | | | pbp_b20_grp2_copay_yn | string | | | pbp_b20_grp2_drp_days | double | | | pbp_b20_grp2_drug_types | string | | | pbp_b20_grp2_hmo_days | double | | | pbp_b20_grp2_label | string | | | pbp_b20_grp2_maxplan_amt_1mth | double | | | pbp_b20_grp2_maxplan_amt_1yr | double | | | pbp_b20_grp2_maxplan_amt_3mth | double | | | pbp_b20_grp2_maxplan_amt_6mth | double | | | pbp_b20_grp2_maxplan_amt_oth | double | | | pbp_b20_grp2_maxplan_amt_pres | double | | | pbp_b20_grp2_maxplan_awpd_pct | double | | | pbp_b20_grp2_maxplan_awpf_amt | double | | | pbp_b20_grp2_maxplan_cov | string | | | pbp_b20_grp2_maxplan_mcoac_amt | double | | | pbp_b20_grp2_maxplan_per | string | | | pbp_b20_grp2_maxplan_per_d | string | | | pbp_b20_grp2_maxplan_prp_pct | double | | | pbp_b20_grp2_maxplan_yn | string | | | pbp_b20_grp2_maxpln_awp_amt_mx | double | | | pbp_b20_grp2_mo_days | double | | | pbp_b20_grp2_name | string | | | pbp_b20_grp2_oth_days | double | | | pbp_b20_grp2_place | string | | | pbp_b20_grp2_place_d | string | | | pbp_b20_grp3_coins_awp_amt_max | double | | | pbp_b20_grp3_coins_awpd_pct | double | | | pbp_b20_grp3_coins_awpf_amt | double | | | pbp_b20_grp3_coins_cov | string | | | pbp_b20_grp3_coins_mcoacp_amt | double | | | pbp_b20_grp3_coins_pct_drp | double | | | pbp_b20_grp3_coins_pct_hmo | double | | | pbp_b20_grp3_coins_pct_mo | double | | | pbp_b20_grp3_coins_pct_oth | double | | | pbp_b20_grp3_coins_prp_pct | double | | | pbp_b20_grp3_coins_yn | string | | | pbp_b20_grp3_copay_drp_amt | double | | | pbp_b20_grp3_copay_hmo_amt | double | | | pbp_b20_grp3_copay_mo_amt | double | | | pbp_b20_grp3_copay_oth_amt | double | | | pbp_b20_grp3_copay_yn | string | | | pbp_b20_grp3_drp_days | double | | | pbp_b20_grp3_drug_types | string | | | pbp_b20_grp3_hmo_days | double | | | pbp_b20_grp3_label | string | | | pbp_b20_grp3_maxplan_amt_1mth | double | | | pbp_b20_grp3_maxplan_amt_1yr | double | | | pbp_b20_grp3_maxplan_amt_3mth | double | | | pbp_b20_grp3_maxplan_amt_6mth | double | | | pbp_b20_grp3_maxplan_amt_oth | double | | | pbp_b20_grp3_maxplan_amt_pres | double | | | pbp_b20_grp3_maxplan_awpd_pct | double | | | pbp_b20_grp3_maxplan_awpf_amt | double | | | pbp_b20_grp3_maxplan_cov | string | | | pbp_b20_grp3_maxplan_mcoac_amt | double | | | pbp_b20_grp3_maxplan_per | string | | | pbp_b20_grp3_maxplan_per_d | string | | | pbp_b20_grp3_maxplan_prp_pct | double | | | pbp_b20_grp3_maxplan_yn | string | | | pbp_b20_grp3_maxpln_awp_amt_mx | double | | | pbp_b20_grp3_mo_days | double | | | pbp_b20_grp3_name | string | | | pbp_b20_grp3_oth_days | double | | | pbp_b20_grp3_place | string | | | pbp_b20_grp3_place_d | string | | | pbp_b20_grp4_coins_awp_amt_max | double | | | pbp_b20_grp4_coins_awpd_pct | double | | | pbp_b20_grp4_coins_awpf_amt | double | | | pbp_b20_grp4_coins_cov | string | | | pbp_b20_grp4_coins_mcoacp_amt | double | | | pbp_b20_grp4_coins_pct_drp | double | | | pbp_b20_grp4_coins_pct_hmo | double | | | pbp_b20_grp4_coins_pct_mo | double | | | pbp_b20_grp4_coins_pct_oth | double | | | pbp_b20_grp4_coins_prp_pct | double | | | pbp_b20_grp4_coins_yn | string | | | pbp_b20_grp4_copay_drp_amt | double | | | pbp_b20_grp4_copay_hmo_amt | double | | | pbp_b20_grp4_copay_mo_amt | double | | | pbp_b20_grp4_copay_oth_amt | double | | | pbp_b20_grp4_copay_yn | string | | | pbp_b20_grp4_drp_days | double | | | pbp_b20_grp4_drug_types | string | | | pbp_b20_grp4_hmo_days | double | | | pbp_b20_grp4_label | string | | | pbp_b20_grp4_maxplan_amt_1mth | double | | | pbp_b20_grp4_maxplan_amt_1yr | double | | | pbp_b20_grp4_maxplan_amt_3mth | double | | | pbp_b20_grp4_maxplan_amt_6mth | double | | | pbp_b20_grp4_maxplan_amt_oth | double | | | pbp_b20_grp4_maxplan_amt_pres | double | | | pbp_b20_grp4_maxplan_awpd_pct | double | | | pbp_b20_grp4_maxplan_awpf_amt | double | | | pbp_b20_grp4_maxplan_cov | string | | | pbp_b20_grp4_maxplan_mcoac_amt | double | | | pbp_b20_grp4_maxplan_per | string | | | pbp_b20_grp4_maxplan_per_d | string | | | pbp_b20_grp4_maxplan_prp_pct | double | | | pbp_b20_grp4_maxplan_yn | string | | | pbp_b20_grp4_maxpln_awp_amt_mx | double | | | pbp_b20_grp4_mo_days | double | | | pbp_b20_grp4_name | string | | | pbp_b20_grp4_oth_days | double | | | pbp_b20_grp4_place | string | | | pbp_b20_grp4_place_d | string | | | pbp_b20_grp5_coins_awp_amt_max | double | | | pbp_b20_grp5_coins_awpd_pct | double | | | pbp_b20_grp5_coins_awpf_amt | double | | | pbp_b20_grp5_coins_cov | string | | | pbp_b20_grp5_coins_mcoacp_amt | double | | | pbp_b20_grp5_coins_pct_drp | double | | | pbp_b20_grp5_coins_pct_hmo | double | | | pbp_b20_grp5_coins_pct_mo | double | | | pbp_b20_grp5_coins_pct_oth | double | | | pbp_b20_grp5_coins_prp_pct | double | | | pbp_b20_grp5_coins_yn | string | | | pbp_b20_grp5_copay_drp_amt | double | | | pbp_b20_grp5_copay_hmo_amt | double | | | pbp_b20_grp5_copay_mo_amt | double | | | pbp_b20_grp5_copay_oth_amt | double | | | pbp_b20_grp5_copay_yn | string | | | pbp_b20_grp5_drp_days | double | | | pbp_b20_grp5_drug_types | string | | | pbp_b20_grp5_hmo_days | double | | | pbp_b20_grp5_label | string | | | pbp_b20_grp5_maxplan_amt_1mth | double | | | pbp_b20_grp5_maxplan_amt_1yr | double | | | pbp_b20_grp5_maxplan_amt_3mth | double | | | pbp_b20_grp5_maxplan_amt_6mth | double | | | pbp_b20_grp5_maxplan_amt_oth | double | | | pbp_b20_grp5_maxplan_amt_pres | double | | | pbp_b20_grp5_maxplan_awpd_pct | double | | | pbp_b20_grp5_maxplan_awpf_amt | double | | | pbp_b20_grp5_maxplan_cov | string | | | pbp_b20_grp5_maxplan_mcoac_amt | double | | | pbp_b20_grp5_maxplan_per | string | | | pbp_b20_grp5_maxplan_per_d | string | | | pbp_b20_grp5_maxplan_prp_pct | double | | | pbp_b20_grp5_maxplan_yn | string | | | pbp_b20_grp5_maxpln_awp_amt_mx | double | | | pbp_b20_grp5_mo_days | double | | | pbp_b20_grp5_name | string | | | pbp_b20_grp5_oth_days | double | | | pbp_b20_grp5_place | string | | | pbp_b20_grp5_place_d | string | | | pbp_b20_hi_coins_pct_max | double | | | pbp_b20_hi_coins_pct_min | double | | | pbp_b20_hi_coins_yn | string | | | pbp_b20_hi_copay_amt_max | double | | | pbp_b20_hi_copay_amt_min | double | | | pbp_b20_hi_copay_yn | string | | | pbp_b20_hi_yn | string | | | pbp_b20_insulin_coins_max_pct | double | | | pbp_b20_insulin_coins_min_pct | double | | | pbp_b20_insulin_copay_max | double | | | pbp_b20_insulin_copay_min | double | | | pbp_b20_maxenr_amt | double | | | pbp_b20_maxenr_cdt | string | | | pbp_b20_maxenr_per | string | | | pbp_b20_maxenr_yn | string | | | pbp_b20_maxplan_amt_1mth | double | | | pbp_b20_maxplan_amt_1yr | double | | | pbp_b20_maxplan_amt_3mth | double | | | pbp_b20_maxplan_amt_6mth | double | | | pbp_b20_maxplan_amt_cdt_1mth | double | | | pbp_b20_maxplan_amt_cdt_1yr | double | | | pbp_b20_maxplan_amt_cdt_3mth | double | | | pbp_b20_maxplan_amt_cdt_6mth | double | | | pbp_b20_maxplan_amt_cdt_oth | double | | | pbp_b20_maxplan_amt_oth | double | | | pbp_b20_maxplan_awpd_cdt_pct | double | | | pbp_b20_maxplan_awpf_cdt_amt | double | | | pbp_b20_maxplan_cdt | string | | | pbp_b20_maxplan_cov_cdt | string | | | pbp_b20_maxplan_grp_unlm_yn | string | | | pbp_b20_maxplan_grp_waived | string | | | pbp_b20_maxplan_mcoacp_cdt_amt | double | | | pbp_b20_maxplan_net_copay_yn | string | | | pbp_b20_maxplan_per | string | | | pbp_b20_maxplan_per_cdt | string | | | pbp_b20_maxplan_per_cdt_d | string | | | pbp_b20_maxplan_per_d | string | | | pbp_b20_maxplan_prp_cdt_pct | double | | | pbp_b20_maxplan_types | string | | | pbp_b20_maxplan_unused_yn | string | | | pbp_b20_maxplan_yn | string | | | pbp_b20_maxpln_awpf_cdt_amt_mx | double | | | observed_period | date | Provenance: Jan-1 of report_year (the benefit-year start). Redundant with report_year as the year-grain; equals effective_period_start here. | | asserted_at | date | Provenance: pipeline load/assert date (2026-05-16 or 2026-05-20). Bookkeeping only, NOT data-meaningful; do not use for recency. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Provenance: the Nth PUF release within the report_year (1..4, roughly tracking the quarter). The real 'which snapshot' lineage marker — pair with (report_year,quarter) to choose one snapshot per plan-year. | | parse_revision | int | Provenance: internal parser revision (1 or 2 here). | | parser_artifact_hash | string | Provenance: hash of the parser artifact that produced the row. | | source_url | string | Provenance: the exact CMS PBP zip the row was extracted from (e.g. .../pbp-benefits-2019-q4.zip). Lets you trace each snapshot to its CMS release. | | sha256_content_hash | string | Provenance: SHA-256 of the source file content for integrity/dedup. | | pbp_b20_b_coins_min_pct / pbp_b20_b_coins_max_pct | | Min/max coinsurance % for 'other' Medicare Part B drugs. Range 0-20%. | | pbp_b20_insulin_coins_min_pct / _max_pct / pbp_b20_insulin_copay_min / _max | | Cost-sharing for Medicare Part B INSULIN drugs (max coinsurance % / copay $). Largely null in this slice. | | pbp_b20_copay_mc_yn / pbp_b20_copay_min_mc_amt / pbp_b20_copay_max_mc_amt / pbp_b20_b_min_copay / pbp_b20_b_copay_max | | COPAY (flat-dollar) alternative to coinsurance for Medicare-covered / other Part B drugs. copay_mc_yn 1=Yes/2=No; copay amounts are 0 non-null in this slice (this data is coinsurance-based, not copay-based). | | pbp_b20_ded_yn / pbp_b20_ded_amt / pbp_b20_ded_cdt | | Enrollee deductible for outpatient drugs: flag (1=Yes,2=No, mostly No), dollar amount (entirely NULL here), and combined-deductible-type code. | | pbp_b20_maxenr_yn / pbp_b20_maxenr_amt / pbp_b20_maxenr_per / pbp_b20_maxenr_cdt | | Maximum enrollee out-of-pocket for Part B drugs: flag (1=Yes,2=No), amount (only 1 non-null = 0.0), period, and CDT code. Almost always 'No' in this slice. | | pbp_b20_bendesc_yn / pbp_b20_bendesc_amo | | Does the plan provide outpatient drugs as a SUPPLEMENTAL (non-Medicare-covered) benefit under Part C? 1=Yes,2=No. bendesc_amo (amount) entirely NULL. | | pbp_b20_hi_yn / pbp_b20_hi_coins_* / pbp_b20_hi_copay_* | | HOME INFUSION: does the plan bundle Part D home-infusion drugs as a supplemental benefit (1=Yes,2=No), and its coinsurance %/copay $ min-max. Mostly 'No'/null. | | pbp_b20_grp1..grp5_* (coins/copay/maxplan/drug_types/days/label/name/place) | | Up to 5 supplemental-benefit GROUPS, each a wide repeated block describing a Part-C drug benefit group's cost sharing: coinsurance % (by HMO/MO/DRP/OTH delivery channel), copay $ by channel, day limits, drug types covered, plan-maximum benefit caps (1mth/3mth/6mth/1yr/pres/oth), labels and place-of-service. Almost entirely NULL in this sample (the sampled plans use only Medicare-covered cost sharing, no supplemental drug groups). | | pbp_b20_maxplan_* and pbp_b20_maxplan_*_cdt (amt_1mth/3mth/6mth/1yr/oth, per, types, cov, grp_unlm_yn, grp_waived, net_copay_yn, unused_yn, prp_pct, awpd/awpf) | | Plan-level maximum-benefit (benefit cap) parameters for the supplemental outpatient-drug benefit, including combined-deductible-type ('_cdt') variants and AWP-discount/MCOAC pricing fields. Almost all NULL in this slice. | | effective_period_start / effective_period_end | | Provenance: benefit-year window, Jan-1 to Dec-31 of report_year. effective_period_start is the profiler's temporal column (annual). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b20 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b20")` first. # MA pbp section b2 snf `medicare_silver.pbp_section_b2_snf` · Medicare Advantage, Part D, Medicaid · status partial Section B2: Skilled nursing facility cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan-segment per benefit year per CMS quarterly PBP release. The minimal verified key is contract_id x plan_id x segment_id x report_year x quarter = 201,488 distinct = full row count (0 duplicate groups, max 1 row/group). Each (report_year, quarter) is a distinct CMS quarterly re-publication of that plan's SNF benefit design; older years (2001-2017) have only quarter=1, newer years carry up to 4 quarterly snapshots of the same plan-year. **How to use it.** Get the current (latest-quarter) 2026 in-network SNF per-day copay for days 21-100 per MA plan: SELECT contract_id, plan_id, segment_id, pbp_b2_copay_mcs_bgnd_int2_t1 AS day_from, pbp_b2_copay_mcs_endd_int2_t1 AS day_to, pbp_b2_copay_mcs_amt_int2_t1 AS copay_per_day FROM (SELECT *, ROW_NUMBER() OVER (PARTITION BY contract_id,plan_id,segment_id,report_year ORDER BY quarter DESC) rn FROM pbp_section_b2_snf WHERE report_year=2026 AND pbp_a_ben_cov='1') WHERE rn=1 AND pbp_b2_copay_mcs_amt_int2_t1 IS NOT NULL. This answers 'what does each Medicare Advantage plan charge per day for a skilled nursing stay after the first 20 days', e.g. H0028 plan 007 = $218/day for days 21-100 ($0 for days 1-20). **Traps.** - COST-SHARING COLUMN FAMILIES SHIFT BY ERA (the #1 trap). Legacy flat columns (pbp_b2_copay_120_amts, pbp_b2_copay_21100_amts, pbp_b2_coins_pct_120/21100, pbp_b_2_ded_amt) are populated ONLY in 2001. Aggregate Medicare-covered-stay columns (pbp_b2_copay_mcs_amt, pbp_b2_coins_mcs_pct, pbp_b2_copay_nmcs_amt) cover 2002-2015. Per-interval/per-tier columns (pbp_b2_copay_mcs_amt_int{1,2,3}_t{1,2,3}, pbp_b2_coins_mcs_pct_int*_t*) cover 2016-2026. Querying SNF copay for a recent year using the flat _120/_21100/_mcs_amt columns returns ALL NULL -- you must use the int*_t* interval columns for 2016+. - NO is_current column. The same plan-year can have up to 4 retained quarterly snapshots (17,470 plan-years have all 4 quarters). To get one current row per plan, dedup with ROW_NUMBER() OVER (PARTITION BY contract_id,plan_id,segment_id,report_year ORDER BY quarter DESC) -- or by cms_vintage_sequence DESC. quarter and cms_vintage_sequence track release recency but are NOT identical (e.g. 2021 Q1=vintage 4). - bid_id LOOKS like a key but is NOT: it is NULL in 8,316 rows and is otherwise just the concat contract_id_plan_id_segment_id. Use the five component grain columns, not bid_id. The profiler's reported 16-column grain (incl pbp_b2_maxplan_* and version) is a SUPERSET -- those benefit/version columns are mostly NULL and not needed; the true minimal key is contract_id x plan_id x segment_id x report_year x quarter. - 'version' is a per-plan BID version number (0-27), not a table/snapshot version -- many version values coexist inside one (report_year, quarter) release. Similarly pbp_b2_hosp_ben_period is a benefit-period CODE ('1'-'4'), NOT a date despite 'period' in its name, and observed_period/effective_period_start are just Jan-1-of-report_year (annual, redundant with report_year). - Two parse runs live in asserted_at (2026-05-16 parse_revision=1 = all years; 2026-05-20 parse_revision=2 = re-parse of 2018-2024). The re-parse REPLACED rows so the grain stays unique, but filtering on parse_revision/asserted_at would silently drop years. Coverage is also irregular: not every year has 4 quarters (2020 no Q3, 2021 Q1-only, 2024 no Q2). Filter pbp_a_ben_cov='1' to keep only plans that actually offer SNF (4,373 rows are '2'=not offered). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage/Part D contract ID (e.g. 'H0028'). 1,972 distinct. Part of the grain. Joins to plan-level CMS tables on contract. | | plan_id | string | Plan ID within the contract (e.g. '001','008'), zero-padded 3-char string. 656 distinct values (reused across contracts). Part of the grain. | | segment_id | string | Plan segment ID (e.g. '0','1','2') for plans that vary benefits by service-area segment. 27 distinct; '0' for non-segmented plans. Part of the grain. | | version | double | Per-row plan bid version counter, 0-27. This is the plan's PBP submission/bid version, NOT a snapshot version of the table; many different version values coexist within one (report_year, quarter) release. Exactly 1 value per grain row, so not needed in the key. | | report_year | double | Benefit/contract year the SNF design applies to (double 2001.0-2026.0, 26 distinct). Part of the grain. Equals year of effective_period_start. | | quarter | double | CMS quarterly PBP release within the contract year (1-4). Part of the grain - the same plan-year appears as separate rows for each quarterly re-release CMS published. Only quarter=1 exists for 2001-2017; 2018+ has multiple quarters but coverage is irregular (2020 missing Q3, 2021 Q1-only, 2024 missing Q2). | | bid_id | string | Composite 'contract_id_plan_id_segment_id' (e.g. 'H0028_008_1'). NULL in 8,316 rows (mostly older years) so it is NOT a safe key; redundant with the three component columns when present. | | orgtype | string | CMS organization-type code (string). '01'=dominant (177,737, local CCP/HMO-PPO), then '08','04','11','06','05','02'. Identifies the MA organization structure. | | pbp_a_ben_cov | string | Benefit-offered flag carried from PBP section A: '1'=SNF benefit offered (196,773), '2'=not offered (4,373), NULL=342. Filter to '1' for plans that actually cover SNF. | | pbp_a_plan_type | string | CMS plan-type code (string): '01'=HMO (101,510), '04'=Local PPO (55,909), '02'=HMO-POS (20,097), '20'=PFFS, '09'=Regional PPO, '31'=MSA, etc. From section A. | | pbp_b2_ad_cost_vary_low_tier | string | | | pbp_b2_ad_cost_vary_tier_num | string | | | pbp_b2_ad_cost_vary_tiers_yn | string | | | pbp_b2_auth | string | | | pbp_b2_auth_bonly | string | | | pbp_b2_auth_pos | string | | | pbp_b2_auth_pos_bonly | string | | | pbp_b2_auth_yn | string | | | pbp_b2_auth_yn_bonly | string | | | pbp_b2_bende_al_ad_prior_bonly | double | | | pbp_b2_bende_nmday_prior_bonly | string | | | pbp_b2_bendec_pr_al_ad_cs | string | | | pbp_b2_bendec_yesno | string | | | pbp_b2_bendec_yesno_bonly | string | | | pbp_b2_bendes_snf_per_bonly | string | | | pbp_b2_bendesc_ad | double | | | pbp_b2_bendesc_ad_nmcs | string | | | pbp_b2_bendesc_al_ad | double | | | pbp_b2_bendesc_al_ad_prior | double | | | pbp_b2_bendesc_al_ad_prior_b | double | | | pbp_b2_bendesc_amo_ad | string | | | pbp_b2_bendesc_amo_al | string | | | pbp_b2_bendesc_amo_bonly | string | | | pbp_b2_bendesc_amo_nmcs | string | | | pbp_b2_bendesc_amo_pr | string | | | pbp_b2_bendesc_hostay_bonly_yn | string | | | pbp_b2_bendesc_pr_hosp_num | string | | | pbp_b2_bendesc_pr_hosp_yn | string | | | pbp_b2_bendesc_snf_per_bonly | string | | | pbp_b2_bendesc_snf_per_bonly_d | string | | | pbp_b2_bendesc_snf_unlm_bonly | string | | | pbp_b2_bendesc_snfcare_amo_b | string | | | pbp_b2_bendesc_yn | string | | | pbp_b2_bendesc_yn_bonly | string | | | pbp_b2_benedesc_lim_ad | string | | | pbp_b2_coins_ad_bgnd_int1_t1 | double | | | pbp_b2_coins_ad_bgnd_int1_t2 | double | | | pbp_b2_coins_ad_bgnd_int1_t3 | double | | | pbp_b2_coins_ad_bgnd_int2_t1 | double | | | pbp_b2_coins_ad_bgnd_int2_t2 | double | | | pbp_b2_coins_ad_bgnd_int2_t3 | double | | | pbp_b2_coins_ad_bgnd_int3_t1 | double | | | pbp_b2_coins_ad_bgnd_int3_t2 | double | | | pbp_b2_coins_ad_bgnd_int3_t3 | double | | | pbp_b2_coins_ad_bgnd_intrvl1 | double | | | pbp_b2_coins_ad_bgnd_intrvl2 | double | | | pbp_b2_coins_ad_bgnd_intrvl3 | double | | | pbp_b2_coins_ad_endd_int1_t1 | double | | | pbp_b2_coins_ad_endd_int1_t2 | double | | | pbp_b2_coins_ad_endd_int1_t3 | double | | | pbp_b2_coins_ad_endd_int2_t1 | double | | | pbp_b2_coins_ad_endd_int2_t2 | double | | | pbp_b2_coins_ad_endd_int2_t3 | double | | | pbp_b2_coins_ad_endd_int3_t1 | double | | | pbp_b2_coins_ad_endd_int3_t2 | double | | | pbp_b2_coins_ad_endd_int3_t3 | double | | | pbp_b2_coins_ad_endd_intrvl1 | double | | | pbp_b2_coins_ad_endd_intrvl2 | double | | | pbp_b2_coins_ad_endd_intrvl3 | double | | | pbp_b2_coins_ad_intrvl_num | string | | | pbp_b2_coins_ad_intrvl_num_t1 | string | | | pbp_b2_coins_ad_intrvl_num_t2 | string | | | pbp_b2_coins_ad_intrvl_num_t3 | string | | | pbp_b2_coins_ad_pct_int1_t1 | double | | | pbp_b2_coins_ad_pct_int1_t2 | double | | | pbp_b2_coins_ad_pct_int1_t3 | double | | | pbp_b2_coins_ad_pct_int2_t1 | double | | | pbp_b2_coins_ad_pct_int2_t2 | double | | | pbp_b2_coins_ad_pct_int2_t3 | double | | | pbp_b2_coins_ad_pct_int3_t1 | double | | | pbp_b2_coins_ad_pct_int3_t2 | double | | | pbp_b2_coins_ad_pct_int3_t3 | double | | | pbp_b2_coins_ad_pct_intrvl1 | double | | | pbp_b2_coins_ad_pct_intrvl2 | double | | | pbp_b2_coins_ad_pct_intrvl3 | double | | | pbp_b2_coins_cov_120 | string | | | pbp_b2_coins_cov_21100 | string | | | pbp_b2_coins_cov_ad | string | | | pbp_b2_coins_cov_bonly | string | | | pbp_b2_coins_cov_cs | string | | | pbp_b2_coins_cov_pos | string | | | pbp_b2_coins_cov_pos_bonly | string | | | pbp_b2_coins_cov_ps | string | | | pbp_b2_coins_mcs_bgnd_int1_t1 | double | | | pbp_b2_coins_mcs_bgnd_int1_t2 | double | | | pbp_b2_coins_mcs_bgnd_int1_t3 | double | | | pbp_b2_coins_mcs_bgnd_int2_t1 | double | | | pbp_b2_coins_mcs_bgnd_int2_t2 | double | | | pbp_b2_coins_mcs_bgnd_int2_t3 | double | | | pbp_b2_coins_mcs_bgnd_int3_t1 | double | | | pbp_b2_coins_mcs_bgnd_int3_t2 | double | | | pbp_b2_coins_mcs_bgnd_int3_t3 | double | | | pbp_b2_coins_mcs_bgnd_intrvl1 | double | | | pbp_b2_coins_mcs_bgnd_intrvl2 | double | | | pbp_b2_coins_mcs_bgnd_intrvl3 | double | | | pbp_b2_coins_mcs_endd_int1_t1 | double | | | pbp_b2_coins_mcs_endd_int1_t2 | double | | | pbp_b2_coins_mcs_endd_int1_t3 | double | | | pbp_b2_coins_mcs_endd_int2_t1 | double | | | pbp_b2_coins_mcs_endd_int2_t2 | double | | | pbp_b2_coins_mcs_endd_int2_t3 | double | | | pbp_b2_coins_mcs_endd_int3_t1 | double | | | pbp_b2_coins_mcs_endd_int3_t2 | double | | | pbp_b2_coins_mcs_endd_int3_t3 | double | | | pbp_b2_coins_mcs_endd_intrvl1 | double | | | pbp_b2_coins_mcs_endd_intrvl2 | double | | | pbp_b2_coins_mcs_endd_intrvl3 | double | | | pbp_b2_coins_mcs_int_num_t1 | string | | | pbp_b2_coins_mcs_int_num_t2 | string | | | pbp_b2_coins_mcs_int_num_t3 | string | | | pbp_b2_coins_mcs_intrvl_num | string | | | pbp_b2_coins_mcs_pct | double | | | pbp_b2_coins_mcs_pct_int1_t1 | double | | | pbp_b2_coins_mcs_pct_int1_t2 | double | | | pbp_b2_coins_mcs_pct_int1_t3 | double | | | pbp_b2_coins_mcs_pct_int2_t1 | double | | | pbp_b2_coins_mcs_pct_int2_t2 | double | | | pbp_b2_coins_mcs_pct_int2_t3 | double | | | pbp_b2_coins_mcs_pct_int3_t1 | double | | | pbp_b2_coins_mcs_pct_int3_t2 | double | | | pbp_b2_coins_mcs_pct_int3_t3 | double | | | pbp_b2_coins_mcs_pct_intrvl1 | double | | | pbp_b2_coins_mcs_pct_intrvl2 | double | | | pbp_b2_coins_mcs_pct_intrvl3 | double | | | pbp_b2_coins_mcs_pct_t1 | double | | | pbp_b2_coins_mcs_pct_t2 | double | | | pbp_b2_coins_mcs_pct_t3 | double | | | pbp_b2_coins_nmcs_bgnd_intrvl1 | double | | | pbp_b2_coins_nmcs_bgnd_intrvl2 | double | | | pbp_b2_coins_nmcs_bgnd_intrvl3 | double | | | pbp_b2_coins_nmcs_cov | string | | | pbp_b2_coins_nmcs_endd_intrvl1 | double | | | pbp_b2_coins_nmcs_endd_intrvl2 | double | | | pbp_b2_coins_nmcs_endd_intrvl3 | double | | | pbp_b2_coins_nmcs_intrvl_num | string | | | pbp_b2_coins_nmcs_pct | double | | | pbp_b2_coins_nmcs_pct_intrvl1 | double | | | pbp_b2_coins_nmcs_pct_intrvl2 | double | | | pbp_b2_coins_nmcs_pct_intrvl3 | double | | | pbp_b2_coins_nmcs_struc_yn | string | | | pbp_b2_coins_pct_120 | double | | | pbp_b2_coins_pct_21100 | double | | | pbp_b2_coins_pct_ad | double | | | pbp_b2_coins_pct_bonly | double | | | pbp_b2_coins_pct_cs | double | | | pbp_b2_coins_pct_pos | double | | | pbp_b2_coins_pct_pos_bonly | double | | | pbp_b2_coins_pct_ps | double | | | pbp_b2_coins_ps_bgnd1_bonly | double | | | pbp_b2_coins_ps_bgnd2_bonly | double | | | pbp_b2_coins_ps_bgnd3_bonly | double | | | pbp_b2_coins_ps_endd1_bonly | double | | | pbp_b2_coins_ps_endd2_bonly | double | | | pbp_b2_coins_ps_endd3_bonly | double | | | pbp_b2_coins_ps_num_bonly | string | | | pbp_b2_coins_ps_pct1_bonly | double | | | pbp_b2_coins_ps_pct2_bonly | double | | | pbp_b2_coins_ps_pct3_bonly | double | | | pbp_b2_coins_yesno | string | | | pbp_b2_coins_yesno_bonly | string | | | pbp_b2_coins_yesno_pos | string | | | pbp_b2_coins_yesno_pos_bonly | string | | | pbp_b2_coins_yn | string | | | pbp_b2_coins_yn_bonly | string | | | pbp_b2_copay_120_amts | double | | | pbp_b2_copay_21100_amts | double | | | pbp_b2_copay_ad_amt_int1_t1 | double | | | pbp_b2_copay_ad_amt_int1_t2 | double | | | pbp_b2_copay_ad_amt_int1_t3 | double | | | pbp_b2_copay_ad_amt_int2_t1 | double | | | pbp_b2_copay_ad_amt_int2_t2 | double | | | pbp_b2_copay_ad_amt_int2_t3 | double | | | pbp_b2_copay_ad_amt_int3_t1 | double | | | pbp_b2_copay_ad_amt_int3_t2 | double | | | pbp_b2_copay_ad_amt_int3_t3 | double | | | pbp_b2_copay_ad_amt_intrvl1 | double | | | pbp_b2_copay_ad_amt_intrvl2 | double | | | pbp_b2_copay_ad_amt_intrvl3 | double | | | pbp_b2_copay_ad_amts | double | | | pbp_b2_copay_ad_bgnd_int1_t1 | double | | | pbp_b2_copay_ad_bgnd_int1_t2 | double | | | pbp_b2_copay_ad_bgnd_int1_t3 | double | | | pbp_b2_copay_ad_bgnd_int2_t1 | double | | | pbp_b2_copay_ad_bgnd_int2_t2 | double | | | pbp_b2_copay_ad_bgnd_int2_t3 | double | | | pbp_b2_copay_ad_bgnd_int3_t1 | double | | | pbp_b2_copay_ad_bgnd_int3_t2 | double | | | pbp_b2_copay_ad_bgnd_int3_t3 | double | | | pbp_b2_copay_ad_bgnd_intrvl1 | double | | | pbp_b2_copay_ad_bgnd_intrvl2 | double | | | pbp_b2_copay_ad_bgnd_intrvl3 | double | | | pbp_b2_copay_ad_endd_int1_t1 | double | | | pbp_b2_copay_ad_endd_int1_t2 | double | | | pbp_b2_copay_ad_endd_int1_t3 | double | | | pbp_b2_copay_ad_endd_int2_t1 | double | | | pbp_b2_copay_ad_endd_int2_t2 | double | | | pbp_b2_copay_ad_endd_int2_t3 | double | | | pbp_b2_copay_ad_endd_int3_t1 | double | | | pbp_b2_copay_ad_endd_int3_t2 | double | | | pbp_b2_copay_ad_endd_int3_t3 | double | | | pbp_b2_copay_ad_endd_intrvl1 | double | | | pbp_b2_copay_ad_endd_intrvl2 | double | | | pbp_b2_copay_ad_endd_intrvl3 | double | | | pbp_b2_copay_ad_intrvl_num | string | | | pbp_b2_copay_ad_intrvl_num_t1 | string | | | pbp_b2_copay_ad_intrvl_num_t2 | string | | | pbp_b2_copay_ad_intrvl_num_t3 | string | | | pbp_b2_copay_amtd_pos | double | | | pbp_b2_copay_amtd_pos_bonly | double | | | pbp_b2_copay_amts_pos | double | | | pbp_b2_copay_amts_pos_bonly | double | | | pbp_b2_copay_mcs_amt | double | | | pbp_b2_copay_mcs_amt_int1_t1 | double | | | pbp_b2_copay_mcs_amt_int1_t2 | double | | | pbp_b2_copay_mcs_amt_int1_t3 | double | | | pbp_b2_copay_mcs_amt_int2_t1 | double | | | pbp_b2_copay_mcs_amt_int2_t2 | double | | | pbp_b2_copay_mcs_amt_int2_t3 | double | | | pbp_b2_copay_mcs_amt_int3_t1 | double | | | pbp_b2_copay_mcs_amt_int3_t2 | double | | | pbp_b2_copay_mcs_amt_int3_t3 | double | | | pbp_b2_copay_mcs_amt_intrvl1 | double | | | pbp_b2_copay_mcs_amt_intrvl2 | double | | | pbp_b2_copay_mcs_amt_intrvl3 | double | | | pbp_b2_copay_mcs_amt_t1 | double | | | pbp_b2_copay_mcs_amt_t2 | double | | | pbp_b2_copay_mcs_amt_t3 | double | | | pbp_b2_copay_mcs_bgnd_int1_t1 | double | | | pbp_b2_copay_mcs_bgnd_int1_t2 | double | | | pbp_b2_copay_mcs_bgnd_int1_t3 | double | | | pbp_b2_copay_mcs_bgnd_int2_t1 | double | | | pbp_b2_copay_mcs_bgnd_int2_t2 | double | | | pbp_b2_copay_mcs_bgnd_int2_t3 | double | | | pbp_b2_copay_mcs_bgnd_int3_t1 | double | | | pbp_b2_copay_mcs_bgnd_int3_t2 | double | | | pbp_b2_copay_mcs_bgnd_int3_t3 | double | | | pbp_b2_copay_mcs_bgnd_intrvl1 | double | | | pbp_b2_copay_mcs_bgnd_intrvl2 | double | | | pbp_b2_copay_mcs_bgnd_intrvl3 | double | | | pbp_b2_copay_mcs_endd_int1_t1 | double | | | pbp_b2_copay_mcs_endd_int1_t2 | double | | | pbp_b2_copay_mcs_endd_int1_t3 | double | | | pbp_b2_copay_mcs_endd_int2_t1 | double | | | pbp_b2_copay_mcs_endd_int2_t2 | double | | | pbp_b2_copay_mcs_endd_int2_t3 | double | | | pbp_b2_copay_mcs_endd_int3_t1 | double | | | pbp_b2_copay_mcs_endd_int3_t2 | double | | | pbp_b2_copay_mcs_endd_int3_t3 | double | | | pbp_b2_copay_mcs_endd_intrvl1 | double | | | pbp_b2_copay_mcs_endd_intrvl2 | double | | | pbp_b2_copay_mcs_endd_intrvl3 | double | | | pbp_b2_copay_mcs_int_num_t1 | string | | | pbp_b2_copay_mcs_int_num_t2 | string | | | pbp_b2_copay_mcs_int_num_t3 | string | | | pbp_b2_copay_mcs_intrvl_num | string | | | pbp_b2_copay_nmcs_amt | double | | | pbp_b2_copay_nmcs_amt_intrvl1 | double | | | pbp_b2_copay_nmcs_amt_intrvl2 | double | | | pbp_b2_copay_nmcs_amt_intrvl3 | double | | | pbp_b2_copay_nmcs_bgnd_intrvl1 | double | | | pbp_b2_copay_nmcs_bgnd_intrvl2 | double | | | pbp_b2_copay_nmcs_bgnd_intrvl3 | double | | | pbp_b2_copay_nmcs_endd_intrvl1 | double | | | pbp_b2_copay_nmcs_endd_intrvl2 | double | | | pbp_b2_copay_nmcs_endd_intrvl3 | double | | | pbp_b2_copay_nmcs_intrvl_num | string | | | pbp_b2_copay_nmcs_struc_yn | string | | | pbp_b2_copay_nmed_amts | double | | | pbp_b2_copay_pd_amts_bonly | double | | | pbp_b2_copay_ps_amt1_bonly | double | | | pbp_b2_copay_ps_amt2_bonly | double | | | pbp_b2_copay_ps_amt3_bonly | double | | | pbp_b2_copay_ps_amt_bonly | double | | | pbp_b2_copay_ps_amts | double | | | pbp_b2_copay_ps_amts_bonly | double | | | pbp_b2_copay_ps_bgnd1_bonly | double | | | pbp_b2_copay_ps_bgnd2_bonly | double | | | pbp_b2_copay_ps_bgnd3_bonly | double | | | pbp_b2_copay_ps_endd1_bonly | double | | | pbp_b2_copay_ps_endd2_bonly | double | | | pbp_b2_copay_ps_endd3_bonly | double | | | pbp_b2_copay_ps_num_bonly | string | | | pbp_b2_copay_yesno | string | | | pbp_b2_copay_yesno_bonly | string | | | pbp_b2_copay_yesno_pos | string | | | pbp_b2_copay_yesno_pos_bonly | string | | | pbp_b2_copay_yn | string | | | pbp_b2_copay_yn_bonly | string | | | pbp_b2_cost_discharge_yn | string | | | pbp_b2_cost_vary_low_tier | string | | | pbp_b2_cost_vary_tier_num | string | | | pbp_b2_cost_vary_tiers_yn | string | | | pbp_b2_ded_amt | double | | | pbp_b2_ded_amt_bonly | double | | | pbp_b2_ded_amt_pos | double | | | pbp_b2_ded_amt_pos_bonly | double | | | pbp_b2_ded_amt_t1 | double | | | pbp_b2_ded_amt_t2 | double | | | pbp_b2_ded_amt_t3 | double | | | pbp_b2_ded_yesno_pos | string | | | pbp_b2_ded_yesno_pos_bonly | string | | | pbp_b2_ded_yn | string | | | pbp_b2_ded_yn_bonly | string | | | pbp_b2_esrd_copay_amt | double | | | pbp_b2_esrd_maxenr_amt | double | | | pbp_b2_hosp_ben_period | string | | | pbp_b2_hosp_ben_period_oth | string | | | pbp_b2_maxenr_amt | double | | | pbp_b2_maxenr_amt_bonly | double | | | pbp_b2_maxenr_amt_pos | double | | | pbp_b2_maxenr_amt_pos_bonly | double | | | pbp_b2_maxenr_per | string | | | pbp_b2_maxenr_per_bonly | string | | | pbp_b2_maxenr_per_bonly_d | string | | | pbp_b2_maxenr_per_d | string | | | pbp_b2_maxenr_yesno | string | | | pbp_b2_maxenr_yesno_bonly | string | | | pbp_b2_maxenr_yn | string | | | pbp_b2_maxenr_yn_bonly | string | | | pbp_b2_maxenr_yn_pos | string | | | pbp_b2_maxenr_yn_pos_bonly | string | | | pbp_b2_maxplan_amt_bonly | double | | | pbp_b2_maxplan_cov_bonly | string | | | pbp_b2_maxplan_per_bonly | string | | | pbp_b2_maxplan_per_bonly_d | string | | | pbp_b2_maxplan_yesno_bonly | string | | | pbp_b2_maxplan_yesno_pos | string | | | pbp_b2_maxplan_yesno_pos_bonly | string | | | pbp_b2_maxplan_yn_bonly | string | | | pbp_b2_maxpln_amt_pos | double | | | pbp_b2_maxpln_amt_pos_bonly | double | | | pbp_b2_maxpln_cov_pos | string | | | pbp_b2_maxpln_cov_pos_bonly | string | | | pbp_b2_maxpln_per_pos | string | | | pbp_b2_maxpln_per_pos_bonly | string | | | pbp_b2_mc_coins_cstshr_yn_t1 | string | | | pbp_b2_mc_coins_cstshr_yn_t2 | string | | | pbp_b2_mc_coins_cstshr_yn_t3 | string | | | pbp_b2_mc_copay_cstshr_yn_t1 | string | | | pbp_b2_mc_copay_cstshr_yn_t2 | string | | | pbp_b2_mc_copay_cstshr_yn_t3 | string | | | pbp_b2_mdcr_coins_cstshrs_yn | string | | | pbp_b2_mdcr_copay_cstshrs_yn | string | | | pbp_b2_notes | string | | | pbp_b2_pffs_copay_amt | double | | | pbp_b2_pffs_maxenr_amt | double | | | pbp_b2_refer_yn | string | | | pbp_b2_refer_yn_bonly | string | | | pbp_b_2_ded_amt | double | | | pbp_b_2_ded_amt_bonly | double | | | pbp_b_2_ded_yesno | string | | | pbp_b_2_ded_yesno_bonly | string | | | observed_period | date | Snapshot/observation period = Jan 1 of report_year (annual, 26 distinct). Equals effective_period_start in this table; redundant with report_year. | | asserted_at | date | | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Monotonic CMS release-ordering integer (1-4) within a year. Correlates with quarter (Q1->1...Q4->4) but NOT identical (2021 Q1=4, 2022 Q1=2). Useful as a 'latest snapshot' tiebreaker per plan-year alongside quarter. | | parse_revision | int | | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | pbp_b_2_ded_amt / pbp_b_2_ded_yesno (and _bonly) | | LEGACY flat SNF deductible amount / yes-no flag. Populated essentially only in 2001 (2 rows); all-NULL for modern years. Note the underscore: pbp_b_2_ (extra underscore) is the legacy field; pbp_b2_ded_* is the newer tiered field. | | pbp_b2_copay_120_amts / pbp_b2_copay_21100_amts | | LEGACY flat per-day copay for SNF days 1-20 ('120') and days 21-100 ('21100'). Populated only in 2001 (508 rows). All-NULL 2002+. The original Medicare SNF day-band structure. | | pbp_b2_coins_pct_120 / pbp_b2_coins_pct_21100 | | LEGACY flat SNF coinsurance percent for days 1-20 / 21-100. Populated only ~2001. All-NULL for modern years. | | pbp_b2_copay_mcs_amt / pbp_b2_coins_mcs_pct (and _nmcs_) | | MID-ERA (2002-2015) aggregate Medicare-Covered-Stay copay amount / coinsurance percent; _nmcs_ = Non-Medicare-Covered-Stay. All-NULL in 2016+ (superseded by interval columns). mcs = Medicare-covered SNF stay, nmcs = extra non-Medicare-covered days the plan offers. | | pbp_b2_copay_mcs_amt_int{1,2,3}_t{1,2,3} / pbp_b2_coins_mcs_pct_int*_t* | | CURRENT-ERA (2016-2026) per-day SNF cost-sharing. int = day-range interval (int1=days 1-20 typically $0; int2=days 21-100 e.g. $218/day), t = network/cost tier (t1=primary in-network; t2/t3 for tiered-SNF plans). A plan uses copay OR coins, not both. bgnd/endd_int*_t* give begin/end day of each interval; *_int_num_t* gives number of intervals. Main cost-data payload for recent years. | | pbp_b2_coins_cov_* / pbp_b2_copay_*_amts / pbp_b2_*_yesno / pbp_b2_*_yn | | Cost-share applicability flags and aggregate amounts. *_yesno / *_yn = whether copay or coinsurance applies ('1'=yes,'2'=no, often NULL in modern years where interval columns carry detail). Suffixes scope variants: bonly=benefit-only, pos=point-of-service/out-of-network, ps=per-stay, cs=cost-share, ad=additional-days. | | pbp_b2_auth / pbp_b2_auth_yn (and _pos, _bonly) | | Prior-authorization required for SNF: pbp_b2_auth_yn '1'=yes (6,611 in 2026), '2'=no (240), NULL=569. _pos variants = for out-of-network/POS. | | pbp_b2_maxenr_amt / _yn / _per (and _bonly, _pos, _esrd, _pffs) | | SNF-section maximum-enrollee out-of-pocket cap: _yn '2'=No cap applied (the norm, 21,534 in 2024), '1'=Yes (rare, carries _amt e.g. $4,144 and _per period code). Mostly NULL/'No'. esrd/pffs/maxplan variants are sub-population caps. | | pbp_b2_maxplan_amt_bonly / _cov_bonly / _per_bonly / _yn_bonly / _yesno_pos* | | Plan-level SNF benefit maximum (benefit-only). Sparse. NOTE: the profiler wrongly listed these 9 maxplan_* columns as part of the grain key - they are benefit attributes, not keys (mostly NULL), and are NOT needed for uniqueness. | | pbp_b2_bendesc_* / pbp_b2_bende_* / pbp_b2_benedesc_* | | Benefit-description fields: number of extra/additional SNF days, prior-hospital-stay requirement (pbp_b2_bendesc_pr_hosp_yn / _num), unlimited-days flag (pbp_b2_bendesc_snf_unlm_bonly), SNF-period definitions. Mostly coded strings or day counts; many sparse. | | pbp_b2_hosp_ben_period / _oth | | SNF benefit-period definition CODE (string '1'/'2'/'3'/'4'), NOT a date despite 'period' in the name. '1' dominant (108,271). Defines how the SNF benefit period is structured (per-stay vs per-benefit-period etc.). | | pbp_b2_ad_cost_vary_* / pbp_b2_coins_mcs_struc_yn / *_intrvl_num | | Structural descriptors: whether additional-day cost varies by tier (ad_cost_vary_tiers_yn, _tier_num, _low_tier), whether a multi-interval coinsurance structure is used (_struc_yn), and interval-count fields (_intrvl_num, _int_num_t*). | | effective_period_start / effective_period_end | | Benefit year window derived from report_year: start = Jan 1 of report_year, end = Dec 31 (e.g. 2026-01-01 / 2026-12-31). Annual. 26 distinct starts. Profiler's primary time column. | | asserted_at / parse_revision | | Vlada ingestion provenance: two parse runs exist - asserted_at='2026-05-16'/parse_revision=1 covers all 24 years (2001-2026); '2026-05-20'/parse_revision=2 is a re-parse of 2018-2024. The re-parse REPLACED rows (grain has 0 dupes), it did not duplicate. Not a business-version of the benefit. | | parser_artifact_hash / source_url / sha256_content_hash | | Vlada provenance/lineage: hash of the parser artifact, the source PBP file URL it was parsed from, and the SHA-256 of the source file content. For audit/provenance, not analytics. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b2_snf WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b2_snf")` first. # MA pbp section b3 cardiac rehab `medicare_silver.pbp_section_b3_cardiac_rehab` · Medicare Advantage, Part D, Medicaid · status partial Section B3: Cardiac/pulmonary rehab cost-share. Renamed from CORF in 2020. Coverage: 2020-present. **Grain.** One row per MA plan-benefit-package per CMS quarterly snapshot. The minimal verified key is (bid_id, report_year, quarter) = 113,962 distinct = the full row_count. bid_id is exactly contract_id + '_' + plan_id + '_' + segment_id (0 mismatches), so contract/plan/segment are decomposed components of bid_id, and pbp_a_plan_type is a stable per-plan attribute (0 variance within bid_id-year), NOT part of the key — the profiler's 8-column key was a redundant superset. Deduplicated to one row per plan per plan-year (latest quarter per bid_id+report_year) yields 55,872 plan-years across 2019-2026. **How to use it.** Latest-snapshot member cost share for cardiac rehab across MA plans: SELECT bid_id, contract_id, plan_id, pbp_a_plan_type, pbp_b3_auth_yn, pbp_b3_copay_amt_mc_max_crs, pbp_b3_coins_pct_mc_max_crs FROM (SELECT *, row_number() OVER (PARTITION BY bid_id, report_year ORDER BY quarter DESC) rn FROM medicare_silver.pbp_section_b3_cardiac_rehab WHERE report_year=2025) WHERE rn=1. Answers 'for plan year 2025, what copay/coinsurance and prior-auth does each MA plan impose on cardiac rehabilitation, using the freshest quarterly PBP snapshot' (~7,570 plan-years, deduped from the multi-quarter raw rows). **Traps.** - NOT one row per plan. Multiple quarterly snapshots of the same plan-year coexist with NO is_current flag. A naive COUNT(*) (113,962) over-counts plans ~2x. For one-row-per-plan-year (55,872), take the latest snapshot: ROW_NUMBER/max(quarter) per (bid_id, report_year). bid_id alone, or (bid_id, observed_period), or (contract_id,plan_id,segment_id) are all NON-unique. - bid_id is fully derived: it equals contract_id_plan_id_segment_id with zero exceptions, and pbp_a_plan_type/orgtype are stable per bid_id-year. The profiler's 8-column 'verified key' is a bloated superset; the true minimal grain is just (bid_id, report_year, quarter). - Snapshots are NOT strictly nested across quarters: between Q1 and Q4 of the same year a few plans appear or disappear (2023: Q1=7752, Q4=7755, union=7766). 'Latest quarter' is the best single snapshot but does not perfectly superset earlier quarters; union across quarters if you need the full plan universe. - Many cost columns are structurally null and meaningful: pbp_b3_ded_amt and pbp_b3_maxenr_amt/maxenr_per are ALWAYS null (cardiac rehab has no benefit-level deductible or enrollee max — vestigial template columns). The real cost share lives in the 'mc_' (Medicare-covered) copay/coinsurance columns, split across 4 sub-service suffixes crs/icrs/prs/setpad. The non-'mc_' copay/coins columns (supplemental portion) are largely null. - YN flags use 1=Yes, 2=No (not boolean). bendesc_yn='2' means 'no EXTRA benefit description', NOT 'no benefit' — copay/coins/auth are still populated when bendesc_yn='2'. Also _d decode columns (e.g. bendesc_per_*_d) are mostly null even when the base code is set, so never use a non-null _d to detect a limit. The value 20.0 appears as both a coinsurance percent and a copay dollar amount — disambiguate by column family, and pair each *_ehc bitmask (position = sub-service) with its copay/coins columns. - Sibling-table caveat: this is one of many pbp_section_* tables sharing the same key shape and provenance columns; it covers ONLY cardiac/pulmonary rehab (B-3). It is plan benefit DESIGN (what the member pays), not provider-negotiated commercial/Medicare fee-schedule rates — join to plan/enrollment or fee-schedule tables for rate-vs-benefit analysis. cms_vintage_sequence usually mirrors quarter but diverges for ~14K re-released 2020/2021 Q1 rows. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0028). 1,231 distinct. First component of bid_id; identifies the contracting organization. | | plan_id | string | 3-digit plan number within the contract (e.g. 001, 014). 656 distinct. Second component of bid_id. | | segment_id | string | Geographic/benefit segment of the plan. '0' = non-segmented (91% of rows); '1'-'5'+ = segments of segmented plans (up to 24 distinct). Third component of bid_id. | | version | double | CMS bid version/revision number for the plan submission (double, 1-26). The plan's internal bid revision sequence; distinct from the file vintage/quarter. Higher versions are progressively rarer. | | report_year | double | Contract/plan year the benefit applies to (double, 2019-2026). Equals the year of effective_period_start/observed_period. Part of the grain key. | | quarter | double | CMS PBP republish quarter within report_year (double: 1,2,3,4). CMS reissues the PBP file multiple times per year; each plan-year can appear under several quarters as near-duplicate snapshots. Part of the grain key. Take max(quarter) per bid_id+report_year for the latest snapshot. | | bid_id | string | Concatenation contract_id_plan_id_segment_id (e.g. H0028_014_0). The natural plan identifier; combined with report_year+quarter forms the unique grain. | | orgtype | string | CMS organization type code (string: '01' Local CCP/HMO-PPO is 92%, plus '02','04','05','06','08','11'). Categorizes the MA organization structure. | | pbp_a_ben_cov | string | Benefit-coverage indicator from Section A: '1' = standard (98%), '2' = enhanced/alternative (2.4K rows), null (185 older rows). Carried forward from PBP Section A. | | pbp_a_plan_type | string | MA plan type code (string): '01' HMO (54K), '04' Local PPO (37K), '02' HMOPOS (14K), '20' PFFS, '31' Regional PPO, '18','09','48','07'. Stable per bid_id-year — an attribute, not a grain key. | | pbp_b3_auth_yn | string | Prior authorization required for this benefit. '1'=Yes (69K), '2'=No (39K), null (5.7K, mostly 2019-2020 where not captured). YN code: 1=Yes, 2=No throughout this table. | | pbp_b3_bendesc_amo_crs | string | | | pbp_b3_bendesc_amo_icrs | string | | | pbp_b3_bendesc_amo_prs | string | | | pbp_b3_bendesc_amo_setpad | string | | | pbp_b3_bendesc_ehc | string | Enhanced/extra-help-coverage bitmask string for the benefit description. Sparse fixed-width flag string. | | pbp_b3_bendesc_lim_crs | string | | | pbp_b3_bendesc_lim_icrs | string | | | pbp_b3_bendesc_lim_prs | string | | | pbp_b3_bendesc_lim_setpad | string | | | pbp_b3_bendesc_numv_crs | double | | | pbp_b3_bendesc_numv_icrs | double | | | pbp_b3_bendesc_numv_prs | double | | | pbp_b3_bendesc_numv_setpad | double | | | pbp_b3_bendesc_per_crs | string | | | pbp_b3_bendesc_per_crs_d | string | | | pbp_b3_bendesc_per_icrs | string | | | pbp_b3_bendesc_per_icrs_d | string | | | pbp_b3_bendesc_per_prs | string | | | pbp_b3_bendesc_per_prs_d | string | | | pbp_b3_bendesc_per_setpad | string | | | pbp_b3_bendesc_per_setpad_d | string | | | pbp_b3_bendesc_yn | string | Whether a special benefit description/limit beyond Medicare is defined. '1'=Yes (only 614 rows), '2'=No (vast majority). When '2', cost-share columns (copay/coins) are still populated — '2' means no EXTRA benefit description, not no benefit. | | pbp_b3_coins_ehc | string | Fixed-width bitmask string (e.g. '01111000') marking WHICH sub-services coinsurance applies to (position = CRS/ICRS/PRS/SETPAD etc.); '1'=applies. Variable length (6 or 8 chars seen). Null when no coinsurance. | | pbp_b3_coins_pct_max_crs | double | | | pbp_b3_coins_pct_max_icrs | double | | | pbp_b3_coins_pct_max_prs | double | | | pbp_b3_coins_pct_max_setpad | double | | | pbp_b3_coins_pct_mc_max_crs | double | | | pbp_b3_coins_pct_mc_max_icrs | double | | | pbp_b3_coins_pct_mc_max_prs | double | | | pbp_b3_coins_pct_mc_max_setpad | double | | | pbp_b3_coins_pct_mc_min_crs | double | | | pbp_b3_coins_pct_mc_min_icrs | double | | | pbp_b3_coins_pct_mc_min_prs | double | | | pbp_b3_coins_pct_mc_min_setpad | double | | | pbp_b3_coins_pct_min_crs | double | | | pbp_b3_coins_pct_min_icrs | double | | | pbp_b3_coins_pct_min_prs | double | | | pbp_b3_coins_pct_min_setpad | double | | | pbp_b3_coins_yn | string | Whether coinsurance applies to this benefit. '1'=Yes (37K), '2'=No. Pairs with the coins_pct_* columns. | | pbp_b3_copay_amt_max_crs | double | | | pbp_b3_copay_amt_max_icrs | double | | | pbp_b3_copay_amt_max_prs | double | | | pbp_b3_copay_amt_max_setpad | double | | | pbp_b3_copay_amt_mc_max_crs | double | | | pbp_b3_copay_amt_mc_max_icrs | double | | | pbp_b3_copay_amt_mc_max_prs | double | | | pbp_b3_copay_amt_mc_max_setpad | double | | | pbp_b3_copay_amt_mc_min_crs | double | | | pbp_b3_copay_amt_mc_min_icrs | double | | | pbp_b3_copay_amt_mc_min_prs | double | | | pbp_b3_copay_amt_mc_min_setpad | double | | | pbp_b3_copay_amt_min_crs | double | | | pbp_b3_copay_amt_min_icrs | double | | | pbp_b3_copay_amt_min_prs | double | | | pbp_b3_copay_amt_min_setpad | double | | | pbp_b3_copay_ehc | string | Fixed-width bitmask string marking which sub-services a copay applies to (same scheme as coins_ehc). Null when no copay. | | pbp_b3_copay_yn | string | Whether a copay applies. '1'=Yes (63K), '2'=No. Pairs with copay_amt_* columns. Copay and coinsurance are mutually-structured alternatives per sub-service. | | pbp_b3_ded_amt | double | Benefit-specific deductible dollar amount (double). ALWAYS NULL in this table (0 populated) — cardiac rehab carries no benefit-level deductible. Column exists from the shared PBP template. | | pbp_b3_ded_yn | string | Whether a benefit-specific deductible applies. Effectively always '2'=No for cardiac rehab. Vestigial here. | | pbp_b3_maxenr_amt | double | Maximum-per-enrollee dollar cap (double). ALWAYS NULL (0 populated) in this table. | | pbp_b3_maxenr_per | string | | | pbp_b3_maxenr_per_d | string | | | pbp_b3_maxenr_yn | string | Whether an annual enrollee maximum (cap on covered amount/visits) applies. Effectively always '2'=No. Vestigial here. | | pbp_b3_refer_yn | string | Whether a referral is required for the benefit. '1'=Yes, '2'=No (majority). | | observed_period | date | Plan-year start date as a single point (date, = Jan 1 of report_year). COLLAPSES the quarters: (bid_id, observed_period) gives only 55,872 (one per plan-year), so it is NOT sufficient for the row grain — quarter is still needed to reach 113,962. | | asserted_at | date | Date Vlada ingested/asserted this record (date, 2026-05-16 or 2026-05-20). Pipeline bookkeeping, not a plan attribute. | | effective_period_start | date | Benefit effective start (date, Jan 1 of report_year). The temporal column; 2019-01-01 to 2026-01-01, annual cadence. Equals observed_period here. | | effective_period_end | date | Benefit effective end (date, Dec 31 of report_year). With start, defines the one-year coverage window. | | cms_vintage_sequence | int | Integer rank of the CMS file vintage (1-4) this row came from. Normally tracks quarter (Q1->1...Q4->4), BUT 14,022 rows mismatch: some 2020/2021 Q1 plan-years were captured from a later (vintage 2 or 4) republish. Use to identify the freshest source file. | | parse_revision | int | Vlada parser revision that produced the row (int: 2 distinct). Provenance/versioning of the extraction logic. | | parser_artifact_hash | string | SHA-256 of the parser artifact/code that generated the row. 16 distinct (one per source file run). Provenance. | | source_url | string | CMS source zip URL (e.g. https://www.cms.gov/files/zip/pbp-benefits-2023-quarter-3.zip). 16 distinct = 16 quarterly PBP releases ingested. The provenance anchor for every row. | | sha256_content_hash | string | SHA-256 of the source file content. 16 distinct (1:1 with source_url). Immutability/provenance check. | | pbp_b3_1_maxplan_amt | double | | | pbp_b3_1_maxplan_per | string | | | pbp_b3_1_maxplan_per_d | string | | | pbp_b3_1_maxplan_yn | string | | | pbp_b3_2_maxplan_amt | double | | | pbp_b3_2_maxplan_per | string | | | pbp_b3_2_maxplan_per_d | string | | | pbp_b3_2_maxplan_yn | string | | | pbp_b3_3_maxplan_amt | double | | | pbp_b3_3_maxplan_per | string | | | pbp_b3_3_maxplan_per_d | string | | | pbp_b3_3_maxplan_yn | string | | | pbp_b3_4_maxplan_amt | double | | | pbp_b3_4_maxplan_per | string | | | pbp_b3_4_maxplan_per_d | string | | | pbp_b3_4_maxplan_yn | string | | | pbp_b3_bendesc_amo_{crs,icrs,prs,setpad} | | Benefit-description dollar/amount limit for each of the 4 sub-services (cardiac rehab / intensive CR / pulmonary rehab / supervised exercise therapy for PAD). String; almost entirely null (only populated for the ~614 special-description plans). | | pbp_b3_bendesc_lim_{crs,icrs,prs,setpad} | | Benefit-description limit type/flag per sub-service (string). Sparse — populated only when bendesc_yn='1'. | | pbp_b3_bendesc_numv_{crs,icrs,prs,setpad} | | Number-of-visits limit per sub-service (double). Extremely sparse (CRS populated only 35 times, range 12-36 visits). Meaning-bearing where present: caps covered rehab visits. | | pbp_b3_bendesc_per_{crs,icrs,prs,setpad} | | Period code for the visit/amount limit per sub-service (string code, e.g. '3','6'). The denominator period (per year, per 12-18 weeks, etc.). Sparse. | | pbp_b3_bendesc_per_{crs,icrs,prs,setpad}_d | | Human-decoded text of the matching period code (e.g. 'Over 12-18 weeks.'). MOSTLY NULL even when the base code is populated — the decode is incomplete; do not rely on _d to detect that a limit exists. | | pbp_b3_coins_pct_mc_{min,max}_{crs,icrs,prs,setpad} | | Medicare-COVERED coinsurance percentage the member pays, min and max bound, per sub-service. THE primary cost-share metric. Range 0-38%, typically 20%. ~36-37K rows populated per sub-service. 'mc_' = Medicare-covered services. | | pbp_b3_coins_pct_{min,max}_{crs,icrs,prs,setpad} | | Coinsurance percentage min/max for NON-Medicare-covered (extra/supplemental) portion of the benefit per sub-service. Largely null — most cardiac rehab cost-share sits under the mc_ (Medicare-covered) columns. | | pbp_b3_copay_amt_mc_{min,max}_{crs,icrs,prs,setpad} | | Medicare-COVERED per-visit copay DOLLAR amount, min and max bound, per sub-service. THE primary dollar cost-share. CRS range $0-$50, median ~$19. ~58-62K rows populated. Note value 20.0 commonly appears as both a coins % and a copay $ — disambiguate via which column family. | | pbp_b3_copay_amt_{min,max}_{crs,icrs,prs,setpad} | | Copay dollar min/max for the NON-Medicare-covered/supplemental portion per sub-service. Largely null. | | pbp_b3_maxenr_per / pbp_b3_maxenr_per_d | | Period code and decoded text for the enrollee maximum. ALWAYS NULL (0 populated) in this table. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b3_cardiac_rehab WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b3_cardiac_rehab")` first. # MA pbp section b3 corf `medicare_silver.pbp_section_b3_corf` · Medicare Advantage, Part D, Medicaid · status partial Section B3: Comprehensive Outpatient Rehab Facility (CORF) cost-share. Pre-2020; superseded by cardiac_rehab. Coverage: 2001-2019. **Grain.** There is NO valid business grain — the table never populated. Intended: one row per MA plan benefit package (contract_id × plan_id × segment_id) per quarterly PUF release for CORF Section B-3; but all plan-identifying columns are NULL. Empirically the 13,408 rows are hollow byte-identical duplicates within each (quarter × segment_id × version) group, collapsing to only 234 distinct full rows that contain no benefit data. Best treated as 3 quarterly snapshots (2018 Q2/Q3/Q4) of a failed extract. **How to use it.** Operationally the only correct use today is a data-quality / provenance check, e.g. `SELECT quarter, source_url, COUNT(*) rows, COUNT(contract_id) populated_plans FROM medicare_silver.pbp_section_b3_corf GROUP BY quarter, source_url` — this returns rows>0 but populated_plans=0 for all 3 quarterly 2018 PUF files, confirming the CORF Section B-3 extract failed and must be re-run. For actual MA outpatient-rehab benefit/cost-sharing data, use the populated sibling medicare_silver.pbp_section_b3_cardiac_rehab instead. **Traps.** - DO NOT USE FOR ANALYSIS — the table is an empty parse shell. All 78 benefit/plan columns (bid_id, contract_id, plan_id, orgtype, and every copay/coinsurance/deductible/auth/max/bendesc field) are 100% NULL across all 13,408 rows. Only 13 provenance columns are populated. There is zero cost or benefit data here. - Row count (13,408) is meaningless duplication, NOT plan coverage. Within every (quarter, segment_id, version) group the rows are byte-identical (e.g. 598 rows in q4/v1/seg0 = exactly 1 distinct full row). The entire table holds only 234 distinct full rows, and those carry no benefit info. Counting rows here over-counts ~57x. - There is NO grain key and NO way to identify a plan: bid_id/contract_id/plan_id are all null, so you cannot join this table to any plan, contract, or bid dimension. 'segment_id' and 'version' look key-ish but only ever combine into 234 hollow tuples. - 'version' (1-18) is a CMS file-revision tag, NOT a snapshot/is_current flag and NOT a plan attribute. 'quarter' (2/3/4) and sha256_content_hash are the real snapshot dimension: the SAME 2018 benefit year was re-published across 3 quarterly PUFs (2018 Q2/Q3/Q4). If you ever need a single snapshot, pick max cms_vintage_sequence (=4, the Q4 file). - Coverage is far narrower than the source family suggests: only report_year 2018 and only 3 quarterly files exist. By contrast its ONLY sibling, medicare_silver.pbp_section_b3_cardiac_rehab, IS fully populated (113,962 rows, contract_id/bid_id 100% non-null, spanning 2019-2026). So this CORF table is specifically broken — prefer the cardiac_rehab table as the working B-3 example, and treat pbp_section_b3_corf as needing re-extraction. - asserted_at (2026-05-20) is the Vlada load date and report_year/observed_period (2018) is the benefit year — bitemporal. Never mistake asserted_at for the data's effective date. | column | type | meaning | |---|---|---| | segment_id | string | PBP plan segment id ('0'-'9', 10 distinct). '0' = the base/non-segmented plan; 1-9 = geographic segments of a segmented plan. POPULATED. One of only 3 columns with any analytic differentiation (the rest are pure provenance). Higher segment numbers have far fewer rows (most plans are segment 0). | | version | double | PUF section/file version number (1-18, 17 distinct; value 16 absent). Identifies the CMS PBP file revision the row came from. POPULATED. NOT a plan attribute and NOT a snapshot/is_current flag — purely a source-file version tag. | | report_year | double | PUF reporting/benefit year. Always 2018.0 for every row — the only year this CORF extract covers. | | quarter | double | Calendar quarter of the CMS PUF release the row was extracted from: 2.0, 3.0, or 4.0 (2018 Q2/Q3/Q4). This is the snapshot/release dimension, NOT a plan attribute. Same 2018 benefit year re-published across 3 quarterly PUFs. | | observed_period | date | Date the data describes; always 2018-01-01. Single value across the whole table. | | asserted_at | date | Pipeline ingestion/assertion date; always 2026-05-20. When Vlada parsed and loaded these rows (bitemporal 'system time'), unrelated to the 2018 benefit content. | | effective_period_start | date | Benefit-year start; always 2018-01-01. | | effective_period_end | date | Benefit-year end; always 2018-12-31. | | cms_vintage_sequence | int | Integer ordering the CMS source vintages: 2 for the Q2 file, 3 for Q3, 4 for Q4 (1:1 with quarter here). Lets you pick the latest release. | | parse_revision | int | Vlada parser revision that produced the row; constant = 2 across all rows. | | parser_artifact_hash | string | SHA-256 of the parser artifact/output; one distinct value per source file (3 total). Provenance of the code that did the (failed) extraction. | | source_url | string | CMS download URL of the source zip. 3 distinct values: pbp-benefits-2018-q2.zip, -q3.zip, -q4.zip under cms.gov/.../pbp-pufs/. Confirms this is the public CMS MA-PD PBP PUF. | | sha256_content_hash | string | SHA-256 of the raw source file content; 3 distinct values (one per quarterly zip). The cleanest snapshot/file discriminator. | | bid_id | string | INTENDED: CMS bid id of the plan benefit package. 100% NULL — not populated. This is the field that would normally join to bid/plan tables; its absence is why the table has no grain. | | contract_id | string | INTENDED: MA contract id (Hxxxx/Rxxxx). 100% NULL. Cannot identify which plan/organization any row belongs to. | | orgtype | string | INTENDED: organization type (HMO/PPO/etc). 100% NULL. | | pbp_a_ben_cov | string | INTENDED: Section A benefit-coverage indicator carried onto the B-3 row. 100% NULL. | | pbp_a_plan_type | string | INTENDED: plan type code. 100% NULL. | | pbp_b3_auth | string | | | pbp_b3_auth_pos | string | | | pbp_b3_coins_cov_mc | string | | | pbp_b3_coins_cov_pos | string | | | pbp_b3_coins_yesno | string | | | pbp_b3_coins_yesno_pos | string | | | pbp_b3_coins_yn | string | | | pbp_b3_copay_yesno | string | | | pbp_b3_copay_yesno_pos | string | | | pbp_b3_copay_yn | string | | | pbp_b3_ded_yesno_pos | string | | | pbp_b3_ded_yn | string | | | pbp_b3_maxenr_per | string | | | pbp_b3_maxenr_yesno | string | | | pbp_b3_maxenr_yn | string | | | pbp_b3_maxenr_yn_pos | string | | | pbp_b3_maxplan_yesno_pos | string | | | pbp_b3_maxpln_cov_pos | string | | | pbp_b3_maxpln_per_pos | string | | | pbp_b3_refer_yn | string | INTENDED: referral-required yes/no for CORF. 100% NULL. | | pbp_b_3_ded_yesno | string | | | plan_id | string | INTENDED: 3-digit plan id within the contract (PBP id). 100% NULL — the other half of the missing plan key. | | pbp_b3_auth_yn | string | | | pbp_b3_bendesc_amo_crs | string | | | pbp_b3_bendesc_amo_icrs | string | | | pbp_b3_bendesc_amo_prs | string | | | pbp_b3_bendesc_ehc | string | | | pbp_b3_bendesc_lim_crs | string | | | pbp_b3_bendesc_lim_icrs | string | | | pbp_b3_bendesc_lim_prs | string | | | pbp_b3_bendesc_numv_crs | double | | | pbp_b3_bendesc_numv_icrs | double | | | pbp_b3_bendesc_numv_prs | double | | | pbp_b3_bendesc_per_crs | string | | | pbp_b3_bendesc_per_icrs | string | | | pbp_b3_bendesc_per_prs | string | | | pbp_b3_bendesc_yn | string | | | pbp_b3_coins_ehc | string | | | pbp_b3_coins_pct_max_crs | double | | | pbp_b3_coins_pct_max_icrs | double | | | pbp_b3_coins_pct_max_prs | double | | | pbp_b3_coins_pct_mc | double | | | pbp_b3_coins_pct_mc_max_crs | double | | | pbp_b3_coins_pct_mc_max_icrs | double | | | pbp_b3_coins_pct_mc_max_prs | double | | | pbp_b3_coins_pct_mc_min_crs | double | | | pbp_b3_coins_pct_mc_min_icrs | double | | | pbp_b3_coins_pct_mc_min_prs | double | | | pbp_b3_coins_pct_min_crs | double | | | pbp_b3_coins_pct_min_icrs | double | | | pbp_b3_coins_pct_min_prs | double | | | pbp_b3_coins_pct_pos | double | | | pbp_b3_copay_amt | double | | | pbp_b3_copay_amt_max_crs | double | | | pbp_b3_copay_amt_max_icrs | double | | | pbp_b3_copay_amt_max_prs | double | | | pbp_b3_copay_amt_mc_max_crs | double | | | pbp_b3_copay_amt_mc_max_icrs | double | | | pbp_b3_copay_amt_mc_max_prs | double | | | pbp_b3_copay_amt_mc_min_crs | double | | | pbp_b3_copay_amt_mc_min_icrs | double | | | pbp_b3_copay_amt_mc_min_prs | double | | | pbp_b3_copay_amt_min_crs | double | | | pbp_b3_copay_amt_min_icrs | double | | | pbp_b3_copay_amt_min_prs | double | | | pbp_b3_copay_amtv_pos | double | | | pbp_b3_copay_ehc | string | | | pbp_b3_ded_amt | double | | | pbp_b3_ded_amt_pos | double | | | pbp_b3_maxenr_amt | double | | | pbp_b3_maxenr_amt_pos | double | | | pbp_b3_maxpln_amt_pos | double | | | pbp_b_3_ded_amt | double | | | pbp_b3_auth / pbp_b3_auth_yn / pbp_b3_auth_pos | | INTENDED: prior-authorization required flags for CORF services (overall and at point-of-service/POS). All 100% NULL. | | pbp_b3_coins_* (coins_yn, coins_yesno[_pos], coins_cov_mc/pos, coins_ehc, coins_pct_mc[_min/max], coins_pct_min/max_{crs,icrs,prs}, coins_pct_mc_min/max_{crs,icrs,prs}, coins_pct_pos) | | INTENDED: the full coinsurance block for CORF cost-sharing — whether coinsurance applies, Medicare-covered flags, and percent values (min/max) broken out by the three CORF sub-benefits crs/icrs/prs and by enhanced (ehc) and POS variants. ALL 100% NULL. This is the core cost-sharing payload that is missing. | | pbp_b3_copay_* (copay_yn, copay_yesno[_pos], copay_ehc, copay_amt, copay_amtv_pos, copay_amt_min/max_{crs,icrs,prs}, copay_amt_mc_min/max_{crs,icrs,prs}) | | INTENDED: the full copay block — whether a copay applies and the dollar copay amounts (min/max, Medicare-covered mc variants) for the crs/icrs/prs CORF sub-benefits plus POS/enhanced variants. ALL 100% NULL. | | pbp_b3_ded_* (ded_yn, ded_yesno_pos, pbp_b_3_ded_yesno, ded_amt, ded_amt_pos, pbp_b_3_ded_amt) | | INTENDED: deductible flags and dollar amounts for CORF (note duplicate spellings ded_* and b_3_ded_*). ALL 100% NULL. | | pbp_b3_maxenr_* (maxenr_yn, maxenr_yesno, maxenr_yn_pos, maxenr_per, maxenr_amt, maxenr_amt_pos) | | INTENDED: per-enrollee maximum (cap) flags, period, and dollar amounts. ALL 100% NULL. | | pbp_b3_maxpln_/maxplan_* (maxplan_yesno_pos, maxpln_cov_pos, maxpln_per_pos, maxpln_amt_pos) | | INTENDED: plan-level maximum/cap coverage, period, and amount fields. ALL 100% NULL. | | pbp_b3_bendesc_* (bendesc_yn, bendesc_ehc, bendesc_amo_{crs,icrs,prs}, bendesc_lim_{crs,icrs,prs}, bendesc_numv_{crs,icrs,prs}, bendesc_per_{crs,icrs,prs}) | | INTENDED: benefit-description / limitation block — whether limits exist, amount/limit text, number-of-visits (numv) and the limit period for each CORF sub-benefit (crs = cardiac/comprehensive rehab service, icrs/prs = intensive & pulmonary rehab service variants). ALL 100% NULL. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b3_corf WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b3_corf")` first. # MA pbp section b4 emerg urgent `medicare_silver.pbp_section_b4_emerg_urgent` · Medicare Advantage, Part D, Medicaid · status partial Section B4: Emergency / urgent care cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage benefit package per CMS quarterly PBP release: contract_id x plan_id x segment_id x effective_period_start (plan year) x quarter. Verified exact = 201,488 rows. The same plan-year can appear up to 4 times (one row per quarterly PBP-PUF republication, 2018-2024); pre-2018 plan-years appear once (Q1 only). **How to use it.** "What does Aetna plan H0028-004 charge for an ER visit vs urgent care in 2026?" -> SELECT pbp_b4a_copay_amt_mc_min AS er_copay, pbp_b4a_coins_pct_mc_min AS er_coins_pct, pbp_b4b_copay_amt_mc_min AS urgent_copay FROM medicare_silver.pbp_section_b4_emerg_urgent WHERE contract_id='H0028' AND plan_id='004' AND segment_id='0' AND report_year=2026 AND quarter=1; -- ALWAYS pin quarter (or pick MAX(quarter) per year) so a plan-year published in 4 quarterly releases is not counted up to 4x. **Traps.** - GRAIN NEEDS quarter, not just the plan key. The natural CMS key (contract_id, plan_id, segment_id, year) yields only 114,175 rows — but the table has 201,488 because 2018-2024 plan-years are re-published in up to 4 quarterly PBP-PUF releases (each a separate row, slightly different). You MUST include quarter (or filter to one quarter) to avoid double/quadruple-counting a plan. Pre-2018 years are Q1-only. - The profiler's 'verified unique' key is a bloated SUPERSET — it padded the real key with arbitrary wwc_maxplan benefit columns. The TRUE minimal grain is just contract_id x plan_id x segment_id x effective_period_start x quarter (= 201,488, verified exact). report_year is interchangeable with effective_period_start (same year). - bid_id looks like a clean composite key but is NULL for every 2001-2006 row (8,316 rows) and only matches contract_id_plan_id_segment_id for the rest. Never use bid_id alone as the grain — it under-counts the early years. - segment_id is inconsistent: non-segmented plans are '0' in modern years but an EMPTY STRING '' in older years (5,074 rows). Joins keyed on segment_id must normalize '' <-> '0'. - cms_vintage_sequence is a load-batch artifact, NOT a reliable quarter indicator (2021-Q1=seq 4, 2022-Q1=seq 2). Use the quarter column (or parse source_url) for the quarter; per grain key there is exactly one vintage so no is_current/dedup filter is needed — every row is already the single authoritative version. - NULL in the _yn flag columns is meaningful = 'benefit/question not applicable for that plan-year' (distinct from 2='No'). The whole B4C (worldwide) block is mostly NULL because foreign-travel emergency coverage is a supplemental benefit most plans/years don't offer; treating NULL as $0 cost-sharing would be wrong. - _yn / _yesno columns use CMS convention 1=Yes, 2=No (NOT boolean). copay/coins/deductible dollar columns are only populated when the corresponding _yn='1'; min and max variants (e.g. copay_amt_mc_min/max) capture a range when a plan varies cost sharing across the service area. - pbp_b4a_max_visit (med 90, range 75-120) is a copay-WAIVER DAY THRESHOLD (e.g. ER copay waived if admitted), not a count of allowed visits — do not interpret as visit limits. | column | type | meaning | |---|---|---| | contract_id | string | Medicare Advantage contract ID (e.g. 'H0028'). 1,972 distinct. Part of the plan key; one contract holds many plans. Joins to other PBP/Stars/enrollment tables. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001','801'; 656 distinct). The (contract_id, plan_id, segment_id) triple identifies a unique benefit package. | | segment_id | string | Plan segment (service-area split). '0' = non-segmented (181,424 rows / ~90%); empty-string '' is used in older years instead of '0' (5,074 rows); '1'-'8' for segmented plans. GOTCHA: '' vs '0' inconsistency breaks naive joins. | | version | double | CMS PBP software/bid version number for the plan (double, e.g. 1.0, 3.0, 6.0). Plan-submission version, not a row-dedup field. Does NOT participate in the grain. | | report_year | double | Contract/benefit year as a double (2001.0-2026.0). Equals the year of effective_period_start. The plan year the benefits apply to. | | quarter | double | Which CMS quarterly PBP-PUF release this row came from (1.0-4.0). PART OF THE GRAIN: 2018-2024 plan-years are re-published each quarter (separate row per quarter, slightly different counts as plans update mid-year). Pre-2018 years are Q1-only. Maps 1:1 to source_url quarter. | | bid_id | string | Composite plan-bid identifier = contract_id_plan_id_segment_id (e.g. 'H0028_001_0'). GOTCHA: NULL for all 2001-2006 rows (8,316 rows) — introduced later; do not use as a standalone key. | | orgtype | string | CMS organization-type code (string). '01'=Local CCP/HMO-PPO (177,737, dominant), '08'=Regional PPO, '04'=PFFS, '11'=MSA, '06'=PSO/cost, '05','02','14'. Identifies the MA plan organizational structure. | | pbp_a_ben_cov | string | Benefit-coverage indicator carried from PBP Section A. '1'=standard Original-Medicare benefits covered (196,773), '2'=alternative (4,373), NULL (342). Header context flag for the whole package. | | pbp_a_plan_type | string | CMS plan-type code (string). '01'=HMO (101,510), '04'=Local PPO (55,909), '02'=HMOPOS (20,097), '20'=Regional PPO, '09'=PFFS, '31'=MSA, '18','48'. The marketed plan type. | | pbp_b4a_bendec_emg | string | | | pbp_b4a_bendec_yesno | string | | | pbp_b4a_bendesc_amo | string | | | pbp_b4a_bendesc_emg | string | | | pbp_b4a_bendesc_yn | string | | | pbp_b4a_coins_cov_mc | string | | | pbp_b4a_coins_cov_mcia | string | | | pbp_b4a_coins_cov_mcww | string | | | pbp_b4a_coins_cov_ww | string | | | pbp_b4a_coins_pct_mc_in | double | | | pbp_b4a_coins_pct_mc_max | double | | | pbp_b4a_coins_pct_mc_min | double | | | pbp_b4a_coins_pct_mc_out | double | | | pbp_b4a_coins_pct_ww | double | | | pbp_b4a_coins_wavd_dh | double | | | pbp_b4a_coins_wavdia_dh | string | | | pbp_b4a_coins_wavdia_yn | string | | | pbp_b4a_coins_wavdww_yn | string | | | pbp_b4a_coins_yesno | string | | | pbp_b4a_coins_yn | string | | | pbp_b4a_copay_amt_mc_max | double | | | pbp_b4a_copay_amt_mc_min | double | | | pbp_b4a_copay_amt_ww | double | | | pbp_b4a_copay_mciaamt | double | | | pbp_b4a_copay_mcoa_amt | double | | | pbp_b4a_copay_mcww_amt | double | | | pbp_b4a_copay_wavd_dh | double | | | pbp_b4a_copay_wavdia_mi_dh | string | | | pbp_b4a_copay_wavdia_yn | string | | | pbp_b4a_copay_wavdww_yn | string | | | pbp_b4a_copay_yesno | string | | | pbp_b4a_copay_yn | string | | | pbp_b4a_ded_amt | double | | | pbp_b4a_ded_er_cstshrs | string | | | pbp_b4a_ded_er_cstshrs_yn | string | | | pbp_b4a_ded_yn | string | | | pbp_b4a_deduct_yn | string | | | pbp_b4a_max_visit | double | | | pbp_b4a_maxenr_amt | double | | | pbp_b4a_maxenr_per | string | | | pbp_b4a_maxenr_per_d | string | | | pbp_b4a_maxenr_yesno | string | | | pbp_b4a_maxenr_yn | string | | | pbp_b4a_refer_yn | string | | | pbp_b4a_wwc_maxplan_amt | double | | | pbp_b4a_wwc_maxplan_cov | string | | | pbp_b4a_wwc_maxplan_per | string | | | pbp_b4a_wwc_maxplan_yn | string | | | pbp_b4b_bendec_urg | string | | | pbp_b4b_bendec_yesno | string | | | pbp_b4b_bendesc_amo | string | | | pbp_b4b_bendesc_urg | string | | | pbp_b4b_bendesc_yn | string | | | pbp_b4b_coins_cov_mc_min | string | | | pbp_b4b_coins_cov_mc_ww | string | | | pbp_b4b_coins_cov_mcmin | string | | | pbp_b4b_coins_cov_mcww | string | | | pbp_b4b_coins_pct_mc_max | double | | | pbp_b4b_coins_pct_mc_min | double | | | pbp_b4b_coins_pct_ww | double | | | pbp_b4b_coins_wavd_mcdh | string | | | pbp_b4b_coins_wavdmc_dh | double | | | pbp_b4b_coins_wavdmc_yn | string | | | pbp_b4b_coins_wavdww_yn | string | | | pbp_b4b_coins_yesno | string | | | pbp_b4b_coins_yn | string | | | pbp_b4b_copay_amt_mc_max | double | | | pbp_b4b_copay_amt_mc_min | double | | | pbp_b4b_copay_amt_ww | double | | | pbp_b4b_copay_mciaamt | double | | | pbp_b4b_copay_mcoa_amt | double | | | pbp_b4b_copay_mcww_amt | double | | | pbp_b4b_copay_wavd_mcdh | string | | | pbp_b4b_copay_wavdia_yn | string | | | pbp_b4b_copay_wavdmc_dh | double | | | pbp_b4b_copay_wavdww_yn | string | | | pbp_b4b_copay_yesno | string | | | pbp_b4b_copay_yn | string | | | pbp_b4b_ded_amt | double | | | pbp_b4b_ded_yesno | string | | | pbp_b4b_ded_yn | string | | | pbp_b4b_deduct_yn | string | | | pbp_b4b_max_visit | double | | | pbp_b4b_maxenr_amt | double | | | pbp_b4b_maxenr_per | string | | | pbp_b4b_maxenr_per_d | string | | | pbp_b4b_maxenr_type | string | | | pbp_b4b_maxenr_yesno | string | | | pbp_b4b_maxenr_yn | string | | | pbp_b4b_refer_yn | string | | | pbp_b4c_bendesc_amo | string | | | pbp_b4c_bendesc_amo_wec | string | | | pbp_b4c_bendesc_amo_wet | string | | | pbp_b4c_bendesc_amo_wuc | string | | | pbp_b4c_bendesc_ehc | string | | | pbp_b4c_bendesc_yn | string | | | pbp_b4c_coins_ehc | string | | | pbp_b4c_coins_pct_max_ww | double | | | pbp_b4c_coins_pct_min_ww | double | | | pbp_b4c_coins_pct_wec_max | double | | | pbp_b4c_coins_pct_wec_min | double | | | pbp_b4c_coins_pct_wet_max | double | | | pbp_b4c_coins_pct_wet_min | double | | | pbp_b4c_coins_pct_wuc_max | double | | | pbp_b4c_coins_pct_wuc_min | double | | | pbp_b4c_coins_pct_ww | double | | | pbp_b4c_coins_wav_wec_yn | string | | | pbp_b4c_coins_wav_wet_yn | string | | | pbp_b4c_coins_wav_wuc_yn | string | | | pbp_b4c_coins_wavdww_yn | string | | | pbp_b4c_coins_yn | string | | | pbp_b4c_copay_amt_max_ww | double | | | pbp_b4c_copay_amt_min_ww | double | | | pbp_b4c_copay_amt_wec_max | double | | | pbp_b4c_copay_amt_wec_min | double | | | pbp_b4c_copay_amt_wet_max | double | | | pbp_b4c_copay_amt_wet_min | double | | | pbp_b4c_copay_amt_wuc_max | double | | | pbp_b4c_copay_amt_wuc_min | double | | | pbp_b4c_copay_amt_ww | double | | | pbp_b4c_copay_ehc | string | | | pbp_b4c_copay_wav_wec_yn | string | | | pbp_b4c_copay_wav_wet_yn | string | | | pbp_b4c_copay_wav_wuc_yn | string | | | pbp_b4c_copay_wavdww_yn | string | | | pbp_b4c_copay_yn | string | | | pbp_b4c_ded_amt | double | | | pbp_b4c_ded_yn | string | | | pbp_b4c_maxenr_amt | double | | | pbp_b4c_maxenr_per | string | | | pbp_b4c_maxenr_per_d | string | | | pbp_b4c_maxenr_yn | string | | | pbp_b4c_trns_yn | string | | | pbp_b4c_wwc_maxplan_amt | double | | | pbp_b4c_wwc_maxplan_per | string | | | pbp_b4c_wwc_maxplan_svcs_yn | string | | | pbp_b4c_wwc_maxplan_yn | string | | | pbp_b_4a_ded_amt | double | | | pbp_b_4a_ded_yesno | string | | | observed_period | date | Date (Jan-1) of the plan year the row was observed for. Equals effective_period_start in every row. Bitemporal 'as-of the data' dimension. | | asserted_at | date | Date this row was loaded/asserted into the silver layer. Only 2 values: 2026-05-16 (Q1/single-quarter loads) and 2026-05-20 (multi-quarter backfill). A load-batch timestamp, NOT business time. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer load-sequence (1-4). USUALLY tracks quarter-within-year but UNRELIABLY (e.g. 2021-Q1 has vintage_sequence=4, 2022-Q1 has 2). GOTCHA: do NOT use as a quarter proxy — use the quarter column. Per grain key there is exactly 1 vintage (no within-grain dedup needed). | | parse_revision | int | Parser revision integer: 1 for single-quarter (pre-2018 + some) loads, 2 for multi-quarter loads. Provenance/lineage field. | | parser_artifact_hash | string | SHA-256 of the parser code artifact that produced the row. Provenance — lets you tie a row to the exact extractor version. | | source_url | string | CMS download URL of the source PBP-PUF zip. 40 distinct. Encodes year AND quarter (e.g. 'pbp-benefits-2023-quarter-1.zip' ... 'quarter-4.zip'; older years 'pbp-benefits-2016.zip'). Authoritative provenance for the quarter dimension. | | sha256_content_hash | string | SHA-256 of the source file content. Provenance/integrity — identifies the exact source artifact ingested. | | pbp_b4a_* (subsection B4a = EMERGENCY CARE) | | All ~45 pbp_b4a_ columns describe EMERGENCY-care cost sharing. Key fields: copay_amt_mc_min/max (Medicare-covered ER copay $; med $90, range $0-200), coins_pct_mc_min/max (ER coinsurance %; med 20%), coins_yn/copay_yn (1=Yes this plan uses it, 2=No, NULL=N/A), ded_amt (ER-specific deductible $, rare 655 rows), max_visit (copay-waiver day threshold, NOT a visit count; med 90, values 75-120), maxenr_amt/per (max enrollee out-of-pocket for ER), wavd_* (copay-waived-if-admitted flags), refer_yn (referral required), wwc_maxplan_* (worldwide max-plan coverage tie-in). | | pbp_b4b_* (subsection B4b = URGENTLY NEEDED SERVICES) | | ~37 pbp_b4b_ columns describe URGENTLY-NEEDED-CARE cost sharing (urgent care, lower acuity than ER). Parallel structure to b4a: copay_amt_mc_min/max ($; med ~$30-40, lower than ER as expected), coins_pct_mc_min/max, coins_yn/copay_yn (1/2/NULL), ded_amt, maxenr_*, max_visit, refer_yn, wavd_* waiver flags. bendec_urg/bendesc_urg = benefit-declared/described text flags. | | pbp_b4c_* (subsection B4c = WORLDWIDE / FOREIGN-TRAVEL emergency & urgent) | | ~40 pbp_b4c_ columns describe WORLDWIDE (outside-US) emergency+urgent coverage — a supplemental benefit. Suffixes: _ww=worldwide, _wec=worldwide emergency-care, _wet=worldwide emergency-transport, _wuc=worldwide urgent-care. copay_amt_min/max_ww (med $75), coins_pct, wwc_maxplan_amt (max plan $ for foreign coverage; med $50,000, up to $1M), trns_yn (transportation). GOTCHA: heavily NULL (~45-90k rows null) — many plans/years have no worldwide benefit. | | pbp_b_4a_ded_amt / pbp_b_4a_ded_yesno | | Legacy/alternate-named emergency-deductible columns (note the extra underscore 'b_4a'). Nearly always NULL; duplicate/legacy of pbp_b4a_ded_amt from older PBP schema versions. Prefer pbp_b4a_ded_amt. | | effective_period_start / effective_period_end | | Plan-year validity window — always Jan-1 to Dec-31 of report_year. THE primary business-time column (use effective_period_start for year filtering). Annual periodicity, 2001-2026. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b4_emerg_urgent WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b4_emerg_urgent")` first. # MA pbp section b5 partial hosp `medicare_silver.pbp_section_b5_partial_hosp` · Medicare Advantage, Part D, Medicaid · status partial Section B5: Partial hospitalization cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan-segment per plan-year per CMS quarterly PUF release. Minimal verified key = contract_id + plan_id + segment_id + observed_period + quarter (= 201,488 rows, exactly the table count, unique). bid_id and effective_period_start are redundant (bid_id is always contract_plan_segment; effective_period_start always equals observed_period), and the profiler's extra key columns pbp_a_plan_type / pbp_b5_maxplan_yesno_pos are not needed. Dropping quarter collapses to 114,175 distinct plan-years because 2018-2024 plan-years are republished in 2-4 quarterly PUFs. **How to use it.** Benchmark partial-hospitalization member cost-share across MA plans for the latest year, de-duplicating the quarterly snapshots and handling the era-shifted copay column. Example: SELECT contract_id, plan_id, segment_id, pbp_b5_copay_yn, COALESCE(pbp_b5_copay_mcia_amt, pbp_b5_copay_mcia_amt_min, pbp_b5_copay_mciaamt) AS copay_usd, pbp_b5_coins_yn, COALESCE(pbp_b5_coins_pct, pbp_b5_coins_pct_min) AS coins_pct, pbp_b5_auth_yn FROM medicare_silver.pbp_section_b5_partial_hosp WHERE report_year = 2026 AND quarter = (SELECT MAX(quarter) FROM medicare_silver.pbp_section_b5_partial_hosp WHERE report_year = 2026). This answers 'for each 2026 MA plan, does partial hospitalization need prior auth and what copay/coinsurance does a member owe?' Join to pbp_section_a (or other pbp_section_* tables) on contract_id+plan_id+segment_id+report_year+quarter to assemble the full benefit package. **Traps.** - QUARTERLY-SNAPSHOT DUPLICATION (biggest trap): a plan-year is NOT one row. For 2018-2024, CMS republished the same plan-year in 2-4 quarterly PUFs, so each plan appears 2-4 near-identical times distinguished only by `quarter`. 2001-2017, 2021, 2025, 2026 are Q1-only (CMS dropped quarterly cadence CY2025+). There is NO is_current/latest flag. To get one row per plan-year you MUST pick a single quarter, e.g. the max(quarter) per (contract_id,plan_id,segment_id,report_year). Counting rows = counting plan-year-quarters, ~1.76x the plan-year count. - ERA-DEPENDENT COST COLUMNS - the active copay column moves across years: pbp_b5_copay_mciaamt (2001 only) -> pbp_b5_copay_mcia_amt (2002-2015) -> pbp_b5_copay_mcia_amt_min/_max (2016+). Coinsurance similarly splits: pbp_b5_coins_pct (plain, some eras) vs pbp_b5_coins_pct_min/_max (2016+), and they are mutually exclusive. Always COALESCE across the family (e.g. COALESCE(copay_mcia_amt, copay_mcia_amt_min, copay_mciaamt)) or you silently get all-NULL for half the history. - B5A/B5B SUB-BENEFIT COLUMNS ARE 2026-ONLY: all 18 pbp_b5a_* / pbp_b5b_* columns are populated solely in report_year 2026 (CMS split partial hospitalization into 5A/5B sub-services that year) and are 100% NULL for 2001-2025. Do not treat them as historical fields. - YN GATES DRIVE AMOUNT PRESENCE - the cost columns are null unless the matching _yn flag says Yes: copay_yn='1' <-> copay amount present (verified 100%/0%); coins_yn='1' or '3' <-> coinsurance pct present, '2'=No=no pct. coins_yn has a third state '3' (range variant). A NULL amount usually means 'no charge / not applicable', not missing data - read it together with its _yn. - MANY DECLARED COLUMNS ARE INERT - every `_pos` place-of-service variant (auth_pos, coins_pct_pos, maxpln_*_pos, maxplan_yesno_pos, etc.) plus maxenr_per_d are ~100% NULL (maxplan_yesno_pos has only 29 non-null rows). maxplan_yesno_pos appears in the profiler's candidate key but is effectively empty - do NOT include it in the grain. plan_id (656) and segment_id (27) are only unique WITHIN a contract, never globally. - DESIGN DATA, NOT SPEND: these are plan-filed cost-share parameters (what a member would owe), not paid claims, allowed amounts, or utilization. Use for benefit-design benchmarking across MA plans/years; do not read as Vlada-priced or as actual dollars paid. Provenance lives in source_url / sha256_content_hash / asserted_at (bitemporal load time). | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract number (e.g. 'H0028'). 1,972 distinct. Part of the grain key. Joins to contract/enrollment tables. | | plan_id | string | Plan number within the contract, zero-padded 3-char string (e.g. '001','008'). 656 distinct values but only unique WITHIN a contract. Part of grain key. | | segment_id | string | Plan segment within the plan (service-area split), string (e.g. '0','1','2'). 27 distinct. Part of grain key. Most plans are segment '0'. | | version | double | CMS PBP bid version/iteration number for that plan-year (double, e.g. 2.0,3.0,4.0,5.0). The plan's internal submission revision; does NOT make rows duplicate (each plan-year-quarter has one version). | | report_year | double | Contract/benefit calendar year as a double (2001-2026). Equals YEAR(observed_period). This is the plan year the benefits apply to. | | quarter | double | CMS PUF release quarter (1-4) the row was sourced from. CRITICAL: part of the grain. A single plan-year is re-published in multiple quarterly PUFs for 2018-2024, so the SAME plan appears 2-4 times (once per quarter). 2001-2017, 2021, 2025, 2026 are Q1-only (CMS dropped quarterly cadence CY2025+). | | bid_id | string | Composite key string, ALWAYS exactly contract_id//'_'//plan_id//'_'//segment_id (0 mismatches in 201,488 rows). Fully redundant with the three id columns; convenient join handle, NOT an independent dimension. | | orgtype | string | Organization type code (string '01'-'14'). '01' dominates (177,737 = local CCP/HMO-PPO). '08','04','11','06','05' etc are other org types (PFFS, regional PPO, cost, etc). | | pbp_a_ben_cov | string | Section-A benefit-coverage indicator carried into this section ('1' = ~196k rows, '2' = 4,373, null = 342). NOT a clean covered/not-covered flag — both '1' and '2' rows carry populated B5 cost-share detail. Inherited context field. | | pbp_a_plan_type | string | Section-A plan-type code (string). '01'=HMO (101k), '04'=local PPO (56k), '02'=HMOPOS (20k), '20','09','31','18','48' etc. Describes the MA plan product type. | | pbp_b5_auth | string | Free/numeric auth detail field. Almost entirely null in modern eras (61,700 nulls); superseded by pbp_b5_auth_yn. Legacy. | | pbp_b5_auth_pos | string | Place-of-service ('_pos') variant of the auth field. Effectively always null (only 29 non-null, all in 2001). Inert column. | | pbp_b5_auth_yn | string | Does partial-hospitalization require prior authorization? Coded '1'=Yes (122,635), '2'=No (17,153), null=61,700 (older eras / not-collected). The primary auth flag. | | pbp_b5_coins_cov | string | Coinsurance coverage-scope descriptor. Almost entirely null. Legacy/rarely populated. | | pbp_b5_coins_cov_pos | string | Place-of-service variant of coins_cov. Effectively all null. Inert. | | pbp_b5_coins_pct | double | Coinsurance percent (plain, single value). Populated 12,926 rows and ONLY in eras that use this column (mutually exclusive with coins_pct_min/max — plain_only=12,926). Era-dependent: this is the active coinsurance column in some years, the min/max pair in others. | | pbp_b5_coins_pct_max | double | Upper bound of coinsurance percent when the plan reports a range. Real values 0-45%. Populated in the min/max-era rows. Equals min when the rate is a single value. | | pbp_b5_coins_pct_min | double | Lower bound (or single value) of coinsurance percent. Median 20%, max 45%. 46,175 populated. The active coinsurance column for 2016+ era rows. | | pbp_b5_coins_pct_pos | double | Place-of-service variant of coinsurance percent. Effectively all null (18 rows, 2001 only). Inert. | | pbp_b5_coins_yesno | string | Legacy yes/no coinsurance descriptor (string). Almost entirely null; superseded by pbp_b5_coins_yn. | | pbp_b5_coins_yesno_pos | string | Place-of-service variant of coins_yesno. All null. Inert. | | pbp_b5_coins_yn | string | Does the plan charge coinsurance for partial hospitalization? '2'=No (132,248, no pct present), '1'=Yes (57,878, pct present), '3'=Yes-range variant (1,182, all have pct), null=10,180. GATE for whether the coins_pct* columns are populated. | | pbp_b5_copay_amtd_pos | double | Place-of-service copay-amount-per-day variant (double). Effectively all null. Inert. | | pbp_b5_copay_mcia_amt | double | Copay dollar amount (Medicare Covered If Applicable). THE active copay column for plan years 2002-2015 (0 rows outside that era). Real dollars, median ~$36, max $800. Era-specific — null in 2001 and 2016+. | | pbp_b5_copay_mcia_amt_max | double | Upper bound of copay dollar amount when a range is reported. Active 2016+ era. Real dollars, max $750. Equals min for single values. | | pbp_b5_copay_mcia_amt_min | double | Lower bound (or single value) copay dollar amount. THE active copay column for 2016+ plan years. Median $55, max $750. Null before 2016. | | pbp_b5_copay_mciaamt | double | Oldest-form copay dollar column (note: no underscore before 'amt'). Populated ONLY in report_year 2001 (453 rows). Replaced by mcia_amt then mcia_amt_min/max. Era-specific copay value. | | pbp_b5_copay_yesno | string | Legacy yes/no copay descriptor (string). Almost entirely null; superseded by pbp_b5_copay_yn. | | pbp_b5_copay_yesno_pos | string | Place-of-service variant of copay_yesno. All null. Inert. | | pbp_b5_copay_yn | string | Does the plan charge a copay for partial hospitalization? '1'=Yes (112,671, 100% have a copay amount), '2'=No (78,635, 0% have amount), '3'=rare (2), null=10,180. GATE for the copay amount columns. Verified: yn drives amount presence exactly. | | pbp_b5_ded_amt | double | Deductible dollar amount specific to this benefit. Rarely used: only 100 rows populated, 0-$952. Partial-hosp almost never has its own deductible. | | pbp_b5_ded_amt_pos | double | Place-of-service variant of the deductible amount. All null. Inert. | | pbp_b5_ded_yesno | string | Legacy yes/no deductible descriptor. Almost entirely null. Legacy. | | pbp_b5_ded_yesno_pos | string | Place-of-service variant of ded_yesno. All null. Inert. | | pbp_b5_ded_yn | string | Does this benefit have its own deductible? Overwhelmingly '2'=No (191,184); '1'=Yes only 100; null 10,204. Gate for ded_amt. | | pbp_b5_maxenr_amt | double | Per-enrollee maximum out-of-pocket dollar amount for this benefit. Rarely populated (maxenr_yn is almost always No). Dollar cap per member. | | pbp_b5_maxenr_amt_pos | double | Place-of-service variant of maxenr_amt. All null. Inert. | | pbp_b5_maxenr_per | string | Per-enrollee-maximum periodicity number (string). Almost all null (201,157); '3' (284) and '6' (47) when present. Composes with per_d unit. Rarely used. | | pbp_b5_maxenr_per_d | string | Per-enrollee-maximum period denominator/unit (D=day, M=month, etc per CMS dict). 100% NULL in this table — declared but never populated for B5. | | pbp_b5_maxenr_yesno | string | Legacy yes/no per-enrollee-max descriptor. Almost all null. Legacy. | | pbp_b5_maxenr_yn | string | Does the plan apply a per-enrollee maximum to this benefit? Overwhelmingly '2'=No (190,956); '1'=Yes only 328; null 10,204. Gate for the maxenr_* fields. | | pbp_b5_maxenr_yn_pos | string | Place-of-service variant of maxenr_yn. All null. Inert. | | pbp_b5_maxplan_yesno_pos | string | Plan-level-maximum yes/no, place-of-service variant. 99.99% NULL (only 29 non-null, value '2'). Appears in the profiler's candidate key but is inert; the true minimal grain does NOT need it. | | pbp_b5_maxpln_amt_pos | double | Plan-level maximum dollar amount, place-of-service variant. All null. Inert. | | pbp_b5_maxpln_cov_pos | string | Plan-level maximum coverage scope, place-of-service variant. All null. Inert. | | pbp_b5_maxpln_per_pos | string | Plan-level maximum periodicity, place-of-service variant. 100% null. Inert. | | pbp_b5_refer_yn | string | Is a referral required for partial hospitalization? '2'=No (144,584), '1'=Yes (44,369), null=12,535. | | pbp_b5a_coins_pct | double | Coinsurance percent for sub-benefit B5A. NEW CY2026 only (populated solely in report_year 2026, ~994 rows). Part of the 2026 split of partial-hosp into 5A/5B sub-services. Null for all prior years. | | pbp_b5a_copay_amt | double | Copay dollar amount for sub-benefit B5A. NEW CY2026 only (4,444 rows in 2026, null elsewhere). | | pbp_b5b_auth_yn | string | Prior-auth flag for sub-benefit B5B. NEW CY2026 only (7,002 rows). Null for all years before 2026. | | pbp_b5b_coins_pct | double | Coinsurance percent for sub-benefit B5B. CY2026 only (903 rows). | | pbp_b5b_coins_pct_max | double | Upper bound of B5B coinsurance percent. CY2026 only. | | pbp_b5b_coins_pct_min | double | Lower bound/single B5B coinsurance percent. CY2026 only. | | pbp_b5b_coins_yn | string | Does B5B sub-benefit charge coinsurance? CY2026 only. Gate for b5b_coins_pct*. | | pbp_b5b_copay_amt | double | Copay dollar amount for B5B. CY2026 only (4,495 rows). | | pbp_b5b_copay_amt_max | double | Upper bound of B5B copay dollar amount (range). CY2026 only. | | pbp_b5b_copay_amt_min | double | Lower bound/single B5B copay dollar amount. CY2026 only. | | pbp_b5b_copay_yn | string | Does B5B charge a copay? CY2026 only. Gate for b5b_copay_amt*. | | pbp_b5b_ded_amt | double | Deductible dollar amount for B5B. CY2026 only. | | pbp_b5b_ded_yn | string | Does B5B have its own deductible? CY2026 only. | | pbp_b5b_maxenr_amt | double | Per-enrollee maximum dollar amount for B5B. CY2026 only. | | pbp_b5b_maxenr_per | string | Per-enrollee-max periodicity number for B5B. CY2026 only (only 7 rows populated). | | pbp_b5b_maxenr_per_d | string | Per-enrollee-max period unit for B5B. 100% null even in 2026. Inert. | | pbp_b5b_maxenr_yn | string | Does B5B apply a per-enrollee maximum? CY2026 only. | | pbp_b5b_refer_yn | string | Is a referral required for B5B? CY2026 only. | | observed_period | date | Vlada-added DATE = first day of the plan year (e.g. 2018-01-01). Equals effective_period_start (0 mismatches) and YEAR equals report_year. The benefit-year anchor; part of grain. Annual cadence. | | asserted_at | date | Vlada provenance DATE: when this row was loaded/asserted into the silver layer (e.g. 2026-05-20). Bitemporal 'system time' column; same for a load batch. Not a benefit attribute. | | effective_period_start | date | DATE the benefit takes effect = Jan 1 of report_year. Identical to observed_period (verified 0 diffs). Redundant with observed_period. | | effective_period_end | date | DATE the benefit period ends = Dec 31 of report_year (e.g. 2018-12-31). Annual coverage window close. | | cms_vintage_sequence | int | Vlada integer ordering CMS source vintages (e.g. 2). Sequence of the CMS PUF vintage this row came from; provenance/ordering aid. | | parse_revision | int | Vlada integer parser revision (e.g. 2). Which version of the ingestion parser produced the row. Provenance, not benefit data. | | parser_artifact_hash | string | SHA-256 of the parser artifact/code that produced the row. Provenance/reproducibility. | | source_url | string | CMS download URL of the source PUF zip (e.g. .../pbp-benefits-2018-q2.zip). Encodes the year+quarter of the source release; ground-truth provenance. | | sha256_content_hash | string | SHA-256 of the source file content. Integrity/dedup of the underlying CMS file. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b5_partial_hosp WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b5_partial_hosp")` first. # MA pbp section b6 home health `medicare_silver.pbp_section_b6_home_health` · Medicare Advantage, Part D, Medicaid · status partial Section B6: Home health cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan segment per CMS quarterly PBP snapshot of a plan year — i.e. one row per (contract_id, plan_id, segment_id, report_year, quarter). Verified unique: 201,488 distinct = 201,488 total rows. report_year is the year the benefits are in effect (= year(observed_period) = year(effective_period_start)); quarter is which CMS quarterly release of that plan year the row came from. Because 2018+ plan-years are re-published up to 4 times a year, the SAME plan-year benefit appears once per published quarter — so the table is NOT one-row-per-plan-per-year; you must pick a quarter (or dedup on it) to get plan-year grain. **How to use it.** To benchmark Medicare Advantage home-health cost-sharing for the latest plan year, pin to one snapshot per plan and read the master flags + mc amounts. Example: SELECT contract_id, plan_id, segment_id, pbp_a_plan_type, pbp_b6_auth_yn, pbp_b6_copay_yn, pbp_b6_copay_mc_amt_min, pbp_b6_copay_mc_amt_max, pbp_b6_coins_yn, pbp_b6_coins_pct_mc FROM medicare_silver.pbp_section_b6_home_health WHERE report_year = 2026 AND quarter = 1 — answers 'which MA plans require prior auth for home health, and what copay/coinsurance do they charge?' To trend over time, GROUP BY report_year using a single quarter per year (e.g. quarter = 1, or MAX(quarter)) to avoid quarterly double-counting. **Traps.** - NOT one-row-per-plan-per-year. quarter is part of the grain: 2001-2017 publish Q1 only, but 2018+ publish up to 4 quarterly snapshots of the SAME plan-year (e.g. 2023 has Q1-Q4). Naively counting rows or joining without pinning quarter double/quadruple-counts recent plan-years. For a per-plan-year view, filter to one quarter (e.g. MAX(quarter) per report_year) or to quarter=1. - There is NO is_current column and no within-grain dedup is needed — each (contract,plan,segment,report_year,quarter) has exactly one row / one cms_vintage_sequence (verified 0 multi-vintage groups). cms_vintage_sequence (1-4) and parse_revision are provenance/ingest-batch markers, NOT version flags to filter on; asserted_at (only 2026-05-16 / 2026-05-20) is the lake LOAD date, not a benefit date. - bid_id LOOKS like a primary key but is not: it is the derived concat contract_id_plan_id_segment_id and is NULL for 8,316 early-year rows, so DISTINCT bid_id (23,191) under-counts the real plan population (26,631 contract+plan+segment combos). Use the three ID columns, not bid_id. - _yn flags follow CMS convention '1'=Yes, '2'=No, and NULL = not collected in that year's PBP version (PBP schema changed over 25 years) — NULL does not mean 'No'. The flag gates its amount columns: copay/coins/deductible dollar+percent fields are only populated when the matching *_yn='1'. Deductible is essentially always '2'/No (Original-Medicare home health has no deductible; only 3 rows carry an amount). - Most measure columns are extremely sparse and benefit-specific. The entire pbp_b6_mm_* sub-block (additional / Non-Medicare-Covered in-home support services) is NULL in ~200,350 of 201,488 rows (mm_nmc_yn set in just 1,138). Many _pos (point-of-service/out-of-network) columns are vestigial (e.g. pbp_b6_copay_amtv_pos is 100% NULL). Suffixes encode home-health sub-categories: mc=Medicare-covered (the main one), hs/rc/cc=other sub-services; pull the mc and the *_yn columns for the core cost-sharing story. - Sibling-table caveat: this is ONLY PBP Section B-6 (home health). Other pbp_section_b* tables hold other benefit categories (B-1 inpatient, B-7 professional, etc.) at the SAME plan grain — do not assume a plan's home-health cost-share generalizes. report_year/observed_period/effective_period_start are all the same year (redundant); effective_period_end is always Dec 31 of that year. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage/Part C contract ID (e.g. H0028). Prefix encodes program: H=local MA/MA-PD (1,933 contracts), R=regional PPO (37), E=employer/EGWP (2). All rows are MA contracts. Part of the grain key. | | plan_id | string | 3-char plan benefit package ID within the contract (e.g. '001','007'). 656 distinct values. A contract sells many plans. Part of the grain key. | | segment_id | string | Plan segment (service-area sub-division). '0' = non-segmented plan (181,424 rows, the norm); '1'-'27' = segmented plans; empty-string '' for 5,074 early-year rows (never NULL). Part of the grain key — needed because the same contract+plan can have multiple segments. | | version | double | CMS bid/PBP submission version number for that plan-year (double, 0-27). Resets each report_year (e.g. 2023 plans show v3, 2024 v6). Identifies which iteration of the plan's bid the snapshot reflects; NOT a lake-side dedup version and NOT part of the minimal grain. | | report_year | double | Plan/benefit year the row describes (double, 2001-2026). Equals year(observed_period)=year(effective_period_start)=year(effective_period_end) exactly. Part of the grain key (stands in for observed_period). This is the year the benefits are IN EFFECT, not when filed. | | quarter | double | CMS PBP quarterly release the snapshot came from (double, 1-4). Part of the grain key. CRITICAL: 2001-2017 have Q1 only; 2018+ have up to 4 quarterly re-publications of the SAME plan year. A given plan-year appears once per published quarter. | | bid_id | string | Derived plan key = contract_id//'_'//plan_id//'_'//segment_id (verified: equals that concat in 100% of non-null rows). NULL for 8,316 early-year rows. Redundant with the three ID columns; do NOT use as a standalone key (its nulls make it non-unique). | | orgtype | string | CMS organization type code (string): '01'=Local CCP/HMO-PPO (177,737, plurality), '08'=Regional PPO, '04'=PFFS, '11'=MSA, '06'=1876 Cost, '05'=PDP-ish, etc. Describes the MA organization structure. | | pbp_a_ben_cov | string | Section A benefit-coverage indicator (string): '1'=plan covers Original Medicare benefits (196,773), '2'=does not (4,373), NULL (342). Carried from PBP Section A. | | pbp_a_plan_type | string | CMS plan-type code (string): '01'=HMO (101,510), '04'=Local PPO (55,909), '02'=HMOPOS (20,097), '20'=Regional PPO, '09'=PFFS, '31'=MSA, '18'=Cost, '48'=Special. Carried from PBP Section A; classifies the plan product. | | pbp_b6_auth | string | | | pbp_b6_auth_pos | string | | | pbp_b6_auth_yn | string | | | pbp_b6_bendec_hh | string | | | pbp_b6_bendec_yesno | string | | | pbp_b6_bendesc_amo | string | | | pbp_b6_bendesc_amo_hs | string | | | pbp_b6_bendesc_amo_rc | string | | | pbp_b6_bendesc_amohs | string | | | pbp_b6_bendesc_amorc | string | | | pbp_b6_bendesc_hh | string | | | pbp_b6_bendesc_yn | string | | | pbp_b6_coins_cov_cc | string | | | pbp_b6_coins_cov_hs | string | | | pbp_b6_coins_cov_mc | string | | | pbp_b6_coins_cov_pos | string | | | pbp_b6_coins_cov_rc | string | | | pbp_b6_coins_pct_cc | double | | | pbp_b6_coins_pct_cc_max | double | | | pbp_b6_coins_pct_cc_min | double | | | pbp_b6_coins_pct_ccmax | double | | | pbp_b6_coins_pct_hs | double | | | pbp_b6_coins_pct_hs_max | double | | | pbp_b6_coins_pct_hs_min | double | | | pbp_b6_coins_pct_hsmax | double | | | pbp_b6_coins_pct_max_pos | double | | | pbp_b6_coins_pct_mc | double | | | pbp_b6_coins_pct_mc_max | double | | | pbp_b6_coins_pct_mc_min | double | | | pbp_b6_coins_pct_mcmax | double | | | pbp_b6_coins_pct_pos | double | | | pbp_b6_coins_pct_rc | double | | | pbp_b6_coins_pct_rc_max | double | | | pbp_b6_coins_pct_rc_min | double | | | pbp_b6_coins_pct_rcmax | double | | | pbp_b6_coins_yesno | string | | | pbp_b6_coins_yesno_pos | string | | | pbp_b6_coins_yn | string | | | pbp_b6_copay_amtv_pos | double | | | pbp_b6_copay_cc_amt | double | | | pbp_b6_copay_cc_amt_max | double | | | pbp_b6_copay_cc_amt_min | double | | | pbp_b6_copay_cc_amtmax | double | | | pbp_b6_copay_hs_amt | double | | | pbp_b6_copay_hs_amt_max | double | | | pbp_b6_copay_hs_amt_min | double | | | pbp_b6_copay_hs_amtmax | double | | | pbp_b6_copay_max_amtv_pos | double | | | pbp_b6_copay_mc_amt_max | double | | | pbp_b6_copay_mc_amt_min | double | | | pbp_b6_copay_mcamt | double | | | pbp_b6_copay_mcamtmax | double | | | pbp_b6_copay_rc_amt | double | | | pbp_b6_copay_rc_amt_max | double | | | pbp_b6_copay_rc_amt_min | double | | | pbp_b6_copay_rc_amtmax | double | | | pbp_b6_copay_yesno | string | | | pbp_b6_copay_yesno_pos | string | | | pbp_b6_copay_yn | string | | | pbp_b6_ded_amt | double | | | pbp_b6_ded_amt_pos | double | | | pbp_b6_ded_yesno_pos | string | | | pbp_b6_ded_yn | string | | | pbp_b6_maxenr_amt | double | | | pbp_b6_maxenr_amt_pos | double | | | pbp_b6_maxenr_per | string | | | pbp_b6_maxenr_per_d | string | | | pbp_b6_maxenr_yesno | string | | | pbp_b6_maxenr_yn | string | | | pbp_b6_maxenr_yn_pos | string | | | pbp_b6_maxplan_yesno_pos | string | | | pbp_b6_maxpln_amt_pos | double | | | pbp_b6_maxpln_cov_pos | string | | | pbp_b6_maxpln_per_pos | string | | | pbp_b6_mm_addl_service_other1 | string | | | pbp_b6_mm_addl_service_other2 | string | | | pbp_b6_mm_auth | string | | | pbp_b6_mm_auth_yn | string | | | pbp_b6_mm_coins_addl_max | double | | | pbp_b6_mm_coins_addl_min | double | | | pbp_b6_mm_coins_other1_max | double | | | pbp_b6_mm_coins_other1_min | double | | | pbp_b6_mm_coins_other2_max | double | | | pbp_b6_mm_coins_other2_min | double | | | pbp_b6_mm_coins_pcs_max | double | | | pbp_b6_mm_coins_pcs_min | double | | | pbp_b6_mm_coins_services | string | | | pbp_b6_mm_coins_yn | string | | | pbp_b6_mm_copay_addl_max | double | | | pbp_b6_mm_copay_addl_min | double | | | pbp_b6_mm_copay_other1_max | double | | | pbp_b6_mm_copay_other1_min | double | | | pbp_b6_mm_copay_other2_max | double | | | pbp_b6_mm_copay_other2_min | double | | | pbp_b6_mm_copay_pcs_max | double | | | pbp_b6_mm_copay_pcs_min | double | | | pbp_b6_mm_copay_services | string | | | pbp_b6_mm_copay_yn | string | | | pbp_b6_mm_lim_unit_type_ahc_d | string | | | pbp_b6_mm_lim_unit_type_oth1_d | string | | | pbp_b6_mm_lim_unit_type_oth2_d | string | | | pbp_b6_mm_limit_services | string | | | pbp_b6_mm_limit_unit_num_ahc | double | | | pbp_b6_mm_limit_unit_num_oth1 | double | | | pbp_b6_mm_limit_unit_num_oth2 | double | | | pbp_b6_mm_limit_unit_num_pc | double | | | pbp_b6_mm_limit_unit_per_ahc | string | | | pbp_b6_mm_limit_unit_per_ahc_d | string | | | pbp_b6_mm_limit_unit_per_oth1 | string | | | pbp_b6_mm_limit_unit_per_oth2 | string | | | pbp_b6_mm_limit_unit_per_pc | string | | | pbp_b6_mm_limit_unit_per_pc_d | string | | | pbp_b6_mm_limit_unit_type_ahc | string | | | pbp_b6_mm_limit_unit_type_oth1 | string | | | pbp_b6_mm_limit_unit_type_oth2 | string | | | pbp_b6_mm_limit_unit_type_pc | string | | | pbp_b6_mm_limit_unit_type_pc_d | string | | | pbp_b6_mm_limit_yn | string | | | pbp_b6_mm_limt_unit_per_oth1_d | string | | | pbp_b6_mm_limt_unit_per_oth2_d | string | | | pbp_b6_mm_maxplan_amt | double | | | pbp_b6_mm_maxplan_per | string | | | pbp_b6_mm_maxplan_per_d | string | | | pbp_b6_mm_maxplan_yn | string | | | pbp_b6_mm_nmc_yn | string | | | pbp_b6_mm_refer_yn | string | | | pbp_b6_mm_services | string | | | pbp_b6_mmp_waiver_srvc | string | | | pbp_b6_mmp_waiver_yn | string | | | pbp_b6_refer_yn | string | | | pbp_b_6_ded_amt | double | | | pbp_b_6_ded_yesno | 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 | | | pbp_b6_auth_yn / pbp_b6_refer_yn | | Whether prior authorization (auth) / referral (refer) is required for home health. CMS yes/no convention: '1'=Yes, '2'=No, NULL=not asked that PBP version. Auth: 120,706 Yes; Refer: 53,884 Yes. pbp_b6_auth/pbp_b6_auth_pos hold free-text/POS auth detail (mostly NULL). | | pbp_b6_copay_yn / pbp_b6_coins_yn / pbp_b6_ded_yn | | Master flags for whether the plan charges a copay / coinsurance / deductible on Medicare-covered home health. '1'=Yes, '2'=No, NULL=n/a. Copay Yes=79,803; Coins Yes=39,227; Deductible almost always '2'=No (only 3 rows Yes — Original-Medicare home health has no deductible). These gate the corresponding amount columns. | | pbp_b6_copay_{mc,hs,rc,cc}_amt[_min/_max] / pbp_b6_copay_mcamt[max] | | Home-health copay DOLLAR amounts by sub-category: mc=Medicare-covered home health (primary), hs/rc/cc=other home-health sub-services. _min/_max give the range; the bare/_mcamt is a point value. Observed range $0-$65 (mostly $0 — MA home health rarely charges). Populated only when copay_yn='1'. | | pbp_b6_coins_pct_{mc,hs,rc,cc}[_min/_max] + pbp_b6_coins_cov_* | | Home-health coinsurance PERCENT by sub-category (double, 0-35, median 0). coins_cov_* are coverage-descriptor codes (1-6) for what the coinsurance applies to. Populated only when coins_yn='1' (very sparse for mc: ~12 non-null). | | pbp_b6_ded_amt / pbp_b_6_ded_amt / pbp_b6_ded_amt_pos | | Home-health deductible dollar amount. Essentially always NULL (deductible_yn is overwhelmingly No); only 3 rows carry a value ($124). pbp_b_6_ded_amt / pbp_b_6_ded_yesno are legacy duplicate spellings (underscore-6) of the same concept, nearly all NULL. | | pbp_b6_maxenr_* (amt, per, per_d, yn) / pbp_b6_maxpln_* / pbp_b6_maxplan_yesno_pos | | Maximum enrollee out-of-pocket / maximum plan benefit caps on home health: yn flag ('2'=No in 191,273 rows — caps rare), amt=dollar cap, per/per_d=period the cap applies over (coded + decoded). _pos variants are for the POS/out-of-network side. Almost entirely No/NULL for this benefit. | | pbp_b6_mm_* (services, nmc_yn, auth_yn, refer_yn, coins_*, copay_*, limit_*, maxplan_*) | | The 'MM' sub-block = additional / Non-Medicare-Covered (NMC) in-home support & supplemental home-health services a plan may add. VERY sparse: ~200,350 of 201,488 rows NULL. mm_nmc_yn='1' in only 1,138 rows. mm_services is a 4-bit service-category bitmask ('0100','0111',...). mm_limit_* encode visit/unit limits (num + period + unit-type, with _d decoded text). Use only for the small set of plans offering expanded home health. | | pbp_b6_*_pos suffix columns | | Point-of-service / out-of-network cost-share variants (copay_amtv_pos, coins_*_pos, maxpln_*_pos, ded_*_pos, etc.). Largely vestigial here — e.g. pbp_b6_copay_amtv_pos is 100% NULL. Present for schema symmetry with POS-capable plan types. | | observed_period (date) | | The plan year as a date — always Jan 1 of report_year. Constant within a (report_year, quarter). Bitemporal 'valid-time' anchor; redundant with report_year. | | effective_period_start / effective_period_end (date) | | Benefit validity window: Jan 1 -> Dec 31 of report_year (effective_period_end is ALWAYS Dec 31, verified). Defines the plan year the cost-sharing is in force. | | asserted_at (date) | | Bitemporal 'transaction-time' — the date this row was loaded/asserted into the lake. Only 2 values (2026-05-16: 100,054 rows; 2026-05-20: 101,434). It is an INGEST date, NOT a benefit date; do not confuse with effective_period. | | cms_vintage_sequence (int) | | Sequence (1-4) of the CMS quarterly release within ingestion. Maps 1:1 to the quarterly source file batch (v1=Q1 load of 100,054, etc.). Each grain row has exactly ONE vintage (verified 0 multi-vintage groups) — so it is NOT a within-grain dedup/is_current marker. | | parse_revision (int) | | Version of the parser/pipeline that produced the row (1 or 2 observed). Provenance for reproducibility; not a business key. | | parser_artifact_hash / source_url / sha256_content_hash | | Provenance trio: parser_artifact_hash = code-artifact fingerprint; source_url = the exact CMS PBP zip (e.g. .../pbp-benefits-2022-quarter-2.zip, 40 distinct = 40 year-quarter files); sha256_content_hash = content hash of the source file. Enables full lineage back to the CMS download. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b6_home_health WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b6_home_health")` first. # MA pbp section b7 health prof `medicare_silver.pbp_section_b7_health_prof` · Medicare Advantage, Part D, Medicaid · status partial Section B7: Health professional services (PCP/specialist) cost-share. Wide schema. Coverage: All years. **Grain.** One row per Medicare Advantage plan-segment per CMS quarterly PBP release. The minimal verified key is contract_id x plan_id x segment_id x report_year x quarter (193,488 distinct = exactly the 193,488 row count). report_year is the benefit/contract year the cost-shares apply to; quarter is which quarterly CMS PBP file vintage that snapshot came from (the same plan-year is re-published across multiple quarters, e.g. 2023 appears as Q1, Q2, Q3, and Q4). Within any single (report_year, quarter), distinct plans == row count, so there is exactly one row per plan-segment in each release. **How to use it.** Pin a single snapshot per plan-year before aggregating. Example — median primary-care vs specialist copay for 2026 HMO plans: SELECT approx_percentile(pbp_b7a_copay_amt_mc_max,0.5) AS pcp_copay, approx_percentile(pbp_b7d_copay_amt_mc_max,0.5) AS specialist_copay FROM medicare_silver.pbp_section_b7_health_prof WHERE report_year=2026 AND quarter=1 AND pbp_a_plan_type='01' AND pbp_b7a_copay_yn='1'. This returns PCP ~$0 and specialist ~$35, i.e. what a 2026 MA HMO member typically pays out-of-pocket to see a doctor. Join to other pbp_section_* tables on (contract_id, plan_id, segment_id, report_year, quarter) for full benefit design. **Traps.** - GRAIN TRAP — quarter is part of the key, not a refresh. The SAME benefit year is re-published across multiple quarterly snapshots (e.g. 2023 appears as Q1,Q2,Q3,Q4; row counts drift 7752->7747->7751->7755). If you query a plan's PCP copay without pinning a quarter you will multi-count it ~2-4x. For 'the plan year' pick one quarter (e.g. Q1 = initial/as-bid, or MAX(quarter) for the latest correction). There is NO is_current / latest flag in this table. - NO row-level hash and NO is_current: sha256_content_hash and source_url each have only 38 distinct values (one per release ZIP), and asserted_at is just the ingest date (2 values). None of these identify or dedupe a row — the only true row identity is contract_id x plan_id x segment_id x report_year x quarter. - The profiler's reported grain is a bloated SUPERSET (24 columns incl. several *_maxplan_amt and observed_period). The real minimal key is 5 columns; observed_period (=effective_period_start always), bid_id (=concat of the 3 IDs, NULL pre-2010), and version (a bid-software number, not the snapshot id) are all functionally dependent and must NOT be added to the key. - NULL vs 0.0 carries meaning: a 0.0 copay/coinsurance is a real $0 cost-share (PCP is frequently $0); a NULL means the benefit/sub-section was not offered or not reported (older years null whole sub-sections that didn't exist yet). _yn flags are '1'=Yes / '2'=No / NULL=not-applicable — never assume 0/1 boolean. - Time coverage is gappy and quarter coverage is uneven: benefit years 2010 and 2011 are entirely missing; quarterly snapshots only start ~2018 (earlier years are Q1-only); and within recent years some quarters are absent (2020 has no Q3, 2024 has no Q2). Do not assume a continuous 4-quarter-per-year panel. - Sub-sections are columns, not rows: B7a..B7k (primary care, chiropractic, podiatry, specialist, PT/OT, psychiatric, mental-health, substance-abuse, individual-psych, combined, additional) are encoded as ~430 wide columns per row, each prefixed pbp_b7_. This differs from long/normalized fact tables — to compare service categories you select different column families, not filter a category column. pbp_b7j_mc_bendesc_cats is a packed semicolon-delimited code list that must be string-parsed. - Most amount columns come as min/max PAIRS (or single _amt with a _max ceiling for B7g/B7k) representing a cost-share RANGE within the benefit category, and many cost-shares are split by network/coverage tier suffix: _mc=Medicare-covered, _mcis=Medicare in-network/in-area, _mcgs=gap/out-of-area, _rc/_rf/_other/_cc=supplemental/routine. Pick the right suffix or you mix in-network and out-of-network dollars. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0022, R-prefix=regional PPO). 1,966 distinct. Part of the grain key. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001'). 656 distinct. Identifies the specific plan benefit package. Part of grain. | | segment_id | string | Plan segment (geographic/benefit segment), '0' when unsegmented; up to 27 distinct. REQUIRED for the grain — dropping it collapses 193,488 to 183,933 rows (segmented plans exist). | | version | double | CMS PBP bid software version number for the record (0-8+). NOT the snapshot identity and NOT equal to cms_vintage_sequence (they match in only ~11% of rows). Functionally dependent on the grain key — does not split rows. | | report_year | double | Benefit/contract year the cost-shares apply to (2001-2026). Equals year(effective_period_start). Part of grain. NOTE: 2010 and 2011 are entirely absent from the data. | | quarter | double | Which quarterly CMS PBP release (1-4) this snapshot came from. Part of grain. Earlier years are Q1-only (annual); quarterly snapshots layered on from ~2018. Some quarters are missing (e.g. 2020 has Q1/Q2/Q4 not Q3; 2024 has Q1/Q3/Q4 not Q2). | | bid_id | string | Equals contract_id//'_'//plan_id//'_'//segment_id when populated (e.g. 'H0022_001_0'); NULL for the 8,316 oldest rows (2001-2009 era). Fully derivable from the ID columns — NOT needed for grain. | | orgtype | string | CMS organization-type code. 01 dominates (171K rows, Local CCP/HMO-PPO); others: 08 (PDP/regional), 04, 11 (employer/EGWP), 06, 05, 02. Two-digit string. | | pbp_a_ben_cov | string | Benefit-coverage scope flag from PBP Section A: '1'=most plans (188,955), '2'=4,230, NULL=303. Indicates the package's benefit-coverage category (e.g. standard vs reduced/segment-specific). | | pbp_a_plan_type | string | MA plan-type code (from Section A): 01=HMO (98K), 04=Local PPO (54K), 02=HMOPOS (19K), 20=Regional PPO, 09=PFFS, 31=MSA/other, 18, 48 etc. The most useful plan-design classifier. | | pbp_b7a_coins_pct_mc_max | double | | | pbp_b7a_coins_pct_mc_min | double | | | pbp_b7a_coins_yn | string | | | pbp_b7a_copay_amt_mc_max | double | | | pbp_b7a_copay_amt_mc_min | double | | | pbp_b7a_copay_yn | string | | | pbp_b7a_ded_amt | double | | | pbp_b7a_ded_yn | string | | | pbp_b7a_ia_nuc_coins_pct_max | double | | | pbp_b7a_ia_nuc_coins_pct_min | double | | | pbp_b7a_ia_nuc_coins_yn | string | | | pbp_b7a_ia_nuc_copay_amt_max | double | | | pbp_b7a_ia_nuc_copay_amt_min | double | | | pbp_b7a_ia_nuc_copay_yn | string | | | pbp_b7a_ia_nuc_yn | string | | | pbp_b7a_maxenr_amt | double | | | pbp_b7a_maxenr_per | string | | | pbp_b7a_maxenr_per_d | string | | | pbp_b7a_maxenr_yn | string | | | pbp_b7b_addl_service_other | string | | | pbp_b7b_auth | string | | | pbp_b7b_auth_yn | string | | | pbp_b7b_bendesc_amo | string | | | pbp_b7b_bendesc_amo_other | string | | | pbp_b7b_bendesc_amo_rc | string | | | pbp_b7b_bendesc_ehc | string | | | pbp_b7b_bendesc_lim_other | string | | | pbp_b7b_bendesc_lim_rc | string | | | pbp_b7b_bendesc_num_other | double | | | pbp_b7b_bendesc_num_rc | double | | | pbp_b7b_bendesc_per | string | | | pbp_b7b_bendesc_per_other | string | | | pbp_b7b_bendesc_per_other_d | string | | | pbp_b7b_bendesc_per_rc | string | | | pbp_b7b_bendesc_per_rc_d | string | | | pbp_b7b_bendesc_rc | string | | | pbp_b7b_bendesc_yn | string | | | pbp_b7b_coins_ehc | string | | | pbp_b7b_coins_pct_cc_max | double | | | pbp_b7b_coins_pct_cc_min | double | | | pbp_b7b_coins_pct_mc_max | double | | | pbp_b7b_coins_pct_mc_min | double | | | pbp_b7b_coins_pct_other_max | double | | | pbp_b7b_coins_pct_other_min | double | | | pbp_b7b_coins_pct_rc_max | double | | | pbp_b7b_coins_pct_rc_min | double | | | pbp_b7b_coins_yn | string | | | pbp_b7b_comb_ben_ehc | string | | | pbp_b7b_combined_ben | string | | | pbp_b7b_copay_ehc | string | | | pbp_b7b_copay_mc_amt_max | double | | | pbp_b7b_copay_mc_amt_min | double | | | pbp_b7b_copay_other_amt_max | double | | | pbp_b7b_copay_other_amt_min | double | | | pbp_b7b_copay_rc_amt_max | double | | | pbp_b7b_copay_rc_amt_min | double | | | pbp_b7b_copay_yn | string | | | pbp_b7b_ded_amt | double | | | pbp_b7b_ded_yn | string | | | pbp_b7b_maxenr_amt | double | | | pbp_b7b_maxenr_per | string | | | pbp_b7b_maxenr_per_d | string | | | pbp_b7b_maxenr_yn | string | | | pbp_b7b_maxplan_amt | double | | | pbp_b7b_maxplan_per | string | | | pbp_b7b_maxplan_per_d | string | | | pbp_b7b_maxplan_yn | string | | | pbp_b7b_refer_yn | string | | | pbp_b7c_auth | string | | | pbp_b7c_auth_yn | string | | | pbp_b7c_coins_pct_mc | double | | | pbp_b7c_coins_pct_mc_max | double | | | pbp_b7c_coins_pct_mc_min | double | | | pbp_b7c_coins_yn | string | | | pbp_b7c_copay_mc_amt | double | | | pbp_b7c_copay_mc_amt_max | double | | | pbp_b7c_copay_mc_amt_min | double | | | pbp_b7c_copay_yn | string | | | pbp_b7c_ded_amt | double | | | pbp_b7c_ded_yn | string | | | pbp_b7c_maxenr_amt | double | | | pbp_b7c_maxenr_per | string | | | pbp_b7c_maxenr_per_d | string | | | pbp_b7c_maxenr_yn | string | | | pbp_b7c_mdcr_cov_lmt_yn | string | | | pbp_b7c_mm_addl_service_other1 | string | | | pbp_b7c_mm_auth | string | | | pbp_b7c_mm_auth_yn | string | | | pbp_b7c_mm_coins_pct | double | | | pbp_b7c_mm_coins_pct_max | double | | | pbp_b7c_mm_coins_pct_min | double | | | pbp_b7c_mm_coins_yn | string | | | pbp_b7c_mm_copay_amt | double | | | pbp_b7c_mm_copay_amt_max | double | | | pbp_b7c_mm_copay_amt_min | double | | | pbp_b7c_mm_copay_yn | string | | | pbp_b7c_mm_maxplan_amt | double | | | pbp_b7c_mm_maxplan_per | string | | | pbp_b7c_mm_maxplan_per_d | string | | | pbp_b7c_mm_maxplan_yn | string | | | pbp_b7c_mm_nmc_yn | string | | | pbp_b7c_mm_refer_yn | string | | | pbp_b7c_refer_yn | string | | | pbp_b7d_auth | string | | | pbp_b7d_auth_yn | string | | | pbp_b7d_coins_pct_mc_max | double | | | pbp_b7d_coins_pct_mc_min | double | | | pbp_b7d_coins_yn | string | | | pbp_b7d_copay_amt_mc_max | double | | | pbp_b7d_copay_amt_mc_min | double | | | pbp_b7d_copay_yn | string | | | pbp_b7d_ded_amt | double | | | pbp_b7d_ded_yn | string | | | pbp_b7d_maxenr_amt | double | | | pbp_b7d_maxenr_per | string | | | pbp_b7d_maxenr_per_d | string | | | pbp_b7d_maxenr_yn | string | | | pbp_b7d_refer_yn | string | | | pbp_b7e_auth | string | | | pbp_b7e_auth_yn | string | | | pbp_b7e_coins_ehc | string | | | pbp_b7e_coins_mcgs_maxpct | double | | | pbp_b7e_coins_mcgs_minpct | double | | | pbp_b7e_coins_mcis_maxpct | double | | | pbp_b7e_coins_mcis_minpct | double | | | pbp_b7e_coins_yn | string | | | pbp_b7e_copay_ehc | string | | | pbp_b7e_copay_mcgs_maxamt | double | | | pbp_b7e_copay_mcgs_minamt | double | | | pbp_b7e_copay_mcis_maxamt | double | | | pbp_b7e_copay_mcis_minamt | double | | | pbp_b7e_copay_yn | string | | | pbp_b7e_ded_amt | double | | | pbp_b7e_ded_yn | string | | | pbp_b7e_maxenr_amt | double | | | pbp_b7e_maxenr_per | string | | | pbp_b7e_maxenr_per_d | string | | | pbp_b7e_maxenr_yn | string | | | pbp_b7e_refer_yn | string | | | pbp_b7f_auth | string | | | pbp_b7f_auth_yn | string | | | pbp_b7f_bendecs_yn | string | | | pbp_b7f_bendesc_amo_rf | string | | | pbp_b7f_bendesc_amt_rf | double | | | pbp_b7f_bendesc_lim_rf | string | | | pbp_b7f_bendesc_per_rf | string | | | pbp_b7f_bendesc_per_rf_d | string | | | pbp_b7f_bendesc_rf | string | | | pbp_b7f_bendesc_yn | string | | | pbp_b7f_coins_ehc | string | | | pbp_b7f_coins_pct_mc_max | double | | | pbp_b7f_coins_pct_mc_min | double | | | pbp_b7f_coins_pct_rf_max | double | | | pbp_b7f_coins_pct_rf_min | double | | | pbp_b7f_coins_yn | string | | | pbp_b7f_copay_ehc | string | | | pbp_b7f_copay_mc_amt_max | double | | | pbp_b7f_copay_mc_amt_min | double | | | pbp_b7f_copay_rf_amt_max | double | | | pbp_b7f_copay_rf_amt_min | double | | | pbp_b7f_copay_yn | string | | | pbp_b7f_ded_amt | double | | | pbp_b7f_ded_yn | string | | | pbp_b7f_maxenr_amt | double | | | pbp_b7f_maxenr_per | string | | | pbp_b7f_maxenr_per_d | string | | | pbp_b7f_maxenr_yn | string | | | pbp_b7f_maxplan_amt | double | | | pbp_b7f_maxplan_per | string | | | pbp_b7f_maxplan_per_d | string | | | pbp_b7f_maxplan_yn | string | | | pbp_b7f_refer_yn | string | | | pbp_b7g_auth | string | | | pbp_b7g_auth_yn | string | | | pbp_b7g_coins_max_pct_mc | double | | | pbp_b7g_coins_pct_mc | double | | | pbp_b7g_coins_yn | string | | | pbp_b7g_copay_mc_amt | double | | | pbp_b7g_copay_mc_max_amt | double | | | pbp_b7g_copay_yn | string | | | pbp_b7g_ded_amt | double | | | pbp_b7g_ded_yn | string | | | pbp_b7g_maxenr_amt | double | | | pbp_b7g_maxenr_per | string | | | pbp_b7g_maxenr_per_d | string | | | pbp_b7g_maxenr_yn | string | | | pbp_b7g_refer_yn | string | | | pbp_b7h_auth | string | | | pbp_b7h_auth_yn | string | | | pbp_b7h_coins_ehc | string | | | pbp_b7h_coins_mcgs_maxpct | double | | | pbp_b7h_coins_mcgs_minpct | double | | | pbp_b7h_coins_mcis_maxpct | double | | | pbp_b7h_coins_mcis_minpct | double | | | pbp_b7h_coins_yn | string | | | pbp_b7h_copay_ehc | string | | | pbp_b7h_copay_mcgs_maxamt | double | | | pbp_b7h_copay_mcgs_minamt | double | | | pbp_b7h_copay_mcis_maxamt | double | | | pbp_b7h_copay_mcis_minamt | double | | | pbp_b7h_copay_yn | string | | | pbp_b7h_ded_amt | double | | | pbp_b7h_ded_yn | string | | | pbp_b7h_maxenr_amt | double | | | pbp_b7h_maxenr_per | string | | | pbp_b7h_maxenr_per_d | string | | | pbp_b7h_maxenr_yn | string | | | pbp_b7h_refer_yn | string | | | pbp_b7i_auth | string | | | pbp_b7i_auth_yn | string | | | pbp_b7i_coins_pct_mc | double | | | pbp_b7i_coins_pct_mc_max | double | | | pbp_b7i_coins_pct_mc_min | double | | | pbp_b7i_coins_yn | string | | | pbp_b7i_copay_mc_amt | double | | | pbp_b7i_copay_mc_amt_max | double | | | pbp_b7i_copay_mc_amt_min | double | | | pbp_b7i_copay_yn | string | | | pbp_b7i_ded_amt | double | | | pbp_b7i_ded_yn | string | | | pbp_b7i_maxenr_amt | double | | | pbp_b7i_maxenr_per | string | | | pbp_b7i_maxenr_per_d | string | | | pbp_b7i_maxenr_yn | string | | | pbp_b7i_mdcr_cov_lmt_yn | string | | | pbp_b7i_mm_addl_service_other1 | string | | | pbp_b7i_mm_addl_service_other2 | string | | | pbp_b7i_mm_auth | string | | | pbp_b7i_mm_auth_yn | string | | | pbp_b7i_mm_coins_other1_max | double | | | pbp_b7i_mm_coins_other1_min | double | | | pbp_b7i_mm_coins_other2_max | double | | | pbp_b7i_mm_coins_other2_min | double | | | pbp_b7i_mm_coins_services | string | | | pbp_b7i_mm_coins_yn | string | | | pbp_b7i_mm_copay_other1_max | double | | | pbp_b7i_mm_copay_other1_min | double | | | pbp_b7i_mm_copay_other2_max | double | | | pbp_b7i_mm_copay_other2_min | double | | | pbp_b7i_mm_copay_services | string | | | pbp_b7i_mm_copay_yn | string | | | pbp_b7i_mm_maxplan_amt | double | | | pbp_b7i_mm_maxplan_per | string | | | pbp_b7i_mm_maxplan_per_d | string | | | pbp_b7i_mm_maxplan_yn | string | | | pbp_b7i_mm_nmc_yn | string | | | pbp_b7i_mm_refer_yn | string | | | pbp_b7i_mm_services | string | | | pbp_b7i_refer_yn | string | | | pbp_b7j_auth_yn | string | | | pbp_b7j_bendesc_yn | string | | | pbp_b7j_coins_pct_mc_max | double | | | pbp_b7j_coins_pct_mc_min | double | | | pbp_b7j_coins_yn | string | | | pbp_b7j_copay_mc_amt_max | double | | | pbp_b7j_copay_mc_amt_min | double | | | pbp_b7j_copay_yn | string | | | pbp_b7j_ded_amt | double | | | pbp_b7j_ded_yn | string | | | pbp_b7j_maxenr_amt | double | | | pbp_b7j_maxenr_per | string | | | pbp_b7j_maxenr_per_d | string | | | pbp_b7j_maxenr_yn | string | | | pbp_b7j_mc_bendesc_cats | string | | | pbp_b7j_refer_yn | string | | | pbp_b7k_auth_yn | string | | | pbp_b7k_coins_max_pct_mc | double | | | pbp_b7k_coins_pct_mc | double | | | pbp_b7k_coins_yn | string | | | pbp_b7k_copay_mc_amt | double | | | pbp_b7k_copay_mc_max_amt | double | | | pbp_b7k_copay_yn | string | | | pbp_b7k_ded_amt | double | | | pbp_b7k_ded_yn | string | | | pbp_b7k_maxenr_amt | double | | | pbp_b7k_maxenr_per | string | | | pbp_b7k_maxenr_per_d | string | | | pbp_b7k_maxenr_yn | string | | | pbp_b7k_refer_yn | string | | | observed_period | date | Snapshot/observation date = Jan 1 of report_year. REDUNDANT: equals effective_period_start for 100% of rows. Do not treat as an independent dimension. | | asserted_at | date | Internal ingest/processing date (2026-05-16 or 2026-05-20 only) — when Vlada parsed the file, NOT a CMS data date. Useless for time-series; ignore for analytics. | | effective_period_start | date | First day the benefit year is effective = Jan 1 of report_year (2001-01-01 .. 2026-01-01). The canonical time axis; periodicity is annual by benefit year. | | effective_period_end | date | Last day of the benefit year = Dec 31 of report_year. Always a full calendar year. | | cms_vintage_sequence | int | Integer encoding which quarterly CMS release this snapshot is (1=Q1, 2=Q2, 3=Q3, 4=Q4). Mirrors `quarter`. NOT equal to `version`. | | parse_revision | int | Internal parser revision number (1 or 2) for the extraction run. Provenance only. | | parser_artifact_hash | string | SHA-256 of the parser code/config used. Provenance; identical within a parse run. | | source_url | string | CMS download URL of the source ZIP, e.g. https://www.cms.gov/files/zip/pbp-benefits-2022-quarter-2.zip. Exactly 38 distinct values = the 38 (year,quarter) releases ingested. | | sha256_content_hash | string | FILE-LEVEL hash of the source release, NOT a per-row hash — only 38 distinct values across 193,488 rows (one per release ZIP). Do NOT use it to dedupe or identify rows. | | pbp_b7a_* (copay/coins/ded/maxenr + ia_nuc_*) | | Sub-section B7a = PRIMARY CARE PHYSICIAN services. _copay_amt_mc_min/_max = low/high end of the member copay range for Medicare-covered (_mc) PCP visits; _coins_pct_* = coinsurance %; _ded_* = deductible; _yn flags (1=Yes,2=No) gate whether each applies; ia_nuc_* = a PCP sub-benefit. VALIDATED: 2026 median PCP copay = $0 (range $0-$55). | | pbp_b7b_* (copay/coins/ded + bendesc_* + maxplan_*) | | Sub-section B7b = CHIROPRACTIC services (Medicare-covered + supplemental). Carries the richest extra-benefit description block: _bendesc_* (limits/amounts/periods for supplemental coverage), _coins/_copay split by _mc (Medicare-covered) / _rc (routine-care/supplemental) / _other / _cc, plus _maxplan_* and _maxenr_* benefit-maximum caps. VALIDATED: 2026 copay seen at $20. | | pbp_b7c_* (incl pbp_b7c_mm_*) | | Sub-section B7c = PODIATRY services. Standard copay/coins/ded/maxenr/auth/referral set for Medicare-covered podiatry; the _mm_ variant block = supplemental/routine (mandatory+optional) podiatry with its own copay/coins/maxplan and mdcr_cov_lmt_yn (Medicare-coverage-limit flag). | | pbp_b7d_* (copay/coins/ded/maxenr/auth/refer) | | Sub-section B7d = OTHER HEALTH CARE PROFESSIONAL / SPECIALIST services. _copay_amt_mc_min/_max = specialist visit copay range. VALIDATED: 2026 median specialist copay ~$35 (vs $0 PCP) — confirms b7a=PCP, b7d=specialist. | | pbp_b7e_* (coins/copay split mcis/mcgs, ded, maxenr) | | Sub-section B7e = PHYSICAL/OCCUPATIONAL THERAPY. Cost-share is split into mcis (Medicare-covered in-area/in-network) vs mcgs (gap/out-of-area) min/max amounts and pcts — e.g. copay_mcis_maxamt. VALIDATED: 2026 median PT copay ~$27. | | pbp_b7f_* (copay/coins split mc/rf, bendesc_*, maxplan_*) | | Sub-section B7f = PSYCHIATRIC services. Cost-share split by _mc (Medicare-covered) vs _rf (referral/supplemental); _bendesc_* describes supplemental limits; _maxplan_*/_maxenr_* = benefit caps; auth/referral flags. | | pbp_b7g_* (coins_pct_mc + coins_max_pct_mc, copay_mc_amt + copay_mc_max_amt, ded, maxenr) | | Sub-section B7g = PSYCHOLOGICAL / MENTAL HEALTH SPECIALTY services (point cost-share style: single _copay_mc_amt with a _copay_mc_max_amt ceiling rather than a min/max range pair). | | pbp_b7h_* (coins/copay split mcis/mcgs, ded, maxenr) | | Sub-section B7h = OUTPATIENT SUBSTANCE-ABUSE / partial-hospitalization-style professional services, cost-share split mcis (in-network) vs mcgs (gap) like B7e. | | pbp_b7i_* (copay/coins/ded/maxenr + pbp_b7i_mm_*) | | Sub-section B7i = INDIVIDUAL psychiatric/mental-health (Medicare-covered) PLUS the _mm_ block for supplemental services with up to two 'other' service tiers (coins_other1/other2, copay_other1/other2, services labels) and mdcr_cov_lmt_yn. VALIDATED: 2026 median copay ~$32. | | pbp_b7j_* (copay/coins/ded/maxenr + pbp_b7j_mc_bendesc_cats) | | Sub-section B7j = a COMBINED / grouped professional-services cost-share. pbp_b7j_mc_bendesc_cats is a SEMICOLON-DELIMITED packed list of the other PBP benefit-category codes this grouping spans (e.g. '4b;7a;7d;7e1;7e2;7h1;7h2;9c1;9c2;'). Not atomic — must be parsed to know which services share this cost-share/limit. | | pbp_b7k_* (coins_pct_mc + coins_max_pct_mc, copay_mc_amt + copay_mc_max_amt, ded, maxenr) | | Sub-section B7k = an ADDITIONAL professional-services group (point cost-share with a max ceiling, same shape as B7g). auth/referral/deductible/enrollee-max fields included. | | *_yn (every sub-section) | | Yes/No applicability flag, encoded '1'=Yes, '2'=No, NULL=not applicable/not collected. Gates whether the adjacent copay/coins/ded/auth/referral applies. A NULL on a _yn is meaningful: the benefit detail was not reported for that sub-section/year (older years null many sub-sections that didn't exist yet). | | *_amt / *_min / *_max (doubles) | | Dollar amounts (copay, deductible, benefit max) and the low/high bounds of a cost-share range. NULL when the corresponding _yn is No/null. A 0.0 is a real $0 cost-share (common for PCP) — distinct from NULL (not offered). | | *_pct / *_minpct / *_maxpct (doubles) | | Coinsurance percentages (member share). Paired min/max give the % range. | | *_per / *_per_d / *_maxenr_per[_d] | | Period code and its decoded text for limits/maximums (e.g. per-visit, per-year). _per = code, _per_d = human-readable decode. _maxenr_* = per-enrollee benefit maximum; _maxplan_* = per-plan benefit maximum. | | *_auth / *_auth_yn / *_refer_yn | | Utilization-management flags: _auth_yn (1=prior authorization required), _refer_yn (1=referral required), _auth = free-text/coded auth detail. Per sub-section. | | *_ehc (coins_ehc/copay_ehc/bendesc_ehc) | | Enhanced/equivalent-health-coverage code strings (e.g. '010','11','01') describing the cost-share structure variant; coded values from the PBP, not free numbers. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b7_health_prof WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b7_health_prof")` first. # MA pbp section b8 clin diag ther `medicare_silver.pbp_section_b8_clin_diag_ther` · Medicare Advantage, Part D, Medicaid · status partial Section B8: Clinical/diagnostic/therapeutic services cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan benefit package per CMS quarterly PBP release: i.e. one row per contract_id x plan_id x segment_id x report_year x quarter. Verified: COUNT(DISTINCT contract_id|plan_id|segment_id|report_year|quarter) = 201,488 = total row_count. The same plan-year is RE-FILED in multiple quarterly snapshots (Q1-Q4) for 2018+, so a single benefit year can appear in up to 4 rows; pre-2018 years have only one (Q1) snapshot. Collapsing to the latest quarter per plan-year yields 114,175 distinct plan-years. **How to use it.** Compare what Medicare Advantage enrollees pay out of pocket for outpatient diagnostic and radiology services across plans/insurers/years. Example: to get the current (latest-snapshot) member cost share for advanced diagnostic radiology (MRI/CT) per plan for 2026, take the row with the max quarter per plan-year and read pbp_b8b_copay_amt_drs / pbp_b8b_coins_pct_drs: WITH latest AS (SELECT contract_id,plan_id,segment_id,report_year,MAX(quarter) mq FROM medicare_silver.pbp_section_b8_clin_diag_ther WHERE report_year=2026 GROUP BY 1,2,3,4) SELECT t.contract_id,t.plan_id,t.pbp_b8b_copay_amt_drs,t.pbp_b8b_coins_pct_drs FROM medicare_silver.pbp_section_b8_clin_diag_ther t JOIN latest l ON t.contract_id=l.contract_id AND t.plan_id=l.plan_id AND t.segment_id=l.segment_id AND t.report_year=l.report_year AND t.quarter=l.mq. Answers: how MA diagnostic-imaging cost-sharing is distributed and how it differs by plan/carrier (DRS copay median ~$4, B-8b therapeutic-radiology coinsurance median 20%). **Traps.** - NO is_current / latest flag exists. The same plan-year is re-filed across quarterly snapshots, so a naive COUNT(*) or GROUP BY contract/plan/segment/report_year SUMMED over rows double-counts: 75,577 plan-years appear in 1 quarter, 7,353 in 2, 13,775 in 3, and 17,470 in ALL 4 quarters. To get one current row per plan-year, select MAX(quarter) per (contract_id,plan_id,segment_id,report_year) — that collapses 201,488 raw rows to 114,175. - quarter is part of the real key, not a throwaway. The minimal verified grain is contract_id x plan_id x segment_id x report_year x quarter (= 201,488). The profiler reported a 10-column SUPERSET that also listed bid_id, pbp_a_plan_type, and the two pbp_b8*_maxplan_yesno_pos columns — those are functionally dependent extras, not part of the key. version is likewise NOT part of the key. - Quarters available per year are irregular and incomplete: 2001-2017 are Q1-only (annual), 2018/2019/2023 have all four, but 2020=Q1/Q2/Q4, 2024=Q1/Q3/Q4, and 2021/2025/2026=Q1-only. Do not assume Q4 is the canonical snapshot — always take MAX(quarter) actually present for that year. - Many '*_auth', '*_ehc', and '*_cost_share' string columns are PACKED multi-character flag strings (e.g. auth='01000', coins_ehc='110'), where each character position is a separate yes/no flag for a service sub-type. They are NOT scalar values and must be decoded by position against the CMS PBP B-8 data dictionary. The simple '_yn' companions use CMS coding '1'=Yes, '2'=No (NOT 1/0), with NULL meaning not-applicable for that plan-type/year. - bid_id is NULL for exactly the 8,316 oldest rows (report_year 2001-2006) because that field predates 2007; for 2007+ it is just contract_id||'_'||plan_id||'_'||segment_id, so it is derivable and not an independent identifier. Relatedly, version=0 marks that same pre-2007 vintage. - Bitemporal columns are lineage, not benefit content, and do not affect the grain: observed_period/effective_period_start just restate Jan 1 of report_year; asserted_at/cms_vintage_sequence/parse_revision/source_url/sha256_content_hash describe Vlada's load (two batches, 2026-05-16 and 2026-05-20) and each plan-year-quarter is asserted exactly once. Duplicate legacy columns also exist (e.g. pbp_b_8a_ded_amt with an extra underscore vs pbp_b8a_ded_amt) and are almost entirely NULL — prefer the itemized dmc/lab/drs/tmc amount and coins_pct fields for real cost-share values. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract number (e.g. H0022, H0028). First key component; one insurer/org holds many contracts. Always populated. | | plan_id | string | Plan number within the contract (e.g. '001','004'), zero-padded 3-char string. Second key component. | | segment_id | string | Plan segment within the plan (service-area segment), zero-padded ('0','1','2'); 27 distinct values. Third key component — a plan can have multiple priced segments. Defaults to '0' when not segmented. | | version | double | CMS PBP submission/resubmission version number (0-27, right-skewed; most rows 1-6). Functionally dependent on the grain (adding it does not change the distinct count). version=0 corresponds exactly to the 2001-2006 vintage where it was not populated. NOT a snapshot/current flag. | | report_year | double | Benefit/contract year the row describes (double, 2001-2026). Fourth key component. Equals the year of effective_period_start/observed_period. | | quarter | double | CMS release quarter within the report_year (1-4). Fifth and most important key component: it is the SNAPSHOT dimension — the same plan-year is re-filed each quarter, so quarter distinguishes otherwise-identical plan rows. Not all quarters exist every year. | | bid_id | string | CMS bid identifier; equals contract_id//'_'//plan_id//'_'//segment_id for all 2007+ rows. NULL for the 8,316 oldest rows (2001-2006), which predate this field. Derivable, not an independent key. | | orgtype | string | CMS organization-type code (string, '01'-'14'). '01' dominates (177,737 rows, Local CCP/HMO); others e.g. '08','04','11','06','05'. Plan-level attribute, constant within a plan-year. | | pbp_a_ben_cov | string | Part A benefit coverage indicator carried from PBP Section A. '1'=plan provides Part A benefits (196,773), '2'=does not / Part B-only (4,373), NULL (342). Context flag, not B-8 specific. | | pbp_a_plan_type | string | CMS plan-type code from Section A (string). '01'=HMO dominant (101,510), '04'=Local PPO (55,909), '02', '20'=PDP-like, etc. Describes the plan, not a B-8 benefit. | | pbp_b8a_auth | string | | | pbp_b8a_auth_pos | string | | | pbp_b8a_auth_yn | string | | | pbp_b8a_coins_cov_cmc | string | | | pbp_b8a_coins_cov_dmc | string | | | pbp_b8a_coins_cov_lab | string | | | pbp_b8a_coins_cov_pos | string | | | pbp_b8a_coins_cov_tmc | string | | | pbp_b8a_coins_ehc | string | | | pbp_b8a_coins_pct_cmc | double | | | pbp_b8a_coins_pct_cmc_max | double | | | pbp_b8a_coins_pct_dmc | double | | | pbp_b8a_coins_pct_dmc_max | double | | | pbp_b8a_coins_pct_lab | double | | | pbp_b8a_coins_pct_lab_max | double | | | pbp_b8a_coins_pct_pos | double | | | pbp_b8a_coins_pct_tmc | double | | | pbp_b8a_coins_pct_tmc_max | double | | | pbp_b8a_coins_pctmax_pos | double | | | pbp_b8a_coins_yesno | string | | | pbp_b8a_coins_yesno_pos | string | | | pbp_b8a_coins_yn | string | | | pbp_b8a_copay_amt_pos | double | | | pbp_b8a_copay_amtmax_pos | double | | | pbp_b8a_copay_ehc | string | | | pbp_b8a_copay_max_cmc_amt | double | | | pbp_b8a_copay_max_dmc_amt | double | | | pbp_b8a_copay_max_tmc_amt | double | | | pbp_b8a_copay_max_yn | string | | | pbp_b8a_copay_min_cmc_amt | double | | | pbp_b8a_copay_min_dmc_amt | double | | | pbp_b8a_copay_min_tmc_amt | double | | | pbp_b8a_copay_yesno | string | | | pbp_b8a_copay_yesno_pos | string | | | pbp_b8a_copay_yn | string | | | pbp_b8a_cost_share | string | | | pbp_b8a_cost_share_coins_max | double | | | pbp_b8a_cost_share_coins_min | double | | | pbp_b8a_cost_share_coins_yn | string | | | pbp_b8a_cost_share_copay_max | double | | | pbp_b8a_cost_share_copay_min | double | | | pbp_b8a_cost_share_copay_yn | string | | | pbp_b8a_cost_share_yesno | string | | | pbp_b8a_cost_share_yn | string | | | pbp_b8a_ded_amt | double | | | pbp_b8a_ded_amt_pos | double | | | pbp_b8a_ded_yesno_pos | string | | | pbp_b8a_ded_yn | string | | | pbp_b8a_lab_copay_amt | double | | | pbp_b8a_lab_copay_amt_max | double | | | pbp_b8a_maxenr_amt | double | | | pbp_b8a_maxenr_amt_pos | double | | | pbp_b8a_maxenr_per | string | | | pbp_b8a_maxenr_per_d | string | | | pbp_b8a_maxenr_yesno | string | | | pbp_b8a_maxenr_yn | string | | | pbp_b8a_maxenr_yn_pos | string | | | pbp_b8a_maxplan_yesno_pos | string | | | pbp_b8a_maxpln_amt_pos | double | | | pbp_b8a_maxpln_cov_pos | string | | | pbp_b8a_maxpln_per_pos | string | | | pbp_b8a_refer_yn | string | | | pbp_b8a_sep_cost_yn | string | | | pbp_b8b_auth | string | | | pbp_b8b_auth_pos | string | | | pbp_b8b_auth_yn | string | | | pbp_b8b_coins_cov_mc | string | | | pbp_b8b_coins_cov_pos | string | | | pbp_b8b_coins_cov_tmc | string | | | pbp_b8b_coins_ehc | string | | | pbp_b8b_coins_pct_cmc | double | | | pbp_b8b_coins_pct_cmc_max | double | | | pbp_b8b_coins_pct_drs | double | | | pbp_b8b_coins_pct_drs_cov | string | | | pbp_b8b_coins_pct_drs_max | double | | | pbp_b8b_coins_pct_pos | double | | | pbp_b8b_coins_pct_tmc | double | | | pbp_b8b_coins_pct_tmc_max | double | | | pbp_b8b_coins_pctmax_pos | double | | | pbp_b8b_coins_yesno | string | | | pbp_b8b_coins_yesno_pos | string | | | pbp_b8b_coins_yn | string | | | pbp_b8b_copay_amt_drs | double | | | pbp_b8b_copay_amt_drs_max | double | | | pbp_b8b_copay_amt_pos | double | | | pbp_b8b_copay_amt_tmc | double | | | pbp_b8b_copay_amt_tmc_max | double | | | pbp_b8b_copay_amtmax_pos | double | | | pbp_b8b_copay_ehc | string | | | pbp_b8b_copay_max_yn | string | | | pbp_b8b_copay_mc_amt | double | | | pbp_b8b_copay_mc_amt_max | double | | | pbp_b8b_copay_yesno | string | | | pbp_b8b_copay_yesno_pos | string | | | pbp_b8b_copay_yn | string | | | pbp_b8b_cost_share | string | | | pbp_b8b_cost_share_coins_max | double | | | pbp_b8b_cost_share_coins_min | double | | | pbp_b8b_cost_share_coins_yn | string | | | pbp_b8b_cost_share_copay_max | double | | | pbp_b8b_cost_share_copay_min | double | | | pbp_b8b_cost_share_copay_yn | string | | | pbp_b8b_ded_amt | double | | | pbp_b8b_ded_amt_pos | double | | | pbp_b8b_ded_yesno | string | | | pbp_b8b_ded_yesno_pos | string | | | pbp_b8b_ded_yn | string | | | pbp_b8b_maxenr_amt | double | | | pbp_b8b_maxenr_amt_pos | double | | | pbp_b8b_maxenr_per | string | | | pbp_b8b_maxenr_per_d | string | | | pbp_b8b_maxenr_yesno | string | | | pbp_b8b_maxenr_yn | string | | | pbp_b8b_maxenr_yn_pos | string | | | pbp_b8b_maxplan_yesno_pos | string | | | pbp_b8b_maxpln_amt_pos | double | | | pbp_b8b_maxpln_cov_pos | string | | | pbp_b8b_maxpln_per_pos | string | | | pbp_b8b_refer_yn | string | | | pbp_b8b_sep_cost_yn | string | | | pbp_b_8a_ded_amt | double | | | pbp_b_8a_ded_yesno | string | | | observed_period | date | Vlada bitemporal field: the period the data is observed-as-of. Always Jan 1 of report_year (e.g. 2018-01-01). Equals effective_period_start here; redundant with report_year. | | asserted_at | date | Vlada ingest/assertion date (when this record was loaded into the substrate): two batches observed, 2026-05-16 (100,054 rows) and 2026-05-20 (101,434 rows). Does NOT split the grain — each plan-year-quarter is asserted in exactly one batch. Use it as load lineage, not a benefit attribute. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Which CMS source-file vintage the row came from (int 1-4). Provenance/lineage, correlates with asserted_at batch (batch 1 = vintage 1; batch 2 = vintages 2-4). | | parse_revision | int | Parser version that produced the row (int, observed 1-2). Lineage only — despite matching an 'is_*'/version-like name search it is NOT a current-record flag. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row. Pure provenance. | | source_url | string | CMS download URL of the originating PBP PUF zip (e.g. .../pbp-pufs/pbp-benefits-2018-q2.zip). Encodes the year+quarter of the source file; ~24+16 distinct files across the two batches. Provenance. | | sha256_content_hash | string | SHA-256 of the source file content. Provenance / dedup integrity, constant within a source file. | | pbp_b8a_auth / pbp_b8a_auth_pos / pbp_b8b_auth / pbp_b8b_auth_pos | | PACKED prior-authorization flag strings (e.g. '01000','00111') — each character position is a yes/no flag for whether prior auth is required for a specific service sub-type within the section. NOT a single scalar; must be decoded position-by-position against the CMS PBP B-8 layout. '_pos' variants are the point-of-service / OON counterpart. | | pbp_b8a_auth_yn / pbp_b8b_auth_yn | | Simple yes/no roll-up: '1'=Yes (auth required for some service), '2'=No, NULL=not asked for that plan-type/year. (b8a_auth_yn: 121,715 Yes / 18,014 No / 61,759 NULL.) | | pbp_b8a_refer_yn / pbp_b8b_refer_yn | | Whether a referral is required for the section's services. '1'=Yes, '2'=No (CMS 1/2 coding). | | pbp_b8a_coins_yn / pbp_b8a_copay_yn / pbp_b8a_ded_yn (and pbp_b8b_* equivalents) | | Does the plan charge coinsurance / copay / deductible for this section. CMS coding '1'=Yes, '2'=No, NULL=not applicable. coins_yn and copay_yn are near-mirror-images (a plan usually picks copay OR coinsurance). | | pbp_b8a_*_ehc / pbp_b8b_*_ehc (e.g. pbp_b8a_coins_ehc, pbp_b8b_copay_ehc) | | PACKED 'enrollee health-care' indicator strings: b8a = 2 chars (e.g. '11','01','10'), b8b = 3 chars (e.g. '111','110','011'). Each position is a 1/0 flag for whether the cost-share applies to a specific service sub-type (lab / diagnostic / radiology component). Decode by position, do not read as a number. | | pbp_b8a_lab_copay_amt / _max | | Member copay dollar amount (and its max) for LAB tests under B-8a. Real $: min 0, observed up to tens of dollars. ~96K populated. _max is the upper bound when the plan files a range. | | pbp_b8a_copay_min_dmc_amt / pbp_b8a_copay_max_dmc_amt | | Min/max member copay $ for DIAGNOSTIC tests/procedures (dmc) under B-8a. ~99K populated; range $0-$999, median max ~$37. The headline B-8a diagnostic copay. | | pbp_b8a_copay_min_cmc_amt / _max_cmc_amt, pbp_b8a_copay_min_tmc_amt / _max_tmc_amt | | Min/max copay $ for clinical (cmc, rare ~1K) and therapeutic-monitoring (tmc, ~7K) sub-services under B-8a. Sparsely populated — most plans don't itemize these. | | pbp_b8a_coins_pct_dmc / _lab / _cmc / _tmc (and *_max, *_pct_pos) | | Coinsurance PERCENTAGES the member pays for the dmc/lab/cmc/tmc sub-services under B-8a (double, 0-50, commonly 20). '_pos' = point-of-service/OON percentage. NULL when the plan charges copay instead. | | pbp_b8b_copay_amt_drs / _drs_max, pbp_b8b_coins_pct_drs / _drs_max | | Member cost share for DRS = advanced Diagnostic Radiology Services (MRI/CT/PET) under B-8b. copay_amt_drs ~99K populated, $0-$450 (median ~$4 because many plans use coinsurance); coins_pct_drs is the percentage variant. THE advanced-imaging member-cost field. | | pbp_b8b_copay_mc_amt / _max, pbp_b8b_coins_pct_cmc / _max | | Cost share for general outpatient diagnostic radiology / medical radiology (mc/cmc) under B-8b. copay_mc_amt is the most-populated B-8b amount (~108K). | | pbp_b8b_copay_amt_tmc / _max, pbp_b8b_coins_pct_tmc / _max | | Cost share for THERAPEUTIC radiology (tmc) under B-8b. coins_pct_tmc median 20% (range 0-50%); ~55K rows populated. Therapeutic (treatment) vs diagnostic radiology distinction lives here. | | pbp_b8a_ded_amt / pbp_b8b_ded_amt / pbp_b_8a_ded_amt (and *_yn, *_yesno, *_pos) | | Service-specific deductible dollar amount for the section and its yes/no presence flag. Mostly NULL (most plans have no service-specific B-8 deductible). NOTE pbp_b_8a_ded_amt / pbp_b_8a_ded_yesno (extra underscore) are legacy duplicate columns from an older CMS layout — nearly always NULL. | | pbp_b8a_maxenr_amt / _per / _per_d / _yn (and pbp_b8b_* equivalents) | | Service-specific MAXIMUM enrollee out-of-pocket: amount, period code (_per), and free-text period DESCRIPTION (_per_d, e.g. 'The maximum enrollee out-of-pocket cost share is per day.' with inconsistent wording across plans), plus yes/no flag. Sparsely populated. | | pbp_b8a_maxpln_amt_pos / _cov_pos / _per_pos / pbp_b8a_maxplan_yesno_pos (and b8b) | | Plan-level maximum-cost and coverage for the point-of-service / out-of-network side of the section. The two maxplan_yesno_pos columns appear in the profiler's reported key but are NOT needed for uniqueness — they are functionally dependent attributes, mostly NULL. | | pbp_b8a_cost_share* / pbp_b8b_cost_share* (cost_share, _coins_min/_max/_yn, _copay_min/_max/_yn, _yesno, _yn) | | Generic combined cost-share min/max and yes/no fields (a later CMS layout's roll-up of the copay/coins detail). Largely NULL in this table — the itemized dmc/lab/drs/tmc fields above carry the real values. | | pbp_b8a_sep_cost_yn / pbp_b8b_sep_cost_yn | | Whether a SEPARATE cost share applies (vs bundled into another benefit). CMS yes/no, mostly NULL. | | effective_period_start / effective_period_end | | The benefit year window the row's terms apply to: start = Jan 1 of report_year, end = Dec 31 of report_year. effective_period_start is the table's primary time column (2001-01-01 to 2026-01-01, annual). | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b8_clin_diag_ther WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b8_clin_diag_ther")` first. # MA pbp section b9 outpat hosp `medicare_silver.pbp_section_b9_outpat_hosp` · Medicare Advantage, Part D, Medicaid · status partial Section B9: Outpatient hospital cost-share. Coverage: All years. **Grain.** One row per Medicare Advantage plan segment per CMS quarterly PBP snapshot — i.e. one row per (contract_id, plan_id, segment_id, report_year, quarter). Verified: that 5-column key yields 196,319 distinct combinations = the exact row count. It carries that plan's member cost-sharing (copays, coinsurance, deductibles, OOP caps, prior-auth/referral flags) for outpatient hospital services (PBP Section B9, sub-sections a/b/c/d) as filed in that quarter's release. **How to use it.** Look up a Medicare Advantage plan's outpatient-hospital member cost-sharing for a given year, using the latest snapshot of that year. Example: SELECT contract_id, plan_id, segment_id, pbp_b9a_copay_ohs_amt_min, pbp_b9a_copay_ohs_amt_max, pbp_b9a_coins_pct_mc FROM medicare_silver.pbp_section_b9_outpat_hosp WHERE report_year=2026 AND quarter=1 AND contract_id='H0028' AND plan_id='004' — answers 'what does this MA plan charge members (copay range / coinsurance %) for outpatient hospital services in 2026?'. To compare across all plans, add the quarter filter to avoid double-counting the same plan-year's multiple quarterly releases. **Traps.** - GRAIN TRAP: the profiler reports a 12-column 'verified unique' superset that includes pbp_b9_maxplan_yesno_pos, pbp_b9b/c/d_maxplan_yesno_pos. Those four columns (and many *_pos / *_yesno / base pbp_b9_* columns) are 100% NULL, so they add zero distinctness. The TRUE minimal grain is just contract_id × plan_id × segment_id × report_year × quarter = 196,319 distinct = the full row count. (effective_period_start can substitute for report_year, and bid_id for contract||plan||segment, but neither adds a dimension.) - NO is_current / no dedup flag. The table is an append of EVERY CMS quarterly PBP release across 21 plan years. The same plan-year appears in up to 4 quarterly snapshots and the benefit VALUES can differ between them (carriers re-file: version increments, copays change). To get 'the' benefits for a plan year you MUST pick one snapshot — filter to a single (report_year, quarter), normally the latest quarter present for that year (check the ry/quarter inventory: e.g. 2021/2024 have no Q2, 2020 has no Q3, 2025/2026 are Q1-only). - quarter is a SNAPSHOT/vintage axis, not an effective-date axis. All quarters of a report_year share effective_period 2026-01-01..12-31 (etc.). Do not read quarter as 'benefits effective in Q2'; read it as 'the Q2 re-release of that plan year's filing'. cms_vintage_sequence is a messy proxy for it and is NOT 1:1 with quarter — trust (report_year, quarter). - Mostly-NULL columns carry meaning, three ways: (1) ~9,400 rows have ALL B9 sub-section yn NULL = the plan did not file B9 cost-sharing that snapshot (342 of those have pbp_a_ben_cov NULL = no benefit record at all). (2) Within a filed row, a NULL copay/coins amount means that cost-share type doesn't apply (read the matching _yn = '2'/No first). (3) _yn codes are CMS 1=Yes / 2=No (NOT 0/1) — a NULL _yn is 'not applicable', distinct from '2'=explicitly No. - Sub-sections a/b/c/d are NOT independent benefits you pick one of — virtually every plan files all four (B9a outpatient-hospital with obs/ohs split, B9b flat-copay tier, B9c tiered group/individual sessions via mcgs/mcis intervals, B9d plan-described benefit). Within B9a, _obs (Observation Services) and _ohs (Outpatient Hospital Services) are SEPARATE cost-shares (different copays) — don't collapse them. This is plan COST-SHARING (what the member pays), not a provider payment/price benchmark; for actual Medicare facility prices use medicare_silver.medicare_opps_rates. - version is the CMS bid version (0-27), not a vintage/dedup key — never use it to dedup. Likewise asserted_at is Vlada's load date (2026-05-16/20 here), not the CMS publish date; cms_vintage_sequence/parse_revision/parser_artifact_hash/sha256_content_hash/source_url are all ingestion provenance, not benefit content. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (e.g. 'H0022'). Prefix encodes plan org: H = MA/MA-PD local (1,820 contracts, 98% of rows), R = regional PPO (37), E = employer/EGWP (2). Part of the grain. 1,859 distinct overall. | | plan_id | string | Plan number within the contract (e.g. '001', '004'), zero-padded 3-char string. NOT unique on its own (656 distinct values, reused across contracts). Part of the grain. | | segment_id | string | Service-area segment within a plan (mostly '0'; 27 distinct). Splits a plan into geographic segments that can carry different cost-sharing. Part of the grain — same contract+plan can have multiple segments. | | version | double | CMS PBP bid-submission version number for that plan (double, 0-27; most rows 1-6). Increments as the carrier re-files the bid; can change between quarterly snapshots of the SAME plan year (e.g. a 2023 plan shows up to 3 versions across its 4 quarterly releases). It is provenance/refile-tracking, NOT a row-dedup or grain field. | | report_year | double | Plan/contract year the benefits apply to (double, 2006-2026). Equals year(effective_period_start) exactly. Part of the minimal grain (the snapshot year dimension). | | quarter | double | CMS quarterly release within report_year (double: 1,2,3,4). Part of the minimal grain. Early years (2006-2017) have ONLY quarter 1 (annual release); 2018+ have multiple quarters as CMS began re-releasing PBP data quarterly. This is a snapshot/vintage axis, not an effective-date axis — all quarters of a year share the same effective_period. | | bid_id | string | Derived composite = contract_id // '_' // plan_id // '_' // segment_id (verified: 0 rows deviate). 23,191 distinct. Redundant convenience key, NOT independent — do not treat as an extra grain dimension. | | orgtype | string | CMS organization type code (string): '01' = local CCP/HMO-PPO (88% of rows), '08','04','11','06','05','02','14','03'. Indicates the MA organization structure. | | pbp_a_ben_cov | string | Section-level benefit-coverage flag carried from PBP Section A: '1' = plan offers/records this benefit area (191,967 rows), '2' = does not (4,010), NULL = no Part A/B record at all (342). Caveat: not a clean gate — some '2' rows still have B9a cost-share populated. | | pbp_a_plan_type | string | CMS plan-type code (string, ~23 values): '01' (HMO, 50%), '04' (local PPO, 28%), '02' (HMO-POS), '20' (MSA/PFFS-ish), '09' (regional PPO), '31','18','48' etc. Describes the MA product type. | | pbp_b9a_auth | string | | | pbp_b9a_auth_obs_yn | string | | | pbp_b9a_auth_ohs_yn | string | | | pbp_b9a_auth_yn | string | | | pbp_b9a_coins_cov_mc | string | | | pbp_b9a_coins_ehc | string | | | pbp_b9a_coins_obs_pct_max | double | | | pbp_b9a_coins_obs_pct_min | double | | | pbp_b9a_coins_ohs_pct_max | double | | | pbp_b9a_coins_ohs_pct_min | double | | | pbp_b9a_coins_pct_mc | double | | | pbp_b9a_coins_pct_mcmax | double | | | pbp_b9a_coins_yn | string | | | pbp_b9a_copay_ehc | string | | | pbp_b9a_copay_mc_amt | double | | | pbp_b9a_copay_mc_amt_max | double | | | pbp_b9a_copay_obs_amt_max | double | | | pbp_b9a_copay_obs_amt_min | double | | | pbp_b9a_copay_obs_per | string | | | pbp_b9a_copay_obs_per_d | string | | | pbp_b9a_copay_ohs_amt_max | double | | | pbp_b9a_copay_ohs_amt_min | double | | | pbp_b9a_copay_yn | string | | | pbp_b9a_ded_amt | double | | | pbp_b9a_ded_ehc | string | | | pbp_b9a_ded_obs_amt | double | | | pbp_b9a_ded_ohs_amt | double | | | pbp_b9a_ded_yn | string | | | pbp_b9a_maxenr_amt | double | | | pbp_b9a_maxenr_ehc | string | | | pbp_b9a_maxenr_obs_amt | double | | | pbp_b9a_maxenr_obs_per | string | | | pbp_b9a_maxenr_obs_per_d | string | | | pbp_b9a_maxenr_ohs_amt | double | | | pbp_b9a_maxenr_ohs_per | string | | | pbp_b9a_maxenr_ohs_per_d | string | | | pbp_b9a_maxenr_per | string | | | pbp_b9a_maxenr_yn | string | | | pbp_b9a_refer_obs_yn | string | | | pbp_b9a_refer_ohs_yn | string | | | pbp_b9a_refer_yn | string | | | pbp_b9a_sep_cost_yn | string | | | pbp_b9b_auth | string | | | pbp_b9b_auth_yn | string | | | pbp_b9b_coins_cov_mc | string | | | pbp_b9b_coins_pct_mc | double | | | pbp_b9b_coins_pct_mcmax | double | | | pbp_b9b_coins_yn | string | | | pbp_b9b_copay_mc_amt | double | | | pbp_b9b_copay_mc_amt_max | double | | | pbp_b9b_copay_yn | string | | | pbp_b9b_ded_amt | double | | | pbp_b9b_ded_yn | string | | | pbp_b9b_maxenr_amt | double | | | pbp_b9b_maxenr_per | string | | | pbp_b9b_maxenr_per_d | string | | | pbp_b9b_maxenr_type | string | | | pbp_b9b_maxenr_yn | string | | | pbp_b9b_refer_yn | string | | | pbp_b9b_sep_cost_yn | string | | | pbp_b9c_auth | string | | | pbp_b9c_auth_yn | string | | | pbp_b9c_coins_ehc | string | | | pbp_b9c_coins_mcgs_bgns_ntrvl1 | double | | | pbp_b9c_coins_mcgs_bgns_ntrvl2 | double | | | pbp_b9c_coins_mcgs_bgns_ntrvl3 | double | | | pbp_b9c_coins_mcgs_cov | string | | | pbp_b9c_coins_mcgs_ends_ntrvl1 | double | | | pbp_b9c_coins_mcgs_ends_ntrvl2 | double | | | pbp_b9c_coins_mcgs_ends_ntrvl3 | double | | | pbp_b9c_coins_mcgs_intrvl_num | string | | | pbp_b9c_coins_mcgs_maxpct | double | | | pbp_b9c_coins_mcgs_minpct | double | | | pbp_b9c_coins_mcgs_pct_intrvl1 | double | | | pbp_b9c_coins_mcgs_pct_intrvl2 | double | | | pbp_b9c_coins_mcgs_pct_intrvl3 | double | | | pbp_b9c_coins_mcis_bgns_ntrvl1 | double | | | pbp_b9c_coins_mcis_bgns_ntrvl2 | double | | | pbp_b9c_coins_mcis_bgns_ntrvl3 | double | | | pbp_b9c_coins_mcis_cov | string | | | pbp_b9c_coins_mcis_ends_ntrvl1 | double | | | pbp_b9c_coins_mcis_ends_ntrvl2 | double | | | pbp_b9c_coins_mcis_ends_ntrvl3 | double | | | pbp_b9c_coins_mcis_intrvl_num | string | | | pbp_b9c_coins_mcis_maxpct | double | | | pbp_b9c_coins_mcis_minpct | double | | | pbp_b9c_coins_mcis_pct_intrvl1 | double | | | pbp_b9c_coins_mcis_pct_intrvl2 | double | | | pbp_b9c_coins_mcis_pct_intrvl3 | double | | | pbp_b9c_coins_yn | string | | | pbp_b9c_copay_ehc | string | | | pbp_b9c_copay_mcgs_amt_intrvl1 | double | | | pbp_b9c_copay_mcgs_amt_intrvl2 | double | | | pbp_b9c_copay_mcgs_amt_intrvl3 | double | | | pbp_b9c_copay_mcgs_bgns_ntrvl1 | double | | | pbp_b9c_copay_mcgs_bgns_ntrvl2 | double | | | pbp_b9c_copay_mcgs_bgns_ntrvl3 | double | | | pbp_b9c_copay_mcgs_ends_ntrvl1 | double | | | pbp_b9c_copay_mcgs_ends_ntrvl2 | double | | | pbp_b9c_copay_mcgs_ends_ntrvl3 | double | | | pbp_b9c_copay_mcgs_intrvl_num | string | | | pbp_b9c_copay_mcgs_maxamt | double | | | pbp_b9c_copay_mcgs_minamt | double | | | pbp_b9c_copay_mcis_amt_intrvl1 | double | | | pbp_b9c_copay_mcis_amt_intrvl2 | double | | | pbp_b9c_copay_mcis_amt_intrvl3 | double | | | pbp_b9c_copay_mcis_bgns_ntrvl1 | double | | | pbp_b9c_copay_mcis_bgns_ntrvl2 | double | | | pbp_b9c_copay_mcis_bgns_ntrvl3 | double | | | pbp_b9c_copay_mcis_ends_ntrvl1 | double | | | pbp_b9c_copay_mcis_ends_ntrvl2 | double | | | pbp_b9c_copay_mcis_ends_ntrvl3 | double | | | pbp_b9c_copay_mcis_intrvl_num | string | | | pbp_b9c_copay_mcis_maxamt | double | | | pbp_b9c_copay_mcis_minamt | double | | | pbp_b9c_copay_yn | string | | | pbp_b9c_ded_amt | double | | | pbp_b9c_ded_yn | string | | | pbp_b9c_maxenr_amt | double | | | pbp_b9c_maxenr_per | string | | | pbp_b9c_maxenr_per_d | string | | | pbp_b9c_maxenr_type | string | | | pbp_b9c_maxenr_yn | string | | | pbp_b9c_refer_yn | string | | | pbp_b9c_sep_cost_yn | string | | | pbp_b9d_auth | string | | | pbp_b9d_auth_yn | string | | | pbp_b9d_bendec | string | | | pbp_b9d_bendesc_amo | string | | | pbp_b9d_bendesc_yn | string | | | pbp_b9d_coins_cov_mc | string | | | pbp_b9d_coins_pct_mc | double | | | pbp_b9d_coins_pct_mc_max | double | | | pbp_b9d_coins_pct_mc_min | double | | | pbp_b9d_coins_pct_mcmax | double | | | pbp_b9d_coins_yn | string | | | pbp_b9d_copay_mc_amt | double | | | pbp_b9d_copay_mc_amt_max | double | | | pbp_b9d_copay_mc_amt_min | double | | | pbp_b9d_copay_yn | string | | | pbp_b9d_ded_amt | double | | | pbp_b9d_ded_waive_3pt_yn | string | | | pbp_b9d_ded_yn | string | | | pbp_b9d_maxenr_amt | double | | | pbp_b9d_maxenr_per | string | | | pbp_b9d_maxenr_per_d | string | | | pbp_b9d_maxenr_type | string | | | pbp_b9d_maxenr_yn | string | | | pbp_b9d_refer_yn | string | | | pbp_b9d_sep_cost_yn | string | | | observed_period | date | Date = Jan 1 of report_year (the plan year being observed). 1:1 with report_year/effective_period_start. Vlada temporal-spine column. | | asserted_at | date | Date the row was loaded/asserted into the silver mart (Vlada ingestion timestamp, e.g. 2026-05-16 / 2026-05-20). A load-batch marker, NOT a CMS publication date. Roughly clusters by cms_vintage_sequence. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer vintage rank of the CMS source release within its year (1-4). Loosely tracks quarter but NOT a clean function of it (e.g. 2021 Q1 = vintage 4, 2022 Q1/Q2 = vintage 2) because CMS didn't release every quarter every year. Use (report_year, quarter) as the authoritative snapshot key, not this. | | parse_revision | int | Vlada parser revision integer (1 for vintage-1 loads, 2 for vintages 2-4). Ingestion provenance, not a CMS field. | | parser_artifact_hash | string | SHA-256 of the parser code/config artifact that produced the row. Provenance for reproducibility. | | source_url | string | CMS download URL of the source PBP zip (e.g. https://www.cms.gov/files/zip/pbp-benefits-2020-quarter-4.zip). 35 distinct = exactly one per (report_year, quarter) snapshot. | | sha256_content_hash | string | SHA-256 of the source content the row was parsed from. One hash per snapshot file (no snapshot has >1 hash). Provenance/integrity. | | pbp_b9_auth | string | | | pbp_b9_auth_pos | string | | | pbp_b9_coins_cov_mc | string | | | pbp_b9_coins_cov_pos | string | | | pbp_b9_coins_yesno | string | | | pbp_b9_coins_yesno_pos | string | | | pbp_b9_copay_yesno | string | | | pbp_b9_copay_yesno_pos | string | | | pbp_b9_ded_yesno | string | | | pbp_b9_ded_yesno_pos | string | | | pbp_b9_maxenr_per | string | | | pbp_b9_maxenr_yesno | string | | | pbp_b9_maxenr_yn_pos | string | | | pbp_b9_maxplan_yesno_pos | string | | | pbp_b9_maxpln_cov_pos | string | | | pbp_b9_maxpln_per_pos | string | | | pbp_b9b_auth_pos | string | | | pbp_b9b_coins_cov_pos | string | | | pbp_b9b_coins_yesno | string | | | pbp_b9b_coins_yesno_pos | string | | | pbp_b9b_copay_yesno | string | | | pbp_b9b_copay_yesno_pos | string | | | pbp_b9b_ded_yesno | string | | | pbp_b9b_ded_yesno_pos | string | | | pbp_b9b_maxenr_type_pos | string | | | pbp_b9b_maxenr_yesno | string | | | pbp_b9b_maxenr_yn_pos | string | | | pbp_b9b_maxplan_yesno_pos | string | | | pbp_b9b_maxpln_cov_pos | string | | | pbp_b9b_maxpln_per_pos | string | | | pbp_b9c_auth_pos | string | | | pbp_b9c_coins_cov_mcgrp | string | | | pbp_b9c_coins_cov_mcind | string | | | pbp_b9c_coins_cov_pos | string | | | pbp_b9c_coins_covgrp_pos | string | | | pbp_b9c_coins_yesno | string | | | pbp_b9c_coins_yesno_pos | string | | | pbp_b9c_copay_yesno | string | | | pbp_b9c_copay_yesno_pos | string | | | pbp_b9c_ded_yesno | string | | | pbp_b9c_ded_yesno_pos | string | | | pbp_b9c_maxenr_type_pos | string | | | pbp_b9c_maxenr_yesno | string | | | pbp_b9c_maxenr_yn_pos | string | | | pbp_b9c_maxplan_yesno_pos | string | | | pbp_b9c_maxpln_cov_pos | string | | | pbp_b9c_maxpln_per_pos | string | | | pbp_b9d_auth_pos | string | | | pbp_b9d_coins_cov_pos | string | | | pbp_b9d_coins_yesno | string | | | pbp_b9d_coins_yesno_pos | string | | | pbp_b9d_copay_yesno | string | | | pbp_b9d_copay_yesno_pos | string | | | pbp_b9d_ded_yesno | string | | | pbp_b9d_ded_yesno_pos | string | | | pbp_b9d_maxenr_type_pos | string | | | pbp_b9d_maxenr_yesno | string | | | pbp_b9d_maxenr_yn_pos | string | | | pbp_b9d_maxplan_yesno_pos | string | | | pbp_b9d_maxpln_cov_pos | string | | | pbp_b9d_maxpln_per_pos | string | | | pbp_b9a_* | | B9a = Outpatient Hospital Services cost-sharing (the primary sub-section, filed by ~93% of rows). Has copay/coins/deductible/max-enrollee-OOP/authorization/referral fields, SPLIT into two service flavors via suffixes: _obs = Observation Services (copay $0-$900, median ~$236) and _ohs = Outpatient Hospital Services / surgery (copay $0-$1,400). _yn fields = 1/Yes 2/No; _amt = dollar copay/deductible; _pct_mc = coinsurance % of Medicare-covered (0-30%, median 20%); _amt_min/_amt_max = copay range across services; _mc = Medicare-covered amount. | | pbp_b9b_* | | B9b sub-section cost-sharing (filed alongside B9a for essentially all rows). Flat per-service structure: copay_mc_amt $0-$1,000 (median ~$92), coins_pct_mc, ded_amt, maxenr (per-period cap), auth/refer yn. A simpler flat-copay outpatient benefit tier (no obs/ohs split, no intervals). | | pbp_b9c_* | | B9c sub-section — TIERED/interval cost-sharing for session-based services (mental-health / partial-hospitalization style). Two streams: mcgs = Medicare-Covered Group Sessions, mcis = Medicare-Covered Individual Sessions; each with up-to-3 visit-count intervals (intrvl1/2/3 with bgns_/ends_ bounds and per-interval copay amt or coins pct). intrvl_num = how many intervals defined (mostly '1'). Plus ded/maxenr/auth/refer. | | pbp_b9d_* | | B9d sub-section — a plan-DESCRIBED ('bendesc') outpatient benefit. bendec='1' (yes, has a described benefit, 54% of rows) /'2'; bendesc_yn / bendesc_amo = free-text-driven amount flags; then standard copay_mc_amt (with _min/_max), coins_pct_mc, ded (incl ded_waive_3pt_yn), maxenr, auth/refer. Captures outpatient cost-sharing that doesn't fit the a/b/c templates. | | pbp_b9_* (base, no sub-letter) and all *_pos / *_yesno columns | | 100% NULL in this table (verified: pbp_b9_coins_yesno, pbp_b9_*_pos, pbp_b9b/c/d_*_pos, *_yesno all count = 0). These are older/alternate CMS PBP layout fields retained in the unioned silver schema but never populated for B9. They are the reason the profiler's grain looked like a 12-column superset — being uniformly null they add no distinctness. IGNORE for analysis. | | effective_period_start / effective_period_end | | Plan-year coverage window: Jan 1 - Dec 31 of report_year (dates). ALL four quarterly snapshots of a given report_year carry the SAME window — quarter is a release vintage, not a different effective period. report_year = year(effective_period_start) exactly. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_b9_outpat_hosp WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_b9_outpat_hosp")` first. # MA pbp section c `medicare_silver.pbp_section_c` · Medicare Advantage, Part D, Medicaid · status partial Section C: Out-of-pocket maximums + optional supplemental benefits. 226 cols. Coverage: All years. **Grain.** One row per Medicare Advantage plan segment, per benefit year, per quarterly PUF release, per plan-submission version, per legacy outpatient-benefit-group. The verified-unique key is contract_id + plan_id + segment_id + report_year + quarter + version + pbp_c_outpt_group_num_id, which yields exactly 170,652 distinct combinations = the 170,652 row_count (full uniqueness confirmed). The last column only matters for 2004-2006 rows; for 2012+ it is NULL and the effective grain collapses to contract_id+plan_id+segment_id+report_year+quarter+version. **How to use it.** Latest out-of-network inpatient coinsurance for 2026 MA plans: SELECT contract_id, plan_id, segment_id, pbp_c_oon_coins_iph_pct FROM medicare_silver.pbp_section_c WHERE report_year=2026 AND quarter=(SELECT max(quarter) FROM medicare_silver.pbp_section_c WHERE report_year=2026) AND pbp_c_oon_coins_iph_pct IS NOT NULL. This answers 'what does each MA plan charge an enrollee in coinsurance for an out-of-network inpatient hospital stay in 2026' (real values cluster at 50%). Always pin quarter to the max for the year to avoid double-counting re-releases, and remember in-network cost-sharing columns are NULL for 2012+. **Traps.** - BIGGEST TRAP — in-network cost-sharing is empty for all modern years. Every pbp_c in-network benefit column (general deductible, in-network MOOP/gen_oop_med_amt, inpatient iha/iph/ihs copay & coinsurance, outpatient groups 1-5, gated_vs_open, auth/referral flags) is 100% NULL for benefit years 2012-2026. Only the OON (out-of-network), POS (point-of-service), and VT (visitor/travel) families are populated post-2012 (2023: pos 93/130 cols, oon 73/91, vt 3/3). In-network values exist ONLY in 2004-2006, and sparsely. Do NOT use this table to look up a current MA plan's in-network deductible/copay/MOOP — those columns are blank. - No is_current / no snapshot dedup flag. The same plan-year is re-published every quarter (and at multiple submission versions), all stored as separate rows. quarter and version are BOTH part of the grain. To get the 'latest' view of a plan-year you must filter to the max quarter (and max version) per contract_id+plan_id+segment_id+report_year yourself — nothing does it for you. Naively counting rows double-counts plans across quarters. - bid_id looks like the natural key but is NULL for all 2001-2006 rows (8,590 rows) and only 17,463 distinct vs 20,668 distinct contract+plan+segment. When non-null it is exactly contract_id||'_'||plan_id||'_'||segment_id. Use contract_id+plan_id+segment_id (not bid_id) for joins across the full history. - pbp_c_outpt_group_num_id is the hidden grain disambiguator but is NULL 97.9% of the time — it only splits a plan into multiple rows (outpatient groups 1-10) in 2004-2006. For 2012+ ignore it. observed_period is also a false key: it equals Jan-1-of-report_year and is identical across a year's quarterly re-releases, so it is coarser than report_year+quarter. - Time coverage has holes: benefit years 2007-2011 are entirely absent (data jumps from 2006 straight to 2012) and 2020 is missing its Q3 release. report_year is the benefit/effective year (what plan terms apply to), NOT a publication date. asserted_at (only 2 dates) is the Vlada ingest date, not a data dimension. All cost amounts are USD and all coinsurance fields are percentages 0-100; _yn flags use '1'=yes / '2'=no. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract id (e.g. H0022, R5342). 1,565 distinct. Part of identity. With plan_id+segment_id forms the plan-segment key; equals the prefix of bid_id. | | plan_id | string | Plan number within the contract (e.g. '001','806'). 656 distinct. Identity. | | segment_id | string | Plan segment ('0','1',...). 26 distinct, usually '0'. Identity; segments are geographic/benefit sub-divisions of a plan. | | version | double | PBP submission/resubmission version of the plan's bid, 0-27 (double). Higher versions = later resubmissions and progressively rarer (v0=8,590 rows are the 2001-2006 legacy rows; v3 peak ~26k). Part of grain — the same plan-year-quarter can appear at multiple versions. | | report_year | double | Benefit year the plan terms are effective for (double, 2001-2026). 21 distinct. Equals year(effective_period_start) and year(observed_period). Primary time dimension. | | quarter | double | Which quarterly CMS PUF release the row came from (1-4, double). Older years carry only Q1; 2018/2019/2023 carry Q1-Q4; each quarter re-publishes the FULL plan set (e.g. 2019 Q1=Q2=Q3=Q4=5,002 rows). Part of grain — needed to separate re-releases of the same benefit year. | | bid_id | string | Concatenated id = contract_id//'_'//plan_id//'_'//segment_id (e.g. 'H0022_001_0'). VERIFIED equal to the concat for all non-null rows. TRAP: NULL for all 2001-2006 rows (8,590 rows) and version=0 there, so it is NOT a universal key — use contract_id+plan_id+segment_id instead. 17,463 distinct (< the 20,668 distinct plan-segments because of the nulls). | | orgtype | string | CMS organization type code (string, zero-padded). Domain observed: '01' (HMO/local CCP, 161,262 rows, dominant), '04','05','06','11','14'. Identifies the MA plan org structure. | | pbp_a_ben_cov | string | Benefit-coverage indicator carried from PBP Section A. Domain: '1' (166,700 rows) and '2' (3,952). One of the very few non-pbp_c columns populated in modern years. | | pbp_a_plan_type | string | MA plan type code from Section A (string). Domain: '01' (HMO, 89k), '04' (Local PPO, 54k), '02' (HMO-POS, 18k), '31','18','09','48','26', etc. Use this to distinguish HMO vs PPO vs POS plans. | | pbp_c_accpt_new_bene_beg | double | | | pbp_c_accpt_new_bene_end | double | | | pbp_c_bene_contact | string | | | pbp_c_coins_iha_bgnd_intrvl1 | double | | | pbp_c_coins_iha_bgnd_intrvl2 | double | | | pbp_c_coins_iha_bgnd_intrvl3 | double | | | pbp_c_coins_iha_cov | string | | | pbp_c_coins_iha_endd_intrvl1 | double | | | pbp_c_coins_iha_endd_intrvl2 | double | | | pbp_c_coins_iha_endd_intrvl3 | double | | | pbp_c_coins_iha_intrvl_num | string | | | pbp_c_coins_iha_pct | double | | | pbp_c_coins_iha_pct_intrvl1 | double | | | pbp_c_coins_iha_pct_intrvl2 | double | | | pbp_c_coins_iha_pct_intrvl3 | double | | | pbp_c_coins_ihs_ben_type | string | | | pbp_c_coins_ihs_yn | string | | | pbp_c_coins_iph_bgnd_intrvl1 | double | | | pbp_c_coins_iph_bgnd_intrvl2 | double | | | pbp_c_coins_iph_bgnd_intrvl3 | double | | | pbp_c_coins_iph_cov | string | | | pbp_c_coins_iph_endd_intrvl1 | double | | | pbp_c_coins_iph_endd_intrvl2 | double | | | pbp_c_coins_iph_endd_intrvl3 | double | | | pbp_c_coins_iph_intrvl_num | string | | | pbp_c_coins_iph_pct | double | | | pbp_c_coins_iph_pct_intrvl1 | double | | | pbp_c_coins_iph_pct_intrvl2 | double | | | pbp_c_coins_iph_pct_intrvl3 | double | | | pbp_c_copay_iha_amt_intrvl1 | double | | | pbp_c_copay_iha_amt_intrvl2 | double | | | pbp_c_copay_iha_amt_intrvl3 | double | | | pbp_c_copay_iha_bgnd_intrvl1 | double | | | pbp_c_copay_iha_bgnd_intrvl2 | double | | | pbp_c_copay_iha_bgnd_intrvl3 | double | | | pbp_c_copay_iha_endd_intrvl1 | double | | | pbp_c_copay_iha_endd_intrvl2 | double | | | pbp_c_copay_iha_endd_intrvl3 | double | | | pbp_c_copay_iha_intrvl_num | string | | | pbp_c_copay_iha_ps_amt | double | | | pbp_c_copay_ihs_ben_type | string | | | pbp_c_copay_ihs_yn | string | | | pbp_c_copay_iph_amt_intrvl1 | double | | | pbp_c_copay_iph_amt_intrvl2 | double | | | pbp_c_copay_iph_amt_intrvl3 | double | | | pbp_c_copay_iph_bgnd_intrvl1 | double | | | pbp_c_copay_iph_bgnd_intrvl2 | double | | | pbp_c_copay_iph_bgnd_intrvl3 | double | | | pbp_c_copay_iph_endd_intrvl1 | double | | | pbp_c_copay_iph_endd_intrvl2 | double | | | pbp_c_copay_iph_endd_intrvl3 | double | | | pbp_c_copay_iph_intrvl_num | string | | | pbp_c_copay_iph_ps_amt | double | | | pbp_c_csc_clause_und_bba | string | | | pbp_c_dif_coor_care_outside | string | | | pbp_c_dif_coor_care_within | string | | | pbp_c_dualelig_freq_a | string | | | pbp_c_dualelig_freq_b | string | | | pbp_c_dualelig_freq_c | string | | | pbp_c_dualelig_freq_d | string | | | pbp_c_gated_vs_open | string | | | pbp_c_gen_auth | string | | | pbp_c_gen_auth_subcats | string | | | pbp_c_gen_auth_viol | string | | | pbp_c_gen_auth_viollist | string | | | pbp_c_gen_auth_yn | string | | | pbp_c_gen_bendesc_subcats | string | | | pbp_c_gen_ded_amt | double | | | pbp_c_gen_ded_cost_type | string | | | pbp_c_gen_ded_med_cat | string | | | pbp_c_gen_ded_med_yn | string | | | pbp_c_gen_ded_nm_amt | double | | | pbp_c_gen_ded_nm_cat | string | | | pbp_c_gen_ded_nm_yn | string | | | pbp_c_gen_ded_yn | string | | | pbp_c_gen_maxenr_amt | double | | | pbp_c_gen_maxenr_cost_type | string | | | pbp_c_gen_maxenr_per | string | | | pbp_c_gen_maxenr_yn | string | | | pbp_c_gen_maxplan_amt | double | | | pbp_c_gen_maxplan_cost_type | string | | | pbp_c_gen_maxplan_cov | string | | | pbp_c_gen_maxplan_per | string | | | pbp_c_gen_maxplan_yn | string | | | pbp_c_gen_offer_ben_yn | string | | | pbp_c_gen_oon_pre_yn | string | | | pbp_c_gen_oop_med_amt | double | | | pbp_c_gen_oop_med_yn | string | | | pbp_c_gen_oop_nm_amt | double | | | pbp_c_gen_oop_nm_cat | string | | | pbp_c_gen_oop_nm_per | string | | | pbp_c_gen_oop_nm_yn | string | | | pbp_c_gen_referral_subcats | string | | | pbp_c_gen_referral_yn | string | | | pbp_c_ihs_auth | string | | | pbp_c_ihs_auth_yn | string | | | pbp_c_ihs_ded_acu_amt | double | | | pbp_c_ihs_ded_comb_amt | double | | | pbp_c_ihs_ded_cost_type | string | | | pbp_c_ihs_ded_psyc_amt | double | | | pbp_c_ihs_ded_yn | string | | | pbp_c_ihs_maxenr_acu_amt | double | | | pbp_c_ihs_maxenr_comb_amt | double | | | pbp_c_ihs_maxenr_cost_type | string | | | pbp_c_ihs_maxenr_psyc_amt | double | | | pbp_c_ihs_maxenr_yn | string | | | pbp_c_ihs_maxplan_acu_amt | double | | | pbp_c_ihs_maxplan_comb_amt | double | | | pbp_c_ihs_maxplan_cost_type | string | | | pbp_c_ihs_maxplan_psyc_amt | double | | | pbp_c_ihs_maxplan_yn | string | | | pbp_c_oon_bendesc_bens | string | | | pbp_c_oon_bendesc_cats | string | | | pbp_c_oon_coins_iha_bgnd_i1 | double | | | pbp_c_oon_coins_iha_bgnd_i2 | double | | | pbp_c_oon_coins_iha_bgnd_i3 | double | | | pbp_c_oon_coins_iha_endd_i1 | double | | | pbp_c_oon_coins_iha_endd_i2 | double | | | pbp_c_oon_coins_iha_endd_i3 | double | | | pbp_c_oon_coins_iha_intrvl_num | string | | | pbp_c_oon_coins_iha_mc_cost_yn | string | | | pbp_c_oon_coins_iha_pct | double | | | pbp_c_oon_coins_iha_pct_i1 | double | | | pbp_c_oon_coins_iha_pct_i2 | double | | | pbp_c_oon_coins_iha_pct_i3 | double | | | pbp_c_oon_coins_ihs_ben_type | string | | | pbp_c_oon_coins_ihs_yn | string | | | pbp_c_oon_coins_iph_bgnd_i1 | double | | | pbp_c_oon_coins_iph_bgnd_i2 | double | | | pbp_c_oon_coins_iph_bgnd_i3 | double | | | pbp_c_oon_coins_iph_endd_i1 | double | | | pbp_c_oon_coins_iph_endd_i2 | double | | | pbp_c_oon_coins_iph_endd_i3 | double | | | pbp_c_oon_coins_iph_intrvl_num | string | | | pbp_c_oon_coins_iph_mc_cost_yn | string | | | pbp_c_oon_coins_iph_pct | double | | | pbp_c_oon_coins_iph_pct_i1 | double | | | pbp_c_oon_coins_iph_pct_i2 | double | | | pbp_c_oon_coins_iph_pct_i3 | double | | | pbp_c_oon_coins_snf_bgnd_i1 | double | | | pbp_c_oon_coins_snf_bgnd_i2 | double | | | pbp_c_oon_coins_snf_bgnd_i3 | double | | | pbp_c_oon_coins_snf_endd_i1 | double | | | pbp_c_oon_coins_snf_endd_i2 | double | | | pbp_c_oon_coins_snf_endd_i3 | double | | | pbp_c_oon_coins_snf_intrvl_num | string | | | pbp_c_oon_coins_snf_mc_cost_yn | string | | | pbp_c_oon_coins_snf_pct | double | | | pbp_c_oon_coins_snf_pct_i1 | double | | | pbp_c_oon_coins_snf_pct_i2 | double | | | pbp_c_oon_coins_snf_pct_i3 | double | | | pbp_c_oon_coins_snf_yn | string | | | pbp_c_oon_copay_iha_amt_i1 | double | | | pbp_c_oon_copay_iha_amt_i2 | double | | | pbp_c_oon_copay_iha_amt_i3 | double | | | pbp_c_oon_copay_iha_bgnd_i1 | double | | | pbp_c_oon_copay_iha_bgnd_i2 | double | | | pbp_c_oon_copay_iha_bgnd_i3 | double | | | pbp_c_oon_copay_iha_endd_i1 | double | | | pbp_c_oon_copay_iha_endd_i2 | double | | | pbp_c_oon_copay_iha_endd_i3 | double | | | pbp_c_oon_copay_iha_intrvl_num | string | | | pbp_c_oon_copay_iha_mc_cost_yn | string | | | pbp_c_oon_copay_iha_ps_amt | double | | | pbp_c_oon_copay_ihs_ben_type | string | | | pbp_c_oon_copay_ihs_yn | string | | | pbp_c_oon_copay_iph_amt_i1 | double | | | pbp_c_oon_copay_iph_amt_i2 | double | | | pbp_c_oon_copay_iph_amt_i3 | double | | | pbp_c_oon_copay_iph_bgnd_i1 | double | | | pbp_c_oon_copay_iph_bgnd_i2 | double | | | pbp_c_oon_copay_iph_bgnd_i3 | double | | | pbp_c_oon_copay_iph_endd_i1 | double | | | pbp_c_oon_copay_iph_endd_i2 | double | | | pbp_c_oon_copay_iph_endd_i3 | double | | | pbp_c_oon_copay_iph_intrvl_num | string | | | pbp_c_oon_copay_iph_mc_cost_yn | string | | | pbp_c_oon_copay_iph_ps_amt | double | | | pbp_c_oon_copay_snf_amt | double | | | pbp_c_oon_copay_snf_amt_i1 | double | | | pbp_c_oon_copay_snf_amt_i2 | double | | | pbp_c_oon_copay_snf_amt_i3 | double | | | pbp_c_oon_copay_snf_bgnd_i1 | double | | | pbp_c_oon_copay_snf_bgnd_i2 | double | | | pbp_c_oon_copay_snf_bgnd_i3 | double | | | pbp_c_oon_copay_snf_endd_i1 | double | | | pbp_c_oon_copay_snf_endd_i2 | double | | | pbp_c_oon_copay_snf_endd_i3 | double | | | pbp_c_oon_copay_snf_intrvl_num | string | | | pbp_c_oon_copay_snf_mc_cost_yn | string | | | pbp_c_oon_copay_snf_yn | string | | | pbp_c_oon_ihs_ded_acu_amt | double | | | pbp_c_oon_ihs_ded_comb_amt | double | | | pbp_c_oon_ihs_ded_cost_type | string | | | pbp_c_oon_ihs_ded_psyc_amt | double | | | pbp_c_oon_ihs_ded_yn | string | | | pbp_c_oon_mc_bendesc_cats | string | | | pbp_c_oon_nmc_bendesc_cats | string | | | pbp_c_oon_outpt_group_num | double | | | pbp_c_oon_snf_ded_amt | double | | | pbp_c_oon_snf_ded_yn | string | | | pbp_c_oon_yn | string | | | pbp_c_other_exc | string | | | pbp_c_outpt1_auth | string | | | pbp_c_outpt1_bendesc_cats | string | | | pbp_c_outpt1_coins_cov | string | | | pbp_c_outpt1_coins_max_pct | double | | | pbp_c_outpt1_coins_min_pct | double | | | pbp_c_outpt1_coins_yn | string | | | pbp_c_outpt1_copay_max_amt | double | | | pbp_c_outpt1_copay_min_amt | double | | | pbp_c_outpt1_copay_yn | string | | | pbp_c_outpt1_ded_amt | double | | | pbp_c_outpt1_ded_yn | string | | | pbp_c_outpt1_group_num | string | | | pbp_c_outpt1_maxenr_amt | double | | | pbp_c_outpt1_maxenr_per | string | | | pbp_c_outpt1_maxenr_yn | string | | | pbp_c_outpt1_maxplan_amt | double | | | pbp_c_outpt1_maxplan_cov | string | | | pbp_c_outpt1_maxplan_per | string | | | pbp_c_outpt1_maxplan_yn | string | | | pbp_c_outpt2_auth | string | | | pbp_c_outpt2_bendesc_cats | string | | | pbp_c_outpt2_coins_cov | string | | | pbp_c_outpt2_coins_max_pct | double | | | pbp_c_outpt2_coins_min_pct | double | | | pbp_c_outpt2_coins_yn | string | | | pbp_c_outpt2_copay_max_amt | double | | | pbp_c_outpt2_copay_min_amt | double | | | pbp_c_outpt2_copay_yn | string | | | pbp_c_outpt2_ded_amt | double | | | pbp_c_outpt2_ded_yn | string | | | pbp_c_outpt2_maxenr_amt | double | | | pbp_c_outpt2_maxenr_per | string | | | pbp_c_outpt2_maxenr_yn | string | | | pbp_c_outpt2_maxplan_amt | double | | | pbp_c_outpt2_maxplan_cov | string | | | pbp_c_outpt2_maxplan_per | string | | | pbp_c_outpt2_maxplan_yn | string | | | pbp_c_outpt3_auth | string | | | pbp_c_outpt3_bendesc_cats | string | | | pbp_c_outpt3_coins_cov | string | | | pbp_c_outpt3_coins_max_pct | double | | | pbp_c_outpt3_coins_min_pct | double | | | pbp_c_outpt3_coins_yn | string | | | pbp_c_outpt3_copay_max_amt | double | | | pbp_c_outpt3_copay_min_amt | double | | | pbp_c_outpt3_copay_yn | string | | | pbp_c_outpt3_ded_amt | double | | | pbp_c_outpt3_ded_yn | string | | | pbp_c_outpt3_maxenr_amt | double | | | pbp_c_outpt3_maxenr_per | string | | | pbp_c_outpt3_maxenr_yn | string | | | pbp_c_outpt3_maxplan_amt | double | | | pbp_c_outpt3_maxplan_cov | string | | | pbp_c_outpt3_maxplan_per | string | | | pbp_c_outpt3_maxplan_yn | string | | | pbp_c_outpt4_auth | string | | | pbp_c_outpt4_bendesc_cats | string | | | pbp_c_outpt4_coins_cov | string | | | pbp_c_outpt4_coins_max_pct | double | | | pbp_c_outpt4_coins_min_pct | double | | | pbp_c_outpt4_coins_yn | string | | | pbp_c_outpt4_copay_max_amt | double | | | pbp_c_outpt4_copay_min_amt | double | | | pbp_c_outpt4_copay_yn | string | | | pbp_c_outpt4_ded_amt | double | | | pbp_c_outpt4_ded_yn | string | | | pbp_c_outpt4_maxenr_amt | double | | | pbp_c_outpt4_maxenr_per | string | | | pbp_c_outpt4_maxenr_yn | string | | | pbp_c_outpt4_maxplan_amt | double | | | pbp_c_outpt4_maxplan_cov | string | | | pbp_c_outpt4_maxplan_per | string | | | pbp_c_outpt4_maxplan_yn | string | | | pbp_c_outpt5_auth | string | | | pbp_c_outpt5_bendesc_cats | string | | | pbp_c_outpt5_coins_cov | string | | | pbp_c_outpt5_coins_max_pct | double | | | pbp_c_outpt5_coins_min_pct | double | | | pbp_c_outpt5_coins_yn | string | | | pbp_c_outpt5_copay_max_amt | double | | | pbp_c_outpt5_copay_min_amt | double | | | pbp_c_outpt5_copay_yn | string | | | pbp_c_outpt5_ded_amt | double | | | pbp_c_outpt5_ded_yn | string | | | pbp_c_outpt5_maxenr_amt | double | | | pbp_c_outpt5_maxenr_per | string | | | pbp_c_outpt5_maxenr_yn | string | | | pbp_c_outpt5_maxplan_amt | double | | | pbp_c_outpt5_maxplan_cov | string | | | pbp_c_outpt5_maxplan_per | string | | | pbp_c_outpt5_maxplan_yn | string | | | pbp_c_outpt_bendesc_cats | string | | | pbp_c_outpt_coins_cov | string | | | pbp_c_outpt_coins_max_pct | double | | | pbp_c_outpt_coins_min_pct | double | | | pbp_c_outpt_coins_yn | string | | | pbp_c_outpt_copay_max_amt | double | | | pbp_c_outpt_copay_min_amt | double | | | pbp_c_outpt_copay_yn | string | | | pbp_c_outpt_group_num | string | | | pbp_c_outpt_group_num_id | string | Legacy disambiguator: outpatient-benefit group number '1'-'10'. TRAP: NULL for 167,181 of 170,652 rows (97.9%); only non-null in 2004-2006, where a single plan is split into up to 10 rows (one per outpatient benefit group). Required to make the grain unique for those legacy years. | | pbp_c_pos_auth | string | | | pbp_c_pos_auth_bens | string | | | pbp_c_pos_auth_mc_subcats | string | | | pbp_c_pos_auth_nmc_subcats | string | | | pbp_c_pos_auth_subcats | string | | | pbp_c_pos_auth_yn | string | | | pbp_c_pos_bendesc_amo | string | | | pbp_c_pos_bendesc_bens | string | | | pbp_c_pos_bendesc_subcats | string | | | pbp_c_pos_coins_iha_bgnd_i1 | double | | | pbp_c_pos_coins_iha_bgnd_i2 | double | | | pbp_c_pos_coins_iha_bgnd_i3 | double | | | pbp_c_pos_coins_iha_endd_i1 | double | | | pbp_c_pos_coins_iha_endd_i2 | double | | | pbp_c_pos_coins_iha_endd_i3 | double | | | pbp_c_pos_coins_iha_intrvl_num | string | | | pbp_c_pos_coins_iha_mc_cost_yn | string | | | pbp_c_pos_coins_iha_pct | double | | | pbp_c_pos_coins_iha_pct_i1 | double | | | pbp_c_pos_coins_iha_pct_i2 | double | | | pbp_c_pos_coins_iha_pct_i3 | double | | | pbp_c_pos_coins_ihs_ben_type | string | | | pbp_c_pos_coins_ihs_yn | string | | | pbp_c_pos_coins_iph_bgnd_i1 | double | | | pbp_c_pos_coins_iph_bgnd_i2 | double | | | pbp_c_pos_coins_iph_bgnd_i3 | double | | | pbp_c_pos_coins_iph_endd_i1 | double | | | pbp_c_pos_coins_iph_endd_i2 | double | | | pbp_c_pos_coins_iph_endd_i3 | double | | | pbp_c_pos_coins_iph_intrvl_num | string | | | pbp_c_pos_coins_iph_mc_cost_yn | string | | | pbp_c_pos_coins_iph_pct | double | | | pbp_c_pos_coins_iph_pct_i1 | double | | | pbp_c_pos_coins_iph_pct_i2 | double | | | pbp_c_pos_coins_iph_pct_i3 | double | | | pbp_c_pos_coins_snf_bgnd_i1 | double | | | pbp_c_pos_coins_snf_bgnd_i2 | double | | | pbp_c_pos_coins_snf_bgnd_i3 | double | | | pbp_c_pos_coins_snf_endd_i1 | double | | | pbp_c_pos_coins_snf_endd_i2 | double | | | pbp_c_pos_coins_snf_endd_i3 | double | | | pbp_c_pos_coins_snf_intrvl_num | string | | | pbp_c_pos_coins_snf_mc_cost_yn | string | | | pbp_c_pos_coins_snf_pct | double | | | pbp_c_pos_coins_snf_pct_i1 | double | | | pbp_c_pos_coins_snf_pct_i2 | double | | | pbp_c_pos_coins_snf_pct_i3 | double | | | pbp_c_pos_coins_snf_yn | string | | | pbp_c_pos_comb_ded_amt | double | | | pbp_c_pos_copay_iha_amt_i1 | double | | | pbp_c_pos_copay_iha_amt_i2 | double | | | pbp_c_pos_copay_iha_amt_i3 | double | | | pbp_c_pos_copay_iha_bgnd_i1 | double | | | pbp_c_pos_copay_iha_bgnd_i2 | double | | | pbp_c_pos_copay_iha_bgnd_i3 | double | | | pbp_c_pos_copay_iha_endd_i1 | double | | | pbp_c_pos_copay_iha_endd_i2 | double | | | pbp_c_pos_copay_iha_endd_i3 | double | | | pbp_c_pos_copay_iha_intrvl_num | string | | | pbp_c_pos_copay_iha_mc_cost_yn | string | | | pbp_c_pos_copay_iha_ps_amt | double | | | pbp_c_pos_copay_ihs_ben_type | string | | | pbp_c_pos_copay_ihs_yn | string | | | pbp_c_pos_copay_iph_amt_i1 | double | | | pbp_c_pos_copay_iph_amt_i2 | double | | | pbp_c_pos_copay_iph_amt_i3 | double | | | pbp_c_pos_copay_iph_bgnd_i1 | double | | | pbp_c_pos_copay_iph_bgnd_i2 | double | | | pbp_c_pos_copay_iph_bgnd_i3 | double | | | pbp_c_pos_copay_iph_endd_i1 | double | | | pbp_c_pos_copay_iph_endd_i2 | double | | | pbp_c_pos_copay_iph_endd_i3 | double | | | pbp_c_pos_copay_iph_intrvl_num | string | | | pbp_c_pos_copay_iph_mc_cost_yn | string | | | pbp_c_pos_copay_iph_ps_amt | double | | | pbp_c_pos_copay_snf_amt | double | | | pbp_c_pos_copay_snf_amt_i1 | double | | | pbp_c_pos_copay_snf_amt_i2 | double | | | pbp_c_pos_copay_snf_amt_i3 | double | | | pbp_c_pos_copay_snf_bgnd_i1 | double | | | pbp_c_pos_copay_snf_bgnd_i2 | double | | | pbp_c_pos_copay_snf_bgnd_i3 | double | | | pbp_c_pos_copay_snf_endd_i1 | double | | | pbp_c_pos_copay_snf_endd_i2 | double | | | pbp_c_pos_copay_snf_endd_i3 | double | | | pbp_c_pos_copay_snf_intrvl_num | string | | | pbp_c_pos_copay_snf_mc_cost_yn | string | | | pbp_c_pos_copay_snf_yn | string | | | pbp_c_pos_ded_amt | double | | | pbp_c_pos_ded_yn | string | | | pbp_c_pos_iha_ded_amt | double | | | pbp_c_pos_iha_maxplan_per | string | | | pbp_c_pos_iha_maxplan_per_d | string | | | pbp_c_pos_ihp_maxplan_per | string | | | pbp_c_pos_ihp_maxplan_per_d | string | | | pbp_c_pos_ihs_ded_type | string | | | pbp_c_pos_ihs_ded_yn | string | | | pbp_c_pos_ihs_maxplan_acu_amt | double | | | pbp_c_pos_ihs_maxplan_comb_amt | double | | | pbp_c_pos_ihs_maxplan_per | string | | | pbp_c_pos_ihs_maxplan_per_d | string | | | pbp_c_pos_ihs_maxplan_psyc_amt | double | | | pbp_c_pos_ihs_maxplan_type | string | | | pbp_c_pos_ihs_maxplan_yn | string | | | pbp_c_pos_iph_ded_amt | double | | | pbp_c_pos_maxenr_oopc_amt | double | | | pbp_c_pos_maxenr_oopc_per | string | | | pbp_c_pos_maxenr_oopc_per_d | string | | | pbp_c_pos_maxenr_oopc_yn | string | | | pbp_c_pos_maxplan_amt | double | | | pbp_c_pos_maxplan_bens | string | | | pbp_c_pos_maxplan_mc_subcats | string | | | pbp_c_pos_maxplan_nmc_subcats | string | | | pbp_c_pos_maxplan_per | string | | | pbp_c_pos_maxplan_per_d | string | | | pbp_c_pos_maxplan_subcats | string | | | pbp_c_pos_maxplan_yn | string | | | pbp_c_pos_mc_bendesc_subcats | string | | | pbp_c_pos_nmc_bendesc_subcats | string | | | pbp_c_pos_outpt_group_num | double | | | pbp_c_pos_refer_benefit_bens | string | | | pbp_c_pos_refer_mc_subcats | string | | | pbp_c_pos_refer_nmc_subcats | string | | | pbp_c_pos_referral_subcats | string | | | pbp_c_pos_referral_yn | string | | | pbp_c_pos_snf_ded_amt | double | | | pbp_c_pos_snf_ded_yn | string | | | pbp_c_pos_state_limit_yn | string | | | pbp_c_pos_territories_yn | string | | | pbp_c_pos_yn | string | | | pbp_c_prof_monitor_care | string | | | pbp_c_prof_part | string | | | pbp_c_serv_prior_esd | string | | | pbp_c_special_avail | string | | | pbp_c_vt_geographic_area | string | | | pbp_c_vt_us_mo | string | | | pbp_c_vt_us_yn | string | | | observed_period | date | Snapshot date = Jan 1 of report_year (date). 21 distinct. TRAP: identical for all quarterly re-releases of a year, so it is COARSER than report_year+quarter and cannot separate quarters in the grain (using it instead of year+quarter drops you to 87,877 distinct). | | asserted_at | date | Vlada load/ingest date (date). Only 2 values: 2026-05-16 (initial load of Q1 + all legacy years) and 2026-05-20 (backfill of the extra quarterly re-releases). A load-batch marker, NOT a benefit dimension. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer 1-4 marking ingest vintage/order of the source files (1=74,378 rows, 2,3,4 smaller). Provenance ordering, correlated with but distinct from quarter; do not use as a benefit field. | | parse_revision | int | Parser revision integer (2 distinct values). Silver-tier provenance — which version of the extraction code produced the row. | | parser_artifact_hash | string | Hash of the parser artifact (35 distinct, one per source file). Provenance. | | source_url | string | Exact CMS PBP PUF zip the row came from, e.g. .../pbp-benefits-2019-q1.zip or .../pbp-benefits-2024-quarter-3.zip. 35 distinct = one per (report_year, quarter). Full lineage. | | sha256_content_hash | string | SHA-256 of the source file content (35 distinct, 1:1 with source_url). Provenance/integrity. | | pbp_c_* (in-network cost-sharing families: coins_*, copay_*, gen_*, ihs_*, outpt1_*..outpt5_*, outpt_*, accpt_*, dif_*, dualelig_*, gated_vs_open, *_auth*, *_ded_*, *_maxenr_*, *_maxplan_*, *_oop_*) | | The core in-network medical cost-sharing detail: inpatient hospital acute (iha) / psych (iph,ihs) copay & coinsurance by interval, outpatient service groups 1-5 (copay/coins min-max, deductible, plan max), general deductible (gen_ded_amt), in-network maximum-out-of-pocket (gen_oop_med_amt / gen_maxenr_amt), prior-auth & referral flags, gated-vs-open. CRITICAL TRAP: these are 100% NULL for every benefit year 2012-2026. They carry values ONLY in 2004-2006 (and even there sparsely: e.g. 2006 iph coinsurance populated on 2,017 of 3,516 rows). Amounts are USD; coinsurance fields are percent (0-100); _yn flags are '1'=yes/'2'=no. | | pbp_c_oon_* (out-of-network family, ~91 cols) | | Out-of-network cost-sharing for the plan: oon_yn (offers OON?), OON inpatient/SNF coinsurance pct (oon_coins_iph_pct, oon_coins_iha_pct, oon_coins_snf_pct — real values e.g. 50% common for OON inpatient), OON copays, OON deductibles, OON benefit-description category lists. POPULATED in modern years (2023: 73/91 cols; 2026: oon_yn on 2,600 rows). This is one of only three benefit families with data post-2012. | | pbp_c_pos_* (point-of-service family, ~130 cols) | | Point-of-service option cost-sharing (pos_yn, pos_maxplan_*, pos_ded_*, pos_auth_yn, pos_bendesc_*, per-service POS copay/coins). POPULATED in modern years (2023: 93/130 cols). The most-populated benefit family for 2012+. Lets an HMO offer limited out-of-network access. | | pbp_c_vt_* (visitor/travel family: vt_us_yn, vt_us_mo, vt_geographic_area) | | Visitor/travel benefit terms — whether the plan covers enrollees temporarily outside the service area and for how many months. Small family, populated in modern years (vt_us_yn on 29,603 rows in 2023). | | effective_period_start / effective_period_end | | Benefit-year window as dates: Jan 1 - Dec 31 of report_year (e.g. 2025-01-01 .. 2025-12-31). 21 distinct. Provenance/time field; year matches report_year exactly. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_c WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_c")` first. # MA pbp section c oon `medicare_silver.pbp_section_c_oon` · Medicare Advantage, Part D, Medicaid · status partial Section C OON: Out-of-network cost-share detail. Coverage: All years (plans with OON only). **Grain.** One row per OON benefit cost-share group per plan per CMS snapshot. The MINIMAL verified-unique key is contract_id + plan_id + segment_id + pbp_c_oon_outpt_group_num_id + report_year + quarter (658,957 distinct = exactly the full row_count). version is functionally determined by these (adding it does not change the distinct count) because within any one (report_year, quarter) a given plan has exactly one version. A plan typically has SEVERAL group rows (group_num_id 1..196), each a distinct OON cost-share bundle (e.g. a 30% group, a Dental group, an Ambulance group). **How to use it.** Get the 2024 out-of-network member cost-share for each PPO plan, de-duplicated across the quarterly republications: SELECT contract_id, plan_id, segment_id, pbp_c_oon_outpt_group_num_id, pbp_c_oon_outpt_grp_lbl, pbp_c_oon_outpt_coins_max_pct, pbp_c_oon_outpt_copay_max_amt FROM pbp_section_c_oon WHERE report_year=2024 AND quarter=(SELECT max(quarter) FROM pbp_section_c_oon WHERE report_year=2024) AND pbp_a_plan_type IN ('04','31') -- Local/Regional PPO. This answers 'what does a member pay out of network for outpatient services in each PPO plan', one row per OON cost-share group, without quarter-driven double counting. **Traps.** - QUARTER IS A REPUBLICATION SNAPSHOT, NOT A KEY YOU CAN SUM OVER. For 2018-2020 the same annual bid was republished in Q1-Q4 with ~identical values (of 13,082 multi-quarter plan+group keys in 2020, only 13 had any coinsurance change). A query like WHERE report_year=2020 without pinning one quarter double/triple-counts every plan. Pick a single quarter (e.g. the max quarter per plan-year), or dedup on the 6-col grain minus quarter, before aggregating. Note row counts per year reflect this: 2026 is huge (192K) because it has many bid VERSIONS in Q1, while 2018-2020 are inflated by 4x quarterly republication. - version IS in the grain via year+quarter but is a RED HERRING as a standalone dedup axis. Within one (report_year, quarter) each plan has exactly ONE version, and different versions hold different plans — version is the CMS bid-submission counter, not competing snapshots of one plan. Do NOT filter to 'version=latest' to dedup a plan; that would drop most plans entirely. - Many money/flag columns are NULL-because-not-applicable, not missing data. ded_amt is null unless ded_yn='1' (only 1,637 rows). maxplan_amt/maxplan_per are null unless maxplan_yn='1' (34K rows, mostly supplemental benefits). The entire cs_* family and cost_share/coins_cov are ~99% null — they exist only for a tiny set of plans with secondary/tiered structures. coins_*pct is null where coins_yn!='1', copay_*amt null where copay_yn!='1'. Always gate on the matching _yn flag before reading the amount. - bid_id is 100% derivable (contract_id||'_'||plan_id||'_'||segment_id) and observed_period/effective_period_start/effective_period_end are 100% derivable from report_year — none add information; do not treat them as independent dimensions or join keys. - This is the OUT-OF-NETWORK table (PPO/PFFS only). Sibling tables in medicare_silver are pbp_section_c (main Section C / in-network outpatient benefits) and pbp_section_c_pos (point-of-service). To compare in- vs out-of-network member cost you must join this to pbp_section_c on contract_id+plan_id+segment_id+report_year(+quarter). HMOs (plan_type 01) are nearly absent here because they generally cover no out-of-network outpatient benefit. - Benefit applicability lives in semicolon-delimited code LISTS (pbp_c_oon_out_mc_bendesc_cats for Medicare-covered, _nmc_ for supplemental), using the CMS PBP benefit-category code system (e.g. 10a1=ambulance, 15=Part B drugs, 17a=eye exam). You cannot filter to 'ambulance OON cost' by a single column — you must string-match the category code within these list fields. grp_lbl is free text (plan-chosen, e.g. '30%', 'Dental') and is not a reliable controlled vocabulary. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0088). 492 distinct. Part of grain. Join key to plan/enrollment/Stars tables. | | plan_id | string | Plan ID within the contract (3-char, e.g. '001'). 655 distinct values overall (not unique alone). Part of grain. | | segment_id | string | Plan segment ('0' for non-segmented; up to 25 distinct). Part of grain. Most plans are segment '0'. | | pbp_c_oon_outpt_group_num_id | string | Sequence number (string '1'..'196', 122 distinct) of the OON outpatient cost-share group within the plan. THIS is what makes a plan have many rows. Part of grain. Not globally meaningful — only orders groups inside one plan. | | pbp_c_oon_outpt_bendesc_cats | string | Benefit-description category field; observed empty-string '' or null in nearly all rows — effectively unused/legacy. Real category content lives in the mc/nmc variants below. | | version | double | CMS bid/submission version for that plan-year (double, 1..26). Functionally determined by the grain (one version per plan per year+quarter), so NOT needed in the key. Higher versions = later bid submissions; row counts taper off at high versions. Different versions within a (year,quarter) hold DIFFERENT plans, not competing snapshots of the same plan. | | report_year | double | Benefit/contract year (double, 2007-2026). Maps 1:1 to effective_period_start/end. The primary time dimension. Part of grain. | | quarter | double | CMS release quarter (double, 1-4). Part of grain BUT a republication-snapshot axis: 2018-2020 republished the same annual bid in Q1-Q4 (data is ~identical across quarters); 2007-2017 and 2021+ are largely Q1-only. See gotchas — summing across quarters double/quadruple-counts plans. | | bid_id | string | Composite ID, 100% equal to contract_id//'_'//plan_id//'_'//segment_id (verified on all 658,957 rows). Fully redundant convenience key, carries no new information. | | orgtype | string | CMS organization type code (string). 01=Local CCP dominates (608K); 11=Regional PPO area, 04=PFFS, plus rare 05/14. Correlates with pbp_a_plan_type. | | pbp_a_ben_cov | string | Benefit-coverage scope flag from Section A. '1' = original-Medicare-covered scope (652K), '2' = supplemental/other (7K). | | pbp_a_plan_type | string | MA plan type code. 04=Local PPO (605K), 31=Regional PPO (30K), 09=PFFS (21K), 01=HMO (rare, 2.7K), etc. These are exactly the plan types that allow out-of-network use — HMOs barely appear because they generally have no OON benefit. | | pbp_c_oon_out_mc_bendesc_cats | string | Semicolon-delimited list of Medicare-covered PBP benefit-category codes this OON group applies to (e.g. '10a1;10a2'=ambulance, '15'=Part B drugs, '17a'=eye exam, '3-1..8b'=outpatient hospital/surgery). The benefit map for the group. | | pbp_c_oon_out_nmc_bendesc_cats | string | Same code system but for NON-Medicare-covered (supplemental) benefit categories the group covers (e.g. '9d_2','13c','14b'). Often null when the group is Medicare-covered only. | | pbp_c_oon_outpt_bendesc_ben | string | Benefit-type code for the group: '01' (Medicare-covered, 377K) most common, '10'/'11' (supplemental/optional benefit) next; ~42K null. Distinguishes a Medicare-covered OON group from a supplemental one. | | pbp_c_oon_outpt_coins_cov | string | Coinsurance-coverage qualifier code (string, ~98% null). Rare values 1,2,3,6 indicate special coverage handling; usually irrelevant. | | pbp_c_oon_outpt_coins_max_pct | double | | | pbp_c_oon_outpt_coins_min_pct | double | | | pbp_c_oon_outpt_coins_yn | string | Does this OON group charge coinsurance? '1'=Yes (338K), '2'=No (307K), null (14K). CMS Y/N convention 1=Yes 2=No. | | pbp_c_oon_outpt_copay_max_amt | double | | | pbp_c_oon_outpt_copay_min_amt | double | | | pbp_c_oon_outpt_copay_yn | string | Does this OON group charge a flat copay? '2'=No (354K) is most common, '1'=Yes (291K), null (14K). | | pbp_c_oon_outpt_cost_share | string | Cost-share structure type code (string, ~95% null). Sparse values 1/2/3 flag plans with a special/secondary cost-share arrangement; usually null. | | pbp_c_oon_outpt_cs_coins_max | double | | | pbp_c_oon_outpt_cs_coins_min | double | | | pbp_c_oon_outpt_cs_coins_yn | string | | | pbp_c_oon_outpt_cs_copay_max | double | | | pbp_c_oon_outpt_cs_copay_min | double | | | pbp_c_oon_outpt_cs_copay_yn | string | | | pbp_c_oon_outpt_ded_amt | double | OON deductible amount (double, $0-$5,000, median $500) — meaningful only on the ~1,637 rows where ded_yn='1', else null. | | pbp_c_oon_outpt_ded_yn | string | Does an OON deductible apply to this group? Overwhelmingly '2'=No (643K); '1'=Yes only 1,637 rows; null 14K. OON deductibles are rare at the group level. | | pbp_c_oon_outpt_grp_lbl | string | Plan's free-text label for the cost-share group (e.g. '30%', '$0 copay', 'Dental', 'Ambulance', 'Group 1', 'OTC', 'Fitness'). Heterogeneous, ~17% null. Human-readable name, not a controlled code. | | pbp_c_oon_outpt_maxplan_amt | double | Maximum plan benefit / coverage cap dollar amount (double, $0-$7,500, median ~$74) — meaningful only on the 34K rows where maxplan_yn='1' (typically supplemental benefits like OTC, dental, hearing-aid allowances). | | pbp_c_oon_outpt_maxplan_per | string | Period code for the maximum (string 1-7; 5 and 3 most common). ~97% null — only set when maxplan_yn='1'. Encodes per-year/per-visit/etc. cadence of the cap. | | pbp_c_oon_outpt_maxplan_per_d | string | Free-text/description companion to maxplan_per (period detail). Mostly null; populated alongside the per code. | | pbp_c_oon_outpt_maxplan_yn | string | Is there a benefit maximum (plan coverage cap) on this OON group? '2'=No (420K), null (205K), '1'=Yes (34K). When null, no max concept applies to that benefit type. | | observed_period | date | Date = effective_period_start on 100% of rows (always Jan 1 of report_year). Redundant date encoding of report_year. | | asserted_at | date | Pipeline ingestion/parse-batch date (only 2 values: 2026-05-16 and 2026-05-20). NOT a business date — when Vlada loaded this silver table, used for lineage. | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | int | Integer lineage stamp ordering CMS source vintages within the pipeline (e.g. 2). Provenance, not a business field. | | parse_revision | int | Integer parser-revision number for the Vlada extraction (e.g. 2). Provenance/QA, not business data. | | parser_artifact_hash | string | SHA-256 of the parser artifact that produced the row. Reproducibility/lineage. | | source_url | string | The CMS source ZIP this row came from (e.g. https://www.cms.gov/files/zip/pbp-benefits-2020-quarter-2.zip). Direct provenance to the official file. | | sha256_content_hash | string | SHA-256 content hash of the source payload for integrity verification. Lineage/dedup. | | pbp_c_oon_outpt_coins_min_pct / pbp_c_oon_outpt_coins_max_pct | | OON coinsurance percentage the member pays (double, 0-100). Median max ~32%. min=max for a fixed rate; they differ when the group spans a range. Populated only where coins_yn='1'. | | pbp_c_oon_outpt_copay_min_amt / pbp_c_oon_outpt_copay_max_amt | | OON copay dollar amount the member pays (double, $0-$5,000). Median max ~$41. Populated where copay_yn='1'. min=max for a fixed copay. | | pbp_c_oon_outpt_cs_coins_yn / cs_coins_min / cs_coins_max | | Secondary/tiered coinsurance sub-structure (the 'cs_' prefix). ~99.8% null — populated on only ~1,300 rows that have a layered cost-share. Ignore unless cost_share is set. | | pbp_c_oon_outpt_cs_copay_yn / cs_copay_min / cs_copay_max | | Secondary/tiered copay sub-structure. Also ~99.8% null. Same caveat as cs_coins_*. | | effective_period_start / effective_period_end | | Benefit-year boundaries, always Jan 1 - Dec 31 of report_year. Derived 1:1 from report_year; carry no extra information. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_c_oon WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_c_oon")` first. # MA pbp section c pos `medicare_silver.pbp_section_c_pos` · Medicare Advantage, Part D, Medicaid · status partial Section C POS: Point-of-service cost-share detail. Coverage: All years (plans with POS only). **Grain.** One row per MA plan benefit-group per quarterly CMS PBP snapshot: contract_id x plan_id x segment_id x pbp_c_pos_outpt_group_num_id x report_year x quarter. Verified: SELECT DISTINCT on exactly those 6 columns = 70,349 = the full row_count. A "group" is a cost-share tier the plan defines for its POS outpatient benefit (Group 1, Group 2, ...); most plans have 1-2 groups, some up to 20+. NOTE: this is the physical/storage grain — analytically each plan-group is republished IDENTICALLY across the quarters of a year (e.g. 2023 Q1=Q2=Q3=Q4, values unchanged), so the true annual benefit grain is contract_id x plan_id x segment_id x group_num_id x report_year (3,089 distinct plan-groups in 2023 vs 12,353 raw rows). **How to use it.** Get the member cost-share for a specific MA plan's POS outpatient benefit for a given year, deduped to one snapshot. Example: SELECT pbp_c_pos_outpt_group_num_id, pbp_c_pos_group_lbl, pbp_c_pos_outpt_coins_yn, pbp_c_pos_outpt_coins_min_pct, pbp_c_pos_outpt_copay_yn, pbp_c_pos_outpt_copay_min_amt, pbp_c_pos_outpt_mc_bencats FROM medicare_silver.pbp_section_c_pos WHERE contract_id='H0174' AND plan_id='005' AND segment_id='0' AND report_year=2019 AND quarter=4 ORDER BY pbp_c_pos_outpt_group_num_id; -- returns each cost-share group's coinsurance %/copay $ and the benefit-category codes it applies to, for that plan-year (filter quarter to avoid the 4x quarterly-republication duplication). **Traps.** - QUARTER IS A DUPLICATION AXIS, NOT NEW DATA. For 2018+ the same plan-group is republished IDENTICALLY across Q1-Q4 (2023: 12,353 raw rows = 4 x 3,089 distinct plan-groups; benefit values do NOT differ across quarters). Any benefit analysis MUST collapse to one quarter per year (or group by report_year only) or you will 2-4x overcount plans. There is NO is_current column to do this for you. - PROFILER GRAIN IS A BLOATED SUPERSET. The profiler's 14-column 'verified unique' key wrongly includes VALUE columns (pbp_c_pos_outpt_maxplan_amt/_cov/_per/_per_d/_yn) and the redundant bid_id/plan_type. The true MINIMAL grain is just contract_id x plan_id x segment_id x pbp_c_pos_outpt_group_num_id x report_year x quarter (6 cols = 70,349). pbp_c_pos_outpt_maxplan_per_d is in that profiler key yet is 100% NULL. - NULL VALUE COLUMNS ARE MEANINGFUL = 'cost-share type does not apply'. coins_min/max_pct is NULL exactly when coins_yn<>'1'; copay_*_amt NULL when copay_yn<>'1'; deduct_amt NULL when deduct_yn<>'1'; maxplan_amt NULL when maxplan_yn<>'1' (all verified, 0 violations). Always gate on the matching _yn='1' flag (1=Yes, 2=No) before reading a dollar/percent value; do not treat NULL as $0. - coins_*_pct are PERCENTAGES (0-100), copay_*_amt / deduct_amt / maxplan_amt are DOLLARS. maxplan_amt is a PLAN-PAID benefit LIMIT (what the plan covers up to), not a member out-of-pocket cost. A single group can carry BOTH a copay and a coinsurance simultaneously (2,247 rows), so member cost is not one-or-the-other. - asserted_at / parse_revision / parser_artifact_hash are VLADA ETL metadata (only 2 ingest dates: 2026-05-16 & 2026-05-20), NOT CMS dates. cms_vintage_sequence tracks CMS quarterly re-releases (1-4), also not an is_current flag. For real CMS provenance use source_url + sha256_content_hash (34 distinct, one per snapshot). bid_id is just contract_id_plan_id_segment_id (redundant). pbp_c_pos_group_lbl is free-text and ~50% NULL — never key/join on it. - This is the POS (Point-of-Service) slice only — one of many PBP Section C benefit tables (sibling pbp_section_c_* tables cover other outpatient/inpatient/professional benefit categories). bencat_bens / mc_bencats / nmc_bencats are CMS PBP benefit-category codes (semicolon-delimited code lists like '7b;8a1;14e1'), not service descriptions; the empty-string bencat_bens is a pre-2013 vintage gap, not a real category. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (e.g. H0174). 404 distinct. First component of the plan identity; an org's MA contract. | | plan_id | string | Plan number within the contract (e.g. '005', zero-padded 3-char string). 288 distinct. contract_id+plan_id+segment_id = the unique benefit package. | | segment_id | string | Plan segment / service-area sub-division ('0' for the base plan, '1'..'10' for segmented plans). 11 distinct; '0' covers 51,600 of 70,349 rows. Part of the plan key. | | pbp_c_pos_outpt_group_num_id | string | Cost-share GROUP number the plan defines for its POS outpatient benefit ('1','2','3',...). THE row-level discriminator that makes each plan multi-row. Values 1-20+. Each group bundles a set of service benefit-categories that share one cost-share design. | | pbp_c_pos_oupt_bencat_bens | string | Benefit-category-set code for the group: '01' (37,623 rows), '10' (16,289), '11' (8,691), or '' empty. Empty string is concentrated in early vintages 2007-2012 (column not populated then) — empty = 'not coded in that vintage', not a real category. Functionally dependent on group_num_id (adding it to the key does not change the grain). | | version | double | CMS PBP bid version number (double, 1.0-12.0+) — the plan's bid-submission revision; higher = later refile. Descriptive, NOT part of the grain (only the latest captured version per quarter is present). | | report_year | double | CMS PBP benefit/contract year (double, 2007-2026, 20 distinct). The primary time dimension; equals the calendar year the benefit design is in effect. | | quarter | double | CMS quarterly release within the report_year (1-4). PART OF THE PHYSICAL GRAIN but a duplication axis: 2007-2017 have only Q1; 2018+ have multiple quarters whose benefit values are IDENTICAL. Some years skip quarters (2020 has no Q3, 2024 no Q2, 2025/2026 only Q1). | | bid_id | string | Convenience concatenation contract_id + '_' + plan_id + '_' + segment_id (e.g. 'H0174_005_0'). 100% derivable (0 mismatches) — redundant, do not treat as independent key. | | orgtype | string | CMS organization-type code: '01' (Local CCP, 69,926 rows) dominant, '05' (408), '11' (15). Identifies the MA org structure. | | pbp_a_ben_cov | string | Section-A flag for whether the plan provides this (Part-A-style) benefit coverage: '1'=Yes (70,219), '2'=No (130). Plan-level attribute repeated on every group row. | | pbp_a_plan_type | string | CMS plan-type code: '02' dominant (69,783, the HMO-POS/local plan type for this POS table), plus '37','05','04','06','39','31','01','49','10'. Plan-level attribute. | | pbp_c_pos_group_lbl | string | Free-text label for the group ('Group 1', 'Group 2', or descriptive like '50% coinsurance','20% coinsurance'). OFTEN NULL (~half the rows) and non-standard — display-only, NOT a reliable key or join field. | | pbp_c_pos_outpt_bendesc_cats | string | Free-text/coded benefit-description categories for the group. Sparse: 7,656 non-null, 966 distinct. Descriptive enrichment of which services the group covers. | | pbp_c_pos_outpt_coins_cov | string | Coinsurance coverage-scope code. Very sparse: 1,341 non-null, 4 distinct values. Qualifies what the coinsurance applies to. | | pbp_c_pos_outpt_coins_max_pct | double | Maximum coinsurance PERCENT (0-100, avg 27.8%). Same population rule as min. min=max when the group has a single flat coinsurance rate. | | pbp_c_pos_outpt_coins_min_pct | double | Minimum coinsurance PERCENT the member pays (0-100, avg 21.4%). Populated iff coins_yn='1' (exactly 31,013 non-null). A COST field. NULL = no coinsurance applies. | | pbp_c_pos_outpt_coins_yn | string | Does this group charge COINSURANCE? '1'=Yes (31,013), '2'=No (39,312), null (24). When '1', coins_min/max_pct are populated; when '2', they are NULL. | | pbp_c_pos_outpt_copay_max_amt | double | Maximum copay DOLLARS (0-9999.99, avg $79). Same population rule. A group can have BOTH a copay and a coinsurance (2,247 rows have both yn='1'); 8,667 rows have neither (full coverage / $0 / 'see other'). | | pbp_c_pos_outpt_copay_min_amt | double | Minimum copay DOLLARS the member pays (0-699, avg $62). Populated iff copay_yn='1' (32,892 non-null). A COST field. NULL = no copay. | | pbp_c_pos_outpt_copay_yn | string | Does this group charge a COPAY? '1'=Yes (32,892), '2'=No (37,433), null (24). When '1', copay_min/max_amt populated; when '2' they are NULL (verified 0 violations). | | pbp_c_pos_outpt_cost_share | string | Cost-share-structure enum: '1'/'2'/'3' (3 distinct), only 2,195 non-null. Encodes the cost-share arrangement type for the group; sparse, mostly NULL. | | pbp_c_pos_outpt_cs_coins_max | double | Combined-cost-share coinsurance max PERCENT (20-50). Only 93 non-null. | | pbp_c_pos_outpt_cs_coins_min | double | Combined-cost-share coinsurance min PERCENT (0-50). Only 93 non-null. Edge-case cost field. | | pbp_c_pos_outpt_cs_coins_yn | string | Secondary/combined-cost-share coinsurance flag. VERY sparse: null on 70,083 of 70,349 rows; '2'=173, '1'=93. Used only for rare combined copay+coinsurance designs. | | pbp_c_pos_outpt_cs_copay_max | double | Combined-cost-share copay max DOLLARS (20-70). Only 176 non-null. | | pbp_c_pos_outpt_cs_copay_min | double | Combined-cost-share copay min DOLLARS (0-45). Only 176 non-null. Edge-case cost field. | | pbp_c_pos_outpt_cs_copay_yn | string | Secondary/combined-cost-share copay flag. VERY sparse: null on 70,083 rows; '1'=176, '2'=90. | | pbp_c_pos_outpt_deduct_amt | double | Deductible DOLLARS (0-5000, avg $1,080). Populated iff deduct_yn='1' (216 non-null). A COST field; NULL = no deductible. | | pbp_c_pos_outpt_deduct_yn | string | Does this group have a DEDUCTIBLE? '2'=No (69,443), '1'=Yes (216), null (690). Deductibles are rare for POS outpatient. | | pbp_c_pos_outpt_maxplan_amt | double | Plan-coverage-maximum DOLLAR amount the PLAN will pay (15-500,000, avg $2,109). Populated iff maxplan_yn='1' (5,863 non-null). A benefit-LIMIT field (not a member cost). NULL = no plan max. NOTE: profiler wrongly included this in the grain key — it is a VALUE, not a key. | | pbp_c_pos_outpt_maxplan_cov | string | Plan-maximum coverage-scope code ('1','2','6'). EXTREMELY sparse: only 69 non-null. Profiler listed it in the key but it is near-empty. | | pbp_c_pos_outpt_maxplan_per | string | Period the plan-maximum applies over (code: '3' dominant=4,982, plus '1','2','4','5','6','7'). Populated with maxplan_yn='1'. '3' is the most common period basis (per-year/annual). | | pbp_c_pos_outpt_maxplan_per_d | string | Plan-maximum period detail. 100% NULL (0 non-null across all 70,349 rows) — a completely empty column. TRAP: profiler listed it as a grain key though it carries no data. | | pbp_c_pos_outpt_maxplan_yn | string | Does the plan cap its own coverage (a plan-coverage maximum / benefit limit) for this group? '2'=No (63,796), '1'=Yes (5,863), null (690). | | pbp_c_pos_outpt_mc_bencats | string | Semicolon-delimited list of CMS Medicare-Covered benefit-category codes this group's cost-share applies to (e.g. '7b;7d;7f;8a1;...'). 46,314 non-null. These codes (3-1, 7a, 8a1, 14e1...) map to specific outpatient service types in the CMS PBP benefit taxonomy. | | pbp_c_pos_outpt_nmc_bencats | string | Semicolon-delimited list of Non-Medicare-Covered (supplemental) benefit-category codes for the group. 24,980 non-null, 444 distinct lists. Same delimited code-list format as mc_bencats. | | observed_period | date | Vlada normalized observation period = Jan 1 of report_year (date). Equivalent to report_year; derived, redundant with effective_period_start. | | asserted_at | date | Vlada INGEST/parse date (date), only 2 values: 2026-05-16 (33,681 rows, parse_revision 1) and 2026-05-20 (36,668 rows, parse_revision 2). This is WHEN Vlada parsed the file, NOT a CMS provenance date — do not use as a benefit-effective date. | | effective_period_start | date | Benefit effective start = Jan 1 of report_year (date, 2007-01-01..2026-01-01). The primary temporal anchor; 20 distinct annual values. | | effective_period_end | date | Benefit effective end = Dec 31 of report_year (date). Together with start, bounds the plan year. | | cms_vintage_sequence | int | Sequence number (int 1-4) of the CMS re-release within a report_year, tracking quarterly republications. NOT an is_current flag — there is no is_current column on this table. | | parse_revision | int | Vlada parser revision (int): 1 (33,681 rows, parsed 2026-05-16) or 2 (36,668 rows, parsed 2026-05-20). Load-tracking metadata. | | parser_artifact_hash | string | SHA-256 of the parser code artifact that produced the row (provenance/reproducibility of the ETL, not of the source data). | | source_url | string | CMS source URL for the PBP zip the row came from (e.g. .../pbp-benefits-2019-q4.zip). Exactly 34 distinct = one per (report_year,quarter) snapshot. Lets you trace any value to the official CMS file. | | sha256_content_hash | string | SHA-256 of the source file content. Exactly 34 distinct (1:1 with source_url and with the 34 snapshots) — content-integrity / dedup key for the underlying CMS download. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_c_pos WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_c_pos")` first. # MA pbp section d `medicare_silver.pbp_section_d` · Medicare Advantage, Part D, Medicaid · status partial Section D: Part D plan-level benefit detail. 463 cols (widest single file). Pharma use case. **Grain.** One row = one Medicare Advantage / Part C plan-benefit-package SEGMENT, for one contract year, as captured in one quarterly PBP release — i.e. one (contract_id, plan_id, segment_id, plan-year, quarter). The MINIMAL verified key is contract_id + plan_id + segment_id + effective_period_start + quarter, which yields 201,488 distinct combinations against 201,597 total rows (99.95% unique; the ~109 residual collisions are all legacy 2002-2003 rows where segment_id='' and bid_id is NULL, a known data-quality wrinkle in pre-2007 data). Adding `version` does NOT reduce the count further, so version is redundant in the key. Each row carries that plan's Section-D content = plan-level deductibles and Maximum-Enrollee out-of-pocket (MOOP) limits. NOTE: a single plan-year can appear up to 4 times (once per quarterly re-release in 2018/2019/2023), so you must constrain to one quarter to get one-row-per-plan-year. **How to use it.** Benchmark MA plan out-of-pocket maximums for 2026: SELECT pbp_a_plan_type, round(avg(pbp_d_comb_max_enr_amt),0) avg_moop, max(pbp_d_comb_max_enr_amt) max_moop, count(*) plans FROM medicare_silver.pbp_section_d WHERE report_year=2026 AND quarter=1 AND pbp_d_comb_max_enr_amt_yn='1' GROUP BY pbp_a_plan_type ORDER BY plans DESC. Answers: what combined in+out-of-network MOOP do 2026 MA plans set, by plan type? (Local PPO ~$10,900; observed plan-level max $13,900.) Always pin quarter (use =1, or MAX(quarter) per year for the latest in-year revision) and join to pbp_section_a / the contract-plan dimension for plan names. For the medical deductible use pbp_d_ann_deduct_amt (gated by pbp_d_ann_deduct_yn='1'); do NOT use the bare pbp_d_deduct column, which is entirely NULL. **Traps.** - NOT Part D drugs. The 'D' is PBP Section D = plan deductibles + Maximum-Enrollee out-of-pocket (MOOP), for Medicare ADVANTAGE plans. Prescription-drug formulary/tier/coverage-gap data is in the SIBLING tables pbp_mrx, pbp_mrx_tier, pbp_mrx_gap_coverage (and Part B drugs in pbp_section_b15). Querying this table for drug costs returns nothing useful. - quarter is a MANDATORY grain dimension and silently inflates counts. Most years store only quarter=1, but 2018/2019/2023 store all 4 quarterly PBP re-releases (so each plan appears ~4x) and 2020/2022/2024 store partial sets. Without a quarter filter, a multi-year COUNT or AVG over-counts those years 3-4x. Use WHERE quarter=1 (or MAX(quarter) per plan-year) to get one row per plan. - No is_current / snapshot-active flag exists. Every retained quarterly release is its own row; you must do the 'pick one quarter' dedup yourself. effective_period_start, effective_period_end, observed_period and report_year are all just encodings of the plan YEAR (start=year-01-01, end=year-12-31), verified identical for all 201,597 rows — none of them is a publication/load timestamp. - bid_id looks like the natural key but is NULL for 8,425 legacy rows (years 2001-2006, before CMS assigned bid IDs) and is therefore unusable as a full-history key; for years >=2007 it equals contract_id+'_'+plan_id+'_'+segment_id. segment_id is an EMPTY STRING '' (not NULL) in those same legacy years. - Pervasive NULL-means-not-applicable, plus dead columns. _yn fields use 1=Yes / 2=No / NULL=not-applicable (commonly because the plan type doesn't use that field — e.g. HMO plans leave combined-MOOP pbp_d_comb_max_enr_amt NULL because their MOOP is in Section C). Many dollar columns are populated only when their gating _yn='1'. The bare pbp_d_deduct column is 100% NULL (a defined-but-unused legacy slot) — use pbp_d_ann_deduct_amt instead. The table is 627 columns wide mostly because of hundreds of near-empty per-benefit-line pbp_d_diff_deduct_* and 1-5 repeated pbp_d_combo_* cells. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage / Part C contract number (e.g. 'H0084','E5088','H0028'). Letter prefix encodes contract family: H/R = MA/Part C coordinated-care, E = employer/union group (EGWP), S = standalone PDP. 1,972 distinct values. With plan_id+segment_id forms the plan identity. Never NULL. | | plan_id | string | 3-digit Plan Benefit Package ID within a contract (e.g. '001','801','056'). A contract offers many plans. 656 distinct values. Never NULL. (contract_id, plan_id) = the public 'H#### / ###' plan you see in Medicare Plan Finder. | | segment_id | string | Sub-geography/segment of a plan that varies cost-sharing by service area ('0','1','2','3'...). 27 distinct. EMPTY STRING '' (not NULL) for legacy years 2001-2006 when CMS did not segment. Most plans are single-segment ('0'). | | version | double | PBP submission/amendment version for that plan-year (double, 0.0-27.0). Higher = later in-year resubmission. 0.0 for legacy 2001-2006. NOT needed in the grain key once quarter is included — it does not further split rows. Within a (plan, year, quarter) it is effectively constant. | | report_year | double | Contract/benefit year the package applies to (double, 2001.0-2026.0). Identical information to effective_period_start (= report_year-01-01) and observed_period for ALL 201,597 rows. This is the plan year, not a publication date. | | quarter | double | CRITICAL for grain. Which quarterly PBP re-release of that plan-year this row came from (1.0/2.0/3.0/4.0). Most years have only quarter=1, but 2018/2019/2023 carry all 4 quarters (so a plan appears ~4x) and 2020/2022/2024 carry partial sets. Distribution: Q1=114,185, Q2=30,867, Q3=25,220, Q4=31,325. You MUST filter to one quarter to get one-row-per-plan-year. | | bid_id | string | Concatenated key contract_id+'_'+plan_id+'_'+segment_id (e.g. 'H0104_010_2'). 23,191 distinct. NULL for 8,425 legacy rows (years 2001-2006, before CMS assigned bid IDs) — so it is UNUSABLE as a grain key across full history. For years >=2007 it equals the composite and is non-null. | | orgtype | string | CMS organization type code (string): '01' Local CCP (dominant, 177,840 rows), '08' Regional PPO, '04' PFFS, '11' MSA, '06' 1876 Cost, '05' Employer/Direct, '02' national PACE, etc. Pairs with pbp_a_plan_type. | | pbp_a_ben_cov | string | Benefit-coverage scope flag carried from PBP Section A: '1' = MA-only / medical (196,871 rows), '2' = MA-PD includes Part D drug coverage (4,384), NULL (342). High-level marker of whether the plan bundles drug coverage. | | pbp_a_plan_type | string | PBP plan-type code (string, from Section A): '01' HMO (101,596), '04' Local PPO (55,909), '02' HMOPOS/local PPO variant (20,114), '20' MSA (8,806), '09' PFFS (5,663), '31' Regional PPO (3,869), '18' (3,258), plus a long tail. Drives which Section-D fields are populated (PPO/PFFS/MSA types populate combined/OON MOOP; HMO often leaves them NULL). | | pbp_d_amt_opt_premium | double | Monthly OPTIONAL supplemental premium amount (double). Sparse: 320 non-null, avg $29.27, range $0-$95. The add-on premium for the optional supplemental benefit package (detailed in sibling pbp_section_d_opt). | | pbp_d_ann_deduct_14a_yn | string | | | pbp_d_ann_deduct_amt | double | Annual deductible dollar amount (double). Populated only when ann_deduct_yn='1' (7,941 non-null rows). Observed avg ~$683, range $0-$2,000. The combined medical deductible the enrollee pays before the plan starts paying. | | pbp_d_ann_deduct_amt_type | string | | | pbp_d_ann_deduct_bens | string | | | pbp_d_ann_deduct_comb_type | string | | | pbp_d_ann_deduct_inn_mc_cats | string | | | pbp_d_ann_deduct_inn_mc_yn | string | | | pbp_d_ann_deduct_inn_nmc_cats | string | | | pbp_d_ann_deduct_inn_nmc_yn | string | | | pbp_d_ann_deduct_oon_nmc_cats | string | | | pbp_d_ann_deduct_oon_nmc_yn | string | | | pbp_d_ann_deduct_yn | string | Does the plan have an ANNUAL plan-level deductible? '1'=Yes (24,589), '2'=No (26,863), NULL=not applicable (150,145, mostly HMO/legacy). Standard CMS _yn convention: 1=Yes, 2=No, NULL=not asked. | | pbp_d_balbill_ded_paid_yn | string | | | pbp_d_balbill_ded_yn | string | | | pbp_d_balbill_max_pct | double | | | pbp_d_balbill_min_pct | double | | | pbp_d_balbill_oopc_max_paid_yn | string | | | pbp_d_balbill_oopc_max_yn | string | | | pbp_d_balbill_prov_cats | string | | | pbp_d_balbill_yn | string | | | pbp_d_comb_deduct_all_svcs_yn | string | | | pbp_d_comb_deduct_amt | double | COMBINED deductible amount spanning multiple service categories (double). Populated only when pbp_d_comb_deduct_yn='1' (703 non-null). Avg ~$543, max $3,000. Companion to a large family of pbp_d_comb_deduct_* flags (inn/oon, medical/non-medical, services list). | | pbp_d_comb_deduct_bens | string | | | pbp_d_comb_deduct_inn_m_cats | string | | | pbp_d_comb_deduct_inn_m_yn | string | | | pbp_d_comb_deduct_inn_nm_cats | string | | | pbp_d_comb_deduct_inn_nm_yn | string | | | pbp_d_comb_deduct_oon_m_cats | string | | | pbp_d_comb_deduct_oon_m_yn | string | | | pbp_d_comb_deduct_oon_nm_cats | string | | | pbp_d_comb_deduct_oon_nm_yn | string | | | pbp_d_comb_deduct_partb_yn | string | | | pbp_d_comb_deduct_services | string | | | pbp_d_comb_deduct_type | string | | | pbp_d_comb_deduct_yn | string | | | pbp_d_comb_max_enr_all_svcs_yn | string | | | pbp_d_comb_max_enr_amt | double | HEADLINE COST FIELD: the COMBINED Maximum Enrollee out-of-pocket / MOOP (in+out-of-network combined), double. Populated when pbp_d_comb_max_enr_amt_yn='1' (61,834 non-null). Tracks real MA MOOP: avg ~$8,993 overall, rising by year ($9,142 in 2022 -> $10,569 in 2026), max $13,900 in 2026. NULL for 121,538 rows (mostly HMO, which carry their in-network MOOP in Section C instead). | | pbp_d_comb_max_enr_amt_type | string | | | pbp_d_comb_max_enr_amt_yn | string | Whether a combined (in+OON) MOOP applies: '1'=Yes (80,059), '2'=No (18,224), NULL (121,538). The gate for whether pbp_d_comb_max_enr_amt is populated. | | pbp_d_comb_max_enr_inn_m_cats | string | | | pbp_d_comb_max_enr_inn_m_yn | string | | | pbp_d_comb_max_enr_inn_mcat_ex | string | | | pbp_d_comb_max_enr_inn_nm_cats | string | | | pbp_d_comb_max_enr_inn_nm_yn | string | | | pbp_d_comb_max_enr_inn_nmcatex | string | | | pbp_d_comb_max_enr_mc_only_amt | double | | | pbp_d_comb_max_enr_oon_m_cats | string | | | pbp_d_comb_max_enr_oon_m_yn | string | | | pbp_d_comb_max_enr_oon_mcat_ex | string | | | pbp_d_comb_max_enr_oon_nm_cats | string | | | pbp_d_comb_max_enr_oon_nm_yn | string | | | pbp_d_comb_max_enr_oon_nmcatex | string | | | pbp_d_comb_max_enr_oopc_bens | string | | | pbp_d_comb_max_enr_period | string | | | pbp_d_comb_max_enr_services | string | | | pbp_d_comb_max_enr_type | string | | | pbp_d_comb_max_mc_only_flag | string | | | pbp_d_comb_mc_ben_only_amt | double | | | pbp_d_combo_enrollee_lim_yn_1 | string | | | pbp_d_combo_enrollee_lim_yn_2 | string | | | pbp_d_combo_enrollee_lim_yn_3 | string | | | pbp_d_combo_enrollee_lim_yn_4 | string | | | pbp_d_combo_enrollee_lim_yn_5 | string | | | pbp_d_combo_grp_name_1 | string | | | pbp_d_combo_grp_name_2 | string | | | pbp_d_combo_grp_name_3 | string | | | pbp_d_combo_grp_name_4 | string | | | pbp_d_combo_grp_name_5 | string | | | pbp_d_combo_max_plan_ben_amt_1 | double | | | pbp_d_combo_max_plan_ben_amt_2 | double | | | pbp_d_combo_max_plan_ben_amt_3 | double | | | pbp_d_combo_max_plan_ben_amt_4 | double | | | pbp_d_combo_max_plan_ben_amt_5 | double | | | pbp_d_combo_max_plan_ben_yn_1 | string | | | pbp_d_combo_max_plan_ben_yn_2 | string | | | pbp_d_combo_max_plan_ben_yn_3 | string | | | pbp_d_combo_max_plan_ben_yn_4 | string | | | pbp_d_combo_max_plan_ben_yn_5 | string | | | pbp_d_combo_max_plan_perdoth_1 | string | | | pbp_d_combo_max_plan_perdoth_2 | string | | | pbp_d_combo_max_plan_perdoth_3 | string | | | pbp_d_combo_max_plan_period_1 | string | | | pbp_d_combo_max_plan_period_2 | string | | | pbp_d_combo_max_plan_period_3 | string | | | pbp_d_combo_max_plan_period_4 | string | | | pbp_d_combo_max_plan_period_5 | string | | | pbp_d_combo_max_plan_prd_d_1 | string | | | pbp_d_combo_max_plan_prd_d_2 | string | | | pbp_d_combo_max_plan_prd_d_3 | string | | | pbp_d_combo_max_plan_prd_d_4 | string | | | pbp_d_combo_max_plan_prd_d_5 | string | | | pbp_d_combo_mode_1 | string | | | pbp_d_combo_mode_2 | string | | | pbp_d_combo_mode_3 | string | | | pbp_d_combo_mode_4 | string | | | pbp_d_combo_mode_5 | string | | | pbp_d_combo_mode_other_1 | string | | | pbp_d_combo_mode_other_2 | string | | | pbp_d_combo_mode_other_3 | string | | | pbp_d_combo_mode_other_4 | string | | | pbp_d_combo_mode_other_5 | string | | | pbp_d_combo_nmc_cats_1 | string | | | pbp_d_combo_nmc_cats_2 | string | | | pbp_d_combo_nmc_cats_3 | string | | | pbp_d_combo_nmc_cats_4 | string | | | pbp_d_combo_nmc_cats_5 | string | | | pbp_d_combo_num_grps | string | | | pbp_d_combo_share_visit_amt_1 | double | | | pbp_d_combo_share_visit_amt_2 | double | | | pbp_d_combo_share_visit_amt_3 | double | | | pbp_d_combo_share_visit_amt_4 | double | | | pbp_d_combo_share_visit_amt_5 | double | | | pbp_d_combo_share_visit_yn_1 | string | | | pbp_d_combo_share_visit_yn_2 | string | | | pbp_d_combo_share_visit_yn_3 | string | | | pbp_d_combo_share_visit_yn_4 | string | | | pbp_d_combo_share_visit_yn_5 | string | | | pbp_d_combo_shr_vst_period_1 | string | | | pbp_d_combo_shr_vst_period_2 | string | | | pbp_d_combo_shr_vst_period_3 | string | | | pbp_d_combo_shr_vst_period_4 | string | | | pbp_d_combo_shr_vst_period_5 | string | | | pbp_d_combo_supp_ben_yn | string | | | pbp_d_deduct | double | | | pbp_d_deduct_14c_amt | double | | | pbp_d_deduct_acupunc_amt | double | | | pbp_d_deduct_all_services_yn | string | | | pbp_d_deduct_ape_amt | double | | | pbp_d_deduct_chiro_amt | double | | | pbp_d_deduct_compdental_amt | double | | | pbp_d_deduct_cprs_amt | double | | | pbp_d_deduct_dsnp_his_amt | double | | | pbp_d_deduct_eyeexam_amt | double | | | pbp_d_deduct_eyewear_amt | double | | | pbp_d_deduct_hearaid_amt | double | | | pbp_d_deduct_hearexam_amt | double | | | pbp_d_deduct_iha_amt | double | | | pbp_d_deduct_ihp_amt | double | | | pbp_d_deduct_meal_amt | double | | | pbp_d_deduct_obs_amt | double | | | pbp_d_deduct_otc_amt | double | | | pbp_d_deduct_other1_amt | double | | | pbp_d_deduct_other2_amt | double | | | pbp_d_deduct_other3_amt | double | | | pbp_d_deduct_pod_amt | double | | | pbp_d_deduct_prevdental_amt | double | | | pbp_d_deduct_services | string | | | pbp_d_deduct_snf_amt | double | | | pbp_d_deduct_trans_amt | double | | | pbp_d_deduct_type | string | | | pbp_d_deduct_weuc_amt | double | | | pbp_d_deduct_yn | string | | | pbp_d_diff_deduct_10a1_amt | double | | | pbp_d_diff_deduct_10a2_amt | double | | | pbp_d_diff_deduct_10a_amt | double | | | pbp_d_diff_deduct_10b1_amt | double | | | pbp_d_diff_deduct_10b2_amt | double | | | pbp_d_diff_deduct_10b_amt | double | | | pbp_d_diff_deduct_11a_amt | double | | | pbp_d_diff_deduct_11b1_amt | double | | | pbp_d_diff_deduct_11b2_amt | double | | | pbp_d_diff_deduct_11b_amt | double | | | pbp_d_diff_deduct_11c1_amt | double | | | pbp_d_diff_deduct_11c2_amt | double | | | pbp_d_diff_deduct_11c_amt | double | | | pbp_d_diff_deduct_12_amt | double | | | pbp_d_diff_deduct_13a_amt | double | | | pbp_d_diff_deduct_13b_amt | double | | | pbp_d_diff_deduct_13c_amt | double | | | pbp_d_diff_deduct_13d_amt | double | | | pbp_d_diff_deduct_13e_amt | double | | | pbp_d_diff_deduct_13f_amt | double | | | pbp_d_diff_deduct_13g_amt | double | | | pbp_d_diff_deduct_14a_amt | double | | | pbp_d_diff_deduct_14b_amt | double | | | pbp_d_diff_deduct_14c10_amt | double | | | pbp_d_diff_deduct_14c11_amt | double | | | pbp_d_diff_deduct_14c12_amt | double | | | pbp_d_diff_deduct_14c13_amt | double | | | pbp_d_diff_deduct_14c14_amt | double | | | pbp_d_diff_deduct_14c15_amt | double | | | pbp_d_diff_deduct_14c16_amt | double | | | pbp_d_diff_deduct_14c17_amt | double | | | pbp_d_diff_deduct_14c18_amt | double | | | pbp_d_diff_deduct_14c19_amt | double | | | pbp_d_diff_deduct_14c1_amt | double | | | pbp_d_diff_deduct_14c20_amt | double | | | pbp_d_diff_deduct_14c21_amt | double | | | pbp_d_diff_deduct_14c22_amt | double | | | pbp_d_diff_deduct_14c2_amt | double | | | pbp_d_diff_deduct_14c3_amt | double | | | pbp_d_diff_deduct_14c4_amt | double | | | pbp_d_diff_deduct_14c5_amt | double | | | pbp_d_diff_deduct_14c6_amt | double | | | pbp_d_diff_deduct_14c7_amt | double | | | pbp_d_diff_deduct_14c8_amt | double | | | pbp_d_diff_deduct_14c9_amt | double | | | pbp_d_diff_deduct_14c_amt | double | | | pbp_d_diff_deduct_14d_amt | double | | | pbp_d_diff_deduct_14e1_amt | double | | | pbp_d_diff_deduct_14e2_amt | double | | | pbp_d_diff_deduct_14e3_amt | double | | | pbp_d_diff_deduct_14e4_amt | double | | | pbp_d_diff_deduct_14e5_amt | double | | | pbp_d_diff_deduct_14e6_amt | double | | | pbp_d_diff_deduct_14e_amt | double | | | pbp_d_diff_deduct_14f_amt | double | | | pbp_d_diff_deduct_14g_amt | double | | | pbp_d_diff_deduct_14h_amt | double | | | pbp_d_diff_deduct_14i_amt | double | | | pbp_d_diff_deduct_14j_amt | double | | | pbp_d_diff_deduct_15_1_amt | double | | | pbp_d_diff_deduct_15_2_amt | double | | | pbp_d_diff_deduct_15_3_amt | double | | | pbp_d_diff_deduct_15_amt | double | | | pbp_d_diff_deduct_15_nmc_amt | double | | | pbp_d_diff_deduct_16a1_amt | double | | | pbp_d_diff_deduct_16a2_amt | double | | | pbp_d_diff_deduct_16a3_amt | double | | | pbp_d_diff_deduct_16a4_amt | double | | | pbp_d_diff_deduct_16a_amt | double | | | pbp_d_diff_deduct_16a_n_amt | double | | | pbp_d_diff_deduct_16b1_amt | double | | | pbp_d_diff_deduct_16b1_n_amt | double | | | pbp_d_diff_deduct_16b2_amt | double | | | pbp_d_diff_deduct_16b2_n_amt | double | | | pbp_d_diff_deduct_16b3_amt | double | | | pbp_d_diff_deduct_16b3_n_amt | double | | | pbp_d_diff_deduct_16b4_amt | double | | | pbp_d_diff_deduct_16b4_n_amt | double | | | pbp_d_diff_deduct_16b5_amt | double | | | pbp_d_diff_deduct_16b5_n_amt | double | | | pbp_d_diff_deduct_16b6_amt | double | | | pbp_d_diff_deduct_16b6_n_amt | double | | | pbp_d_diff_deduct_16b7_amt | double | | | pbp_d_diff_deduct_16b_amt | double | | | pbp_d_diff_deduct_16c10_n_amt | double | | | pbp_d_diff_deduct_16c1_n_amt | double | | | pbp_d_diff_deduct_16c2_n_amt | double | | | pbp_d_diff_deduct_16c3_n_amt | double | | | pbp_d_diff_deduct_16c4_n_amt | double | | | pbp_d_diff_deduct_16c5_n_amt | double | | | pbp_d_diff_deduct_16c6_n_amt | double | | | pbp_d_diff_deduct_16c7_n_amt | double | | | pbp_d_diff_deduct_16c8_n_amt | double | | | pbp_d_diff_deduct_16c9_n_amt | double | | | pbp_d_diff_deduct_17a1_amt | double | | | pbp_d_diff_deduct_17a2_amt | double | | | pbp_d_diff_deduct_17a_amt | double | | | pbp_d_diff_deduct_17b1_amt | double | | | pbp_d_diff_deduct_17b2_amt | double | | | pbp_d_diff_deduct_17b3_amt | double | | | pbp_d_diff_deduct_17b4_amt | double | | | pbp_d_diff_deduct_17b5_amt | double | | | pbp_d_diff_deduct_17b_amt | double | | | pbp_d_diff_deduct_18a1_amt | double | | | pbp_d_diff_deduct_18a2_amt | double | | | pbp_d_diff_deduct_18a_amt | double | | | pbp_d_diff_deduct_18b1_amt | double | | | pbp_d_diff_deduct_18b2_amt | double | | | pbp_d_diff_deduct_18b3_amt | double | | | pbp_d_diff_deduct_18b4_amt | double | | | pbp_d_diff_deduct_18b_amt | double | | | pbp_d_diff_deduct_18c_amt | double | | | pbp_d_diff_deduct_1a1_amt | double | | | pbp_d_diff_deduct_1a1_t2_amt | double | | | pbp_d_diff_deduct_1a1_t3_amt | double | | | pbp_d_diff_deduct_1a2_amt | double | | | pbp_d_diff_deduct_1a3_amt | double | | | pbp_d_diff_deduct_1a_amt | double | | | pbp_d_diff_deduct_1a_b_amt | double | | | pbp_d_diff_deduct_1a_t1_amt | double | | | pbp_d_diff_deduct_1a_t2_amt | double | | | pbp_d_diff_deduct_1a_t3_amt | double | | | pbp_d_diff_deduct_1b1_amt | double | | | pbp_d_diff_deduct_1b1_t2_amt | double | | | pbp_d_diff_deduct_1b1_t3_amt | double | | | pbp_d_diff_deduct_1b2_amt | double | | | pbp_d_diff_deduct_1b_amt | double | | | pbp_d_diff_deduct_1b_b_amt | double | | | pbp_d_diff_deduct_1b_t1_amt | double | | | pbp_d_diff_deduct_1b_t2_amt | double | | | pbp_d_diff_deduct_1b_t3_amt | double | | | pbp_d_diff_deduct_20_amt | double | | | pbp_d_diff_deduct_2_1_amt | double | | | pbp_d_diff_deduct_2_1_t2_amt | double | | | pbp_d_diff_deduct_2_1_t3_amt | double | | | pbp_d_diff_deduct_2_2_amt | double | | | pbp_d_diff_deduct_2_amt | double | | | pbp_d_diff_deduct_2_b_amt | double | | | pbp_d_diff_deduct_2_t1_amt | double | | | pbp_d_diff_deduct_2_t2_amt | double | | | pbp_d_diff_deduct_2_t3_amt | double | | | pbp_d_diff_deduct_3_1_amt | double | | | pbp_d_diff_deduct_3_1_nmc_amt | double | | | pbp_d_diff_deduct_3_2_amt | double | | | pbp_d_diff_deduct_3_2_nmc_amt | double | | | pbp_d_diff_deduct_3_3_amt | double | | | pbp_d_diff_deduct_3_3_nmc_amt | double | | | pbp_d_diff_deduct_3_4_amt | double | | | pbp_d_diff_deduct_3_4_nmc_amt | double | | | pbp_d_diff_deduct_3_amt | double | | | pbp_d_diff_deduct_4a_amt | double | | | pbp_d_diff_deduct_4b_amt | double | | | pbp_d_diff_deduct_4c1_amt | double | | | pbp_d_diff_deduct_4c2_amt | double | | | pbp_d_diff_deduct_4c3_amt | double | | | pbp_d_diff_deduct_4c_amt | double | | | pbp_d_diff_deduct_5_amt | double | | | pbp_d_diff_deduct_5b_amt | double | | | pbp_d_diff_deduct_6_amt | double | | | pbp_d_diff_deduct_7a_amt | double | | | pbp_d_diff_deduct_7b1_amt | double | | | pbp_d_diff_deduct_7b2_amt | double | | | pbp_d_diff_deduct_7b_amt | double | | | pbp_d_diff_deduct_7c_amt | double | | | pbp_d_diff_deduct_7d_amt | double | | | pbp_d_diff_deduct_7e1_amt | double | | | pbp_d_diff_deduct_7e2_amt | double | | | pbp_d_diff_deduct_7e_amt | double | | | pbp_d_diff_deduct_7f_amt | double | | | pbp_d_diff_deduct_7f_nmc_amt | double | | | pbp_d_diff_deduct_7g_amt | double | | | pbp_d_diff_deduct_7h1_amt | double | | | pbp_d_diff_deduct_7h2_amt | double | | | pbp_d_diff_deduct_7h_amt | double | | | pbp_d_diff_deduct_7i_amt | double | | | pbp_d_diff_deduct_7j_amt | double | | | pbp_d_diff_deduct_7k_amt | double | | | pbp_d_diff_deduct_8a1_amt | double | | | pbp_d_diff_deduct_8a2_amt | double | | | pbp_d_diff_deduct_8a_amt | double | | | pbp_d_diff_deduct_8b1_amt | double | | | pbp_d_diff_deduct_8b2_amt | double | | | pbp_d_diff_deduct_8b3_amt | double | | | pbp_d_diff_deduct_8b_amt | double | | | pbp_d_diff_deduct_9a1_amt | double | | | pbp_d_diff_deduct_9a2_amt | double | | | pbp_d_diff_deduct_9a_amt | double | | | pbp_d_diff_deduct_9b_amt | double | | | pbp_d_diff_deduct_9c1_amt | double | | | pbp_d_diff_deduct_9c2_amt | double | | | pbp_d_diff_deduct_9c_amt | double | | | pbp_d_diff_deduct_9d_amt | double | | | pbp_d_diff_deduct_9d_nmc_amt | double | | | pbp_d_diff_deduct_cats | string | | | pbp_d_diff_deduct_yn | string | | | pbp_d_in_coins_amt | double | | | pbp_d_in_coins_period | string | | | pbp_d_in_coins_yn | string | | | pbp_d_inn_deduct_all_svcs_yn | string | | | pbp_d_inn_deduct_amt | double | | | pbp_d_inn_deduct_bens | string | | | pbp_d_inn_deduct_m_cats | string | | | pbp_d_inn_deduct_m_yn | string | | | pbp_d_inn_deduct_nm_cats | string | | | pbp_d_inn_deduct_nm_yn | string | | | pbp_d_inn_deduct_partb_yn | string | | | pbp_d_inn_deduct_services | string | | | pbp_d_inn_deduct_type | string | | | pbp_d_inn_deduct_yn | string | | | pbp_d_inn_max_enr_m_cat_ex | string | | | pbp_d_inn_max_enr_m_cats | string | | | pbp_d_inn_max_enr_m_yn | string | | | pbp_d_inn_max_enr_nm_cat_ex | string | | | pbp_d_inn_max_enr_nm_cats | string | | | pbp_d_inn_max_enr_nm_yn | string | | | pbp_d_inn_max_enr_oopc_bens | string | | | pbp_d_inn_maxplan_nm_cats | string | | | pbp_d_inn_maxplan_nm_yn | string | | | pbp_d_inn_mc_ben_only_amt | double | | | pbp_d_mand_deduct_10b1_amt | double | | | pbp_d_mand_deduct_10b2_amt | double | | | pbp_d_mand_deduct_14c10_amt | double | | | pbp_d_mand_deduct_14c11_amt | double | | | pbp_d_mand_deduct_14c12_amt | double | | | pbp_d_mand_deduct_14c13_amt | double | | | pbp_d_mand_deduct_14c14_amt | double | | | pbp_d_mand_deduct_14c15_amt | double | | | pbp_d_mand_deduct_14c16_amt | double | | | pbp_d_mand_deduct_14c17_amt | double | | | pbp_d_mand_deduct_14c18_amt | double | | | pbp_d_mand_deduct_14c19_amt | double | | | pbp_d_mand_deduct_14c1_amt | double | | | pbp_d_mand_deduct_14c20_amt | double | | | pbp_d_mand_deduct_14c21_amt | double | | | pbp_d_mand_deduct_14c22_amt | double | | | pbp_d_mand_deduct_14c2_amt | double | | | pbp_d_mand_deduct_14c3_amt | double | | | pbp_d_mand_deduct_14c4_amt | double | | | pbp_d_mand_deduct_14c5_amt | double | | | pbp_d_mand_deduct_14c6_amt | double | | | pbp_d_mand_deduct_14c7_amt | double | | | pbp_d_mand_deduct_14c8_amt | double | | | pbp_d_mand_deduct_14c9_amt | double | | | pbp_d_mand_deduct_15_1_amt | double | | | pbp_d_mand_deduct_15_2_amt | double | | | pbp_d_mand_deduct_15_3_amt | double | | | pbp_d_mand_deduct_16a1_amt | double | | | pbp_d_mand_deduct_16a2_amt | double | | | pbp_d_mand_deduct_16a3_amt | double | | | pbp_d_mand_deduct_16a4_amt | double | | | pbp_d_mand_deduct_16b1_amt | double | | | pbp_d_mand_deduct_16b1_n_amt | double | | | pbp_d_mand_deduct_16b2_amt | double | | | pbp_d_mand_deduct_16b2_n_amt | double | | | pbp_d_mand_deduct_16b3_amt | double | | | pbp_d_mand_deduct_16b3_n_amt | double | | | pbp_d_mand_deduct_16b4_amt | double | | | pbp_d_mand_deduct_16b4_n_amt | double | | | pbp_d_mand_deduct_16b5_amt | double | | | pbp_d_mand_deduct_16b5_n_amt | double | | | pbp_d_mand_deduct_16b6_amt | double | | | pbp_d_mand_deduct_16b6_n_amt | double | | | pbp_d_mand_deduct_16b7_amt | double | | | pbp_d_mand_deduct_16c10_n_amt | double | | | pbp_d_mand_deduct_16c1_n_amt | double | | | pbp_d_mand_deduct_16c2_n_amt | double | | | pbp_d_mand_deduct_16c3_n_amt | double | | | pbp_d_mand_deduct_16c4_n_amt | double | | | pbp_d_mand_deduct_16c5_n_amt | double | | | pbp_d_mand_deduct_16c6_n_amt | double | | | pbp_d_mand_deduct_16c7_n_amt | double | | | pbp_d_mand_deduct_16c8_n_amt | double | | | pbp_d_mand_deduct_16c9_n_amt | double | | | pbp_d_mand_deduct_17a1_amt | double | | | pbp_d_mand_deduct_17a2_amt | double | | | pbp_d_mand_deduct_17b1_amt | double | | | pbp_d_mand_deduct_17b2_amt | double | | | pbp_d_mand_deduct_17b3_amt | double | | | pbp_d_mand_deduct_17b4_amt | double | | | pbp_d_mand_deduct_17b5_amt | double | | | pbp_d_mand_deduct_18a1_amt | double | | | pbp_d_mand_deduct_18a2_amt | double | | | pbp_d_mand_deduct_18b1_amt | double | | | pbp_d_mand_deduct_18b2_amt | double | | | pbp_d_mand_deduct_18b3_amt | double | | | pbp_d_mand_deduct_18b4_amt | double | | | pbp_d_mand_deduct_18c_amt | double | | | pbp_d_mand_deduct_1a1_amt | double | | | pbp_d_mand_deduct_1a2_amt | double | | | pbp_d_mand_deduct_1a3_amt | double | | | pbp_d_mand_deduct_1b1_amt | double | | | pbp_d_mand_deduct_1b2_amt | double | | | pbp_d_mand_deduct_2_1_amt | double | | | pbp_d_mand_deduct_2_2_amt | double | | | pbp_d_mand_deduct_3_1_amt | double | | | pbp_d_mand_deduct_3_2_amt | double | | | pbp_d_mand_deduct_3_3_amt | double | | | pbp_d_mand_deduct_3_4_amt | double | | | pbp_d_mand_deduct_4c1_amt | double | | | pbp_d_mand_deduct_4c2_amt | double | | | pbp_d_mand_deduct_4c3_amt | double | | | pbp_d_mand_deduct_7b1_amt | double | | | pbp_d_mand_deduct_7b2_amt | double | | | pbp_d_max_plan_ben_all_svcs_yn | string | | | pbp_d_max_plan_ben_cov | double | | | pbp_d_max_plan_ben_cov_pos | double | | | pbp_d_max_plan_ben_cov_pos_yn | string | | | pbp_d_max_plan_ben_cov_yn | string | | | pbp_d_max_plan_ben_services | string | | | pbp_d_max_plan_bens | string | | | pbp_d_max_plan_period | string | | | pbp_d_max_plan_period_d | string | | | pbp_d_max_plan_period_pos | string | | | pbp_d_maxenr_oopc_amt | double | | | pbp_d_maxenr_oopc_bens | string | | | pbp_d_maxenr_oopc_m_cats | string | | | pbp_d_maxenr_oopc_m_cats_yn | string | | | pbp_d_maxenr_oopc_nm_cats | string | | | pbp_d_maxenr_oopc_nm_cats_yn | string | | | pbp_d_maxenr_oopc_type | string | | | pbp_d_maxenr_oopc_yn | string | | | pbp_d_mco_pay_reduct_amt | double | | | pbp_d_mco_pay_reduct_yn | string | | | pbp_d_mmp_medcaid_bendesc_cats | string | | | pbp_d_mmp_nm_yn | string | | | pbp_d_mmp_plancov_bendesc_cats | string | | | pbp_d_mplusc_bonly_premium | double | | | pbp_d_mplusc_premium | double | | | pbp_d_msa_annual_amt | double | | | pbp_d_msa_ded_amt | double | | | pbp_d_nmc_deduct_cats | string | | | pbp_d_nmc_deduct_yn | string | | | pbp_d_non_deduct_amt | double | | | pbp_d_non_deduct_bens | string | | | pbp_d_non_deduct_m_cats | string | | | pbp_d_non_deduct_m_yn | string | | | pbp_d_non_deduct_nm_cats | string | | | pbp_d_non_deduct_nm_yn | string | | | pbp_d_non_deduct_partb_yn | string | | | pbp_d_non_deduct_yn | string | | | pbp_d_non_maxplan_amt | double | | | pbp_d_non_maxplan_nm_cats | string | | | pbp_d_non_maxplan_nm_yn | string | | | pbp_d_non_maxplan_per | string | | | pbp_d_non_maxplan_per_d | string | | | pbp_d_non_maxplan_yn | string | | | pbp_d_oon_deduct_all_svcs_yn | string | | | pbp_d_oon_deduct_amt | double | | | pbp_d_oon_deduct_bens | string | | | pbp_d_oon_deduct_m_cats | string | | | pbp_d_oon_deduct_m_yn | string | | | pbp_d_oon_deduct_nm_cats | string | | | pbp_d_oon_deduct_nm_yn | string | | | pbp_d_oon_deduct_partb_yn | string | | | pbp_d_oon_deduct_services | string | | | pbp_d_oon_deduct_type | string | | | pbp_d_oon_deduct_yn | string | | | pbp_d_oon_max_enr_m_cat_ex | string | | | pbp_d_oon_max_enr_m_cats | string | | | pbp_d_oon_max_enr_m_yn | string | | | pbp_d_oon_max_enr_nm_cat_ex | string | | | pbp_d_oon_max_enr_nm_cats | string | | | pbp_d_oon_max_enr_nm_yn | string | | | pbp_d_oon_max_enr_oopc_amt | double | | | pbp_d_oon_max_enr_oopc_bens | string | | | pbp_d_oon_max_enr_oopc_type | string | | | pbp_d_oon_max_enr_oopc_yn | string | | | pbp_d_oon_maxplan_nm_cats | string | | | pbp_d_oon_maxplan_nm_yn | string | | | pbp_d_oon_mc_ben_only_amt | double | | | pbp_d_opt_identifier | string | | | pbp_d_out_coins_amt | double | | | pbp_d_out_coins_period | string | | | pbp_d_out_coins_yn | string | | | pbp_d_out_pocket_all_svcs_yn | string | | | pbp_d_out_pocket_amt | double | | | pbp_d_out_pocket_amt_pos | double | | | pbp_d_out_pocket_amt_pos_yn | string | | | pbp_d_out_pocket_amt_type | string | | | pbp_d_out_pocket_amt_yn | string | | | pbp_d_out_pocket_mc_only_amt | double | | | pbp_d_out_pocket_mc_only_flag | string | | | pbp_d_out_pocket_period | string | | | pbp_d_out_pocket_period_pos | string | | | pbp_d_out_pocket_services | string | | | pbp_d_out_pocket_type | string | | | pbp_d_partb_prem_reduct_amt | double | | | pbp_d_partb_prem_reduct_yn | string | | | pbp_d_partb_premium_reduce_amt | double | | | pbp_d_partb_reduct_amt_calc | double | | | pbp_d_prev_svcs_pre_ded_cats | string | | | pbp_d_prev_svcs_pre_ded_yn | string | | | pbp_d_prev_svcs_vary_yn | string | | | pbp_d_rics_app_ded_yn_1 | string | | | pbp_d_rics_app_ded_yn_2 | string | | | pbp_d_rics_app_ded_yn_3 | string | | | pbp_d_rics_app_ded_yn_4 | string | | | pbp_d_rics_app_ded_yn_5 | string | | | pbp_d_rics_cats_ehc_1 | string | | | pbp_d_rics_cats_ehc_2 | string | | | pbp_d_rics_cats_ehc_3 | string | | | pbp_d_rics_cats_ehc_4 | string | | | pbp_d_rics_cats_ehc_5 | string | | | pbp_d_rics_cnt | string | | | pbp_d_rics_comb_pkg_num_1 | string | | | pbp_d_rics_comb_pkg_num_2 | string | | | pbp_d_rics_comb_pkg_num_3 | string | | | pbp_d_rics_comb_pkg_num_4 | string | | | pbp_d_rics_comb_pkg_num_5 | string | | | pbp_d_rics_comb_shr_yn_1 | string | | | pbp_d_rics_comb_shr_yn_2 | string | | | pbp_d_rics_comb_shr_yn_3 | string | | | pbp_d_rics_comb_shr_yn_4 | string | | | pbp_d_rics_comb_shr_yn_5 | string | | | pbp_d_rics_grp_name_1 | string | | | pbp_d_rics_grp_name_2 | string | | | pbp_d_rics_grp_name_3 | string | | | pbp_d_rics_grp_name_4 | string | | | pbp_d_rics_grp_name_5 | string | | | pbp_d_rics_max_bene_amt_1 | double | | | pbp_d_rics_max_bene_amt_2 | double | | | pbp_d_rics_max_bene_amt_3 | double | | | pbp_d_rics_max_bene_amt_4 | double | | | pbp_d_rics_max_bene_amt_5 | double | | | pbp_d_rics_mc_cats_1 | string | | | pbp_d_rics_mc_cats_2 | string | | | pbp_d_rics_mc_cats_3 | string | | | pbp_d_rics_mc_cats_4 | string | | | pbp_d_rics_mc_cats_5 | string | | | pbp_d_rics_mod_1 | string | | | pbp_d_rics_mod_1_d | string | | | pbp_d_rics_mod_2 | string | | | pbp_d_rics_mod_2_d | string | | | pbp_d_rics_mod_3 | string | | | pbp_d_rics_mod_3_d | string | | | pbp_d_rics_mod_4 | string | | | pbp_d_rics_mod_4_d | string | | | pbp_d_rics_mod_5 | string | | | pbp_d_rics_mod_5_d | string | | | pbp_d_rics_nmc_cats_1 | string | | | pbp_d_rics_nmc_cats_2 | string | | | pbp_d_rics_nmc_cats_3 | string | | | pbp_d_rics_nmc_cats_4 | string | | | pbp_d_rics_nmc_cats_5 | string | | | pbp_d_rics_period_1 | string | | | pbp_d_rics_period_2 | string | | | pbp_d_rics_period_3 | string | | | pbp_d_rics_period_4 | string | | | pbp_d_rics_period_5 | string | | | pbp_d_rics_period_d_1 | string | | | pbp_d_rics_period_d_2 | string | | | pbp_d_rics_period_d_3 | string | | | pbp_d_rics_period_d_4 | string | | | pbp_d_rics_period_d_5 | string | | | pbp_d_rics_yn | 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 | | | pbp_d_combo_19b_lim_extnd_yn_1 | string | | | pbp_d_combo_19b_lim_extnd_yn_2 | string | | | pbp_d_combo_19b_lim_extnd_yn_3 | string | | | pbp_d_combo_19b_lim_extnd_yn_4 | string | | | pbp_d_combo_19b_lim_extnd_yn_5 | string | | | pbp_d_combo_19b_max_extnd_yn_1 | string | | | pbp_d_combo_19b_max_extnd_yn_2 | string | | | pbp_d_combo_19b_max_extnd_yn_3 | string | | | pbp_d_combo_19b_max_extnd_yn_4 | string | | | pbp_d_combo_19b_max_extnd_yn_5 | string | | | pbp_d_combo_19b_ssbci_nm_cats_1 | string | | | pbp_d_combo_19b_ssbci_nm_cats_2 | string | | | pbp_d_combo_19b_ssbci_nm_cats_3 | string | | | pbp_d_combo_19b_ssbci_nm_cats_4 | string | | | pbp_d_combo_19b_ssbci_nm_cats_5 | string | | | pbp_d_combo_19b_uf_nmc_cats_1 | string | | | pbp_d_combo_19b_uf_nmc_cats_2 | string | | | pbp_d_combo_19b_uf_nmc_cats_3 | string | | | pbp_d_combo_19b_uf_nmc_cats_4 | string | | | pbp_d_combo_19b_uf_nmc_cats_5 | string | | | pbp_d_diff_deduct_11c3_amt | double | | | pbp_d_max_plan_ben_* / pbp_d_non_maxplan_* / pbp_d_inn_maxplan_* / pbp_d_oon_maxplan_* | | Family describing 'maximum plan benefit coverage' caps (annual dollar limits the plan pays on certain supplemental benefits), split by in-network (inn), out-of-network (oon), and non-medical (nm) categories, each with _yn flags, _cats (which benefit categories), _amt, and _period (annual/per-period). Mostly NULL; populated for the minority of plans imposing such caps (e.g. pbp_d_max_plan_bens code '01' = 1,805 rows). | | pbp_d_balbill_* (yn, ded_yn, ded_paid_yn, max_pct, min_pct, oopc_max_yn, prov_cats) | | Balance-billing rules for PFFS/PPO plans: whether providers may balance-bill (yn), the min/max balance-bill percentage allowed (max_pct/min_pct, double), whether it counts toward deductible/MOOP, and which provider categories. Relevant mainly to PFFS (plan_type 09) and PPO. | | pbp_d_combo_* (grp_name_1..5, num_grps, max_plan_ben_amt_1..5, share_visit_amt_1..5, mode_1..5, nmc_cats_1..5, period_1..5 ...) | | Repeating 1-5 'combination benefit group' structure: plans can define up to 5 named combined supplemental-benefit groups, each with its own max-plan-benefit dollar cap, per-visit share amount, frequency mode/period, and covered non-medical categories. pbp_d_combo_num_grps says how many are used. Wide and mostly NULL; this is why the profiler's superset grain pulled in dozens of pbp_d_combo_* columns. | | pbp_d_deduct__amt (acupunc, chiro, dental, eyeexam, eyewear, hearaid, meal, otc, snf, trans, obs, iha, ihp, weuc, other1-3, ...) | | Per-supplemental-service deductible dollar amounts (double), one column per benefit (acupuncture, chiropractic, dental, vision exam/eyewear, hearing aid, meals, OTC, SNF, transportation, etc.). Sparse/mostly NULL — populated only when that specific supplemental benefit carries its own deductible. | | pbp_d_diff_deduct__amt (e.g. 1a1, 10a, 14c1..22, 16b1..7, 17a1, 18c ...) | | Very large family (~hundreds of columns) of 'differential deductible' amounts keyed to specific PBP Section-B benefit line numbers (the codes like 1a, 10a, 14c10, 16b3 map to Section-B service rows). Each holds the deductible applied to that exact benefit line. Almost entirely NULL; these are the per-line-item deductible detail cells and account for most of the table's 627-column width. | | pbp_d_deduct / pbp_d_deduct_14c_amt / pbp_d_deduct_type / pbp_d_deduct_services / pbp_d_deduct_yn | | Generic plan-level deductible scalar + its type/services descriptors. NOTE pbp_d_deduct (the bare column) is ENTIRELY NULL in this data (0 non-null even 2020-2026) — a defined-but-unused legacy slot; do not rely on it. Use pbp_d_ann_deduct_amt for the medical deductible. | | pbp_d_mmp_medcaid_bendesc_cats / pbp_d_mmp_plancov_bendesc_cats | | Medicare-Medicaid Plan (MMP / dual-demonstration) descriptors: which benefit-description categories are Medicaid-covered vs plan-covered. Populated only for MMP/dual plans. | | effective_period_start / effective_period_end / observed_period | | Ingestion-added temporal columns. effective_period_start = report_year-01-01, effective_period_end = report_year-12-31 (full plan year), observed_period = report_year-01-01. ALL THREE equal report_year for every row (verified 201,597/201,597). There is NO is_current flag — every quarterly snapshot is retained as its own row. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_d WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_d")` first. # MA pbp section d oon `medicare_silver.pbp_section_d_oon` · Medicare Advantage, Part D, Medicaid · status partial Section D OON: Part D out-of-network cost-share. Coverage: All years. **Grain.** One row per (MA plan-segment x OON service-category x cost-tier x OON-option-line) within a single CMS quarterly PBP release. Verified minimal key = contract_id + plan_id + segment_id + pbp_d_opt_oon_identifier + pbp_d_opt_oon_cat_id + pbp_d_opt_oon_type_id + report_year + quarter, which equals 143,801 distinct = the full 143,801 row_count. Dropping ANY one of these 8 columns reduces the distinct count below the row count (e.g. drop quarter -> 74,002; drop cat_id -> 47,221; drop segment -> 128,588), so all 8 are necessary and sufficient. **How to use it.** To get the current OON inpatient-hospital coinsurance a plan charges in 2026, take the latest vintage and filter to OON-offered lines: SELECT contract_id, plan_id, segment_id, pbp_d_opt_oon_cat_id, pbp_d_opt_oon_coins_min_pct, pbp_d_opt_oon_coins_max_pct FROM medicare_silver.pbp_section_d_oon WHERE report_year=2026 AND quarter=(SELECT MAX(quarter) FROM pbp_section_d_oon WHERE report_year=2026) AND pbp_d_opt_oon_yn='1' AND pbp_d_opt_oon_cat_id LIKE '16%'. This answers 'what coinsurance % do MA members pay for out-of-network inpatient hospital stays per plan' without double-counting quarterly re-releases. **Traps.** - QUARTER IS PART OF THE PHYSICAL GRAIN, NOT A BUSINESS DIMENSION. CMS re-releases the SAME benefit year across multiple quarters with byte-identical content (2018 appears in Q1-Q4, each exactly 4,124 rows; full table 143,801 rows collapses to 74,002 when quarter is dropped). To analyze plan benefits you almost always want ONE vintage per (plan, report_year) — pick the latest quarter / MAX(cms_vintage_sequence) per (contract_id,plan_id,segment_id,report_year). Aggregating without this DOUBLE/QUADRUPLE-COUNTS plans. There is NO is_current/is_latest flag to do this for you. - NULL in the *_yn flags and cost columns carries MEANING, it is not just 'unknown'. pbp_d_opt_oon_yn: only '1'=OON-offered rows ever carry cost values (37,333 of 92,040); '2'=OON not offered and NULL=not-asserted (mostly pre-2018 years) both have ZERO cost values. coins_yn/copay_yn NULL (102,806 rows) means 'that cost form does not apply to this line', not missing. Always filter pbp_d_opt_oon_yn='1' before reading coinsurance/copay. - bid_id, pbp_a_plan_type, effective_period_start/end, and observed_period look like keys but are NOT part of the minimal grain. bid_id is exactly contract_id||'_'||plan_id||'_'||segment_id (100% verified). The period dates are 1:1 functions of report_year. The profiler's 11-column 'verified_unique_by' is a SUPERSET; the true minimal key is 8 columns. - COPAYS ARE RARE on OON; coinsurance is the real cost signal. Only 2,345 rows have copay amounts vs 34,992 with coinsurance pct. If you benchmark OON cost exposure on copay columns you will see almost all NULLs — use pbp_d_opt_oon_coins_min_pct/coins_max_pct (a percentage, 0-100), and note min 17,983 annual records). **How to use it.** "What's the typical extra monthly premium for an optional dental/vision rider in 2025, and how many MA options offer one?" -> SELECT APPROX_PERCENTILE(pbp_d_amt_opt_premium,0.5) AS median_monthly_premium, COUNT(*) AS options FROM (SELECT *, ROW_NUMBER() OVER (PARTITION BY contract_id,plan_id,segment_id,pbp_d_opt_identifier,report_year ORDER BY quarter DESC) rn FROM medicare_silver.pbp_section_d_opt WHERE report_year=2025) t WHERE rn=1 AND pbp_d_opt_other_benefits LIKE '%16a%'. The dedup (rn=1) is essential so the duplicated quarterly snapshots don't inflate counts; the LIKE '%16a%' filters to options that bundle dental. **Traps.** - QUARTERLY SNAPSHOTS DUPLICATE THE YEAR, AND THERE IS NO is_current FLAG. The same plan year is republished under up to 4 quarters with byte-identical content (2023 Q1 vs Q4: 0 premium diffs, 0 row churn). Total 40,968 rows but only 17,983 distinct annual records. ALWAYS dedup to one quarter per report_year (e.g. ROW_NUMBER() PARTITION BY contract_id,plan_id,segment_id,pbp_d_opt_identifier,report_year ORDER BY quarter DESC) before counting plans/options or you will multi-count by ~2.3x. - MINIMAL GRAIN IS 6 COLUMNS, NOT THE PROFILER'S 14. The profiler reported a bloated superset including pbp_a_plan_type and five pbp_d_opt_maxplan_* columns. pbp_a_plan_type is constant per plan (functionally dependent, not needed), and pbp_d_opt_maxplan_cov is 100% NULL so it cannot contribute to a key. The true minimal key is contract_id+plan_id+segment_id+pbp_d_opt_identifier+report_year+quarter (and just the first four within any single snapshot). - THREE DEAD COLUMNS ARE 100% NULL: pbp_d_opt_maxplan_cov, pbp_d_pick_benefits, pbp_d_pick_benefits_other. Do not build logic on them. (One of them, pbp_d_opt_maxplan_cov, even appears in the profiler's candidate key -- ignore it.) - NULLS THAT CARRY MEANING, gated by Y/N flags: pbp_d_opt_deduct_amt/deduct_cats are null unless pbp_d_opt_deduct_yn='1' (only 5,088 rows have a deductible); pbp_d_opt_maxplan_ben_cov_amt and pbp_d_opt_maxplan_per are null unless pbp_d_opt_maxplan_ben_cov_yn='1' (null period = 'no cap'). A null here means 'feature absent', not 'unknown'. Also CMS Y/N codes are 1=Yes / 2=No (2 is NOT 'unknown'). - bid_id IS NOT AN INDEPENDENT KEY: it is exactly contract_id||'_'||plan_id||'_'||segment_id (verified 0 mismatches). Use pbp_d_opt_description (100% filled) for the option label, NOT pbp_d_opt_name (96.6% null). And in pbp_d_opt_secb_cats a lone ';' is a placeholder for empty -- treat it as null when parsing the category list. | column | type | meaning | |---|---|---| | contract_id | string | CMS MA contract ID (e.g. H0028). 359 distinct. Part of natural key. Letter+4 digits (H/R/S prefixes seen). | | plan_id | string | Plan ID within the contract (e.g. '016'). 3-char zero-padded string. 355 distinct values. Part of natural key. NOT unique on its own. | | segment_id | string | Plan segment ('0' for non-segmented plans = 34,266 rows; '1'..'7'+ for geographically segmented plans). Part of natural key. | | pbp_d_opt_identifier | string | Sequence number of the optional supplemental benefit package within the plan (e.g. '001','002','003'). The discriminator that makes the row unique within a plan-snapshot. A plan can offer up to 5 options (median 1). | | version | double | CMS PBP software/template version number for that filing year (double, 2.0..14.0+). Metadata, not a record key. Varies by report_year, NOT a dedup key. | | report_year | double | Plan/benefit year the option applies to (double: 2018..2026). Part of the snapshot grain. Equals year of effective_period_start/observed_period. | | quarter | double | CMS quarterly publication snapshot (1,2,3,4). Part of grain because the same plan year appears under multiple quarters, but content is IDENTICAL across quarters of a year. Pick one quarter (e.g. latest) per report_year to dedup to annual truth. | | bid_id | string | Redundant derived key = contract_id // '_' // plan_id // '_' // segment_id (verified 0 mismatches). Convenience identifier; carries NO information beyond its three components. Do not treat as an independent key. | | orgtype | string | CMS organization-type code (string). '01'=38,493 (local CCP/HMO-PPO, dominant), '11', '04', '06', '02'. Correlates with pbp_a_plan_type. Identifies the org structure of the contract. | | pbp_a_ben_cov | string | PBP Section A benefit-coverage indicator (string). Almost always '1' (40,860); '2'=67; 41 null. Effectively constant; low analytic value. | | pbp_a_plan_type | string | MA plan-type code (string) carried from PBP Section A. '01'=HMO (21,419), '04'=Local PPO (12,491), '02'=HMO-POS (4,583), '31'=Regional PPO (1,194), '09'=PFFS (922), '18', '07'. Note: profiler listed this in the candidate key but it is functionally determined by the plan (constant per bid), so it is NOT needed for the minimal grain. | | pbp_d_amt_opt_premium | double | Extra MONTHLY premium (USD) the member pays to elect this optional package. The headline COST field. Range $2.50-$157.00, median ~$29.65. 50 rows null. | | pbp_d_opt_apply_moop_yn | string | Whether this option's cost-sharing applies toward the plan MOOP (maximum out-of-pocket). CMS Y/N convention: '1'=Yes (86), '2'=No (40,841, almost always), 41 null. Nearly constant 'No'. | | pbp_d_opt_deduct_amt | double | Deductible USD for the option, populated only when pbp_d_opt_deduct_yn='1'. Range $10-$6,250. Null = no separate deductible (the common case). | | pbp_d_opt_deduct_cats | string | Semicolon-delimited list of PBP benefit-category codes the deductible applies to (e.g. '16b;', '16a;16b;', '16c1;16c2;...'). Populated for exactly the 5,088 rows where pbp_d_opt_deduct_yn='1'; null otherwise (null = no deductible). | | pbp_d_opt_deduct_yn | string | Whether the option carries a separate deductible. '1'=Yes (5,088), '2'=No (35,880). Drives whether deduct_amt/deduct_cats are populated. | | pbp_d_opt_description | string | Human-readable label of the option, 100% populated. The de-facto display name. Mix of marketing names ('Dental Platinum Rider', 'Enhanced Dental and Vision Package') and CMS codes ('MyOption DEN478', 'MyOption Vision'). Use THIS, not pbp_d_opt_name. | | pbp_d_opt_maxplan_ben_cov_amt | double | Plan-coverage maximum / annual benefit cap (USD) the option pays before the member is fully responsible. Populated only when pbp_d_opt_maxplan_ben_cov_yn='1'. Range $0-$30,000. Null = no plan max (uncapped). | | pbp_d_opt_maxplan_ben_cov_yn | string | Whether the option has a maximum plan-coverage cap. '1'=Yes (19,661), '2'=No (21,307). Gates maxplan_ben_cov_amt and maxplan_per. | | pbp_d_opt_maxplan_per | string | Periodicity code for the coverage max ('3'=per year is dominant at 18,103; '6', '2', '4' rare). NULL exactly when maxplan_ben_cov_yn='2' (21,307 nulls) -> null carries meaning: 'no cap, so no period'. | | pbp_d_opt_maxplan_per_d | string | Free-text description of a non-standard coverage-max periodicity. 99.5% null (only 187 populated); used for combined INN/OON dental+vision max notes. Niche. | | pbp_d_opt_name | string | Optional explicit name of the package, but 96.6% NULL (39,567 null). Largely unused legacy field -- prefer pbp_d_opt_description for the label. | | pbp_d_opt_other_benefits | string | Semicolon-delimited list of PBP section codes for the benefit categories bundled in this option (16a/16b=Dental, 17a/17b=Vision, plus sub-codes like 16a1..16b7). E.g. '16a;16b;' (11,717), '16a;16b;17b;'. ~18% null. Tells you WHAT the option covers. | | pbp_d_opt_secb_cats | string | Semicolon-delimited supplemental-benefit category codes (e.g. '16a;16b;', '17a;17b;', '14c;'). ~25% populated (10,064). Caveat: a lone ';' appears as a placeholder/empty value (589 rows) -- treat ';' as effectively null. | | pbp_d_pick_benefits | string | DEAD COLUMN: 100% NULL (0 of 40,968 populated). Reserved 'pick-your-benefit' field unused in this dataset. | | observed_period | date | Provenance: date the benefit year is observed for (= Jan 1 of report_year). Redundant with effective_period_start; one of the snapshot/period columns. | | asserted_at | date | Provenance: date Vlada parsed/asserted the record (2026-05-16 or 2026-05-20). Pipeline metadata, not a business field. | | effective_period_start | date | Start of the plan year the option is in force (Jan 1 of report_year). The table's primary time column; spans 2018-01-01 .. 2026-01-01. | | effective_period_end | date | End of the plan year (Dec 31 of report_year). Always the calendar year-end paired with effective_period_start. | | cms_vintage_sequence | int | Integer vintage rank of the CMS quarterly republish (1..4), broadly tracking quarter (Q2->2, Q3->3, Q4->4) but not perfectly 1:1 (early years mix). Useful for picking the latest vintage within a year. | | parse_revision | int | Vlada parser revision (1 or 2). 7,062 rows at rev 1 (the as-of-2026-05-16 load), 33,906 at rev 2. Pipeline metadata. | | parser_artifact_hash | string | SHA-256 of the parser artifact used (provenance lineage). Metadata for reproducibility. | | source_url | string | CMS source ZIP the row came from (e.g. https://www.cms.gov/files/zip/pbp-benefits-2023-quarter-1.zip). One source_url per (report_year, quarter). Provenance. | | sha256_content_hash | string | SHA-256 of the source content (provenance/integrity). Metadata. | | pbp_d_opt_maxplan_cov | string | DEAD COLUMN: 100% NULL (0 of 40,968). Note: the profiler wrongly listed this in the candidate grain key -- it is entirely null and contributes nothing to uniqueness. | | pbp_d_pick_benefits_other | string | DEAD COLUMN: 100% NULL (0 of 40,968). Companion to pbp_d_pick_benefits, unused. | Tools that read it: get_pbp_benefit Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_section_d_opt WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_section_d_opt")` first. # MA pbp vbid overlay `medicare_silver.pbp_vbid_overlay` · Medicare Advantage, Part D, Medicaid · status partial Union of 21-24 VBID overlay files. vbid_variant enum: {uf, ssbci, b19a_uf, b19a_ssbci, b19b_uf, b19b_ssbci, plain, discontinued_retained}. parent_section links to Section B (b13, b14, etc.). VBID introduced 2017; retained blanked 2026+. **Grain.** One row per (contract_id, plan_id, segment_id, parent_section, vbid_variant, report_year, quarter) — i.e. one row per Medicare Advantage plan-segment x the specific PBP benefit section it flexes under VBID x the VBID variant, per benefit-year x per quarterly CMS PUF release. VERIFIED: those 7 columns produce exactly 172,041 distinct combinations = the full row_count, and dropping ANY single one of the 7 breaks uniqueness (none removable). cms_vintage_sequence and parse_revision are functionally determined by this key and add no distinctness. A single plan-segment typically spans 1-20 rows in one snapshot (one per VBID-flexed section). **How to use it.** Count distinct VBID-participating MA plan-segments per benefit year, de-duplicating the quarterly snapshots: WITH latest AS (SELECT report_year, max(quarter) mq FROM pbp_vbid_overlay GROUP BY report_year) SELECT o.report_year, count(DISTINCT (o.contract_id,o.plan_id,o.segment_id)) FROM pbp_vbid_overlay o JOIN latest l ON o.report_year=l.report_year AND o.quarter=l.mq WHERE o.parent_section <> 'unknown' GROUP BY o.report_year ORDER BY 1; — answers 'how many MA plans offered VBID benefits each year' and yields the real adoption curve (~57 in 2017 to ~7,400 in 2026) without the snapshot double-count or the unknown-sentinel noise. **Traps.** - SNAPSHOT TABLE WITH NO is_current FLAG — the same benefit year is loaded from MULTIPLE quarterly CMS PUF releases, so the same plan-section repeats across quarters (2018/2019/2020/2022/2023/2024 are all multi-quarter; e.g. 2024 has q1,q3,q4 each ~17.7K rows). A naive COUNT(*) or COUNT(DISTINCT plan) across all rows DOUBLE/TRIPLE-counts. To get distinct VBID plans per year, dedup to one snapshot, e.g. JOIN to (SELECT report_year, max(quarter) FROM ... GROUP BY report_year). 'quarter' is a release/snapshot axis, NOT a within-year time period. - parent_section='unknown' AND vbid_variant='unknown' are paired SENTINELS, not real values and not NULL — 76,436 rows (~44% of the table) where the parser could not classify the PBP section/variant. They co-occur perfectly (0 rows with only one 'unknown'), are heavily concentrated in 2022-2024, and inflate row counts. Filter them out (parent_section <> 'unknown') before any section-level analysis. - asserted_at is an INGESTION timestamp (all rows 2026-05-16..2026-05-20), NOT a CMS publication/effective date — never use it to order CMS revisions or pick 'latest'; use report_year (benefit year) and quarter (release). Likewise observed_period / effective_period_start / effective_period_end are all DERIVED from report_year (Jan 1 and Dec 31 of that year) and carry no independent information. - This is a MARKER / OVERLAY table — it carries only WHICH benefit sections a plan offers VBID flexibility in, NOT the benefit values. There are ZERO dollar/copay/limit columns. It tells you a plan participates in VBID and in which PBP sections; to get the actual benefit amounts you must JOIN on (contract_id, plan_id, segment_id, report_year) to the underlying PBP benefit tables. No nulls exist in any column (sentinels are used instead of NULL). - cms_vintage_sequence (int 1-4) is NOT the grain and NOT a clean quarter mapping — it is a CMS release-sequence index that bleeds across quarters (vintage 4 = q1 AND q4). Use 'quarter' to identify the release. cms_vintage_sequence and parse_revision are provenance metadata that look key-ish but are functionally determined by the 7-column grain. - Coverage is MA-only and grows steeply with VBID program adoption: contract_id is only H (MA/MAPD) and R (regional PPO) — no PDP. Distinct VBID plan-segments per year rose from 57 (2017) to ~7,400 (2026), so early years are thin. Do not treat low pre-2021 counts as data gaps; that is the actual size of the VBID program then. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare Advantage contract ID (the plan's parent contract). VERIFIED 1,188 distinct; all begin H (1,160 contracts, standard MA/MAPD) or R (28 contracts, regional PPO). No S/E prefixes — VBID is an MA-side flexibility, so PDP-only contracts never appear. Part of the grain key. | | plan_id | string | 3-char plan benefit package ID within the contract (e.g. '001','053','805'), zero-padded string. 656 distinct, NOT unique on its own (reused across contracts). (contract_id, plan_id) identifies a plan; add segment_id for a plan-segment. Part of the grain key. | | segment_id | string | Plan segment number as string, range '0'-'25'. '0' = unsegmented plan and dominates (154,554 of 172,041 rows, ~90%); non-zero values are CMS geographic/benefit segments of a segmented plan. Part of the grain key — a contract can offer different VBID section sets per segment (e.g. H0028/053 has segments 1,3,4 with different section sets). | | parent_section | string | The CMS PBP benefit-section code under which the plan offers a VBID-flexed benefit: e.g. b10 (DME/prosthetics), b13 (Part B Rx/other), b13i (SSBCI), b14c, b16 (dental), b17 (vision), b18 (hearing), b19a/b19b, plus b1a/b1b/b2/b3/b4/b7/b9. CRITICAL: 'unknown' is a SENTINEL (76,436 rows) meaning the parser could not classify the section — it is NOT a real PBP section. Part of the grain key; one plan-segment has 1-20 such rows per snapshot. | | vbid_variant | string | The VBID flexibility flavor for that section. Observed: b19b_uf and b19a_uf (UF = Uniform Flexibility / standard supplemental), b19b_ssbci (Special Supplemental Benefits for the Chronically Ill — always paired with parent_section b13i), b19a_plain/b19b_plain/plain (non-VBID/standard marker). CRITICAL: 'unknown' (76,436 rows) is a sentinel co-occurring EXACTLY with parent_section='unknown' (0 either-only). Part of the grain key. | | report_year | int | The Medicare benefit/plan year the row describes (int). VERIFIED 2017-2026, 10 years. Primary temporal axis (= the year the VBID offering is effective), distinct from when CMS published or Vlada parsed it. Part of the grain key. | | quarter | int | Which quarterly CMS PBP PUF RELEASE (1-4) this row was extracted from. The same benefit year is republished in multiple quarters (e.g. 2023 has q2,q3,q4 each ~16.5K rows). REQUIRED in the grain key because the same plan-section repeats across a year's quarterly releases — this is the SNAPSHOT axis, NOT a within-year time period. There is no is_current flag. | | observed_period | date | Date = always January 1 of report_year (derived, not independent). Marks the start of the observation/benefit year. One distinct value per report_year; carries no information beyond report_year. | | asserted_at | date | Date Vlada parsed/loaded the row — all values fall 2026-05-16 to 2026-05-20 regardless of benefit year. This is an INGESTION/bitemporal timestamp, NOT a CMS publication date. Do NOT use it to order CMS revisions or pick the latest snapshot; use report_year/quarter for that. | | effective_period_start | date | Date = January 1 of report_year. Start of the annual coverage window the VBID offering applies to. Derived from report_year; the profiler picked this as the time column but it is fully determined by report_year (annual). | | effective_period_end | date | Date = December 31 of report_year. End of the annual coverage window. Always a full calendar year [Jan 1, Dec 31] of report_year. Derived from report_year. | | cms_vintage_sequence | int | Int 1-4, a CMS release-sequence index that roughly tracks the quarter ordinal within a year but is NOT a clean 1:1 (vintage 2 spans q1&q2, vintage 4 spans q1&q4). Functionally determined by the grain — adding it does NOT increase row distinctness. Use quarter, not this, to identify the release. | | parse_revision | int | Int parser-version that produced the row: 1 (49,817 rows) or 2 (122,224 rows). Provenance/lineage of the extraction, not a business attribute. Functionally determined by the grain (no per-grain accumulation of multiple parse revisions). | | parser_artifact_hash | string | SHA-256 of the parser artifact/code that produced the row (provenance). Lets you tie a row to the exact extractor build. Not a business key. | | source_url | string | The CMS PBP Benefits PUF download URL this row came from, e.g. https://www.cms.gov/.../pbp-pufs/pbp-benefits-2019-q3.zip. Exactly one URL per (report_year, quarter) — confirms the underlying source is the CMS Plan Benefit Package (PBP) Benefits Public Use File. | | sha256_content_hash | string | SHA-256 content hash of the source file (the .zip), for integrity/provenance and dedup of identical source content. Not a business key. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pbp_vbid_overlay WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pbp_vbid_overlay")` first. # PDP Contract Service Area by State/County, 2007-2026 `medicare_silver.pdp_contract_service_area` · Medicare Advantage, Part D, Medicaid · status live · 47,691,967 rows Every county each stand-alone PDP (S) and employer direct PDP (E) contract is approved to serve, monthly since 2007-01, with the employer-group-only and partial-county flags. 2026-09: 151,719 rows, 48 contracts, eghp TRUE on 134,095. **Grain.** One row per (contract_id, county_fips, county_ssa, county_name_raw, state_code, report_month). | column | type | meaning | |---|---|---| | contract_id | string | | | county_fips | string | | | county_ssa | string | | | state_code | string | | | report_month | date | | | organization_name_raw | string | | | organization_type | string | | | plan_type | string | | | partial_county | boolean | | | eghp | boolean | | | county_name_raw | string | | | notes_raw | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pdp_contract_service_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pdp_contract_service_area")` first. # PDP State/County Penetration, 2008-2026 `medicare_silver.pdp_state_county_penetration` · Medicare Advantage, Part D, Medicaid · status live · 712,768 rows For every county and month: Medicare eligibles, stand-alone PDP enrollment and PDP penetration, the PDP twin of MA State/County Penetration (same columns, identical eligibles). 2026-09: 3,188 rows, 69,511,516 eligibles, 25,021,800 PDP enrollees. **Grain.** One row per (fipsst, fipscnty, report_month). | column | type | meaning | |---|---|---| | fipsst | string | | | fipscnty | string | | | report_month | date | | | state_name | string | | | county_name | string | | | fips | string | | | ssast | string | | | ssacnty | string | | | ssa | string | | | eligibles | int | | | enrolled | int | | | enrolled_lower_bound | int | | | enrolled_upper_bound | int | | | penetration | double | | | suppression_reason_code | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pdp_state_county_penetration WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pdp_state_county_penetration")` first. # MA plan crosswalk — annual lineage (silver) `medicare_silver.plan_crosswalks_annual` · Medicare Advantage, Part D, Medicaid · status partial CMS annual plan-crosswalk lineage (consolidations, renames, terminations) used by the MA enrollment-trend proof rail to stitch enrollment across plan-year boundaries. Pinned to its silver_published snapshot in the proof receipt's lineage_table slot. **Grain.** Annual plan-crosswalk lineage edges across contract-years. | column | type | meaning | |---|---|---| | previous_contract_id | string | | | previous_plan_id | string | | | current_contract_id | string | | | current_plan_id | string | | | plan_year | int | | | previous_plan_name_raw | string | | | current_plan_name_raw | string | | | status_raw | string | | | status_normalized | string | | | previous_snp_type | string | | | previous_snp_institutional | string | | | previous_snp_population | string | | | previous_snp_percentage | string | | | current_snp_type | string | | | current_snp_institutional | string | | | current_snp_population | string | | | current_snp_percentage | string | | | schema_era | 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 | | Tools that read it: get_county_view, get_landscape_benefit_change, get_landscape_exits, prove_ma_enrollment_trend Query it: `query_substrate` with `SELECT ... FROM medicare_silver.plan_crosswalks_annual WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.plan_crosswalks_annual")` first. # CMS QualityNet methodology document and archive-member inventory `medicare_silver.qualitynet_methodology_document` · Medicare Advantage, Part D, Medicaid · status live · 427 rows Lossless inventory of 427 top-level QualityNet files and safely traversed archive members, retaining parent/member identity, archive depth, exact path, actual format, bytes, hash, page and worksheet counts, parse disposition, measure family, quality flags, and source lineage. **Grain.** One row per QualityNet content ID and deterministic top-level or recursive document ordinal. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | content_id | string | | | reporting_year | int | | | document_ordinal | int | | | parent_document_ordinal | int | | | archive_depth | int | | | document_path | string | | | file_name | string | | | file_extension | string | | | actual_format | string | | | byte_count | bigint | | | document_sha256 | string | | | direct_archive_member_count | int | | | page_count | int | | | worksheet_count | int | | | parse_disposition | string | | | measure_family | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.qualitynet_methodology_document WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.qualitynet_methodology_document")` first. # CMS QualityNet searchable methodology document text `medicare_silver.qualitynet_methodology_document_text` · Medicare Advantage, Part D, Medicaid · status live · 7,320 rows Searchable 7,320-segment history of QualityNet methodology reports, factsheets, user guides, reporting resources, and supporting Office/text documents, retaining page or segment identity, exact text fingerprint, measure family, current-release state, analytics eligibility, and source lineage. **Grain.** One row per QualityNet document and extractable PDF page or Office/text segment. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | content_id | string | | | reporting_year | int | | | document_ordinal | int | | | document_path | string | | | segment_number | int | | | segment_type | string | | | text | string | | | character_count | bigint | | | text_sha256 | string | | | measure_family | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.qualitynet_methodology_document_text WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.qualitynet_methodology_document_text")` first. # CMS QualityNet readmission-methodology source assets `medicare_silver.qualitynet_methodology_source_asset` · Medicare Advantage, Part D, Medicaid · status live · 69 rows Complete 69-content-ID inventory behind the 70 official QualityNet readmission methodology and resource page references posted from 2008 through 2026, retaining aliases, publisher dates and file types, exact source bytes and SHA-256, stable content endpoints, deterministic bundle lineage, and current-release state. **Grain.** One row per QualityNet content ID in the accepted methodology and reporting-resource corpus. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | content_id | string | | | reporting_year | int | | | title | string | | | posted_date | date | | | page_section | string | | | page_subsection | string | | | page_reference_count | int | | | page_references_json | string | | | declared_file_type | string | | | declared_file_size | string | | | publisher_filename | string | | | source_api_url | string | | | actual_format | string | | | byte_count | bigint | | | asset_sha256 | string | | | bundle_member | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.qualitynet_methodology_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.qualitynet_methodology_source_asset")` first. # CMS QualityNet readmission-methodology spreadsheet rows `medicare_silver.qualitynet_methodology_table_row` · Medicare Advantage, Part D, Medicaid · status live · 2,498,682 rows Lossless 2,498,682-row history of QualityNet cohort, exclusion, risk-variable, planned-readmission, POA, frailty, CC, CCS-to-ICD, and related spreadsheet logic, retaining titles, notes, headers, raw cells, conservative measure/rule/code normalization, semantic fingerprints, quality flags, and exact physical lineage. **Grain.** One row per QualityNet document, worksheet, and physical nonblank source row. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | content_id | string | | | reporting_year | int | | | document_ordinal | int | | | document_path | string | | | sheet_ordinal | int | | | sheet_name | string | | | source_row_number | bigint | | | row_kind | string | | | table_title | string | | | headers_json | string | | | raw_cells_json | string | | | raw_row_json | string | | | measure_family | string | | | rule_role | string | | | code_system | string | | | code_value | string | | | code_value_normalized | string | | | code_description | string | | | category_system | string | | | category_value | string | | | change_status | string | | | additional_notes | string | | | semantic_row_sha256 | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.qualitynet_methodology_table_row WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.qualitynet_methodology_table_row")` first. # CMS NCCI Procedure-to-Procedure (PTP) edits — quarterly editions, practitioner and hospital, stamped `medicare_silver.ref_ncci_ptp_edit` · Medicare Advantage, Part D, Medicaid · status live · 4,506,527 rows CMS NCCI PTP edits re-collected through the provenance envelope on 2026-09-07: both settings, every pair as published with effective and deletion dates, modifier indicator and rationale. Filter deletion_date IS NULL for the active edit set (the legacy ncci_ptp was that active practitioner set for one quarter). CPT descriptors are not stored (AMA license accepted openly; the license page is kept in bronze). **Grain.** One row per (edition, setting, pair as published) including pairs carrying a deletion_date; natural key (edition, row_seq); 4,506,527 rows for 2026Q4 (practitioner 2,637,645 / hospital 1,868,882). | column | type | meaning | |---|---|---| | edition | string | | | row_seq | bigint | | | setting | string | | | version | string | | | part | int | | | column_1_code | string | | | column_2_code | string | | | prior_to_1996 | boolean | | | effective_date | string | | | deletion_date | string | | | modifier_indicator | string | | | ptp_edit_rationale | string | | | source_member | 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 medicare_silver.ref_ncci_ptp_edit WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ref_ncci_ptp_edit")` first. # CMS public Medicare claim reference codes `medicare_silver.resdac_claim_code` · Medicare Advantage, Part D, Medicaid · status live · 382 rows Public CMS claim type, near-line record identification, place-of-service, and provider-specialty concepts from four immutable CMS Blue Button CodeSystem assets, with source-native display and definition plus exact release and Bronze lineage. **Grain.** One row per immutable CMS FHIR CodeSystem release and source concept ordinal. | column | type | meaning | |---|---|---| | release_date | date | | | code_system | string | | | code_system_uri | string | | | code_system_title | string | | | code_system_status | string | | | code_system_content | string | | | case_sensitive | boolean | | | code | string | | | display | string | | | definition | string | | | source_asset_id | string | | | source_member | string | | | source_row_number | bigint | | | raw_concept_json | string | | | quality_flags | string | | | is_current_release | boolean | | | is_analytics_eligible | boolean | | | 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.resdac_claim_code WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.resdac_claim_code")` first. # ResDAC / CMS claim-reference governed source-asset ledger `medicare_silver.resdac_claim_reference_source_asset` · Medicare Advantage, Part D, Medicaid · status live · 43 rows Content and rights ledger for four public CMS claim CodeSystems, all 25 recovered CMS Medicare Provider and Supplier Taxonomy Crosswalk revisions, 11 exact NUBC/AMA/ADA source limits, and three pointers to independently mastered Vlada sources. **Grain.** One row per governed corpus snapshot and acquired, source-limited, or existing-overlap asset. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | family | string | | | release_date | date | | | schema_era | string | | | asset_status | string | | | license_class | string | | | maintained_by | string | | | asset_url | string | | | final_url | string | | | file_name | string | | | byte_count | bigint | | | asset_sha256 | string | | | bundle_member | string | | | payload_acquired | boolean | | | existing_vlada_overlap_source_id | string | | | source_limit | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.resdac_claim_reference_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.resdac_claim_reference_source_asset")` first. # CMS Medicare specialty to provider taxonomy crosswalk history `medicare_silver.resdac_specialty_taxonomy_crosswalk` · Medicare Advantage, Part D, Medicaid · status live · 12,900 rows Complete recoverable CMS Medicare Provider and Supplier Taxonomy Crosswalk history across PDF, legacy Socrata CSV, and Data.CMS.gov CSV eras, retaining many-to-many relationships, physical row lineage, raw rows, quality flags, and analytics eligibility. **Grain.** One row per CMS crosswalk release asset and physical source row. | column | type | meaning | |---|---|---| | release_date | date | | | schema_era | string | | | medicare_specialty_code | string | | | medicare_provider_supplier_description | string | | | provider_taxonomy_code | string | | | provider_taxonomy_description | string | | | source_asset_id | string | | | source_member | string | | | source_page | int | | | source_row_number | bigint | | | raw_row_json | string | | | quality_flags | string | | | is_current_release | boolean | | | is_analytics_eligible | boolean | | | 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.resdac_specialty_taxonomy_crosswalk WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.resdac_specialty_taxonomy_crosswalk")` first. # SNF cost reports, by department `medicare_silver.snf_cost_report_dept` · Medicare Advantage, Part D, Medicaid · status live · 101,717 rows Skilled nursing facility cost reports (HCRIS 2540-10) by department: cost, charges and the cost-to-charge ratio per cost center line. **Grain.** One row per (ccn, fy_year, cost_center_line, rpt_rec_num): the department's cost, charges and ratio. | column | type | meaning | |---|---|---| | ccn | string | | | fy_year | string | | | cost_center_line | string | | | dept_cost | string | | | dept_charge | string | | | dept_ccr | string | | | charge_as_cost | string | | | rpt_rec_num | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snf_cost_report_dept WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snf_cost_report_dept")` first. # SNF cost reports, overall `medicare_silver.snf_cost_report_overall` · Medicare Advantage, Part D, Medicaid · status live · 14,698 rows Skilled nursing facility cost reports (HCRIS 2540-10), the whole-facility view: total cost, total charges, overall cost-to-charge ratio, with a plausibility flag. **Grain.** One row per (ccn, fy_year, rpt_rec_num): the facility's total cost, total charge and overall cost-to-charge ratio. | column | type | meaning | |---|---|---| | ccn | string | | | fy_begin | string | | | fy_end | string | | | fy_year | string | | | status | string | | | rpt_rec_num | string | | | total_cost | string | | | total_charge | string | | | overall_ccr | string | | | charge_as_cost | string | | | plausible | string | | | source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snf_cost_report_overall WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snf_cost_report_overall")` first. # MA snp data `medicare_silver.snp_data` · Medicare Advantage, Part D, Medicaid · status live One row per (contract, plan, segment) per month. Each row records plan enrollment count, plan_type (HMO/HMOPOS/PPO/PFFS/etc.), the SNP category (Chronic/Dual/Institutional), and for chronic-SNPs the specific specialty disease(s) the plan ta **Grain.** One row per SNP plan-segment per monthly CMS snapshot. The minimal practical key is contract_id + plan_id + segment_id + report_month, which yields 185,924 distinct values across 185,930 total rows. The 6 residual collisions are all contract R1548 (a UnitedHealthcare Regional PPO D-SNP spanning North Carolina and Virginia) where CMS reports two component-state enrollment slices in a single monthly file but the table carries no per-component-state column to separate them; to make the key strictly unique you must add plan_enrollment (the distinguishing value) to the 4-column key. There is no is_current column and no resnapshotting — each month has exactly one source file (228 files = 228 distinct months = 228 distinct URLs), so report_month alone fully selects a snapshot. **How to use it.** To get the current SNP landscape by type: SELECT snp_type, COUNT(*) AS plans, SUM(plan_enrollment) AS members FROM medicare_silver.snp_data WHERE report_month = (SELECT MAX(report_month) FROM medicare_silver.snp_data) GROUP BY snp_type — answers 'how many active Medicare Advantage Special Needs Plans of each kind exist now and how many members they cover' (Apr 2026: 1,800 plans, ~8.27M members, led by Dual-Eligible). For a single plan's enrollment trend, filter contract_id/plan_id (lpad to 3) and order by report_month." **Traps.** - contract_id+plan_id+segment_id+report_month is NOT strictly unique: 6 rows collide (all contract R1548, a regional PPO D-SNP across NC+VA) where CMS splits one regional plan into two component-state enrollment rows in a single monthly file with no column to tell them apart. Add plan_enrollment to dedupe, or just COUNT/SUM rather than assume 1 row per plan-month. - plan_id is inconsistently zero-padded: 3,263 rows store it as '1'/'01' instead of '001'. The same logical plan appears in both forms across months, so ALWAYS lpad(plan_id,3,'0') before joining to other CMS contract/plan tables or you will drop or fan-out rows. - There is NO is_current flag and NO snapshot dedup needed — every monthly file is a single vintage (cms_vintage_sequence=1, parse_revision=1, one sha256/source_url per month). To get 'current' plans just filter report_month = MAX(report_month) (Apr 2026 → 1,800 plans). - plan_enrollment NULL means CMS small-cell suppression (<11 members), NOT zero and NOT missing-by-error: there are literally zero rows with enrollment below 11. Treating NULL as 0 understates plan counts; SUM(plan_enrollment) silently excludes ~14.5k suppressed small plans. - specialty_diseases NULL is meaning-bearing: it is populated only for C-SNPs ('Chronic or Disabling Condition'); NULL for Dual/Institutional means 'no target disease applies', not missing data. The values themselves are free-text and not standardized across years. - report_month, effective_period_start, effective_period_end (=month-end), and observed_period are all derived from the same period and 100% redundant; asserted_at/cms_vintage_sequence/parse_revision are constants. Do not treat any of these provenance/date fields as independent dimensions. - This table has NO cost, rate, or premium data — it is a SNP plan census + enrollment dimension. Use it to identify/segment SNP plans and join to actual Medicare cost/benefit tables; do not expect to read prices here. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID (e.g. H0150, R1548). Part of the grain. First letter encodes plan footprint: H = local plan (182,572 rows / 870 contracts), R = regional PPO (3,358 rows / 12 contracts). 882 distinct contracts overall. Join key to other CMS contract/plan tables. | | plan_id | string | Plan benefit package ID within the contract (e.g. '019', '001'). Part of the grain. STORED INCONSISTENTLY: 182,667 rows are 3-char zero-padded but 3,263 rows are not ('1' and '01' forms), so the same logical plan can appear as '1' and '001'. lpad(plan_id,3,'0') before joining to other plan-level tables. 430 distinct raw values. | | segment_id | string | Plan segment / sub-area ID (a plan can be split into county/region segments). Part of the grain. 8 distinct values '0'-'7'; '0' dominates (179,787 rows = 96.7%). Usually '0' for unsegmented plans. | | report_month | date | First day of the CMS reporting month this snapshot belongs to (e.g. 2008-01-01). The snapshot/period key; 228 distinct months Jan 2007-style through Apr 2026. IDENTICAL in every row to effective_period_start and observed_period. | | contract_name_raw | string | Sponsoring organization / parent insurer name as printed in the CMS file (e.g. 'VIVA HEALTH, INC.', 'UNITED HEALTHCARE INSURANCE COMPANY'). Free-text, all-caps, not normalized; can change spelling across months for the same contract. | | organization_type | string | CMS organization/coordinated-care category. 3 values: 'Local CCP' (181,616 = 97.7%), 'Regional CCP' (3,358), 'Demo' (956). Correlates with contract_id prefix (R = Regional CCP). | | plan_name_raw | string | Marketing name of the specific plan as printed by CMS (e.g. 'HealthSpring OptimaCare', 'UnitedHealthcare Dual Complete RP (Regional PPO D-SNP)'). Free-text, descriptive; not a stable key (renamed across years). | | plan_type | string | Product type. 16 distinct values; dominant are HMO (136,965), Local PPO (20,836), HMOPOS (14,861), HMO/HMOPOS (8,508), Regional PPO (3,358). Long tail of state demonstration types (MN Senior Health Options, WI Partnership Program, SHMO, ESRD II, PSO, CCRC, etc.). | | plan_geographic_name | string | Free-text service-area label (county list, region, or descriptive phrase, e.g. 'Maricopa and Pima Counties', 'North Carolina and Virginia'). Highly varied — 2,824 distinct values. Descriptive, NOT a clean geo key; do not parse for state — use state_list_raw instead. | | state_list_raw | string | Service-area state code(s) as a raw string (e.g. 'CA', 'NC'). MEANING-BEARING NULL BY VINTAGE: 100% NULL in 2007, ~67% NULL in 2008, then fully populated 2009 onward. A NULL is an early-file coverage gap, not 'no state'. 9,947 NULLs total, all pre-2009. | | plan_enrollment | int | Reported SNP member count for that plan-segment-month. Range 11 to 228,018, median ~1,094 when present. CMS SMALL-CELL SUPPRESSION: there are ZERO rows below 11; counts under 11 are blanked, surfacing as one of the 14,541 NULLs (never 0). Sum of latest month (Apr 2026) = 8,274,866 across 1,800 plans. This is the only numeric measure; it is also what distinguishes the 6 R1548 duplicate-key rows. | | snp_type | string | SNP eligibility subtype — never null. 3 values: 'Dual-Eligible' (D-SNP, 115,298 = 62%), 'Chronic or Disabling Condition' (C-SNP, 45,408), 'Institutional' (I-SNP, 25,224). The defining SNP classification. | | specialty_diseases | string | Target chronic condition(s) for the plan. MEANING-BEARING NULL: populated for essentially all C-SNPs (45,403 of 45,408 'Chronic or Disabling' rows) and almost never for Dual (8,524 of 115,298) or Institutional (0) — NULL means the SNP type doesn't declare a target disease. Free-text and inconsistent across years (e.g. 'Diabetes' vs 'Diabetes Mellitus' vs 'Cardio DIS CHF and Diabetes'; also stray labels like 'FIDE SNP', 'PBP A Platino YN'). 132,003 NULLs. | | observed_period | date | Provenance: period the data was observed for. REDUNDANT — equals report_month in 100% of rows. Bitemporal-modeling field; carries no extra information over report_month. | | asserted_at | date | Provenance: date this record was asserted/loaded into the silver layer. CONSTANT 2026-05-15 for all 185,930 rows (single bulk load). Not a per-row event date and not a dedup discriminator. | | effective_period_start | date | Provenance: start of the plan-data effective window. REDUNDANT — equals report_month (and observed_period) in 100% of rows. Profiler's default time column; min 2007-05-01, max 2026-04-01. | | effective_period_end | date | Provenance: end of the effective window = the month-end of report_month (228 distinct values, min 2007-05-31, max 2026-04-30). Purely derived from the period; carries no information beyond report_month. | | cms_vintage_sequence | int | Provenance: CMS vintage sequence for re-issued files. CONSTANT = 1 for every row — there is only one vintage of each monthly file in this table. Not a dedup/supersession key here. | | parse_revision | int | Provenance: parser revision number. CONSTANT = 1 for every row. Reserved for reprocessing; currently single-valued. | | parser_artifact_hash | string | Provenance: SHA-256 of the parser code/artifact that produced the row (lineage of the extraction logic). Same hash within a load batch. | | source_url | string | CMS download URL of the originating monthly SNP report ZIP (e.g. https://www.cms.gov/files/zip/snp-comprehensive-report-july-2022.zip). 228 distinct URLs = exactly one file per month. Source provenance / audit. | | sha256_content_hash | string | Provenance: SHA-256 of the raw source file contents (228 distinct = one per month). Constant across all rows from the same monthly file; used to verify the source bytes / detect re-downloads. | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snp_data WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snp_data")` first. # Special Needs Plans by plan and month, parse revision 3 (D-SNP integration status, small-cell bounds, Under-11 rows) `medicare_silver.snp_data_v2` · Medicare Advantage, Part D, Medicaid · status live · 195,628 rows CMS's monthly SNP Comprehensive Report at parse revision 3: every SNP plan since 2007-05 with SNP type, specialty diseases, enrollment and states (Plan ID at three digits), plus the D-SNP integration status (CO / HIDE / FIDE, from 2022-07), applicable integrated plan, partial-dual-only and D-SNP-only-contract flags (from 2025-01), the [0, 10] bound on a blank enrollment cell, and CMS's Under-11 aggregate rows flagged synthetic_under_11_row. The tools read medicare_semantic.vw_snp_data_v3, this table's current vintage (card medicare_snp_data_v3). **Grain.** One row per (contract_id, plan_id, segment_id, snp_type, state_list_raw, report_month) among is_current real rows; 195,628 current rows over 233 months 2007-05..2026-09 = the served 194,930 rows one for one plus CMS's 698 Under-11 rows (Athena a3e5cf73, 43cbe058). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | report_month | date | | | contract_name_raw | string | | | organization_type | string | | | plan_name_raw | string | | | plan_type | string | | | plan_geographic_name | string | | | state_list_raw | string | | | plan_enrollment | int | | | snp_type | string | | | specialty_diseases | string | | | dsnp_integration_status | string | | | applicable_integrated_plan | boolean | | | partial_dual_only | boolean | | | dsnp_only_contract | boolean | | | plan_enrollment_lower_bound | int | | | plan_enrollment_upper_bound | int | | | enrollment_suppression_reason | string | | | synthetic_under_11_row | boolean | | | 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 | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snp_data_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snp_data_v2")` first. # SNP HEDIS general file (plan x report year), 2019-2025 `medicare_silver.snp_hedis_general` · Medicare Advantage, Part D, Medicaid · status live · 4,936 rows One row per SNP plan (contract x PBP) per report year: organization and plan type, SNP type, plan and contract enrollment, region, patient population, Part D and EGWP flags. 2025: 1,054 plans (708 Dual-Eligible, 228 Chronic, 118 Institutional) with 6,215,762 members. **Grain.** One row per (contract_id, plan_id, report_year). | column | type | meaning | |---|---|---| | contract_id | string | | | contract_name_raw | string | | | organization_type | string | | | plan_type | string | | | contract_offers_snp | string | | | contract_offers_part_d | string | | | contract_enrollment | int | | | region | string | | | region_name | string | | | patient_population | string | | | plan_id | string | | | plan_name_raw | string | | | plan_is_snp | string | | | snp_type | string | | | plan_offers_part_d | string | | | plan_is_egwp | string | | | contract_non_snp_plan_count | int | | | contract_snp_plan_count | int | | | contract_plan_count | int | | | contract_all_plans_snp | string | | | plan_enrollment | int | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snp_hedis_general WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snp_hedis_general")` first. # SNP HEDIS measure rates (plan x indicator), 2019-2025 `medicare_silver.snp_hedis_measures` · Medicare Advantage, Part D, Medicaid · status live · 211,299 rows The HEDIS rate per SNP plan, measure and indicator, with confidence limits and (where published) numerator, denominator and eligible population. 2025: 38,961 rows; Care for Older Adults medication review (200737_20) averages 84.23 over 676 D-SNP plans. **Grain.** One row per (contract_id, plan_id, measure_code, indicator_key, report_year). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | measure_code | string | | | indicator_key | string | | | rate | double | | | rate_raw | string | | | lcl | double | | | ucl | double | | | denominator | double | | | numerator | double | | | eligible_population | int | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snp_hedis_measures WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snp_hedis_measures")` first. # SNP HEDIS risk-adjusted utilization (plan x indicator), 2021-2025 `medicare_silver.snp_hedis_rau_measures` · Medicare Advantage, Part D, Medicaid · status live · 52,668 rows Risk-adjusted utilization measures per SNP plan (e.g. plan all-cause readmissions): denominator, member and outlier counts, observed and expected counts and the variance, 2021 onward. 2025: 12,636 rows. **Grain.** One row per (contract_id, plan_id, measure_code, indicator_key, report_year). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | measure_code | string | | | indicator_key | string | | | denominator | double | | | member_count | double | | | outlier_member_count | double | | | observed_count | double | | | expected_count | double | | | count_variance | double | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snp_hedis_rau_measures WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snp_hedis_rau_measures")` first. # SNP HEDIS service area (plan x county), 2019-2025 `medicare_silver.snp_hedis_service_area` · Medicare Advantage, Part D, Medicaid · status live · 124,273 rows The counties each SNP plan served in the HEDIS year, with SSA and ANSI (FIPS) county codes and the employer-only flag. 2025: 31,292 rows. **Grain.** One row per (contract_id, plan_id, ssa_code, ansi_code, report_year). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | ssa_code | string | | | ansi_code | string | | | state_code | string | | | county_name_raw | string | | | eghp_only | string | | | report_year | int | | | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.snp_hedis_service_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.snp_hedis_service_area")` first. # MA Star Ratings — Categorical Adjustment Index `medicare_silver.stars_cai` · Medicare Advantage, Part D, Medicaid · status live The Categorical Adjustment Index that adjusts summary stars for low-income/disabled enrollment mix. Carries a Puerto-Rico-Only flag. **Grain.** Logically one row per (contract_id × part × calculation_epoch) — i.e. one CAI/FAC assignment per Medicare contract, per rating dimension, per Star Ratings year. That clean grain is 28,964 logical rows. BUT the physical table has 32,730 rows because the three earliest epochs (ry2017/2018/2019) were each ingested twice and both copies are left flagged is_current=true: 3,766 (contract,part,epoch) groups appear as a duplicate pair — one stale row with fac_category=NULL (asserted_at 2026-05-17) and one good row with fac_category populated (later asserted_at). To get the true one-row-per-entity grain you must dedup by keeping MAX(asserted_at) within (contract_id, part, calculation_epoch); the latest row is always the fac-populated one. Physically, the only fully-unique key is (contract_id, part, calculation_epoch, asserted_at) = 32,730, but asserted_at is an ingest-lineage timestamp, not a business key. **How to use it.** Get each contract's current CAI Final-Adjustment-Category for the latest rating year, deduplicated correctly: WITH d AS (SELECT *, ROW_NUMBER() OVER (PARTITION BY contract_id, part, calculation_epoch ORDER BY asserted_at DESC) rn FROM medicare_silver.stars_cai) SELECT contract_id, part, fac_category, rating_year FROM d WHERE rn=1 AND part='Overall' AND rating_year=2026 AND fac_category IS NOT NULL. This answers 'which CAI case-mix adjustment tier did each MA contract land in for the 2026 Star Ratings?' — joinable by contract_id to PBP/Stars/payment tables to relate quality-rating case-mix to plan benchmarks or commercial-vs-Medicare cost comparisons. **Traps.** - cai_value is 100% NULL — the actual CAI numeric adjustment is NOT stored here; this table only gives you the FAC bucket id (fac_category 1-12). If you need the CAI dollar/decimal add-on you must source it elsewhere. - is_current = TRUE on every row and does NOT dedup the table. The three earliest epochs (ry2017/2018/2019) were ingested twice and both copies are flagged current: 3,766 (contract,part,epoch) groups have a stale fac_category=NULL row plus a good fac-populated row. Always dedup by MAX(asserted_at) within (contract_id, part, calculation_epoch) — that keeps the fac-populated row and yields the true 28,964-row grain. - fac_category=NULL is overloaded: some NULLs are the legitimate 'no FAC assigned for this dimension' (e.g. most D-PDP rows; ~12,253 survive after dedup), but ~3,766 NULLs are purely the stale-duplicate artifact. After dedupping by latest asserted_at, a remaining NULL means genuinely no FAC. - 'part' is the rating DIMENSION (C / D-MA-PD / D-PDP / Overall), not the contract's product type. A standalone PDP (S-prefix) contract still has C and Overall rows. Do not infer plan type from part — and do not assume contract prefix predicts which parts are populated. - fac_category looks like part of the key but is NOT — including it in a join/group makes the duplicate NULL-vs-populated pair look like two distinct rows. The minimal logical key is (contract_id, part, calculation_epoch); the only physically-unique key is that plus asserted_at (an ingest timestamp, not a business field). - restatement_of, effective_period_end, parse_revision (0), cms_vintage_sequence (1), and parser_artifact_hash are all single-valued/empty SCD-and-provenance scaffolding today — useful for lineage but they carry no analytic signal in the current data. - rating_year == payment_year, and performance_year == rating_year - 2 in every row; use calculation_epoch ('ryYYYY_v1') as the canonical year key since it is 1:1 with all of them. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract ID, the entity this row is about. 1,147 distinct. First letter is the CMS contract-type convention observed in data: H = MA / MA-PD local plan, R = regional PPO / EGWP, S = standalone Part-D (PDP), E = employer/union EGWP. Joins to other Stars/PBP/enrollment tables on contract_id. | | part | string | The Star-Ratings dimension the CAI/FAC assignment is for, NOT the contract's product type. 4 values: 'C' (Part C summary), 'D-MA-PD' (Part D within an MA-PD), 'D-PDP' (Part D within a standalone PDP), 'Overall'. A single contract appears under multiple parts (even S/PDP contracts have C and Overall rows), so do not treat part as the contract's plan type. | | fac_category | int | The CAI 'Final Adjustment Category' bucket assigned to this contract-part-year, integer 1-12 (CMS groups contracts into FAC tiers by their LIS/DE + disability mix; the FAC maps to the actual CAI add-on value). NULL on ~49% of physical rows (16,019). Two distinct reasons: (a) legitimate — the contract-part-year simply had no FAC assigned (common for D-PDP and some dimensions; ~12,253 NULLs survive after dedup); (b) ARTIFACT — the stale duplicate copy of an early-epoch row (3,766 NULLs that have a populated twin). Higher categories are rarer (cat 1-2 most common, 11-12 very rare). | | cai_value | double | Intended to hold the numeric CAI adjustment for the contract-part-year. WARNING: this column is 100% NULL across all 32,730 rows (0 non-null). The actual CAI numeric add-on is NOT in this table — only the FAC bucket id (fac_category) is populated. Treat cai_value as not-yet-loaded / empty. | | puerto_rico_flag | boolean | Boolean. True for 484 rows (~1.5%), false for the rest. Marks Puerto-Rico-located contracts, which CMS handles specially in the CAI methodology (PR has no LIS, so a separate CAI track applies). Used as a methodology qualifier; it does NOT subdivide the grain (it is constant within a contract-part-epoch group). | | effective_period_start | date | The CMS publication date of that year's Star Ratings data file — one single date per epoch (e.g. ry2019 = 2018-10-10). Acts as the as-of/release date. Note ry2024 = 2024-07-02 (an early July release that year, confirmed by the source filename '2024-star-ratings-data-tables-jul-2-2024.zip'), all other years release in October. 10 distinct dates 2016-10-12 → 2025-10-10. | | effective_period_end | date | Intended close-date of the validity window. 100% NULL (no row has it set) — every record is treated as open-ended/current. SCD-2 scaffolding that is currently unused. | | calculation_epoch | string | The canonical year-version key, format 'ryYYYY_v1' (ry2017_v1 … ry2026_v1, 10 values). 1:1 with rating_year and with effective_period_start. The '_v1' suffix implies versioned restatements are anticipated but none exist yet (all rows are _v1). This is the cleanest column to use as the year dimension in the grain. | | restatement_of | string | Pointer to a prior calculation_epoch that this row restates/corrects. 100% NULL — no Star Ratings restatements have been ingested. Provenance/SCD scaffolding for future corrected releases. | | parse_revision | int | Parser revision number for the row. Constant = 0 for all rows (single parser revision). Lineage field. | | parser_artifact_hash | string | Hash identifying the parser code/artifact that produced the row. Single distinct value across the whole table — everything was parsed by one parser build. | | source_url | string | The exact CMS download URL the row was extracted from — the annual Star-Ratings-and-display-measures / star-ratings-data-tables ZIP. One distinct URL per epoch; full provenance back to the public CMS file. | | sha256_content_hash | string | SHA-256 of the source file content. One distinct hash per epoch (10 total), giving byte-level provenance / immutability proof of the ingested file. | | bronze_publication_id | string | UUID of the bronze-layer ingest/publication batch that produced this row. 10 distinct values — one per epoch. Groups rows by the load event; the duplicate early-epoch rows still share the same bronze_publication_id as their good twin, so this id does NOT distinguish the stale copy (use asserted_at for that). | | asserted_at | timestamp | Microsecond UTC timestamp when this specific row was written to silver — UNIQUE per row (32,730 distinct), spanning 2026-05-17 → 2026-05-28. This is the true SCD tiebreaker: the stale duplicate of an early epoch has the earlier asserted_at (2026-05-17, fac=NULL) and the good row a later one (fac populated). Dedup with MAX(asserted_at) per contract+part+epoch. | | rating_year | int | The Star Ratings year (2017-2026). Equals payment_year in every row. 1:1 with calculation_epoch. This is the year the ratings are published-as. | | performance_year | int | The underlying measurement/performance year, always rating_year minus 2 (e.g. rating_year 2019 → performance_year 2017), reflecting the ~2-year lag between the data-collection period and the published rating. | | payment_year | int | The MA payment year the rating drives (quality-bonus payments). Identical to rating_year in all rows here. Present for downstream payment joins. | | is_current | boolean | Intended is-active SCD flag. WARNING: it is TRUE on 100% of rows, including the 3,766 stale early-epoch duplicates — so is_current does NOT deduplicate to one logical row and cannot be relied on to pick the good copy. Effectively a no-op column in current data. | | cms_vintage_sequence | int | Intended ordinal of the CMS vintage/restatement for a given year. Constant = 1 for every row (no second vintage exists yet). Placeholder for future restated releases. | | qbp_payment_year | int | | Tools that read it: get_star_decomposition, get_star_risk Query it: `query_substrate` with `SELECT ... FROM medicare_silver.stars_cai WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.stars_cai")` first. # MA Star Ratings — contract metadata `medicare_silver.stars_contracts` · Medicare Advantage, Part D, Medicaid · status live Contract-level Stars metadata (org type, parent org, marketing name). The join spine from a Star rating to the carrier/parent for sell-side rollups. **Grain.** One row per Medicare contract per Star Ratings rating year. The MINIMAL verified key is (contract_id, rating_year): 14,138 distinct = 14,138 total rows (COUNT(*)=14138, COUNT(DISTINCT contract_id||rating_year)=14138). The profiler's reported 3-column key (contract_id, contract_name, bronze_publication_id) is a SUPERSET -- contract_name and bronze_publication_id are redundant because bronze_publication_id maps 1:1 to rating_year (20 publications = 20 years) and contract_id is already unique within a year. Spread: 20 annual vintages (RY2007=552 contracts ... RY2026=769); contract_id alone is NOT unique (1,905 distinct across all years; a long-lived contract like H5859 appears in all 20 years). **How to use it.** Map a CMS contract to its parent payer for a given Star year, or list a carrier's MA/PDP footprint. Example: SELECT rating_year, contract_id, contract_name, marketing_name, org_type, snp_flag FROM medicare_silver.stars_contracts WHERE parent_org LIKE '%Humana%' AND rating_year = 2026 ORDER BY contract_id; -- answers 'which Medicare contracts did Humana operate in the 2026 Star vintage, and which are SNP / what org type'. To attribute scores, join a Star measure/summary table ON (contract_id, rating_year). Always pin rating_year (the grain), never rely on effective_period_end (always NULL)." **Traps.** - GRAIN TRAP: contract_id is NOT unique (1,905 distinct across 14,138 rows -- a contract recurs every year it operated; H5859 appears in all 20 years). The real key is (contract_id, rating_year). The profiler's (contract_id, contract_name, bronze_publication_id) is a redundant superset since bronze_publication_id == rating_year 1:1 and contract_name is sometimes NULL. - NULLS CARRY MEANING (vintage coverage): descriptive columns are NULL not because a contract lacks the attribute but because that year's CMS source file didn't include the column. org_type/marketing_name/parent_org are NULL for RY2007/2008/2011; contract_name NULL for RY2008-2010 & 2012; snp_flag only from RY2013+; disaster_2023_pct only in RY2025-2026; disaster_2024_pct only in RY2026. Don't infer 'unknown contract type' from a NULL in early years. - is_current is 100% TRUE and cms_vintage_sequence/parse_revision are constant (1 and 0), restatement_of is 100% NULL -- this is a clean single-version-per-year load with NO superseded rows yet. The SCD/restatement machinery (is_current, restatement_of, calculation_epoch '_v1', cms_vintage_sequence) is scaffolding that is inert today; code defensively for when restatements arrive but don't expect dedup to be needed now. - effective_period_end is 100% NULL -- you CANNOT do as-of/point-in-time filtering with the effective_period_start/end pair. Use rating_year (or effective_period_start, which is a single release date per year) to pick a vintage. Also note RY2024's release date is an outlier (2024-07-02 mid-year vs the usual October-of-prior-year cadence). - payment_year == rating_year and performance_year == rating_year - 2 in EVERY row -- these are deterministic derivations, not independent facts. asserted_at is the May-2026 backfill load time, NOT data validity; never use it for time-series. This table has NO star score/measure columns -- it is the contract dimension only; join Star measure/summary tables on (contract_id, rating_year) to get the actual ratings. - parent_org is free-text and not normalized: Anthem appears as both 'Anthem Inc.' and 'Elevance Health, Inc.' across years, 'Molina Healthcare, Inc.,' has a trailing comma, 'CIGNA' is all-caps. Normalize/fuzzy-match before grouping payers. Also 6 empty-string (not NULL) values exist in org_type and snp_flag, confined to RY2013. | column | type | meaning | |---|---|---| | contract_id | string | CMS Medicare contract identifier (the H/S/R/E number). Part of the grain. Prefix encodes contract type: H=MA/MA-PD or cost (12,685 rows, 1,699 distinct), S=standalone PDP (1,042 rows, 149 distinct), R=regional PPO (352 rows, 37 distinct), E=employer/EGWP direct-contract (48 rows, 10 distinct), plus a handful of stray single rows. NOT unique on its own -- unique only within a rating_year. | | org_type | string | CMS contract organization type. Top values: 'Local CCP' (9,870 -- local coordinated-care MA HMO/PPO, the bulk), 'PDP' (798 standalone Part D), 'Demo' (606), 'Regional CCP' (310), 'PFFS' (236), '1876 Cost' (205), 'National PACE' (134), 'MSA' (47), 'Employer/Union Only Direct Contract PDP' (44), '1833 Cost/HCPP' (25), 'Chronic Care' (8), plus a few more. NULL for some early vintages (2007,2008,2011) where the source file lacked it; 6 EMPTY-STRING rows exist only in RY2013 (parse artifact). | | contract_name | string | Legal/contract name of the organization (e.g. 'CHA HMO, INC.', 'SUPERIOR HEALTHPLAN, INC.'). Inconsistently populated by vintage: present for RY2007, RY2011, and RY2013+, but NULL for RY2008-2010 and RY2012 (those source files did not carry it). | | marketing_name | string | Consumer-facing brand name the plan markets under (e.g. 'Humana', 'Wellcare', 'Wellcare By Allwell'). Often differs from contract_name. NULL for RY2007 and RY2008 (not in early source files); populated RY2009+. | | parent_org | string | Parent organization / ultimate payer the contract rolls up to (e.g. 'UnitedHealth Group, Inc.' 1,326 rows, 'Humana Inc.' 823, 'Centene Corporation' 742, 'Aetna Inc.', 'CVS Health Corporation', 'Anthem Inc.'/'Elevance Health, Inc.', 'CIGNA', 'Kaiser Foundation Health Plan, Inc.'). This is THE column for attributing a contract to a carrier. NULL for RY2007,2008,2011. Note free-text inconsistency: Anthem appears as both 'Anthem Inc.' and 'Elevance Health, Inc.' across years; 'Molina Healthcare, Inc.,' has a trailing comma. | | snp_flag | string | Whether the contract includes any Special Needs Plan (SNP): 'Yes' (4,492) or 'No' (5,765). Only populated from RY2013 onward (NULL for RY2007-2012); 6 empty-string rows in RY2013. | | disaster_2023_pct | double | Percent of the contract's enrollment affected by a 2023 FEMA-declared disaster (0-100, used by CMS for the Star Ratings 'extreme and uncontrollable circumstances' adjustment). Range observed 0.0-97.0, mean ~1.16, only 28 distinct values. ONLY populated in the RY2025 and RY2026 vintages (NULL everywhere else) -- a year-specific adjustment column carried in recent data tables. | | disaster_2024_pct | double | Percent of the contract's enrollment affected by a 2024 FEMA-declared disaster (0-100; CMS disaster adjustment). Range 0.0-100.0, mean ~8.08. ONLY populated in the RY2026 vintage (NULL all other years). | | sanction_deduction | string | | | effective_period_start | date | CMS release/effective date of that year's Star Ratings data-table vintage -- exactly ONE distinct date per rating_year (RY2026=2025-10-10, RY2025=2024-10-11, RY2023=2022-10-06...). This is the table's primary temporal anchor. Note RY2024 is anomalous at 2024-07-02 (mid-year, vs the usual Oct of the prior calendar year). Earliest 2006-11-09 (RY2007), latest 2025-10-10 (RY2026). | | effective_period_end | date | Intended SCD close date for the vintage, but 100% NULL across all 14,138 rows -- never populated, even for old vintages. Do NOT use it for point-in-time/as-of filtering; treat every row as open-ended and disambiguate by rating_year instead. | | calculation_epoch | string | Logical vintage label, format 'ry{YYYY}_v1' (e.g. 'ry2026_v1'). Maps 1:1 to rating_year. The '_v1' suffix and the all-v1 reality signal a restatement-versioning scheme that currently has only first versions loaded. | | restatement_of | string | Provenance pointer to a prior vintage this row restates. Currently 100% NULL (no restatements have been ingested yet) -- lineage scaffolding for future CMS data-table reissues. | | parse_revision | int | Parser revision number for the row. Constant 0 across all rows (single parser generation in this load). | | parser_artifact_hash | string | Short hash (e.g. '86dfb448d9b9beb9') identifying the parser code/artifact that produced the row -- provenance for reproducibility. | | source_url | string | Original CMS download URL the vintage was parsed from -- exactly one distinct URL per rating_year (20 distinct). URL pattern evolved: early years '..._plan_ratings.zip', recent years '...-star-ratings-data-tables.zip' (e.g. RY2026 = https://www.cms.gov/files/zip/2026-star-ratings-data-tables.zip). | | sha256_content_hash | string | SHA-256 of the source bronze file content -- one value shared by all rows from the same vintage (content-addressed provenance/dedup of the raw download). | | bronze_publication_id | string | UUID of the bronze ingestion/publication event. Maps 1:1 to rating_year (20 distinct). Looks key-like but is NOT a row key -- it groups ~600-875 rows (all contracts in that vintage). Equivalent to rating_year for partitioning. | | asserted_at | timestamp | Pipeline ingest/load timestamp (when this row was written to silver), NOT data validity time. All rows loaded in a tight backfill window 2026-05-18 to 2026-05-28 (8 load days). Do not use for temporal analysis -- use effective_period_start / rating_year. | | rating_year | int | The CMS Star Ratings rating year -- the headline temporal dimension and part of the grain. Ranges 2007-2026 (20 values). This is the year the ratings are PUBLISHED/labeled (e.g. '2026 Star Ratings'), released in autumn of the prior calendar year. | | performance_year | int | The measurement/performance year the ratings reflect. Deterministically = rating_year - 2 for EVERY row (verified: offset always 2). Reflects CMS's standard ~2-year lag between data collection and rating publication. Derived, not independent. | | payment_year | int | The year CMS payment/bonus adjustments apply. Deterministically = rating_year for EVERY row (verified equal in 100% of rows). Derived/redundant with rating_year in this table. | | is_current | boolean | SCD current-version flag. 100% TRUE for all 14,138 rows -- there are NO superseded/historical shadow rows in this table. Filtering on is_current=true is a harmless no-op today; it exists for the restatement model (when restatements arrive, old versions would flip false). | | cms_vintage_sequence | int | Ordinal of the CMS publication for a given rating_year (1=first/original release, 2=reissue, etc.). Constant 1 across all rows -- only original releases ingested so far; would increment if CMS reissues a year's tables. | | qbp_payment_year | int | | Tools that read it: get_stars_rollup Query it: `query_substrate` with `SELECT ... FROM medicare_silver.stars_contracts WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.stars_contracts")` first. # MA Star Ratings — measure cut points `medicare_silver.stars_cutpoints` · Medicare Advantage, Part D, Medicaid · status live The annual CMS cut points (thresholds) per measure, star-level and org-subtype. The inputs that turn a raw measure value into a star; consumed by the recompute. **Grain.** One row per (Star Ratings measure x star level x rating year). 1,815 rows = 46 measures (not all present every year) x 5 star levels x the measure's applicable years. org_subtype is a constant ('ALL') so it is not a real grain dimension. Verified: distinct count of (measure_id, star_level, rating_year) = 1,815 = total row count. calculation_epoch and bronze_publication_id are 1:1 with rating_year so they are interchangeable as the year dimension, but rating_year is the cleanest. **How to use it.** To find what 99-th-percentile-style band a plan needs for 5 stars on a measure: SELECT star_level, threshold_lower_op, threshold_lower_bound, threshold_upper_op, threshold_upper_bound, raw_threshold_text FROM medicare_silver.stars_cutpoints WHERE rating_year = 2026 AND measure_id = 'C01:' ORDER BY star_level. This returns the five score bands for that measure that year (e.g. star 1 '< 58%', star 5 '>= 84%'), letting an agent map any plan's raw measure score to its star rating. Always include the trailing colon in measure_id and read raw_threshold_text for the authoritative band edges. **Traps.** - Minimal grain is (measure_id, star_level, rating_year) = 1,815 rows. org_subtype looks like a dimension but is constant 'ALL'; calculation_epoch and bronze_publication_id look like keys but are just 1:1 aliases of rating_year (each is per-year, not per-row, so neither alone is the grain). - The parsed numeric columns (threshold_lower_bound / threshold_upper_bound and their _op columns) are a LOSSY extraction of raw_threshold_text and are frequently NULL when the actual value exists. E.g. RY2026 C01 star 2 raw text '>= 58 % to < 71 %' is a closed band but threshold_upper_bound is NULL. To reconstruct correct score bands, parse raw_threshold_text - do not trust the numeric bound columns as complete or authoritative. - Units are NOT uniform across measures: most thresholds are percentages 0-100, but some measures use small/negative decimals (e.g. '< -0.114'). Never assume a 0-100 scale; the meaning of a threshold depends on the measure_id (measure metadata is not in this table - you must join to a measure dictionary). - raw_threshold_text has dirty tokens: a '?' character is corrupted mojibake for the '>=' sign (e.g. '? 87%' = '>= 87%'), plus 'NA', '*', and '100%'. Rows containing these have BOTH parsed bounds NULL - they are unparsed top-band (star 5) thresholds, a real data-quality hole, not genuinely-missing cutpoints. measure_id also carries a trailing colon ('C19:'). - Coverage holes: rating_year 2022 is entirely absent (COVID-disrupted CMS cycle, years jump 2021->2023). Part D drug measures (D01-D12) appear ONLY in rating_year 2026; for 2015-2025 only Part C (C-prefix) measures exist - so drug-plan cutpoints are essentially missing before RY2026. - is_current is TRUE for 100% of rows, effective_period_end / restatement_of are 100% NULL, and cms_vintage_sequence / parse_revision are constant (1 / 0) - the versioning machinery is in place but no restatements or second vintages have happened yet, so today these columns add no filtering value (do not write WHERE is_current logic expecting it to remove duplicates). Also: asserted_at is pipeline load time (May 2026), not source date - use rating_year / effective_period_start for source timing. | column | type | meaning | |---|---|---| | measure_id | string | CMS Star Ratings measure code, e.g. 'C01:', 'C19:', 'D04:'. C-prefix = Part C (Medicare Advantage health-plan) measures (C01-C34 observed); D-prefix = Part D (prescription-drug-plan) measures (D01-D12 observed). 46 distinct. GOTCHA: every value carries a trailing colon (parser artifact) - join/filter with the colon included or strip it first. The numeric suffix is just a sequential index within a year and is NOT stable across years (the measure behind 'C30:' can differ year to year). | | star_level | int | The star band this threshold defines, integer 1-5 (exactly 363 rows at each level). 1 = lowest performance band, 5 = highest. Each (measure_id, rating_year) has all five levels, forming five contiguous score bands. | | org_subtype | string | Organization subtype the cut point applies to. CONSTANT 'ALL' for every row (1,815/1,815) - cutpoints are not split by contract type in this table. Effectively a placeholder; do not use it as a grain or filter dimension. | | threshold_lower_bound | double | Parsed numeric lower edge of the band (float). NULL means no lower bound (band is open at the bottom, typically star_level 1). Units vary by measure: most are percentages (0-100), but some measures (CAHPS/HOS-style) use small decimals incl. negatives (e.g. -0.114). GOTCHA: this is a LOSSY parse of raw_threshold_text - for many middle-band rows it is populated while the upper bound is left NULL even though both edges appear in the raw text. | | threshold_upper_bound | double | Parsed numeric upper edge of the band (float). NULL means no upper bound (band open at top, typically star_level 5). GOTCHA: under-populated relative to raw_threshold_text - e.g. RY2026 C01 star_level 2 raw text is '>= 58 % to < 71 %' (a closed [58,71) band) but threshold_upper_bound is NULL and only the lower side was extracted. To reconstruct full bands reliably, parse raw_threshold_text yourself rather than trusting these numeric columns alone. | | threshold_lower_op | string | Comparison operator for the lower bound: '>=' or '>' (or NULL when there is no lower bound). NULL exactly when threshold_lower_bound is NULL. | | threshold_upper_op | string | Comparison operator for the upper bound: '<' or '<=' (or NULL when there is no upper bound). NULL exactly when threshold_upper_bound is NULL. Band logic by level: star 1 mostly '< X' (bottom-open), stars 2-4 mostly '>= X to < Y' (closed), star 5 mostly '>= X' (top-open). | | raw_threshold_text | string | The verbatim threshold string as it appeared in the CMS source table, e.g. '< 77', '>= 61 to < 65', '>= 53 % to < 80 %', '< -0.114'. 1,151 distinct, never NULL - this is the audit/ground-truth value and is more complete than the parsed bound columns. GOTCHA: contains messy artifacts - inconsistent spacing ('< 27 %' vs '< 27%'), trailing '%', and a corrupted '?' character that is a mojibake of the >= sign (e.g. '? 87%' means '>= 87%'); rows with that '?' or with 'NA'/'*'/'100%' have BOTH parsed bounds NULL because the parser could not interpret them. | | effective_period_start | date | Date this rating year's cutpoints take effect (the CMS publication/effective date). One distinct value per rating_year, 11 total, ranging 2014-10-09 (RY2015) to 2025-10-10 (RY2026), normally early October. ANOMALY: RY2024 is 2024-07-02 (a mid-year republication). This is the table's primary time column; periodicity ~402 days = annual. | | effective_period_end | date | Date the cutpoints stop being effective. 100% NULL across all 1,815 rows - cutpoints are stored with an open-ended window and are never end-dated/superseded in this snapshot. | | calculation_epoch | string | Logical version label for the cutpoint set, formatted 'ry_v', e.g. 'ry2025_v1'. 11 distinct, 1:1 with rating_year, all '_v1' (no v2+ yet). Interchangeable with rating_year as the year key; the '_v' suffix is reserved for future CMS re-releases of the same year. | | restatement_of | string | Pointer (id) to a prior row this row restates/corrects. 100% NULL - no restatements have occurred yet. Reserved provenance column for when CMS reissues a vintage. | | parse_revision | int | Integer revision of the parser run that produced the row. CONSTANT 0 for all rows - only one parse generation exists. Bumps if the data is re-parsed from the same source. | | parser_artifact_hash | string | Hash identifying the parser code/artifact version. 1 distinct value across the whole table - a single parser version produced every row. | | source_url | string | URL of the official CMS Star Ratings ZIP the row was extracted from (one per rating_year, 11 distinct), e.g. 'https://www.cms.gov/files/zip/2025-star-ratings-data-tables.zip'. Confirms provenance as the CMS annual 'Star Ratings data tables' / 'star ratings and display measures' releases on cms.gov. | | sha256_content_hash | string | SHA-256 of the source content the row came from. 11 distinct (one per source file / rating_year) - content-addressed provenance tying each year's rows to a specific bytes-exact source download. | | bronze_publication_id | string | UUID of the bronze-layer publication batch. 11 distinct, 1:1 with rating_year. Identifies the ingestion event; usable as an alternate year key but rating_year is more legible. | | asserted_at | timestamp | Timestamp Vlada ingested/asserted the row (UTC), ranging 2026-05-17 to 2026-05-28. This is the PIPELINE load time, NOT the CMS source date - do not use it for source recency; use effective_period_start / rating_year instead. | | rating_year | int | The Star Ratings year these cutpoints belong to (the year the ratings are published/branded). Observed 2015-2026, 11 distinct. GOTCHA: 2022 is MISSING (jumps 2021 -> 2023; CMS disrupted the 2022 measurement cycle during COVID). This is the recommended primary year filter. | | performance_year | int | The measurement/data-collection year the cutpoints score. Deterministically = rating_year - 2 in every row (e.g. RY2025 -> performance_year 2023). Fully derivable from rating_year; carries no independent information. | | payment_year | int | The MA payment year tied to the ratings. Deterministically = rating_year in every row. Redundant with rating_year. | | is_current | boolean | Whether this is the live/current version of the cutpoint. 100% TRUE for all 1,815 rows - no superseded/historical versions are retained, so this column is effectively a no-op today (but exists to support future versioning alongside calculation_epoch/cms_vintage_sequence). | | cms_vintage_sequence | int | Sequence number for multiple CMS vintages of the same rating year (1 = first/original release). CONSTANT 1 for all rows - no year has a second vintage yet. Increments if CMS republishes corrected cutpoints for a year. | | qbp_payment_year | int | | Tools that read it: get_stars_cutpoints Query it: `query_substrate` with `SELECT ... FROM medicare_silver.stars_cutpoints WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.stars_cutpoints")` first. # Part C and D Star Ratings Display Measures, per contract and measure, RY2012-2026 `medicare_silver.stars_display_measures` · Medicare Advantage, Part D, Medicaid · status live · 549,605 rows Contract-level measures CMS publishes beside the Star Ratings but does not score: call center hold times and disconnects, grievance rate, disenrollment reasons, access problems, transitions of care, opioid safety, retired Star measures, and HEDIS for contracts below the Stars sample size, per rating year. Display measures are NOT part of the Star Rating calculation: CMS shows them, it does not score them, and they carry no star. 549,605 rows in 15 rating years, RY2012-RY2026 (Athena 45ff8e54); display_file_family hpms_display_measures (DMC/DMD/DME ids) or hedis_small_contract_display (Stars HEDIS ids C01...). value_text is the publisher's cell, whitespace-normalized; value_numeric is set only for percent, mm:ss hold times (stored as seconds) and plain numbers; every other cell is a publisher status in value_status. **Grain.** One row per rating_year x contract_id x display_file_family x measure_id (the publisher's measure id). | column | type | meaning | |---|---|---| | contract_id | string | | | display_file_family | string | | | measure_id | string | | | measure_name | string | | | part | string | | | value_text | string | | | value_numeric | double | | | value_unit | string | | | value_status | string | | | effective_period_start | date | | | effective_period_end | date | | | calculation_epoch | string | | | restatement_of | string | | | parse_revision | int | | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | rating_year | int | | | is_current | boolean | | | cms_vintage_sequence | int | | | organization_marketing_name | string | | | contract_name | string | | | parent_organization | string | | | organization_type | string | | | source_member | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.stars_display_measures WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.stars_display_measures")` first. # MA Star Ratings — per-measure value + star `medicare_silver.stars_ratings_measure` · Medicare Advantage, Part D, Medicaid · status live The measure-level layer beneath the summary star: each contract's value and star on each measure. Drives Stars-trajectory and measure-gap analysis (Wolfe sell-side). **Grain.** One row = one (contract_id × measure_id × rating_year) — i.e. a single Medicare plan contract's score on one specific Star measure for one annual rating cycle. VERIFIED minimal: contract_id × measure_id alone yields only 86,697 distinct combos vs 439,831 rows (so the year is required), while contract_id × measure_id × rating_year yields exactly 439,831 = the full row count, with a GROUP BY ... HAVING COUNT(*)>1 returning 0 duplicate groups. rating_year is interchangeable here with calculation_epoch, bronze_publication_id, and effective_period_start (all four are strictly 1:1 — exactly one CMS publication per rating year). **How to use it.** Trend one plan contract's quality on a specific measure over time, or rank contracts within a rating year. Example: SELECT rating_year, raw_value, star_value FROM medicare_silver.stars_ratings_measure WHERE contract_id='H0028' AND measure_id='C01' AND star_value_status='VALID' ORDER BY rating_year — returns that MA contract's medical-quality measure C01 raw percentage and 1-5 star score year by year. To pull a contract's full RY2026 scorecard: WHERE contract_id=:c AND rating_year=2026; to find top performers on a measure: WHERE measure_id='D08' AND rating_year=2026 AND star_value=5. Always join measure_id to an external measure dictionary to label the codes, and pair contract_id with cost/spend tables to get a value (quality-vs-cost) view. **Traps.** - GRAIN trap: the profiler reports the key as contract_id × measure_id × bronze_publication_id, but bronze_publication_id is 1:1 with rating_year (one CMS publication per year). The true human grain is contract_id × measure_id × rating_year (= 439,831 rows exactly). contract_id × measure_id ALONE is NOT unique (only 86,697 distinct) — you MUST include the year or you'll silently collapse a plan's 15-year history into one row. - is_current / vintage dedup is currently a NO-OP: every row has is_current = true, cms_vintage_sequence = 1, parse_revision = 0, and restatement_of / effective_period_end are 100% NULL. So there are no superseded versions to filter today — but a single rating_year still maps to exactly one publication, so a naive COUNT over the table already counts each fact once. Add WHERE is_current = true defensively for forward-compatibility, not because duplicates exist now. - NULL values carry meaning, and the TWO status columns can disagree. raw_value/star_value are NULL exactly when their respective *_status is not 'VALID' (suppressed: PLAN_TOO_SMALL, NO_DATA, or generic OTHER_STATUS) — a NULL is 'suppressed/unavailable', not missing-at-random. Critically, raw_value_status and star_value_status DIVERGE on ~15k rows (e.g. OTHER_STATUS raw but VALID star), so check BOTH; don't infer one from the other. - Units of raw_value are per-measure and wildly non-uniform (0 to 3.36M; most measures are 0-100 percentages, others are counts/rates). NEVER sum or average raw_value across different measure_ids — it mixes percentages with counts. There is also NO measure-name/label column here: measure_id (C01.., D01.., PRE2009_*) is an opaque code that needs an external measure dictionary to interpret. - This is the MEASURE level (per individual quality measure) and star_value is whole-stars only (1-5, zero half-stars). It is NOT the contract's overall/summary Star Rating — that headline number (with half-star values like 4.5) lives in a separate summary/rating table. Also: rating years 2009-2013 are absent, and 2007-2008 use legacy PRE2009_* free-text measures that don't map to the C/D codes — don't treat measure sets as constant across years. - performance_year (= rating_year - 2) and payment_year (= rating_year) are fully derivable from rating_year and add no information; asserted_at is the May-2026 backfill/ingest time, NOT the rating date. For any time-based analysis use rating_year (or effective_period_start), never asserted_at. | column | type | meaning | |---|---|---| | contract_id | string | CMS contract identifier for the MA/Part-D plan being rated (e.g. 'H0028'). 1,703 distinct. First letter is the contract type: H = local MA/MAPD (1,521 contracts, ~89% of rows), S = standalone Part-D PDP (139), R = regional PPO (37), E = employer/union EGWP (6). This is the contract level, NOT the plan-benefit-package (PBP) level — Star ratings are published per contract, not per PBP. | | measure_id | string | The individual Star quality measure scored. 80 distinct across all years, in three namespaces: C01-C36 = Part C / medical (MA) measures (e.g. screenings, plan administration, member experience); D01-D15 = Part D / prescription-drug measures (e.g. medication adherence, MTM); PRE2009_* = legacy free-text measure names used only in the 2007-2008 pre-standardized era (e.g. 'PRE2009_RATING_OF_DRUG_PLAN'). measure_id is a stable per-program code but is NOT self-describing — there is no measure-name/label column in this table, so a separate measure dimension/lookup is needed to know what each code means. Measure sets change yearly (e.g. C35/C36 exist only in 2014; C34 ends 2019; D13-D15 retired by 2021). | | raw_value | double | The underlying performance value for the measure BEFORE conversion to stars — float. Units are PER-MEASURE and not uniform: most measures are percentages (0-100), but some are counts or rates (global range observed 0 to 3,362,318; median ~80.7). Never aggregate or average raw_value ACROSS different measure_ids — it mixes incompatible units. NULL whenever raw_value_status is not 'VALID'. No negatives (global min = 0). | | raw_value_status | string | Quality/availability flag for raw_value. Four values: VALID (242,587 rows, raw_value populated), OTHER_STATUS (153,329 — generic not-reported, raw NULL), PLAN_TOO_SMALL (22,908 — denominator too small to report, raw NULL), NO_DATA (21,007 — no data submitted, raw NULL). Non-VALID ALWAYS means raw_value is NULL — so a NULL raw_value is meaningful (suppressed/unavailable), not missing-by-accident; read this column to know WHY. | | star_value | double | The measure-level star rating derived by binning raw_value into cut-points — float, integer stars 1.0-5.0 ONLY (no half-stars at this grain; verified 0 fractional values). Distribution skews high (4★ most common at 73,252; 1★ rarest at 14,957). Monotonic with raw_value for higher-is-better measures (e.g. C01: 1★ tops out at raw 57, 5★ starts at raw 65). NULL whenever star_value_status is not 'VALID'. NOTE: this is the per-MEASURE star, not the contract's overall/summary Star Rating (that lives in a separate summary table and DOES carry half-stars). | | star_value_status | string | Quality flag for star_value, same four-value enum as raw_value_status: VALID (254,840), OTHER_STATUS (143,070), PLAN_TOO_SMALL (22,908), NO_DATA (19,013). IMPORTANTLY this can DIVERGE from raw_value_status: 13,788 rows have OTHER_STATUS raw but a VALID star, and 1,519 have VALID raw but NO_DATA star — so the two status columns are independent and must each be checked; do not assume one implies the other. | | raw_value_text | string | | | raw_value_message_code | string | | | star_value_text | string | | | star_value_message_code | string | | | effective_period_start | date | Date the rating publication takes effect (e.g. 2016-10-12 for RY2017) — proxies the CMS release date. 15 distinct values, exactly one per rating year, 1:1 with rating_year / calculation_epoch / bronze_publication_id. Used as the table's temporal axis. (Note RY2024 sits at 2024-07-02, an off-cadence early date, vs the typical Oct release.) | | effective_period_end | date | End of the effective window for SCD-2-style validity. 100% NULL across all 439,831 rows — an unused placeholder; the table currently keeps only one (current) version per rating year so no row has ever been end-dated. | | calculation_epoch | string | Logical version label of the calculation run, formatted 'ry{YEAR}_v1' (e.g. 'ry2017_v1'). 15 distinct, 1:1 with rating_year. The '_v1' suffix and the fact that all are v1 confirm only one calculation vintage per year has been ingested (no restatements yet). | | restatement_of | string | Pointer to a prior version this row restates/supersedes (for CMS mid-year restatements). 100% NULL — the restatement machinery exists in the schema but has never been exercised; no row restates another. | | parse_revision | int | Parser revision counter for the bronze->silver extraction. Always 0 (single value) — every row was produced by the first parse revision. | | parser_artifact_hash | string | Short hash of the parser code/artifact that produced the row (e.g. '86dfb448d9b9beb9') — provenance/reproducibility. Effectively one parser across the table. | | source_url | string | The CMS download URL the data was extracted from (e.g. the published Star Ratings ZIP on cms.gov). 15 distinct — one source file per rating year. Provenance/lineage to the public origin. | | sha256_content_hash | string | SHA-256 of the source file's content — content-addressed provenance to detect/identify the exact bronze artifact. 15 distinct (one per source file/publication). | | bronze_publication_id | string | UUID of the bronze-layer publication (ingest event) this row came from. 15 distinct, strictly 1:1 with rating_year. The profiler reports this as part of the grain, but it is REDUNDANT with rating_year — it identifies the source publication, not a finer slice. Use rating_year for human queries; bronze_publication_id is the lineage handle. | | asserted_at | timestamp | Timestamp when this row was written/asserted into the silver table (the bitemporal 'system time'). Ranges 2026-05-18 to 2026-05-28 — i.e. the whole 2007-2026 history was backfilled in a single late-May 2026 load window. This is ingestion time, NOT the measurement/rating date (use effective_period_start / rating_year for that). | | rating_year | int | The CMS Star Ratings 'rating year' — the year the ratings are published/branded (e.g. 2026 ratings released Oct 2025). 15 values: 2007, 2008, then a GAP, then a continuous 2014-2026. The primary human-facing time key. NOTE the missing 2009-2013 years — this table does not contain those rating years. | | performance_year | int | The measurement/data-collection year the scores are based on. Strictly = rating_year - 2 for EVERY row (verified). Derivable from rating_year; reflects that Star Ratings lag the measured performance by ~2 years (e.g. RY2026 ratings reflect 2024 performance). | | payment_year | int | The MA Quality-Bonus-Payment year tied to the rating. Strictly = rating_year for EVERY row (verified; offset 0). Fully redundant with rating_year in this data. | | is_current | boolean | Flag marking the current/active version of a row in the bitemporal model. TRUE for 100% of rows (all 439,831). Because no restatements have been loaded, this column is currently a no-op — but query hygiene says filter is_current = true so future superseded rows won't double-count. | | cms_vintage_sequence | int | Sequence number of the CMS vintage for that rating year (1 = first/original release, would increment on a restated release). Always 1 — only the original vintage of each year is present. | | qbp_payment_year | int | | Tools that read it: get_star_benchmark, get_star_decomposition, get_star_risk, get_stars, get_stars_rollup Query it: `query_substrate` with `SELECT ... FROM medicare_silver.stars_ratings_measure WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.stars_ratings_measure")` first. # Medicare Advantage Star Ratings (summary) `medicare_silver.stars_ratings_summary` · Medicare Advantage, Part D, Medicaid · status live · 29,282 rows The contract's CMS Star rating (summary_star, 1.0-5.0). 4+ stars => a 5% benchmark bonus AND a higher rebate share — the single biggest swing in MA plan economics. Powers the Stars-trajectory analyses (Wolfe sell-side). **Grain.** One row per (contract_id, part, payment_year) on is_current — CMS Star ratings summary. CERTIFIED 2026-06-03. | column | type | meaning | |---|---|---| | contract_id | string | | | part | string | | | summary_star | double | | | star_rating_source | string | | | recompute_status | string | | | summary_text | string | | | summary_message_code | string | | | effective_period_start | date | | | effective_period_end | date | | | calculation_epoch | string | | | restatement_of | string | | | parse_revision | int | | | parser_artifact_hash | string | | | source_url | string | | | sha256_content_hash | string | | | bronze_publication_id | string | | | asserted_at | timestamp | | | rating_year | int | | | performance_year | int | | | payment_year | int | | | is_current | boolean | | | cms_vintage_sequence | int | | | qbp_payment_year | int | | Tools that read it: get_county_view, get_quality_bonus, get_star_benchmark, get_star_decomposition, get_star_risk, get_stars, get_stars_rollup Query it: `query_substrate` with `SELECT ... FROM medicare_silver.stars_ratings_summary WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.stars_ratings_summary")` first. # State Service Area (every contract by state), 2006-2026 `medicare_silver.state_service_area` · Medicare Advantage, Part D, Medicaid · status live · 2,311,995 rows Every MA, PDP, cost, PACE and demonstration contract with each state it is approved in, its effective date and the entire-state flag, monthly since 2006-08. 2026-09: 9,856 rows, 976 contracts. **Grain.** One row per (contract_id, state_code, report_month). | column | type | meaning | |---|---|---| | contract_id | string | | | state_code | string | | | report_month | date | | | contract_name_raw | string | | | organization_type | string | | | plan_type | string | | | effective_date | date | | | effective_date_raw | string | | | entire_state | boolean | | | source_member | 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 | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_service_area WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_service_area")` first. # CMS MA / Part D Landscape with the true contract year (corrected Plan and Premium year) `medicare_silver.vw_ma_landscape_contract_year_v20261013a` · Medicare Advantage, Part D, Medicaid · status live · 2,880,985 rows Read-side correction of the Landscape year (LAND-3), nothing restamped in place. For record_family = 'plan_premium' rows contract_year applies parser 1.3.0's rule (#3107) to the stored source_member path: release-date stamps are stripped, then the innermost segment's year is taken. Every other row keeps contract_year = report_year. Defined in pipelines/medicare/semantic/pbp/adhoc_views/vw_ma_landscape_contract_year_v20261013a.sql (#3630); proved equal to the fixed loader and to the files' own title rows on all 45 held members (tools/data_tracker/landscape_contract_year_check.py, Athena 14934086). **Grain.** The rows of medicare_silver.fact_ma_landscape (is_current) unchanged, plus contract_year and contract_year_basis: 2,880,985 rows (1,814,465 landscape + 1,066,520 plan_premium), CY2006-2027 (Athena 057d2d5a, 0b2f4ab9, 2026-10-13). | column | type | meaning | |---|---|---| | report_year | int | | | row_seq | bigint | | | record_family | string | | | category | string | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | source_member | string | | | source_member_sha256 | string | | | state | string | | | county | string | | | org_name | string | | | plan_name | string | | | plan_type | string | | | snp_indicator | string | | | benefit_type | string | | | consolidated_premium | string | | | part_c_premium | string | | | part_d_premium | string | | | part_d_deductible | string | | | moop_in_network | string | | | overall_star_rating | string | | | part_d_star | string | | | gap_coverage | string | | | sanctioned | string | | | state_name | string | | | us_territory | string | | | org_marketing_name | string | | | parent_org_name | string | | | contract_name | string | | | organization_type | string | | | snp_type | string | | | snp_institutional_type | string | | | snp_institutional_category | string | | | dsnp_integration_status | string | | | dsnp_aip_identifier | string | | | csnp_condition_type | string | | | zero_dollar_cost_sharing_dsnp | string | | | drug_benefit_category | string | | | benefit_type_detail | string | | | part_d_coverage_indicator | string | | | national_pdp | string | | | de_minimis_participant | string | | | part_d_basic_premium_at_or_below_benchmark | string | | | zero_premium_with_full_lis | string | | | lis_auto_enrollment | string | | | tier_without_deductible | string | | | increased_initial_coverage_limit | string | | | part_d_basic_premium | string | | | part_d_supplemental_premium | string | | | part_d_oop_threshold | string | | | lips_amount | string | | | part_c_star | string | | | ma_region_code | string | | | ma_region | string | | | pdp_region_code | string | | | pdp_region | string | | | mmp_start_date | string | | | demo_type | string | | | moop_at_or_below_3400_flag | 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 | | | part_d_lips_cms_pays | string | | | part_d_low_income_beneficiary_premium | string | | | enrollment_capacity_limit_accepted | string | | | enrollment_capacity_limit_amount | string | | | part_d_premium_obligation_75pct_assistance | string | | | part_d_premium_obligation_50pct_assistance | string | | | part_d_premium_obligation_25pct_assistance | string | | | gap_coverage_type | string | | | state_code | string | | | lis_auto_enrollment_all_eras | string | | | drug_benefit_category_all_eras | string | | | drug_benefit_type_all_eras | string | | | member_path_year | string | | | contract_year | int | | | contract_year_basis | varchar(39) | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.vw_ma_landscape_contract_year_v20261013a WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.vw_ma_landscape_contract_year_v20261013a")` first. # MA pbp mrx, current parse revision per year and quarter `medicare_silver.vw_pbp_mrx_current_v20261013a` · Medicare Advantage, Part D, Medicaid · status partial · 270,466 rows The read side of the append-only pbp_mrx contract (#3630): a parser fix for unchanged CMS bytes is appended as a new parse_revision of its (report_year, quarter) slice, never written over it, and this view returns only each slice's latest revision, so a superseded parse is never read beside its correction. Defined in pipelines/medicare/semantic/pbp/adhoc_views/vw_pbp_mrx_current_v20261013a.sql. **Grain.** The rows of medicare_silver.pbp_mrx of each (report_year, quarter) slice's latest parse_revision, plus slice_latest_parse_revision: 270,466 rows on 2026-10-13, equal to the table while no slice holds two revisions (Athena 057d2d5a). | column | type | meaning | |---|---|---| | contract_id | string | | | plan_id | string | | | segment_id | string | | | version | double | | | report_year | double | | | quarter | double | | | bid_id | string | | | max_rai_ann_partd_rew_amt_1rx | double | | | max_rai_ann_partd_rew_amt_2rx | double | | | max_rai_ann_partd_rew_amt_3rx | double | | | max_rai_frq_rew_incent_1rx | string | | | max_rai_frq_rew_incent_2rx | string | | | max_rai_frq_rew_incent_3rx | string | | | max_rai_partd_rew_inc_amt_1rx | double | | | max_rai_partd_rew_inc_amt_2rx | double | | | max_rai_partd_rew_inc_amt_3rx | double | | | mrx_ae_copay_lesser_yn | string | | | mrx_ae_cstshr_apply | string | | | mrx_ae_cstshr_grps | double | | | mrx_ae_oon_cstshr_struct | string | | | mrx_ae_ooptcs_apply | string | | | mrx_ae_ot_grps | double | | | mrx_alt_copay_lesser_yn | string | | | mrx_alt_cov_lmt_amt | double | | | mrx_alt_cov_lmt_yn | string | | | mrx_alt_cstshr_post_oopt | string | | | mrx_alt_cstshr_post_oopt_mmp | string | | | mrx_alt_ded_amount | double | | | mrx_alt_ded_charge | string | | | mrx_alt_ded_tier_cstshr_yn | string | | | mrx_alt_ded_type_yn | string | | | mrx_alt_drug_type | string | | | mrx_alt_excl_drugs_maxplan_yn | string | | | mrx_alt_excl_drugs_yn | string | | | mrx_alt_excl_max_plan_amt | double | | | mrx_alt_fulfill_desc | string | | | mrx_alt_gap_covg_brand | string | | | mrx_alt_gap_covg_gen | string | | | mrx_alt_gap_covg_tier | string | | | mrx_alt_gap_covg_yn | string | | | mrx_alt_gap_drug_type | string | | | mrx_alt_gen_coins_pct | double | | | mrx_alt_gen_copay_amt | double | | | mrx_alt_gen_cstshr_struct | string | | | mrx_alt_ira_covg_tier | string | | | mrx_alt_lim_amt | double | | | mrx_alt_max_enroll_mmp_amt | double | | | mrx_alt_max_enroll_mmp_yn | string | | | mrx_alt_no_ded_tier | string | | | mrx_alt_oon_cstshr_struct | string | | | mrx_alt_post_icl_yn | string | | | mrx_alt_pre_icl_cost_share | string | | | mrx_alt_pre_icl_cost_share_mmp | string | | | mrx_alt_pre_icl_exclud_only_yn | string | | | mrx_alt_pre_icl_lis_mmp_tiers | string | | | mrx_alt_pre_icl_lis_mmp_yn | string | | | mrx_alt_red_cost_sharing | string | | | mrx_alt_red_cost_sharing_items | string | | | mrx_auth_ynba | string | | | mrx_avg_exp_cost_share_attest | string | | | mrx_b_auth_yn | string | | | mrx_b_coins_amt_maacqcost | double | | | mrx_b_coins_awp_disc | double | | | mrx_b_coins_covbasis | string | | | mrx_b_coins_max_dispfee | double | | | mrx_b_coins_min_dispfee | double | | | mrx_b_coins_pct | double | | | mrx_b_coins_prp_disc | double | | | mrx_b_coins_yn | string | | | mrx_b_copay_max_amt | double | | | mrx_b_copay_min_amt | double | | | mrx_b_copay_yn | string | | | mrx_b_ded_amt | double | | | mrx_b_ded_yn | string | | | mrx_b_max_oop_amt | double | | | mrx_b_max_oop_per | string | | | mrx_b_max_oop_yn | string | | | mrx_ba_cov_lmt_amt | double | | | mrx_ba_cov_lmt_yn | string | | | mrx_ba_cstshr_apply | string | | | mrx_ba_cstshr_grps | double | | | mrx_ba_ded_amount | double | | | mrx_ba_ded_charge | string | | | mrx_ba_ooptcs_apply | string | | | mrx_ba_ot_grps | double | | | mrx_basic_plan_yn | string | | | mrx_basic_plan_zero_prem_yn | string | | | mrx_benefit_type | string | | | mrx_ceiling_price_yn | string | | | mrx_d_adher_goal | string | | | mrx_d_adher_goal_desc | string | | | mrx_d_elig_freq_other | string | | | mrx_d_eligcrit_chk | string | | | mrx_d_eligcrit_other | string | | | mrx_d_pmm_flex_chk | string | | | mrx_d_red_cs_lisb_detail | string | | | mrx_d_ri_amt | double | | | mrx_d_ri_elig_rdo | string | | | mrx_d_ri_max_amt | double | | | mrx_d_ri_type_chk | string | | | mrx_d_ri_type_other | string | | | mrx_demo_type | string | | | mrx_demo_yn | string | | | mrx_drug_ben_yn | string | | | mrx_ea_cov_lmt_amt | double | | | mrx_ea_cov_lmt_yn | string | | | mrx_ea_cstshr_apply | string | | | mrx_ea_cstshr_group | double | | | mrx_ea_cstshr_group_sec | double | | | mrx_ea_cstshr_grps | double | | | mrx_ea_cstshr_post_oopt | string | | | mrx_ea_cstshr_post_oopt_sec | string | | | mrx_ea_ded_amount | double | | | mrx_ea_ded_charge | string | | | mrx_ea_oop_th_amt | double | | | mrx_ea_oop_th_amt_sec | double | | | mrx_ea_oop_th_yn | string | | | mrx_ea_oop_th_yn_sec | string | | | mrx_ea_sec_covlmt_icl_amt | double | | | mrx_ea_sec_covlmt_icl_yn | string | | | mrx_excluded_tiers_yn | string | | | mrx_first_fill | string | | | mrx_floor_price_yn | string | | | mrx_form_model_desc | string | | | mrx_form_model_type | string | | | mrx_form_tier_model_2 | string | | | mrx_form_tier_model_2_mmp | string | | | mrx_form_tier_model_3 | string | | | mrx_form_tier_model_3_mmp | string | | | mrx_form_tier_model_4 | string | | | mrx_form_tier_model_4_mmp | string | | | mrx_form_tier_model_5 | string | | | mrx_form_tier_model_5_mmp | string | | | mrx_form_tier_model_5_opt1 | string | | | mrx_form_tier_model_5_opt2 | string | | | mrx_form_tier_model_5_opt3 | string | | | mrx_form_tier_model_5_opt4 | string | | | mrx_form_tier_model_5_opt5 | string | | | mrx_form_tier_model_5_opt6 | string | | | mrx_form_tier_model_6 | string | | | mrx_form_tier_model_6_mmp | string | | | mrx_form_tier_model_6_opt1 | string | | | mrx_form_tier_model_6_opt2 | string | | | mrx_form_tier_model_6_opt3 | string | | | mrx_form_tier_model_6_opt4 | string | | | mrx_form_tier_model_6_opt5 | string | | | mrx_formulary_tiers_num | string | | | mrx_formulary_yn | string | | | mrx_free_gnrc_max_amt | double | | | mrx_free_gnrc_yn | string | | | mrx_gen_extd_first_fill | string | | | mrx_gen_in_1m | double | | | mrx_gen_in_2m | double | | | mrx_gen_in_3m | double | | | mrx_gen_innpp_1m | double | | | mrx_gen_innpp_2m | double | | | mrx_gen_innpp_3m | double | | | mrx_gen_innpp_os | double | | | mrx_gen_inp_1m | double | | | mrx_gen_inp_2m | double | | | mrx_gen_inp_3m | double | | | mrx_gen_inp_os | double | | | mrx_gen_inpp_1m | double | | | mrx_gen_inpp_2m | double | | | mrx_gen_inpp_3m | double | | | mrx_gen_inpp_os | double | | | mrx_gen_ira_ltcp_coins_1m | double | | | mrx_gen_ira_ltcp_copay_1m | double | | | mrx_gen_ira_mostd_coins_1m | double | | | mrx_gen_ira_mostd_coins_2m | double | | | mrx_gen_ira_mostd_coins_3m | double | | | mrx_gen_ira_mostd_copay_1m | double | | | mrx_gen_ira_mostd_copay_2m | double | | | mrx_gen_ira_mostd_copay_3m | double | | | mrx_gen_ira_oonp_coins_1m | double | | | mrx_gen_ira_oonp_coins_othnum | double | | | mrx_gen_ira_oonp_copay_1m | double | | | mrx_gen_ira_oonp_copay_othnum | double | | | mrx_gen_ira_rstd_coins_1m | double | | | mrx_gen_ira_rstd_coins_2m | double | | | mrx_gen_ira_rstd_coins_3m | double | | | mrx_gen_ira_rstd_copay_1m | double | | | mrx_gen_ira_rstd_copay_2m | double | | | mrx_gen_ira_rstd_copay_3m | double | | | mrx_gen_loc | string | | | mrx_gen_loc_in | string | | | mrx_gen_loc_inp | string | | | mrx_gen_loc_ltc | string | | | mrx_gen_loc_mo | string | | | mrx_gen_loc_mop | string | | | mrx_gen_loc_mostd | string | | | mrx_gen_loc_oon | string | | | mrx_gen_loc_rstd | string | | | mrx_gen_ltc_1m | double | | | mrx_gen_ltcp_1m | double | | | mrx_gen_ltcp_b_1m | double | | | mrx_gen_ltcp_b_os | double | | | mrx_gen_ltcp_g_1m | double | | | mrx_gen_ltcp_g_os | double | | | mrx_gen_mo_1m | double | | | mrx_gen_mo_2m | double | | | mrx_gen_mo_3m | double | | | mrx_gen_mo_os | double | | | mrx_gen_monpp_1m | double | | | mrx_gen_monpp_2m | double | | | mrx_gen_monpp_3m | double | | | mrx_gen_monpp_os | double | | | mrx_gen_mop_1m | double | | | mrx_gen_mop_2m | double | | | mrx_gen_mop_3m | double | | | mrx_gen_mopp_1m | double | | | mrx_gen_mopp_2m | double | | | mrx_gen_mopp_3m | double | | | mrx_gen_mopp_os | double | | | mrx_gen_mostd_1m | double | | | mrx_gen_mostd_2m | double | | | mrx_gen_mostd_3m | double | | | mrx_gen_oon_1m | double | | | mrx_gen_oon_os | double | | | mrx_gen_oonp_1m | double | | | mrx_gen_oonp_3m | double | | | mrx_gen_oonp_os | double | | | mrx_gen_rstd_1m | double | | | mrx_gen_rstd_2m | double | | | mrx_gen_rstd_3m | double | | | mrx_grp_coins_yn | string | | | mrx_grp_copay_yn | string | | | mrx_grp_id | string | | | mrx_grp_innpp_1m_num | double | | | mrx_grp_innpp_3m_num | double | | | mrx_grp_innpp_coins_1m | double | | | mrx_grp_innpp_coins_3m | double | | | mrx_grp_innpp_coins_os | double | | | mrx_grp_innpp_copay_1m | double | | | mrx_grp_innpp_copay_3m | double | | | mrx_grp_innpp_copay_os | double | | | mrx_grp_innpp_othnum | double | | | mrx_grp_innpp_presup | string | | | mrx_grp_inpp_1m_num | double | | | mrx_grp_inpp_3m_num | double | | | mrx_grp_inpp_co_num | double | | | mrx_grp_inpp_coins_1m | double | | | mrx_grp_inpp_coins_3m | double | | | mrx_grp_inpp_coins_os | double | | | mrx_grp_inpp_copay_1m | double | | | mrx_grp_inpp_copay_3m | double | | | mrx_grp_inpp_copay_os | double | | | mrx_grp_inpp_ps | string | | | mrx_grp_lbl | string | | | mrx_grp_lbl1 | string | | | mrx_grp_lbl2 | string | | | mrx_grp_locat | string | | | mrx_grp_mo_1m_num | double | | | mrx_grp_mo_3m_num | double | | | mrx_grp_mo_coins_1m | double | | | mrx_grp_mo_coins_3m | double | | | mrx_grp_mo_coins_os | double | | | mrx_grp_mo_copay_1m | double | | | mrx_grp_mo_copay_3m | double | | | mrx_grp_mo_copay_os | double | | | mrx_grp_mo_othnum | double | | | mrx_grp_mo_presup | string | | | mrx_grp_oonp_1m_num | double | | | mrx_grp_oonp_3m_num | double | | | mrx_grp_oonp_coins_1m | double | | | mrx_grp_oonp_coins_3m | double | | | mrx_grp_oonp_coins_os | double | | | mrx_grp_oonp_copay_1m | double | | | mrx_grp_oonp_copay_3m | double | | | mrx_grp_oonp_copay_os | double | | | mrx_grp_oonp_othnumn | double | | | mrx_grp_oonp_presup | string | | | mrx_grp_tier_lbl1 | string | | | mrx_grp_tier_lbl2 | string | | | mrx_grp_tierlbl | string | | | mrx_grp_type | string | | | mrx_grp_type_id | string | | | mrx_innpp_1m_num | double | | | mrx_innpp_3m_num | double | | | mrx_innpp_othnum | double | | | mrx_innpp_presup | string | | | mrx_inpp_1m_num | double | | | mrx_inpp_3m_num | double | | | mrx_inpp_co_num | double | | | mrx_inpp_ps | string | | | mrx_insulin_attest | string | | | mrx_limit_ofc_yn | string | | | mrx_locat | string | | | mrx_ltc_attest_flag | string | | | mrx_mo_1m_num | double | | | mrx_mo_3m_num | double | | | mrx_mo_othnum | double | | | mrx_mo_presup | string | | | mrx_nat_rx_cov_yn | string | | | mrx_oonp_1m_num | double | | | mrx_oonp_3m_num | double | | | mrx_oonp_othnumn | double | | | mrx_oonp_presup | string | | | mrx_otc_meds_attest_flag | string | | | mrx_otc_meds_pay_ump_yn | string | | | mrx_otc_step_therapy_yn | string | | | mrx_partd_network_loc | string | | | mrx_pen_lessexpen_yn | string | | | mrx_pen_oonpharm_yn | string | | | mrx_post_exclud_only_yn | string | | | mrx_pro_part_fill | string | | | mrx_ptd_nat_avg | double | | | mrx_quantity_limits | string | | | mrx_rai_adh_goal_notes_1rx | string | | | mrx_rai_adh_goal_notes_2rx | string | | | mrx_rai_adh_goal_notes_3rx | string | | | mrx_rai_elig_crit_1rx | string | | | mrx_rai_elig_crit_2rx | string | | | mrx_rai_elig_crit_3rx | string | | | mrx_rai_elig_crit_notes_1rx | string | | | mrx_rai_elig_crit_notes_2rx | string | | | mrx_rai_elig_crit_notes_3rx | string | | | mrx_rai_frq_ri_desc_1rx | string | | | mrx_rai_frq_ri_desc_2rx | string | | | mrx_rai_frq_ri_desc_3rx | string | | | mrx_rai_meet_adh_goal_yn_1rx | string | | | mrx_rai_meet_adh_goal_yn_2rx | string | | | mrx_rai_meet_adh_goal_yn_3rx | string | | | mrx_rai_num_partd_offrd | string | | | mrx_rai_off_rew_incent_yn | string | | | mrx_rai_rew_inc_notes_1rx | string | | | mrx_rai_rew_inc_notes_2rx | string | | | mrx_rai_rew_inc_notes_3rx | string | | | mrx_rai_type_partd_rew_1rx | string | | | mrx_rai_type_partd_rew_2rx | string | | | mrx_rai_type_partd_rew_3rx | string | | | mrx_reduct_cost_yn | string | | | mrx_snp_zerocost_attest | string | | | mrx_sp_access_yn | string | | | mrx_step_ther_drugs_yn | string | | | mrx_tier_extd_days_gen_yn | string | | | mrx_tier_form_ex | string | | | mrx_tier_form_ex_2 | double | | | mrx_tier_form_ex_2_yn | string | | | mrx_tier_group_num | double | | | mrx_v_bid_attestation | string | | | mrx_vaccine_attest | string | | | orgtype | string | | | part_d_enhncd_cvrg_demo | string | | | part_d_model_demo | string | | | pbp_a_ben_cov | string | | | pbp_a_plan_type | 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_row_ordinal | double | | | mrx_bal_model_attest | string | | | mrx_bal_opt_flex | string | | | mrx_bal_opt_flex_other_desc | string | | | mrx_balance_covg_tier | string | | | mrx_balance_cstshr_struc_type | string | | | mrx_balance_deductible_amt | double | | | mrx_balance_deductible_opt | string | | | mrx_balance_extended_tier | string | | | mrx_balance_mo_tier | string | | | mrx_dsnp_buydown_attest | string | | | slice_latest_parse_revision | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.vw_pbp_mrx_current_v20261013a WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.vw_pbp_mrx_current_v20261013a")` first. # X12 healthcare code-list source-limit ledger `medicare_silver.x12_code_list_asset` · Medicare Advantage, Part D, Medicaid · status live · 16 rows Metadata-only inventory of the 16 X12 healthcare code-list families relevant to claim, remittance, status, payment, adjustment, service, and related transaction semantics, preserving publisher list identity, maintainer, observed release date, source URL, licensing disposition, and the exact no-payload boundary. **Grain.** One row per governed corpus snapshot and X12 healthcare code-list family. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | list_name | string | | | external_code_list_id | string | | | maintained_by | string | | | publisher_last_modified | date | | | asset_url | string | | | asset_status | string | | | license_class | string | | | payload_acquired | boolean | | | ai_use_permission | string | | | subscription_required_for_electronic_payload | boolean | | | existing_vlada_overlap_source_id | string | | | publisher_index_url | string | | | ip_policy_url | string | | | subscription_url | string | | | source_limit | string | | | is_current_release | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.x12_code_list_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.x12_code_list_asset")` first. # Medicare contract dimension `vlada_curated.dim_contract` · Medicare Advantage, Part D, Medicaid · status live · 2,166 rows The resolving dimension for Medicare contract_id, built because 89 catalogued assets carried the identifier and nothing defined it. Population is the UNION of contract_id observed across seven sources (monthly contract enrollment, stars contracts, MA contract service area, plan- and county-level enrollment, landscape, SNP), because per-source counts disagree by up to 300 and no single source is authoritative. Attributes are LAST OBSERVED with the observation month carried alongside, so staleness is visible rather than assumed; they are not modelled per year, which would make this a slowly-changing fact and fan out every join through it. **Grain.** One row per Medicare contract_id — the authority for cms:contract_id. | column | type | meaning | |---|---|---| | contract_id | string | | | contract_type_code | string | | | contract_type | varchar(39) | | | organization_type | string | | | organization_name | string | | | marketing_name | string | | | parent_organization | string | | | plan_type | string | | | contract_effective_date | date | | | attributes_as_of_month | date | | | attributes_as_of_rating_year | int | | | attribute_source | varchar(35) | | | first_observed_month | date | | | last_observed_month | date | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_contract WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_contract")` first. # IPPS hospital base payment per DRG weight, by hospital and fiscal year `vlada_curated.vw_ipps_hospital_base` · Medicare Advantage, Part D, Medicaid · status live · 81,029 rows Each IPPS hospital's payment base per DRG weight for a fiscal year, from the standardized amounts and its wage index: multiply by a DRG's relative weight for the unadjusted payment. FY2006 to FY2026. **Grain.** One row per (fiscal_year, ccn): the hospital's wage-adjusted operating base, capital base, and base payment per DRG weight. | column | type | meaning | |---|---|---| | fiscal_year | int | | | ccn | string | | | wage_index | double | | | operating_base_wage_adjusted | double | | | capital_base | double | | | ipps_base_per_drg_weight | double | | | effective_period_start | date | | | effective_period_end | date | | | cms_vintage_sequence | bigint | | | asserted_at | date | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_ipps_hospital_base WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_ipps_hospital_base")` first. # Medicare benchmark view (allowed by code × class) `vlada_curated.vw_medicare_benchmark` · Medicare Advantage, Part D, Medicaid · status live A unified Medicare-allowed benchmark view by billing code + class, with the medicare_source (PFS/OPPS/etc.) and year. The single benchmark surface the RBP pricing router reads for "Medicare allowed for this code". **Grain.** One row per (billing_code, billing_class) — Medicare allowed + source/year. | column | type | meaning | |---|---|---| | billing_code | string | | | billing_class | varchar(13) | | | medicare_allowed | double | | | medicare_source | varchar(19) | | | medicare_year | int | | Tools that read it: compare_hospital_rates, medicare_allowed Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_medicare_benchmark WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_medicare_benchmark")` first. # Medicare benchmark, effective-dated (what Medicare would have paid on a date) `vlada_curated.vw_medicare_benchmark_effective` · Medicare Advantage, Part D, Medicaid · status live · 1,077,582 rows The effective-dated Medicare benchmark: the allowed amount per billing code and setting for every effective period since 2001 (93 monthly periods), with the source schedule (PFS, OPPS, ASC, CLFS, DME) and the rate semantics. The current-only view vlada_curated.vw_medicare_benchmark is a projection of this; use this one for 'what would Medicare have paid on this date'. **Grain.** One row per (billing_code, billing_class, facility_class, pfs_modifier, effective_period_start): the Medicare allowed amount in force from that date. | column | type | meaning | |---|---|---| | billing_code | string | | | billing_class | varchar(13) | | | facility_class | varchar(26) | | | pfs_modifier | string | | | medicare_allowed | double | | | medicare_source | varchar(19) | | | benchmark_year | int | | | priority | int | | | effective_period_start | date | | | effective_period_end | date | | | pfs_payment_track | string | | | rate_semantics | varchar(34) | | | cms_vintage_sequence | bigint | | | asserted_at | date | | | parse_revision | int | | Tools that read it: medicare_allowed Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_medicare_benchmark_effective WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_medicare_benchmark_effective")` first. # Hospital MRF version ledger `dim_mrf_version` · Provenance · status live Per-MRF-fetch version tracking for the hospital substrate. fact_hospital_ chargemaster rows reference it via mrf_version_id. Detects ping-only updates. **Grain.** One row per (hospital_ccn, content_sha256) observed HPT file. Query it: `query_substrate` with `SELECT ... FROM dim_mrf_version WHERE ... LIMIT 100`; read `describe_data_source("dim_mrf_version")` first. # Unified substrate MRF version ledger `dim_substrate_mrf_version` · Provenance · status live Substrate-wide audit chain: every fetched MRF (commercial / hospital / medicare) gets a row with content hash, raw S3 key, parser artifact hash, and first/last-seen timestamps. The provenance backbone for receipts + replay. **Grain.** One row per (substrate, natural_key, content_sha256) observed MRF file. Query it: `query_substrate` with `SELECT ... FROM dim_substrate_mrf_version WHERE ... LIMIT 100`; read `describe_data_source("dim_substrate_mrf_version")` first. # Drug source registry cache `drug_source_registry_cache` · Provenance · status live Drug-side mirror of medicare_source_registry_cache. source_publication_date generalizes cms_publication_date (FDA / DOL / NLM / HRSA / SEC / state DOIs). **Grain.** One row per (source_id, observed_period, s3_object). Query it: `query_substrate` with `SELECT ... FROM drug_source_registry_cache WHERE ... LIMIT 100`; read `describe_data_source("drug_source_registry_cache")` first. # State Marketplace content-addressed artifact history `medicare_silver.fact_hix_state_artifact_revision_history` · Provenance · status partial · 524 rows Common Bronze-first physical-history contract for heterogeneous state Marketplace PDFs, workbooks, JSON feeds and dashboard exports; the exact first candidate plan contains 367 occurrences and 366 unique source bodies. **Grain.** One source and logical-release revision at an exact content SHA, with separate source-native observation and reviewed-pointer histories. | column | type | meaning | |---|---|---| | artifact_id | string | | | source_id | string | | | state | string | | | family | string | | | release_key | string | | | content_sha256 | string | | | content_bytes | bigint | | | media_type | string | | | extension | string | | | source_url | string | | | request_url | string | | | bronze_object_key | string | | | bronze_version_id | string | | | observed_at | string | | | parser_id | string | | | parser_version | string | | | expected_observation_rows | bigint | | | physical_snapshot_id | bigint | | | supersedes_artifact_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_hix_state_artifact_revision_history WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hix_state_artifact_revision_history")` first. # Medicare source registry cache `medicare_source_registry_cache` · Provenance · status live Postgres mirror of the medicare_silver source-registry Iceberg table — bronze manifest in queryable form for restatement detection + replay. **Grain.** One row per (source_id, observed_period, s3_object). Query it: `query_substrate` with `SELECT ... FROM medicare_source_registry_cache WHERE ... LIMIT 100`; read `describe_data_source("medicare_source_registry_cache")` first. # NLM AccessGUDID — Device Identity (FDA Global UDI Database) `drug_silver.dim_device_udi` · Provider identity · status live · 5,129,241 rows The FDA Global UDI Database (via NLM AccessGUDID) — every marketed medical device by its Device Identifier (PrimaryDI): brand, version/model, catalog number, company (DUNS), description, commercial-distribution status, and flags (single-use, sterile, MRI safety, Rx/OTC, kit, combination product). Resolves the UDI/DI on an itemized bill or implant log to canonical device identity — de-anonymizes high-cost implant/device line items driving chargemaster markups. ~5.1M devices, partition by release_month. **Grain.** One row per device (release_month, PrimaryDI) — brand/model/company + flags. | column | type | meaning | |---|---|---| | release_month | string | | | primary_di | string | | | public_device_record_key | string | | | version_status | string | | | record_status | string | | | public_version_date | string | | | commercial_distribution_status | string | | | commercial_distribution_end_date | string | | | brand_name | string | | | version_model_number | string | | | catalog_number | string | | | duns_number | string | | | company_name | string | | | device_description | string | | | dm_exempt | string | | | device_hctp | string | | | device_kit | string | | | device_combination_product | string | | | single_use | string | | | lot_batch | string | | | serial_number | string | | | mri_safety_status | string | | | rx | string | | | otc | string | | | device_sterile | string | | | device_count | 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 drug_silver.dim_device_udi WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_device_udi")` first. # CMS Facility Affiliation (Doctors & Clinicians) — NPI→CCN bridge `drug_silver.dim_facility_affiliation` · Provider identity · status live The CMS "Facility Affiliation" file from the Doctors and Clinicians / Provider Data Catalog — maps each clinician NPI to the facilities they are affiliated with (Hospital, Home health agency, Hospice, SNF, etc.), carrying the facility CCN. The standing NPI→CCN affiliation bridge used for provider substrate lookups and RBP duplicate-discount screening. Partitioned by facility_type so a single category scans without a full-table read. **Grain.** One row per individual clinician-facility affiliation: exactly one row per (ind_pac_id, facility_ccn) pair. Verified — distinct (ind_pac_id, facility_ccn) = 2,247,604 = full row_count. Each row says "this clinician is affiliated with this facility." A clinician appears in multiple rows (one per affiliated facility; avg 2.39 facilities/provider) and a facility appears in many rows (avg 54.7 providers/facility). This is a single 2026-05-19 snapshot, so there is no time/version dimension in the grain. **How to use it.** To list every clinician affiliated with a given hospital: SELECT npi, ind_pac_id, provider_first_name, provider_last_name FROM drug_silver.dim_facility_affiliation WHERE facility_ccn = '090012'. To roll affiliations up by setting: SELECT facility_type, COUNT(DISTINCT ind_pac_id) FROM drug_silver.dim_facility_affiliation GROUP BY facility_type. To attribute a provider-level cost/utilization metric to facilities, join your provider table to this on npi (or ind_pac_id) to fan it out to facility_ccn, then join facility_ccn to a facility/CCN dimension — using COALESCE(facility_type_ccn, facility_ccn) when you need the canonical numeric CCN. **Traps.** - Grain key is (ind_pac_id, facility_ccn), NOT (npi, facility_ccn). (npi, facility_ccn) is NOT unique: 44 rows collide because 14 clinicians are enrolled under two different ind_pac_ids and appear twice at the same facility (e.g. npi 1609495936 at CCN 100088 under PAC 0042395923 and 7416387147). Join/dedup on ind_pac_id to be safe; npi alone double-counts those people. - facility_ccn is a STRING, 6 chars, zero-padded, and NOT always numeric. ~10,156 values contain a letter (alpha distinct-part units like '23T146'). Casting to int will drop leading zeros and break on alpha CCNs. Always keep/compare as a left-zero-padded string. - facility_type_ccn is NULL 99.6% of the time and that NULL is meaningful-by-absence, not missing data. It is populated only for the ~8,702 alpha CCNs that map to a canonical numeric form (e.g. '23T146' -> '230146'). To get a clean all-numeric CCN, use COALESCE(facility_type_ccn, facility_ccn) — but note ~1,454 alpha CCNs still won't normalize. - This is a SINGLE static snapshot dated 2026-05-19. is_current is true for every row, and effective_period_start / observed_period / asserted_at / vintage all have exactly 1 value — there is no time series and no SCD history yet, despite the bitemporal columns. effective_period_end = 2099-12-31 is the 'open/still valid' sentinel, not a real date. ingested_at and drug_source_version_id are 100% NULL. - This is an affiliation BRIDGE, not a roster of facilities or of clinicians. It does not contain facility names, addresses, specialties, or any cost/rate amounts. Provider names are attributes of the clinician repeated on every facility row (don't treat name rows as distinct people). Join out to a facility dimension (via facility_ccn) or a clinician dimension (via ind_pac_id/npi) for those attributes. | column | type | meaning | |---|---|---| | npi | string | Individual clinician's 10-digit National Provider Identifier. Always present (0 nulls), always 10 digits. 939,059 distinct. Identifies the person. NOTE: not a clean key here — 14 NPIs map to >1 ind_pac_id, so use ind_pac_id (not npi) as the individual key in joins. | | facility_ccn | string | The facility's CMS Certification Number — the facility identifier and the second half of the grain. 6-character, zero-padded, MUST stay a string (e.g. '090012'). 41,087 distinct facilities. NOT always numeric: ~10,156 values contain a letter for special distinct-part units (e.g. '23T146' = a 'T'/rehab unit). CCN range encodes facility type (each CCN maps to exactly 1 facility_type). | | ind_pac_id | string | Individual PECOS Associate Control ID — CMS's 10-digit identifier for the enrolled individual clinician. THE load-bearing individual key: every ind_pac_id maps to exactly 1 npi (0 violations), and (ind_pac_id, facility_ccn) is the unique grain. 939,073 distinct (slightly more than distinct NPIs because 14 people are enrolled under 2 PAC IDs). | | provider_last_name | string | Clinician last name (free text, uppercase). Always present. Functionally attached to the clinician (ind_pac_id), repeated on every facility row for that clinician. | | provider_first_name | string | Clinician first name (uppercase). Always present. | | provider_middle_name | string | Clinician middle name/initial. NULL ~34% (763,234 rows) — sparse-by-nature, not a meaningful flag; simply absent for many people. | | provider_suffix | string | Name suffix (Jr/Sr/III etc.). NULL ~98% (2,212,006 rows) — sparse; absence just means no suffix, not missing data. | | facility_type | string | Clean 7-value category of the facility, derived from the CCN range: Hospital (85%, 1.9M), Home health agency, Hospice, Nursing home, Dialysis facility, Inpatient rehabilitation facility, Long-term care hospital. Always present; 1 type per CCN. This is the column to use to filter affiliations by setting. | | facility_type_ccn | string | GOTCHA COLUMN. NULL in 99.6% of rows (2,238,902). When non-null (8,702 rows) it is the NORMALIZED all-numeric CCN for facilities whose facility_ccn carries an alpha distinct-part suffix — e.g. facility_ccn '23T146' -> facility_type_ccn '230146'. It is a strict subset of alpha CCNs (every non-null here has an alpha facility_ccn; only IRF/Nursing-home 'T'-style units are mapped; ~1,454 other alpha CCNs get no value). NULL just means facility_ccn is already the canonical number — it does NOT mean missing. | | observed_period | date | Date the source data was observed/loaded. Constant = 2026-05-19 across all rows (single snapshot). | | asserted_at | date | Date the affiliation fact was asserted. Constant = 2026-05-19. Provenance/bitemporal bookkeeping, not analytically varying here. | | effective_period_start | date | Bitemporal validity start. Constant = 2026-05-19. (Profiler picked this as the time column, but it has only 1 distinct value — the table is static.) | | effective_period_end | date | Bitemporal validity end. Constant = 2099-12-31, the open-ended/far-future sentinel meaning 'still in effect'. | | cms_vintage_sequence | int | CMS source vintage counter. Constant = 1 (first/only vintage loaded). | | parse_revision | int | Parser revision number. Constant = 1. | | parser_artifact_hash | string | SHA256 of the parser artifact that produced these rows (lineage). Constant single value across the snapshot. | | source_url | string | Origin URL of the raw CMS file. Constant — the data.cms.gov Facility_Affiliation.csv from the CMS Provider Data Catalog. Confirms this is verbatim public CMS data. | | sha256_content_hash | string | SHA256 of the source file content (dedup/integrity). Constant single value (one source file). | | source_id | string | Logical source name. Constant = 'cms_facility_affiliation'. | | is_current | boolean | Snapshot currency flag. ALL rows = true (no superseded/historical rows yet). Since the table is a single snapshot, filtering on is_current is currently a no-op — but it exists for future multi-snapshot SCD behavior. | | vintage_tag | string | Human-readable snapshot tag. Constant = 'facility_affiliation_2026-05-19'. The handle for this load. | | ingested_at | timestamp | Ingestion timestamp. Entirely NULL (0 distinct) in this table — not populated for this source. | | bronze_object_key | string | S3 key of the bronze object this silver row came from. Constant = 'drug/bronze/cms_facility_affiliation/2026-05-19/...csv'. Lineage to the raw landing file. | | drug_source_version_id | string | Drug-pipeline source version id. Entirely NULL (0 distinct) — not used for this CMS source. | | s3_version_id | string | S3 object version id of the source file. Constant single value (one versioned object). | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_facility_affiliation WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_facility_affiliation")` first. # HHS-OIG Corporate Integrity Agreements (CIA) `drug_silver.dim_hhs_oig_cia` · Provider identity · status live HHS-OIG Corporate Integrity Agreements — entities under a CIA following a fraud/abuse settlement, with settlement amount, location, and effective date. Accountability signal on health systems / providers (often paired with LEIE for the integrity picture). **Grain.** One row per CIA entity (entity_slug) within a snapshot. On the current snapshot (is_current=true, vintage_tag hhs_oig_cia_2026-05-19) there are exactly 332 rows = 332 distinct entity_slug = 332 distinct detail_url, so entity_slug alone is the minimal verified key when you filter is_current=true. Across the full 704-row table the grain is entity_slug + vintage_tag (two snapshots present), but the older 2026-05-16 snapshot is a dirty pre-dedup load where many slugs repeat ~3x — always filter is_current=true and treat entity_slug as the key. **How to use it.** List the largest active HHS-OIG Corporate Integrity Agreements and their settlement amounts: SELECT entity_name, location_state, settlement_amount_usd, effective_date FROM drug_silver.dim_hhs_oig_cia WHERE is_current=true AND settlement_amount_usd IS NOT NULL ORDER BY settlement_amount_usd DESC LIMIT 20; — answers "which healthcare/pharma entities are currently under an OIG integrity agreement and how big was the settlement that triggered it" (top results: AmerisourceBergen $625M, Novartis $591M, Mylan $465M, Rite Aid $409M). **Traps.** - Always filter is_current=true. The table holds 704 rows across 2 snapshots; the older vintage_tag='hhs_oig_cia_2026-05-16' (is_current=false, 372 rows) is a DIRTY pre-dedup load where ~40 entity_slugs repeat 3x (same slug, 3 different sha256_content_hash, NULL bronze_object_key/s3_version_id). entity_slug is unique ONLY on the current snapshot (332 = 332). - settlement_amount_usd is NULL for 12 of 332 entities (and location_state NULL for 2). NULL means OIG published no settlement figure, NOT $0 — exclude nulls (or COUNT them separately) before SUM/AVG. Computed stats: min $31,818, max $625M, median ~$5.5M over the 320 with amounts. - entity_name is a raw OIG concatenation: 33 rows pack multiple co-signing legal entities into one string (semicolons / 120+ chars). One CIA row can represent a whole corporate family — do not parse entity_name as a single clean company; use entity_slug/detail_url as the identifier. - Three column pairs are effectively redundant or constant: effective_date == effective_period_start on every row; effective_period_end is ALWAYS the sentinel 2099-12-31 (open/active, not a real end date); observed_period == asserted_at == 2026-05-19 (the scrape date). The 'monthly' periodicity the profiler infers from effective_date is just CIA signing dates, not a refresh cadence. - This is OIG Corporate Integrity Agreement / fraud-enforcement data, NOT a price/rate table — settlement_amount_usd is a one-time fraud-settlement penalty, not a healthcare cost or drug price. It belongs in the drug substrate because the headline CIAs are drug/pharmacy fraud (AmerisourceBergen, Novartis, Mylan, Rite Aid). Join to drug/provider entities by NAME ONLY — there is no NPI/NDC/EIN key, and drug_source_version_id is null for every row. - lineage columns source_id, source_url, sha256_content_hash, s3_version_id, bronze_object_key, parser_artifact_hash, vintage_tag, cms_vintage_sequence, parse_revision are all SINGLE-VALUED on the current snapshot (one scraped corpus file -> all 332 rows), so none of them is a usable grain/key; only entity_slug (or detail_url) distinguishes rows. | column | type | meaning | |---|---|---| | entity_slug | string | URL-safe slug OIG uses in the entity's detail-page path (e.g. 'recovery-center-of-usa-llc'). The clean, stable per-entity identifier and the GRAIN KEY on is_current=true (332 distinct = row count). | | entity_name | string | Full legal name(s) of the entity as published by OIG. CAUTION: for 33 of 332 rows this is a long semicolon/comma-delimited concatenation of ALL co-signing legal entities under one CIA (e.g. the Saber Healthcare row lists 11 LLCs). It is the raw OIG string, not a normalized single entity. | | detail_url | string | Full URL to that entity's OIG CIA detail page. Unique per row on the current snapshot (1:1 with entity_slug), so also a valid key. | | location_city | string | City of the entity's principal location as listed by OIG. Non-null on all current rows. | | location_state | string | 2-letter U.S. state of the entity. NULL for 2 of 332 rows. Concentrated in FL (48), CA (45), PA (23), NY (21), TX (18) — classic healthcare-fraud-enforcement geography. | | settlement_amount_usd | double | Dollar amount of the associated civil/False-Claims settlement that triggered the CIA, in USD (double). Range $31,818 to $625,000,000, median ~$5.5M. NULL for 12 of 332 rows — a meaningful null: OIG did not publish a settlement figure for that CIA (do not treat NULL as $0). | | effective_date | date | Date the CIA took effect (CIA signing/effective date). Spans 2016-10-13 to 2026-05-04. IDENTICAL to effective_period_start on every current row (the two columns are redundant). | | observed_period | date | Date this row was observed/scraped from the OIG site. Constant 2026-05-19 across all current rows (the snapshot date). Equal to asserted_at. | | asserted_at | date | Lineage timestamp = when the fact was asserted into the table. Constant 2026-05-19 on current rows; equals observed_period here. Provenance metadata, not a business date. | | effective_period_start | date | SCD-style validity start for the row; equals effective_date on every current row (0 mismatches). Redundant with effective_date. | | effective_period_end | date | SCD-style validity end. ALWAYS the open-ended sentinel 2099-12-31 on the current snapshot — meaning the CIA/row is treated as currently active/open. Carries no real per-row information here; do not use it as a CIA-end/termination date. | | cms_vintage_sequence | int | Monotonic vintage-sequence integer from the standard drug_silver lineage scaffold. Constant 1 for all current rows (single vintage). Plumbing, not analytic. | | parse_revision | int | Parser revision number for this load. Constant 1 on current rows. Lineage metadata. | | parser_artifact_hash | string | SHA-256 of the parser code/artifact that produced the row. Constant across the current snapshot (one parser run). Differs between the 2026-05-16 and 2026-05-19 snapshots. Provenance metadata. | | source_url | string | The OIG index/browse page that was scraped (https://oig.hhs.gov/.../browse-cias/). Constant for all rows — this is the LIST page, distinct from per-entity detail_url. | | sha256_content_hash | string | SHA-256 of the bronze source corpus file. Constant (one file) on the current snapshot. NOTE: in the dirty 2026-05-16 snapshot a single slug carries 3 different content hashes — the artifact of that snapshot's non-dedup; on current it is clean/single. | | source_id | string | Logical source identifier, constant 'hhs_oig_cia' for the whole table. Use to recognize this source in the catalog. | | is_current | boolean | Snapshot flag. TRUE = the live 332-row 2026-05-19 snapshot; FALSE = the superseded/dirty 372-row 2026-05-16 snapshot. ALWAYS filter is_current=true for analysis. | | bronze_object_key | string | S3 key of the bronze corpus .txt the rows were parsed from. Populated/constant on current rows; NULL on the old 2026-05-16 snapshot rows. Provenance. | | s3_version_id | string | S3 object version id of that bronze file. Populated/constant on current; NULL on old snapshot. Provenance. | | vintage_tag | string | Human-readable snapshot label 'hhs_oig_cia_'. The two values present (hhs_oig_cia_2026-05-16, hhs_oig_cia_2026-05-19) are the snapshot discriminator and the second key component across the full table. | | drug_source_version_id | string | Foreign-key slot to a drug source-version lineage record. NULL for ALL 332 current rows (and all rows) — an unused/not-populated column for this source; do not rely on it for joins. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_hhs_oig_cia WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_hhs_oig_cia")` first. # HRSA 340B Covered Entity Registry (OPAIS) `drug_silver.dim_hrsa_covered_entity` · Provider identity · status live · 92,814 rows The HRSA OPAIS registry of 340B covered entities — hospitals/clinics eligible to buy outpatient drugs at 340B ceiling prices, with entity type, name/sub-name, participation status + start date, grant number, address, and contacts. Identifies 340B-eligible providers (the spread between 340B acquisition and billed price is a known overpayment vector). **Grain.** One row per 340B-registered entity SITE, identified by its 340B ID (id_340b). 92,814 rows = 92,814 distinct id_340b. The internal HRSA key ce_id is 1:1 with id_340b (also 92,814 distinct), so either alone is a valid minimal key — id_340b is the canonical business key. This is a single point-in-time snapshot (observed_period = 2026-05-15), so no date column is needed in the key. **How to use it.** Count active 340B sites by state and entity type: SELECT street_address_state, entity_type, count(*) FROM drug_silver.dim_hrsa_covered_entity WHERE participating = true GROUP BY 1,2 ORDER BY 3 DESC. Answers 'how many currently-active 340B-eligible provider sites of each type are in each state' — i.e. which providers get 340B discounted drug acquisition cost (vs WAC/ASP), the basis for 340B carve-out and duplicate-discount analysis. To roll up to organizations, group on regexp_replace(id_340b,'-[0-9A-Za-z]+$','') instead. **Traps.** - NOT an active-providers list: 31% of rows (28,352) are participating=false (terminated/decertified or pending). You MUST filter participating=true to count or join only active 340B sites; the table deliberately retains inactive entities. - id_340b is the SITE grain, not the organization grain. One parent organization registers many child sites via the -NN suffix (73,861 parents → 92,814 sites; Cleveland Clinic alone = 498 sites). To analyze at the org level, strip the trailing -[alnum]+ suffix (regexp_replace(id_340b,'-[0-9A-Za-z]+$','')) and aggregate. Counting distinct id_340b counts sites, not organizations. - Single static snapshot only (observed_period/asserted_at/effective_period_start/effective_period_end/sha256_content_hash/bronze_object_key all = one value, 2026-05-15). All the temporal, vintage, and provenance columns are constants here — they exist for the cross-table snapshot/versioning framework, not for time-series analysis within this table. is_current=true on every row, so it currently de-dupes nothing. - effective_period_end EQUALS effective_period_start (both 2026-05-15) — this is a point-in-time observation, NOT an SCD-2 validity interval. Do not use [effective_period_start, effective_period_end] as a date range. - Nulls carry meaning and code-conditional presence: grant_number is null for ~all DSH/RRC/CAH/SCH/PED hospital types (they qualify via the DSH adjustment, not a grant) and populated for grantee types (CH/FP/TB/STD/RW*) — its presence is driven by entity_type. certified_decertified_date is null for 8,550 entities that never had a certify/decertify event (null ≠ inactive). sub_name is null for 9,164 sites with no DBA. drug_source_version_id is 100% null. - ce_id looks like a tidy key but is a sparse internal HRSA sequence (1–117,822 with gaps) — use id_340b as the durable business key for joins; ce_id can be reassigned/non-portable across HRSA vintages. Also: name is free-text and inconsistently cased (UPPER vs Title case for the same org) — normalize before name-based matching; the leading letters of id_340b usually but not always match entity_type (4,243 mismatches). | column | type | meaning | |---|---|---| | id_340b | string | Canonical 340B identification number for the SITE and the table's grain key (92,814 distinct = row_count). Structured: a parent-entity prefix (e.g. CHC00018, RRC360180) plus a -NN child-site suffix; the same parent organization registers many sites (73,861 distinct parents, avg 1.26 sites each, max 498 = Cleveland Clinic). Strip the trailing -[alnum]+ to group sites under their parent. The leading letters usually equal entity_type but not always (4,243 rows differ, e.g. entity_type CH carries a CHC prefix). | | ce_id | int | HRSA-internal numeric covered-entity ID. 1:1 with id_340b (92,814 distinct), so it is an alternate minimal key. Sparse sequence ranging 1–117,822 with gaps — it is an assigned ID, NOT a dense row index, and is not stable/meaningful across HRSA snapshots the way id_340b is. | | entity_type | string | 340B eligibility category code (23 values). Largest: DSH=42,550 (Disproportionate Share Hospitals), CH=16,737 (Community Health Center / FQHC grantees), STD=6,289, RRC=6,077 (Rural Referral Center), CAH=5,588 (Critical Access Hospital), FP=4,022 (Family Planning), SCH=2,835 (Sole Community Hospital), PED=2,773 (Children's), TB=2,453, plus FQHCLA, RWI/RWII (Ryan White), HV (Hemophilia), CAN (Cancer/PCC), HM (Homeless), UI, NH, SPNS. Determines the legal eligibility pathway and roughly whether a grant_number applies. | | name | string | Primary registered organization name (always populated, 0 nulls). Free-text, inconsistently cased across rows (e.g. 'STONE MOUNTAIN HEALTH SERVICES' vs 'Stone Mountain Health Services') — normalize before joining on name. | | sub_name | string | Site-level / sub-organization 'doing business as' name (e.g. a specific clinic under the parent). NULL for 9,164 rows where the site has no distinct sub-name. | | participating | boolean | Boolean: is the site CURRENTLY active in 340B. true=64,462 (~69%), false=28,352 (~31%). CRITICAL: the registry retains terminated/decertified AND not-yet-active entities, so this table is NOT a list of only active 340B sites — you MUST filter participating=true to count active 340B providers. Cannot be derived from dates alone: 1,228 participating=false rows have a FUTURE participating_start_date (approved, pending go-live). | | participating_start_date | date | Date the site's 340B participation began/begins. Ranges 1992-12-01 (program inception era) to 2026-07-01 (future-dated pending starts). Never null. Not unique (many share dates) — not a key. | | grant_number | string | Federal grant award number for grant-based eligibility (e.g. H37RH00048), 3,452 distinct, NOT unique (a grant covers many sites). Present only for grant-funded types (CH, FP, TB, STD, FQHCLA, RW*, HV, HM all 100% have it); NULL for hospital types that qualify via DSH adjustment (DSH, RRC, CAH, SCH, PED, CAN, etc. are ~all null). | | street_address_line_1 | string | Site street address line 1. Fully populated (0 nulls). | | street_address_city | string | Site city. Fully populated. | | street_address_state | string | Two-letter state/territory of the site. Fully populated; 56 distinct = 50 states + DC + 5 territories (PR=191, VI=14, AS=12, MP=11, GU=7). Top: CA 7,350, TX 5,627, NY 5,448, OH 5,126. | | street_address_zip | string | Site ZIP code (string). Fully populated. 5-digit ZIP as observed. | | authorizing_official_name | string | Name of the entity's authorizing official (the legally responsible signer). Fully populated. Note double-spaces between first/last in source data. | | authorizing_official_title | string | Title of the authorizing official (e.g. CEO, Executive Director). | | primary_contact_name | string | Day-to-day 340B contact name. 1 null only. | | primary_contact_title | string | Title of the primary contact (e.g. COO, Director of Pharmacy, 340B Coordinator). | | certified_decertified_date | date | Date of the most recent annual recertification or decertification event. NULL for 8,550 rows (entities that have never been through a certify/decertify event). Range 2014-08-08 to 2026-05-14. A null here does NOT mean inactive — read participating for status. | | edit_date | date | Date the entity record was last edited in HRSA OPAIS. Never null; range 2015-08-24 to 2026-05-14. Use as the per-row freshness/last-modified signal. | | observed_period | date | Snapshot date the data was captured = 2026-05-15 for ALL rows (single value). The de-facto 'as-of' date of the table. | | asserted_at | date | Provenance: when this fact was asserted by the pipeline. Constant 2026-05-15 across all rows in this snapshot. | | effective_period_start | date | Start of the effective interval for the record; constant 2026-05-15. Profiler picks this as the time column but it carries no within-table variance. | | effective_period_end | date | End of the effective interval; constant 2026-05-15 — EQUAL to effective_period_start. This is a point-in-time snapshot, NOT an open-ended SCD-2 interval; do not treat it as a validity range. | | cms_vintage_sequence | int | Vintage/ordering sequence from the shared drug-source framework. Constant 1 (only one vintage loaded). | | parse_revision | int | Parser revision number. Constant 1. | | parser_artifact_hash | string | SHA-256 of the parser artifact used (provenance/reproducibility). Constant across the snapshot. | | source_url | string | Upstream source URL — https://340bopais.hrsa.gov/Reports (HRSA 340B OPAIS public reports). Constant. | | sha256_content_hash | string | SHA-256 of the ingested bronze source file. Single value (one source file) — confirms this is exactly one snapshot. | | source_id | string | Logical source identifier = 'hrsa_opais_ce_registry'. Constant; identifies the HRSA OPAIS covered-entity feed. | | is_current | boolean | SCD current-version flag. TRUE for all 92,814 rows (no superseded versions retained). Because every row is current, it does NOT de-duplicate anything in this table today, but keep the is_current=true filter in queries for forward-compatibility when future snapshots land. | | bronze_object_key | string | S3 key of the raw bronze object (drug/bronze/hrsa_opais_ce_registry/2026-05-15/...340B_CoveredEntityJson_Daily_2026-05-15.zip). Single value = one ingested file. | | s3_version_id | string | S3 object version id of the bronze file. Single value. Lineage only. | | vintage_tag | string | Vintage label = literal string 'none' for all rows (no meaningful vintage tag applied). Do not treat 'none' as a missing/null sentinel to act on. | | drug_source_version_id | string | Version id linking to the drug-source-version registry. 100% NULL in this table — not populated for this source; ignore for joins. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_hrsa_covered_entity WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_hrsa_covered_entity")` first. # NUCC Healthcare Provider Taxonomy Code Set `drug_silver.dim_nucc_taxonomy` · Provider identity · status live The NUCC Healthcare Provider Taxonomy — the specialty/classification code set (e.g. 207K00000X = Allergy & Immunology) that every NPI in NPPES carries 1-N of. Decodes provider specialty for cross-vertical code lookups and provider classification. Published biannually (version , M=1 Jan / 2 Jul); ~900 rows. Codes are stable once issued; each version is a snapshot. **Grain.** One row per NUCC taxonomy code per ingestion snapshot. The full table is 1,766 rows = 883 distinct taxonomy codes × 2 byte-identical re-ingestion snapshots of the same NUCC v25.1 file. The decision-grade slice is is_current=true, which is exactly one row per code: 883 rows, with `code` alone verified unique. Across all rows the minimal key is (code, observed_period) or equivalently (code, is_current) = 1,766; `code` alone is NOT unique over the full table (each code appears twice). **How to use it.** Resolve a provider's specialty code to a readable label and hierarchy. Example: `SELECT code, \"grouping\", classification, specialization, display_name, definition FROM drug_silver.dim_nucc_taxonomy WHERE is_current = true AND code = '207L00000X'` returns the single row 'Anesthesiology Physician' under grouping 'Allopathic & Osteopathic Physicians'. Typical real use is a join — e.g. take the taxonomy code attached to an NPI in a claims/provider table and join to this dim (always with is_current=true) to add the grouping/classification/specialization and display_name for grouping spend or specialty-level cost analysis. **Traps.** - DUPLICATE SNAPSHOTS: the table has 1,766 rows but only 883 real codes — every code appears twice because two ingestion snapshots (observed_period 2026-05-16 and 2026-05-18) of the SAME file are stored. `code` alone is NOT a unique key over the full table. ALWAYS filter is_current=true (gives 883 rows, code unique). The two snapshots are byte-identical (single sha256_content_hash), so the 'history' is a re-ingestion artifact, not a content change or real time series. - RESERVED WORD: the column `grouping` is a Trino/Athena reserved keyword (the GROUPING() function). Unquoted use in SELECT/GROUP BY/CASE throws a cryptic 'InvalidRequestException: Queries of this type are not supported' at start_query_execution time (not a normal SQL error). Always quote it as "grouping". - specialization NULL is MEANINGFUL: NULL (241 codes) = a base/parent taxonomy code at the classification level with no sub-specialty; non-NULL = a leaf sub-specialty. Don't treat NULL as missing data. Use display_name for a fully-resolved human label since it already incorporates the specialization when present. - SCD columns are placeholders, not real history: effective_period_end is the sentinel '2099-12-31' for every code (never closed), effective_period_start/observed_period just equal the load date, and cms_vintage_sequence/parse_revision are constant 1. The profiler's 'daily' periodicity is an artifact of two load dates 2 days apart; treat this as STATIC reference data (NUCC publishes ~semi-annually; only release v25.1 is loaded). - This is a code-translation dimension, not a cost or provider table: it contains zero prices, zero NPIs, and zero providers — only 883 taxonomy-code definitions. To label real providers you join this dim's `code` to the taxonomy code on NPPES/NPI or claims data. Naming caveat: drug_source_version_id and the drug_silver database prefix do NOT mean drug data — '251' is the NUCC version and source_id='nucc_taxonomy'. | column | type | meaning | |---|---|---| | code | string | The 10-character NUCC provider taxonomy code (always exactly length 10, alphanumeric, conventionally ending in X), e.g. 207L00000X. This is the join key against the taxonomy code carried on NPI records (NPPES) and 837 claims. Always populated; unique within is_current=true (883 codes). | | grouping | string | Top level of the NUCC 3-tier hierarchy — the broad provider category, e.g. 'Allopathic & Osteopathic Physicians' (238 codes), 'Ambulatory Health Care Facilities', 'Agencies', 'Hospitals', 'Pharmacy Service Providers'. 29 distinct values in is_current. Always populated. CAVEAT: 'grouping' is a reserved word in Trino/Athena — you MUST quote it as "grouping" in SQL or the query fails with a misleading 'Queries of this type are not supported' error. | | classification | string | Middle tier of the hierarchy — the specialty/provider-type within a grouping, e.g. 'Anesthesiology', 'Allergy & Immunology', 'Home Health', 'Case Management'. Always populated (0 nulls). Together with grouping it defines the base specialty. | | specialization | string | Bottom tier — the sub-specialty within a classification, e.g. 'Allergy', 'Clinical & Laboratory Immunology'. NULL for 241 of 883 codes: NULL means the code is a BASE/parent code (classification-level, no sub-specialty); non-NULL means it is a leaf sub-specialty. Both Individual (157 base / 541 spec) and Non-Individual (84 base / 101 spec) sections contain base codes. | | definition | string | Free-text prose definition of the provider type, sourced from NUCC / specialty boards (e.g. ABMS). Populated for 875/883 codes; 8 are NULL (rare codes shipped without a definition). Length varies from one sentence to a full paragraph. | | notes | string | Free-text NUCC change-log / source annotation for the code, e.g. '[7/1/2003: new]', 'Source: National Uniform Claim Committee, 2022', often with embedded HTML '
' tags. NULL for 282/883 codes (no annotation). Informational only — do not parse the embedded dates as the code's effective date. | | display_name | string | The official human-readable label for the code, e.g. 'Anesthesiology Physician', 'Home Health Agency', 'Multi-Specialty Group'. Always populated (0 nulls). This is the canonical string to show users when labeling a taxonomy code; it folds in the specialization when present. | | section | string | Two-valued partition of the code set: 'Individual' (698 codes — individual practitioners and practitioner groups) vs 'Non-Individual' (185 codes — organizations: facilities, agencies, hospitals, suppliers, labs). Always populated. Mirrors the NUCC entity-type split (NPI Type 1 vs Type 2 alignment). | | observed_period | date | Snapshot/ingestion date this row belongs to: 2026-05-16 (older, is_current=false) or 2026-05-18 (current, is_current=true). This is the column that distinguishes the two duplicate snapshots; it is a load date, not a NUCC release date. Constant within each snapshot. | | asserted_at | date | Date this assertion was recorded by the pipeline; equals observed_period for every row (2026-05-16 or 2026-05-18). Provenance/audit field; carries no independent information here. | | effective_period_start | date | SCD-style validity-start date; in this table it just equals the snapshot date (2026-05-16 / 2026-05-18), NOT a real NUCC effective date. The profiler keys 'history' off this column and infers a 2-day/'daily' cadence, but that is a re-ingestion artifact, not a release schedule. | | effective_period_end | date | SCD-style validity-end date. Always the sentinel '2099-12-31' for all 883 codes — meaning 'open / currently in effect'. No code is closed-out; do not treat 2099-12-31 as a real date. | | cms_vintage_sequence | int | Integer vintage sequence number; constant = 1 across all 1,766 rows (only one logical vintage loaded so far). Placeholder for future multi-release versioning. | | parse_revision | int | Parser revision number for the ingest; constant = 1 across all rows. Audit field. | | parser_artifact_hash | string | Hash identifying the parser run/artifact that produced the row. 2 distinct values across the table — one per ingestion snapshot — so it (along with vintage_tag/observed_period) is what differentiates the two otherwise-identical loads of the same file. | | source_url | string | The upstream NUCC download URL: https://www.nucc.org/images/stories/CSV/nucc_taxonomy_251.csv. Single value across all 1,766 rows. Confirms the source is NUCC taxonomy CSV release 251 (v25.1). | | sha256_content_hash | string | SHA-256 of the ingested source file content. EXACTLY 1 distinct value across all 1,766 rows — proof that the two snapshots (2026-05-16 and 2026-05-18) are the byte-identical same NUCC file re-ingested, i.e. there was no content change between the two loads. | | source_id | string | Logical source identifier; constant = 'nucc_taxonomy' for every row. Use this to identify the dataset within the drug_silver provenance model. | | is_current | boolean | Boolean snapshot flag. TRUE marks the latest ingestion (2026-05-18, 883 rows) and is the slice you almost always want; FALSE marks the superseded 2026-05-16 snapshot (883 rows). ALWAYS filter is_current=true to get one-row-per-code; without it every code is duplicated. | | bronze_object_key | string | S3 key of the raw bronze object: drug/bronze/nucc_taxonomy/v251/...-nucc_taxonomy_251.csv. Single value across all rows (both snapshots point at the same bronze file). Lineage pointer to raw storage. | | s3_version_id | string | S3 object version ID of the bronze file. Single value across all rows. Lineage/provenance field. | | vintage_tag | string | Human-readable vintage label, e.g. 'nucc_taxonomy_v251_2026-05-18'. 2 distinct values (one per snapshot/load date). This plus observed_period/parser_artifact_hash are the only columns that differ between the two snapshots. | | drug_source_version_id | string | Source version identifier; constant = '251' across all rows = NUCC taxonomy release 25.1. Despite the 'drug_' prefix (it lives in the drug_silver provenance schema) this is the NUCC version, not a drug version. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_nucc_taxonomy WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_nucc_taxonomy")` first. # OIG List of Excluded Individuals/Entities (LEIE) `drug_silver.dim_oig_leie` · Provider identity · status live · 249,886 rows The HHS-OIG List of Excluded Individuals/Entities — providers/entities BARRED from billing federal healthcare programs, with NPI/UPIN, name or business name, exclusion type and date, and any reinstatement/waiver. The integrity / accountability layer: screen a book's providers for exclusions, and join to the facility/provider spine by NPI. **Grain.** One row per excluded party record per source snapshot. The minimal verified unique key across the full 166,452-row table is (row_uid, vintage_tag): row_uid alone yields only 83,226 distinct values because it is a STABLE per-record content hash that repeats once in each of the 2 snapshots. Within a single snapshot (or filtered to is_current=true) the grain is just row_uid = 83,226 distinct = the current LEIE size. Note an excluded PERSON can occupy multiple rows (945 name+dob pairs appear 2x, some 3-4x) — row_uid is per exclusion-action record, not per human. **How to use it.** Compliance screen against the cost substrate: 'is this provider/pharmacy sanctioned?' Example — SELECT lastname, firstname, busname, npi, state, exclusion_type, exclusion_date FROM drug_silver.dim_oig_leie WHERE is_current = true AND npi = '1972902351'; returns the matching exclusion record (statute + date) if the NPI is on the current LEIE, or empty if clean. To screen a list of NPIs that appear in rate/claims tables, inner-join them to this table on npi WHERE is_current = true to flag excluded billers; supplement with name+state+dob matching because ~90% of LEIE rows have no NPI. **Traps.** - row_uid is NOT a global primary key. It is a stable per-record content hash that repeats once per snapshot, so the full table has 166,452 rows but only 83,226 distinct row_uid. Use (row_uid, vintage_tag) globally, or filter is_current=true and then row_uid is unique. - ALWAYS filter is_current=true (or pick one vintage_tag). The table holds 2 snapshots that are CONTENT-IDENTICAL (0 row_uids added/removed between 05-16 and 05-18, same sha256_content_hash). Querying without the filter silently double-counts every excluded party. - Periodicity is NOT weekly — the profiler was fooled. It measured effective_period_start, which equals exclusion_date (the OIG action date, 1977→2026, an event spread). The real load cadence lives in observed_period and is only 2 snapshots 2 days apart; today this is effectively a single static full-file load. - reinstatement_date is always NULL and effective_period_end is always the sentinel 2099-12-31. This is by LEIE design: reinstated parties are DELETED from the file, not flagged, so the file = currently-excluded only. Never infer 'still excluded' from these columns; presence in the current snapshot IS the exclusion signal. - npi is the join key to the cost substrate but is ~90% NULL (only 8,607 of 83,226 rows). Joining exclusions to NPI-keyed rate/claims data will miss most excluded parties; name+state+dob matching is needed for the rest. Also a person can hold multiple rows (same name+dob 2-4x) and a few NPIs map to >1 record, so neither npi nor name+dob is a unique key. - exclusion_type is a categorical SSA statute code, not numeric. It mixes 1128a*/1128b* sub-paragraphs with quality codes (1156/1160) and settlement-breach flags ('BRCH SA','BRCH CIA') and a '1128Aa' value — handle as strings and map to OIG's published authority legend (e.g. 1128a1 = program-related conviction, 1128b4 = license revocation). | column | type | meaning | |---|---|---| | row_uid | string | Deterministic content hash identifying one exclusion record. UNIQUE within a snapshot (83,226) but NOT globally — the SAME row_uid reappears in every snapshot for an unchanged record. Join to vintage_tag for a global key. | | entity_kind | string | 'individual' (79,825) or 'business' (3,401). Drives which name fields are populated. | | lastname | string | Excluded person surname. Populated for ALL individuals, NULL for ALL businesses. | | firstname | string | Excluded person first name. Populated for all individuals, NULL for businesses. | | midname | string | Person middle name. Often NULL even for individuals (sparse). | | busname | string | Excluded business/organization name (e.g. a pharmacy, DME company, home health agency). Populated for ALL businesses, NULL for ALL individuals. Mutually exclusive with lastname/firstname. | | general_category | string | OIG provider-category label, TRUNCATED free text (e.g. 'IND- LIC HC SERV PRO', 'NURSING PROFESSION', 'PHARMACY', 'DME COMPANY', 'HOSPITAL', 'BUS OWNER/EXEC'). Descriptive, not a code system. | | specialty | string | OIG specialty label, also truncated free text ('NURSE/NURSES AIDE' dominates at 34,537, 'PHARMACIST', 'CHIROPRACTIC', etc.). ~4,079 NULL = unspecified. | | upin | string | Legacy Unique Physician Identification Number (pre-NPI). Very sparse — ~5,945 individuals, 13 businesses. Deprecated identifier. | | npi | string | National Provider Identifier of the excluded party — the JOIN key to the rest of the cost substrate. MOSTLY NULL: only 8,607 of 83,226 rows (~10%) carry an NPI; 8,429 distinct (a few NPIs map to >1 record). All populated values are 10 digits; no zero-sentinel. Older exclusions predate NPI, hence the sparsity. | | dob | date | Person date of birth, used with name to disambiguate identity. Range 1901-01-01 to 2005-09-11; ~4,263 NULL (all businesses + some individuals). | | address | string | Last known street address of the excluded party (free text, sometimes 'C/O ...'). | | city | string | City of the excluded party. | | state | string | 2-letter US state of the party's address. | | zip_code | string | ZIP code (string, preserves leading zeros). | | exclusion_type | string | Social Security Act authority code for the exclusion. Dominant values: 1128b4 (33,136 — license revocation/surrender), 1128a1 (25,732 — program-related conviction), 1128a2/a3/a4, 1128b14 (default on health-ed loan), 1128b8, 1128b1. Plus rare 1156/1160 (quality), 1128Aa, and settlement-breach flags 'BRCH SA'/'BRCH CIA'. NOT a simple numeric — treat as a categorical statute code. | | exclusion_date | date | Date OIG imposed the exclusion (the event date). Equals effective_period_start for 100% of rows. Range 1977-07-01 to 2026-05-20. | | reinstatement_date | date | Date the party was reinstated. ALWAYS NULL in this data — by LEIE design, reinstated parties are DELETED from the file rather than flagged, so the file only holds currently-excluded parties. Column carries no signal here. | | waiver_date | date | Date of an OIG-granted exclusion waiver. Extremely rare (3 rows). Almost always NULL. | | waiver_state | string | State that requested the waiver. Extremely rare (4 rows). Almost always NULL. | | observed_period | date | Snapshot date — when Vlada pulled the LEIE file. THE true time dimension: only 2 values, 2026-05-16 and 2026-05-18. Use this (not exclusion_date) to reason about data vintage. | | asserted_at | date | Date the record was asserted into the silver table; equals observed_period in this data. | | effective_period_start | date | Bitemporal start of the exclusion's validity = exclusion_date exactly (100% match). Spans 1977→2026; this is an EVENT-date spread, which the profiler misread as 'weekly' periodicity. | | effective_period_end | date | Bitemporal end of validity. ALWAYS the sentinel 2099-12-31 (100%), meaning every exclusion is treated as open-ended/active (it ends only by being removed from the file). It is NOT a real reinstatement date. | | cms_vintage_sequence | int | Vintage sequence counter. Constant = 1 across the whole table. | | parse_revision | int | Parser revision number. Constant = 1. | | parser_artifact_hash | string | Hash of the parser build/artifact. 2 distinct values — the ONLY content column distinguishing the two otherwise-identical snapshots (a parser re-run). | | source_url | string | Origin URL — single value https://oig.hhs.gov/exclusions/downloadables/UPDATED.csv. This 'UPDATED.csv' is the full LEIE database file (complete current roster), not an incremental update. | | sha256_content_hash | string | SHA-256 of the source CSV bytes. CONSTANT (1 distinct) across the entire table — both snapshots ingested byte-identical source content. | | source_id | string | Logical source identifier. Constant = 'oig_leie'. | | is_current | boolean | Boolean snapshot flag. true = the latest snapshot (2026-05-18, 83,226 rows); false = the prior snapshot (2026-05-16, 83,226 rows). ALWAYS filter is_current=true to get the live LEIE; otherwise every record is doubled. | | bronze_object_key | string | S3 key of the bronze CSV this row was parsed from. Constant = 1 (single bronze object). | | s3_version_id | string | S3 object version id of the bronze file. Constant = 1. | | vintage_tag | string | Human-readable snapshot label ('oig_leie_2026-05-16' / 'oig_leie_2026-05-18'). The second half of the global grain key; 1:1 with observed_period/is_current here. | | drug_source_version_id | string | Cross-source drug version linkage. 100% NULL in this table — not populated for the LEIE source. | Tools that read it: excluded_prescriber_payment_screen Query it: `query_substrate` with `SELECT ... FROM drug_silver.dim_oig_leie WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.dim_oig_leie")` first. # HRSA 340B Covered Entity → NPI bridge `drug_silver.fact_hrsa_ce_npi` · Provider identity · status live Bridge from each HRSA 340B covered entity (id_340b) to its associated NPI(s), with state. Lets a claim's provider NPI be checked for 340B eligibility and joined to dim_hrsa_covered_entity. **Grain.** One row per (340B covered-entity ID x NPI x NPI-state). 730,707 rows = exactly the count of distinct (id_340b, npi_number, npi_state) triples (verified: max duplicate on the triple = 1, zero duplicate triples). It is a many-to-many bridge: a single covered entity has many NPIs across many states, and a single NPI (e.g. a contract/chain pharmacy) is shared by up to 665 different covered entities. The same (entity, NPI) pair legitimately repeats once per state it serves. **How to use it.** List every NPI tied to a 340B Disproportionate Share Hospital and where it operates: SELECT id_340b, npi_number, npi_state FROM drug_silver.fact_hrsa_ce_npi WHERE id_340b LIKE 'DSH%' AND is_current. To flag whether a provider participates in 340B (for drug-cost analysis), test EXISTS against npi_number. To count 340B reach per state: SELECT npi_state, COUNT(DISTINCT npi_number) FROM drug_silver.fact_hrsa_ce_npi WHERE npi_state <> '' GROUP BY 1. Always dedup/group on (id_340b, npi_number, npi_state) and never assume id_340b or npi_number alone is unique. **Traps.** - The profiler's 7-column 'verified unique' grain is a misleading superset. The TRUE minimal grain is just (id_340b, npi_number, npi_state) = 730,707 distinct = total. Every other column it listed (source_id, bronze_object_key, s3_version_id, drug_source_version_id) is constant or all-NULL, so it adds nothing. Group/dedup on the triple only. - Many-to-many, NOT a clean lookup. id_340b is NOT unique (66,761 distinct), npi_number is NOT unique (21,504 distinct), and neither is any pair. One NPI maps to a median of 2 and up to 665 covered entities (contract/chain pharmacies); one entity has up to 339 NPIs across up to 59 states. Joining this to NPI-level cost data will fan out unless you aggregate first. - npi_state is part of the grain and its empty string '' (10,257 rows) is a meaningful missing value ('state unknown'), not blank padding. It never co-exists with a stated value for the same entity+NPI pair, so do not COALESCE it away or treat '' as a dropable null without changing row counts. - Single static snapshot only: every date column (observed_period, asserted_at, effective_period_start/end) = 2026-05-15 and is_current is true everywhere. There is no history and no effective-dating despite the column names suggesting otherwise. cms_vintage_sequence, parse_revision, vintage_tag='none', and drug_source_version_id=NULL are inherited drug-silver boilerplate with no signal here. - id_340b prefixes are NOT a clean normalized enum. HRSA's raw casing/variants are preserved: e.g. 'dsH260137U', 'DSh450184EP' (DSH variants), 'CHO...', 'FQ89' (truncated FQHC), 'RWIIR...'. To classify by entity type, lowercase/normalize the prefix and account for these variants; do not assume a fixed clean code list. | column | type | meaning | |---|---|---| | id_340b | string | 340B program ID of the covered entity (the clean primary identifier of the entity). Format = entity-type prefix + state/sequence digits + optional trailing letter(s) that denote child/associated sites (e.g. BL030740 vs BL03074C are sibling sites of the same parent). 66,761 distinct entities. The leading alpha prefix encodes the 340B eligibility/grant TYPE: DSH=Disproportionate Share Hospital (dominant: 616K rows / 37.5K entities), CH=Children's Hospital, RRC=Rural Referral Center, PED=Pediatric, CHC/CH/FQHC/FQHCLA=Community/Federally-Qualified Health Center, CAH=Critical Access Hospital, SCH=Sole Community Hospital, STD/TB/HV/HM/RWI/RWII/RW=Ryan White HIV programs, FP=Family Planning, CAN=Hemophilia/Cancer, URB/UI=Urban Indian, BL=Black Lung clinic. NEVER NULL. | | npi_number | string | 10-digit National Provider Identifier of a provider/pharmacy/site associated with the covered entity. 100% valid 10-digit numeric (all 730,707 rows). 21,504 distinct NPIs. Stored as string. NEVER NULL/empty. This is the join key to NPI-keyed cost/claims data. | | npi_state | string | Two-letter state/territory the NPI serves under this entity. 60 values = 50 states + DC + PR + VI + AS + GU + MP + FM + PW + MH (US territories + Pacific freely-associated states). PART OF THE GRAIN: the same (entity, NPI) pair appears once per state served. EMPTY STRING '' (10,257 rows) is a meaningful missing-value = 'state not recorded for this NPI', not noise (and never co-occurs with a stated value for the same entity+NPI pair). Note SD (659) and NH (1,017) rows are anomalously low vs neighbors. | | observed_period | date | Date the source file was observed/captured. CONSTANT = 2026-05-15 for every row (single snapshot). No analytical use here. | | asserted_at | date | Date the assertion was recorded. CONSTANT = 2026-05-15. No analytical use here. | | effective_period_start | date | Start of validity window. CONSTANT = 2026-05-15. The table's nominal time column, but it is a single point, not a real effective-dating range. | | effective_period_end | date | End of validity window. CONSTANT = 2026-05-15. Equal to start; no real interval. | | cms_vintage_sequence | int | Inherited drug-silver schema field. CONSTANT = 1. Meaningless for this HRSA (non-CMS) source; boilerplate. | | parse_revision | int | Parser revision number. CONSTANT = 1. Boilerplate provenance. | | parser_artifact_hash | string | SHA-256 of the parser code artifact that produced the rows. CONSTANT (single value) across the table. Provenance/lineage only. | | source_url | string | Origin URL. CONSTANT = https://340bopais.hrsa.gov/Reports (HRSA 340B OPAIS public reports portal). Provenance. | | sha256_content_hash | string | SHA-256 of the source bronze object content. CONSTANT (single value) — one source file. Provenance/integrity. | | source_id | string | Logical source identifier. CONSTANT = 'hrsa_opais_ce_registry'. Identifies the dataset lineage. | | is_current | boolean | Current-snapshot flag. CONSTANT = true for all 730,707 rows. Because only one snapshot exists, this does NOT dedup anything yet, but a query filtering this table should still apply is_current=true to stay correct once future snapshots land. | | bronze_object_key | string | S3 key of the source bronze file. CONSTANT (single value): drug/bronze/hrsa_opais_ce_registry/2026-05-15/...-340B_CoveredEntityJson_Daily_2026-05-15.zip — confirms the source is the daily 340B Covered Entity JSON export. Provenance. | | s3_version_id | string | S3 object version id of the bronze file. CONSTANT (single value). Provenance. | | vintage_tag | string | Vintage label. CONSTANT = the literal string 'none' (not NULL). No meaning here; boilerplate. | | drug_source_version_id | string | Drug-source version linkage. 100% NULL across all 730,707 rows (cardinality 0). Carries no information in this table; do not join on it. | Query it: `query_substrate` with `SELECT ... FROM drug_silver.fact_hrsa_ce_npi WHERE ... LIMIT 100`; read `describe_data_source("drug_silver.fact_hrsa_ce_npi")` first. # CMS Dialysis Facility quality (five-star + facility attributes) `medicare_silver.dim_dialysis_facility_quality` · Provider identity · status live · 7,557 rows Curated subset of the CMS Dialysis Facility Listing (142-col): five-star rating, profit/non-profit, chain owned + chain organization, number of dialysis stations, services offered (in-center HD / peritoneal / home HD training), and facility mortality rate. The dialysis facility quality + attribute enrichment (complements the dim_dialysis_facility roster + the ESRD QIP performance score). **Grain.** One row per dialysis facility CCN — five-star rating + ownership/services/mortality. | column | type | meaning | |---|---|---| | state | string | | | ccn | string | | | network | string | | | facility_name | string | | | city | string | | | zip_code | string | | | profit_status | string | | | chain_owned | string | | | chain_organization | string | | | offers_incenter_hd | string | | | offers_peritoneal | string | | | offers_home_hd_training | string | | | five_star | double | | | n_dialysis_stations | double | | | mortality_rate | 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.dim_dialysis_facility_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_dialysis_facility_quality")` first. # CMS POS Federally Qualified Health Center Roster `medicare_silver.dim_fqhc` · Provider identity · status live · 15,324 rows CMS Provider of Services File, legacy QIES/Hospital_and_other distribution, FILTERED to federally-qualified-health-center rows (prvdr_ctgry_cd = '21' and prvdr_ctgry_sbtyp_cd = '01'). Roster spine -- CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag, provider category/subtype, ownership/control code. The runner downloads the POS CSV once and buckets RHC/FQHC by category. **Grain.** One row per Medicare-certified federally qualified health center site (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_subtype_cd | string | | | provider_category_cd | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_fqhc WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_fqhc")` first. # CMS POS Home Health Agency Roster `medicare_silver.dim_hha` · Provider identity · status live · 23,562 rows CMS Provider of Services File, iQIES distribution — the quarterly multi-provider-type POS file, FILTERED to home-health rows (prvdr_type_id = "3"). Same source file as dim_asc; the post-acute tail the ASC runner discards. Roster spine — CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag, provider type/subtype, ownership/control code. **Grain.** One row per Medicare-certified home health agency (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_type_id | string | | | provider_subtype_id | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_hha WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_hha")` first. # CMS POS Hospice Roster `medicare_silver.dim_hospice` · Provider identity · status live · 9,240 rows CMS Provider of Services File, iQIES distribution — the quarterly multi-provider-type POS file, FILTERED to hospice rows (prvdr_type_id = "12"). Same source file as dim_asc; the post-acute tail the ASC runner discards. Roster spine — CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag, provider type/subtype, ownership/control code. **Grain.** One row per Medicare-certified hospice (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_type_id | string | | | provider_subtype_id | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_hospice WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_hospice")` first. # CMS PECOS Public Provider Enrollment — IDTF (imaging) Roster `medicare_silver.dim_imaging_facility` · Provider identity · status live A slice of the CMS Medicare Fee-For-Service Public Provider Enrollment (PPEF) file, FILTERED to Independent Diagnostic Testing Facilities (IDTF; provider_type_cd in the 12-47 enrollment-type band). This is the imaging / diagnostic-testing leg of the care-site spine — it locates fixed-base and mobile imaging facilities that bill Medicare Part B. One PPEF extract fully restates the IDTF roster (supersession by extract, not row-level delta). **Grain.** One row per approved Independent Diagnostic Testing Facility enrollment (by enrollment_id) per PPEF extract. | column | type | meaning | |---|---|---| | enrollment_id | string | | | npi | string | | | pecos_asct_cntl_id | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_type_cd | string | | | provider_type_desc | 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 medicare_silver.dim_imaging_facility WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_imaging_facility")` first. # CMS POS Inpatient Rehabilitation Facility Roster `medicare_silver.dim_irf` · Provider identity · status live · 666 rows CMS Provider of Services File, the LEGACY "Hospital_and_other" distribution (dataset "Provider of Services File - Quality Improvement and Evaluation System"), FILTERED to inpatient rehabilitation facilities (prvdr_ctgry_sbtyp_cd = "05"). IRFs are hospital SUBTYPES, not in the iQIES file dim_asc/dim_snf read — this is the hospital-file sibling. Roster spine — CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag (from pgm_trmntn_cd), provider subtype/category, ownership/control code. The runner downloads the hospital POS CSV once and buckets IRF/LTCH. **Grain.** One row per Medicare-certified inpatient rehabilitation facility (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_subtype_cd | string | | | provider_category_cd | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_irf WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_irf")` first. # CMS POS Long-Term Care Hospital Roster `medicare_silver.dim_ltch` · Provider identity · status live · 655 rows CMS Provider of Services File, the LEGACY "Hospital_and_other" distribution, FILTERED to long-term care hospitals (prvdr_ctgry_sbtyp_cd = "02"). LTCHs are hospital SUBTYPES, not in the iQIES file — the hospital-file sibling of the post-acute rosters. Roster spine — CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag, provider subtype/category, ownership/control code. **Grain.** One row per Medicare-certified long-term care hospital (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_subtype_cd | string | | | provider_category_cd | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_ltch WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_ltch")` first. # Medicare Diabetes Prevention Program (MDPP) Suppliers `medicare_silver.dim_mdpp_supplier` · Provider identity · status live · 1,037 rows The roster of Medicare Diabetes Prevention Program (MDPP) suppliers — CMMI-model organizations enrolled to furnish the DPP benefit, with organization/location name, address, NPI, and category. The DPP innovation- model participation list (~1,037 suppliers). **Grain.** One row per MDPP supplier location (by row_seq within state). | column | type | meaning | |---|---|---| | row_seq | bigint | | | name_of_initiative | string | | | organization_name | string | | | location_name | string | | | street_address | string | | | city | string | | | state | string | | | zip_code | string | | | telephone | string | | | npi | string | | | category | string | | | unique_id | 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 medicare_silver.dim_mdpp_supplier WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_mdpp_supplier")` first. # CMS POS Rural Health Clinic Roster `medicare_silver.dim_rhc` · Provider identity · status live · 12,864 rows CMS Provider of Services File, legacy QIES/Hospital_and_other distribution, FILTERED to rural-health-clinic rows (prvdr_ctgry_cd = '12' and prvdr_ctgry_sbtyp_cd = '01'). Roster spine -- CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag, provider category/subtype, ownership/control code. The runner downloads the POS CSV once and buckets RHC/FQHC by category. **Grain.** One row per Medicare-certified rural health clinic (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_subtype_cd | string | | | provider_category_cd | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_rhc WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_rhc")` first. # CMS POS Skilled Nursing Facility Roster `medicare_silver.dim_snf` · Provider identity · status live · 17,067 rows CMS Provider of Services File, iQIES distribution — the quarterly multi-provider-type POS file, FILTERED to skilled-nursing rows (prvdr_type_id = "20"). Same source file as dim_asc; this is the post-acute tail the ASC runner discards. Roster spine — CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag (from pgm_trmntn_cd), provider type/subtype, ownership/control code. The runner downloads the iQIES CSV once and buckets SNF/HHA/Hospice by provider type. **Grain.** One row per Medicare-certified skilled nursing facility (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_type_id | string | | | provider_subtype_id | string | | | control_type_cd | string | | | termination_code | 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 medicare_silver.dim_snf WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dim_snf")` first. # CMS Facility Organization NPI to CCN Crosswalk `medicare_silver.facility_npi_ccn_xref` · Provider identity · status live Exact facility NPI<->CCN bridge derived from CMS per-provider-type Public Provider Enrollment files: Home Health Agency Enrollments, Hospice Enrollments, Skilled Nursing Facility Enrollments, Rural Health Clinic Enrollments, and Federally Qualified Health Center Enrollments. Each source row carries both NPI and CCN; the pipeline emits direct edges only, with no fuzzy matching, name similarity, or address matching. **Grain.** One row per exact CMS-published facility organization NPI to Medicare CCN edge, by facility type and source file. | column | type | meaning | |---|---|---| | npi | string | | | ccn | string | | | facility_type | string | | | source | string | | | enrollment_id | string | | | provider_type_code | string | | | provider_type_text | 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 medicare_silver.facility_npi_ccn_xref WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.facility_npi_ccn_xref")` first. # HRSA Health Professional Shortage Areas (HPSA) — PC / Dental / Mental Health `medicare_silver.fact_hpsa` · Provider identity · status live · 1,040,138 rows The mastered HRSA HPSA cumulative daily extract across primary care, dental, and mental health: 1,040,138 rows across 22 (observed_period, discipline) vintage slices. **Grain.** One row per (observed_period, discipline, row_seq) — Wayback-vintage snapshots 2020-2026 plus the current HRSA extract | column | type | meaning | |---|---|---| | discipline | string | | | row_seq | bigint | | | hpsa_id | string | | | hpsa_name | string | | | designation_type | string | | | discipline_class | string | | | status | string | | | designation_date | string | | | last_update_date | string | | | withdrawn_date | string | | | state | string | | | county_name | string | | | county_fips | string | | | state_county_fips | string | | | hpsa_address | string | | | hpsa_city | string | | | hpsa_postal_code | string | | | rural_status | string | | | population_type | string | | | degree_of_shortage | string | | | metropolitan_indicator | string | | | hpsa_score | double | | | hpsa_fte | double | | | designation_population | double | | | provider_ratio_goal | double | | | estimated_underserved_population | double | | | estimated_served_population | double | | | latitude | double | | | longitude | 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_hpsa WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_hpsa")` first. # CMS Medicare FFS Public Provider Enrollment (PECOS NPI↔enrollment bridge) `medicare_silver.fact_pecos_enrollment` · Provider identity · status live · 2,981,799 rows The CMS Medicare Fee-For-Service Public Provider Enrollment registry — one row per PECOS enrollment linking NPI ↔ enrollment_id (ENRLMT_ID) ↔ associate_id (PECOS_ASCT_CNTL_ID), with provider type and name. THE bridge that resolves fact_provider_ownership (keyed on enrollment_id / owner_associate_id) to a provider NPI — closing the ownership→NPI gap. ~2.98M enrollments / 2.56M NPIs. **Grain.** One row per Medicare enrollment (enrollment_id) — NPI + associate_id + provider type. | column | type | meaning | |---|---|---| | state | string | | | npi | string | | | enrollment_id | string | | | associate_id | string | | | multiple_npi_flag | string | | | provider_type_code | string | | | provider_type_desc | string | | | first_name | string | | | middle_name | string | | | last_name | string | | | org_name | 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 | | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_pecos_enrollment WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_pecos_enrollment")` first. # CMS Provider of Services (POS) File — facility characteristics + bed counts `medicare_silver.fact_provider_of_services` · Provider identity · status live · 44,429 rows The CMS Provider of Services File (QIES extract) — facility characteristics for every Medicare-certified facility: provider category + subtype, ownership control type, address/CBSA/FIPS location, certification + original participation + termination dates, and BED COUNTS (total, certified, Medicare SNF, hospice, rehab, psych/rehab unit) + affiliated-facility counts (HHA/SNF/hospice). The facility-structure layer (beds, ownership type, certification status) joinable by CCN. Curated ~30-col subset of the 473-col POS file, 2011-2026, partition by data_year. **Grain.** One row per (data_year, facility CCN) — category, control type, location, beds, status. | column | type | meaning | |---|---|---| | data_year | int | | | prvdr_num | string | | | fac_name | string | | | provider_category_cd | string | | | provider_subtype_cd | string | | | control_type_cd | string | | | street_address | string | | | city | string | | | state | string | | | zip_code | string | | | fips_state_cd | string | | | fips_county_cd | string | | | ssa_county_cd | string | | | cbsa_cd | string | | | cbsa_urban_rural_ind | string | | | certification_date | string | | | original_participation_date | string | | | program_termination_cd | string | | | termination_expiration_date | string | | | bed_cnt | double | | | certified_bed_cnt | double | | | medicare_snf_bed_cnt | double | | | hospice_bed_cnt | double | | | rehab_bed_cnt | double | | | psych_unit_bed_cnt | double | | | rehab_unit_bed_cnt | double | | | affiliated_hha_cnt | double | | | affiliated_snf_cnt | double | | | affiliated_hospice_cnt | 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_provider_of_services WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_provider_of_services")` first. # CMS PECOS Provider Ownership ("All Owners", PE-rollup layer) `medicare_silver.fact_provider_ownership` · Provider identity · status live · 814,242 rows The CMS PECOS "All Owners" ownership records, unified across six facility types (hospital, hha, hospice, snf, fqhc, rhc). One row per facility↔owner edge: owner identity (individual or org name/DBA/address), percentage ownership, role, association date, and the owner-type flags that drive accountability/PE analysis — PRIVATE EQUITY, REIT, HOLDING COMPANY, INVESTMENT FIRM, CHAIN HOME OFFICE, PARENT COMPANY, TRUST/TRUSTEE, FOR/NON PROFIT, plus an indirect-chain "owned by another org" flag. THE ownership / private-equity-rollup intelligence layer (who really owns each facility). **Grain.** One row per facility ↔ owner edge (enrollment_id × owner), partitioned by facility_type. | column | type | meaning | |---|---|---| | facility_type | string | | | enrollment_id | string | | | associate_id | string | | | organization_name | string | | | owner_associate_id | string | | | owner_type | string | | | role_code | string | | | role_text | string | | | association_date | string | | | owner_first_name | string | | | owner_middle_name | string | | | owner_last_name | string | | | owner_title | string | | | owner_org_name | string | | | owner_dba_name | string | | | owner_address1 | string | | | owner_address2 | string | | | owner_city | string | | | owner_state | string | | | owner_zip | string | | | other_type_text | string | | | percentage_ownership | double | | | created_for_acquisition | boolean | | | is_corporation | boolean | | | is_llc | boolean | | | is_medical_provider | boolean | | | is_management_services | boolean | | | is_medical_staffing | boolean | | | is_holding_company | boolean | | | is_investment_firm | boolean | | | is_financial_institution | boolean | | | is_consulting_firm | boolean | | | is_for_profit | boolean | | | is_non_profit | boolean | | | is_private_equity | boolean | | | is_reit | boolean | | | is_chain_home_office | boolean | | | is_parent_company | boolean | | | is_trust_or_trustee | boolean | | | is_other_type | boolean | | | owned_by_another | boolean | | | 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: resolve_provider Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_provider_ownership WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_provider_ownership")` first. # Care-site geography (CCN → CBSA/county/ZIP) `vlada_curated.care_site_geo` · Provider identity · status live Care-site geography: hospital_ccn → care_site_type, CBSA, county FIPS, ZIP, city, state with geo source + vintage. Places each care site in its market. **Grain.** One row per care site (hospital_ccn) — its CBSA/county/ZIP geography. | column | type | meaning | |---|---|---| | hospital_ccn | string | | | care_site_type | string | | | cbsa | string | | | county_fips | string | | | zip | string | | | city | string | | | state | string | | | geo_source | string | | | geo_vintage | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.care_site_geo WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.care_site_geo")` first. # CMS POS Ambulatory Surgical Center Roster `vlada_curated.dim_asc` · Provider identity · status live CMS Provider of Services File, iQIES distribution ("Provider of Services File - Internet Quality Improvement and Evaluation System"): the quarterly multi-provider-type POS file, FILTERED to ASC rows (prvdr_type_id = "11"). ASCs were migrated off the legacy OSCAR/QIES "Hospital_and_other" file onto iQIES, so this is the current home of the certified-ASC roster. ~182 source columns reduced to the roster spine — CCN, facility name, city/state/ZIP, composed 5-digit county FIPS, active flag (from pgm_trmntn_cd), provider type/subtype, ownership/control code, and ASC begin-service date. The runner discovers the current CSV from data.cms.gov's data.json so it always pulls the latest quarter. **Grain.** One row per Medicare-certified ambulatory surgical center (by CCN) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | ccn | string | | | fac_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | is_active | boolean | | | provider_type_id | string | | | provider_subtype_id | string | | | control_type_cd | string | | | termination_code | string | | | asc_begin_service_date | 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 vlada_curated.dim_asc WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_asc")` first. # Care-Site Spine (NPI/CCN-keyed facility identity) `vlada_curated.dim_care_site` · Provider identity · status live The care-site identity spine: care_site_id with NPI, CCN, legal name, NPPES taxonomy, care_site_class, tier, entity type, and geography (geo_id + county FIPS). The unifying facility identity the county/care-site fleet and pricing tools resolve against. **Grain.** One row per care site (care_site_id) — NPI/CCN, class, tier, geography. | column | type | meaning | |---|---|---| | care_site_id | string | | | npi | string | | | ccn | string | | | legal_name | string | | | nppes_taxonomy_code | string | | | care_site_class | string | | | tier | int | | | entity_type | int | | | city | string | | | state_code | string | | | zip_code | string | | | geo_id | string | | | county_name | string | | | county_fips | string | | | cbsa_code | string | | | in_hospital_registry | boolean | | | source | string | | | nppes_version | string | | | confidence_basis | string | | | needs_validation | boolean | | | build_scope | string | | | vintage | date | | | parent_system | string | | | parent_system_type | string | | | ownership_type | string | | | validation_status | string | | | validated_at | date | | | enrichment_note | string | | | canonical_site_id | string | | | routing_bucket | string | | Tools that read it: state_expert Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_care_site WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_care_site")` first. # CCN → CBSA + Wage Index crosswalk `vlada_curated.dim_ccn_cbsa` · Provider identity · status live Maps each hospital CCN to its geographic CBSA, county FIPS, and IPPS wage index. The bridge for wage-index localization of inpatient payment and for placing a hospital in its market. **Grain.** One row per hospital CCN — its CBSA, county FIPS, and IPPS wage index. | column | type | meaning | |---|---|---| | ccn | string | | | wage_index | double | | | geographic_cbsa | string | | | county_fips | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_ccn_cbsa WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_ccn_cbsa")` first. # CMS POS-CLIA Clinical Laboratory Roster `vlada_curated.dim_clia_lab` · Provider identity · status live CMS Provider of Services File — Clinical Laboratories (POS-CLIA): the quarterly roster of every CLIA-certified clinical laboratory in the US, published by CMS on data.cms.gov. ~103 source columns reduced to the roster spine — CLIA number, facility name(s), city/state/ZIP, composed 5-digit county FIPS, Medicare/CCN-style number, active flag (from the termination code), and the ownership/facility/certificate/lab-class category codes. Identifies and locates the lab side of diagnostic care (county join + a possible CCN bridge via CLIA_MDCR_NUM). Refreshed each quarter; the runner discovers the current CSV from data.cms.gov's data.json so it always pulls the latest quarter. **Grain.** One row per certified CLIA laboratory (by CLIA number) per quarterly POS snapshot. | column | type | meaning | |---|---|---| | clia_number | string | | | fac_name | string | | | additional_name | string | | | city | string | | | state_cd | string | | | zip_cd | string | | | county_fips | string | | | clia_medicare_num | string | | | is_active | boolean | | | control_type_cd | string | | | facility_type_cd | string | | | cert_type_cd | string | | | lab_classification_cd | string | | | provider_category_cd | 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 vlada_curated.dim_clia_lab WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_clia_lab")` first. # CMS Medicare Dialysis Facilities Roster `vlada_curated.dim_dialysis_facility` · Provider identity · status live · 125,408 rows CMS Medicare Dialysis Facilities (Dialysis Facility Reports): the annual roster of every Medicare-certified dialysis facility published by CMS on data.cms.gov. The mastered base table preserves one row per (observed_period, ccn) across FY2009-FY2026; the curated source_fqn is a current-vintage view. **Grain.** One row per (observed_period, ccn) — 18 annual FY vintages 2009-2026. | column | type | meaning | |---|---|---| | ccn | string | | | provider_name | string | | | city | string | | | state_cd | string | | | ownership_type | string | | | is_for_profit | boolean | | | esrd_network | string | | | npi | string | | | chain_organization | string | | | modality | string | | | alternate_ccns | 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 vlada_curated.dim_dialysis_facility WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_dialysis_facility")` first. # Facility dimension `vlada_curated.dim_facility` · Provider identity · status partial Facility-level metadata (CCN, organizational NPI, name, location) used to anchor the CCN<->NPI bridge and hospital identity spine. **Grain.** One row per facility (CCN/organizational NPI) with metadata. | column | type | meaning | |---|---|---| | facility_id | string | | | ccn | string | | | npi | string | | | ein | string | | | state_license | string | | | display_name | string | | | display_name_normalized | string | | | legal_name | string | | | dba_name | string | | | geo_id | string | | | street_address | string | | | street_address_2 | string | | | city | string | | | state_code | string | | | zip_code | string | | | zip_plus_4 | string | | | county_name | string | | | county_fips | string | | | cbsa_code | string | | | latitude | double | | | longitude | double | | | geocode_accuracy | string | | | system_id | string | | | parent_facility_id | string | | | parent_ccn | string | | | is_main_campus | boolean | | | campus_name | string | | | facility_type | string | | | facility_subtype | string | | | ownership_type | string | | | ownership_subtype | string | | | teaching_status | string | | | medical_school_affiliation | string | | | residency_programs | string | | | urban_rural | string | | | bed_count | string | | | bed_count_source | string | | | bed_count_date | string | | | staffed_beds | string | | | icu_beds | string | | | emergency_services | boolean | | | trauma_level | string | | | has_helipad | string | | | joint_commission_accredited | string | | | cms_star_rating | string | | | leapfrog_grade | string | | | peer_group_id | string | | | peer_group_override | boolean | | | mrf_status | string | | | mrf_sub_status | string | | | mrf_url | string | | | mrf_url_source | string | | | mrf_url_verified | boolean | | | mrf_url_verified_at | timestamp | | | mrf_url_verification_method | string | | | mrf_last_checked_at | timestamp | | | mrf_last_downloaded_at | timestamp | | | mrf_last_parsed_at | timestamp | | | mrf_file_hash | string | | | mrf_record_count | double | | | mrf_file_format | string | | | mrf_parse_method | string | | | mrf_failure_count | bigint | | | mrf_last_failure_at | timestamp | | | mrf_last_failure_reason | string | | | data_quality_score | double | | | data_completeness_score | string | | | benchmark_ready | boolean | | | benchmark_ready_reason | string | | | has_hospital_pricing | boolean | | | has_commercial_coverage | boolean | | | commercial_payer_count | bigint | | | cms_status | string | | | cms_certification_date | string | | | cms_termination_date | string | | | cms_last_survey_date | string | | | acquired_by_facility_id | string | | | acquired_by_ccn | string | | | acquisition_date | string | | | acquisition_type | string | | | main_phone | string | | | main_fax | string | | | website_url | string | | | patient_portal_url | string | | | status | string | | | status_reason | string | | | status_changed_at | string | | | created_at | timestamp | | | updated_at | timestamp | | | created_by | string | | | updated_by | string | | | data_sources | string | | | last_enriched_at | string | | | last_verified_at | timestamp | | | version | bigint | | | metadata | string | | | tags | string | | | npi_confidence | double | | | is_independent | boolean | | | independent_source | string | | | linkage_confidence | double | | | linkage_source | string | | | website_verified | boolean | | | website_verified_at | timestamp | | | website_verification_method | string | | | last_collected_at | timestamp | | | last_verify_count_status | string | | | cms_version | string | | | layout | string | | | compliance_status | string | | | dialect_id | string | | | _synced_at | timestamp | | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_facility WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_facility")` first. # Health System list `vlada_curated.dim_health_system` · Provider identity · status live A roster of health systems with system type, HQ state, and a multi-facility flag. A lightweight system list (the richer hierarchy is dim_hospital_system). **Grain.** One row per health system (system_name) — type, HQ state, multi-facility flag. | column | type | meaning | |---|---|---| | system_name | string | | | system_type | string | | | hq_state | string | | | multi_facility | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_health_system WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_health_system")` first. # Hospital Identity Crosswalk — CCN ↔ NPI ↔ EIN bridge `vlada_curated.dim_hospital_external` · Provider identity · status live The hospital identity crosswalk that joins the commercial (NPI), hospital (CCN), and tax-entity (EIN) namespaces. The employer agent uses it to resolve EIN/tax-id → CCN when a claim line has no usable NPI, and the county/flywheel tools use it for CCN↔NPI dedup. Distinct from dim_hospital_identity (the broader hospital spine); this is the external-id bridge specifically. **Grain.** One row per hospital identity, keyed by CCN, carrying the resolved NPI and (where recovered) EIN. | column | type | meaning | |---|---|---| | ccn | string | | | npi | string | | | ein | string | | | hospital_name | string | | | state_code | string | | | cbsa_code | string | | | county_fips | string | | | county_name | string | | | chain_parent_id | string | | | parent_ccn | string | | | ownership_type | string | | | teaching_status | string | | | urban_rural | string | | | facility_type | string | | | bed_count | int | | | latitude | double | | | longitude | double | | | street_address | string | | | city | string | | | zip_code | string | | | mrf_url | string | | | mrf_status | string | | | curated_version | string | | | is_main_campus | boolean | | | exported_at | string | | | npi_source | string | | | npi_evidence_class | string | | | npi_confidence | string | | | npi_tier_count | int | | | npi_registry_value | string | | | npi_file_value | string | | | npi_conflict | string | | | ein_source | string | | | ein_evidence_class | string | | | pac_id | string | | | pac_id_source | string | | | contamination_status | string | | | roster_status | string | | | source_vintage | string | | | builder_version | string | | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_hospital_external WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_hospital_external")` first. # Hospital System Hierarchy (parent / ultimate parent / ownership) `vlada_curated.dim_hospital_system` · Provider identity · status live The hospital-system hierarchy: normalized system name, parent_system_id and ultimate_parent_id, ownership_level + ownership_type, EIN, and HQ. A PARTIAL ownership-rollup (system → parent → ultimate parent) — the closest thing we have to ownership intelligence until the PECOS "All Owners" datasets are ingested. **Grain.** One row per hospital system, identified by system_id (an HSI-prefixed surrogate key). Verified: 646 rows = 646 distinct system_id. It is a single static snapshot (no versioning), so system_id alone is the full key. 639 rows come from AHRQ 2023 Compendium data; 7 are manually-added national specialty chains (LTACH/rehab/behavioral). **How to use it.** Roll hospital cost data up to the owning system: join dim_hospital_system.system_id = dim_facility.system_id, then dim_facility to the chargemaster/rate facts, to answer e.g. 'compare median negotiated price for CPT 99213 across the 5 largest for-profit hospital systems.' Example: SELECT s.system_name, s.ownership_type, s.facility_count, CAST(json_extract_scalar(s.metadata,'$.net_revenue') AS double)/1e9 AS net_rev_billions FROM dim_hospital_system s WHERE s.ownership_type='for_profit' ORDER BY net_rev_billions DESC — returns the for-profit systems ranked by AHRQ-reported net revenue (HCA tops near $52B), with their facility footprint, ready to scope a system-level price comparison. **Traps.** - system_id is the ONLY key. system_name is NOT unique (640 distinct of 646; 6 names — Trinity Health, Baptist Health, Methodist Health System, Mercy Medical Center, Memorial Health System, Southeast Health — each map to 2 different system_ids). Never join or dedup on system_name. - Half the schema is structurally empty. 100% NULL columns: system_name_normalized, common_name, legal_name, ein, parent_system_id, ultimate_parent_id, hq_geo_id, hq_address, hq_zip, total_employees, annual_revenue_millions, shared_mrf_url, mrf_url_pattern, investor_relations_url, status_reason, effective_date. ownership_level and status are constant (1 / 'active'). Don't build logic on these. - The real economics live in the metadata JSON, NOT in the look-alike columns. Revenue = metadata.net_revenue (raw $, up to $52.2B for HCA), physicians = metadata.total_physicians, discharges = metadata.annual_discharges, teaching/multistate flags = metadata.* — while the annual_revenue_millions and total_employees COLUMNS are 100% NULL. The 7 MANUAL_SPECIALTY_CHAIN rows have metadata '{}' and NULL beds/revenue/ownership, so any metadata-based metric silently excludes them. - facility_count is AHRQ's self-reported total and is systematically LARGER than the facilities actually linked in dim_facility (e.g. HCA 185 vs 165 linked, Trinity 105 vs 94). It is a source attribute, not a count of platform rows — don't use it as ground truth for how many hospitals you can actually join. - No history / no is_current: effective_date is entirely NULL and _synced_at is one constant timestamp, so this is a single 2023-vintage static snapshot. parent_system_id/ultimate_parent_id are NULL so NO system hierarchy is encoded — every row is flat at ownership_level 1; you cannot roll sub-systems into ultimate parents from this table. - Join path to cost data is via dim_facility.system_id (FK), then facility→chargemaster; 644/646 systems have at least one linked facility (the 2 without are facility_count=0 manual chains), but dim_facility ALSO has 1,935 rows with NULL system_id (independent/unaffiliated hospitals) that belong to no system here. ownership_type='government_state' means government-OWNED (AHRQ code 3, e.g. Valleywise, Alameda Health), not 'state of incorporation'. | column | type | meaning | |---|---|---| | system_id | string | PK. Surrogate system key, format HSI + 8 digits (e.g. HSI00000012, range HSI00000008..HSI00001595). 646 distinct = the only true key. This is the FK that dim_facility.system_id and dim_hospital_linkage_audit.system_id join back to. | | system_name | string | Display name of the system (e.g. 'HCA Healthcare','Ascension Health'). 100% populated but NOT unique — 640 distinct over 646 rows; 6 names are shared by 2 different system_ids (Trinity Health, Baptist Health, Methodist Health System, Mercy Medical Center, Memorial Health System, Southeast Health). Do not use as a join key. | | system_name_normalized | string | Intended normalized/match name. 100% NULL — unused. | | common_name | string | Intended common/dba name. 100% NULL — unused. | | legal_name | string | Intended legal entity name. 100% NULL — unused. | | ein | string | Intended employer ID number (tax id), the bridge to Form 5500 / IRS data. 100% NULL — not yet populated. A known coverage gap, not a real value here. | | parent_system_id | string | Intended self-referential FK to an immediate parent system. 100% NULL — no hierarchy is modeled; every row is a top-level system. | | ultimate_parent_id | string | Intended self-referential FK to the ultimate parent. 100% NULL — unused. | | ownership_level | bigint | Depth in the ownership tree. Constant = 1 for every row (all are top-level). Carries no information in current data. | | ownership_type | string | Profit/control class, derived from AHRQ ownership code: 'nonprofit' (439, code 1), 'government_state' (141, code 3 = state/local government-OWNED e.g. Valleywise, Alameda Health — means govt-owned, NOT state-of-incorporation), 'for_profit' (40, code 2), NULL (26 = code 5 'other'/unmapped or the 7 manual rows). Populated for 620/646. | | system_type | string | Specialty classification. Almost entirely NULL (639). Only the 7 manual rows are tagged: specialty_ltach (4), specialty_behavioral (2), specialty_rehab (1). AHRQ rows are general acute systems and are left NULL here. | | hq_geo_id | string | Intended FK to a geography dim. 100% NULL — unused. | | hq_address | string | HQ street address. 100% NULL — unused. | | hq_city | string | HQ city (e.g. 'Nashville','Gaithersburg'). Populated 644/646. | | hq_state | string | HQ state 2-letter code. 100% populated. Concentrated in CA(58),NY(45),PA(34),OH(32),FL/TX(26). This is system HQ location, not where its facilities operate (systems can be multi-state — see metadata.is_multistate). | | hq_zip | string | HQ ZIP. 100% NULL — unused. | | facility_count | bigint | AHRQ-REPORTED number of facilities in the system (int, range 0..185; HCA=185, UHS=158, CommonSpirit=145). 100% populated. GOTCHA: this is the source's declared count and is consistently HIGHER than the number of facilities actually linked in dim_facility (HCA 185 declared vs 165 linked) — it is NOT a live count of platform rows. The 2 manual behavioral chains have facility_count=0. | | total_beds | double | Total staffed beds across the system (double, 13..37,395; HCA=37,395). Populated for 635/646 (AHRQ only; all 7 manual rows are NULL). | | total_employees | string | Intended employee count. 100% NULL in the column — unused (note: physician count lives inside metadata.total_physicians instead). | | annual_revenue_millions | string | Intended revenue (string). 100% NULL in the COLUMN. The real revenue figure lives in metadata.net_revenue (raw dollars, populated 634/646, $28.7M..$52.2B, HCA top). Use metadata, not this column. | | shared_mrf_url | string | Intended shared machine-readable-file URL for the system's negotiated-rate transparency file. 100% NULL — unused. | | mrf_url_pattern | string | Intended MRF URL pattern. 100% NULL — unused. | | website_url | string | System website (e.g. https://www.adventisthealthcare.com). Populated 640/646 — the best-populated descriptive URL field. | | investor_relations_url | string | Intended IR page (for public for-profit systems). 100% NULL — unused. | | status | string | Lifecycle status. Constant = 'active' for all 646 rows. Carries no information currently. | | status_reason | string | Reason for status. 100% NULL — unused. | | effective_date | string | Intended effective/as-of date for SCD-style history. 100% NULL — there is NO effective dating; treat the table as one static snapshot. (Despite the profiler picking this as the 'time column', it has zero values.) | | data_source | string | Provenance of the row: 'AHRQ' (639, AHRQ Compendium of US Health Systems 2023) or 'MANUAL_SPECIALTY_CHAIN' (7, hand-added national specialty operators). This split governs which other fields are populated. | | source_version | string | Source vintage. '2023' for the 639 AHRQ rows; NULL for the 7 manual rows. | | created_at | timestamp | Row creation timestamp (2026-04-04..2026-04-07). Loading metadata, not business history. | | updated_at | timestamp | Row last-update timestamp (same April-2026 window). Equals/near created_at — no ongoing updates. | | created_by | string | Creator. Constant 'system'. | | updated_by | string | Updater. Constant 'system'. | | metadata | string | JSON blob — the RICHEST part of the table for AHRQ rows. Empty '{}' for all 7 manual rows. Keys (AHRQ): net_revenue (raw $, 634), annual_discharges (635), total_physicians (639), is_multistate bool (639), has_major_teaching bool (639), acute_hospital_count (639), ahrq_ownership_code (1/2/3/5, 638), onekey_id (IQVIA OneKey id, 638 — near-unique, 638 distinct), aha_sysid (AHA system id, only 310 distinct over 639 — many NULL/shared, NOT a key), website_extraction (rare). To get system financials/discharges/teaching status you MUST parse this JSON; the dedicated columns are NULL. | | _synced_at | timestamp | ETL sync-to-lake timestamp. Constant 2026-04-17 18:45:59 UTC for every row — confirms a single bulk sync (no incremental snapshots). | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_hospital_system WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_hospital_system")` first. # NPPES provider directory `vlada_curated.dim_provider` · Provider identity · status live · 9,798,758 rows NPPES-derived provider directory: name, entity type (individual/org), taxonomy/specialty, location, and parent organizational NPI. Resolves any NPI emitted by a rate query. From nppes_version 2026-09, taxonomy is the PRIMARY taxonomy (Primary Taxonomy Switch = Y); taxonomy_code_1 keeps Taxonomy Code_1 as printed (the pre-2026-09 meaning). **Grain.** One row per NPI. | column | type | meaning | |---|---|---| | npi | string | | | entity_type | int | | | name | string | | | first_name | string | | | last_name | string | | | credential | string | | | city | string | | | state | string | | | postal_code | string | | | taxonomy | string | | | npi_prefix | string | | | provider_entity_id | string | | | nppes_version | string | | | loaded_at | timestamp | | | taxonomy_code_1 | string | | | taxonomy_basis | string | | | nppes_source_sha256 | string | | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_provider WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_provider")` first. # Medicare provider CCN dimension (all provider types) `vlada_curated.dim_provider_ccn` · Provider identity · status live · 101,528 rows The resolving dimension for Medicare CCNs of every provider type, built because cms:ccn is a family rather than one identifier. A CCN identifies a Medicare-certified provider and the type is encoded in the number, so the hospital identity dimension resolved hospitals at 99.9% and SNF, home-health, hospice, FQHC, RHC, ASC and dialysis rosters at roughly 0%. Built as the union of the ten rosters we already hold, each authoritative for its own type, rather than from CMS positional range conventions. **Grain.** One row per Medicare CCN across ALL provider types — the authority for cms:ccn. | column | type | meaning | |---|---|---| | ccn | string | | | provider_type | varchar(26) | | | all_provider_types | string | | | provider_type_count | bigint | | | ccn_type_digits | string | | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_provider_ccn WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_provider_ccn")` first. # Provider → Facility affiliation (curated) `vlada_curated.dim_provider_facility_affiliation` · Provider identity · status live Curated clinician-NPI → facility-CCN affiliation edges (with facility_type and PAC ID). The curated provider↔facility bridge (the silver source is drug_silver.dim_facility_affiliation / cms_facility_affiliation). **Grain.** One row per (clinician_npi, facility_ccn) affiliation edge. | column | type | meaning | |---|---|---| | clinician_npi | string | | | facility_ccn | string | | | facility_type | string | | | ind_pac_id | string | | | source | varchar(35) | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_provider_facility_affiliation WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_provider_facility_affiliation")` first. # Medicare PUF (NPI x HCPCS utilization) `vlada_curated.dim_provider_service` · Provider identity · status live · 14,161,974 rows Medicare Physician & Other Practitioners PUF — current deduped provider-service cache used by the ghost-rate filter and provider-service lookups. The cache keeps the most recent CMS PUF observation for each (npi, hcpcs_cd, place_of_service) key. **Grain.** One row per (npi, hcpcs_cd, place_of_service) — most recent CMS PUF observation (current cache; data_year 2021-2023 reflects per-key recency) | column | type | meaning | |---|---|---| | npi | string | | | hcpcs_cd | string | | | hcpcs_desc | string | | | place_of_service | string | | | provider_type | string | | | provider_state | string | | | provider_zip5 | string | | | total_services | bigint | | | total_beneficiaries | bigint | | | avg_submitted_charge | double | | | avg_allowed_amt | double | | | avg_medicare_payment | double | | | avg_standardized_payment | double | | | data_year | int | | | loaded_at | timestamp | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.dim_provider_service WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.dim_provider_service")` first. # Care-site verification (county-fleet promoted truth) `vlada_curated.fact_care_site_verification` · Provider identity · status live The county-fleet promoted verification table: per NPI/county/class, the fleet_status (verified/reclassified/duplicate/unresolved), canonical site id, parent system, true facility type, confidence. The audited truth of which care sites are real (vw_care_site_verified serves it enriched). **Grain.** One row per (NPI, county, care_site_class) — verified care-site verdict. | column | type | meaning | |---|---|---| | npi | string | | | canonical_site_id | string | | | county_fips | string | | | care_site_class | string | | | fleet_status | string | | | canonical_parent_system | string | | | true_facility_type | string | | | confidence | string | | | vintage | string | | | legal_name | string | | | state_code | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_care_site_verification WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_care_site_verification")` first. # CCN <-> NPI facility bridge `vlada_curated.provider_facility_xref` · Provider identity · status live Confidence-scored bridge between hospital CCNs and provider NPIs. The join key for hospital x commercial unification. Floor for use is confidence >= 0.80. **Grain.** One row per (hospital_ccn, npi) candidate match with confidence + method. | column | type | meaning | |---|---|---| | provider_entity_id | string | | | facility_entity_id | string | | | npi | string | | | ccn | string | | | match_method | string | | | confidence | double | | | evidence_json | string | | | built_at | timestamp | | Tools that read it: resolve_provider Query it: `query_substrate` with `SELECT ... FROM vlada_curated.provider_facility_xref WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.provider_facility_xref")` first. # Care-site verified view (enriched) `vlada_curated.vw_care_site_verified` · Provider identity · status live Serving view unioning dim_care_site with fact_care_site_verification — verified care sites with legal name, CCN, class, county, parent system. The surface county_expert/county_intelligence read. **Grain.** One row per verified care site (NPI) with identity + geography enrichment. | column | type | meaning | |---|---|---| | npi | string | | | canonical_site_id | string | | | county_fips | string | | | county_name | string | | | state_code | string | | | legal_name | string | | | care_site_class | string | | | ccn | string | | | fleet_status | string | | | canonical_parent_system | string | | | fleet_facility_type | string | | | fleet_vintage | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_care_site_verified WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_care_site_verified")` first. # States M7 Forward exposure: vw_az_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_az_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 6 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): AZ. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 6 rows (Athena, 2026-10-29). Period 2026-10-01 to 2026-10-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | varchar(64) | | | contract_source_locator | varchar(69) | | | contract_source_assertion | string | | | contract_schedule_status | varchar(39) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(109) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_az_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_az_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_ca_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_ca_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 22 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): CA. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 22 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_locator | string | | | contract_schedule_status | varchar(44) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(82) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ca_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ca_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_fl_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_fl_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 27 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): FL. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 27 rows (Athena, 2026-10-29). Period 2026-09-30 to 2026-09-30 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | rate_program | varchar(3) | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | rate_period_start | date | | | rate_period_end | date | | | active_semantic_rate_cells | bigint | | | active_numeric_pmpm_cells | bigint | | | active_non_pmpm_or_percentage_cells | bigint | | | active_not_applicable_cells | bigint | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | rate_join_semantics | varchar(78) | | | risk_cell_weighted_plan_pmpm_publishable | boolean | | | enrollment_with_rate_expiration_next_6_months | double | | | enrollment_with_rate_expiration_next_12_months | double | | | enrollment_with_rate_expiration_next_18_months | double | | | forward_rate_amount_change_publishable | boolean | | | contract_id | string | | | contract_status | string | | | contract_execution_date | date | | | contract_service_begin_date | date | | | contract_original_end_date | date | | | solicitation_number | string | | | enrollment_with_contract_expiration_next_6_months | double | | | enrollment_with_contract_expiration_next_12_months | double | | | enrollment_with_contract_expiration_next_18_months | double | | | contract_boundary_publishable | boolean | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_fl_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_fl_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_ga_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_ga_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 3 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): GA. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 3 rows (Athena, 2026-10-29). Period 2022-05-01 to 2022-05-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_template_base_end_raw | string | | | runway_announced_extension_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_base_end_date | date | | | contract_source_sha256 | string | | | contract_schedule_status | varchar(58) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(36) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(91) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ga_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ga_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_il_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_il_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 5 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): IL. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 5 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_term_scope_evidence | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_locator | string | | | contract_schedule_status | varchar(48) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(66) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_il_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_il_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_in_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_in_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 12 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): IN. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 12 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | runway_source_sha256 | string | | | contract_base_end_date | date | | | contract_schedule_status | varchar(42) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(79) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_in_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_in_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_ky_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_ky_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 5 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): KY. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 5 rows (Athena, 2026-10-29). Period 2026-08-01 to 2026-08-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_schedule_id | varchar(57) | | | contract_source_url | varchar(78) | | | contract_source_sha256 | varchar(64) | | | contract_source_locator | varchar(55) | | | contract_base_end_date | date | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | contract_schedule_status | varchar(34) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | rate_reset_schedule_status | varchar(27) | | | headline_publishable | boolean | | | headline_hold_reason | varchar(77) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ky_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ky_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_la_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_la_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 5 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): LA. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 5 rows (Athena, 2026-10-29). Period 2026-07-01 to 2026-07-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | enrollment_month | date | | | plan_name_raw | string | | | plan_identity_id | string | | | enrollment | double | | | prior_enrollment_month | date | | | prior_enrollment | double | | | month_over_month_change | double | | | month_over_month_change_pct | double | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | latest_bounded_rate_period_start | date | | | latest_bounded_rate_period_end | date | | | rate_period_status | varchar(68) | | | exact_active_rate_period_publishable | boolean | | | numeric_plan_pmpm_publishable | boolean | | | numeric_plan_pmpm | decimal(12,2) | | | rate_source_url | varchar(155) | | | rate_source_sha256 | varchar(64) | | | contract_extension_end | date | | | contract_schedule_id | varchar(63) | | | contract_legal_stage | varchar(31) | | | contract_source_locator | varchar(66) | | | runway_party_rows | bigint | | | runway_verified_party_term_rows | bigint | | | days_until_contract_extension_end | bigint | | | contract_expiration_horizon | varchar(22) | | | enrollment_with_active_rate_period | double | | | enrollment_with_future_rate_effective_event | double | | | enrollment_with_contract_expiration_next_6_months | double | | | enrollment_with_contract_expiration_next_12_months | double | | | enrollment_with_contract_expiration_next_18_months | double | | | successor_procurement_publishable | boolean | | | post_2026_contract_term_publishable | boolean | | | sfy2027_rate_event_publishable | boolean | | | contract_source_url | varchar(121) | | | contract_source_sha256 | varchar(64) | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_reset_source_url | string | | | rate_reset_source_sha256 | string | | | rate_reset_source_locator | string | | | rate_reset_schedule_status | varchar(27) | | | observed_state_plan_enrollment_denominator | double | | | exact_program_extension_enrollment | double | | | program_extension_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(90) | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_source_locator | string | | | enrollment_semantic_row_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_la_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_la_medicaid_mco_rate_procurement_exposure_v1")` first. # Arizona Medicaid (AHCCCS) hospital payments, actual: inpatient, outpatient, DSH, GME, CAH, Prop202 and other components by hospital and year (FFY2019-2024) `medicare_semantic.vw_medicaid_az_provider_actual_payments_v1` · State programs · status partial · 4,461 rows What Arizona Medicaid paid each hospital by payment component and year, from the AHCCCS Hospital Payment Summary (current edition), with native FFY / SFY / academic-year periods. Re-audited scope only; RHIF is held for its period relabel. Actual payments (DSH and HEALTHII interim), not ceilings. **Grain.** One row per hospital x program (component) x period_key from the current summary edition (source_sha256 + source_locator unique); 4,461 rows, 9 programs, 12 periods (Athena 11b1c28f, 2026-10-19). | column | type | meaning | |---|---|---| | state | varchar(2) | | | program | string | | | component | string | | | period_key | string | | | year_basis | string | | | program_year | string | | | basis | string | | | payment_kind | varchar(30) | | | paid_usd | decimal(38,2) | | | value_status | string | | | provider_name | string | | | medicaid_provider_id | string | | | ccn | string | | | match_method | string | | | match_confidence | string | | | npi_printed | string | | | representation_group | string | | | source_id | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | worksheet | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_az_provider_actual_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_az_provider_actual_payments_v1")` first. # Louisiana Medicaid hospital payments, actual: DSH and supplemental payments by hospital, year-to-date snapshots (LDH legislative report item F, SFY2023-2026) `medicare_semantic.vw_medicaid_la_hospital_actual_payments_v1` · State programs · status partial · 119 rows What Louisiana Medicaid reported paying each hospital in disproportionate share (DSH) and other supplemental payments, from the Louisiana Department of Health's legislative hospital reports (item F, 'other supplemental'), as year-to-date snapshots for SFY2023-2026. DSH and supplemental are separate rows; the report's per-hospital total is a control, not served. Each row carries its coverage months and period, the Medicaid provider ID, a CCN only where CMS POS proves it active and unique, and the PDF (source_url, source_sha256), page and line. Actual reported payments, not ceilings and not modeled allocations. **Grain.** One row per Medicaid provider ID x snapshot x program_component (DSH or SUPPLEMENTAL); row_key unique. 119 rows, 42 providers, four year-to-date snapshots SFY2023_Q3, SFY2024_Q4, SFY2025_Q2, SFY2026_Q3 (Athena 7a3481e4, ac94dc27, 2026-10-19). | column | type | meaning | |---|---|---| | state | varchar(2) | | | program_component | string | | | sfy | bigint | | | report_quarter | bigint | | | snapshot | string | | | coverage_months | bigint | | | period_start | string | | | period_end | string | | | period_coverage | varchar(20) | | | payment_kind | varchar(30) | | | amount_usd | decimal(38,2) | | | amount_status | string | | | money_direction | string | | | medicaid_provider_id | string | | | provider_name | string | | | ccn | string | | | identity_null_reason | string | | | identity_candidates | string | | | match_method | string | | | match_confidence | string | | | identity_temporal_limit | string | | | mapped_npi | string | | | native_period | string | | | period_rule | string | | | program_family | string | | | source_id | string | | | source_url | string | | | source_sha256 | string | | | page | string | | | line | string | | | locator | string | | | raw_line | string | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_la_hospital_actual_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_la_hospital_actual_payments_v1")` first. # States M1L Limited benefit plans: vw_medicaid_limited_benefit_parent_state_month_v1 `medicare_semantic.vw_medicaid_limited_benefit_parent_state_month_v1` · State programs · status partial · 30,225 rows Medicaid product M1L (Limited benefit plans) of the States lane: Medicaid limited-benefit plan members by plan and parent by state and month: behavioral health, dental, PACE, non-emergency transportation and other limited plans. NEVER SUM WITH THE COMPREHENSIVE OR MLTSS TRACKER (M1), OR ACROSS benefit_type: one person can be in a medical MCO, a dental plan, a behavioral health plan and NEMT at once. Filter benefit_type and measure_class and never add across measure_class: rows mix enrollment, CMS July point-in-time, member months, Colorado RAE attributed caseload, Michigan capitation eligibles and Pennsylvania's derived behavioral health (Physical HealthChoices county enrollment x the BH-MCO county map, basis derived). basis says the source: observed (the state's report), derived (PA), cms_annual (July point in time), observed_cms_monthly (PACE: MEDICARE enrollment in PACE contracts, not the Medicaid count). also_in_flagship = true rows (Arizona RBHA, Wisconsin Care4Kids) are already inside the M1 totals. Michigan's PIHPs are monthly only 2015-10..2021-10 (Section 918 reports via Wayback). The parent view vw_medicaid_limited_benefit_parent_state_month_v1 carries series_rank and the sum_rule on every row, and keeps only in_segment_series = true rows: where a state has its own monthly series, its CMS July row is in_segment_series = false (replaced by the state series under measure_class enrollment), so the view's cms_july figures cover ONLY states without a monthly series. For a CMS July national figure read the view's cms_july_total column (the CMS July count for that state x benefit_type x parent, whether or not a monthly series replaces it; null outside July and where CMS has no row): 2024-07 DentaQuest 5,282,870, ModivCare 4,505,110, MCNA 3,447,425 (measured 2026-11-01). Never add cms_july_total and members together, and never add across benefit_type. 45 state(s): AL AR CA CO DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MO MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC TN TX UT VA VT WA WI WV WY. **Grain.** Medicaid limited-benefit plan members by plan and parent by state and month: behavioral health, dental, PACE, non-emergency transportation and other limited plans. 30,225 rows (Athena, 2026-11-01). Period 2006-08-01 to 2026-10-01 (month). | column | type | meaning | |---|---|---| | state_code | string | | | benefit_type | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | month | date | | | members | double | | | plans | bigint | | | basis | string | | | measure_class | string | | | series_rank | int | | | cells | bigint | | | cms_july_total | double | | | sum_rule | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_limited_benefit_parent_state_month_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_limited_benefit_parent_state_month_v1")` first. # National Medicaid MCO enrollment ledger - every state's reported plan enrollment observations, one view `medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v5` · State programs · status partial · 2,895,719 rows A ledger, not a total. The union of every structured state Medicaid managed-care enrollment observation Vlada holds: 45 jurisdictions, 87 medicare_silver state tables, observation periods January 1996 to September 2026. Each row keeps the publisher's own cadence, measure name, unit, time basis, program, geography and plan label, its value status (reported, zero, suppressed, missing), its row role (detail component, publisher control, overlapping summary) and its file lineage. Plan and parent identities are the publisher's text; no canonical crosswalk is applied. v5 = v4 plus NC, OH, NH, NE, CO and PR monthly, AR and KS quarterly, and the new KY monthly table. **Grain.** One source-native reported enrollment observation from one of 87 state adapter branches; (source_table_fqn, source_observation_key) is unique (measured 2026-09-27, 2,895,719 rows = 2,895,719 distinct keys, Athena 44526aa8). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | timestamp | | | cadence | string | | | source_table_fqn | varchar(86) | | | source_id | string | | | source_observation_key | string | | | source_time_basis | string | | | source_observation_grain | string | | | source_measure_name_raw | string | | | program_name_raw | string | | | program_class | string | | | geography_type | string | | | geography_name_raw | string | | | geography_fips | string | | | plan_name_raw | string | | | source_plan_identity_id | string | | | canonical_plan_id | string | | | canonical_parent_id | string | | | source_dimension_1_raw | string | | | source_dimension_2_raw | string | | | reported_value | double | | | value_unit | string | | | value_status | string | | | source_row_role | string | | | row_role | varchar(19) | | | aggregation_status | varchar(18) | | | national_aggregation_authorized | boolean | | | source_url | string | | | sha256_content_hash | string | | | semantic_row_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v5")` first. # National Medicaid MCO enrollment ledger - every state's reported plan enrollment observations, one view `medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v6` · State programs · status partial · 2,900,494 rows A ledger, not a total. The union of every structured state Medicaid managed-care enrollment observation Vlada holds: 45 jurisdictions, 87 medicare_silver state tables, observation periods January 1996 to September 2026. Each row keeps the publisher's own cadence, measure name, unit, time basis, program, geography and plan label, its value status (reported, zero, suppressed, missing), its row role (detail component, publisher control, overlapping summary) and its file lineage. Plan and parent identities are the publisher's text; no canonical crosswalk is applied. v5 = v4 plus NC, OH, NH, NE, CO and PR monthly, AR and KS quarterly, and the new KY monthly table. v6 preserves every v5 field and source branch, correcting only Michigan native publisher_county_total and publisher_overall_total to publisher_control. **Grain.** One source-native reported observation; (source_table_fqn, source_observation_key) is unique. Full candidate measured 2,900,494 rows and zero duplicate/null keys on 2026-10-15. | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | timestamp | | | cadence | string | | | source_table_fqn | varchar(86) | | | source_id | string | | | source_observation_key | string | | | source_time_basis | string | | | source_observation_grain | string | | | source_measure_name_raw | string | | | program_name_raw | string | | | program_class | string | | | geography_type | string | | | geography_name_raw | string | | | geography_fips | string | | | plan_name_raw | string | | | source_plan_identity_id | string | | | canonical_plan_id | string | | | canonical_parent_id | string | | | source_dimension_1_raw | string | | | source_dimension_2_raw | string | | | reported_value | double | | | value_unit | string | | | value_status | string | | | source_row_role | string | | | row_role | varchar(19) | | | aggregation_status | varchar(18) | | | national_aggregation_authorized | boolean | | | source_url | string | | | sha256_content_hash | string | | | semantic_row_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v6 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v6")` first. # National Medicaid MCO enrollment ledger - every state's reported plan enrollment observations, one view `medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v7` · State programs · status partial Candidate successor to the v6 source-native Medicaid MCO enrollment ledger. The proposed v7 definition preserves the existing source branches and reclassifies New York publisher_state_total as publisher_control; it is not an accepted enrollment total or national sum. **Grain.** One source-native reported observation keyed by source_table_fqn and source_observation_key; v7 acceptance is pending. | column | type | meaning | |---|---|---| | state_code | string | | | observation_period | timestamp | | | cadence | string | | | source_table_fqn | varchar(86) | | | source_id | string | | | source_observation_key | string | | | source_time_basis | string | | | source_observation_grain | string | | | source_measure_name_raw | string | | | program_name_raw | string | | | program_class | string | | | geography_type | string | | | geography_name_raw | string | | | geography_fips | string | | | plan_name_raw | string | | | source_plan_identity_id | string | | | canonical_plan_id | string | | | canonical_parent_id | string | | | source_dimension_1_raw | string | | | source_dimension_2_raw | string | | | reported_value | double | | | value_unit | string | | | value_status | string | | | source_row_role | string | | | row_role | varchar(19) | | | aggregation_status | varchar(33) | | | national_aggregation_authorized | boolean | | | source_url | string | | | sha256_content_hash | string | | | semantic_row_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v7 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_reported_observation_v7")` first. # States M1 Enrollment tracker: vw_medicaid_mco_enrollment_tracker_v2_parent_dated_national_month `medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_dated_national_month` · State programs · status partial · 30,063 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 30,063 rows (Athena, 2026-11-01). Period 2000-01-01 to 2026-11-01 (observation_month). | column | type | meaning | |---|---|---| | observation_month | date | | | measure_class | string | | | parent_as_of_month | string | | | parent_as_of_month_name | string | | | members_observed | double | | | members_estimated | double | | | members_total | double | | | members_modeled | double | | | members_with_modeled | double | | | states_observed | bigint | | | states_estimated | bigint | | | states_modeled | string | | | states_without_value | string | | | build_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_dated_national_month WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_dated_national_month")` first. # States M1 Enrollment tracker: vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month `medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month` · State programs · status partial · 52,968 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 52 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 52,968 rows (Athena, 2026-11-01). Period 2000-01-01 to 2026-11-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | observation_month | date | | | measure_class | string | | | parent_as_of_month | string | | | parent_as_of_month_name | string | | | members_observed | double | | | members_estimated | double | | | members_total | double | | | members_modeled | double | | | members_with_modeled | double | | | plans_observed | bigint | | | plans_estimated | bigint | | | plans_modeled | bigint | | | plans_without_value | bigint | | | estimated_interval_low_summed | double | | | estimated_interval_high_summed | double | | | modeled_interval_low_summed | double | | | modeled_interval_high_summed | double | | | state_total_members | double | | | state_total_basis | string | | | share_of_state_medicaid_chip_total | double | | | plans_without_value_list | string | | | unrolled_plans | string | | | build_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month")` first. # States M1 Enrollment tracker: vw_medicaid_mco_enrollment_tracker_v2_parent_national_month `medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_national_month` · State programs · status partial · 29,025 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 29,025 rows (Athena, 2026-11-01). Period 2000-01-01 to 2026-11-01 (observation_month). | column | type | meaning | |---|---|---| | observation_month | date | | | measure_class | string | | | parent_id | string | | | parent_name | string | | | members_observed | double | | | members_estimated | double | | | members_total | double | | | members_modeled | double | | | members_with_modeled | double | | | states_observed | bigint | | | states_estimated | bigint | | | states_modeled | string | | | states_without_value | string | | | build_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_national_month WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_national_month")` first. # States M1 Enrollment tracker: vw_medicaid_mco_enrollment_tracker_v2_parent_state_month `medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_state_month` · State programs · status partial · 51,875 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 52 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 51,875 rows (Athena, 2026-11-01). Period 2000-01-01 to 2026-11-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | observation_month | date | | | measure_class | string | | | parent_id | string | | | parent_name | string | | | members_observed | double | | | members_estimated | double | | | members_total | double | | | members_modeled | double | | | members_with_modeled | double | | | plans_observed | bigint | | | plans_estimated | bigint | | | plans_modeled | bigint | | | plans_without_value | bigint | | | estimated_interval_low_summed | double | | | estimated_interval_high_summed | double | | | modeled_interval_low_summed | double | | | modeled_interval_high_summed | double | | | state_total_members | double | | | state_total_basis | string | | | share_of_state_medicaid_chip_total | double | | | plans_without_value_list | string | | | unrolled_plans | string | | | build_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_state_month WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_parent_state_month")` first. # States M1 Enrollment tracker: vw_medicaid_mco_enrollment_tracker_v2_sec_tieout `medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_sec_tieout` · State programs · status partial · 6 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 6 rows (Athena, 2026-11-01). Period 2026-06-30 to 2026-06-30 (sec_period_end). | column | type | meaning | |---|---|---| | ticker | string | | | public_parent_name | string | | | sec_period_end | date | | | tracker_month | date | | | filing_form | string | | | filing_accession | string | | | filed_label | string | | | scope_class | string | | | comparability_class | string | | | sec_filed_membership | double | | | sec_asc_excluded | double | | | sec_ny_essential_plan_excluded_held | double | | | sec_comparable_membership | double | | | sec_comparable_note | string | | | count_basis_duals_location | string | | | count_basis_note | string | | | count_basis_chip | string | | | count_basis_ltss | string | | | count_basis_locator | string | | | tracker_observed | double | | | tracker_observed_plus_estimated | double | | | tracker_states_observed | string | | | tracker_states_estimated | string | | | capture_observed | double | | | capture_total | double | | | duals_rule | string | | | duals_adjustment | double | | | duals_adjustment_prior_rule | double | | | duals_adjustment_detail | string | | | adj_oh_weighted_members | double | | | adj_mapping_carolina_complete | double | | | adj_unh_dsnp_co_other_states | double | | | adj_pr_elv_mmm | double | | | adj_fl_ltc | double | | | adj_ri_average_monthly_members | double | | | adj_ut_member_months | double | | | adj_risk_share_healthy_blue_nc | double | | | adj_subcontract_calviva | double | | | adj_subcontract_molina_la | double | | | adj_subcontract_molina_la_out | double | | | adj_subcontract_chpiv | double | | | adj_oh_mycare_aip_out | double | | | adj_wa_bhso | double | | | adj_la_bh_only_cms2024 | double | | | adj_in_hhw_publisher_total | double | | | adj_subcontract_lacare_anthem | double | | | adj_pccm_rae_elv_ccha | double | | | adj_pccm_rae_unh_rmhp | double | | | adj_ks_kancare_reanchor | double | | | adj_dsnp_from_ma_gap | double | | | adj_pa_chip | double | | | adj_az_ddd_unh_share | double | | | adj_modeled_states | double | | | adj_ohiorise_cvs | double | | | adj_duals_mi_reversal_cvs | double | | | adj_tx_tdi_reanchor | double | | | adj_timing_derived | double | | | adj_ny_chp_held | double | | | adj_duals_reversal_not_held | double | | | adjustments_total | double | | | adjustments_detail | string | | | adjustments_by_grade | string | | | tracker_like_for_like_members | double | | | capture_like_for_like | double | | | capture_like_for_like_before_fixes | double | | | v1_state_panel_capture_ratio | double | | | residual_states_not_covered_members | double | | | residual_states_not_covered | string | | | residual_exited_states_cms2024_members | double | | | residual_exited_states | string | | | residual_missing_programs_members_derived | double | | | residual_missing_programs | string | | | residual_scope | double | | | residual_unexplained | double | | | residual_unexplained_before_fixes | double | | | residual_candidates_not_summed | string | | | excluded_joint_ventures | string | | | tracker_parent_names | string | | | method_note | string | | | sec_source_url | string | | | sec_source_sha256 | string | | | inputs | string | | | build_id | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_sec_tieout WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_enrollment_tracker_v2_sec_tieout")` first. # States M6 Ownership + subcontracting: vw_medicaid_mco_ownership_bridge_v1 `medicare_semantic.vw_medicaid_mco_ownership_bridge_v1` · State programs · status partial · 577 rows Medicaid product M6 (Ownership + subcontracting) of the States lane: who owns each Medicaid managed care plan and who it subcontracts to: the reviewed plan-to-parent bridge, the state ownership disclosures and the plan subcontracts. vw_medicaid_mco_ownership_bridge_v1: one reviewed decision per plan identity, effective-dated (effective_start, effective_end); read the row whose interval covers your date. org_control_disclosure: one row per disclosed owner, ownership_percent as printed; a plan can list several owners and the percents need not sum to 100. medicaid_plan_subcontract_v1 (the subcontracting half): one row per state x plan (canonical id, dated parent) x function (pharmacy_pbm, dental, vision, behavioral_health, nemt) x subcontractor, dated valid_from / valid_to; arrangement says delegated_subcontract, affiliate_subcontract, plan_performs or carved_out_state_program. status = not_published rows are findings, never zero or absence. A delegate's members are never added to the prime's, and a delegated network is not a full-risk transfer. 43 state(s): AR AZ CA DC DE FL GA HI IA ID IL IN KS KY LA MA MD MI MN MO MS NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC TN TX UT VA WA WI WV. **Grain.** Who owns each Medicaid managed care plan and who it subcontracts to: the reviewed plan-to-parent bridge, the state ownership disclosures and the plan subcontracts. 577 rows (Athena, 2026-10-29). Period 2004-01-01 to 2026-07-01 (effective_start). | column | type | meaning | |---|---|---| | decision_ordinal | int | | | resolution_id | string | | | reviewed_at | string | | | state_code | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | relationship_type | string | | | ownership_pct_raw | string | | | minority_owner_name | string | | | minority_ownership_pct_raw | string | | | joint_owners_raw | string | | | administrator_name | string | | | analytic_role | string | | | public_parent_rollup_authorized | boolean | | | effective_start | date | | | effective_end | date | | | state_evidence_url | string | | | ownership_evidence_url | string | | | evidence_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_ownership_bridge_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_ownership_bridge_v1")` first. # Medicaid managed care market share by parent company, monthly, per state (component sums, not totals) `medicare_semantic.vw_medicaid_mco_parent_share_monthly` · State programs · status partial · 28,970 rows One parent company's share of ONE state's reported comprehensive-medical managed-care plan enrollment in ONE month. parent_reported_value_sum adds the state's detail_component plan rows for one measure at one geography level from the Medicaid MCO enrollment ledger v5, comprehensive-medical programs only, publisher totals printed as plan rows removed, with plans resolved to parents through the effective-dated crosswalk medicare_silver.medicaid_plan_parent_crosswalk_v2. parent_share = parent_reported_value_sum / state_plan_row_sum within the state-month; unmapped_share is the share of plans with no ownership edge. CO rows are Regional Accountable Entity attribution, labelled by value_basis. **Grain.** One parent company (or the one unmapped bucket) x one state x one month x one measure segment; (state_code, observation_period, segment_id, parent) is unique (measured 2026-09-27 on the pointer, 28,970 rows = 28,970 keys over 38 states and 4,315 state-months, Athena 51578552). Every segment has exactly one measure and one geography level. | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | timestamp | | | segment_id | varchar(24) | | | measure | varchar(146) | | | value_unit | string | | | geography_type | string | | | geography_level | varchar(48) | | | source_time_basis | string | | | parent_id | string | | | parent_name | string | | | parent_ticker | string | | | is_unmapped_bucket | boolean | | | plan_rows | bigint | | | plan_keys | bigint | | | plan_labels | string | | | parent_reported_value_sum | double | | | state_plan_row_sum | double | | | state_mapped_sum | double | | | state_unmapped_sum | double | | | parent_share | double | | | unmapped_share | double | | | null_or_suppressed_rows | bigint | | | duplicate_rows_collapsed | bigint | | | evidence_methods | string | | | identity_edge_conflict | boolean | | | value_basis | varchar(39) | | | enrollment_total_authorized | boolean | | | crosswalk_version | varchar(125) | | | reported_after_contract_end | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_parent_share_monthly WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_parent_share_monthly")` first. # Medicaid MCO parent share, monthly - build definition v3 (current; not door-served) `medicare_semantic.vw_medicaid_mco_parent_share_monthly_v3` · State programs · status partial · 28,970 rows The current build definition: v2's logic over ledger v5 with scope medicaid_parent_share_state_scope_v3.yaml and crosswalk medicare_silver.medicaid_plan_parent_crosswalk_v2. The dated materialization medicare_silver.fact_medicaid_mco_parent_share_monthly_v20260927t0218z is built from it and the pointer medicare_semantic.vw_medicaid_mco_parent_share_monthly serves it. **Grain.** One parent (or the unmapped bucket) x state x month x measure segment; 28,970 rows, 38 states, 4,315 state-months (the current materialization). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | timestamp | | | segment_id | varchar(24) | | | measure | varchar(146) | | | value_unit | string | | | geography_type | string | | | geography_level | varchar(48) | | | source_time_basis | string | | | parent_id | string | | | parent_name | string | | | parent_ticker | string | | | is_unmapped_bucket | boolean | | | plan_rows | bigint | | | plan_keys | bigint | | | plan_labels | string | | | parent_reported_value_sum | double | | | state_plan_row_sum | double | | | state_mapped_sum | double | | | state_unmapped_sum | double | | | parent_share | double | | | unmapped_share | double | | | null_or_suppressed_rows | bigint | | | duplicate_rows_collapsed | bigint | | | evidence_methods | string | | | identity_edge_conflict | boolean | | | value_basis | varchar(39) | | | enrollment_total_authorized | boolean | | | crosswalk_version | varchar(125) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_parent_share_monthly_v3 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_parent_share_monthly_v3")` first. # Medicaid managed care rate timing by certified cycle and amendment `medicare_semantic.vw_medicaid_mco_rate_timing_v1` · State programs · status partial Source-linked rate periods, certification dates, actuary and publisher-reported program change percentages with explicit nulls for unrecovered CMS submission, approval and amendment details. Successor dates distinguish published periods from period-end projections. **Grain.** One capitation v2 state, program, rating period and amendment key. | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | program_class | string | | | rating_period_start | date | | | rating_period_end | date | | | rate_period_convention | string | | | amendment_seq | int | | | certification_date | date | | | cms_submission_date | date | | | cms_approval_date | date | | | amendment_effective_date | date | | | amendment_reason | string | | | amendment_retroactive | boolean | | | actuary_firm | string | | | rate_change_pct_reported | double | | | rate_change_basis_raw | string | | | expected_next_cycle_date | date | | | expected_next_cycle_basis | varchar(49) | | | next_cycle_date_published | boolean | | | document_title | string | | | document_url | string | | | sha256_content_hash | string | | | evidence_locator | string | | | source_table_fqn | varchar(49) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_rate_timing_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_rate_timing_v1")` first. # Medicaid managed care upcoming rate-cycle events, next 18 months `medicare_semantic.vw_medicaid_mco_upcoming_rate_events_v1` · State programs · status partial Published or projected next rate-cycle start dates for each state-program with a current source period, with event-date basis and provenance. Projection is the day after the latest period end, and is not a published certification. **Grain.** Latest known program period successor event by state and program, next 18 months. | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | program_class | string | | | event_date | date | | | event_date_basis | varchar(49) | | | next_cycle_date_published | boolean | | | basis_period_start | date | | | basis_period_end | date | | | rate_period_convention | string | | | document_title | string | | | document_url | string | | | sha256_content_hash | string | | | evidence_locator | string | | | source_table_fqn | varchar(49) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mco_upcoming_rate_events_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mco_upcoming_rate_events_v1")` first. # States M8 Federal reports + payments: vw_medicaid_mcpar_pdf_source_2025_v1 `medicare_semantic.vw_medicaid_mcpar_pdf_source_2025_v1` · State programs · status partial · 120 rows Medicaid product M8 (Federal reports + payments) of the States lane: federal Medicaid managed care reports by plan (MCPAR 2025 responses, plan MLR). vw_medicaid_mcpar_plan_pdf_2025_v1: one row per plan x MCPAR question as printed (response_raw; response_numeric when it parses); filter question_number. vw_medicaid_mcpar_pdf_source_2025_v1 is its locator: one row per state x program PDF (source_url, sha256_content_hash, source_pages); plan_table_status not_printed means the PDF prints no plan table, so that program has no plan rows, never zero plans. vw_medicaid_mlr_plan_v1: one row per plan x reporting period; adjusted_mlr_printed is the state's printed ratio, never recompute it from the numerator and denominator. 44 state(s): AL AR AZ CA CO DC FL GA HI IA ID IL IN KS KY LA MA MD MI MN MO MS MT NC ND NE NH NJ NM NV OH OK PA PR RI SC TX UT VA VT WA WI WV WY. **Grain.** Federal Medicaid managed care reports by plan (MCPAR 2025 responses, plan MLR). 120 rows (Athena, 2026-10-30). | column | type | meaning | |---|---|---| | state_code | string | | | program_label | string | | | source_url | string | | | sha256_content_hash | string | | | source_pages | int | | | plan_count | int | | | plan_response_rows | int | | | prior_auth_indicator_rows | int | | | plan_table_status | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mcpar_pdf_source_2025_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mcpar_pdf_source_2025_v1")` first. # Medicaid plan appeals, State Fair Hearings, grievances and prior authorization by plan (CMS MCPAR, PY2023-2024) `medicare_semantic.vw_medicaid_mcpar_plan_appeals_v1` · State programs · status live · 1,380 rows Plan-level appeals (resolved, active, by outcome, reason and service, timeliness), State Fair Hearings, external medical review, grievances (resolved, active, by service and reason, timeliness) and prior-authorization metrics from the CMS Medicaid Managed Care Program Annual Report public use file, sections D1.IV and D1.XIII, pivoted from medicare_silver.medicaid_mcpar_puf_v1, with medicaid_plan_id, plan_display_name, program_class and parent_name from the plan crosswalk where it resolves (391 of 704 PY2023 rows, 374 of 676 PY2024). Values are the publisher's numbers; NULL means the response was not a number (N/A, NR) or the question was not on the form version the state filed, and indicators_* count which. **Grain.** One row per performance_year x state x program x reporting period x plan name as the state printed it (plan_name_raw); 704 PY2023 + 676 PY2024 = 1,380 rows, grain unique (verifier view_grain_unique, Athena 2273b054; rows Athena 21a8eb55). | column | type | meaning | |---|---|---| | performance_year | int | | | state_code | string | | | state_name | string | | | program_name_raw | string | | | reporting_period_start | date | | | reporting_period_end | date | | | plan_name_raw | string | | | medicaid_plan_id | string | | | plan_region | string | | | plan_display_name | string | | | program_class | string | | | parent_name | string | | | plan_id_match_method | string | | | appeals_resolved | double | | | appeals_denied_adverse | double | | | appeals_resolved_partially_favorable | double | | | appeals_resolved_favorable | double | | | appeals_active | double | | | appeals_filed_ltss_users | double | | | critical_incidents_ltss_after_appeal | double | | | appeals_standard_resolved_timely | double | | | appeals_expedited_resolved_timely | double | | | appeals_reason_authorization_denied_or_limited | double | | | appeals_reason_reduction_suspension_termination | double | | | appeals_reason_payment_denial | double | | | appeals_reason_service_timeliness | double | | | appeals_reason_plan_untimely_response | double | | | appeals_reason_out_of_network_denial | double | | | appeals_reason_financial_liability_dispute | double | | | appeals_service_inpatient_general | double | | | appeals_service_outpatient_general | double | | | appeals_service_inpatient_behavioral_health | double | | | appeals_service_outpatient_behavioral_health | double | | | appeals_service_outpatient_prescription_drug | double | | | appeals_service_snf | double | | | appeals_service_ltss | double | | | appeals_service_dental | double | | | appeals_service_nemt | double | | | appeals_service_dme_supplies | double | | | appeals_service_home_health | double | | | appeals_service_emergency | double | | | appeals_service_therapies | double | | | appeals_service_other | double | | | fair_hearing_requests | double | | | fair_hearing_favorable | double | | | fair_hearing_adverse | double | | | fair_hearing_retracted | double | | | external_review_favorable | double | | | external_review_adverse | double | | | grievances_resolved | double | | | grievances_active | double | | | grievances_filed_ltss_users | double | | | critical_incidents_ltss_after_grievance | double | | | grievances_resolved_timely | double | | | grievances_service_inpatient_general | double | | | grievances_service_outpatient_general | double | | | grievances_service_inpatient_behavioral_health | double | | | grievances_service_outpatient_behavioral_health | double | | | grievances_service_outpatient_prescription_drug | double | | | grievances_service_snf | double | | | grievances_service_ltss | double | | | grievances_service_dental | double | | | grievances_service_nemt | double | | | grievances_service_dme | double | | | grievances_service_home_health | double | | | grievances_service_emergency | double | | | grievances_service_therapy | double | | | grievances_service_other | double | | | grievances_reason_customer_service | double | | | grievances_reason_care_case_management | double | | | grievances_reason_access_to_care | double | | | grievances_reason_quality_of_care | double | | | grievances_reason_plan_communication | double | | | grievances_reason_payment_billing | double | | | grievances_reason_suspected_fraud | double | | | grievances_reason_abuse_neglect_exploitation | double | | | grievances_reason_untimely_response | double | | | grievances_reason_denial_of_expedited_appeal | double | | | grievances_reason_other | double | | | pa_standard_requests | double | | | pa_expedited_requests | double | | | pa_total_requests | double | | | pa_standard_pct_approved | double | | | pa_standard_pct_denied | double | | | pa_standard_pct_approved_after_appeal | double | | | pa_standard_avg_days | double | | | pa_standard_median_days | double | | | pa_expedited_pct_approved | double | | | pa_expedited_pct_denied | double | | | pa_expedited_avg_hours | double | | | pa_expedited_median_hours | double | | | pa_pct_approved_extended_timeframe | double | | | pa_data_url | string | | | pa_items_list_url | string | | | indicators_number | bigint | | | indicators_not_applicable | bigint | | | indicators_optional_not_reported | bigint | | | indicators_not_reported | bigint | | | indicators_without_a_line | bigint | | | source_url | string | | | sha256_content_hash | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mcpar_plan_appeals_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mcpar_plan_appeals_v1")` first. # States M8 Federal reports + payments: vw_medicaid_mcpar_plan_pdf_2025_v1 `medicare_semantic.vw_medicaid_mcpar_plan_pdf_2025_v1` · State programs · status partial · 40,590 rows Medicaid product M8 (Federal reports + payments) of the States lane: federal Medicaid managed care reports by plan (MCPAR 2025 responses, plan MLR). vw_medicaid_mcpar_plan_pdf_2025_v1: one row per plan x MCPAR question as printed (response_raw; response_numeric when it parses); filter question_number. vw_medicaid_mcpar_pdf_source_2025_v1 is its locator: one row per state x program PDF (source_url, sha256_content_hash, source_pages); plan_table_status not_printed means the PDF prints no plan table, so that program has no plan rows, never zero plans. vw_medicaid_mlr_plan_v1: one row per plan x reporting period; adjusted_mlr_printed is the state's printed ratio, never recompute it from the numerator and denominator. 42 state(s): AR AZ CA CO DC FL GA HI IA ID IL IN KS KY LA MA MD MI MN MO MS NC ND NE NH NJ NM NV OH OK PA PR RI SC TX UT VA VT WA WI WV WY. **Grain.** Federal Medicaid managed care reports by plan (MCPAR 2025 responses, plan MLR). 40,590 rows (Athena, 2026-10-30). Period 2025 to 2025 ('2025'). | column | type | meaning | |---|---|---| | state_code | string | | | program_label | string | | | question_number | string | | | plan_name_raw | string | | | response_raw | string | | | source_url | string | | | sha256_content_hash | string | | | source_page | int | | | response_x0 | double | | | response_top | double | | | response_bottom | double | | | position_unit | string | | | extraction_method | string | | | response_numeric | double | | | source_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mcpar_plan_pdf_2025_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mcpar_plan_pdf_2025_v1")` first. # States M8 Federal reports + payments: vw_medicaid_mlr_plan_v1 `medicare_semantic.vw_medicaid_mlr_plan_v1` · State programs · status partial · 1,926 rows Medicaid product M8 (Federal reports + payments) of the States lane: federal Medicaid managed care reports by plan (MCPAR 2025 responses, plan MLR). vw_medicaid_mcpar_plan_pdf_2025_v1: one row per plan x MCPAR question as printed (response_raw; response_numeric when it parses); filter question_number. vw_medicaid_mcpar_pdf_source_2025_v1 is its locator: one row per state x program PDF (source_url, sha256_content_hash, source_pages); plan_table_status not_printed means the PDF prints no plan table, so that program has no plan rows, never zero plans. vw_medicaid_mlr_plan_v1: one row per plan x reporting period; adjusted_mlr_printed is the state's printed ratio, never recompute it from the numerator and denominator. 23 state(s): AL AZ CA DE FL GA IL IN KY LA MI MO NC NJ NY OH OR PA SC TN TX VA WA. **Grain.** Federal Medicaid managed care reports by plan (MCPAR 2025 responses, plan MLR). 1,926 rows (Athena, 2026-10-30). Period 2017 to 2022 (report_year). | column | type | meaning | |---|---|---| | state_code | string | | | report_year | int | | | program_name_raw | string | | | program_type_raw | string | | | eligibility_group_raw | string | | | eligibility_group_other_raw | string | | | plan_name_raw | string | | | medicaid_plan_id | string | | | plan_match_status | string | | | reporting_period_start | string | | | reporting_period_end | string | | | mlr_numerator_usd | decimal(20,4) | | | mlr_denominator_usd | decimal(20,4) | | | member_months | int | | | adjusted_mlr_printed | decimal(20,4) | | | remittance_usd | decimal(20,4) | | | remittance_raw | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | source_row_number | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_mlr_plan_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_mlr_plan_v1")` first. # Oklahoma Medicaid provider payments, actual: DSH, practitioner PIP and FFS hospital access by provider and period (OHCA, 2021-2026) `medicare_semantic.vw_medicaid_ok_provider_actual_payments_v1` · State programs · status partial · 20,413 rows What Oklahoma Medicaid actually paid in audited DSH (hospitals), practitioner PIP payment runs and FFS hospital access payments (interim, controlled typed actuals), by the publisher's own period, from OHCA reports and workbooks. Audited scope only; every amount carries its source and locator. Actual payments, not ceilings. **Grain.** One row per provider x program x period_key (source_sha256 + source_locator unique). 20,413 rows: DSH 120 (2 rate years), PIP 19,673 (5 payment runs), FFS_HOSPITAL_ACCESS 620 (4 calendar quarters) (Athena 41d5e3c5, 2026-10-19). | column | type | meaning | |---|---|---| | state | string | | | program | string | | | period_key | string | | | period_type | string | | | period_start | string | | | program_year | int | | | calendar_year | int | | | quarter | int | | | payment_period | string | | | payment_kind | varchar(30) | | | paid_usd | decimal(18,2) | | | amount_basis | string | | | amount_kind | string | | | provider_type | string | | | provider_name | string | | | ccn | string | | | ccn_missing_reason | string | | | npi | string | | | medicaid_provider_id | string | | | service | string | | | ce | string | | | identity_method | string | | | identity_confidence | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_ok_provider_actual_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_ok_provider_actual_payments_v1")` first. # Medicaid managed-care plan quality (HEDIS) by plan, 15 states, the newest three measurement years each publishes `medicare_semantic.vw_medicaid_plan_quality_measure_v1` · State programs · status partial · 5,696 rows Ten fixed HEDIS measures (W30, WCV, CIS10, PPC_PRE, PPC_POST, CBP, HBA1C_LT8, BCS, FUH7, FUM7) by Medicaid managed-care plan for 15 states (TX NY CA FL PA OH IL MI NC GA WA NJ AZ VA KY), as each state and its EQRO publish them: the fact (medicare_silver.medicaid_plan_quality_measure_v1) LEFT JOIN the plan crosswalk, so every row carries the canonical medicaid_plan_id, plan_product, plan_display_name, program_class and parent_name. Plan names stay as printed. rate is 0-1; a cell the publisher prints without a rate (NA, N/A, NR, a dash, See footnote, blank) is a row with NULL rate and the marker in rate_raw, never a zero. **Grain.** One row per state x program x publisher plan name x measure x sub-measure x measurement year; (medicaid_plan_id, plan_product, indicator_code, measurement_year) is unique: 5,696 rows = 5,696 keys (Athena 0e9266f8, 3f142481). | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | plan_name_raw | string | | | measure_code | string | | | indicator_code | string | | | measure_label_raw | string | | | sub_measure_raw | string | | | measurement_year | int | | | rate | double | | | rate_raw | string | | | rate_flags | string | | | denominator | bigint | | | low_denominator | boolean | | | data_source_raw | string | | | audited_flag | boolean | | | medicaid_plan_id | string | | | plan_product | string | | | plan_display_name | string | | | program_class | string | | | parent_name | string | | | plan_id_match_method | string | | | document_url | string | | | sha256_content_hash | string | | | evidence_locator | string | | | parse_revision | string | | | semantic_row_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_plan_quality_measure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_plan_quality_measure_v1")` first. # States M5 RFP / procurement tracker: vw_medicaid_procurement_contract_runway `medicare_semantic.vw_medicaid_procurement_contract_runway` · State programs · status partial · 220 rows Medicaid product M5 (RFP / procurement tracker) of the States lane: Medicaid managed care procurements: each contract's award, go-live, base and option term and the months left, with current members. One row per state x program x procurement x winning entity. term_end_base and term_end_max are the contract's base and outside dates; extension_exercise_status says whether an option was used. Dates read 'not_published' where the state does not print them: that text is a finding, not a date. current_members is the latest enrollment month (current_enrollment_month), not the award. 43 state(s): AR AZ CA CO DC DE FL GA HI IA ID IL IN KS KY LA MA MD MI MO MS NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC TN TX UT VA WA WI WV. **Grain.** Medicaid managed care procurements: each contract's award, go-live, base and option term and the months left, with current members. 220 rows (Athena, 2026-10-29). Period 2014-01-01 to not_published (term_start). | column | type | meaning | |---|---|---| | state | string | | | program | string | | | program_type | string | | | procurement_class | string | | | procurement_id | string | | | winning_legal_entity | string | | | parent_id | string | | | parent_name | string | | | award_outcome | string | | | award_source_url | string | | | go_live | string | | | go_live_source_url | string | | | term_start | string | | | term_end_base | string | | | term_end_max | string | | | term_source | string | | | term_source_page | string | | | term_scope_evidence | string | | | term_period_kind | string | | | option_schedule | string | | | ordinary_option_end | string | | | absolute_max_status | string | | | extension_exercise_status | string | | | extension_effective_date | string | | | extension_end | string | | | extension_source_url | string | | | extension_source_page | string | | | as_of_date | string | | | months_remaining_base | string | | | months_remaining_max | string | | | current_enrollment_month | string | | | current_members | string | | | current_enrollment_measure | string | | | enrollment_source_url | string | | | enrollment_query_id | string | | | enrollment_status | string | | | parent_unknown_reason | string | | | coverage_status | varchar(16) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_procurement_contract_runway WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_procurement_contract_runway")` first. # Medicaid managed-care procurement open and upcoming watch, sourced partial tracker `medicare_semantic.vw_medicaid_procurement_open_now` · State programs · status partial · 22 rows Officially sourced Medicaid plan and adjacent vendor procurements with the next published milestone. bidding_open_now distinguishes a verified open proposal window from an announced upcoming process. **Grain.** One currently open or announced procurement per state and procurement ID; 22 rows in the 2026-10-28 snapshot. | column | type | meaning | |---|---|---| | state | string | | | procurement_id | string | | | procurement_number | string | | | program | string | | | program_type | string | | | status | string | | | next_milestone_date | string | | | next_milestone | string | | | source_tier | string | | | source_url | string | | | source_sha256 | string | | | as_of_date | string | | | coverage_status | varchar(16) | | | bidding_open_now | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_procurement_open_now WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_procurement_open_now")` first. # Medicaid state directed payments, national: certified program-year amounts, operative version (42 CFR 438.6(c) preprints, 32 states) `medicare_semantic.vw_medicaid_sdp_program_year_operative_v1` · State programs · status partial · 729 rows Every state directed payment (SDP) CMS approved under 42 CFR 438.6(c) in 32 states, one row per certified program-year, ready to add up: the preprint's Q4 total, federal and non-federal shares, the approval letter's figure, the payment type and provider class, and the PDF hash, page and locator behind every amount. A Vlada certified layer over CMS's posted approval packages (approval letter + the state's preprint): each amount was read by two independent PDF engines, checked against the letter and against later CMS versions, and passed a third independent audit (SDP-AUDIT-3, PASS). The amounts are approved or proposed ceilings, not payments. **Grain.** One operative row per program-year (program_year_key unique = state|program_id|rating_period; the operative version_id). 729 rows, 32 states, all certification_status = certified, rating periods starting 2021-2027 (Athena 9c08dac4, 2026-10-13). | column | type | meaning | |---|---|---| | state | string | | | program_id | string | | | program_name | string | | | cms_summary | string | | | provider_class | string | | | provider_class_basis | string | | | payment_type | string | | | payment_type_basis | string | | | rating_period_start | string | | | rating_period_end | string | | | period_note | string | | | certification_status | string | | | status_cause | string | | | counts_as_program_year | boolean | | | program_year_key | string | | | version_id | string | | | is_operative | boolean | | | version_role | string | | | operative_version_id | string | | | supersedes_version_id | string | | | supersession_rule | string | | | cms_approval_date | string | | | approval_date_source | string | | | total_amount | decimal(20,2) | | | federal_share | decimal(20,2) | | | nonfederal_share | decimal(20,2) | | | shares_certified | boolean | | | tie_class | string | | | tie_residual | decimal(20,2) | | | tie_tolerance | decimal(20,4) | | | printed_total | string | | | scale_as_printed | string | | | amount_kind | string | | | includes_premium_tax | boolean | | | q4_amount_kind | string | | | letter_check | string | | | letter_ceiling | decimal(20,2) | | | letter_ceiling_kind | string | | | preprint_edition | string | | | source_url | string | | | source_sha256 | string | | | bytes_verified | boolean | | | q4_page | string | | | q4_locator | string | | | letter_page | string | | | engine_a | string | | | engine_a_values | string | | | engine_b | string | | | engine_b_values | string | | | proof_file | string | | | audit3_sample_ids | string | | | listing_status | string | | | cms_control_number | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_sdp_program_year_operative_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_sdp_program_year_operative_v1")` first. # Texas directed-payment reconciliation calculations (TIPPS, DPP-BHS, RAPPS) by NPI, plan and state fiscal year: NOT payments `medicare_semantic.vw_medicaid_tx_sdp_reconciliation_calculations_v1` · State programs · status partial · 42,503 rows Texas HHSC's published reconciliation workbooks for three directed-payment programs: scorecard, recalculated, allocation and recoupment CALCULATIONS by NPI and plan. These are calculations, not payments: no paid amount, no hospital receipt, never comparable with payments or SDP ceilings. **Grain.** One row per NPI x plan x program x period_key (source_sha256 + source_locator unique); 42,503 rows: TIPPS 2,260, DPP-BHS 35,229, RAPPS 5,014, SFY2022-2025. | column | type | meaning | |---|---|---| | state | varchar(2) | | | program | string | | | period_key | string | | | program_year | string | | | medicaid_program | string | | | payment_kind | varchar(35) | | | amount_kind | string | | | basis | string | | | edition_role | string | | | edition_basis | string | | | hospital_receipt_attribution | string | | | mco | string | | | plan_code | string | | | plan_name | string | | | sda | string | | | rhc_class | string | | | risk_group | string | | | npi | string | | | provider_name | string | | | identity_provider_ccn | string | | | identity_match_method | string | | | identity_confidence | string | | | mco_allocation_calc_usd | decimal(38,2) | | | mco_allocation_calc_basis | string | | | scorecard_calc_usd | decimal(38,2) | | | scorecard_calc_basis | string | | | recalculated_calc_usd | decimal(38,2) | | | recalculated_calc_basis | string | | | recoupment_calc_usd | decimal(38,2) | | | recoupment_calc_basis | string | | | difference_calc_usd | decimal(38,2) | | | difference_calc_basis | string | | | source_id | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | sheet | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_tx_sdp_reconciliation_calculations_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_tx_sdp_reconciliation_calculations_v1")` first. # Utah Medicaid provider payments, actual: DSH and nursing-facility / outpatient UPL by provider and period (DHHS, 2018-2026) `medicare_semantic.vw_medicaid_ut_provider_actual_payments_v1` · State programs · status partial · 2,061 rows What Utah Medicaid actually paid each hospital and nursing facility in disproportionate share (DSH) and upper payment limit supplemental payments, by the publisher's own period, from Utah DHHS workbooks. Audited canonical scope only; every amount carries its workbook (source_url, source_sha256) and cell. Actual payments, not ceilings. **Grain.** One row per printed provider x program x period_key (source_sha256 + source_locator unique). 2,061 rows: DSH 161 (4 rate years), NF_UPL 1,178 (16 quarters), OP_PRIVATE_UPL 722 (19 quarters) (Athena 19491e1b, 2026-10-19). | column | type | meaning | |---|---|---| | state | string | | | program | string | | | period_key | string | | | period_type | string | | | period_start | string | | | rate_year | int | | | program_year | int | | | sfy_quarter | string | | | payment_kind | varchar(30) | | | paid_usd | decimal(18,2) | | | amount_basis | string | | | provider_type | string | | | provider_name | string | | | owner_payee | string | | | ccn | string | | | npi | string | | | medicaid_provider_id | string | | | facility_id | string | | | identity_method | string | | | identity_confidence | string | | | publisher_note_1_recoup_planned | boolean | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_ut_provider_actual_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_ut_provider_actual_payments_v1")` first. # Utah Medicaid ACO directed payments to the University of Utah Medical Group, actual, by plan and service month (2021-2022) `medicare_semantic.vw_medicaid_ut_uumg_medical_group_payments_v1` · State programs · status partial · 79 rows Plan-reported directed payments Utah's ACO plans made to the University of Utah Medical Group, dated and referenced, with in-transfer offsets kept signed. A separate surface from the UT core payments view; never added to it. Actual payments, not ceilings. **Grain.** One row per plan x medical group x service month (period_key) x payment reference; 79 rows, 4 plans, 23 service months (Athena 33adf85b, 2026-10-19). | column | type | meaning | |---|---|---| | state | string | | | program | string | | | period_key | string | | | period_type | string | | | service_month | string | | | paid_date | string | | | payment_ref | string | | | plan | string | | | payment_kind | varchar(25) | | | paid_usd | decimal(18,2) | | | amount_sign_role | varchar(18) | | | amount_basis | string | | | provider_type | string | | | provider_name | string | | | ccn | string | | | npi | string | | | identity_method | string | | | identity_confidence | string | | | source_id | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | paid_date_locator | string | | | payment_ref_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_ut_uumg_medical_group_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_ut_uumg_medical_group_payments_v1")` first. # Virginia Medicaid hospital payments, actual: DSH, medical education, UPL and private-acute enhanced payments by hospital and state fiscal year (DMAS reports, SFY2016-2025) `medicare_semantic.vw_medicaid_va_hospital_actual_payments_v1` · State programs · status partial · 1,831 rows What Virginia Medicaid actually paid each hospital, by program and state fiscal year, as DMAS printed it in its reports to the General Assembly: disproportionate share (DSH), graduate and indirect medical education, upper payment limit supplemental payments and the private-acute enhanced payments, SFY2016-2025. For each program component x year the one canonical edition is kept (the latest whose printed total passes and ties to its rows), so a sum within one component and one year is that report's printed total. Every amount carries the report (source_url, source_sha256), page and locator. Actual publisher-reported payments, not ceilings. **Grain.** One row per printed provider x program_component x sfy from the one canonical edition of that component-year (observation_id unique). 1,831 rows, 43 component-years, SFY2016-2025, 181 printed provider names (Athena a1d0bb29, d8a57f90, 2026-10-19). | column | type | meaning | |---|---|---| | state | varchar(2) | | | program_component | string | | | program_family | string | | | sfy | bigint | | | sfy_start | string | | | sfy_end | string | | | payment_kind | varchar(30) | | | amount_usd | decimal(38,12) | | | amount_status | varchar(19) | | | missing_reason | string | | | ffs_mco_scope | string | | | provider_name | string | | | provider_ccn_raw | string | | | ccn | string | | | ccn_match_method | string | | | ccn_match_confidence | string | | | identity_warning | string | | | identity_period_note | string | | | provider_medicaid_id | string | | | provider_npi | string | | | provider_system | string | | | canonical_cohort_id | string | | | cohort_equals_printed_total | boolean | | | cross_component_additivity | string | | | exhibit | string | | | exhibit_title | string | | | native_label | string | | | native_period | string | | | raw_value | string | | | locator | string | | | source_id | string | | | source_url | string | | | source_sha256 | string | | | source_s3_key | string | | | report_latest_year | bigint | | | publication_version | string | | | era | string | | | second_engine | string | | | second_engine_pass | boolean | | | observation_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_va_hospital_actual_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_va_hospital_actual_payments_v1")` first. # Washington Medicaid provider payments, actual: DSH, HSNA, SDP managed-care / DPH and trauma payments by provider and period (HCA) `medicare_semantic.vw_medicaid_wa_provider_actual_payments_v1` · State programs · status partial · 8,702 rows What Washington Medicaid (HCA) paid hospitals and providers in DSH, hospital safety-net (HSNA CAH grants and FFS), state directed payments through managed care and DPH, and trauma payments, by the publisher's own period, from HCA PDFs and workbooks. Re-audited scope only; interim rows are labelled. Actual payments, not ceilings. **Grain.** One row per provider x program x period_key x metric (source_sha256 + source_locator unique); 8,702 rows, 10 programs, 124 periods (Athena 87ed7b91, 2026-10-19). | column | type | meaning | |---|---|---| | state | varchar(2) | | | program | string | | | program_component | string | | | period_key | string | | | period | string | | | period_note | string | | | from_date | string | | | to_date | string | | | basis | string | | | metric | string | | | payment_kind | varchar(30) | | | paid_usd | decimal(38,13) | | | amount_text | string | | | raw_value | string | | | provider_name | string | | | ccn | string | | | match_method | string | | | match_confidence | string | | | native_ccn | string | | | native_npi | string | | | native_providerone | string | | | source_id | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | raw_line | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_medicaid_wa_provider_actual_payments_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_medicaid_wa_provider_actual_payments_v1")` first. # States M7 Forward exposure: vw_mi_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_mi_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 9 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): MI. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 9 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_term_scope_evidence | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_locator | string | | | contract_schedule_status | varchar(58) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(36) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(68) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_mi_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_mi_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_mn_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_mn_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 32 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): MN. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 32 rows (Athena, 2026-10-29). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | segment_id | string | | | program_class | string | | | plan_identity_id | string | | | plan_name_raw | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | parent_binding_source | string | | | enrollment | double | | | enrollment_measure | string | | | enrollment_basis | string | | | enrollment_value_status | string | | | enrollment_source_family | string | | | enrollment_source_locator | string | | | enrollment_source_sha256 | string | | | enrollment_source_observation_key | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_term_end_base | date | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_schedule_status | varchar(31) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_program_name_raw | string | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(36) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_segment_enrollment_denominator | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(89) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_mn_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_mn_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_mo_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_mo_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 3 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): MO. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 3 rows (Athena, 2026-10-29). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | enrollment_month | date | | | plan_name_raw | string | | | plan_identity_id | string | | | enrollment | double | | | prior_enrollment_month | date | | | prior_enrollment | double | | | month_over_month_change | double | | | month_over_month_change_pct | double | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | exact_active_rate_period_publishable | boolean | | | numeric_plan_pmpm_publishable | boolean | | | numeric_plan_pmpm | decimal(12,2) | | | rate_source_status | varchar(65) | | | amendment_017_effective_date | date | | | amendment_017_cms_status | varchar(20) | | | rate_contract_source_url | varchar(97) | | | rate_contract_source_sha256 | varchar(64) | | | contract_renewal_end | date | | | contract_schedule_id | varchar(49) | | | contract_legal_stage | varchar(53) | | | days_until_contract_renewal_end | bigint | | | contract_expiration_horizon | varchar(22) | | | enrollment_with_active_rate_period | double | | | enrollment_with_future_rate_effective_event | double | | | enrollment_with_contract_expiration_next_6_months | double | | | enrollment_with_contract_expiration_next_12_months | double | | | enrollment_with_contract_expiration_next_18_months | double | | | successor_procurement_exact_date_publishable | boolean | | | successor_response_deadline_publishable | boolean | | | successor_award_publishable | boolean | | | cms_approved_sfy2027_rate_event_publishable | boolean | | | procurement_preview_month_label | varchar(4) | | | procurement_preview_exact_date | date | | | procurement_preview_source_url | varchar(111) | | | supporting_contract_source_url | varchar(80) | | | supporting_contract_source_sha256 | varchar(64) | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_mo_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_mo_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_ms_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_ms_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 3 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): MS. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 3 rows (Athena, 2026-10-29). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | enrollment_month | date | | | plan_name_raw | string | | | plan_identity_id | string | | | enrollment | double | | | prior_enrollment_month | date | | | prior_enrollment | double | | | month_over_month_change | double | | | month_over_month_change_pct | double | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | ticker | string | | | organization_type | string | | | relationship_type | string | | | public_parent_rollup_authorized | boolean | | | active_rate_period_start | date | | | active_rate_period_end | date | | | rate_period_status | varchar(60) | | | exact_active_rate_period_publishable | boolean | | | numeric_plan_pmpm_publishable | boolean | | | numeric_plan_pmpm | decimal(12,2) | | | rate_schedule_id | varchar(49) | | | rate_source_url | varchar(149) | | | rate_source_sha256 | varchar(64) | | | days_until_rate_period_end | bigint | | | rate_period_end_horizon | varchar(22) | | | contract_end | date | | | contract_schedule_id | varchar(48) | | | contract_legal_stage | varchar(55) | | | days_until_contract_end | bigint | | | contract_expiration_horizon | varchar(22) | | | enrollment_with_active_rate_period | double | | | enrollment_with_rate_period_end_next_6_months | double | | | enrollment_with_rate_period_end_next_12_months | double | | | enrollment_with_contract_expiration_next_18_months | double | | | enrollment_with_future_rate_effective_event | double | | | optional_contract_extension_exercised_publishable | boolean | | | successor_procurement_publishable | boolean | | | sfy2028_rate_event_publishable | boolean | | | contract_source_url | varchar(54) | | | contract_source_sha256 | varchar(64) | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ms_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ms_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_nc_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_nc_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 8 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): NC. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 8 rows (Athena, 2026-10-29). Period 2026-10-01 to 2026-10-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | string | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_aggregation_status | varchar(33) | | | enrollment_national_aggregation_authorized | boolean | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_template_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_base_end_date | date | | | contract_source_sha256 | string | | | contract_schedule_status | varchar(43) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(36) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_program_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(121) | | | parent_binding_source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_nc_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_nc_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_nj_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_nj_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 5 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): NJ. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 5 rows (Athena, 2026-10-29). Period 2026-08-01 to 2026-08-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | string | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_aggregation_status | varchar(33) | | | enrollment_national_aggregation_authorized | boolean | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | runway_procurement_id | string | | | runway_template_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_base_end_date | date | | | contract_source_sha256 | string | | | contract_schedule_status | varchar(39) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(36) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(126) | | | parent_binding_source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_nj_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_nj_medicaid_mco_rate_procurement_exposure_v1")` first. # New York Medicaid managed-care enrollment source-native observation projection `medicare_semantic.vw_ny_medicaid_mco_enrollment_tracker_reported_observation_v7_candidate_20261023t221902z_c5e4c8dc` · State programs · status partial · 66,702 rows Accepted read-only New York projection of the national v7 observation ledger for bounded plan-history queries. It preserves publisher control rows and native program, plan, geography, measure and period labels; it does not authorize comparisons or a state, parent or national total. **Grain.** One New York publisher observation keyed by source_table_fqn and source_observation_key; the 32 columns and 66,702 distinct source keys were checked against the accepted national v7 New York branch. | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | timestamp | | | cadence | string | | | source_table_fqn | varchar(86) | | | source_id | string | | | source_observation_key | string | | | source_time_basis | string | | | source_observation_grain | string | | | source_measure_name_raw | string | | | program_name_raw | string | | | program_class | string | | | geography_type | string | | | geography_name_raw | string | | | geography_fips | string | | | plan_name_raw | string | | | source_plan_identity_id | string | | | canonical_plan_id | string | | | canonical_parent_id | string | | | source_dimension_1_raw | string | | | source_dimension_2_raw | string | | | reported_value | double | | | value_unit | string | | | value_status | string | | | source_row_role | string | | | row_role | varchar(19) | | | aggregation_status | varchar(18) | | | national_aggregation_authorized | boolean | | | source_url | string | | | sha256_content_hash | string | | | semantic_row_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ny_medicaid_mco_enrollment_tracker_reported_observation_v7_candidate_20261023t221902z_c5e4c8dc WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ny_medicaid_mco_enrollment_tracker_reported_observation_v7_candidate_20261023t221902z_c5e4c8dc")` first. # States M7 Forward exposure: vw_ny_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_ny_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 12 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): NY. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 12 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_locator | string | | | contract_schedule_status | varchar(54) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(123) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ny_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ny_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_oh_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_oh_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 6 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): OH. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 6 rows (Athena, 2026-10-29). Period 2014-06-01 to 2014-06-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | string | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | historical_enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_locator | string | | | contract_schedule_status | varchar(64) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | current_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(59) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_oh_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_oh_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_ok_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_ok_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 3 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): OK. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 3 rows (Athena, 2026-10-29). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | enrollment_month | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | enrollment | double | | | prior_enrollment_month | date | | | prior_enrollment | double | | | month_over_month_change | double | | | month_over_month_change_pct | double | | | enrollment_period_legal_entity_name | string | | | enrollment_period_ultimate_parent_name | string | | | enrollment_period_canonical_parent_id | string | | | canonical_parent_id | string | | | enrollment_period_parent_ticker | string | | | enrollment_period_parent_organization_type | string | | | enrollment_period_relationship_type | string | | | public_parent_rollup_authorized | boolean | | | active_rate_period_start | date | | | active_rate_period_end | date | | | rate_period_status | varchar(74) | | | exact_active_rate_period_publishable | boolean | | | numeric_plan_pmpm_publishable | boolean | | | numeric_plan_pmpm | decimal(12,2) | | | rate_schedule_id | varchar(61) | | | amendment_id | varchar(30) | | | rate_source_url | varchar(123) | | | rate_source_sha256 | varchar(64) | | | days_until_rate_period_end | bigint | | | rate_period_end_horizon | varchar(22) | | | current_contract_termination_date | date | | | contract_schedule_id | varchar(62) | | | contract_legal_stage | varchar(77) | | | days_until_contract_renewal_boundary | bigint | | | contract_renewal_boundary_horizon | varchar(22) | | | enrollment_with_active_rate_period | double | | | enrollment_with_rate_period_end_next_6_months | double | | | enrollment_with_rate_period_end_next_12_months | double | | | enrollment_with_contract_renewal_boundary_next_6_months | double | | | enrollment_with_contract_renewal_boundary_next_12_months | double | | | next_renewal_option_exercised_publishable | boolean | | | successor_procurement_publishable | boolean | | | post_sfy2027_rate_event_publishable | boolean | | | contract_source_url | varchar(123) | | | contract_source_sha256 | varchar(64) | | | contract_controller_url | varchar(53) | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_ok_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_ok_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_pa_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_pa_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 7 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): PA. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 7 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | master_contract_number | varchar(10) | | | contract_legal_party | string | | | contract_start_date | date | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_record_ordinal | int | | | enrollment_source_observation_key | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | contract_schedule_status | varchar(29) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | rate_reset_schedule_status | varchar(27) | | | forward_rate_change_publishable | boolean | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_pa_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_pa_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_tx_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_tx_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 32 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): TX. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 32 rows (Athena, 2026-10-29). Period 2026-05-01 to 2026-05-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | canonical_parent_id | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_value_status | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | contract_base_end_date | date | | | contract_source_url | string | | | contract_source_sha256 | string | | | contract_source_locator | string | | | contract_schedule_status | varchar(50) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(119) | | | parent_effective_start | date | | | parent_ownership_evidence_url | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_tx_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_tx_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_va_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_va_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 5 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): VA. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 5 rows (Athena, 2026-10-29). Period 2026-10-01 to 2026-10-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_template_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | runway_source_sha256 | string | | | contract_base_end_date | date | | | contract_source_sha256 | string | | | contract_schedule_status | varchar(39) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(27) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(86) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_va_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_va_medicaid_mco_rate_procurement_exposure_v1")` first. # States M7 Forward exposure: vw_wa_medicaid_mco_rate_procurement_exposure_v1 `medicare_semantic.vw_wa_medicaid_mco_rate_procurement_exposure_v1` · State programs · status partial · 5 rows Medicaid product M7 (Forward exposure) of the States lane: forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. One view per state (vw__medicaid_mco_rate_procurement_exposure_v1). One row per plan for the observation period; enrollment_with_rate_reset_next_6_months is members, not plans. MN, MO, MS and OK views are an older schema without observation_period. 1 state(s): WA. **Grain.** Forward exposure: members whose plan faces a rate reset or a procurement event, by plan and parent. 5 rows (Athena, 2026-10-29). Period 2026-09-01 to 2026-09-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | date | | | exposure_as_of_date | date | | | program_name_raw | string | | | program_class | string | | | plan_name_raw | string | | | plan_identity_id | string | | | legal_entity_name | string | | | ultimate_parent_name | string | | | canonical_parent_id | string | | | organization_type | string | | | ticker | string | | | public_parent_rollup_authorized | boolean | | | enrollment | double | | | enrollment_unit | string | | | enrollment_source_locator | string | | | enrollment_source_url | string | | | enrollment_source_sha256 | string | | | enrollment_semantic_row_sha256 | string | | | procurement_id | string | | | runway_winning_legal_entity | string | | | runway_template_base_end_raw | string | | | runway_term_scope_evidence | string | | | runway_source_url | string | | | runway_source_locator | string | | | contract_base_end_date | date | | | contract_source_sha256 | string | | | contract_schedule_status | varchar(52) | | | enrollment_with_contract_end_next_6_months | double | | | enrollment_with_contract_end_next_12_months | double | | | enrollment_with_contract_end_next_18_months | double | | | rate_reset_event_date | date | | | rate_reset_event_date_basis | varchar(49) | | | rate_reset_date_published | boolean | | | rate_period_convention | string | | | rate_source_url | string | | | rate_source_sha256 | string | | | rate_evidence_locator | string | | | rate_reset_schedule_status | varchar(36) | | | enrollment_with_rate_reset_next_6_months | double | | | enrollment_with_rate_reset_next_12_months | double | | | enrollment_with_rate_reset_next_18_months | double | | | observed_state_plan_enrollment_denominator | double | | | exact_contract_enrollment | double | | | contract_schedule_coverage_pct | double | | | headline_publishable | boolean | | | headline_hold_reason | varchar(112) | | Query it: `query_substrate` with `SELECT ... FROM medicare_semantic.vw_wa_medicaid_mco_rate_procurement_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_semantic.vw_wa_medicaid_mco_rate_procurement_exposure_v1")` first. # California CalAIM 1915(b) physical PDF-page evidence `medicare_silver.ca_calaim_1915b_pdf_page` · State programs · status live · 2,839 rows Production-reconciled and exact-replay-idempotent lossless page layer for acquired CalAIM 1915(b) PDFs, preserving layout-aware extracted text, page-text hash, word count, extraction method, quality flags, exact document identity, content-alias count, semantic-row hash, and Bronze lineage. It is citation evidence, not an operative-rule or structured program fact table. **Grain.** One physical PDF page per exact document SHA-256 and one-based page number, with content-identical publisher occurrences represented once and linked through a canonical occurrence. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | document_sha256 | string | | | canonical_occurrence_id | string | | | content_occurrence_count | int | | | page_number | int | | | page_text | string | | | page_text_sha256 | string | | | word_count | int | | | extraction_method | string | | | semantic_row_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ca_calaim_1915b_pdf_page WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_calaim_1915b_pdf_page")` first. # California CalAIM 1915(b) official source occurrences `medicare_silver.ca_calaim_1915b_source_occurrence` · State programs · status live · 27 rows Production-reconciled and exact-replay-idempotent lossless occurrence ledger for the CalAIM CA-0017.R10 authority chain. It preserves source-native role and authority status; distinct publisher, submission, approval, waiver-effective, implementation, table-as-of, and acquisition dates; official and acquisition URLs; exact content identity; alias ordinals; proposal and acquisition flags; raw manifest JSON; and Bronze lineage without inferring an operative program roster. **Grain.** One row per frozen corpus snapshot and official DHCS source occurrence, including acquired aliases, proposed non-operative material, and exact source-limit occurrences. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | occurrence_id | string | | | action_id | string | | | role | string | | | authority_status | string | | | artifact_date | date | | | publisher_occurrence_date | date | | | state_submission_date | date | | | cms_approval_date | date | | | waiver_effective_start | date | | | waiver_effective_end | date | | | provision_implementation_start | date | | | provision_implementation_end | date | | | table_as_of_date | date | | | effective_text | string | | | file_type | string | | | publisher_filename | string | | | official_url | string | | | acquisition_url | string | | | byte_count | bigint | | | document_sha256 | string | | | expected_page_count | int | | | parse_disposition | string | | | source_limit_reason | string | | | content_occurrence_count | int | | | content_occurrence_ordinal | int | | | is_content_alias | boolean | | | is_proposed_nonoperative | boolean | | | is_acquired | boolean | | | manifest_sha256 | string | | | raw_occurrence_json | string | | | semantic_row_sha256 | 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 medicare_silver.ca_calaim_1915b_source_occurrence WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_calaim_1915b_source_occurrence")` first. # California CalAIM 1915(b) physical workbook-cell evidence `medicare_silver.ca_calaim_1915b_workbook_cell` · State programs · status live · 19,941 rows Production-reconciled and exact-replay-idempotent lossless cell layer for acquired CalAIM 1915(b) cost-effectiveness workbooks, preserving raw and displayed values, formulas, data type, number format, style array, merged range, hyperlink, comment, semantic text, quality flags, exact workbook identity, content-alias count, semantic-row hash, and Bronze lineage without converting projections into actual claims or revenue. **Grain.** One nonempty physical cell per exact workbook SHA-256, physical sheet name, and cell coordinate. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | document_sha256 | string | | | canonical_occurrence_id | string | | | content_occurrence_count | int | | | sheet_name | string | | | sheet_index | int | | | cell_coordinate | string | | | row_number | int | | | column_number | int | | | raw_value_json | string | | | displayed_value_json | string | | | formula | string | | | data_type | string | | | number_format | string | | | style_id | int | | | style_array_json | string | | | merged_range | string | | | hyperlink_json | string | | | comment_json | string | | | semantic_value_text | string | | | semantic_row_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ca_calaim_1915b_workbook_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_calaim_1915b_workbook_cell")` first. # California Medi-Cal managed-care contract index snapshots `medicare_silver.ca_medi_cal_managed_care_contract_index_snapshot` · State programs · status live · 4 rows Lossless archived-index ledger for four exact DHCS managed-care boilerplate publication states. It preserves official and acquisition URLs, archive capture, exact bytes and hashes, linked and unresolved corpus identities, publisher notes, content aliases, semantic hashes, and M-2 lineage. Index rows prove publisher occurrence and link history, not contracts or amendments. **Grain.** One frozen corpus snapshot and exact archived official DHCS index occurrence. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | snapshot_id | string | | | official_url | string | | | acquisition_url | string | | | archive_capture_at | string | | | byte_count | bigint | | | document_sha256 | string | | | publisher_effective_period_raw | string | | | linked_corpus_json | string | | | linked_occurrence_id_count | int | | | unresolved_linked_corpus_json | string | | | note | string | | | content_occurrence_count | int | | | content_occurrence_ordinal | int | | | is_content_alias | boolean | | | is_contract_document | boolean | | | is_contract_fact_eligible | boolean | | | manifest_sha256 | string | | | raw_snapshot_json | string | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_managed_care_contract_index_snapshot WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_managed_care_contract_index_snapshot")` first. # California Medi-Cal managed-care contract index text `medicare_silver.ca_medi_cal_managed_care_contract_index_snapshot_text` · State programs · status live · 4 rows Decoded text layer for four exact DHCS archived contract-publication indexes, preserving canonical snapshot identity, content aliases, text hash, byte and character counts, decoding/extraction method, quality flags, semantic hash, and M-2 lineage. It supports publisher-link research but emits no contract facts. **Grain.** One exact archived-index document SHA-256 and decoded lossless text document. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | document_sha256 | string | | | canonical_snapshot_id | string | | | content_occurrence_count | int | | | snapshot_text | string | | | snapshot_text_sha256 | string | | | byte_count | bigint | | | character_count | bigint | | | decode_encoding | string | | | extraction_method | string | | | quality_flags | string | | | is_contract_fact_eligible | boolean | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_managed_care_contract_index_snapshot_text WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_managed_care_contract_index_snapshot_text")` first. # California Medi-Cal managed-care contract PDF-page evidence `medicare_silver.ca_medi_cal_managed_care_contract_pdf_page` · State programs · status live · 3,822 rows Lossless physical-page layer for 14 acquired DHCS managed-care boilerplate and publisher-labeled restatement PDFs. It preserves document/page hashes, canonical occurrence identity, layout-aware text, extraction quality, fact-eligibility sentinels, semantic hashes, and M-2 lineage. It is citation evidence and contains no executed contract, plan-specific amendment, or rate facts. **Grain.** One exact acquired PDF document SHA-256 and one-based physical page number. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | document_sha256 | string | | | canonical_occurrence_id | string | | | content_occurrence_count | int | | | page_number | int | | | page_text | string | | | page_text_sha256 | string | | | word_count | int | | | extraction_method | string | | | quality_flags | string | | | is_contract_fact_eligible | boolean | | | is_executed_contract_evidence | boolean | | | is_plan_specific_amendment_evidence | boolean | | | is_rate_fact_eligible | boolean | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_managed_care_contract_pdf_page WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_managed_care_contract_pdf_page")` first. # California Medi-Cal managed-care contract source occurrences `medicare_silver.ca_medi_cal_managed_care_contract_source_occurrence` · State programs · status live · 31 rows Production-reconciled and exact-replay-idempotent occurrence ledger for California physical-health Medi-Cal managed-care boilerplates, publisher-labeled amendment/full-restatement packages, Exhibit L variants, and explicitly nonoperative drafts. It preserves artifact class, source-native dates, exact payload identity, acquisition/source-limit state, content aliases, operativity and fact-eligibility flags, semantic hashes, and M-2 lineage without manufacturing executed contract, amendment, CMS-review, or rate facts. **Grain.** One frozen corpus snapshot and official DHCS contract-publication occurrence, including acquired payloads and exact retrieval limits. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | occurrence_id | string | | | artifact_class | string | | | managed_care_models_json | string | | | publisher_document_label | string | | | publisher_version_label | string | | | exhibit_l_variant | string | | | variant_semantics | string | | | publication_date | date | | | publisher_effective_period_raw | string | | | publisher_applicability_raw | string | | | pdf_created_at_raw | string | | | pdf_modified_at_raw | string | | | archive_capture_at | string | | | contract_effective_start | date | | | official_url | string | | | candidate_static_url | string | | | acquisition_url | string | | | byte_count | bigint | | | document_sha256 | string | | | expected_page_count | int | | | parse_disposition | string | | | failed_probe_ids_json | string | | | source_limit_evidence_json | string | | | distinct_from_acquired_303_page_payload | boolean | | | content_occurrence_count | int | | | content_occurrence_ordinal | int | | | is_content_alias | boolean | | | is_payload_acquired | boolean | | | is_source_limited | boolean | | | is_explicitly_nonoperative | boolean | | | operative_status | string | | | is_exhibit_l_variant | boolean | | | is_temporal_version | boolean | | | blank_rate_semantics | string | | | is_corpus_search_eligible | boolean | | | is_contract_fact_eligible | boolean | | | is_executed_contract_evidence | boolean | | | is_plan_specific_amendment_evidence | boolean | | | is_rate_fact_eligible | boolean | | | quality_flags | string | | | manifest_sha256 | string | | | raw_occurrence_json | string | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_managed_care_contract_source_occurrence WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_managed_care_contract_source_occurrence")` first. # California Medi-Cal county-plan program-delivery roster `medicare_silver.ca_medi_cal_mcp_county_plan_roster` · State programs · status live · 218 rows Production-reconciled and exact-replay-idempotent structured transcription of the final DHCS 2023-to-2024 county-plan/model matrix. It retains raw display and legal names, source-native model and plan ordering, plan class, prime/subcontracted status, eligibility qualifier, notes and footnotes, exact citation, and separate operative/current/analytics flags. It includes the source-native Medi-Cal Fee For Service delivery row and does not coerce it into a managed-care plan. **Grain.** One source roster occurrence, roster year, county name, and source-native plan ordinal. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | occurrence_id | string | | | document_sha256 | string | | | roster_year | int | | | roster_status | string | | | source_as_of_date | date | | | effective_start_date | date | | | county_name | string | | | program_model | string | | | program_model_raw | string | | | plan_ordinal | int | | | raw_plan_display_name | string | | | raw_plan_legal_name | string | | | raw_plan_note | string | | | footnote_marker | string | | | displayed_plan_class | string | | | prime_or_subcontracted_status | string | | | eligibility_qualifier | string | | | source_page_number | int | | | source_citation | string | | | is_operative | boolean | | | is_current_claimed | boolean | | | is_analytics_eligible | boolean | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_mcp_county_plan_roster WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_mcp_county_plan_roster")` first. # California Medi-Cal managed-care roster PDF-page evidence `medicare_silver.ca_medi_cal_mcp_roster_pdf_page` · State programs · status live · 515 rows Production-reconciled and exact-replay-idempotent lossless page layer for acquired California Medi-Cal managed-care roster PDFs, preserving exact document and page-text hashes, layout-aware text, extraction method and quality flags, canonical occurrence linkage, proposal status, extraction fitness, semantic hashes, and M-2 lineage. It is citation evidence, not a plan-operativity or contract table. **Grain.** One exact acquired PDF document SHA-256 and one-based physical page number. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | document_sha256 | string | | | canonical_occurrence_id | string | | | content_occurrence_count | int | | | page_number | int | | | page_text | string | | | page_text_sha256 | string | | | word_count | int | | | extraction_method | string | | | quality_flags | string | | | roster_status | string | | | is_proposed_nonoperative | boolean | | | is_analytics_eligible | boolean | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_mcp_roster_pdf_page WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_mcp_roster_pdf_page")` first. # California Medi-Cal managed-care roster source occurrences `medicare_silver.ca_medi_cal_mcp_roster_source_occurrence` · State programs · status live · 15 rows Production-reconciled and exact-replay-idempotent occurrence ledger for California physical-health Medi-Cal managed-care program-delivery roster evidence. It preserves source roles, dates, exact payload identity, content aliases, acquisition state, directory evidence flags, proposal/operativity eligibility, source limits, raw occurrence JSON, semantic hashes, and M-2 lineage without treating directory listings as contract, enrollment, network, rate, or federal-authority proof. **Grain.** One frozen corpus snapshot and official DHCS managed-care roster source occurrence, including acquired artifacts and explicit retrieval limits. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | occurrence_id | string | | | role | string | | | roster_status | string | | | publication_date_raw | string | | | source_as_of_date_raw | string | | | proposed_effective_date_raw | string | | | asserted_at_raw | string | | | archive_capture_at_raw | string | | | version_raw | string | | | official_url | string | | | acquisition_url | string | | | publisher_filename | string | | | file_type | string | | | byte_count | bigint | | | document_sha256 | string | | | expected_page_count | int | | | member_count | int | | | parse_disposition | string | | | source_limit_reason | string | | | failed_probes_json | string | | | is_acquired | boolean | | | is_proposed_nonoperative | boolean | | | is_directory_choice_evidence | boolean | | | is_operative_roster_eligible | boolean | | | content_occurrence_count | int | | | content_occurrence_ordinal | int | | | is_content_alias | boolean | | | manifest_sha256 | string | | | raw_occurrence_json | string | | | semantic_row_sha256 | 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 medicare_silver.ca_medi_cal_mcp_roster_source_occurrence WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_medi_cal_mcp_roster_source_occurrence")` first. # California legacy SMHS 1915(b) authority-period history `medicare_silver.ca_smhs_1915b_legacy_history_period` · State programs · status live · 13 rows Production-reconciled and exact-replay-idempotent lossless chronology layer for the CA-17 initial authority through CA17.R09 temporary extensions. It preserves source-stated period text, independently parsed start/end dates, evidence basis, original-package recovery status, warnings, exact raw manifest JSON, semantic hashes, and M-2 lineage without manufacturing continuity or turning reconstructed dates into original authority documents. **Grain.** One frozen corpus snapshot and source-stated legacy SMHS authority period. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | authority_id | string | | | period_text | string | | | period_start | date | | | period_end | date | | | date_basis | string | | | original_package_status | string | | | partial_original_evidence | string | | | warning | string | | | is_reconstructed_date_basis | boolean | | | is_original_date_basis | boolean | | | manifest_sha256 | string | | | raw_history_period_json | string | | | semantic_row_sha256 | 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 medicare_silver.ca_smhs_1915b_legacy_history_period WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_smhs_1915b_legacy_history_period")` first. # California legacy SMHS 1915(b) physical PDF-page evidence `medicare_silver.ca_smhs_1915b_legacy_pdf_page` · State programs · status live · 1,356 rows Production-reconciled and exact-replay-idempotent lossless page layer for the 33 recovered legacy SMHS 1915(b) PDFs, preserving layout-aware extracted text, exact document and page-text hashes, word count, extraction method, quality flags, semantic hashes, canonical occurrence linkage, and M-2 lineage. It is physical citation evidence, not a structured operative-rule table. **Grain.** One exact recovered PDF document SHA-256 and one-based physical page number. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | document_sha256 | string | | | canonical_occurrence_id | string | | | content_occurrence_count | int | | | page_number | int | | | page_text | string | | | page_text_sha256 | string | | | word_count | int | | | extraction_method | string | | | semantic_row_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.ca_smhs_1915b_legacy_pdf_page WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_smhs_1915b_legacy_pdf_page")` first. # California legacy SMHS 1915(b) official source occurrences `medicare_silver.ca_smhs_1915b_legacy_source_occurrence` · State programs · status live · 38 rows Production-reconciled and exact-replay-idempotent lossless occurrence ledger for the legacy CA-17 through CA17.R09 authority chain. It preserves authority and artifact roles; source-native date evidence; official, original, archive, and acquisition URLs; exact payload identity; content-alias ordinals; retrieval and expected-unrecovered source limits; eligibility and quality flags; raw occurrence JSON; semantic hashes; and M-2 lineage without inferring an operative-current roster. **Grain.** One frozen corpus snapshot and official legacy DHCS/CMS source occurrence, including recovered, retrieval-limited, and expected-unrecovered artifacts. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | occurrence_id | string | | | authority_id | string | | | role | string | | | document_date | date | | | document_date_text | string | | | document_date_precision | string | | | date_basis | string | | | original_url | string | | | official_url | string | | | archive_timestamp | string | | | acquisition_url | string | | | byte_count | bigint | | | document_sha256 | string | | | expected_page_count | int | | | page_count_basis | string | | | payload_status | string | | | source_limit_reason | string | | | warning | string | | | request_reference | string | | | requested_end | date | | | effective_start | date | | | effective_end | date | | | content_occurrence_count | int | | | content_occurrence_ordinal | int | | | is_content_alias | boolean | | | is_recovered | boolean | | | is_retrieval_source_limit | boolean | | | is_expected_unrecovered | boolean | | | is_analytics_eligible | boolean | | | quality_flags | string | | | manifest_sha256 | string | | | raw_occurrence_json | string | | | semantic_row_sha256 | 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 medicare_silver.ca_smhs_1915b_legacy_source_occurrence WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ca_smhs_1915b_legacy_source_occurrence")` first. # CMS monthly state Medicaid and CHIP enrollment operations `medicare_silver.cms_medicaid_chip_enrollment_monthly_state` · State programs · status live · 11,118 rows Source-faithful monthly state applications, eligibility determinations, enrollment, application-processing, and call-center measures from the current CMS portal distribution, retaining preliminary and updated revisions, final-report status, exact metric footnotes, latest-revision flags, semantic row hashes, and Bronze lineage. **Grain.** One state or District of Columbia row per reporting period and publisher preliminary or updated/final revision. | column | type | meaning | |---|---|---| | source_row_number | int | | | reporting_period | int | | | reporting_year | int | | | reporting_month | int | | | reporting_period_date | date | | | state_abbreviation | string | | | state_name | string | | | state_expanded_medicaid | string | | | report_revision | string | | | final_report | string | | | is_final_report | boolean | | | is_latest_revision | boolean | | | new_applications_submitted_to_medicaid_and_chip_agencies | bigint | | | applications_for_financial_assistance_submitted_to_the_state_based_marketplace | bigint | | | total_applications_for_financial_assistance_submitted_at_state_level | bigint | | | individuals_determined_eligible_for_medicaid_at_application | bigint | | | individuals_determined_eligible_for_chip_at_application | bigint | | | total_medicaid_and_chip_determinations | bigint | | | medicaid_and_chip_child_enrollment | bigint | | | total_medicaid_and_chip_enrollment | bigint | | | total_medicaid_enrollment | bigint | | | total_chip_enrollment | bigint | | | total_medicaid_adult_enrollment | bigint | | | total_medicaid_and_chip_determinations_processed_in_less_than_24_hours | bigint | | | total_medicaid_and_chip_determinations_processed_between_24_hours_and_7_days | bigint | | | total_medicaid_and_chip_determinations_processed_between_8_days_and_30_days | bigint | | | total_medicaid_and_chip_determinations_processed_between_31_days_and_45_days | bigint | | | total_medicaid_and_chip_determinations_processed_in_more_than_45_days | bigint | | | total_call_center_volume | bigint | | | average_call_center_wait_time | bigint | | | average_call_center_abandonment_rate | double | | | new_applications_submitted_to_medicaid_and_chip_agencies_footnotes | string | | | applications_for_financial_assistance_submitted_to_the_state_based_marketplace_footnotes | string | | | total_applications_for_financial_assistance_submitted_at_state_level_footnotes | string | | | individuals_determined_eligible_for_medicaid_at_application_footnotes | string | | | individuals_determined_eligible_for_chip_at_application_footnotes | string | | | total_medicaid_and_chip_determinations_footnotes | string | | | medicaid_and_chip_child_enrollment_footnotes | string | | | total_medicaid_and_chip_enrollment_footnotes | string | | | total_medicaid_enrollment_footnotes | string | | | total_chip_enrollment_footnotes | string | | | total_medicaid_adult_enrollment_footnotes | string | | | total_medicaid_and_chip_determinations_processed_in_less_than_24_hours_footnotes | string | | | total_medicaid_and_chip_determinations_processed_between_24_hours_and_7_days_footnotes | string | | | total_medicaid_and_chip_determinations_processed_between_8_days_and_30_days_footnotes | string | | | total_medicaid_and_chip_determinations_processed_between_31_days_and_45_days_footnotes | string | | | total_medicaid_and_chip_determinations_processed_in_more_than_45_days_footnotes | string | | | total_call_center_volume_footnotes | string | | | average_call_center_wait_time_footnotes | string | | | average_call_center_abandonment_rate_footnotes | string | | | semantic_row_sha256 | 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 | | Tools that read it: get_medicaid_mco_enrollment Query it: `query_substrate` with `SELECT ... FROM medicare_silver.cms_medicaid_chip_enrollment_monthly_state WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_medicaid_chip_enrollment_monthly_state")` first. # CMS Medicaid and CHIP monthly-enrollment source asset inventory `medicare_silver.cms_medicaid_chip_enrollment_source_asset` · State programs · status live · 204 rows Complete physical source inventory for the accepted monthly state Medicaid and CHIP applications, eligibility, and enrollment family, retaining the current CSV and metadata, the official report-history page, 80 historical PDFs, 48 ZIP containers, 48 workbook members, 24 retained PDF members, document hashes, parse disposition, and content-addressed Bronze lineage. **Grain.** One row per governed current portal asset, official historical report PDF or ZIP container, or exact expanded archive member. | column | type | meaning | |---|---|---| | asset_id | string | | | source_family | string | | | document_role | string | | | title | string | | | publisher_page_url | string | | | original_source_url | string | | | acquisition_url | string | | | container_asset_id | string | | | container_member | string | | | publisher_filename | string | | | actual_format | string | | | byte_count | bigint | | | document_sha256 | string | | | parse_disposition | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_medicaid_chip_enrollment_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_medicaid_chip_enrollment_source_asset")` first. # CMS Medicaid and CHIP historical report workbook cells `medicare_silver.cms_medicaid_chip_enrollment_workbook_cell` · State programs · status live · 158,175 rows Lossless cell-level evidence from all 48 official historical report workbooks, preserving raw and displayed values, formulas, formats, merged ranges, hyperlinks, exact ZIP container/member lineage, document hash, and content-addressed Bronze provenance. **Grain.** One nonempty physical cell per accepted historical report workbook, sheet, and exact coordinate. | column | type | meaning | |---|---|---| | asset_id | string | | | container_asset_id | string | | | container_member | string | | | publisher_filename | string | | | sheet_name | string | | | sheet_index | int | | | cell_coordinate | string | | | row_number | int | | | column_number | int | | | raw_value_json | string | | | displayed_value_json | string | | | formula | string | | | data_type | string | | | number_format | string | | | merged_range | string | | | hyperlink | string | | | semantic_value_text | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_medicaid_chip_enrollment_workbook_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_medicaid_chip_enrollment_workbook_cell")` first. # CMS Medicaid managed-care enrollment by program and plan `medicare_silver.cms_medicaid_managed_care_plan_enrollment` · State programs · status live · 7,804 rows Annual Medicaid managed-care enrollment for 2016-2024 with raw and normalized state labels, program and plan names, geographic region, separate Medicaid-only, dual, and total counts, exact raw values and value-status semantics, parent organization, stable physical source-row identity, semantic row hash, and Bronze lineage. **Grain.** One physical publisher row per calendar year, state, program, plan label, and reported geographic region. | column | type | meaning | |---|---|---| | source_row_number | int | | | calendar_year | int | | | state_name_raw | string | | | state_name | string | | | state_footnote_marker | string | | | notes | string | | | program_name | string | | | plan_name | string | | | geographic_region | string | | | medicaid_only_enrollment | bigint | | | medicaid_only_enrollment_raw | string | | | medicaid_only_value_status | string | | | dual_enrollment | bigint | | | dual_enrollment_raw | string | | | dual_value_status | string | | | total_enrollment | bigint | | | total_enrollment_raw | string | | | total_value_status | string | | | parent_organization | string | | | semantic_row_sha256 | 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 | | Tools that read it: get_medicaid_mco_enrollment Query it: `query_substrate` with `SELECT ... FROM medicare_silver.cms_medicaid_managed_care_plan_enrollment WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_medicaid_managed_care_plan_enrollment")` first. # CMS Medicaid managed-care plan-enrollment source inventory `medicare_silver.cms_medicaid_managed_care_plan_source_asset` · State programs · status live · 3 rows Governed source ledger for CMS Medicaid managed-care enrollment by program and plan, retaining the official history page, Data.Medicaid.gov metadata, exact 2016-2024 consolidated CSV, publisher bytes and document hashes, parse disposition, and content-addressed Bronze lineage. **Grain.** One row per accepted publisher history page, dataset metadata asset, or exact consolidated CSV. | column | type | meaning | |---|---|---| | asset_id | string | | | source_family | string | | | document_role | string | | | title | string | | | publisher_page_url | string | | | original_source_url | string | | | acquisition_url | string | | | container_asset_id | string | | | container_member | string | | | publisher_filename | string | | | actual_format | string | | | byte_count | bigint | | | document_sha256 | string | | | parse_disposition | string | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.cms_medicaid_managed_care_plan_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.cms_medicaid_managed_care_plan_source_asset")` first. # District of Columbia Medicaid monthly enrollment report history `medicare_silver.dc_medicaid_enrollment_history_observation` · State programs · status live · 53,274 rows Source-native DHCF Medicaid and Alliance monthly report observations from 121 known official PDFs as of October 24, 2026. Later reports can revise earlier months; a preferred-report flag marks the source selection without discarding older rows. **Grain.** One official report edition × observation month × printed section × plan/program row; all report revisions retained. | column | type | meaning | |---|---|---| | state_code | string | | | occurrence_id | string | | | document_sha256 | string | | | publication_date | date | | | report_period | date | | | observation_period | date | | | measurement_basis | string | | | section_name_raw | string | | | dimension_1_raw | string | | | plan_name_raw | string | | | source_plan_identity_id | string | | | program_class | string | | | row_type | string | | | row_role | string | | | reported_value | bigint | | | value_status | string | | | evidence_source_url | string | | | evidence_content_sha256 | string | | | source_locator | string | | | semantic_row_sha256 | string | | | period_revision_rank | int | | | is_preferred_period_snapshot | boolean | | | 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.dc_medicaid_enrollment_history_observation WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.dc_medicaid_enrollment_history_observation")` first. # California DHCS Medi-Cal managed-care enrollment `medicare_silver.fact_ca_medi_cal_managed_care_enrollment` · State programs · status live · 31,178 rows Lossless cumulative monthly California Medi-Cal managed-care enrollment by publisher plan-type label, county, and plan label from January 2007 through June 2026, preserving raw and normalized labels, reported or suppressed count state, annotations, unexplained publisher-key duplicates, semantic row hash, and content-addressed Bronze lineage. **Grain.** One physical publisher row per enrollment month and source row number. | column | type | meaning | |---|---|---| | source_row_number | bigint | | | enrollment_month | date | | | enrollment_month_raw | string | | | plan_type | string | | | plan_type_raw | string | | | county | string | | | county_raw | string | | | plan_name | string | | | plan_name_raw | string | | | enrollment_count | bigint | | | enrollment_count_raw | string | | | count_status | string | | | annotation_code | string | | | annotation_code_raw | string | | | annotation_description | string | | | annotation_description_raw | string | | | publisher_key_duplicate_count | int | | | publisher_key_duplicate_ordinal | int | | | is_publisher_key_duplicate | boolean | | | semantic_row_sha256 | string | | | raw_row_json | 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 medicare_silver.fact_ca_medi_cal_managed_care_enrollment WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_ca_medi_cal_managed_care_enrollment")` first. # CDC NHSN National and State HAI Progress Data `medicare_silver.fact_cdc_nhsn_state_hai` · State programs · status live · 40,792 rows State and territory standardized infection ratios and standardized utilization ratios from CDC NHSN across acute care, critical access, inpatient rehabilitation, and long-term acute-care settings. **Grain.** One lossless publisher state-data row per reporting year, artifact, source sheet, and source row number; normalized measure and jurisdiction analytics are separately eligibility-gated. | column | type | meaning | |---|---|---| | reporting_year | int | | | ratio_type | string | | | facility_setting | string | | | baseline_era | string | | | publisher_artifact_id | string | | | source_sheet | string | | | source_row_number | int | | | state_name_raw | string | | | state_code | string | | | measure_descriptor_raw | string | | | measure_code | string | | | population_scope_code | string | | | volume_unit | string | | | state_mandate_raw | string | | | validation_raw | string | | | facilities_reporting_raw | string | | | facilities_reporting_numeric | double | | | procedures_raw | string | | | procedures_numeric | double | | | volume_observed_raw | string | | | volume_observed_numeric | double | | | volume_predicted_raw | string | | | volume_predicted_numeric | double | | | ratio_raw | string | | | ratio_numeric | double | | | ratio_value_status | string | | | ci_lower_raw | string | | | ci_lower_numeric | double | | | ci_upper_raw | string | | | ci_upper_numeric | double | | | publisher_jurisdiction_ambiguous | boolean | | | is_normalized_state_analytics_eligible | boolean | | | analytics_exclusion_reason | string | | | table_title_raw | string | | | header_matrix_json | string | | | column_paths_json | string | | | row_values_json | string | | | semantic_row_sha256 | 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 medicare_silver.fact_cdc_nhsn_state_hai WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_cdc_nhsn_state_hai")` first. # CMS Medicaid Health Home Program Quality `medicare_silver.fact_medicaid_health_home_quality` · State programs · status live · 12,979 rows Lossless CMS Medicaid Health Home measure-performance tables for 2019-2024, preserving program identity, measure-specific column headers, raw table context, suppression statuses, and exact ZIP/PDF lineage. **Grain.** One physical publisher observation cell per reporting year, measure, state, approved Health Home program, population, methodology, and denominator/rate stratum. | column | type | meaning | |---|---|---| | reporting_year | int | | | measure_code | string | | | state_code | string | | | state_name_raw | string | | | health_home_program | string | | | population | string | | | methodology | string | | | source_member | string | | | source_member_sha256 | string | | | source_page | int | | | source_table_ordinal | int | | | source_row_ordinal | int | | | source_column_ordinal | int | | | column_header_raw | string | | | value_raw | string | | | value_numeric | double | | | value_status | string | | | raw_row_json | string | | | header_matrix_json | string | | | semantic_row_sha256 | string | | | publisher_dataset_id | string | | | publisher_schema_era | 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 medicare_silver.fact_medicaid_health_home_quality WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_medicaid_health_home_quality")` first. # Medicaid MCO parent share, monthly - materialization of 2026-09-27T02:18Z (current, read through the serving pointer) `medicare_silver.fact_medicaid_mco_parent_share_monthly_v20260927t0218z` · State programs · status partial · 28,970 rows The CTAS parquet materialization of medicare_semantic.vw_medicaid_mco_parent_share_monthly_v3 taken 2026-09-27T02:18Z. The current materialization: the pointer reads it. Adds NC, OH, NH, NE, PR and CO (RAE attribution) to v2 and reads the new KY table; the other 30 states equal the prior served table row for row (queries 057ff9bd, d873a213). **Grain.** Same grain and columns as the build view it materializes; 28,970 rows, 38 states, 4,315 state-months. | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_period | timestamp | | | segment_id | varchar(24) | | | measure | varchar(146) | | | value_unit | string | | | geography_type | string | | | geography_level | varchar(48) | | | source_time_basis | string | | | parent_id | string | | | parent_name | string | | | parent_ticker | string | | | is_unmapped_bucket | boolean | | | plan_rows | bigint | | | plan_keys | bigint | | | plan_labels | string | | | parent_reported_value_sum | double | | | state_plan_row_sum | double | | | state_mapped_sum | double | | | state_unmapped_sum | double | | | parent_share | double | | | unmapped_share | double | | | null_or_suppressed_rows | bigint | | | duplicate_rows_collapsed | bigint | | | evidence_methods | string | | | identity_edge_conflict | boolean | | | value_basis | varchar(39) | | | enrollment_total_authorized | boolean | | | crosswalk_version | varchar(125) | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_medicaid_mco_parent_share_monthly_v20260927t0218z WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_medicaid_mco_parent_share_monthly_v20260927t0218z")` first. # States M1S SFY final enrollment by parent: fact_tx_medicaid_mco_parent_share_sfy_final_v1 `medicare_silver.fact_tx_medicaid_mco_parent_share_sfy_final_v1` · State programs · status partial · 781 rows Medicaid product M1S (SFY final enrollment by parent) of the States lane: Medicaid and CHIP managed care members by parent by state fiscal year: the state's final SFY average monthly enrollment, with each parent's share of the state total. ANNUAL, NOT MONTHLY: measure sfy_average_monthly_final is the state fiscal year's average monthly enrollment, HHSC final (Texas SFY runs September to August; period_start and period_end bound it). Never mix it into the monthly M1 series and never chart it as months. Filter state_fiscal_year and program (or segment_id) before summing: programs overlap (All = Medicaid + CHIP; CHIP = CHIP Perinatal + CHIP Regular; Medicaid = STAR, STAR+PLUS, STAR Kids, STAR Health, Dual Demo), so summing across programs double counts. One row per year x program x parent; is_unmapped_bucket rows hold members not yet bound to a parent. Parents sum to statewide_total_printed, the state's own total for that year and program. 1 state(s): TX. **Grain.** Medicaid and CHIP managed care members by parent by state fiscal year: the state's final SFY average monthly enrollment, with each parent's share of the state total. 781 rows (Athena, 2026-10-29). Period 2019 to 2025 (state_fiscal_year). | column | type | meaning | |---|---|---| | state_code | string | | | period_start | date | | | period_end | date | | | state_fiscal_year | int | | | segment_id | string | | | program | string | | | measure | string | | | measure_label | string | | | value_unit | string | | | source_time_basis | string | | | resolution_date | date | | | parent_id | string | | | parent_name | string | | | is_unmapped_bucket | boolean | | | plan_rows | bigint | | | plan_labels | string | | | parent_reported_value_sum | double | | | state_plan_row_sum | double | | | statewide_total_printed | double | | | state_mapped_sum | double | | | state_unmapped_sum | double | | | parent_share | double | | | unmapped_share | double | | | crosswalk_row_ids | string | | | crosswalk_csv_sha256 | string | | | source_sha256 | string | | | source_file | string | | | source_url | string | | | source_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_tx_medicaid_mco_parent_share_sfy_final_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_tx_medicaid_mco_parent_share_sfy_final_v1")` first. # MACPAC MACStats workbook exhibit index `medicare_silver.macpac_macstats_exhibit` · State programs · status live · 864 rows Governed semantic index for 864 physical workbook sheets, retaining canonical versus alternate display role, title, unit, data extent, observation counts, measurement-year bounds, source cells, document hash, publication vintage, and Bronze lineage. **Grain.** One physical workbook sheet per accepted MACStats workbook and edition. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_id | string | | | edition_year | int | | | publication_date | date | | | exhibit_type | string | | | exhibit_number | string | | | exhibit_title | string | | | sheet_name | string | | | sheet_index | int | | | sheet_role | string | | | unit_label | string | | | notes_text | string | | | data_start_row | int | | | data_end_row | int | | | observation_count | int | | | numeric_observation_count | int | | | measurement_year_min | int | | | measurement_year_max | int | | | title_cell_coordinate | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.macpac_macstats_exhibit WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.macpac_macstats_exhibit")` first. # MACPAC MACStats exact metric observations `medicare_silver.macpac_macstats_metric_observation` · State programs · status live · 240,074 rows Source-faithful long-form MACStats value states across all accepted canonical workbook sheets, retaining row label and group, merged header path, measurement period, geography when explicit, numeric or textual publisher status, exact value/header/dimension cells, formula, format, document hash, and Bronze lineage. **Grain.** One exact canonical workbook value cell when MACPAC publishes a numeric value or an explicit textual value state. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | observation_id | string | | | asset_id | string | | | edition_id | string | | | edition_year | int | | | publication_date | date | | | exhibit_type | string | | | exhibit_number | string | | | exhibit_title | string | | | sheet_name | string | | | sheet_index | int | | | measure_name | string | | | row_label | string | | | row_group | string | | | column_header | string | | | unit_label | string | | | unit_code | string | | | value_numeric | double | | | value_text | string | | | value_status | string | | | measurement_period | string | | | measurement_year | int | | | period_type | string | | | geography_label | string | | | cell_annotation | string | | | dimension_json | string | | | value_cell_coordinate | string | | | header_cells_json | string | | | dimension_cells_json | string | | | formula | string | | | number_format | string | | | raw_value_json | string | | | displayed_value_json | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.macpac_macstats_metric_observation WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.macpac_macstats_metric_observation")` first. # MACPAC MACStats full-edition page evidence `medicare_silver.macpac_macstats_page` · State programs · status live · 2,375 rows Layout-preserving page evidence for all 2,375 pages in the 19 accepted MACStats editions, retaining page text, publisher exhibit detection, page hashes, extraction eligibility, source URL, publication vintage, and exact Bronze lineage. **Grain.** One physical PDF page per accepted MACStats edition and full-edition source asset. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_id | string | | | edition_year | int | | | publication_date | date | | | page_number | int | | | exhibit_type | string | | | exhibit_number | string | | | exhibit_title | string | | | page_text | string | | | page_text_sha256 | string | | | word_count | int | | | extraction_method | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.macpac_macstats_page WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.macpac_macstats_page")` first. # MACPAC MACStats source asset inventory `medicare_silver.macpac_macstats_source_asset` · State programs · status live · 536 rows Complete public MACStats inventory across 19 official editions from March 2011 through February 2026, retaining 19 full PDFs, 18 historical Excel containers, 456 exact archived workbook members, 43 current workbooks, document hashes, parse disposition, publication vintage, and content-addressed Bronze lineage. **Grain.** One row per accepted full-edition PDF, historical Excel container, or exact workbook asset. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_id | string | | | edition_year | int | | | publication_date | date | | | publication_family | string | | | document_role | string | | | exhibit_number | string | | | title | string | | | publisher_page_url | string | | | original_source_url | string | | | acquisition_url | string | | | container_asset_id | string | | | container_member | string | | | publisher_filename | string | | | actual_format | string | | | byte_count | bigint | | | document_sha256 | string | | | source_availability | string | | | parse_disposition | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.macpac_macstats_source_asset WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.macpac_macstats_source_asset")` first. # MACPAC MACStats lossless workbook cells `medicare_silver.macpac_macstats_workbook_cell` · State programs · status live · 383,797 rows Lossless cell-level evidence from all 499 accepted MACStats workbooks across the 19-edition history, preserving raw and displayed values, formulas, formats, merged ranges, hyperlinks, sheet and exhibit identity, document hash, and exact Bronze lineage. **Grain.** One nonempty physical cell per accepted workbook, sheet, and exact coordinate. | column | type | meaning | |---|---|---| | corpus_snapshot_date | date | | | asset_id | string | | | edition_id | string | | | edition_year | int | | | publication_date | date | | | exhibit_number | string | | | sheet_name | string | | | sheet_index | int | | | cell_coordinate | string | | | row_number | int | | | column_number | int | | | raw_value_json | string | | | displayed_value_json | string | | | formula | string | | | data_type | string | | | number_format | string | | | merged_range | string | | | hyperlink | string | | | semantic_value_text | string | | | publisher_source_url | string | | | document_sha256 | string | | | semantic_row_sha256 | string | | | is_current_edition | boolean | | | quality_flags | string | | | is_analytics_eligible | boolean | | | 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.macpac_macstats_workbook_cell WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.macpac_macstats_workbook_cell")` first. # Medicaid managed care capitation rates by rate cell, 28 jurisdictions (cross-state layer v1), PMPM, rating periods 2018-2027 `medicare_silver.medicaid_capitation_rate_cell_v1` · State programs · status partial · 54,981 rows The capitation rates themselves: the per-member-per-month (PMPM) amount a state Medicaid agency pays its managed care organizations for an enrollee in each rate cell, as each state publishes it (rate certification exhibits, contract rate exhibits, rate schedules, the DHCS rate CSVs). rate_pmpm is dollars per member per month at the publisher's printed precision unless unit_raw says otherwise (kick payments are per event, e.g. per delivery). rate_kind separates final (contracted) rates from CA's actuarially sound ranges (lower_bound, midpoint, upper_bound), base rates before a named add-on or risk adjustment, and kick payments. plan, rate cell, population, region and age/sex are the publisher's own labels. Jurisdictions with cells: AZ CA DC FL GA IA ID IN LA MA MS NC NE NH NJ NV OH OK OR PA PR SC TX UT VA VT WI WV; CA is 29,409 of the rows. Every row cites document_url, SHA-256 and a page/line evidence_locator; join its cycle on (state_code, program_name_raw, rating_period_start, rating_period_end, amendment_seq), where a cell may carry a sub-period of its cycle. **Grain.** One row per published rate: the cycle key x plan_name_raw x rate_cell_raw x population_raw x region_raw x age_sex_raw x rate_kind x unit_raw; 54,981 rows in 28 jurisdictions, rating periods 2018-01-01 to 2027-09-30, 0 duplicate keys, 0 NULL rate_pmpm (Athena c54592ae; key and lineage checks verify_tracker_loads --lane CAP, cloud run 20261007T004245Z-dedf4193). | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | rating_period_start | date | | | rating_period_end | date | | | amendment_seq | int | | | plan_name_raw | string | | | rate_cell_raw | string | | | population_raw | string | | | region_raw | string | | | age_sex_raw | string | | | rate_pmpm | double | | | rate_kind | string | | | unit_raw | string | | | document_url | string | | | sha256_content_hash | string | | | evidence_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_capitation_rate_cell_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_capitation_rate_cell_v1")` first. # Medicaid managed care capitation rates by rate cell, 28 jurisdictions (cross-state layer), PMPM, rating periods 2018-2027 `medicare_silver.medicaid_capitation_rate_cell_v2` · State programs · status partial · 53,651 rows The capitation rates themselves: the per-member-per-month (PMPM) amount a state Medicaid agency pays its managed care organizations for an enrollee in each rate cell, as each state publishes it (rate certification exhibits, contract rate exhibits, rate schedules, the DHCS rate CSVs). rate_pmpm is dollars per member per month at the publisher's printed precision unless unit_raw says otherwise (kick payments are per event, e.g. per delivery). rate_kind separates final (contracted) rates from CA's actuarially sound ranges (lower_bound, midpoint, upper_bound), base rates before a named add-on or risk adjustment, and kick payments. plan, rate cell, population, region and age/sex are the publisher's own labels. Jurisdictions with cells: AZ CA DC FL GA IA ID IN LA MA MS NC NE NH NJ NV OH OK OR PA PR SC TX UT VA VT WI WV; CA is 29,409 of the rows. Every row cites document_url, SHA-256 and a page/line evidence_locator; join its cycle on (state_code, program_name_raw, rating_period_start, rating_period_end, amendment_seq), where a cell may carry a sub-period of its cycle. v2 restates v1 whole with the served defects CAP-1..21 fixed (#3243): FL budgetary rates dropped, TX, SC, WV, MA, PA, LA, MS, NJ, NH labels and values as printed. **Grain.** One row per published rate: the cycle key x plan_name_raw x rate_cell_raw x population_raw x region_raw x age_sex_raw x rate_kind x unit_raw; 53,651 rows in 28 jurisdictions, rating periods 2018-01-01 to 2027-09-30 (Athena d6771896); 0 duplicate keys (verify_tracker_loads --lane CAP, gates run 20261007T092022Z-92425b52). | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | rating_period_start | date | | | rating_period_end | date | | | amendment_seq | int | | | plan_name_raw | string | | | rate_cell_raw | string | | | population_raw | string | | | region_raw | string | | | age_sex_raw | string | | | rate_pmpm | double | | | rate_kind | string | | | unit_raw | string | | | document_url | string | | | sha256_content_hash | string | | | evidence_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_capitation_rate_cell_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_capitation_rate_cell_v2")` first. # Medicaid managed care capitation rate cycle, every state (cross-state layer v1), rating periods 2018-2027 `medicare_silver.medicaid_capitation_rate_cycle_v1` · State programs · status partial · 344 rows Capitation is the fixed per-member-per-month (PMPM) payment a state Medicaid agency pays each managed care organization (MCO) for every enrollee, priced by rate cell (population, eligibility category, age/sex band, region), set for a rating period and certified as actuarially sound by an actuary. This table holds the rate CYCLE: one row per state x program x rating period x amendment, with the cycle basis (calendar_year, state_fiscal_year, other), certification_date, actuary_firm, the overall rate change the document itself states (percent points, with its basis in rate_change_basis_raw, never computed by us) and the document_url, SHA-256 and page/line evidence_locator behind the row. The published rates themselves are medicare_silver.medicaid_capitation_rate_cell_v1. A Vlada cross-state layer read from 44 jurisdictions' own rate certifications, contract rate exhibits and rate schedules; for FL, NC, OH and CA it re-reads the same documents as the state's own table. **Grain.** One row per state_code x program_name_raw x rating_period_start x rating_period_end x amendment_seq; 344 rows in 44 jurisdictions (42 states, DC and PR), rating periods 2018-01-01 to 2027-09-30, 0 duplicate keys (Athena c54592ae; key and lineage checks verify_tracker_loads --lane CAP, cloud run 20261007T004245Z-dedf4193). | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | program_class | string | | | rating_period_start | date | | | rating_period_end | date | | | cycle_basis | string | | | certification_date | date | | | actuary_firm | string | | | document_title | string | | | document_url | string | | | sha256_content_hash | string | | | cms_approval_date | date | | | overall_rate_change_pct_reported | double | | | rate_change_basis_raw | string | | | amendment_seq | int | | | evidence_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_capitation_rate_cycle_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_capitation_rate_cycle_v1")` first. # Medicaid managed care capitation rate cycle, every state (cross-state layer), rating periods 2018-2027 `medicare_silver.medicaid_capitation_rate_cycle_v2` · State programs · status partial · 347 rows Capitation is the fixed per-member-per-month (PMPM) payment a state Medicaid agency pays each managed care organization (MCO) for every enrollee, priced by rate cell (population, eligibility category, age/sex band, region), set for a rating period and certified as actuarially sound by an actuary. This table holds the rate CYCLE: one row per state x program x rating period x amendment, with the cycle basis (calendar_year, state_fiscal_year, other), certification_date, actuary_firm, the overall rate change the document itself states (percent points, with its basis in rate_change_basis_raw, never computed by us) and the document_url, SHA-256 and page/line evidence_locator behind the row. The published rates themselves are medicare_silver.medicaid_capitation_rate_cell_v2. A Vlada cross-state layer read from 44 jurisdictions' own rate certifications, contract rate exhibits, rate schedules and CMS approval letters; for FL, NC, OH and CA it re-reads the same documents as the state's own table. v2 restates v1 whole with the served defects CAP-1..21 fixed (#3243). **Grain.** One row per state_code x program_name_raw x rating_period_start x rating_period_end x amendment_seq; 347 rows in 44 jurisdictions (42 states, DC and PR), rating periods 2018-01-01 to 2027-09-30 (Athena 36a441e4); 0 duplicate keys (verify_tracker_loads --lane CAP, gates run 20261007T092022Z-92425b52). | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | program_class | string | | | rating_period_start | date | | | rating_period_end | date | | | cycle_basis | string | | | certification_date | date | | | actuary_firm | string | | | document_title | string | | | document_url | string | | | sha256_content_hash | string | | | cms_approval_date | date | | | overall_rate_change_pct_reported | double | | | rate_change_basis_raw | string | | | amendment_seq | int | | | evidence_locator | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_capitation_rate_cycle_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_capitation_rate_cycle_v2")` first. # States M1L Limited benefit plans: medicaid_limited_benefit_plan_enrollment_v1 `medicare_silver.medicaid_limited_benefit_plan_enrollment_v1` · State programs · status partial · 52,589 rows Medicaid product M1L (Limited benefit plans) of the States lane: Medicaid limited-benefit plan members by plan and parent by state and month: behavioral health, dental, PACE, non-emergency transportation and other limited plans. NEVER SUM WITH THE COMPREHENSIVE OR MLTSS TRACKER (M1), OR ACROSS benefit_type: one person can be in a medical MCO, a dental plan, a behavioral health plan and NEMT at once. Filter benefit_type and measure_class and never add across measure_class: rows mix enrollment, CMS July point-in-time, member months, Colorado RAE attributed caseload, Michigan capitation eligibles and Pennsylvania's derived behavioral health (Physical HealthChoices county enrollment x the BH-MCO county map, basis derived). basis says the source: observed (the state's report), derived (PA), cms_annual (July point in time), observed_cms_monthly (PACE: MEDICARE enrollment in PACE contracts, not the Medicaid count). also_in_flagship = true rows (Arizona RBHA, Wisconsin Care4Kids) are already inside the M1 totals. Michigan's PIHPs are monthly only 2015-10..2021-10 (Section 918 reports via Wayback). The parent view vw_medicaid_limited_benefit_parent_state_month_v1 carries series_rank and the sum_rule on every row, and keeps only in_segment_series = true rows: where a state has its own monthly series, its CMS July row is in_segment_series = false (replaced by the state series under measure_class enrollment), so the view's cms_july figures cover ONLY states without a monthly series. For a CMS July national figure read the view's cms_july_total column (the CMS July count for that state x benefit_type x parent, whether or not a monthly series replaces it; null outside July and where CMS has no row): 2024-07 DentaQuest 5,282,870, ModivCare 4,505,110, MCNA 3,447,425 (measured 2026-11-01). Never add cms_july_total and members together, and never add across benefit_type. 46 state(s): AL AR AZ CA CO DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MO MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC TN TX UT VA VT WA WI WV WY. **Grain.** Medicaid limited-benefit plan members by plan and parent by state and month: behavioral health, dental, PACE, non-emergency transportation and other limited plans. 52,589 rows (Athena, 2026-11-01). Period 2006-08-01 to 2026-10-01 (month). | column | type | meaning | |---|---|---| | state_code | string | | | program | string | | | benefit_type | string | | | plan_id | string | | | plan_name_raw | string | | | plan_display_name | string | | | plan_registry_status | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_status | string | | | parent_name_raw | string | | | month | date | | | members | double | | | value_status | string | | | basis | string | | | measure_class | string | | | geography_level | string | | | geography_name | string | | | in_segment_series | boolean | | | series_rank | int | | | also_in_flagship | boolean | | | notes | string | | | source_table_fqn | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | source_row_key | string | | | build_id | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_limited_benefit_plan_enrollment_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_limited_benefit_plan_enrollment_v1")` first. # States M1 Enrollment tracker: medicaid_m1_program_observation_v1 `medicare_silver.medicaid_m1_program_observation_v1` · State programs · status partial · 41,368 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 10 state(s): CA CO DC IN MN NY OH PA WI WV. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 41,368 rows (Athena, 2026-11-01). Period 2007-01-01 to 2026-10-01 (observation_period). | column | type | meaning | |---|---|---| | state_code | string | | | observation_period | date | | | segment_id | string | | | measure | string | | | value_unit | string | | | geography_type | string | | | geography_level | string | | | program_name_raw | string | | | geography_name_raw | string | | | plan_key_type | string | | | plan_key_value | string | | | plan_name_raw | string | | | source_plan_identity_id | string | | | reported_value | double | | | value_status | string | | | medicaid_plan_id | string | | | alias_match_method | string | | | plan_display_name | string | | | plan_legal_name | string | | | program_class | string | | | parent_id | string | | | parent_name | string | | | plan_id_conflict | boolean | | | duplicate_rows_collapsed | bigint | | | value_basis | string | | | enrollment_total_authorized | boolean | | | source_table_fqn | string | | | source_observation_key | string | | | source_time_basis | string | | | program_scope | string | | | cms_program_name | string | | | plan_registry_status | string | | | canonical_parent_id | string | | | parent_crosswalk_status | string | | | source_sha256 | string | | | source_url | string | | | source_locator | string | | | build_id | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_m1_program_observation_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_m1_program_observation_v1")` first. # States M1D Duals bridge: medicaid_mco_duals_bridge_v1 `medicare_silver.medicaid_mco_duals_bridge_v1` · State programs · status partial · 253,984 rows Medicaid product M1D (Duals bridge) of the States lane: dual-eligible integrated plan members by parent by state by month (D-SNP by integration level, MMP, PACE), to add or subtract duals in the M1 tie-out to company filings. One row per report_month x state_code x parent x dual_product_type (DSNP_CO, DSNP_HIDE, DSNP_FIDE, MMP, OTHER_INTEGRATED_PACE, DSNP_UNCLASSIFIED). Pick the product types before summing. HIDE/FIDE before 2022-07 is inferred from each plan's first CMS-reported status (integration_status_basis backcast_from_first_cms_status), not reported. MMP ends 2025-12 and converts into FIDE/HIDE in 2026-01: compare MMP + FIDE + HIDE across that boundary, never MMP alone. likely_in_medicaid_line is a default, not a filing fact: which company line reports duals is in docs/research/states/M1-SEC-COUNT-BASIS.csv (UNH's Medicaid line includes Community & State D-SNPs). state_code UNALLOCATED holds members with no county row (6 rows, 2019-12): include it in a national total, never in a state. members_weak_allocation is the part of members split by county-row count because every CPSC cell was suppressed (0.008%). canonical_parent_id follows the MA estate's mapping, which differs from vlada_curated.parent_crosswalk_v1 for about 14 organisations: join M1 on the same mapping. 57 state(s): AK AL AR AS AZ CA CO CT DC DE FL GA GU HI IA ID IL IN KS KY LA MA MD ME MI MN MO MP MS MT NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC SD TN TX UNALLOCATED UT VA VI VT WA WI WV WY. **Grain.** Dual-eligible integrated plan members by parent by state by month (D-SNP by integration level, MMP, PACE), to add or subtract duals in the M1 tie-out to company filings. 253,984 rows (Athena, 2026-10-31). Period 2019-01-01 to 2026-10-01 (report_month). | column | type | meaning | |---|---|---| | report_month | date | | | report_year | bigint | | | state_code | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_of_record | string | | | reporting_group | varchar(5) | | | dual_product_type | varchar(21) | | | likely_in_medicaid_line | boolean | | | integration_status_basis | string | | | members | double | | | members_rounded | bigint | | | members_upper_bound | double | | | members_applicable_integrated_plan | double | | | members_partial_dual_only_plan | double | | | plan_or_contract_count | bigint | | | contract_count | bigint | | | contract_ids | string | | | suppressed_source_cells | bigint | | | state_allocation_method | string | | | members_weak_allocation | double | | | count_source | string | | | count_source_sha256 | string | | | count_source_url | string | | | state_split_source_sha256 | string | | | state_split_source_url | string | | | built_at_utc | timestamp | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_duals_bridge_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_duals_bridge_v1")` first. # States M1 Enrollment tracker: medicaid_mco_enrollment_assumption_v1 `medicare_silver.medicaid_mco_enrollment_assumption_v1` · State programs · status partial · 952 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 44 state(s): AR AZ CA CO DC DE FL GA HI IA ID IL IN KS KY LA MA MD MI MN MO MS NC ND NE NH NJ NM NV NY OH OK OR PA RI SC TN TX UT VA VT WA WI WV. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 952 rows (Athena, 2026-11-01). | column | type | meaning | |---|---|---| | assumption_id | string | | | state | string | | | program | string | | | period | string | | | topic | string | | | value | string | | | source_url | string | | | source_sha256 | string | | | locator | string | | | checked_at | string | | | plan_id | string | | | canonical_parent_id | string | | | parent_as_of | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_enrollment_assumption_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_enrollment_assumption_v1")` first. # States M1 Enrollment tracker: medicaid_mco_enrollment_assumptions_v1 `medicare_silver.medicaid_mco_enrollment_assumptions_v1` · State programs · status partial · 41 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 41 rows (Athena, 2026-11-01). | column | type | meaning | |---|---|---| | assumption_id | string | | | category | string | | | statement | string | | | applies_to | string | | | source | string | | | as_of | string | | | build_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_enrollment_assumptions_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_enrollment_assumptions_v1")` first. # States M1 Enrollment tracker: medicaid_mco_enrollment_tracker_v2 `medicare_silver.medicaid_mco_enrollment_tracker_v2` · State programs · status partial · 69,987 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 52 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC SD TN TX UT VA VT WA WI WV WY. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 69,987 rows (Athena, 2026-11-01). Period 2000-01-01 to 2026-11-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | observation_month | date | | | segment_id | string | | | plan_id | string | | | plan_name | string | | | program_class | string | | | parent_id | string | | | parent_name | string | | | parent_status | string | | | parent_basis | string | | | parent_as_of_month | string | | | parent_as_of_month_name | string | | | parent_as_of_month_status | string | | | parent_as_of_month_basis | string | | | measure | string | | | measure_class | string | | | averaging_window | string | | | value_unit | string | | | members | double | | | basis | string | | | value_status | string | | | source_family | string | | | national_rollup | boolean | | | method | string | | | experiment_id | string | | | base_month | date | | | horizon_months | bigint | | | interval_low | double | | | interval_high | double | | | interval_source | string | | | interval_coverage | double | | | inputs_as_of | date | | | inputs | string | | | assumption_ids | string | | | state_total_members | double | | | state_total_basis | string | | | state_total_month | date | | | source_sha256 | string | | | source_locator | string | | | source_observation_key | string | | | build_id | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_enrollment_tracker_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_enrollment_tracker_v2")` first. # Medicaid MCO public-parent forward exposure, partial v7 cohort `medicare_silver.medicaid_mco_forward_exposure_v1` · State programs · status partial · 216 rows Reported v7 same-store component members facing a dated RFP or contract end, or a certified rate-cycle reset. Includes the observed denominator, known-schedule members, coverage, lower and upper exposure bounds, and an explicit held reason. The current edition contains ten accepted states and no publishable headline. **Grain.** One public parent x forecast quarter x event_type x horizon_months. | column | type | meaning | |---|---|---| | ticker | string | | | public_parent_name | string | | | quarter | string | | | event_type | string | | | as_of_date | string | | | horizon_months | bigint | | | horizon_end | string | | | enrollment_anchor_month | string | | | enrollment_source_version | string | | | cohort_scope | string | | | cohort_publication_authorized | boolean | | | accepted_state_codes_json | string | | | coverage_denominator_note | string | | | same_store_cohort_sha256 | string | | | observed_same_store_enrollment_denominator | double | | | known_schedule_enrollment | double | | | exposed_enrollment | double | | | unknown_schedule_enrollment | double | | | schedule_coverage_pct | double | | | exposure_lower_bound_pct | double | | | exposure_upper_bound_pct | double | | | exposure_point_estimate_pct | double | | | headline_publishable | boolean | | | headline_blocker | string | | | matched_schedule_ids_json | string | | | input_fingerprints_json | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_forward_exposure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_forward_exposure_v1")` first. # States M1 Enrollment tracker: medicaid_mco_plan_enrollment_hunt_cogank_v1 `medicare_silver.medicaid_mco_plan_enrollment_hunt_cogank_v1` · State programs · status partial · 5,498 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 4 state(s): CO GA KS NE. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 5,498 rows (Athena, 2026-11-01). Period 2008-04-01 to 2026-07-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | observation_date | date | | | observation_month | date | | | grain | string | | | plan_id | string | | | plan_id_basis | string | | | plan_name | string | | | plan_name_raw | string | | | program | string | | | cms_family | string | | | cms_plan_match | string | | | parent_id | string | | | parent_name | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_basis | string | | | measure | string | | | measure_class | string | | | members | double | | | label | string | | | tracker_use | string | | | assumption | string | | | caveat | string | | | flags | string | | | edition | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | source_s3 | string | | | build_id | string | | | loaded_at | string | | | eligibility_category | string | | | window_start | date | | | window_end | date | | | window_months | bigint | | | knot_month | date | | | edition_date | date | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_plan_enrollment_hunt_cogank_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_plan_enrollment_hunt_cogank_v1")` first. # States M1 Enrollment tracker: medicaid_mco_plan_enrollment_hunt_v1 `medicare_silver.medicaid_mco_plan_enrollment_hunt_v1` · State programs · status partial · 1,781 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 4 state(s): AR MA ND VT. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 1,781 rows (Athena, 2026-11-01). Period 2013-09-01 to 2026-08-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | observation_date | date | | | observation_month | date | | | grain | string | | | plan_id | string | | | plan_id_basis | string | | | plan_name | string | | | plan_name_raw | string | | | program | string | | | cms_family | string | | | cms_plan_match | string | | | parent_id | string | | | parent_name | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_basis | string | | | measure | string | | | measure_class | string | | | members | double | | | label | string | | | tracker_use | string | | | assumption | string | | | caveat | string | | | flags | string | | | edition | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | source_s3 | string | | | build_id | string | | | loaded_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_plan_enrollment_hunt_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_plan_enrollment_hunt_v1")` first. # States M1 Enrollment tracker: medicaid_mco_sec_tieout_v2 `medicare_silver.medicaid_mco_sec_tieout_v2` · State programs · status partial · 6 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 6 rows (Athena, 2026-11-01). Period 2026-06-30 to 2026-06-30 (sec_period_end). | column | type | meaning | |---|---|---| | ticker | string | | | public_parent_name | string | | | sec_period_end | date | | | tracker_month | date | | | filing_form | string | | | filing_accession | string | | | filed_label | string | | | scope_class | string | | | comparability_class | string | | | sec_filed_membership | double | | | sec_asc_excluded | double | | | sec_ny_essential_plan_excluded_held | double | | | sec_comparable_membership | double | | | sec_comparable_note | string | | | count_basis_duals_location | string | | | count_basis_note | string | | | count_basis_chip | string | | | count_basis_ltss | string | | | count_basis_locator | string | | | tracker_observed | double | | | tracker_observed_plus_estimated | double | | | tracker_states_observed | string | | | tracker_states_estimated | string | | | capture_observed | double | | | capture_total | double | | | duals_rule | string | | | duals_adjustment | double | | | duals_adjustment_prior_rule | double | | | duals_adjustment_detail | string | | | adj_oh_weighted_members | double | | | adj_mapping_carolina_complete | double | | | adj_unh_dsnp_co_other_states | double | | | adj_pr_elv_mmm | double | | | adj_fl_ltc | double | | | adj_ri_average_monthly_members | double | | | adj_ut_member_months | double | | | adj_risk_share_healthy_blue_nc | double | | | adj_subcontract_calviva | double | | | adj_subcontract_molina_la | double | | | adj_subcontract_molina_la_out | double | | | adj_subcontract_chpiv | double | | | adj_oh_mycare_aip_out | double | | | adj_wa_bhso | double | | | adj_la_bh_only_cms2024 | double | | | adj_in_hhw_publisher_total | double | | | adj_subcontract_lacare_anthem | double | | | adj_pccm_rae_elv_ccha | double | | | adj_pccm_rae_unh_rmhp | double | | | adj_ks_kancare_reanchor | double | | | adj_dsnp_from_ma_gap | double | | | adj_pa_chip | double | | | adj_az_ddd_unh_share | double | | | adj_modeled_states | double | | | adj_ohiorise_cvs | double | | | adj_duals_mi_reversal_cvs | double | | | adj_tx_tdi_reanchor | double | | | adj_timing_derived | double | | | adj_ny_chp_held | double | | | adj_duals_reversal_not_held | double | | | adjustments_total | double | | | adjustments_detail | string | | | adjustments_by_grade | string | | | tracker_like_for_like_members | double | | | capture_like_for_like | double | | | capture_like_for_like_before_fixes | double | | | v1_state_panel_capture_ratio | double | | | residual_states_not_covered_members | double | | | residual_states_not_covered | string | | | residual_exited_states_cms2024_members | double | | | residual_exited_states | string | | | residual_missing_programs_members_derived | double | | | residual_missing_programs | string | | | residual_scope | double | | | residual_unexplained | double | | | residual_unexplained_before_fixes | double | | | residual_candidates_not_summed | string | | | excluded_joint_ventures | string | | | tracker_parent_names | string | | | method_note | string | | | sec_source_url | string | | | sec_source_sha256 | string | | | inputs | string | | | build_id | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_sec_tieout_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_sec_tieout_v2")` first. # States M1 Enrollment tracker: medicaid_mco_state_month_reconciliation_mat_v1 `medicare_silver.medicaid_mco_state_month_reconciliation_mat_v1` · State programs · status partial · 3,738 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 31 state(s): AZ CA DC FL GA HI IA IL IN KY LA MI MN MO MS NJ NM NV NY OK OR PA RI SC TN TX UT VA WA WI WV. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 3,738 rows (Athena, 2026-10-29). Period 2000-01-01 to 2026-10-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | observation_month | date | | | reported_managed_medicaid_plan_membership_exposure | double | | | plan_observation_rows | bigint | | | plan_identities | bigint | | | included_program_classes | string | | | plan_source_tables | string | | | unresolved_or_ambiguous_identity_rows | bigint | | | total_medicaid_enrollment | bigint | | | total_chip_enrollment | bigint | | | total_medicaid_and_chip_enrollment | bigint | | | contextual_medicaid_minus_plan_exposure | double | | | plan_exposure_to_medicaid_ratio | double | | | report_revision | string | | | final_report | string | | | is_final_report | boolean | | | cms_source_url | string | | | cms_source_hash | string | | | cms_semantic_row_sha256 | string | | | cms_monthly_denominator_available | boolean | | | reported_plan_membership_exposure | boolean | | | contextual_residual_promoted_as_ffs | boolean | | | component_waterfall_complete | boolean | | | unduplicated_beneficiary_total_authorized | boolean | | | national_aggregation_authorized | boolean | | | waterfall_component_basis | varchar(65) | | | waterfall_comprehensive_capitated_total | double | | | waterfall_comprehensive_capitated_not_in_plan_rows | double | | | waterfall_mma_specialty | bigint | | | waterfall_mma_child_welfare | bigint | | | waterfall_childrens_medical_services | bigint | | | waterfall_pace | bigint | | | waterfall_ffs_mma_eligible | bigint | | | waterfall_ffs_tpl | bigint | | | waterfall_ffs_excluded_from_mma | bigint | | | waterfall_publisher_total | bigint | | | waterfall_chip_inside_publisher_total | double | | | waterfall_explained_non_plan_medicaid | double | | | waterfall_unexplained_residual | bigint | | | waterfall_residual_label | varchar(475) | | | waterfall_source_file | string | | | waterfall_source_document_sha256 | string | | | waterfall_residual_before_definitional_exclusions | bigint | | | definitional_partial_dual_excluded_by_cms | bigint | | | definitional_qmb_only | bigint | | | definitional_slmb_only | bigint | | | definitional_qi_qdwi | bigint | | | definitional_exclusion_label | varchar(316) | | | definitional_source_url | string | | | definitional_source_hash | string | | | waterfall_chc_capitated | bigint | | | waterfall_ffs_and_other_derived | double | | | waterfall_chip_separate_outside_total | bigint | | | waterfall_chip_inside_basis | varchar(232) | | | waterfall_ffs_and_other_label | varchar(271) | | | waterfall_nj_familycare_mco_total | bigint | | | waterfall_nj_ffs_or_pace | bigint | | | waterfall_nj_mchip | bigint | | | waterfall_nj_schip | bigint | | | waterfall_nj_hmo_source_hashes | string | | | waterfall_ny_mmc_publisher_total | bigint | | | waterfall_ny_harp | bigint | | | waterfall_ny_mltc | bigint | | | waterfall_ny_map | bigint | | | waterfall_ny_fida_idd | bigint | | | waterfall_tx_medicaid_managed_care_total | bigint | | | waterfall_tx_star_plus | bigint | | | waterfall_tx_star_health | bigint | | | waterfall_tx_dual_demo | bigint | | | waterfall_il_mc_publisher_total | bigint | | | waterfall_il_partial_benefits | bigint | | | waterfall_il_state_only_hbia | bigint | | | waterfall_il_state_only_hbis | bigint | | | waterfall_mi_medicaid_eligible | bigint | | | waterfall_mi_healthy_michigan_plan | bigint | | | waterfall_az_acute_plans_subtotal | bigint | | | waterfall_az_altcs_pc_subtotal | bigint | | | waterfall_az_ffs_subtotal | bigint | | | waterfall_az_msp_subtotal | bigint | | | waterfall_az_emergency_services | bigint | | | waterfall_az_qmb_only | bigint | | | waterfall_az_slmb | bigint | | | waterfall_az_qi1 | bigint | | | waterfall_az_transplant_option | bigint | | | waterfall_az_kidscare | bigint | | | waterfall_az_printed_exclusions | bigint | | | waterfall_ia_mco_medicaid | int | | | waterfall_ia_ffs_medicaid | int | | | waterfall_ia_hawki_medical | int | | | waterfall_ia_hawki_dental_only | int | | | waterfall_ia_medicaid_dental_only | int | | | waterfall_ia_medicaid_expansion_chip_proxy | bigint | | | waterfall_ia_dental_source_hash | varchar(64) | | | waterfall_ia_medical_source_locator | string | | | waterfall_ia_dental_source_locator | string | | | waterfall_nm_ffs | bigint | | | waterfall_nm_unassigned | bigint | | | waterfall_nm_family_planning | bigint | | | waterfall_nm_emergency_only | bigint | | | waterfall_nm_coe_vs_total_delta | bigint | | | waterfall_nm_source_locators | string | | | waterfall_nv_chip_caseload | bigint | | | waterfall_nv_chip_mco | bigint | | | waterfall_nv_dashboard_slmb | bigint | | | waterfall_nv_dashboard_mco_delta | bigint | | | waterfall_nv_chip_mco_vs_caseload_delta | bigint | | | waterfall_nv_source_locators | string | | | materialized_at | timestamp | | | waterfall_va_title_xix_total | bigint | | | waterfall_va_title_xxi_total | bigint | | | waterfall_va_mco_total | bigint | | | waterfall_va_mco_title_xix_total | bigint | | | waterfall_va_pace | bigint | | | waterfall_va_qmb_qi_limited | bigint | | | waterfall_va_doc_emergency_limited | bigint | | | waterfall_va_family_planning_limited | bigint | | | waterfall_va_aca_doc_emergency_limited | bigint | | | waterfall_va_printed_exclusions | bigint | | | waterfall_va_plan_rows_minus_mco_total | double | | | waterfall_va_source_locators | string | | | waterfall_tn_select | bigint | | | waterfall_tn_kbb_didd | bigint | | | waterfall_tn_awaiting | bigint | | | waterfall_tn_source_locators | string | | | waterfall_wa_chp | bigint | | | waterfall_wa_mcs | bigint | | | waterfall_wa_aem | bigint | | | waterfall_wa_pccm | bigint | | | waterfall_wa_source_locators | string | | | waterfall_wa_fimc_minus_plan_rows | double | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mco_state_month_reconciliation_mat_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mco_state_month_reconciliation_mat_v1")` first. # States M1 Enrollment tracker: medicaid_mcpar_plan_avg_enrollment_v1 `medicare_silver.medicaid_mcpar_plan_avg_enrollment_v1` · State programs · status partial · 2,018 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 48 state(s): AL AR AZ CA CO DC DE FL GA HI IA ID IL IN KS KY LA MA MD MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA PR RI SC TN TX UT VA VT WA WI WV WY. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 2,018 rows (Athena, 2026-11-01). Period 2023 to 2025 (performance_year). | column | type | meaning | |---|---|---| | performance_year | bigint | | | state_code | string | | | program_name_raw | string | | | program_class | string | | | cms_comprehensive | boolean | | | plan_name_raw | string | | | plan_id | string | | | plan_id_basis | string | | | plan_name | string | | | parent_id | string | | | parent_name | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_basis | string | | | reporting_period_start | date | | | reporting_period_end | date | | | window_months | bigint | | | knot_month | date | | | average_monthly_members | double | | | measure_class | string | | | question_number | string | | | source_kind | string | | | suspect | boolean | | | suspect_note | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | source_s3 | string | | | build_id | string | | | loaded_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mcpar_plan_avg_enrollment_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mcpar_plan_avg_enrollment_v1")` first. # Medicaid MCPAR plan-ID crosswalk v1 (PUF plan name to canonical Medicaid plan id) `medicare_silver.medicaid_mcpar_puf_plan_xwalk_v1` · State programs · status live · 786 rows Maps each plan name as the PUF prints it, per program and performance year, to the canonical medicaid_plan_id (mcd::) with plan_region (Pennsylvania zones), plan_display_name, program_class, parent_name, match_method (Q1_exact 710, Q2_reviewed_region 56, Q2_reviewed 1, refused_statewide_placeholder 15, refused_reviewed 4; Athena 176d99d7) and basis. Names with no canonical plan are not in this table (they stay NULL in the view); refused rows carry no plan id. **Grain.** One row per (performance_year, state_code, program_name_raw, plan_or_bss_raw); PY2023 404 + PY2024 382 = 786 rows, one row per plan-year (verifier xwalk_one_row_per_plan_year, Athena 4cb24947; counts Athena d68fa1cb). | column | type | meaning | |---|---|---| | performance_year | int | | | state_code | string | | | program_name_raw | string | | | plan_or_bss_raw | string | | | medicaid_plan_id | string | | | plan_region | string | | | plan_display_name | string | | | program_class | string | | | parent_name | string | | | match_method | string | | | basis | string | | | puf_rows | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mcpar_puf_plan_xwalk_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mcpar_puf_plan_xwalk_v1")` first. # Medicaid MCPAR question dictionary (CMS MCPAR form template label, hint and type per question and edition) `medicare_silver.medicaid_mcpar_puf_question_v1` · State programs · status live · 454 rows What each MCPAR question asked: template_label, template_hint and template_type from CMS's MCPAR form template (github.com/Enterprise-CMCS/macpro-mdct-mcr, pinned commits per form era, template_commit and template_url), with puf_rows and puf_plan_rows counting the lines in the PUF and definition_basis saying how the definition was matched (template label at the PUF number, number differs, derived, undocumented). **Grain.** One row per (performance_year, question_id, question_number_raw); PY2023 215 + PY2024 239 = 454 rows (Athena 4d11ad5e, f9118535). | column | type | meaning | |---|---|---| | performance_year | int | | | question_id | string | | | question_number_raw | string | | | puf_rows | int | | | puf_plan_rows | int | | | template_type | string | | | template_label | string | | | template_hint | string | | | template_commit | string | | | template_url | string | | | definition_basis | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mcpar_puf_question_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mcpar_puf_question_v1")` first. # Medicaid MCPAR public use file, every line of every state's Managed Care Program Annual Report (PY2023-2024) `medicare_silver.medicaid_mcpar_puf_v1` · State programs · status live · 348,338 rows The MCPAR answers exactly as CMS publishes them: one line per state x program x reporting period x question x (measure number) x (plan or BSS entity) x response, across sections A (program), B (state), C1/C2 (program level), D1-D4 (plan level: enrollment, MLR, encounter data, appeals and grievances D1.IV, program integrity, prior authorization D1.XIII, quality measures, sanctions, ILOS) and E (BSS entities). response_raw is the print; response_status is number | not_applicable | optional_not_reported | not_reported | text; response_numeric only where the question is a number. Lineage on every row (source_url, sha256_content_hash, bronze_object_key, dataset_modified, parse_revision). **Grain.** One row per publisher data line (lossless): PY2023 170,365 + PY2024 177,973 = 348,338 rows, equal to CMS's DKAN counts (Athena 572443a9; verifier row_count f142d8f1). (performance_year, source_row_number) is unique (dup_key 051f3962). | column | type | meaning | |---|---|---| | performance_year | int | | | source_row_number | int | | | state_name | string | | | state_code | string | | | program_name_raw | string | | | reporting_period_start_raw | string | | | reporting_period_end_raw | string | | | reporting_period_start | date | | | reporting_period_end | date | | | question_number_raw | string | | | question_id | string | | | measure_number_raw | string | | | measure_number | int | | | plan_or_bss_raw | string | | | plan_or_bss_name | string | | | response_raw | string | | | response_status | string | | | response_numeric | double | | | response_seq | int | | | source_url | string | | | sha256_content_hash | string | | | bronze_object_key | string | | | s3_version_id | string | | | dataset_modified | date | | | publisher_generated_on | date | | | asserted_at | date | | | parse_revision | int | | | semantic_row_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_mcpar_puf_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_mcpar_puf_v1")` first. # Medicaid plan-to-parent ownership crosswalk v2 - effective-dated edges from state plan keys to parent companies (current) `medicare_silver.medicaid_plan_parent_crosswalk_v2` · State programs · status partial · 1,087 rows The current crosswalk: v1's 1,066 edges byte for byte (the build refuses otherwise) plus 21 reviewed edges with evidence (pipelines/medicare/data/medicaid_plan_parent_crosswalk_extension_v2.yaml): the four NC LME/MCO Tailored Plans (each its own public parent), NC CFSP (Blue Cross NC), CO RAEs (Colorado Access, the CCHA joint venture as its own parent, Rocky Mountain Health Plans to UnitedHealth, Northeast Health Partners, Health Colorado, Denver Health), and NH 2019-09..2022-05 and NE 2017-01..2022-11 continuity of existing decisions. **Grain.** One effective-dated ownership edge; crosswalk_row_id is unique (measured 2026-09-27, 1,087 rows = 1,087 ids, 271 parents, 44 states, 761 open edges, Athena 9af791cf). | column | type | meaning | |---|---|---| | crosswalk_row_id | string | | | state_code | string | | | key_type | string | | | source_plan_identity_id | string | | | plan_name_raw | string | | | decision_plan_identity_id | string | | | parent_id | string | | | parent_name | string | | | parent_ticker | string | | | organization_type | string | | | population_scope | string | | | effective_start | string | | | effective_end | string | | | evidence_method | string | | | evidence_source | string | | | resolution_id | string | | | alias_method | string | | | alias_source | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_plan_parent_crosswalk_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_plan_parent_crosswalk_v2")` first. # Medicaid managed-care plan quality (HEDIS) by plan, the parsed fact without the plan crosswalk `medicare_silver.medicaid_plan_quality_measure_v1` · State programs · status partial · 5,696 rows The parsed rates exactly as each state's report prints them (plan_name_raw, program_name_raw, measure_label_raw, sub_measure_raw, rate, rate_raw, rate_flags, denominator, data_source_raw, audited_flag) with lineage on every row. It carries no canonical plan id: read medicare_semantic.vw_medicaid_plan_quality_measure_v1, which joins the crosswalk. **Grain.** One row per state x program x publisher plan name x measure x sub-measure x measurement year (5,696 rows, Athena a749fcd4). | column | type | meaning | |---|---|---| | state_code | string | | | plan_name_raw | string | | | program_name_raw | string | | | measure_code | string | | | measure_label_raw | string | | | sub_measure_raw | string | | | indicator_code | string | | | measurement_year | int | | | rate | double | | | rate_raw | string | | | rate_flags | string | | | denominator | bigint | | | low_denominator | boolean | | | data_source_raw | string | | | audited_flag | boolean | | | document_url | string | | | sha256_content_hash | string | | | evidence_locator | string | | | parse_revision | string | | | semantic_row_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_plan_quality_measure_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_plan_quality_measure_v1")` first. # Medicaid plan quality plan-ID crosswalk v1 (publisher plan name to canonical Medicaid plan id) `medicare_silver.medicaid_plan_quality_plan_xwalk_v1` · State programs · status partial · 372 rows Maps each plan name as a state printed it, per program and measurement year, to the canonical medicaid_plan_id + plan_product, with plan_display_name, program_class, parent_name, match_method (Q1_exact 212, Q2_reviewed 160) and basis (the publisher evidence for a reviewed decision). 157 printed plans resolve to 127 canonical plans; 372 of 372 plan-years resolved. **Grain.** One row per (state_code, program_name_raw, plan_name_raw, measurement_year); 372 rows = 372 keys (Athena 6be006f0). | column | type | meaning | |---|---|---| | state_code | string | | | program_name_raw | string | | | plan_name_raw | string | | | measurement_year | int | | | medicaid_plan_id | string | | | plan_product | string | | | plan_display_name | string | | | program_class | string | | | parent_name | string | | | match_method | string | | | basis | string | | | quality_rows | int | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_plan_quality_plan_xwalk_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_plan_quality_plan_xwalk_v1")` first. # States M6 Ownership + subcontracting: medicaid_plan_subcontract_v1 `medicare_silver.medicaid_plan_subcontract_v1` · State programs · status partial · 378 rows Medicaid product M6 (Ownership + subcontracting) of the States lane: who owns each Medicaid managed care plan and who it subcontracts to: the reviewed plan-to-parent bridge, the state ownership disclosures and the plan subcontracts. vw_medicaid_mco_ownership_bridge_v1: one reviewed decision per plan identity, effective-dated (effective_start, effective_end); read the row whose interval covers your date. org_control_disclosure: one row per disclosed owner, ownership_percent as printed; a plan can list several owners and the percents need not sum to 100. medicaid_plan_subcontract_v1 (the subcontracting half): one row per state x plan (canonical id, dated parent) x function (pharmacy_pbm, dental, vision, behavioral_health, nemt) x subcontractor, dated valid_from / valid_to; arrangement says delegated_subcontract, affiliate_subcontract, plan_performs or carved_out_state_program. status = not_published rows are findings, never zero or absence. A delegate's members are never added to the prime's, and a delegated network is not a full-risk transfer. 3 state(s): FL PA TX. **Grain.** Who owns each Medicaid managed care plan and who it subcontracts to: the reviewed plan-to-parent bridge, the state ownership disclosures and the plan subcontracts. 378 rows (Athena, 2026-10-30). Period 2010-04-23 to 2026-10-30 (valid_from). | column | type | meaning | |---|---|---| | row_key | string | | | state_code | string | | | program_code | string | | | plan_identity_id | string | | | plan_identity_source | string | | | plan_name_raw | string | | | plan_parent_id | string | | | plan_parent_valid_from | string | | | plan_parent_valid_to | string | | | plan_parent_covers_period | string | | | function | string | | | function_detail | string | | | arrangement | string | | | subcontractor_org_id | string | | | subcontractor_name_raw | string | | | subcontractor_parent_id | string | | | subcontractor_parent_valid_from | string | | | subcontractor_parent_valid_to | string | | | subcontractor_parent_evidence | string | | | affiliate_status | string | | | valid_from | string | | | valid_from_precision | string | | | valid_to | string | | | valid_to_precision | string | | | date_basis | string | | | period_start | string | | | period_end | string | | | members | string | | | members_as_of | string | | | members_basis | string | | | status | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | source_kind | string | | | capture_uri | string | | | first_observed_source_sha256 | string | | | first_observed_locator | string | | | source_observation_id | string | | | review_status | string | | | built_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_plan_subcontract_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_plan_subcontract_v1")` first. # States M1T State-published totals: medicaid_state_monthly_total_recent_v1 `medicare_silver.medicaid_state_monthly_total_recent_v1` · State programs · status partial · 494 rows Medicaid product M1T (State-published totals) of the States lane: each state's own published monthly Medicaid total (and its managed care total where published), read from the state's dashboards and reports. THE STATE'S OWN TOTAL, NOT CMS's: state totals run 0-22% above CMS's Medicaid + CHIP figure because they count limited-benefit groups CMS excludes (Medicare savings only, family planning, emergency); population_includes says which. Never splice a state month into the CMS monthly series; quote it as that state's own total, labeled. Filter measure (total_medicaid, total_medicaid_chip, managed_care_total): states publish different ones, so never compare two states on different measures. count_basis differs by state (first of month, month end, mid month, ever enrolled in the month); ever enrolled runs above a point-in-time count. A state or month absent is not published or not read yet, never zero. 39 state(s): AR AZ CO DC DE FL HI IA ID IL IN KS KY LA MA MD MI MN MO MS NC NH NJ NM NV NY OK OR PA RI SC TN TX UT VA VT WA WI WV. **Grain.** Each state's own published monthly Medicaid total (and its managed care total where published), read from the state's dashboards and reports. 494 rows (Athena, 2026-10-31). Period 2026-01 to 2026-10 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | observation_month | string | | | month_start | timestamp | | | measure | string | | | enrollment_value | bigint | | | count_basis | string | | | population_includes | string | | | source_url | string | | | source_sha256 | string | | | source_locator | string | | | read_route | varchar(35) | | | checked_at | string | | | register_csv_sha256 | varchar(64) | | | register_path | varchar(45) | | | build_stamp | varchar(16) | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.medicaid_state_monthly_total_recent_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.medicaid_state_monthly_total_recent_v1")` first. # New York Medicaid parent enrollment by native product, September 2026 `medicare_silver.ny_medicaid_parent_native_product_component_202609_v1` · State programs · status partial · 33 rows Published NY Medicaid managed-care parent components for MAP, MLTC Partial, and MLTC PACE at the publisher's September 2026 report month. Values are reported component sums, not unduplicated people; the three product buckets must remain separate. **Grain.** One raw program, native product bucket, and effective-dated ultimate parent in NY September 2026; 33 unique groups from 152 exact publisher observation keys. | column | type | meaning | |---|---|---| | state_code | string | | | report_month | string | | | raw_program | string | | | native_product_bucket | string | | | parent_id | string | | | reported_component_sum | bigint | | | source_row_count | bigint | | | source_key_set_sha256 | string | | | value_unit | string | | | source_time_basis | string | | | publication_status | string | | | dated_edge_basis | string | | | raw_program_publisher_control | bigint | | | control_relation | string | | | source_url | string | | | source_sha256 | string | | | bronze_object_key | string | | | s3_version_id | string | | | lineage_object_sha256 | string | | | accepted_candidate_receipt_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.ny_medicaid_parent_native_product_component_202609_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.ny_medicaid_parent_native_product_component_202609_v1")` first. # States M6 Ownership + subcontracting: org_control_disclosure `medicare_silver.org_control_disclosure` · State programs · status partial · 1,663 rows Medicaid product M6 (Ownership + subcontracting) of the States lane: who owns each Medicaid managed care plan and who it subcontracts to: the reviewed plan-to-parent bridge, the state ownership disclosures and the plan subcontracts. vw_medicaid_mco_ownership_bridge_v1: one reviewed decision per plan identity, effective-dated (effective_start, effective_end); read the row whose interval covers your date. org_control_disclosure: one row per disclosed owner, ownership_percent as printed; a plan can list several owners and the percents need not sum to 100. medicaid_plan_subcontract_v1 (the subcontracting half): one row per state x plan (canonical id, dated parent) x function (pharmacy_pbm, dental, vision, behavioral_health, nemt) x subcontractor, dated valid_from / valid_to; arrangement says delegated_subcontract, affiliate_subcontract, plan_performs or carved_out_state_program. status = not_published rows are findings, never zero or absence. A delegate's members are never added to the prime's, and a delegated network is not a full-risk transfer. 20 state(s): AR AZ FL GA HI IL KY LA MA MI NC NJ NY OH PA TN TX UT VA WA. **Grain.** Who owns each Medicaid managed care plan and who it subcontracts to: the reviewed plan-to-parent bridge, the state ownership disclosures and the plan subcontracts. 1,663 rows (Athena, 2026-10-29). Period 2019-12-31 to 2026-10-13 (disclosure_date). | column | type | meaning | |---|---|---| | disclosure_id | string | | | state_code | string | | | plan_legal_entity_id | string | | | plan_name | string | | | owner_name | string | | | owner_type | string | | | ownership_percent | string | | | disclosure_date | string | | | document | string | | | evidence_sha256 | string | | | page | string | | | date_basis | string | | | source_id | string | | | locator | string | | | note | string | | | plan_legal_entity_candidate_id | string | | | plan_identity_status | string | | | identity_confidence | string | | | report_year | string | | | received_month | string | | | program | string | | | source_csv_sha256 | string | | | spine_review_status | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.org_control_disclosure WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.org_control_disclosure")` first. # Medicaid managed-care subcontract and delegated-function observations `medicare_silver.org_subcontract` · State programs · status partial · 506 rows Source-name subcontract observations from California, Georgia, Illinois, and Minnesota, including 282 additional Minnesota December 2018 delegation-form name cells with raw function and program flags. Evidence URL/SHA, date basis, and reported function are preserved. Legal identities and member attribution remain unresolved. **Grain.** One source-reported prime-to-subcontractor observation per subcontract_id; source_relationship_basis separates functional delegation reports from Georgia's thresholded business transactions. | column | type | meaning | |---|---|---| | subcontract_id | string | | | state_code | string | | | prime_legal_entity_id | string | | | prime_name | string | | | subcontractor_legal_entity_id | string | | | subcontractor_name | string | | | subcontractor_parent_id | string | | | valid_from | string | | | valid_to | string | | | date_basis | string | | | members | string | | | evidence | string | | | confidence | string | | | note | string | | | county_or_region | string | | | program_type | string | | | function | string | | | members_as_of | string | | | evidence_sha256 | string | | | prime_legal_entity_candidate_id | string | | | subcontractor_legal_entity_candidate_id | string | | | subcontractor_parent_candidate_id | string | | | prime_identity_status | string | | | subcontractor_identity_status | string | | | parent_identity_status | string | | | identity_status | string | | | identity_confidence | string | | | source_relationship_basis | string | | | source_report_year | string | | | reported_function | string | | | source_cell_group_id | string | | | source_cell_member_count | string | | | source_actor_class | string | | | medicaid_specificity | string | | | source_review_tier | string | | | source_csv_sha256 | string | | | spine_review_status | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.org_subcontract WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.org_subcontract")` first. # States M1 Enrollment tracker: pa_medicaid_chc_enrollment_mco_population_v1 `medicare_silver.pa_medicaid_chc_enrollment_mco_population_v1` · State programs · status partial · 990 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 1 state(s): PA. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 990 rows (Athena, 2026-10-29). Period 2020-11-01 to 2026-04-01 (month). | column | type | meaning | |---|---|---| | state_code | string | | | program | string | | | month | date | | | mco_raw | string | | | parent_label_per_cms | string | | | population_group | string | | | participants | double | | | typed_from | string | | | register_row | string | | | document_url | string | | | document_sha256 | string | | | locator | string | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.pa_medicaid_chc_enrollment_mco_population_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.pa_medicaid_chc_enrollment_mco_population_v1")` first. # States W1 Coverage map: state_coverage_block_v1 `medicare_silver.state_coverage_block_v1` · State programs · status partial · 330,720 rows State product W1 (Coverage map) of the States lane: coverage by source (employer, Medicare, Medicaid, Marketplace, uninsured) by county and age band, from Census tables. One row per state x county x estimate year x coverage block x age band; members over population_universe is the share. additive_to_population = false blocks overlap (dual coverage) and must not be summed. 10 state(s): CA FL GA IL MI NC NY OH PA TX. **Grain.** Coverage by source (employer, Medicare, Medicaid, Marketplace, uninsured) by county and age band, from Census tables. 330,720 rows (Athena, 2026-10-29). Period 2019 to 2024 (estimate_year). | column | type | meaning | |---|---|---| | state_code | string | | | county_fips | string | | | estimate_year | int | | | coverage_block | string | | | age_band | string | | | members | int | | | population_universe | string | | | source_sha256 | string | | | source_url | string | | | locator | string | | | source_cell_ids | string | | | additive_to_population | boolean | | | canonical_entity_id | string | | | canonical_parent_id | string | | | parent_status | string | | | row_key | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_coverage_block_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_coverage_block_v1")` first. # State duals knowledge base v5: benefit coverage `medicare_silver.state_duals_kb_benefit_coverage_v5` · State programs · status live · 819 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key coverage_id. Spine: 9 coverage x 3 population. | column | type | meaning | |---|---|---| | coverage_id | string | | | state_code | string | | | dual_category | string | | | benefit | string | | | coverage_level | string | | | coverage_level_raw | string | | | limits | string | | | prior_auth | string | | | payer_route | string | | | effective_from | string | | | effective_to | string | | | as_published | string | | | quote | string | | | locator | string | | | source_id | string | | | rule_id | string | | | confidence | string | | | spine_ref | string | | | notes | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_benefit_coverage_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_benefit_coverage_v5")` first. # State duals knowledge base v5: change log `medicare_silver.state_duals_kb_change_log_v5` · State programs · status live · 226 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key change_id. Spine: 12 policy and authority (dated change). | column | type | meaning | |---|---|---| | change_id | string | | | state_code | string | | | effective_date | string | | | domain | string | | | what_changed | string | | | before | string | | | after | string | | | rule_id | string | | | source_id | string | | | confidence | string | | | spine_ref | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_change_log_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_change_log_v5")` first. # State duals knowledge base v5: cost sharing `medicare_silver.state_duals_kb_cost_sharing_v5` · State programs · status live · 247 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key cost_sharing_id. Spine: 9 coverage (cost sharing) x 3 population. | column | type | meaning | |---|---|---| | cost_sharing_id | string | | | state_code | string | | | dual_category | string | | | setting | string | | | item | string | | | state_pays | string | | | state_pays_detail | string | | | member_liability | string | | | effective_from | string | | | effective_to | string | | | quote | string | | | locator | string | | | source_id | string | | | rule_id | string | | | confidence | string | | | spine_ref | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_cost_sharing_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_cost_sharing_v5")` first. # State duals knowledge base v5: dsnp requirement `medicare_silver.state_duals_kb_dsnp_requirement_v5` · State programs · status live · 327 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key requirement_id. Spine: 12 policy and authority (SMAC = contract); 2 program. | column | type | meaning | |---|---|---| | requirement_id | string | | | state_code | string | | | contract_year | int | | | requirement_type | string | | | requirement | string | | | applies_to_dsnp_type | string | | | overrides_plan_filing | boolean | | | quote | string | | | locator | string | | | effective_from | string | | | effective_to | string | | | source_id | string | | | rule_id | string | | | confidence | string | | | spine_ref | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_dsnp_requirement_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_dsnp_requirement_v5")` first. # State duals knowledge base: filing patterns (how a state rule shows up in CY2027 D-SNP filings) `medicare_silver.state_duals_kb_filing_patterns_v2` · State programs · status live · 49 rows For each deep state, how a state Medicaid / SMAC rule shows up in the CY2027 D-SNP filings: the expected pattern, the measured share of plan segments that match (n_plans, n_match, observed_share), the top-5 plans, the exceptions and their reading, with the evidence query ids. confidence grades the causal reading rule -> filing. An exception is a question for the plan or the state, never 'noncompliant'. **Grain.** Key pattern_id: state x plan_year x rule x filing field; the unit counted is a D-SNP plan segment unless match_definition says otherwise. | column | type | meaning | |---|---|---| | pattern_id | string | | | state_code | string | | | plan_year | int | | | rule_id | string | | | related_rule_ids | string | | | filing_domain | string | | | filing_field | string | | | applies_to_dsnp_type | string | | | expected_pattern | string | | | match_definition | string | | | n_plans | int | | | n_match | int | | | observed_share | double | | | top5_plans | string | | | top5_match | int | | | exceptions | string | | | exception_reading | string | | | explanation | string | | | confidence | string | | | evidence_query_ids | string | | | observed_at | string | | | spine_ref | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_filing_patterns_v2 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_filing_patterns_v2")` first. # State duals knowledge base v5: msp limits `medicare_silver.state_duals_kb_msp_limits_v5` · State programs · status live · 217 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key msp_limit_id. Spine: 3 population (eligibility group). | column | type | meaning | |---|---|---| | msp_limit_id | string | | | state_code | string | | | year | int | | | msp_category | string | | | income_limit_fpl_pct | double | | | income_limit_monthly_individual | double | | | income_limit_monthly_couple | double | | | asset_test | string | | | asset_limit_individual | double | | | asset_limit_couple | double | | | effective_from | string | | | effective_to | string | | | quote | string | | | source_id | string | | | rule_id | string | | | confidence | string | | | spine_ref | string | | | notes | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_msp_limits_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_msp_limits_v5")` first. # State duals knowledge base v5: open question `medicare_silver.state_duals_kb_open_question_v5` · State programs · status live · 224 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key question_id. Spine: 14 quality and enrollment rules / availability grid (MEDICAID-SPINE section 4). | column | type | meaning | |---|---|---| | question_id | string | | | state_code | string | | | topic | string | | | question | string | | | why_it_matters | string | | | who_to_ask | string | | | blocking_tables | string | | | raised_at | string | | | status | string | | | answer | string | | | source_id | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_open_question_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_open_question_v5")` first. # State duals knowledge base v5: payer chain `medicare_silver.state_duals_kb_payer_chain_v5` · State programs · status live · 2,171 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key state_code, integration_type, state_arrangement, dual_category, benefit, payer_order, effective_from. Spine: 9 coverage x 3 population x D-SNP integration (CMS 42 CFR 422.2). | column | type | meaning | |---|---|---| | chain_id | string | | | state_code | string | | | integration_type | string | | | state_arrangement | string | | | dual_category | string | | | benefit | string | | | payer_order | int | | | payer | string | | | coverage_note | string | | | rule_ids | string | | | effective_from | string | | | effective_to | string | | | confidence | string | | | spine_ref | string | | | external_rule_ids | string | | | external_confidence | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_payer_chain_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_payer_chain_v5")` first. # State duals knowledge base v5: plan effective benefit `medicare_silver.state_duals_kb_plan_effective_benefit_v5` · State programs · status live · 540 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key effective_benefit_id. Spine: 9 coverage x 3 population x 1 organization (contract-plan) x D-SNP integration. | column | type | meaning | |---|---|---| | effective_benefit_id | string | | | state_code | string | | | plan_year | int | | | contract_id | string | | | plan_id | string | | | segment_id | string | | | plan_label_raw | string | | | integration_type | string | | | dual_category | string | | | dual_category_raw | string | | | medicaid_arrangement | string | | | medicaid_arrangement_note | string | | | benefit_raw | string | | | dsnp_layer | string | | | medicaid_layer | string | | | effective_benefit | string | | | rule_ids | string | | | external_rule_ids | string | | | external_confidence | string | | | confidence | string | | | source_id | string | | | spine_ref | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_plan_effective_benefit_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_plan_effective_benefit_v5")` first. # State duals knowledge base v5: rule `medicare_silver.state_duals_kb_rule_v5` · State programs · status live · 1,582 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key rule_id. Spine: 12 policy and authority (rule); 9 coverage / 3 population via applies_to. | column | type | meaning | |---|---|---| | rule_id | string | | | state_code | string | | | rule_type | string | | | subject | string | | | rule_text | string | | | quote | string | | | locator | string | | | effective_from | string | | | effective_to | string | | | applies_to_dsnp_type | string | | | applies_to_dual_category | string | | | applies_to_program | string | | | overrides_plan_filing | boolean | | | source_id | string | | | confidence | string | | | spine_ref | string | | | external_rule_id | string | | | external_confidence | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_rule_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_rule_v5")` first. # State duals knowledge base v5: source `medicare_silver.state_duals_kb_source_v5` · State programs · status live · 632 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key source_id. Spine: 15 documents and actors. | column | type | meaning | |---|---|---| | source_id | string | | | jurisdiction | string | | | publisher | string | | | title | string | | | doc_type | string | | | source_kind | string | | | url | string | | | fetched_at | string | | | access_status | string | | | sha256 | string | | | bytes | int | | | s3_key | string | | | effective_from | string | | | effective_to | string | | | as_published | string | | | notes | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_source_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_source_v5")` first. # State duals knowledge base v5: state program `medicare_silver.state_duals_kb_state_program_v5` · State programs · status live · 270 rows Cited, curated state-by-state knowledge of what Medicaid gives each dual category and who pays (current version v5: v1 seeds + CA/FL/TX/PA/NJ depth + wave-3 and wave-4 demand-driven depth, under neutral source and rule ids). Every row carries source_id, a verbatim quote + locator on exact rows, confidence (exact / rule / judged), effective dates and spine_ref. Seeds pipelines/medicare/data/state_duals_kb/v1..v4 through v5/neutralise_v5.yaml; row contract pipelines/medicare/dsnp_wrap/kb.py. **Grain.** Key program_id. Spine: 2 program (+ 12 authority, 8 geography). | column | type | meaning | |---|---|---| | program_id | string | | | state_code | string | | | program_name_raw | string | | | program_type | string | | | dual_populations | string | | | ltss_scope | string | | | aligned_dsnp_integration | string | | | aligned_dsnp_linkage | string | | | dual_enrollment | int | | | dual_enrollment_period | string | | | enrollment_mode | string | | | valid_from | string | | | valid_to | string | | | status | string | | | quote | string | | | source_id | string | | | rule_id | string | | | confidence | string | | | spine_ref | string | | | parse_revision | int | | | seed_file | string | | | seed_sha256 | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.state_duals_kb_state_program_v5 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.state_duals_kb_state_program_v5")` first. # States M1 Enrollment tracker: tx_medicaid_mco_enrollment_other_sources_v1 `medicare_silver.tx_medicaid_mco_enrollment_other_sources_v1` · State programs · status partial · 3,442 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 1 state(s): TX. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 3,442 rows (Athena, 2026-11-01). Period 2003-09-01 to 2026-06-01 (observation_month). | column | type | meaning | |---|---|---| | series | string | | | label | string | | | state_code | string | | | period_kind | string | | | observation_month | date | | | period_label | string | | | plan_id | string | | | plan_name | string | | | plan_name_raw | string | | | parent_id | string | | | parent_name | string | | | canonical_parent_id | string | | | program | string | | | program_raw | string | | | geography_level | string | | | geography | string | | | members | double | | | measure | string | | | measure_class | string | | | value_status | string | | | caveat | string | | | source_url | string | | | source_sha256 | string | | | source_s3 | string | | | source_locator | string | | | build_id | string | | | loaded_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.tx_medicaid_mco_enrollment_other_sources_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.tx_medicaid_mco_enrollment_other_sources_v1")` first. # States M1 Enrollment tracker: tx_medicaid_mco_fsr_member_months_v1 `medicare_silver.tx_medicaid_mco_fsr_member_months_v1` · State programs · status partial · 26,595 rows Medicaid product M1 (Enrollment tracker) of the States lane: the Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. Start from medicaid_mco_enrollment_tracker_v2 (state x plan x parent x month) or its views vw_medicaid_mco_enrollment_tracker_v2_parent_state_month / _parent_national_month. READ basis ON EVERY ROW: observed is the state's printed figure; estimated is ours, and method names how (M-a carry-forward, M-b plan share x state total, M-e the tracker's nowcast model, PUB-PRELIM the publisher's own preliminary estimate; docs/research/states/M1-TRACKER-V2-DESIGN.md section 4), with interval_low / interval_high, inputs_as_of and assumption_ids. modeled is an M-e value where the method missed the accuracy bar: INDICATIVE ONLY, its interval is the measured error, and it is excluded from members_total; never sum it into an observed or estimated total (the views carry members_observed, members_estimated, members_modeled and members_with_modeled apart). not_published and not_applicable rows have members null: they are not zeros. Filter measure_class (members, member_months, weighted_members, average_monthly_members) and never add across it: average_monthly_members (with averaging_window; RI from 2023-12 prints average daily enrollment per month) never adds into members. measure is the publisher's own label. California is observed 2021-01..2026-09; Kaiser's publisher-suppressed county cells carry a labelled lower bound (assumption A-SUPPRESSED-LB). TWO PARENT QUESTIONS, two view pairs: the dated views vw_medicaid_mco_enrollment_tracker_v2_parent_dated_state_month / _parent_dated_national_month answer 'who owned it then' (parent_as_of_month; WellCare is its own parent before 2020, so Centene July 2016 is 5.92M there); the current views _parent_state_month / _parent_national_month answer 'today's companies' history' (Centene July 2016 is 9.93M there), with parent the CURRENT binding today (parent_status, parent_basis); never mix the two in one series. Assumptions: medicaid_mco_enrollment_assumption_v1 is the per-state register (populations counted, count basis, auto-assignment, carve-ins); medicaid_mco_enrollment_assumptions_v1 is the build's. SEC: read capture ratios only from vw_medicaid_mco_enrollment_tracker_v2_sec_tieout (like for like, duals adjusted per docs/research/states/M1-SEC-COUNT-BASIS.csv); comparability_class says when the filed number is broader than the tracker. SHOW THE GRADED adj_* COLUMNS, NEVER ONLY THE RATIO: each adjustment is its own labelled column (e.g. adj_subcontract_molina_la / _out measured from DMHC, adj_risk_share_healthy_blue_nc, adj_subcontract_lacare_anthem ESTIMATED with its low bound in the detail, adj_dsnp_from_ma_gap a JUDGMENT that a dual is counted in both lines, the 'once' alternative in the detail); a capture above 1.00 (UNH Q2 2026 1.007) means a judgment column over-explains. The two NY columns keep their _held names for schema stability but are LIVE: adj_ny_chp_held (NY Child Health Plus members, CNC 188,720, ELV 40,405) and sec_ny_essential_plan_excluded_held (NY Essential Plan is not Medicaid and comes off the SEC side, CNC -388,602), source NY DOH healthweb-back.health.ny.gov, recorded by the States lane as allowed by Ben on 2026-11-01; null where no NY figure exists or it is not measured (UNH), never zero. sec_asc_excluded is per quarter; exits are listed apart. ESTIMATE INTERVALS widen with the TOTAL horizon where the state total is carried past its last published month (months since the last observed plan value + months the total is carried): inputs_as_of is the last published total month and value_status says 'state total carried from '. TEXAS: observed monthly by MCO x program 2007-09..2026-02 from HHSC MCO Financial Statistical Reports (tx_medicaid_mco_fsr_member_months_v1: filter is_latest_filing = true, since restated filings stay as rows, and grain); after 2026-02 plan values scale by HHSC's own monthly total. 234 TX observed members rows are FRACTIONAL by rule (part-month adjustments in the filed member months; HHSC defines the line as members enrolled in the month and it ties to HHSC final SFY averages within 0.04-0.38%, assumption A-TX-FSR-RETRO): they stay measure_class members, never rounded, so a fractional-members check exempts source_family state_fsr. measure_class members_hhsc_prelim_plan_total (HHSC 2026-05 preliminary per-plan totals) never adds to members. tx_medicaid_mco_enrollment_other_sources_v1 holds TDI HMO quarter-ends, 1115 waiver tables, CHIP 2003-13 and HHSC preliminary months, one series per row (filter series and period_kind), never mixed with the FSR months. INPUTS behind the tracker, read only with their labels: medicaid_m1_program_observation_v1 is the programs the spine lacked (MN, PA CHC, NY MLTC/MAP/FIDA-IDD, IN PathWays, CO Denver Health, OH MyCare, WI Family Care, WV MHP, CA SCAN, DC Dual Choice), one row per published cell (read value_unit and source_time_basis: some are member months). medicaid_mco_plan_enrollment_hunt_v1 and _hunt_cogank_v1 are hunted series (ND VT CO GA monthly, MA AR quarterly, NE EQR points, KS year-to-date averages): filter tracker_use, because only observed_monthly and observed_point rows are observations; quarterly_anchor and average_anchor are anchors, check_only and not_read are never a figure, and grain says month, quarter, rolling_quarter, calendar_ytd or point_in_time. medicaid_mcpar_plan_avg_enrollment_v1 is MCPAR annual average monthly members by plan (PY2023-25, 48 states), an anchor only, never a monthly count; suspect = true rows (77) are flagged. medicaid_mco_state_month_reconciliation_mat_v1 is the earlier plan-sum vs state and CMS totals reconciliation (cms_monthly_denominator_available = false is a missing denominator, never zero). 1 state(s): TX. **Grain.** The Medicaid MCO enrollment tracker: members by plan and parent by state by month, every cell graded (observed, estimated, untested, not published), with parent rollups and the quarterly tie-out to what public parents report to the SEC. 26,595 rows (Athena, 2026-11-01). Period 2007-09-01 to 2026-02-01 (observation_month). | column | type | meaning | |---|---|---| | state_code | string | | | state_fiscal_year | string | | | grain | string | | | observation_month | date | | | period_end_month | date | | | period_label | string | | | mco_name_raw | string | | | plan_id | string | | | plan_id_basis | string | | | plan_name | string | | | parent_id | string | | | parent_name | string | | | canonical_parent_id | string | | | canonical_parent_name | string | | | parent_basis | string | | | program | string | | | program_label | string | | | program_raw | string | | | sda | string | | | sda_raw | string | | | member_months | double | | | measure | string | | | measure_class | string | | | submission_type | string | | | submission_date | date | | | reporting_period_end | date | | | filing_rank | bigint | | | filings_for_key | bigint | | | is_latest_filing | boolean | | | plan_month_sda_complete | boolean | | | plan_month_missing_sda | string | | | source_url | string | | | source_fetch_url | string | | | source_sha256 | string | | | source_s3 | string | | | source_locator | string | | | source_format | string | | | assumption | string | | | build_id | string | | | loaded_at | string | | Query it: `query_substrate` with `SELECT ... FROM medicare_silver.tx_medicaid_mco_fsr_member_months_v1 WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.tx_medicaid_mco_fsr_member_months_v1")` first. # CT OHS Hospital Cost-to-Charge Ratios `vlada_curated.fact_ct_hospital_cost_to_charge` · State programs · status live CT per-hospital cost-to-charge ratio (RCC, FY2024), 27 hospitals/6 systems. JS-rendered /-/media/ link found via headless browse. Tool ingest_ct_ohs_ccr.py. **Grain.** One row per (hospital, year) — CT hospital cost-to-charge ratio. | column | type | meaning | |---|---|---| | hospital_name | string | | | hospital_system | string | | | cost_to_charge_ratio | double | | | report_year | int | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_ct_hospital_cost_to_charge WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_ct_hospital_cost_to_charge")` first. # CT Medicaid DRG Weights `vlada_curated.fact_ct_medicaid_drg_weight` · State programs · status live CT Medicaid DRG weights/ALOS/outlier (1,342). payment=base_rate x weight. Tool ingest_ct_medicaid_inpatient.py. **Grain.** One row per (DRG) — CT Medicaid inpatient DRG relative weight. | column | type | meaning | |---|---|---| | drg | string | | | mdc | string | | | description | string | | | weight | double | | | alos | double | | | outlier_threshold | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | | effective_year | int | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_ct_medicaid_drg_weight WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_ct_medicaid_drg_weight")` first. # CT Medicaid Inpatient Hospital Base Rates `vlada_curated.fact_ct_medicaid_provider_rate` · State programs · status live CT Medicaid (CMAP) inpatient per-hospital base rate keyed to CCN, EULA-free DRG Calculator. 48 hospitals. Tool ingest_ct_medicaid_inpatient.py. **Grain.** One row per (CT Medicaid provider/procedure) — Medicaid allowed rate. | column | type | meaning | |---|---|---| | medicaid_number | string | | | ccn | string | | | hospital_name | string | | | operating_rate | double | | | capital_rate | double | | | base_rate | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | | effective_year | int | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_ct_medicaid_provider_rate WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_ct_medicaid_provider_rate")` first. # MA CHIA Relative Price (commercial price variation) `vlada_curated.fact_ma_chia_relative_price` · State programs · status live MA commercial price variation per payer x hospital (CY2023, 4,357; 1.0=statewide median). Tool ingest_chia_relative_price.py. **Grain.** One row per (payer, hospital) — MA commercial relative price (1.0=statewide median). | column | type | meaning | |---|---|---| | payer_name | string | | | payer_orgid | string | | | hospital | string | | | hospital_orgid | string | | | hospital_cohort | string | | | hospital_system | string | | | hospital_type | string | | | insurance_category | string | | | product_type | string | | | inpatient_rp | double | | | inpatient_payment_share | double | | | outpatient_rp | double | | | outpatient_payment_share | double | | | blended_rp | double | | | blended_percentile | double | | | blended_quartile | double | | | percent_total_network_payments | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_ma_chia_relative_price WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_ma_chia_relative_price")` first. # MA CHIA Revenue-to-Cost Ratio by Payer `vlada_curated.fact_ma_chia_revenue_cost_ratio` · State programs · status live MA per-hospital revenue-to-cost ratio by payer (commercial 1.25x vs Medicaid 0.82x cost). 61 hospitals. Tool ingest_chia_profiles.py. **Grain.** One row per (hospital, year) — MA CHIA revenue-to-cost ratio. | column | type | meaning | |---|---|---| | hospital | string | | | orgid | string | | | hospital_system | string | | | cohort | string | | | rcr_all_payer | double | | | rcr_medicare | double | | | rcr_medicaid | double | | | rcr_commercial | double | | | rcr_other | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_ma_chia_revenue_cost_ratio WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_ma_chia_revenue_cost_ratio")` first. # MD HSCRC Monthly Revenue & Volumes `vlada_curated.fact_md_hscrc_monthly_rev_vol` · State programs · status live MD hospital revenue+volume per hospital x month x rate-center (the operationalized GBR). 15,432 rows, 61 hospitals. Tool ingest_hscrc_monthly.py. **Grain.** One row per (hospital, month) — MD HSCRC monthly revenue/volume. | column | type | meaning | |---|---|---| | hosp_num | string | | | hospital_name | string | | | report_date | string | | | rate_center | string | | | vol_in | double | | | vol_out | double | | | rev_in | double | | | rev_out | double | | | mcaid_rev_in | double | | | mcaid_rev_out | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_md_hscrc_monthly_rev_vol WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_md_hscrc_monthly_rev_vol")` first. # MD HSCRC All-Payer Hospital Unit Rates `vlada_curated.fact_md_hscrc_unit_rate` · State programs · status live · 22,588 rows MD all-payer approved unit rate per HSCRC hospital id and cost center across RY2013-RY2024 and RY2026 (22,588 rows). Effective-date changes and source-real split rate lines are preserved. Federal CCN/NPI joins require a bridge. Tool ingest_hscrc_rates.py. **Grain.** One row per (rate_year, hospid, cost_center, effective_date, line_seq) | column | type | meaning | |---|---|---| | hospital_name | string | | | hospid | string | | | cost_center | string | | | unit_rate | double | | | volume | double | | | effective_date | string | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | | raw_effective_text | string | | | line_seq | bigint | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_md_hscrc_unit_rate WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_md_hscrc_unit_rate")` first. # NJ DOH Hospital Financial Transparency `vlada_curated.fact_nj_hospital_financials` · State programs · status live NJ per-hospital operating income/revenue/margin (CY2021-23, 73 hospitals). Found by the verification fleet. NJ's state financial leg (no rate-setting/APCD). Tool ingest_nj_financials.py. **Grain.** One row per (hospital, fiscal year) — NJ DOH operating income / revenue / margin (CY2021-23, 73 hospitals). | column | type | meaning | |---|---|---| | hospital_code | string | | | hospital_name | string | | | health_system | string | | | county | string | | | region | string | | | rural_urban | string | | | financial_year | int | | | operating_income | double | | | operating_revenue | double | | | operating_margin | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_nj_hospital_financials WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_nj_hospital_financials")` first. # State Medicaid Fee Schedule (rate per CPT/HCPCS) `vlada_curated.fact_state_medicaid_rate` · State programs · status live Per-state Medicaid rate per code (the Medicaid floor). MD professional ingested (9,152). Tool ingest_state_medicaid.py; M-2 temporal. **Grain.** One row per (state, procedure/HCPCS) — Medicaid allowed rate. | column | type | meaning | |---|---|---| | billing_code | string | | | code_description | string | | | non_facility_rate | double | | | facility_rate | double | | | technical_component | double | | | source_url | string | | | content_sha256 | string | | | asserted_at | string | | | is_current | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.fact_state_medicaid_rate WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.fact_state_medicaid_rate")` first. # States W8 Parent book of business: parent_book_az_v1 `vlada_curated.parent_book_az_v1` · State programs · status partial · 87,920 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): AZ. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 87,920 rows (Athena, 2026-10-29). Period 2005-10-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_az_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_az_v1")` first. # States W8 Parent book of business: parent_book_ca_v1 `vlada_curated.parent_book_ca_v1` · State programs · status partial · 382,233 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): CA. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 382,233 rows (Athena, 2026-10-29). Period 2007-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_ca_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_ca_v1")` first. # States W8 Parent book of business: parent_book_fl_v1 `vlada_curated.parent_book_fl_v1` · State programs · status partial · 418,680 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): FL. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 418,680 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_fl_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_fl_v1")` first. # States W8 Parent book of business: parent_book_ga_v1 `vlada_curated.parent_book_ga_v1` · State programs · status partial · 949,715 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): GA. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 949,715 rows (Athena, 2026-10-29). Period 2009-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_ga_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_ga_v1")` first. # States W8 Parent book of business: parent_book_il_v1 `vlada_curated.parent_book_il_v1` · State programs · status partial · 606,483 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): IL. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 606,483 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_il_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_il_v1")` first. # States W8 Parent book of business: parent_book_mi_v1 `vlada_curated.parent_book_mi_v1` · State programs · status partial · 470,826 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): MI. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 470,826 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_mi_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_mi_v1")` first. # States W8 Parent book of business: parent_book_nc_v1 `vlada_curated.parent_book_nc_v1` · State programs · status partial · 592,189 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): NC. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 592,189 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_nc_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_nc_v1")` first. # States W8 Parent book of business: parent_book_nj_v1 `vlada_curated.parent_book_nj_v1` · State programs · status partial · 123,761 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): NJ. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 123,761 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_nj_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_nj_v1")` first. # States W8 Parent book of business: parent_book_ny_v1 `vlada_curated.parent_book_ny_v1` · State programs · status partial · 383,018 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): NY. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 383,018 rows (Athena, 2026-10-29). Period 2019-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_ny_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_ny_v1")` first. # States W8 Parent book of business: parent_book_oh_v1 `vlada_curated.parent_book_oh_v1` · State programs · status partial · 530,376 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): OH. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 530,376 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_oh_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_oh_v1")` first. # States W8 Parent book of business: parent_book_pa_v1 `vlada_curated.parent_book_pa_v1` · State programs · status partial · 428,141 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): PA. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 428,141 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | | line_members_denominator | double | | | line_member_share | double | | | denominator_scope | varchar(43) | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_pa_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_pa_v1")` first. # States W8 Parent book of business: parent_book_tn_v1 `vlada_curated.parent_book_tn_v1` · State programs · status partial · 546,069 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): TN. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 546,069 rows (Athena, 2026-10-29). Period 2005-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_tn_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_tn_v1")` first. # States W8 Parent book of business: parent_book_tx_v1 `vlada_curated.parent_book_tx_v1` · State programs · status partial · 1,524,029 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): TX. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 1,524,029 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_tx_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_tx_v1")` first. # States W8 Parent book of business: parent_book_va_v1 `vlada_curated.parent_book_va_v1` · State programs · status partial · 788,185 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): VA. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 788,185 rows (Athena, 2026-10-29). Period 2014-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_va_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_va_v1")` first. # States W8 Parent book of business: parent_book_wa_v1 `vlada_curated.parent_book_wa_v1` · State programs · status partial · 216,636 rows whole_state product W8 (Parent book of business) of the States lane: the parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. One table per state (parent_book__v1, state_code). Filter line, segment and measure before summing; value_status and coverage_scope say what the value covers. 1 state(s): WA. **Grain.** The parent book of business: every line a parent holds in the state, one measure per row, bound through the parent crosswalk. 216,636 rows (Athena, 2026-10-29). Period 2019-01-01 to 2026-12-31 (period_start). | column | type | meaning | |---|---|---| | state_code | varchar(2) | | | canonical_parent_id | string | | | canonical_parent_name | string | | | line | varchar(8) | | | segment | string | | | measure | string | | | period_start | date | | | period_end | date | | | geography_type | string | | | county_fips | string | | | source_entity_id | string | | | source_row_key | string | | | value | double | | | value_unit | string | | | value_status | string | | | coverage_scope | string | | | source_sha256 | string | | | source_locator | string | | | crosswalk_row_key | string | | | source_parent_id | string | | | source_parent_name | string | | | parent_valid_from | string | | | parent_valid_to | string | | | as_of | date | | | facility_ccn | string | | | enrollment_total_authorized | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.parent_book_wa_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.parent_book_wa_v1")` first. # States M2 home care: reviewed home health and private duty nursing rates (vw_state_medicaid_homecare_v1) `vlada_curated.vw_state_medicaid_homecare_v1` · State programs · status partial Home health and private duty nursing rates as each state prints them, classified by a person who read each schedule (docs/research/states//HOMECARE-SCHEDULES.csv, evidence per row), not by code: hospice, supplies, waiver, school and facility nursing are left out. Final independent check 2026-11-06: 96% of sampled rows correctly classed, dollars 40 of 40 match the state files. States that publish no FFS rate (paid through MCOs, cost-based, or case by case) have no rows here; the proof is in each state's ledger. **Grain.** One row per rate-book row a reviewed per-state schedule registry names as home health (agency visit rates) or private duty nursing (RN / LPN home nursing), homecare_line in front; a row may appear under both lines when one printed rate is both (IN, AL). 2,500 current home health rows in 46 states, 455 current PDN rows in 47 states (Athena, 2026-11-06). | column | type | meaning | |---|---|---| | homecare_line | varchar(20) | | | comparable_basis | varchar(14) | | | comparable_rate | double | | | rate_variant | varchar(18) | | | schedule_id | string | | | program | string | | | provider_type | string | | | setting | string | | | geography | string | | | population | string | | | code_system | string | | | code | string | | | modifiers | string | | | description | string | | | rate | double | | | rate_type | string | | | rate_unit | string | | | unit_minutes | int | | | effective_from | date | | | source_end_date | date | | | edition_effective_date | date | | | source_s3_uri | string | | | source_sha256 | string | | | source_ref | string | | | reader_id | string | | | reader_version | string | | | extracted_at_utc | string | | | notes | string | | | state | string | | | service_line | string | | | effective_to | date | | | is_current | boolean | | | printed_effective_from | date | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_homecare_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_homecare_v1")` first. # States M2 J-code book: measured pricing basis per state (vw_state_medicaid_jcode_basis_v1) `vlada_curated.vw_state_medicaid_jcode_basis_v1` · State programs · status partial The measured J-code pricing basis: what each state actually pays relative to Medicare ASP, per schedule and provider type (one payment basis per median; provider types are never blended). Read beside the state's stated method in docs/research/medicaid-ffs/drug_pricing/DRUG-PRICING-METHODS.csv (51 of 51). flat_amount = one rate on half or more of >= 20 rows: an administration amount, not a drug basis (KS mid-level injection $1.73, injection admin $2.30). Example 2026-11-05: KS base fee ASP + 6.0% on 590 codes, 532 within one point; CA PAD schedule ASP + 6.0%. **Grain.** One row per state x schedule x provider type: the median implied ASP+ at the effective quarter, p25 / p75, matched codes, codes within one point, modal_rate_share and flat_amount. 271 rows, 44 states (Athena, 2026-11-05). | column | type | meaning | |---|---|---| | state | string | | | schedule_id | string | | | provider_type | string | | | n_rates | bigint | | | n_codes | bigint | | | n_matched | bigint | | | median_asp_plus | double | | | p25_asp_plus | double | | | p75_asp_plus | double | | | first_eff | date | | | last_eff | date | | | edition | date | | | n_within_1pt | bigint | | | modal_rate_share | double | | | flat_amount | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_jcode_basis_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_jcode_basis_v1")` first. # States M2 J-code book: rates computed by published rule, FL + MA (vw_state_medicaid_jcode_computed_v1) `vlada_curated.vw_state_medicaid_jcode_computed_v1` · State programs · status partial Florida (106% of ASP, rule 59G-4.251(8)) and Massachusetts (the quarterly Medicare Part B ASP fee, 101 CMR 317.04(1)(a)) print no J-code fee schedule; their rates are the rule applied to the CMS ASP payment limit. rate_type computed_by_rule, the rule document's sha256 on every row. Kept apart from the printed rate book (vw_state_medicaid_rate_v2 is printed values only). **Grain.** One row per state x code x ASP quarter for states that print no J-code fees and pay a published rule on the CMS ASP file. 16,285 rows, 2 states (FL from 2022Q1, MA from 2026Q1; Athena 2026-11-05). | column | type | meaning | |---|---|---| | state | varchar(2) | | | service_line | varchar(28) | | | program | varchar(65) | | | code | string | | | rate_unit | string | | | rate | double | | | rate_type | varchar(16) | | | method | varchar(62) | | | asp_quarter | string | | | effective_from | date | | | effective_to | date | | | is_current | boolean | | | asp_payment_limit | double | | | description | string | | | rule_effective_from | date | | | source_url | varchar(105) | | | source_sha256 | varchar(64) | | | source_ref | string | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_jcode_computed_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_jcode_computed_v1")` first. # States M2 J-code book: Medicaid J-code rates vs Medicare ASP (vw_state_medicaid_jcode_vs_asp_v1) `vlada_curated.vw_state_medicaid_jcode_vs_asp_v1` · State programs · status partial Medicaid physician-administered drug rates (HCPCS J-codes) as each state prints them, beside Medicare's ASP payment limit (ASP + 6%) for the same code and billing unit (hcpcs_dosage). implied_asp_plus = rate / (limit / 1.06) - 1, so 0.06 means the state pays ASP + 6%. Two readings: _at_eff (the ASP quarter the rate took effect, how the state priced it) and _current (today's ASP quarter). A printed $0 / NDC-required / by-report line is never here. **Grain.** One row per in-force priced HCPCS J-code rate (state x schedule x code x modifiers x program x provider type x setting), beside the Medicare ASP payment limit for the same code in the current quarter and in the quarter the rate took effect. 79,302 rows, 44 states (Athena, 2026-11-05). | column | type | meaning | |---|---|---| | state | string | | | schedule_id | string | | | service_line | string | | | code | string | | | modifiers | string | | | program | string | | | provider_type | string | | | setting | string | | | geography | string | | | population | string | | | rate_type | string | | | rate_unit | string | | | rate | double | | | eff | date | | | edition_effective_date | date | | | description | string | | | source_sha256 | string | | | source_ref | string | | | asp_quarter_current | string | | | asp_limit_current | double | | | hcpcs_dosage | string | | | ratio_to_medicare_current | double | | | implied_asp_plus_current | double | | | asp_quarter_at_eff | string | | | asp_limit_at_eff | double | | | ratio_to_medicare_at_eff | double | | | implied_asp_plus_at_eff | double | | | unit_mismatch_suspect | boolean | | Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_jcode_vs_asp_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_jcode_vs_asp_v1")` first. # States M2 FFS rate book: vw_state_medicaid_rate_change_v1 `vlada_curated.vw_state_medicaid_rate_change_v1` · State programs · status partial Medicaid product M2 (FFS rate book) of the States lane: what moved. Each rate is dated by its own effective date (cumulative schedules reprint old rates in every edition; the latest edition printing a dated rate wins); a change is one key whose rate differs from its previous dated rate, with prev_effective_from, effective_from, prev_rate, rate, change_kind, pct_change. ambiguous_key marks a printing with more than one rate for the same date; never average one. Filter state (and service_line, effective_from window) before reading. **Grain.** One row per rate key per dated rate that moved against the previous dated rate (increase / decrease), or a code that first appears after the schedule''s first dated rate (new_code). 423,962 rows, 46 states (Athena, 2026-11-02 15:37Z serve; re-keyed by effective date 16:07Z). | column | type | meaning | |---|---|---| | state | string | | | schedule_id | string | | | service_line | string | | | code_system | string | | | code | string | | | modifiers | string | | | program | string | | | provider_type | string | | | setting | string | | | geography | string | | | population | string | | | rate_unit | string | | | rate_type | string | | | description | string | | | unit_minutes | int | | | prev_effective_from | date | | | effective_from | date | | | edition_effective_date | date | | | prev_rate | double | | | rate | double | | | change_kind | varchar(8) | | | pct_change | double | | | ambiguous_key | boolean | | | source_sha256 | string | | | source_ref | string | | | spans_missing_edition | boolean | | | prior_held_edition | date | | Tools that read it: get_medicaid_rate Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_rate_change_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_rate_change_v1")` first. # States M2 FFS rate book: vw_state_medicaid_rate_compare_v1 `vlada_curated.vw_state_medicaid_rate_compare_v1` · State programs · status partial Medicaid product M2 (FFS rate book) of the States lane: one code across states on ONE basis. basis is per_hour when the unit is a time unit (rate x 60 / unit_minutes), else the printed unit; a state on another basis is a different row, never converted. Five-character CPT / HCPCS codes are mapped to code_system HCPCS so cpt and CPT compare together. Keys with more than one rate for the same date are left out (1 on 2026-11-02). Filter code (and modifiers, basis) before reading; state_rate is the median across the state's unambiguous keys. **Grain.** One row per state x code_system x code x modifiers x basis: the rate in force today (the latest dated rate on or before today for a key the current edition still prints), with the national median / p25 / p75 across states on the same basis, the state''s ratio and rank. 128,547 rows, 48 states (Athena, 2026-11-02). | column | type | meaning | |---|---|---| | state | string | | | code_system | string | | | code | string | | | modifiers | string | | | basis | string | | | service_line | string | | | state_rate | double | | | state_min | double | | | state_max | double | | | n_rows | bigint | | | effective_from | date | | | edition_effective_date | date | | | description | string | | | source_sha256 | string | | | source_ref | string | | | n_states | bigint | | | national_median | double | | | national_p25 | double | | | national_p75 | double | | | ratio_to_national_median | double | | | rank_high_to_low | bigint | | | unit_minutes_source | varchar(14) | | | hcpcs_dosage | string | | | setting_basis | varchar(12) | | | figure_basis | varchar(8) | | | n_rates_printed | bigint | | | tie_on | string | | Tools that read it: get_medicaid_rate Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_rate_compare_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_rate_compare_v1")` first. # States M2 FFS rate book: vw_state_medicaid_rate_v2 `vlada_curated.vw_state_medicaid_rate_v2` · State programs · status partial · 294,254 rows Medicaid product M2 (FFS rate book) of the States lane: the state's Medicaid fee-for-service fee schedules, one row per published rate. Filter state and is_current = true, then code (and modifiers, provider_type, setting) before reading rate; rate_type and rate_unit say what the number is (a fee, a percent of Medicare, a per-diem). These are the state's FFS maximums, never managed care negotiated rates. 46 state(s): AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KY LA MD ME MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TX UT VA WA WI WV WY. **Grain.** The state's Medicaid fee-for-service fee schedules, one row per published rate. 294,254 rows (Athena, 2026-10-29). Period 2006-04-03 to 2027-01-01 (edition_effective_date). | column | type | meaning | |---|---|---| | schedule_id | string | | | program | string | | | provider_type | string | | | setting | string | | | geography | string | | | population | string | | | code_system | string | | | code | string | | | modifiers | string | | | description | string | | | rate | double | | | rate_type | string | | | rate_unit | string | | | unit_minutes | int | | | effective_from | date | | | source_end_date | date | | | edition_effective_date | date | | | source_s3_uri | string | | | source_sha256 | string | | | source_ref | string | | | reader_id | string | | | reader_version | string | | | extracted_at_utc | string | | | notes | string | | | state | string | | | service_line | string | | | effective_to | date | | | is_current | boolean | | | printed_effective_from | date | | Tools that read it: get_medicaid_rate Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_rate_v2 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_rate_v2")` first. # States M2 FFS rate book: vw_state_medicaid_rate_vs_medicare_v1 `vlada_curated.vw_state_medicaid_rate_vs_medicare_v1` · State programs · status partial Medicaid product M2 (FFS rate book) of the States lane: Medicaid as a share of Medicare. medicare_rate is the Medicare Physician Fee Schedule non-facility amount, no modifier, the unweighted mean of the state's localities for the latest PFS year held (medicare_year, medicare_localities); medicaid_pct_of_medicare = medicaid_rate / medicare_rate. Only Medicaid rows with a per-service / unit / visit / 15_min unit and a 5-character CPT / HCPCS code join. Filter state (and code) before reading. **Grain.** One row per state x schedule x program x provider_type x setting x geography x population x code (no modifier, one printed rate): the Medicaid rate in force beside the Medicare PFS non-facility rate for the same code in the same state. 145,476 rows, 36 states (Athena, 2026-11-02). | column | type | meaning | |---|---|---| | state | string | | | schedule_id | string | | | program | string | | | provider_type | string | | | setting | string | | | geography | string | | | population | string | | | code | string | | | service_line | string | | | rate_unit | string | | | medicaid_rate | double | | | effective_from | date | | | edition_effective_date | date | | | description | string | | | source_sha256 | string | | | source_ref | string | | | medicare_year | int | | | medicare_localities | bigint | | | medicare_rate | double | | | medicare_basis | varchar(81) | | | medicaid_pct_of_medicare | double | | Tools that read it: get_medicaid_rate Query it: `query_substrate` with `SELECT ... FROM vlada_curated.vw_state_medicaid_rate_vs_medicare_v1 WHERE ... LIMIT 100`; read `describe_data_source("vlada_curated.vw_state_medicaid_rate_vs_medicare_v1")` first. ## Companies (layer one, the 300 largest holders) # UnitedHealth Group, Inc. Vlada entity `le:000013` · legal entity · holds 0 instruments directly and 297 through subsidiaries **Identifiers.** cms_org_name UHC - Pacificare; cms_org_name United HealthCare Group, Inc.; cms_org_name UnitedHealth Group, Inc. **Owns or controls.** - ACN Group of California, Inc. (`le:002626`), at least since 2013-01-01, still true - AMERICHOICE OF NEW JERSEY, INC (`le:000775`), at least since 2006-08-01, no end found (last seen 2013-12-31) - AMERICHOICE OF NEW YORK, INC (`le:000597`), at least since 2006-08-01, no end found (last seen 2009-01-31) - ARIZONA PHYSICIANS IPA, INC. (`le:000045`), at least since 2006-08-01, still true - All Savers Insurance Company (`le:002473`), at least since 2013-01-01, still true - Amedisys (`le:003825`), start 2025-08-14, still true - Amil Participações S.A. (`le:003928`), start 2012-10-01, still true - Amil Participações S.A. (public float) (`le:003936`), start 2013-04-01, still true - Arnett Health Plans, Inc. (`le:003856`), start 2006-10-01, still true - CARE IMPROVEMENT ASSOCIATES OF MARYLAND (`le:002270`), start 2012-02-01, no end found (last seen 2007-05-31) - CARE IMPROVEMENT PLUS OF MARYLAND, INC. (`le:000998`), start 2012-02-01, no end found (last seen 2012-12-31) - CARE IMPROVEMENT PLUS OF TEXAS INSURANCE COMPANY (`le:000012`), start 2012-02-01, no end found (last seen 2021-12-31) - CARE IMPROVEMENT PLUS SOUTH CENTRAL INSURANCE CO. (`le:000032`), start 2012-02-01, still true - CARE IMPROVEMENT PLUS WISCONSIN INSURANCE COMPANY (`le:000323`), start 2012-02-01, no end found (last seen 2021-12-31) - CATAMARAN INSURANCE OF DELAWARE, INC. (`le:002387`), start 2015-07-23, still true - CATAMARAN INSURANCE OF DELAWARE, INC. (`le:002387`), start 2015-07-23, no end found (last seen 2012-10-31) - CATAMARAN INSURANCE OF OHIO, INC. (`le:001625`), start 2015-07-23, no end found (last seen 2016-07-31) - CITRUS HEALTH CARE (`le:001771`), start 2011-01-01, no end found (last seen 2009-12-31) - CITRUS HEALTH CARE, INC. (`le:001365`), start 2011-01-01, no end found (last seen 2012-12-31) - Catamaran Corporation (`le:001626`), start 2015-07-23, still true - Crystal Run Healthcare (`le:003814`), start 2023-02-22, still true - DaVita Medical Group (`le:003804`), start 2019-06-19, still true - EVERCARE OF TEXAS, LLC (`le:000718`), at least since 2006-08-01, no end found (last seen 2012-01-31) - Empresas Banmédica S.A. (`le:003986`), start 2018-01-01, still true - Enterprise Life Insurance Company (`le:002490`), at least since 2019-01-01, still true - Freedom Life Insurance Company of America (`le:002491`), at least since 2019-01-01, still true - GREAT LAKES HEALTH PLAN, INC. (`le:002037`), at least since 2008-01-01, no end found (last seen 2011-01-31) - Golden Rule Insurance Company (`le:002480`), at least since 2013-01-01, still true - HARKEN HEALTH INSURANCE COMPANY (`le:000382`), at least since 2019-01-01, no end found (last seen 2021-12-31) - HEALTH NET INSURANCE OF NEW YORK, INC. (`le:001002`), start 2009-12-11, still true - HEALTH NET OF CONNECTICUT (`le:001872`), start 2009-12-11, still true - HEALTH NET OF NY (`le:000808`), start 2009-12-11, still true - HEALTH PLAN OF NEVADA, INC. (`le:000534`), start 2008-02-25, no end found (last seen 2021-12-31) - HUMANA HEALTH PLAN, INC. (`le:000163`), start 2008-05-01, to 2008-05-31 - IBA Health and Life Assurance Company (`le:003857`), start 2006-01-01, still true - John Deere Health Care, Inc. (`le:003861`), start 2006-02-24, still true - KS PLAN ADMINISTRATORS, LLC (`le:000327`), start 2022-04-01, still true - Kelsey-Seybold Clinic (`le:003812`), start 2022-01-01, still true - Kelsey-Seybold Medical Group, PLLC (`le:001861`), start 2022-04-01, still true - LHC Group (`le:003815`), start 2023-02-22, still true - MAMSI LIFE AND HEALTH INSURANCE COMPANY (`le:002332`), at least since 2018-01-01, no end found (last seen 2021-12-31) - MD-Individual Practice Association, Inc (`le:002471`), at least since 2013-01-01, still true - MEDICA HEALTHCARE PLANS, INC. (`le:001975`), start 2012-07-01, no end found (last seen 2021-11-30) - Medica Health Plans of Florida, Inc (`le:004139`), at least since 2013-01-01, no end found (last seen 2014-12-31) - Midwest Security Life Insurance Company (`le:004165`), at least since 2013-01-01, no end found (last seen 2013-12-31) - National Foundation Life Insurance Company (`le:002489`), at least since 2019-01-01, still true - National Medical Health Card Systems, Inc. (`le:002224`), start 2015-07-23, still true - Neighborhood Health Partnership, Inc. (`le:002459`), start 2005-09-19, still true - OPTIMUM CHOICE, INC. (`le:002180`), at least since 2019-01-01, no end found (last seen 2021-12-31) - OPTUM INSURANCE OF OHIO, INC. (`le:001629`), at least since 2016-08-01, still true - OXFORD HEALTH INSURANCE, INC. (`le:000473`), at least since 2019-01-01, no end found (last seen 2021-12-31) - OXFORD HEALTH PLANS (CT), INC. (`le:000094`), at least since 2006-08-01, no end found (last seen 2023-01-31) - OXFORD HEALTH PLANS (NJ), INC. (`le:000552`), at least since 2006-08-01, still true - OXFORD HEALTH PLANS (NY), INC. (`le:000573`), at least since 2006-08-01, no end found (last seen 2025-12-31) - OXFORD HEALTH PLANS OF NEW JERSEY, INC (`le:000554`), at least since 2006-08-01, no end found (last seen 2008-09-30) - Optum (`le:003196`), start 2015-12-31, still true - OptumRx Holdings, LLC (`le:003215`), at least since 2020-01-01, still true - PACIFICARE LIFE AND HEALTH INSURANCE COMPANY (`le:001765`), at least since 2006-08-01, no end found (last seen 2008-03-31) - PACIFICARE LIFE ASSURANCE COMPANY (`le:002316`), at least since 2019-01-01, no end found (last seen 2021-12-31) - PACIFICARE OF ARIZONA, INC. (`le:000324`), at least since 2006-08-01, no end found (last seen 2015-12-31) - PACIFICARE OF CALIFORNIA (`le:001864`), at least since 2009-09-01, no end found (last seen 2011-06-30) - PACIFICARE OF CALIFORNIA/SECURE HORIZONS (`le:001659`), at least since 2006-08-01, no end found (last seen 2009-08-31) - PACIFICARE OF COLORADO, INC. (`le:000080`), at least since 2006-08-01, no end found (last seen 2021-12-31) - PACIFICARE OF OKLAHOMA, INC. (`le:000636`), at least since 2006-08-01, no end found (last seen 2011-06-30) - PACIFICARE OF OREGON, INC. (`le:000645`), at least since 2006-08-01, no end found (last seen 2011-06-30) - PACIFICARE OF TEXAS, INC. (`le:000729`), at least since 2006-08-01, no end found (last seen 2011-06-30) - PACIFICARE OF WASHINGTON, INC. (`le:000932`), at least since 2006-08-01, no end found (last seen 2011-06-30) - PACIFICARE/UHC OF NEVADA (`le:001493`), at least since 2008-07-01, no end found (last seen 2009-01-31) - PEOPLES HEALTH, INC. (`le:000728`), start 2018-01-01, still true - PEOPLES HEALTH, INC. (`le:000728`), start 2018-01-01, still true - PH Holdings, LLC (`le:001727`), start 2018-01-01, still true - PHYSICIANS HEALTH CHOICE OF TEXAS, LLC (`le:000725`), start 2011-01-01, still true - PREFERRED CARE PARTNERS, INC. (`le:000128`), start 2012-01-01, still true - PacifiCare Health Systems, Inc. (`le:003853`), start 2005-12-20, still true - PacifiCare of Nevada, Inc. (`le:000533`), at least since 2006-08-01, no end found (last seen 2022-01-31) - Preferred Care Network, Inc. (`le:002246`), at least since 2021-12-01, still true - Preferred Care Partners Holding Corp (`le:000362`), start 2012-01-01, still true - PreferredOne Insurance Company (`le:002761`), at least since 2023-01-01, no end found (last seen 2023-12-31) - ROCKY MOUNTAIN HEALTH MAINTENANCE ORGANIZATION INC (`le:001776`), start 2017-02-01, no end found (last seen 2025-12-31) - ROCKY MOUNTAIN HEALTH PLANS (`le:000078`), start 2017-02-01, no end found (last seen 2008-09-30) Tools: `resolve_entity(text="UnitedHealth Group, Inc.")`, `describe_entity(entity_id="le:000013", on="YYYY-MM-DD")`. # CVS Health Corporation Vlada entity `le:000143` · legal entity · holds 0 instruments directly and 129 through subsidiaries **Identifiers.** cms_org_name CVS Caremark Corporation; cms_org_name CVS Health Corporation; cms_org_name CVS-Caremark **Owns or controls.** - ACCENDO INSURANCE COMPANY (`le:002211`), at least since 2009-04-01, no end found (last seen 2011-12-31) - AETNA HEALTH OF OHIO INC. (OH) (`le:001356`), at least since 2021-03-01, no end found (last seen 2021-12-31) - AETNA BETTER HEALTH INC. (GA) (`le:002145`), at least since 2020-01-01, still true - AETNA BETTER HEALTH INC. (IL) (`le:000281`), start 2018-11-28, no end found (last seen 2021-03-31) - AETNA BETTER HEALTH INC. (NJ) (`le:001072`), at least since 2021-01-01, still true - AETNA BETTER HEALTH INC. (OH) (`le:000955`), start 2018-11-28, no end found (last seen 2025-12-31) - AETNA BETTER HEALTH OF CALIFORNIA INC. (`le:001950`), at least since 2020-01-01, still true - AETNA BETTER HEALTH OF KANSAS INC. (`le:001514`), at least since 2021-01-01, no end found (last seen 2025-12-31) - AETNA BETTER HEALTH OF MICHIGAN INC. (`le:001250`), start 2018-11-28, still true - AETNA BETTER HEALTH OF OKLAHOMA INC. (`le:000920`), at least since 2020-01-01, still true - AETNA BETTER HEALTH OF TEXAS INC. (`le:002076`), at least since 2019-01-01, still true - AETNA BETTER HEALTH OF WASHINGTON, INC. (`le:002165`), at least since 2020-01-01, still true - AETNA BETTER HEALTH PREMIER PLAN MMAI INC. (`le:000282`), at least since 2021-04-01, still true - AETNA BETTER HEALTH, INC. (LA) (`le:001798`), at least since 2019-01-01, still true - AETNA BETTER HEALTH, INC. (NY) (`le:001174`), start 2018-11-28, no end found (last seen 2017-12-31) - AETNA BETTER HEALTH, INC. (VA) (`le:000186`), start 2018-11-28, no end found (last seen 2018-01-31) - AETNA HEALTH (`le:001457`), start 2018-11-28, no end found (last seen 2012-04-30) - AETNA HEALTH AND LIFE INSURANCE COMPANY (`le:000789`), at least since 2020-01-01, still true - AETNA HEALTH INC. (CT) (`le:001011`), start 2018-11-28, still true - AETNA HEALTH INC. (FL) (`le:000415`), start 2018-11-28, still true - AETNA HEALTH INC. (GA) (`le:000365`), start 2018-11-28, still true - AETNA HEALTH INC. (LA) (`le:000658`), start 2018-11-28, still true - AETNA HEALTH INC. (MARYLAND) (`le:001730`), start 2018-11-28, no end found (last seen 2010-03-31) - AETNA HEALTH INC. (ME) (`le:000616`), start 2018-11-28, still true - AETNA HEALTH INC. (NJ) (`le:000559`), start 2018-11-28, still true - AETNA HEALTH INC. (NY) (`le:001801`), start 2018-11-28, still true - AETNA HEALTH INC. (PA) (`le:000106`), start 2018-11-28, still true - AETNA HEALTH INC. (TX) (`le:000918`), start 2018-11-28, still true - AETNA HEALTH OF (OHIO) (`le:002161`), start 2018-11-28, no end found (last seen 2008-01-31) - AETNA HEALTH OF CALIFORNIA INC. (`le:000339`), start 2018-11-28, still true - AETNA HEALTH OF ILLINOIS, INC. (`le:000167`), start 2018-11-28, no end found (last seen 2010-03-31) - AETNA HEALTH OF IOWA (`le:000184`), start 2018-11-28, no end found (last seen 2016-06-30) - AETNA HEALTH OF IOWA INC. (`le:002261`), at least since 2020-01-01, still true - AETNA HEALTH OF MICHIGAN INC. (`le:000562`), at least since 2020-01-01, still true - AETNA HEALTH OF OHIO INC. (`le:001870`), at least since 2020-01-01, still true - AETNA HEALTH OF UTAH INC. (`le:001204`), start 2018-11-28, still true - AETNA HEALTH, INC. (`le:000041`), start 2018-11-28, no end found (last seen 2016-03-31) - AETNA HEALTH, INC. (GEORGIA) (`le:000953`), start 2018-11-28, no end found (last seen 2016-05-31) - AETNA LIFE INSURANCE COMPANY (`le:000168`), start 2018-11-28, still true - ALLINA HEALTH AND AETNA INSURANCE COMPANY (`le:000780`), start 2020-05-01, still true - ALTIUS HEALTH PLANS, INC. (`le:001205`), start 2018-11-28, no end found (last seen 2015-03-31) - ALTIUS HEALTH PLANS, INC. (UTAH) (`le:002079`), start 2018-11-28, no end found (last seen 2012-04-30) - ALTIUS HEALTH PLANS, INC. (WYOMING) (`le:001875`), start 2018-11-28, no end found (last seen 2010-12-31) - Aetna Health Inc. (a Connecticut corporation) (`le:002639`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a Florida corporation) (`le:002669`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a Georgia corporation) (`le:002752`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a LA corp.) (`le:002476`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a Maine corporation) (`le:002796`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a New Jersey corporation) (`le:002753`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a New York corporation) (`le:002642`), at least since 2014-01-01, no end found (last seen 2018-12-31) - Aetna Health Inc. (a Pennsylvania corporation) (`le:002504`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Inc. (a Texas corporation) (`le:002527`), at least since 2014-01-01, no end found (last seen 2023-12-31) - Aetna Health Insurance Company of New York (`le:002824`), at least since 2020-01-01, no end found (last seen 2023-12-31) - Aetna HealthAssurance Pennsylvania, Inc. (`le:002554`), at least since 2016-01-01, no end found (last seen 2023-12-31) - Aetna Inc. (`le:000042`), start 2018-11-28, still true - Allina Health and Aetna Insurance Holding Company (`le:000781`), at least since 2020-05-01, still true - Banner Health and Aetna Health Insurance Company (`le:002640`), at least since 2018-01-01, no end found (last seen 2023-12-31) - Banner Health and Aetna Health Plan Inc. (`le:002789`), at least since 2018-01-01, no end found (last seen 2023-12-31) - CAMBRIDGE LIFE INSURANCE COMPANY (`le:001580`), start 2018-11-28, no end found (last seen 2015-12-31) - COVENTRY HEALTH AND LIFE INS. COMPANY (`le:000414`), start 2018-11-28, no end found (last seen 2013-07-31) - COVENTRY HEALTH AND LIFE INSURANCE CO. (NEBRASKA) (`le:002071`), start 2018-11-28, no end found (last seen 2010-08-31) - COVENTRY HEALTH AND LIFE INSURANCE CO. (SOUTH DAKO (`le:000050`), start 2018-11-28, no end found (last seen 2010-08-31) - COVENTRY HEALTH AND LIFE INSURANCE COMPANY (`le:000183`), start 2018-11-28, still true - COVENTRY HEALTH CARE OF FLORIDA, INC. (`le:000129`), start 2018-11-28, no end found (last seen 2014-12-31) - COVENTRY HEALTH CARE OF GEORGIA, INC. (`le:001355`), start 2018-11-28, no end found (last seen 2014-11-30) - COVENTRY HEALTH CARE OF ILLINOIS, INC. (`le:000142`), start 2018-11-28, still true - COVENTRY HEALTH CARE OF IOWA, INC. (`le:000185`), start 2018-11-28, no end found (last seen 2015-08-31) - COVENTRY HEALTH CARE OF KANSAS, INC. (`le:000954`), start 2018-11-28, still true - COVENTRY HEALTH CARE OF LOUISIANA, INC. (`le:000869`), start 2018-11-28, no end found (last seen 2015-08-31) - COVENTRY HEALTH CARE OF MISSOURI, INC. (`le:000491`), start 2018-11-28, still true - COVENTRY HEALTH CARE OF NEBRASKA, INC. (`le:001131`), start 2018-11-28, still true - COVENTRY HEALTH CARE OF TEXAS, INC. (`le:002238`), start 2018-11-28, no end found (last seen 2015-08-31) - COVENTRY HEALTH CARE OF VIRGINIA, INC. (`le:001087`), start 2018-11-28, still true - COVENTRY HEALTH CARE OF WEST VIRGINIA, INC. (`le:001716`), start 2018-11-28, still true - COVENTRY HEALTH PLAN OF FLORIDA, INC. (`le:000121`), start 2018-11-28, no end found (last seen 2015-12-31) - COVENTRY SUMMIT HEALTH PLAN, INC. (`le:002001`), start 2018-11-28, no end found (last seen 2014-12-31) - Caremark, Inc. (`le:001604`), start 2007-03-22, still true - Coventry Health Care Inc. (`le:000051`), start 2018-11-28, still true - Coventry Health Care of Delaware, Inc. (`le:004125`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Coventry Health Care of Delaware, Inc. (`le:004125`), at least since 2014-01-01, no end found (last seen 2015-12-31) Tools: `resolve_entity(text="CVS Health Corporation")`, `describe_entity(entity_id="le:000143", on="YYYY-MM-DD")`. # The Cigna Group Vlada entity `le:000087` · legal entity · holds 0 instruments directly and 114 through subsidiaries **Identifiers.** cms_org_name CIGNA; cms_org_name The Cigna Group **Owns or controls.** - BRAVO HEALTH INSURANCE COMPANY, INC. (`le:000156`), start 2012-01-31, no end found (last seen 2012-12-31) - BRAVO HEALTH MID-ATLANTIC, INC. (`le:000229`), start 2012-01-31, to 2025-03-18 - BRAVO HEALTH PENNSYLVANIA, INC. (`le:000502`), start 2012-01-31, to 2025-03-18 - BRAVO HEALTH TEXAS, INC. (`le:001746`), start 2012-01-31, no end found (last seen 2012-05-31) - CIGNA HEALTH AND LIFE INSURANCE COMPANY (`le:001476`), at least since 2014-01-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF ARIZONA, INC. (`le:000328`), at least since 2006-08-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF CALIFORNIA, INC. (`le:002112`), at least since 2021-01-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF COLORADO, INC. (`le:000086`), at least since 2020-01-01, to 2025-03-18 - CIGNA HEALTHCARE OF CONNECTICUT INC. (`le:000746`), at least since 2022-01-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF GEORGIA, INC. (`le:000336`), at least since 2014-01-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF NORTH CAROLINA, INC. (`le:002114`), at least since 2014-01-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF SOUTH CAROLINA, INC. (`le:001463`), at least since 2014-01-01, no end found (last seen 2024-12-31) - CIGNA HEALTHCARE OF ST LOUIS, INC. (`le:001560`), at least since 2016-01-01, no end found (last seen 2024-12-31) - CONNECTICUT GENERAL LIFE INSURANCE COMPANY (`le:000748`), at least since 2006-08-01, no end found (last seen 2013-12-31) - Connecticut General Life Insurance Company (CIGNA Corporation) (`le:003887`), start 2008-04-01, still true - Great-West Healthcare (healthcare division of Great-West Life & Annuity Insurance Company) (`le:003888`), start 2008-04-01, still true - HEALTHSPRING LIFE & HEALTH INSURANCE COMPANY, INC. (`le:000237`), start 2012-01-31, to 2025-03-18 - HEALTHSPRING OF ALABAMA, INC. (`le:000022`), start 2012-01-31, no end found (last seen 2018-05-31) - HEALTHSPRING OF FLORIDA, INC. (`le:000964`), start 2012-01-31, to 2025-03-18 - HEALTHSPRING OF TENNESSEE, INC. (`le:000164`), start 2012-01-31, no end found (last seen 2018-05-31) - HealthSpring, Inc. (`le:000023`), start 2012-01-31, still true - MEDCO CONTAINMENT INSURANCE COMPANY OF NEW YORK (`le:001616`), start 2019-04-01, no end found (last seen 2021-12-31) - MEDCO CONTAINMENT LIFE AND MEDCO CONTAINMENT NY (`le:001605`), start 2019-04-01, to 2025-03-18 Tools: `resolve_entity(text="The Cigna Group")`, `describe_entity(entity_id="le:000087", on="YYYY-MM-DD")`. # Torchmark Corporation Vlada entity `le:001757` · legal entity · holds 0 instruments directly and 114 through subsidiaries **Identifiers.** cms_org_name Torchmark Corporation **Owns or controls.** - American Income Life Insurance Co (`le:002470`), at least since 2013-01-01, still true - FIRST UNITED AMERICAN LIFE INSURANCE COMPANY (`le:001756`), at least since 2006-08-01, no end found (last seen 2016-06-30) - Globe Life and Accident Insurance Co (`le:002468`), at least since 2013-01-01, still true - Liberty National Life Insurance Co (`le:002469`), at least since 2013-01-01, still true - UNITED AMERICAN INSURANCE COMPANY (`le:002216`), at least since 2006-08-01, no end found (last seen 2016-06-30) Tools: `resolve_entity(text="Torchmark Corporation")`, `describe_entity(entity_id="le:001757", on="YYYY-MM-DD")`. # Humana Inc. Vlada entity `le:000009` · legal entity · holds 0 instruments directly and 105 through subsidiaries **Identifiers.** cms_org_name Humana Inc. **Owns or controls.** - ARCADIAN HEALTH PLAN OF GEORGIA, INC. (`le:001376`), start 2012-03-31, no end found (last seen 2012-12-31) - ARCADIAN HEALTH PLAN OF LOUISIANA, INC. (`le:001134`), start 2012-03-31, no end found (last seen 2012-12-31) - ARCADIAN HEALTH PLAN OF NEW YORK, INC. (`le:001814`), start 2012-03-31, no end found (last seen 2013-07-31) - ARCADIAN HEALTH PLAN OF NORTH CAROLINA, INC. (`le:000752`), start 2012-03-31, no end found (last seen 2012-12-31) - ARCADIAN HEALTH PLAN, INC. (`le:000325`), start 2012-03-31, still true - ARKANSAS COMMUNITY CARE, INC. (`le:001392`), start 2012-03-31, no end found (last seen 2012-12-31) - American Eldercare Inc. (`le:003940`), start 2013-09-06, still true - Arcadian Management Services Inc. (`le:000326`), start 2012-03-31, still true - CARE PLUS HEALTH PLAN (`le:000358`), at least since 2006-08-01, no end found (last seen 2010-08-31) - CAREPLUS HEALTH PLANS, INC. (`le:001679`), start 2005-02-16, still true - CAREPLUS HEALTH PLANS, INC. (`le:001679`), start 2005-02-16, still true - CARITEN HEALTH PLAN IN (`le:000711`), start 2008-10-31, no end found (last seen 2010-08-31) - CARITEN HEALTH PLAN INC. (`le:000914`), at least since 2010-09-01, still true - CARITEN INSURANCE COMPANY (`le:000984`), start 2008-10-31, no end found (last seen 2009-12-31) - CHA HMO, INC. (`le:000008`), at least since 2013-01-01, still true - CHA Service Company (CHA Health) (`le:003863`), start 2006-05-01, still true - COMPBENEFITS INSURANCE COMPANY (`le:002351`), at least since 2019-01-01, no end found (last seen 2023-12-31) - CompBenefits Corporation (`le:003883`), start 2007-10-01, still true - EMPHESYS INSURANCE COMPANY (`le:001484`), at least since 2020-01-01, still true - HUMANA ADVANTAGECARE PLAN, INC. (`le:000967`), at least since 2008-12-01, no end found (last seen 2013-12-31) - HUMANA BENEFIT PLAN OF ILLINOIS, INC. (`le:000173`), at least since 2009-07-01, still true - HUMANA BENEFIT PLAN OF SOUTH CAROLINA, INC. (`le:000398`), at least since 2026-01-01, still true - HUMANA BENEFIT PLAN OF TEXAS, INC. (`le:001874`), at least since 2021-01-01, still true - HUMANA EMPLOYERS HEALTH PLAN OF GEORGIA, INC. (`le:001845`), at least since 2010-01-01, still true - HUMANA HEALTH BENEFIT PLAN OF LA, INC. (`le:001724`), at least since 2006-08-01, no end found (last seen 2012-05-31) - HUMANA HEALTH BENEFIT PLAN OF LOUISIANA, INC. (`le:000215`), at least since 2006-08-01, still true - HUMANA HEALTH COMPANY OF NEW YORK, INC. (`le:000827`), at least since 2013-08-01, still true - HUMANA HEALTH INSURANCE COMPANY OF FL, INC. (`le:001366`), at least since 2006-08-01, no end found (last seen 2013-07-31) - HUMANA HEALTH INSURANCE COMPANY OF FLORIDA, INC. (`le:000965`), at least since 2013-08-01, still true - HUMANA HEALTH PLAN OF CALIFORNIA, INC. (`le:001858`), at least since 2010-01-01, no end found (last seen 2024-12-31) - HUMANA HEALTH PLAN OF OHIO, INC. (`le:000322`), at least since 2010-01-01, still true - HUMANA HEALTH PLAN OF TEXAS, INC. (`le:000717`), at least since 2006-08-01, still true - HUMANA HEALTH PLAN, INC. (`le:000163`), at least since 2006-08-01, still true - HUMANA HEALTH PLANS OF PUERTO RICO, INC. (`le:000676`), at least since 2006-08-01, no end found (last seen 2025-12-31) - HUMANA HLTH BENEFIT PLN OF LOUISIANA (`le:000211`), at least since 2006-08-01, no end found (last seen 2006-12-31) - HUMANA INSURANCE COMPANY (`le:000040`), at least since 2006-08-01, still true - HUMANA INSURANCE COMPANY OF KENTUCKY (`le:000060`), at least since 2019-01-01, still true - HUMANA INSURANCE COMPANY OF NEW YORK (`le:000148`), at least since 2006-08-01, still true - HUMANA INSURANCE OF PUERTO RICO, INC. (`le:000883`), at least since 2006-08-01, still true - HUMANA MEDICAL PLAN OF MICHIGAN, INC. (`le:001676`), at least since 2013-01-01, still true - HUMANA MEDICAL PLAN OF PENNSYLVANIA, INC. (`le:001362`), at least since 2014-01-01, still true - HUMANA MEDICAL PLAN OF UTAH, INC. (`le:000486`), at least since 2008-01-01, still true - HUMANA MEDICAL PLAN, INC. (`le:000126`), at least since 2006-08-01, still true - HUMANA REGIONAL HEALTH PLAN, INC. (`le:000890`), at least since 2014-01-01, still true - HUMANA WI HEALTH ORGANIZATION INSURANCE CORP (`le:000521`), at least since 2013-08-01, still true - HUMANA WISCONSINHEALTH ORGANIZATION INSURANCE CORP (`le:001443`), at least since 2011-01-01, no end found (last seen 2013-07-31) - HUMANADENTAL INSURANCE COMPANY (`le:002066`), at least since 2019-01-01, no end found (last seen 2023-12-31) - Humana Health Plans of Puerto Rico (`le:004209`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Humana Insurance Co. & Humana Insurance Co. of NY (`le:002382`), at least since 2025-10-01, still true - Humana Insurance Company of Kentucky, Inc. (`le:002850`), at least since 2013-01-01, no end found (last seen 2017-12-31) - Humana Insurance Company, Inc. (`le:004162`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Humana Insurance of Puerto Rico (`le:004191`), at least since 2013-01-01, no end found (last seen 2013-12-31) - INDEPENDENT CARE HEALTH PLAN (`le:001919`), start 2021-05-01, still true - Independent Care Health Plan – iCare (`le:002979`), start 2021-01-01, still true - KMG America Corporation (`le:003886`), start 2007-11-30, still true - Kanawha Insurance Company (`le:002681`), at least since 2013-01-01, no end found (last seen 2017-12-31) - Kindred at Home (`le:003809`), start 2021-08-17, still true - MD CARE, INC. (`le:001160`), start 2011-12-30, no end found (last seen 2012-12-31) - MD CARE, INC. (`le:001160`), start 2011-12-30, still true - METCARE HEALTH PLANS, INC. (`le:001976`), start 2008-10-01, no end found (last seen 2008-11-30) - METCARE HEALTH PLANS, INC. (`le:001976`), start 2008-08-29, still true - Metropolitan Health Networks, Inc. (`le:001977`), start 2012-12-01, still true - OSF HEALTHPLANS, INC. (`le:000174`), start 2008-09-01, no end found (last seen 2009-06-30) - OSF HEALTHPLANS, INC. (`le:000174`), start 2008-05-22, still true - OSF Health Plans, Inc. (`le:003890`), start 2008-05-22, still true - PHP Companies, Inc. (d/b/a Cariten Healthcare) (`le:003894`), start 2008-10-31, still true Tools: `resolve_entity(text="Humana Inc.")`, `describe_entity(entity_id="le:000009", on="YYYY-MM-DD")`. # Centene Corporation Vlada entity `le:000011` · legal entity · holds 0 instruments directly and 100 through subsidiaries **Identifiers.** cms_org_name CENTENE CORP GRP; cms_org_name Centene Corporation **Owns or controls.** - ABSOLUTE TOTAL CARE, INC. (`le:000194`), at least since 2015-01-01, still true - ADVANCE/WELLCARE PFFS INSURANCE, INC. (`le:000386`), start 2020-01-23, no end found (last seen 2007-07-31) - ALPHACARE OF NEW YORK, INC. (`le:001121`), start 2022-01-04, no end found (last seen 2016-12-31) - AMERICAN PIONEER HEALTH PLANS, INC. (`le:002266`), start 2020-01-23, no end found (last seen 2007-12-31) - AMERICAN PIONEER LIFE INSURANCE COMPANY (`le:002283`), start 2020-01-23, no end found (last seen 2007-02-28) - AMERICAN PROGRESSIVE (`le:002329`), start 2020-01-23, no end found (last seen 2007-12-31) - AMERICAN PROGRESSIVE LIFE & HEALTH INSUR CO OF NY (`le:001782`), start 2020-01-23, no end found (last seen 2012-04-30) - AMERICAN PROGRESSIVE LIFE & HEALTH INSURANCE OF NY (`le:001698`), start 2020-01-23, no end found (last seen 2012-04-30) - AMERICAN PROGRESSIVE LIFE & HLTH INS COMPANY OF NY (`le:000510`), start 2020-01-23, still true - AMERICAN PROGRESSIVE LIFE AND HEALTH INS CO NY (`le:002218`), start 2020-01-23, no end found (last seen 2011-05-31) - AMERICAN PROGRESSIVE LIFE AND HEALTH OF NEW YORK (`le:001029`), start 2020-01-23, no end found (last seen 2010-12-31) - AMERICAN PROGRESSIVE LIFE/HLTH INS. (`le:002153`), start 2020-01-23, no end found (last seen 2012-04-30) - ARKANSAS HEALTH & WELLNESS HEALTH PLAN, INC. (`le:002111`), at least since 2018-01-01, still true - Access Health Solutions, LLC (remaining interest) (`le:003911`), start 2010-12-01, still true - Aetna Inc. standalone Medicare Part D prescription drug plan business (`le:003993`), start 2020-01-23, still true - Agate Resources, Inc. (`le:000455`), start 2015-09-01, still true - AlphaCare Holdings, LLC (`le:001239`), start 2022-01-04, still true - Ambetter of Magnolia Inc. (`le:002688`), at least since 2015-01-01, still true - Ambetter of Peach State Inc. (`le:002547`), at least since 2016-01-01, still true - America's 1st Choice California Holdings, LLC (sole shareholder of Easy Choice Health Plan, Inc.) (`le:003930`), start 2020-01-23, still true - American Alternative Insurance Corporation (`le:004151`), at least since 2013-01-01, no end found (last seen 2014-12-31) - American Progressive Life & Health Insurance Company of New York (`le:002541`), at least since 2017-01-01, no end found (last seen 2022-12-31) - Arizona Complete Health (`le:002762`), at least since 2021-01-01, still true - BRIDGEWAY HEALTH SOLUTIONS (`le:001378`), at least since 2008-01-01, no end found (last seen 2021-04-30) - BUCKEYE COMMUNITY HEALTH PLAN, INC. (`le:000356`), at least since 2008-01-01, still true - BUCKEYE HEALTH PLAN COMMUNITY SOLUTIONS, Inc. (`le:001466`), at least since 2018-01-01, still true - Bridgeway Health Solutions of Arizona, Inc. (`le:001989`), at least since 2021-05-01, still true - Buckeye Community Health Plan (`le:002770`), at least since 2016-01-01, still true - CARE1ST HEALTH PLAN OF ARIZONA (`le:000969`), start 2020-01-23, still true - CELTIC INSURANCE COMPANY (`le:000733`), at least since 2022-01-01, still true - CENTENE VENTURE COMPANY ALABAMA HEALTH PLAN, INC. (`le:000703`), at least since 2021-01-01, no end found (last seen 2024-12-31) - CENTENE VENTURE COMPANY FLORIDA (`le:001187`), at least since 2020-01-01, no end found (last seen 2024-12-31) - CENTENE VENTURE COMPANY ILLINOIS (`le:001145`), at least since 2020-01-01, no end found (last seen 2024-12-31) - CENTENE VENTURE COMPANY INDIANA, INC. (`le:000429`), at least since 2021-01-01, no end found (last seen 2025-12-31) - CENTENE VENTURE COMPANY KANSAS (`le:002032`), at least since 2020-01-01, no end found (last seen 2025-12-31) - CENTENE VENTURE COMPANY MICHIGAN (`le:000337`), at least since 2021-01-01, still true - CENTENE VENTURE COMPANY TENNESSEE (`le:001178`), at least since 2021-01-01, still true - CENTENE VENTURE INSURANCE COMPANY TEXAS (`le:001091`), at least since 2022-01-01, no end found (last seen 2024-12-31) - COORDINATED CARE CORPORATION (`le:001811`), at least since 2018-01-01, still true - COORDINATED CARE OF WASHINGTON, INC. (`le:001642`), at least since 2018-01-01, still true - Care1st Health Plan Arizona, Inc. and One Care by Care1st Health Plan of Arizona, Inc. (`le:003978`), start 2020-01-23, still true - CeltiCare Health Plan of MA (`le:002698`), at least since 2014-01-01, no end found (last seen 2017-12-31) - CeltiCare Health Plan of MA (`le:002698`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Celtic Group, Inc. (parent of Celtic Insurance Company) (`le:003892`), start 2008-07-01, still true - Coordinated Care Corporation Indiana (`le:002544`), at least since 2016-01-01, still true - EASY CHOICE HEALTH PLAN INC. (`le:001952`), start 2020-01-23, no end found (last seen 2019-07-31) - FIDELIS SECURECARE OF MICHIGAN (`le:000261`), start 2015-05-01, no end found (last seen 2017-03-31) - FIDELIS SECURECARE OF MICHIGAN (`le:000261`), start 2015-05-01, still true - Fidelis Care (`le:003483`), start 2018-07-02, still true - Fidelis SecureCare of Michigan, Inc. (`le:003959`), start 2015-05-01, still true - GRANITE ALLIANCE INSURANCE COMPANY (`le:001598`), start 2022-01-04, to 2022-12-04 - GRANITE ALLIANCE INSURANCE COMPANY (`le:001598`), start 2022-01-04, to 2022-12-04 - Guardian Healthcare, Inc. (`le:000929`), start 2020-01-23, still true - HARMONY HEALTH PLAN OF ILLINOIS, INC. (`le:000399`), start 2020-01-23, no end found (last seen 2016-08-31) - HARMONY HEALTH PLAN, INC. (`le:000400`), start 2020-01-23, still true - HARMONY HEALTH PLAN, INC. (IL) (`le:001890`), start 2020-01-23, no end found (last seen 2017-03-31) - HARMONY HEALTH PLANS OF ILLINOIS, INC. (`le:000189`), start 2020-01-23, no end found (last seen 2011-12-31) - HARMONY HP OF IL., INC., DBA HARMONY HP OF MO. (`le:001714`), start 2020-01-23, no end found (last seen 2008-05-31) - HEALTH NET COMMUNITY SOLUTIONS OF ARIZONA, INC. (`le:002099`), at least since 2017-01-01, no end found (last seen 2020-12-31) - HEALTH NET COMMUNITY SOLUTIONS, INC. (`le:002148`), start 2016-03-24, still true - HEALTH NET HEALTH PLAN OF OREGON, INC. (`le:002304`), start 2016-03-24, still true - HEALTH NET LIFE INS CO/HEALTH NET INS OF NY (`le:001759`), start 2016-03-24, no end found (last seen 2011-02-28) - HEALTH NET LIFE INSURANCE COMPANY (`le:000974`), start 2016-03-24, still true - HEALTH NET LIFE INSURANCE COMPANY, INC. (`le:002287`), start 2016-03-24, no end found (last seen 2009-12-31) - HEALTH NET OF ARIZONA, INC. (`le:000048`), start 2016-03-24, still true - HEALTH NET OF CALIFORNIA, INC. (`le:001661`), start 2016-03-24, still true - HEALTH NET_OF CA (`le:000074`), start 2016-03-24, no end found (last seen 2009-09-30) - HEALTH PLAN OF MICHIGAN, INC. (`le:001372`), start 2020-01-23, still true - HERITAGE HEALTH SYSTEMS OF NEW YORK, INC. (`le:000922`), start 2020-01-23, no end found (last seen 2018-05-31) - HOME STATE HEALTH PLAN, INC. (`le:001899`), at least since 2018-01-01, still true - HOMEOWNER'S/WELLCARE PFFS INSURANCE INC. (`le:001941`), start 2020-01-23, no end found (last seen 2007-07-31) - Harmony Health, Inc. (operator of GlobalHealth, Inc.) (`le:003875`), start 2020-01-23, still true - Health Net (`le:002873`), start 2016-03-24, still true - HealthCare Solutions (HCS) joint venture - The Guardian Life Insurance Company of America's 50% interest (`le:003878`), start 2016-03-24, still true - ILLINICARE HEALTH PLAN, INC. (`le:000401`), at least since 2020-05-01, still true - ILLINICARE HEALTH PLAN, INC. (`le:000401`), at least since 2014-01-01, to 2020-05-31 - LOUISIANA HEALTHCARE CONNECTIONS, INC. (`le:001955`), at least since 2018-01-01, still true - Louisiana Healthcare Connections (`le:002763`), start 2012-02-01, still true - MAGELLAN LIFE INSURANCE COMPANY, INC. (`le:001584`), start 2022-01-04, no end found (last seen 2016-12-31) - MAGNOLIA HEALTH PLAN, INC. (`le:002115`), at least since 2017-01-01, still true Tools: `resolve_entity(text="Centene Corporation")`, `describe_entity(entity_id="le:000011", on="YYYY-MM-DD")`. # Elevance Health, Inc. Vlada entity `le:000170` · legal entity · holds 0 instruments directly and 73 through subsidiaries **Identifiers.** cms_org_name Anthem Inc.; cms_org_name Elevance Health, Inc.; cms_org_name WellPoint, Inc.; cms_org_name Wellpoint, Inc. **Owns or controls.** - AMERICA'S 1ST CHOICE HEALTH PLANS, INC. (`le:000602`), start 2018-02-15, still true - AMERICA'S 1ST CHOICE OF SOUTH CAROLINA, INC. (`le:001510`), start 2018-02-15, no end found (last seen 2020-12-31) - AMERIGROUP COMMUNITY CARE OF NEW MEXICO, INC. (`le:001004`), start 2012-12-24, no end found (last seen 2023-12-31) - AMERIGROUP Corporation (`le:000783`), start 2012-12-24, still true - AMERIGROUP FLORIDA, INC. (`le:001226`), start 2012-12-24, no end found (last seen 2015-12-31) - AMERIGROUP GEORGIA MANAGED CARE COMPANY, INC. (`le:001847`), start 2012-12-24, no end found (last seen 2013-07-31) - AMERIGROUP INSURANCE COMPANY (`le:001193`), at least since 2020-01-01, no end found (last seen 2023-12-31) - AMERIGROUP IOWA, INC. (`le:000109`), at least since 2021-01-01, no end found (last seen 2023-12-31) - AMERIGROUP MARYLAND, INC. (`le:001025`), start 2012-12-24, no end found (last seen 2014-12-31) - AMERIGROUP NEW JERSEY, INC. (`le:000564`), start 2012-12-24, no end found (last seen 2023-12-31) - AMERIGROUP NEW MEXICO, INC. (`le:001398`), start 2012-12-24, no end found (last seen 2012-04-30) - AMERIGROUP NEW YORK, LLC (`le:001194`), start 2012-12-24, no end found (last seen 2015-11-30) - AMERIGROUP OHIO, INC. (`le:001891`), at least since 2021-01-01, no end found (last seen 2023-11-30) - AMERIGROUP TENNESSEE, INC. (`le:001135`), start 2012-12-24, no end found (last seen 2023-12-31) - AMERIGROUP TEXAS, INC. (`le:001013`), start 2012-12-24, no end found (last seen 2023-11-30) - AMERIGROUP WASHINGTON, INC. (`le:000209`), at least since 2014-01-01, no end found (last seen 2023-12-31) - AMGP GEORGIA MANAGED CARE COMPANY, INC. (`le:002187`), at least since 2013-08-01, no end found (last seen 2015-12-31) - AMGP Georgia Managed Care Company, Inc. dba Anthem Blue Cross and Blue Shield (`le:002749`), at least since 2024-01-01, still true - AMH HEALTH PLANS OF MAINE, INC. (`le:001241`), at least since 2021-01-01, still true - AMH HEALTH, LLC (`le:001233`), at least since 2020-01-01, still true - ANTHEM BC/BS OF COLORADO (`le:001993`), at least since 2007-01-01, no end found (last seen 2008-05-31) - ANTHEM BLUE CROSS LIFE AND HEALTH INS COMPANY (`le:001519`), at least since 2012-05-01, still true - ANTHEM BLUE CROSS LIFE AND HEALTH INSURANCE CO. (`le:001520`), at least since 2008-06-01, no end found (last seen 2012-04-30) - ANTHEM HEALTH INSURANCE COMPANIES, INC. (`le:001324`), at least since 2017-08-01, no end found (last seen 2017-08-31) - ANTHEM HEALTH PLANS OF KENTUCKY, INC. (`le:000208`), at least since 2006-08-01, no end found (last seen 2017-12-31) - ANTHEM HEALTH PLANS OF MAINE, INC. (`le:001098`), at least since 2013-01-01, no end found (last seen 2020-12-31) - ANTHEM HEALTH PLANS OF NEW HAMPSHIRE, INC. (`le:001490`), at least since 2008-01-01, no end found (last seen 2023-12-31) - ANTHEM HEALTH PLANS OF VIRGINIA, INC. (`le:000926`), at least since 2006-08-01, no end found (last seen 2017-07-31) - ANTHEM HEALTH PLANS, INC. (`le:000520`), at least since 2007-01-01, still true - ANTHEM HEALTHCHOICE ASSURANCE, INC. (`le:000585`), at least since 2024-04-01, no end found (last seen 2025-12-31) - ANTHEM HEALTHCHOICE HMO, INC. (`le:002337`), at least since 2024-04-01, no end found (last seen 2025-03-31) - ANTHEM INSURANCE COMPANIES, INC. (`le:000179`), at least since 2006-08-01, still true - America's 1st Choice (Freedom Health, Inc., Optimum HealthCare, Inc., America's 1st Choice of South Carolina, Inc. and related entities) (`le:003988`), start 2018-02-15, still true - America's 1st Choice Holdings of Florida, LLC (`le:001368`), start 2018-02-15, still true - AmericaÆs 1st Choice of South Carolina, Inc. (`le:001511`), start 2018-02-15, still true - Anthem Blue Cross Life and Health Insurance Company, Inc. (`le:002751`), at least since 2013-01-01, still true - Anthem HP, LLC (`le:000427`), at least since 2024-04-01, still true - BC LIFE AND HEALTH INSURANCE COMPANY (`le:001019`), at least since 2006-08-01, no end found (last seen 2008-05-31) - BCBS HEALTHCARE PLAN OF GEORGIA, INC. (`le:001367`), at least since 2012-06-01, no end found (last seen 2013-07-31) - BLUE CROSS AND BLUE SHIELD OF GEORGIA, INC. (`le:001299`), at least since 2013-08-01, no end found (last seen 2017-12-31) - BLUE CROSS BLUE SHIELD HEALTHCARE PLAN OF GEORGIA (`le:001300`), at least since 2012-05-01, still true - BLUE CROSS BLUE SHIELD OF GEORGIA (`le:000966`), at least since 2006-08-01, no end found (last seen 2012-04-30) - BLUE CROSS BLUE SHIELD OF GEORGIA, INC. (`le:001301`), at least since 2012-06-01, no end found (last seen 2013-07-31) - BLUE CROSS OF CALIFORNIA (`le:000342`), at least since 2006-08-01, still true - BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN, INC. (`le:001427`), at least since 2014-02-01, still true - BLUE MEDICARERX (`le:001597`), at least since 2006-08-01, to 2009-01-31 - Beacon Health Options (`le:002952`), start 2020-02-28, still true - BioPlus Specialty Pharmacy (`le:003813`), start 2023-02-15, still true - Blue Cross Blue Shield Healthcare Plan of Georgia, Inc. (`le:002704`), at least since 2025-12-31, still true - Blue Cross Blue Shield of Kansas (`le:001610`), at least since 2006-08-01, to 2006-09-30 - Blue Cross Blue Shield of Wisconsin (`le:002785`), at least since 2013-01-01, still true - CALIFORNIA HEALTH PLAN (`le:001867`), start 2011-08-22, no end found (last seen 2006-09-30) - CAREMORE HEALTH PLAN (`le:000071`), start 2011-08-22, no end found (last seen 2017-07-31) - CAREMORE HEALTH PLAN OF ARIZONA, INC. (`le:000289`), start 2011-08-22, no end found (last seen 2018-08-31) - CAREMORE HEALTH PLAN OF NEVADA (`le:001853`), start 2011-08-22, no end found (last seen 2017-07-31) - CENTERS PLAN FOR HEALTHY LIVING, LLC (`le:000761`), start 2024-12-31, no end found (last seen 2025-09-30) - CENTERS PLAN FOR HEALTHY LIVING, LLC (`le:000761`), start 2024-12-31, still true - COMMUNITY CARE HEALTH PLAN OF LOUISIANA, INC. (`le:000437`), at least since 2020-01-01, still true - COMMUNITY INSURANCE COMPANY (`le:000742`), at least since 2006-08-01, still true - COMPCARE HEALTH SERVICES INSURANCE CORPORATION (`le:001424`), at least since 2008-01-01, still true - CareMore Health (`le:003795`), start 2011-08-22, still true - CareMore Health Group, Inc. (`le:003918`), start 2011-08-22, still true - CareMore Medical Enterprises (`le:001660`), start 2011-08-22, still true - Carelon (`le:003360`), start 2023-01-01, still true - Centers Plan for Healthy Living + Centers for Specialty Care Group IPA (`le:003823`), start 2024-12-31, still true - Colorado Community Health Alliance (`le:002883`), at least since 2025-12-31, still true - EMPIRE HEALTHCHOICE ASSURANCE, INC. (`le:000586`), start 2006-10-01, no end found (last seen 2024-03-31) - EMPIRE HEALTHCHOICE ASSURANCE, INC. (`le:000586`), at least since 2006-08-01, to 2006-09-30 - EMPIRE HEALTHCHOICE HMO, INC. (`le:000594`), start 2006-10-01, no end found (last seen 2024-03-31) - EMPIRE HEALTHCHOICE HMO, INC. (`le:000594`), at least since 2006-08-01, to 2006-09-30 - Empire BlueCross and BlueShield (`le:000595`), start 2005-12-28, still true - FREEDOM HEALTH PLAN, INC. (`le:001978`), start 2018-02-15, no end found (last seen 2014-03-31) - FREEDOM HEALTH, INC. (`le:000968`), start 2018-04-01, still true - FREEDOM HEALTH, INC. (`le:000968`), start 2018-02-15, still true - FREEDOM HEALTH, INC. (`le:000968`), start 2018-02-15, to 2018-03-31 - Group Retiree Health Solutions, Inc. (`le:002006`), at least since 2021-05-01, still true - HEALTHPLUS HP, LLC (`le:000195`), at least since 2021-01-01, no end found (last seen 2024-03-31) - HEALTHPLUS NY, LLC (`le:002292`), at least since 2015-12-01, no end found (last seen 2015-12-31) - HEALTHSUN HEALTH PLANS, INC. (`le:000972`), start 2017-12-21, still true - HEALTHSUN HEALTH PLANS, INC. (`le:000972`), start 2017-12-21, still true Tools: `resolve_entity(text="Elevance Health, Inc.")`, `describe_entity(entity_id="le:000170", on="YYYY-MM-DD")`. # CIGNA HEALTH AND LIFE INSURANCE COMPANY Vlada entity `le:001476` · legal entity · holds 56 instruments directly **Identifiers.** cms_org_name CIGNA HEALTH AND LIFE INSURANCE COMPANY; ein 591031071; naic 67369 **Owned or controlled by.** - The Cigna Group (`le:000087`), controlled by, at least since 2014-01-01, no end found (last seen 2024-12-31), grade B **Holds.** Marketplace issuer: 56 - Cigna Health and Life Insurance Company (`hios:13207`) - Cigna Health and Life Insurance Company (`hios:13401`) - Cigna Health and Life Insurance Company (`hios:19482`) - Cigna Health and Life Insurance Company (`hios:20427`) - Cigna Health and Life Insurance Company (`hios:23458`) - Cigna Health and Life Insurance Company (`hios:24895`) - Cigna Health and Life Insurance Company (`hios:26933`) - Cigna Health and Life Insurance Company (`hios:30604`) - Cigna Health and Life Insurance Company (`hios:30627`) - Cigna Health and Life Insurance Company (`hios:31744`) - Cigna Health and Life Insurance Company (`hios:32812`) - Cigna Health and Life Insurance Company (`hios:32921`) - Cigna Health and Life Insurance Company (`hios:34772`) - Cigna Health and Life Insurance Company (`hios:34871`) - Cigna Health and Life Insurance Company (`hios:40025`) - Cigna Health and Life Insurance Company (`hios:40411`) - Cigna Health and Life Insurance Company (`hios:41500`) - Cigna Health and Life Insurance Company (`hios:41921`) - Cigna Health and Life Insurance Company (`hios:48121`) - Cigna Health and Life Insurance Company (`hios:48754`) - Cigna Health and Life Insurance Company (`hios:49375`) - Cigna Health and Life Insurance Company (`hios:50491`) - Cigna Health and Life Insurance Company (`hios:52129`) - Cigna Health and Life Insurance Company (`hios:54348`) - Cigna Health and Life Insurance Company (`hios:54362`) - Cigna Health and Life Insurance Company (`hios:55409`) - Cigna Health and Life Insurance Company (`hios:56766`) - Cigna Health and Life Insurance Company (`hios:57017`) - Cigna Health and Life Insurance Company (`hios:60694`) - Cigna Health and Life Insurance Company (`hios:61357`) - Cigna Health and Life Insurance Company (`hios:63326`) - Cigna Health and Life Insurance Company (`hios:63472`) - Cigna Health and Life Insurance Company (`hios:64040`) - Cigna Health and Life Insurance Company (`hios:64536`) - Cigna Health and Life Insurance Company (`hios:64620`) - Cigna Health and Life Insurance Company (`hios:67495`) - Cigna Health and Life Insurance Company (`hios:74483`) - Cigna Health and Life Insurance Company (`hios:75310`) - Cigna Health and Life Insurance Company (`hios:76763`) - Cigna Health and Life Insurance Company (`hios:77663`) - Cigna Health and Life Insurance Company (`hios:80815`) - Cigna Health and Life Insurance Company (`hios:81649`) - Cigna Health and Life Insurance Company (`hios:81808`) - Cigna Health and Life Insurance Company (`hios:85270`) - Cigna Health and Life Insurance Company (`hios:86830`) - Cigna Health and Life Insurance Company (`hios:87354`) - Cigna Health and Life Insurance Company (`hios:90025`) - Cigna Health and Life Insurance Company (`hios:90874`) - Cigna Health and Life Insurance Company (`hios:91365`) - Cigna Health and Life Insurance Company (`hios:92076`) - Cigna Health and Life Insurance Company (`hios:94245`) - Cigna Health and Life Insurance Company (`hios:94419`) - Cigna Health and Life Insurance Company (`hios:94811`) - Cigna Health and Life Insurance Company (`hios:96791`) - Cigna Health and Life Insurance Company (`hios:97549`) - Cigna Health and Life Insurance Company (`hios:99248`) Tools: `resolve_entity(text="CIGNA HEALTH AND LIFE INSURANCE COMPANY")`, `describe_entity(entity_id="le:001476", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE INSURANCE COMPANY Vlada entity `le:000149` · legal entity · holds 55 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE INSURANCE COMPANY; cms_org_name UNITEDHEALTHCARE INSURANCE COMPANY; ein 362739571; naic 79413 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2009-02-01, still true, grade B **Holds.** Marketplace issuer: 50; Medicare contract: 5 - H0294 (`contract:H0294`) - H1537 (`contract:H1537`) - H2385 (`contract:H2385`) - H6824 (`contract:H6824`) - R3175 (`contract:R3175`) - UnitedHealthcare Insurance Company (`hios:12964`) - UnitedHealthcare Insurance Company (`hios:13535`) - UnitedHealthcare Insurance Company (`hios:13947`) - UnitedHealthcare Insurance Company (`hios:18699`) - UnitedHealthcare Insurance Company (`hios:23489`) - UnitedHealthcare Insurance Company (`hios:23620`) - UnitedHealthcare Insurance Company (`hios:25198`) - UnitedHealthcare Insurance Company (`hios:25978`) - UnitedHealthcare Insurance Company (`hios:28773`) - UnitedHealthcare Insurance Company (`hios:31779`) - UnitedHealthcare Insurance Company (`hios:37777`) - UnitedHealthcare Insurance Company (`hios:41842`) - UnitedHealthcare Insurance Company (`hios:43839`) - UnitedHealthcare Insurance Company (`hios:46621`) - UnitedHealthcare Insurance Company (`hios:49650`) - UnitedHealthcare Insurance Company (`hios:49714`) - UnitedHealthcare Insurance Company (`hios:50118`) - UnitedHealthcare Insurance Company (`hios:51889`) - UnitedHealthcare Insurance Company (`hios:54179`) - UnitedHealthcare Insurance Company (`hios:56726`) - UnitedHealthcare Insurance Company (`hios:57860`) - UnitedHealthcare Insurance Company (`hios:59158`) - UnitedHealthcare Insurance Company (`hios:61021`) - UnitedHealthcare Insurance Company (`hios:63631`) - UnitedHealthcare Insurance Company (`hios:67879`) - UnitedHealthcare Insurance Company (`hios:69347`) - UnitedHealthcare Insurance Company (`hios:69443`) - UnitedHealthcare Insurance Company (`hios:69461`) - UnitedHealthcare Insurance Company (`hios:69842`) - UnitedHealthcare Insurance Company (`hios:72850`) - UnitedHealthcare Insurance Company (`hios:73102`) - UnitedHealthcare Insurance Company (`hios:74222`) - UnitedHealthcare Insurance Company (`hios:76311`) - UnitedHealthcare Insurance Company (`hios:76458`) - UnitedHealthcare Insurance Company (`hios:77060`) - UnitedHealthcare Insurance Company (`hios:80049`) - UnitedHealthcare Insurance Company (`hios:81392`) - UnitedHealthcare Insurance Company (`hios:82011`) - UnitedHealthcare Insurance Company (`hios:85757`) - UnitedHealthcare Insurance Company (`hios:88678`) - UnitedHealthcare Insurance Company (`hios:90117`) - UnitedHealthcare Insurance Company (`hios:90175`) - UnitedHealthcare Insurance Company (`hios:90214`) - UnitedHealthcare Insurance Company (`hios:90762`) - UnitedHealthcare Insurance Company (`hios:94968`) - UnitedHealthcare Insurance Company (`hios:95426`) - UnitedHealthcare Insurance Company (`hios:95677`) - UnitedHealthcare Insurance Company (`hios:97462`) - UnitedHealthcare Insurance Company (`hios:98805`) - UnitedHealthcare Insurance Company (`hios:98809`) Tools: `resolve_entity(text="UNITEDHEALTHCARE INSURANCE COMPANY")`, `describe_entity(entity_id="le:000149", on="YYYY-MM-DD")`. # The Prudential Insurance Company of America Vlada entity `le:002535` · legal entity · holds 54 instruments directly **Identifiers.** ein 221211670; ein 221211670; naic 68241; naic 68241 **Holds.** Marketplace issuer: 54 - The Prudential Insurance Company of America (`hios:10083`) - The Prudential Insurance Company of America (`hios:10466`) - The Prudential Insurance Company of America (`hios:14463`) - The Prudential Insurance Company of America (`hios:14970`) - The Prudential Insurance Company of America (`hios:15189`) - The Prudential Insurance Company of America (`hios:16276`) - The Prudential Insurance Company of America (`hios:16685`) - The Prudential Insurance Company of America (`hios:18280`) - The Prudential Insurance Company of America (`hios:19292`) - The Prudential Insurance Company of America (`hios:20248`) - The Prudential Insurance Company of America (`hios:21076`) - The Prudential Insurance Company of America (`hios:21684`) - The Prudential Insurance Company of America (`hios:23775`) - The Prudential Insurance Company of America (`hios:26169`) - The Prudential Insurance Company of America (`hios:28970`) - The Prudential Insurance Company of America (`hios:30612`) - The Prudential Insurance Company of America (`hios:33648`) - The Prudential Insurance Company of America (`hios:34501`) - The Prudential Insurance Company of America (`hios:37515`) - The Prudential Insurance Company of America (`hios:38607`) - The Prudential Insurance Company of America (`hios:38837`) - The Prudential Insurance Company of America (`hios:40813`) - The Prudential Insurance Company of America (`hios:42564`) - The Prudential Insurance Company of America (`hios:44153`) - The Prudential Insurance Company of America (`hios:44234`) - The Prudential Insurance Company of America (`hios:45731`) - The Prudential Insurance Company of America (`hios:47767`) - The Prudential Insurance Company of America (`hios:50544`) - The Prudential Insurance Company of America (`hios:51440`) - The Prudential Insurance Company of America (`hios:52061`) - The Prudential Insurance Company of America (`hios:53377`) - The Prudential Insurance Company of America (`hios:53617`) - The Prudential Insurance Company of America (`hios:55232`) - The Prudential Insurance Company of America (`hios:55413`) - The Prudential Insurance Company of America (`hios:55563`) - The Prudential Insurance Company of America (`hios:58374`) - The Prudential Insurance Company of America (`hios:58440`) - The Prudential Insurance Company of America (`hios:63012`) - The Prudential Insurance Company of America (`hios:63105`) - The Prudential Insurance Company of America (`hios:70663`) - The Prudential Insurance Company of America (`hios:72071`) - The Prudential Insurance Company of America (`hios:77555`) - The Prudential Insurance Company of America (`hios:78290`) - The Prudential Insurance Company of America (`hios:78492`) - The Prudential Insurance Company of America (`hios:83697`) - The Prudential Insurance Company of America (`hios:84391`) - The Prudential Insurance Company of America (`hios:86104`) - The Prudential Insurance Company of America (`hios:86258`) - The Prudential Insurance Company of America (`hios:87739`) - The Prudential Insurance Company of America (`hios:89767`) - The Prudential Insurance Company of America (`hios:90644`) - The Prudential Insurance Company of America (`hios:92660`) - The Prudential Insurance Company of America (`hios:97469`) - The Prudential Insurance Company of America (`hios:99582`) Tools: `resolve_entity(text="The Prudential Insurance Company of America")`, `describe_entity(entity_id="le:002535", on="YYYY-MM-DD")`. # Philadelphia American Life Insurance Company Vlada entity `le:002402` · legal entity · holds 52 instruments directly **Identifiers.** ein 741952955; naic 67784 **Holds.** Marketplace issuer: 52 - Philadelphia American Life Insurance Company (`hios:11483`) - Philadelphia American Life Insurance Company (`hios:11586`) - Philadelphia American Life Insurance Company (`hios:11663`) - Philadelphia American Life Insurance Company (`hios:15406`) - Philadelphia American Life Insurance Company (`hios:16540`) - Philadelphia American Life Insurance Company (`hios:20212`) - Philadelphia American Life Insurance Company (`hios:20630`) - Philadelphia American Life Insurance Company (`hios:21100`) - Philadelphia American Life Insurance Company (`hios:23871`) - Philadelphia American Life Insurance Company (`hios:25997`) - Philadelphia American Life Insurance Company (`hios:26008`) - Philadelphia American Life Insurance Company (`hios:26849`) - Philadelphia American Life Insurance Company (`hios:34445`) - Philadelphia American Life Insurance Company (`hios:35476`) - Philadelphia American Life Insurance Company (`hios:36243`) - Philadelphia American Life Insurance Company (`hios:36918`) - Philadelphia American Life Insurance Company (`hios:39493`) - Philadelphia American Life Insurance Company (`hios:42496`) - Philadelphia American Life Insurance Company (`hios:43134`) - Philadelphia American Life Insurance Company (`hios:44329`) - Philadelphia American Life Insurance Company (`hios:44888`) - Philadelphia American Life Insurance Company (`hios:50346`) - Philadelphia American Life Insurance Company (`hios:50598`) - Philadelphia American Life Insurance Company (`hios:52125`) - Philadelphia American Life Insurance Company (`hios:52229`) - Philadelphia American Life Insurance Company (`hios:52439`) - Philadelphia American Life Insurance Company (`hios:54189`) - Philadelphia American Life Insurance Company (`hios:56473`) - Philadelphia American Life Insurance Company (`hios:56522`) - Philadelphia American Life Insurance Company (`hios:57872`) - Philadelphia American Life Insurance Company (`hios:59642`) - Philadelphia American Life Insurance Company (`hios:62255`) - Philadelphia American Life Insurance Company (`hios:63975`) - Philadelphia American Life Insurance Company (`hios:64274`) - Philadelphia American Life Insurance Company (`hios:64808`) - Philadelphia American Life Insurance Company (`hios:66746`) - Philadelphia American Life Insurance Company (`hios:70636`) - Philadelphia American Life Insurance Company (`hios:71141`) - Philadelphia American Life Insurance Company (`hios:76010`) - Philadelphia American Life Insurance Company (`hios:76125`) - Philadelphia American Life Insurance Company (`hios:79816`) - Philadelphia American Life Insurance Company (`hios:80227`) - Philadelphia American Life Insurance Company (`hios:81740`) - Philadelphia American Life Insurance Company (`hios:82747`) - Philadelphia American Life Insurance Company (`hios:85128`) - Philadelphia American Life Insurance Company (`hios:87445`) - Philadelphia American Life Insurance Company (`hios:89269`) - Philadelphia American Life Insurance Company (`hios:89945`) - Philadelphia American Life Insurance Company (`hios:90711`) - Philadelphia American Life Insurance Company (`hios:94284`) - Philadelphia American Life Insurance Company (`hios:95495`) - Philadelphia American Life Insurance Company (`hios:96346`) Tools: `resolve_entity(text="Philadelphia American Life Insurance Company")`, `describe_entity(entity_id="le:002402", on="YYYY-MM-DD")`. # The United States Life Ins. Co. in the City of New York Vlada entity `le:002461` · legal entity · holds 52 instruments directly **Identifiers.** ein 135459480; naic 70106 **Holds.** Marketplace issuer: 52 - The United States Life Ins. Co. in the City of New York (`hios:10236`) - The United States Life Ins. Co. in the City of New York (`hios:12541`) - The United States Life Ins. Co. in the City of New York (`hios:13592`) - The United States Life Ins. Co. in the City of New York (`hios:19306`) - The United States Life Ins. Co. in the City of New York (`hios:19706`) - The United States Life Ins. Co. in the City of New York (`hios:20498`) - The United States Life Ins. Co. in the City of New York (`hios:21105`) - The United States Life Ins. Co. in the City of New York (`hios:22198`) - The United States Life Ins. Co. in the City of New York (`hios:22442`) - The United States Life Ins. Co. in the City of New York (`hios:23359`) - The United States Life Ins. Co. in the City of New York (`hios:24404`) - The United States Life Ins. Co. in the City of New York (`hios:32169`) - The United States Life Ins. Co. in the City of New York (`hios:34804`) - The United States Life Ins. Co. in the City of New York (`hios:36107`) - The United States Life Ins. Co. in the City of New York (`hios:37236`) - The United States Life Ins. Co. in the City of New York (`hios:37444`) - The United States Life Ins. Co. in the City of New York (`hios:37948`) - The United States Life Ins. Co. in the City of New York (`hios:45422`) - The United States Life Ins. Co. in the City of New York (`hios:45540`) - The United States Life Ins. Co. in the City of New York (`hios:48183`) - The United States Life Ins. Co. in the City of New York (`hios:50877`) - The United States Life Ins. Co. in the City of New York (`hios:51125`) - The United States Life Ins. Co. in the City of New York (`hios:51259`) - The United States Life Ins. Co. in the City of New York (`hios:51575`) - The United States Life Ins. Co. in the City of New York (`hios:52218`) - The United States Life Ins. Co. in the City of New York (`hios:54559`) - The United States Life Ins. Co. in the City of New York (`hios:56645`) - The United States Life Ins. Co. in the City of New York (`hios:58445`) - The United States Life Ins. Co. in the City of New York (`hios:58647`) - The United States Life Ins. Co. in the City of New York (`hios:59639`) - The United States Life Ins. Co. in the City of New York (`hios:60647`) - The United States Life Ins. Co. in the City of New York (`hios:61289`) - The United States Life Ins. Co. in the City of New York (`hios:61965`) - The United States Life Ins. Co. in the City of New York (`hios:62597`) - The United States Life Ins. Co. in the City of New York (`hios:66916`) - The United States Life Ins. Co. in the City of New York (`hios:68903`) - The United States Life Ins. Co. in the City of New York (`hios:69644`) - The United States Life Ins. Co. in the City of New York (`hios:71464`) - The United States Life Ins. Co. in the City of New York (`hios:73078`) - The United States Life Ins. Co. in the City of New York (`hios:74749`) - The United States Life Ins. Co. in the City of New York (`hios:75393`) - The United States Life Ins. Co. in the City of New York (`hios:77064`) - The United States Life Ins. Co. in the City of New York (`hios:79097`) - The United States Life Ins. Co. in the City of New York (`hios:87414`) - The United States Life Ins. Co. in the City of New York (`hios:87756`) - The United States Life Ins. Co. in the City of New York (`hios:88596`) - The United States Life Ins. Co. in the City of New York (`hios:89920`) - The United States Life Ins. Co. in the City of New York (`hios:91946`) - The United States Life Ins. Co. in the City of New York (`hios:93583`) - The United States Life Ins. Co. in the City of New York (`hios:94845`) - The United States Life Ins. Co. in the City of New York (`hios:95255`) - The United States Life Ins. Co. in the City of New York (`hios:96126`) Tools: `resolve_entity(text="The United States Life Ins. Co. in the City of New York")`, `describe_entity(entity_id="le:002461", on="YYYY-MM-DD")`. # CONNECTICUT GENERAL LIFE INSURANCE COMPANY Vlada entity `le:000748` · legal entity · holds 51 instruments directly **Identifiers.** cms_org_name CONNECTICUT GENERAL LIFE INSURANCE COMPANY; ein 060303370; naic 62308 **Owned or controlled by.** - The Cigna Group (`le:000087`), controlled by, at least since 2006-08-01, no end found (last seen 2013-12-31), grade B **Holds.** Marketplace issuer: 51 - Connecticut General Life Insurance Company (`hios:10161`) - Connecticut General Life Insurance Company (`hios:11618`) - Connecticut General Life Insurance Company (`hios:12693`) - Connecticut General Life Insurance Company (`hios:13833`) - Connecticut General Life Insurance Company (`hios:14345`) - Connecticut General Life Insurance Company (`hios:14536`) - Connecticut General Life Insurance Company (`hios:18032`) - Connecticut General Life Insurance Company (`hios:18409`) - Connecticut General Life Insurance Company (`hios:18804`) - Connecticut General Life Insurance Company (`hios:23816`) - Connecticut General Life Insurance Company (`hios:25017`) - Connecticut General Life Insurance Company (`hios:26384`) - Connecticut General Life Insurance Company (`hios:26698`) - Connecticut General Life Insurance Company (`hios:27640`) - Connecticut General Life Insurance Company (`hios:29126`) - Connecticut General Life Insurance Company (`hios:30493`) - Connecticut General Life Insurance Company (`hios:31820`) - Connecticut General Life Insurance Company (`hios:36234`) - Connecticut General Life Insurance Company (`hios:45074`) - Connecticut General Life Insurance Company (`hios:46553`) - Connecticut General Life Insurance Company (`hios:47766`) - Connecticut General Life Insurance Company (`hios:48702`) - Connecticut General Life Insurance Company (`hios:49464`) - Connecticut General Life Insurance Company (`hios:50038`) - Connecticut General Life Insurance Company (`hios:51750`) - Connecticut General Life Insurance Company (`hios:52580`) - Connecticut General Life Insurance Company (`hios:53739`) - Connecticut General Life Insurance Company (`hios:53769`) - Connecticut General Life Insurance Company (`hios:55109`) - Connecticut General Life Insurance Company (`hios:60561`) - Connecticut General Life Insurance Company (`hios:63430`) - Connecticut General Life Insurance Company (`hios:64677`) - Connecticut General Life Insurance Company (`hios:66614`) - Connecticut General Life Insurance Company (`hios:67612`) - Connecticut General Life Insurance Company (`hios:69401`) - Connecticut General Life Insurance Company (`hios:70822`) - Connecticut General Life Insurance Company (`hios:71159`) - Connecticut General Life Insurance Company (`hios:73027`) - Connecticut General Life Insurance Company (`hios:79632`) - Connecticut General Life Insurance Company (`hios:79645`) - Connecticut General Life Insurance Company (`hios:80564`) - Connecticut General Life Insurance Company (`hios:83836`) - Connecticut General Life Insurance Company (`hios:84139`) - Connecticut General Life Insurance Company (`hios:85708`) - Connecticut General Life Insurance Company (`hios:86622`) - Connecticut General Life Insurance Company (`hios:86924`) - Connecticut General Life Insurance Company (`hios:92435`) - Connecticut General Life Insurance Company (`hios:94625`) - Connecticut General Life Insurance Company (`hios:95022`) - Connecticut General Life Insurance Company (`hios:96213`) - Connecticut General Life Insurance Company (`hios:98551`) Tools: `resolve_entity(text="CONNECTICUT GENERAL LIFE INSURANCE COMPANY")`, `describe_entity(entity_id="le:000748", on="YYYY-MM-DD")`. # The Guardian Life Insurance Company of America Vlada entity `le:002393` · legal entity · holds 51 instruments directly **Identifiers.** ein 135123390; naic 64246 **Holds.** Marketplace issuer: 51 - The Guardian Life Insurance Company of America (`hios:10204`) - The Guardian Life Insurance Company of America (`hios:12846`) - The Guardian Life Insurance Company of America (`hios:14711`) - The Guardian Life Insurance Company of America (`hios:15833`) - The Guardian Life Insurance Company of America (`hios:16596`) - The Guardian Life Insurance Company of America (`hios:17454`) - The Guardian Life Insurance Company of America (`hios:17540`) - The Guardian Life Insurance Company of America (`hios:23484`) - The Guardian Life Insurance Company of America (`hios:24847`) - The Guardian Life Insurance Company of America (`hios:27409`) - The Guardian Life Insurance Company of America (`hios:31227`) - The Guardian Life Insurance Company of America (`hios:32561`) - The Guardian Life Insurance Company of America (`hios:33889`) - The Guardian Life Insurance Company of America (`hios:34028`) - The Guardian Life Insurance Company of America (`hios:35897`) - The Guardian Life Insurance Company of America (`hios:38921`) - The Guardian Life Insurance Company of America (`hios:42507`) - The Guardian Life Insurance Company of America (`hios:42640`) - The Guardian Life Insurance Company of America (`hios:42808`) - The Guardian Life Insurance Company of America (`hios:47911`) - The Guardian Life Insurance Company of America (`hios:48786`) - The Guardian Life Insurance Company of America (`hios:49327`) - The Guardian Life Insurance Company of America (`hios:50730`) - The Guardian Life Insurance Company of America (`hios:53694`) - The Guardian Life Insurance Company of America (`hios:55440`) - The Guardian Life Insurance Company of America (`hios:59560`) - The Guardian Life Insurance Company of America (`hios:61779`) - The Guardian Life Insurance Company of America (`hios:62818`) - The Guardian Life Insurance Company of America (`hios:63940`) - The Guardian Life Insurance Company of America (`hios:66440`) - The Guardian Life Insurance Company of America (`hios:66587`) - The Guardian Life Insurance Company of America (`hios:68158`) - The Guardian Life Insurance Company of America (`hios:69227`) - The Guardian Life Insurance Company of America (`hios:69589`) - The Guardian Life Insurance Company of America (`hios:70760`) - The Guardian Life Insurance Company of America (`hios:78581`) - Guardian Life Insurance Company of America (`hios:80608`) - The Guardian Life Insurance Company of America (`hios:81457`) - The Guardian Life Insurance Company of America (`hios:82057`) - The Guardian Life Insurance Company of America (`hios:84939`) - The Guardian Life Insurance Company of America (`hios:85008`) - The Guardian Life Insurance Company of America (`hios:85099`) - The Guardian Life Insurance Company of America (`hios:87390`) - The Guardian Life Insurance Company of America (`hios:90402`) - The Guardian Life Insurance Company of America (`hios:90955`) - The Guardian Life Insurance Company of America (`hios:92866`) - The Guardian Life Insurance Company of America (`hios:93181`) - The Guardian Life Insurance Company of America (`hios:93627`) - The Guardian Life Insurance Company of America (`hios:96480`) - The Guardian Life Insurance Company of America (`hios:97530`) - The Guardian Life Insurance Company of America (`hios:98048`) Tools: `resolve_entity(text="The Guardian Life Insurance Company of America")`, `describe_entity(entity_id="le:002393", on="YYYY-MM-DD")`. # AETNA LIFE INSURANCE COMPANY Vlada entity `le:000168` · legal entity · holds 50 instruments directly **Identifiers.** cms_org_name AETNA LIFE INSURANCE COMPANY; ein 066033492; naic 60054 **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2006-08-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A - WellCare Health Plans, Inc. (`le:000044`), controlled by, start 2019-01-01, to 2019-05-31, grade B **Holds.** Marketplace issuer: 47; Medicare contract: 3 - H5521 (`contract:H5521`) - H5522 (`contract:H5522`) - R6694 (`contract:R6694`) - Aetna Life Insurance Company (`hios:11082`) - Aetna Life Insurance Company (`hios:14030`) - Aetna Life Insurance Company (`hios:17210`) - Aetna Life Insurance Company (`hios:22369`) - Aetna Life Insurance Company (`hios:23841`) - Aetna Life Insurance Company (`hios:27990`) - Aetna Life Insurance Company (`hios:29497`) - Aetna Life Insurance Company (`hios:31552`) - Aetna Life Insurance Company (`hios:32378`) - Aetna Life Insurance Company (`hios:33906`) - Aetna Life Insurance Company (`hios:34673`) - Aetna Life Insurance Company (`hios:38234`) - Aetna Life Insurance Company (`hios:38752`) - Aetna Life Insurance Company (`hios:39041`) - Aetna Life Insurance Company (`hios:39127`) - Aetna Life Insurance Company (`hios:39159`) - Aetna Life Insurance Company (`hios:40733`) - Aetna Life Insurance Company (`hios:44006`) - Aetna Life Insurance Company (`hios:44325`) - Aetna Life Insurance Company (`hios:45059`) - Aetna Life Insurance Company (`hios:48161`) - Aetna Life Insurance Company (`hios:48588`) - Aetna Life Insurance Company (`hios:50318`) - Aetna Life Insurance Company (`hios:52282`) - Aetna Life Insurance Company (`hios:53357`) - Aetna Life Insurance Company (`hios:59699`) - Aetna Life Insurance Company (`hios:61644`) - Aetna Life Insurance Company (`hios:64929`) - Aetna Life Insurance Company (`hios:66946`) - Aetna Life Insurance Company (`hios:67129`) - Aetna Life Insurance Company (`hios:67450`) - Aetna Life Insurance Company (`hios:67504`) - Aetna Life Insurance Company (`hios:70767`) - Aetna Life Insurance Company (`hios:72547`) - Aetna Life Insurance Company (`hios:74221`) - Aetna Life Insurance Company (`hios:77422`) - Aetna Life Insurance Company (`hios:78252`) - Aetna Life Insurance Company (`hios:81068`) - Aetna Life Insurance Company (`hios:83978`) - Aetna Life Insurance Company (`hios:84251`) - Aetna Life Insurance Company (`hios:84600`) - Aetna Life Insurance Company (`hios:84871`) - Aetna Life Insurance Company (`hios:86597`) - Aetna Life Insurance Company (`hios:89217`) - Aetna Life Insurance Company (`hios:91716`) - Aetna Life Insurance Company (`hios:92619`) - Aetna Life Insurance Company (`hios:97781`) Tools: `resolve_entity(text="AETNA LIFE INSURANCE COMPANY")`, `describe_entity(entity_id="le:000168", on="YYYY-MM-DD")`. # UNITED AMERICAN INSURANCE COMPANY Vlada entity `le:002216` · legal entity · holds 50 instruments directly **Identifiers.** cms_org_name UNITED AMERICAN INSURANCE COMPANY; ein 731128555; naic 92916 **Owned or controlled by.** - Torchmark Corporation (`le:001757`), controlled by, at least since 2006-08-01, no end found (last seen 2016-06-30), grade B **Holds.** Marketplace issuer: 50 - United American Insurance Co (`hios:11415`) - United American Insurance Co (`hios:12627`) - United American Insurance Co (`hios:13991`) - United American Insurance Co (`hios:15515`) - United American Insurance Co (`hios:19136`) - United American Insurance Co (`hios:19905`) - United American Insurance Co (`hios:21306`) - United American Insurance Co (`hios:22830`) - United American Insurance Co (`hios:25644`) - United American Insurance Co (`hios:28902`) - United American Insurance Co (`hios:32263`) - United American Insurance Co (`hios:32539`) - United American Insurance Co (`hios:32975`) - United American Insurance Co (`hios:34173`) - United American Insurance Co (`hios:35648`) - United American Insurance Co (`hios:35719`) - United American Insurance Co (`hios:37081`) - United American Insurance Co (`hios:37168`) - United American Insurance Co (`hios:38416`) - United American Insurance Co (`hios:41098`) - United American Insurance Co (`hios:43334`) - United American Insurance Co (`hios:48329`) - United American Insurance Co (`hios:49262`) - United American Insurance Co (`hios:49830`) - United American Insurance Co (`hios:50889`) - United American Insurance Co (`hios:52543`) - United American Insurance Co (`hios:54918`) - United American Insurance Co (`hios:56900`) - United American Insurance Co (`hios:56961`) - United American Insurance Co (`hios:62571`) - United American Insurance Co (`hios:64068`) - United American Insurance Co (`hios:67335`) - United American Insurance Co (`hios:68697`) - United American Insurance Co (`hios:70189`) - United American Insurance Co (`hios:71369`) - United American Insurance Co (`hios:71457`) - United American Insurance Co (`hios:75880`) - United American Insurance Co (`hios:76373`) - United American Insurance Co (`hios:77500`) - United American Insurance Co (`hios:79254`) - United American Insurance Co (`hios:82415`) - United American Insurance Co (`hios:83315`) - United American Insurance Co (`hios:83363`) - United American Insurance Co (`hios:86913`) - United American Insurance Co (`hios:87430`) - United American Insurance Co (`hios:88299`) - United American Insurance Co (`hios:92122`) - United American Insurance Co (`hios:93430`) - United American Insurance Co (`hios:94018`) - United American Insurance Co (`hios:98241`) Tools: `resolve_entity(text="UNITED AMERICAN INSURANCE COMPANY")`, `describe_entity(entity_id="le:002216", on="YYYY-MM-DD")`. # HUMANA INSURANCE COMPANY Vlada entity `le:000040` · legal entity · holds 49 instruments directly **Identifiers.** cms_org_name HUMANA INSURANCE COMPANY; ein 391263473; naic 73288 **Owned or controlled by.** - Humana Inc. (`le:000009`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Marketplace issuer: 41; Medicare contract: 8 - H5216 (`contract:H5216`) - H8145 (`contract:H8145`) - R0110 (`contract:R0110`) - R1532 (`contract:R1532`) - R4182 (`contract:R4182`) - R5361 (`contract:R5361`) - R5826 (`contract:R5826`) - R7220 (`contract:R7220`) - Humana Insurance Company (`hios:14730`) - Humana Insurance Company (`hios:15980`) - Humana Insurance Company (`hios:19968`) - Humana Insurance Company (`hios:20895`) - Humana Insurance Company (`hios:24815`) - Humana Insurance Company (`hios:29797`) - Humana Insurance Company (`hios:30613`) - Humana Insurance Company (`hios:31096`) - Humana Insurance Company (`hios:31358`) - Humana Insurance Company (`hios:33719`) - Humana Insurance Company (`hios:36608`) - Humana Insurance Company (`hios:37001`) - Humana Insurance Company (`hios:41809`) - Humana Insurance Company (`hios:42553`) - Humana Insurance Company (`hios:44580`) - Humana Insurance Company (`hios:45081`) - Humana Insurance Company (`hios:46958`) - Humana Insurance Company (`hios:48963`) - Humana Insurance Company (`hios:49372`) - Humana Insurance Company (`hios:62294`) - Humana Insurance Company (`hios:63141`) - Humana Insurance Company (`hios:64159`) - Humana Insurance Company (`hios:66105`) - Humana Insurance Company (`hios:67499`) - Humana Insurance Company (`hios:68140`) - Humana Insurance Company (`hios:68303`) - Humana Insurance Company (`hios:71260`) - Humana Insurance Company (`hios:71488`) - Humana Insurance Company (`hios:72322`) - Humana Insurance Company (`hios:78462`) - Humana Insurance Company (`hios:79509`) - Humana Insurance Company (`hios:82120`) - Humana Insurance Company (`hios:83581`) - Humana Insurance Company (`hios:84041`) - Humana Insurance Company (`hios:86746`) - Humana Insurance Company (`hios:88426`) - Humana Insurance Company (`hios:90624`) - Humana Insurance Company (`hios:91604`) - Humana Insurance Company (`hios:93593`) - Humana Insurance Company (`hios:97596`) - Humana Insurance Company (`hios:99791`) Tools: `resolve_entity(text="HUMANA INSURANCE COMPANY")`, `describe_entity(entity_id="le:000040", on="YYYY-MM-DD")`. # Reliance Standard Life Insurance Company Vlada entity `le:002453` · legal entity · holds 43 instruments directly **Identifiers.** ein 360883760; naic 68381 **Holds.** Marketplace issuer: 43 - Reliance Standard Life Insurance Company (`hios:11348`) - Reliance Standard Life Insurance Company (`hios:11782`) - Reliance Standard Life Insurance Company (`hios:13285`) - Reliance Standard Life Insurance Company (`hios:17684`) - Reliance Standard Life Insurance Company (`hios:17940`) - Reliance Standard Life Insurance Company (`hios:22600`) - Reliance Standard Life Insurance Company (`hios:25048`) - Reliance Standard Life Insurance Company (`hios:28605`) - Reliance Standard Life Insurance Company (`hios:28732`) - Reliance Standard Life Insurance Company (`hios:32899`) - Reliance Standard Life Insurance Company (`hios:36845`) - Reliance Standard Life Insurance Company (`hios:41967`) - Reliance Standard Life Insurance Company (`hios:42179`) - Reliance Standard Life Insurance Company (`hios:42887`) - Reliance Standard Life Insurance Company (`hios:46016`) - Reliance Standard Life Insurance Company (`hios:46476`) - Reliance Standard Life Insurance Company (`hios:51207`) - Reliance Standard Life Insurance Company (`hios:54890`) - Reliance Standard Life Insurance Company (`hios:55565`) - Reliance Standard Life Insurance Company (`hios:59928`) - Reliance Standard Life Insurance Company (`hios:60190`) - Reliance Standard Life Insurance Company (`hios:63552`) - Reliance Standard Life Insurance Company (`hios:64156`) - Reliance Standard Life Insurance Company (`hios:66915`) - Reliance Standard Life Insurance Company (`hios:68245`) - Reliance Standard Life Insurance Company (`hios:68687`) - Reliance Standard Life Insurance Company (`hios:69758`) - Reliance Standard Life Insurance Company (`hios:70024`) - Reliance Standard Life Insurance Company (`hios:70406`) - Reliance Standard Life Insurance Company (`hios:72254`) - Reliance Standard Life Insurance Company (`hios:72667`) - Reliance Standard Life Insurance Company (`hios:75053`) - Reliance Standard Life Insurance Company (`hios:76197`) - Reliance Standard Life Insurance Company (`hios:76994`) - Reliance Standard Life Insurance Company (`hios:79684`) - Reliance Standard Life Insurance Company (`hios:82827`) - Reliance Standard Life Insurance Company (`hios:84141`) - Reliance Standard Life Insurance Company (`hios:86010`) - Reliance Standard Life Insurance Company (`hios:86572`) - Reliance Standard Life Insurance Company (`hios:87656`) - Reliance Standard Life Insurance Company (`hios:90613`) - Reliance Standard Life Insurance Company (`hios:94322`) - Reliance Standard Life Insurance Company (`hios:96477`) Tools: `resolve_entity(text="Reliance Standard Life Insurance Company")`, `describe_entity(entity_id="le:002453", on="YYYY-MM-DD")`. # Aegon N.V. Vlada entity `le:002227` · legal entity · holds 0 instruments directly and 42 through subsidiaries **Identifiers.** cms_org_name Aegon N.V. **Owns or controls.** - STONEBRIDGE LIFE INSURANCE COMPANY (`le:002226`), at least since 2012-01-01, no end found (last seen 2015-09-30) - TRANSAMERICA LIFE INSURANCE COMPANY (`le:002392`), at least since 2015-10-01, no end found (last seen 2018-12-31) Tools: `resolve_entity(text="Aegon N.V.")`, `describe_entity(entity_id="le:002227", on="YYYY-MM-DD")`. # Devoted Health, Inc. Vlada entity `le:000224` · legal entity · holds 0 instruments directly and 42 through subsidiaries **Identifiers.** cms_org_name Devoted Health, Inc. **Owns or controls.** - DEVOTED HEALTH PLAN OF OREGON (`le:002046`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY (`le:002370`), at least since 2022-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF ALABAMA INC (`le:001293`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF ARIZONA, INC. (`le:002026`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF ARKANSAS INC (`le:002315`), at least since 2025-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF COLORADO INC (`le:001945`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF DELAWARE (`le:001654`), at least since 2026-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF GEORGIA INC (`le:000977`), at least since 2025-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF HAWAII INC (`le:000497`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF INDIANA (`le:002055`), at least since 2025-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF KANSAS (`le:001854`), at least since 2026-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF KENTUCKY INC (`le:001395`), at least since 2025-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF LOUISIANA (`le:002325`), at least since 2026-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF MISSISSIPPI (`le:002053`), at least since 2025-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF NEBRASKA (`le:001279`), at least since 2026-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF OKLAHOMA (`le:002131`), at least since 2026-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF PENNSYLVANIA INC (`le:001419`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF SOUTH CAROLINA INC (`le:002040`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF TENNESSEE INC (`le:001547`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF TEXAS (`le:001101`), at least since 2023-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF UTAH, INC. (`le:000915`), at least since 2026-01-01, still true - DEVOTED HEALTH INSURANCE COMPANY OF WASHINGTON (`le:001534`), at least since 2025-01-01, still true - DEVOTED HEALTH PLAN OF ALABAMA INC (`le:000769`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF ARIZONA, INC. (`le:001183`), at least since 2021-01-01, still true - DEVOTED HEALTH PLAN OF COLORADO INC (`le:002311`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF FLORIDA, INC. (`le:000383`), at least since 2019-01-01, still true - DEVOTED HEALTH PLAN OF HAWAII, INC. (`le:000959`), at least since 2026-01-01, still true - DEVOTED HEALTH PLAN OF ILLINOIS, INC. (`le:002044`), at least since 2022-01-01, still true - DEVOTED HEALTH PLAN OF MISSOURI INC (`le:000223`), at least since 2025-01-01, still true - DEVOTED HEALTH PLAN OF NEW MEXICO, INC. (`le:001304`), at least since 2026-01-01, still true - DEVOTED HEALTH PLAN OF NORTH CAROLINA INC (`le:001273`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF OHIO INC (`le:000487`), at least since 2021-01-01, still true - DEVOTED HEALTH PLAN OF OREGON INC (`le:000754`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF PENNSYLVANIA INC (`le:002033`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF SOUTH CAROLINA INC (`le:000762`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF TENNESSEE INC (`le:001156`), at least since 2023-01-01, still true - DEVOTED HEALTH PLAN OF TEXAS, INC. (`le:001495`), at least since 2020-01-01, still true - DEVOTED HEALTH PLAN OF VIRGINIA INC (`le:002038`), at least since 2026-01-01, still true - Devoted Health Insurance Company of Illinois, Inc. (`le:001083`), at least since 2023-01-01, still true - Devoted Health Insurance of Illinois, Inc. (`le:001439`), at least since 2024-02-01, no end found (last seen 2025-08-31) - Devoted of Illinois, Inc. (`le:002333`), at least since 2025-01-01, still true Tools: `resolve_entity(text="Devoted Health, Inc.")`, `describe_entity(entity_id="le:000224", on="YYYY-MM-DD")`. # TRANSAMERICA LIFE INSURANCE COMPANY Vlada entity `le:002392` · legal entity · holds 42 instruments directly **Identifiers.** cms_org_name TRANSAMERICA LIFE INSURANCE COMPANY; ein 390989781; naic 86231 **Owned or controlled by.** - Aegon N.V. (`le:002227`), controlled by, at least since 2015-10-01, no end found (last seen 2018-12-31), grade B **Holds.** Marketplace issuer: 42 - Transamerica Life Insurance Company (`hios:10201`) - Transamerica Life Insurance Company (`hios:10390`) - Transamerica Life Insurance Company (`hios:14115`) - Transamerica Life Insurance Company (`hios:15331`) - Transamerica Life Insurance Company (`hios:16961`) - Transamerica Life Insurance Company (`hios:18808`) - Transamerica Life Insurance Company (`hios:18846`) - Transamerica Life Insurance Company (`hios:22356`) - Transamerica Life Insurance Company (`hios:23044`) - Transamerica Life Insurance Company (`hios:23913`) - Transamerica Life Insurance Company (`hios:27829`) - Transamerica Life Insurance Company (`hios:28040`) - Transamerica Life Insurance Company (`hios:28330`) - Transamerica Life Insurance Company (`hios:28394`) - Transamerica Life Insurance Company (`hios:30636`) - Transamerica Life Insurance Company (`hios:32853`) - Transamerica Life Insurance Company (`hios:34343`) - Transamerica Life Insurance Company (`hios:37261`) - Transamerica Life Insurance Company (`hios:48003`) - Transamerica Life Insurance Company (`hios:50713`) - Transamerica Life Insurance Company (`hios:51875`) - Transamerica Life Insurance Company (`hios:56552`) - Transamerica Life Insurance Company (`hios:56644`) - Transamerica Life Insurance Company (`hios:58826`) - Transamerica Life Insurance Company (`hios:59128`) - Transamerica Life Insurance Company (`hios:63222`) - Transamerica Life Insurance Company (`hios:67368`) - Transamerica Life Insurance Company (`hios:70450`) - Transamerica Life Insurance Company (`hios:73764`) - Transamerica Life Insurance Company (`hios:74074`) - Transamerica Life Insurance Company (`hios:74754`) - Transamerica Life Insurance Company (`hios:78087`) - Transamerica Life Insurance Company (`hios:79314`) - Transamerica Life Insurance Company (`hios:80255`) - Transamerica Life Insurance Company (`hios:80531`) - Transamerica Life Insurance Company (`hios:85192`) - Transamerica Life Insurance Company (`hios:88985`) - Transamerica Life Insurance Company (`hios:89022`) - Transamerica Life Insurance Company (`hios:91165`) - Transamerica Life Insurance Company (`hios:92915`) - Transamerica Life Insurance Company (`hios:95154`) - Transamerica Life Insurance Company (`hios:99555`) Tools: `resolve_entity(text="TRANSAMERICA LIFE INSURANCE COMPANY")`, `describe_entity(entity_id="le:002392", on="YYYY-MM-DD")`. # Kaiser Foundation Health Plan, Inc. Vlada entity `le:000344` · legal entity · holds 6 instruments directly and 33 through subsidiaries **Identifiers.** cms_org_name KAISER FOUNDATION HP, INC.; cms_org_name Kaiser Foundation Health Plan, Inc.; cms_org_name Kaiser Permanente; ein 941340523; naic 11538 **Owns or controls.** - CARE N' CARE INSURANCE COMPANY OF NORTH CAROLINA (`le:000740`), start 2024-12-01, still true - Cone Health (`le:003822`), start 2024-12-01, still true - GEISINGER COMMUNITY HEALTH SERVICES (`le:000225`), start 2024-06-01, still true - GEISINGER HEALTH PLAN (`le:000662`), start 2024-06-01, still true - GEISINGER INDEMNITY INSURANCE COMPANY (`le:000656`), start 2024-06-01, still true - GEISINGER QUALITY OPTIONS, INC. (`le:001258`), start 2024-06-01, still true - GROUP HEALTH COOPERATIVE (`le:000934`), start 2017-02-01, still true - GROUP HEALTH OPTIONS (`le:002130`), start 2017-02-01, no end found (last seen 2015-12-31) - Geisinger Health (incl. Geisinger Health Plan) (`le:004032`), start 2024-06-01, still true - Geisinger Health System (`le:000448`), start 2024-06-01, still true - Group Health Options, Inc (`le:004170`), at least since 2013-01-01, no end found (last seen 2015-12-31) - HEALTHSPAN INTEGRATED CARE (`le:001064`), at least since 2013-12-01, to 2014-01-31 - HOMETOWN HEALTH PLAN, INC. (`le:000525`), start 2026-03-01, no end found (last seen 2026-08-31) - HTA Holdings, LLC (`le:001280`), start 2024-12-01, still true - KAISER FDTN HLTH PLAN OF THE MID-ATLANTIC STATES (`le:001733`), at least since 2018-01-01, still true - KAISER FNDN HP OF THE MID-ATLANTIC STS (`le:000451`), at least since 2006-08-01, no end found (last seen 2020-12-31) - KAISER FOUNDATION HEALTH PLAN OF NEVADA (`le:001785`), at least since 2026-09-01, still true - KAISER FOUNDATION HEALTH PLAN OF WASHINGTON (`le:001334`), at least since 2017-04-01, still true - KAISER FOUNDATION HEALTH PLAN OF WASHINGTON OPTIONS INC (`le:002376`), at least since 2025-01-01, still true - KAISER FOUNDATION HP OF CO (`le:000084`), at least since 2006-08-01, still true - KAISER FOUNDATION HP OF GA, INC. (`le:001687`), at least since 2006-08-01, still true - KAISER FOUNDATION HP OF OHIO (`le:001432`), at least since 2006-08-01, no end found (last seen 2013-11-30) - KAISER FOUNDATION HP OF THE N W (`le:001229`), at least since 2006-08-01, still true - KAISER PERMANENTE INSURANCE COMPANY (`le:000558`), at least since 2024-01-01, still true - KPS Health Plans (`le:004201`), at least since 2013-01-01, no end found (last seen 2014-12-31) - Risant Health, Inc. (`le:000226`), at least since 2024-06-01, still true **Holds.** Medicare contract: 4; Marketplace issuer: 2 - H0524 (`contract:H0524`) - H1230 (`contract:H1230`) - H2704 (`contract:H2704`) - H8794 (`contract:H8794`) - Kaiser Foundation Health Plan, Inc. (`hios:40513`) - Kaiser Foundation Health Plan, Inc. (`hios:60612`) Tools: `resolve_entity(text="Kaiser Foundation Health Plan, Inc.")`, `describe_entity(entity_id="le:000344", on="YYYY-MM-DD")`. # Molina Healthcare, Inc. Vlada entity `le:000065` · legal entity · holds 0 instruments directly and 39 through subsidiaries **Identifiers.** cms_org_name Molina Healthcare, Inc; cms_org_name Molina Healthcare, Inc.; cms_org_name Molina Healthcare, Inc., **Owns or controls.** - ABRI HEALTH PLAN, INC (`le:001208`), start 2011-02-01, no end found (last seen 2011-04-30) - Alliance for Community Health, L.L.C. (d/b/a Mercy CarePlus) (`le:003885`), start 2007-11-01, still true - AlphaCare Holdings, LLC (`le:001239`), start 2022-01-01, still true - Avatar Partners, LLC (sole shareholder of Abri Health Plan, Inc.) (`le:003909`), start 2010-09-01, still true - Brand New Day and Central Health Plan of California (Bright Health Medicare) (`le:004027`), start 2024-01-01, still true - CARE WISCONSIN HEALTH PLAN, INC. (`le:000944`), start 2023-09-01, no end found (last seen 2021-01-31) - CENTRAL HEALTH PLAN OF CALIFORNIA, INC. (`le:000995`), start 2024-01-01, still true - CONNECTICARE INSURANCE COMPANY, INC. (`le:001436`), start 2025-02-01, still true - CONNECTICARE, INC. (`le:000826`), start 2025-02-01, still true - Care Wisconsin First, Inc. (`le:002241`), start 2023-09-01, still true - ConnectiCare (`le:003824`), start 2025-02-01, still true - ConnectiCare Benefits, Inc. (`le:002550`), start 2025-02-01, still true - ConnectiCare Holding Company, Inc. (`le:003845`), start 2025-02-01, still true - Florida NetPASS, LLC (`le:003903`), start 2009-12-31, still true - HAP Midwest Health Plan, Inc. (Medicaid and MIChild business) (`le:003971`), start 2016-01-01, still true - HCLB, Inc. (parent of Cape Health Plan, Inc.) (`le:003864`), start 2006-05-15, still true - HMO CALIFORNIA (`le:000348`), start 2024-01-01, no end found (last seen 2011-03-31) - MAGELLAN COMPLETE CARE OF ARIZONA, INC. (`le:001217`), start 2020-12-31, no end found (last seen 2021-12-31) - MAGELLAN COMPLETE CARE OF VIRGINIA, LLC. (`le:001154`), start 2020-12-31, no end found (last seen 2021-12-31) - MOLINA HEALTHCARE OF ARIZONA, INC. (`le:002345`), at least since 2022-01-01, still true - MOLINA HEALTHCARE OF CALIFORNIA (`le:000543`), at least since 2006-08-01, still true - MOLINA HEALTHCARE OF FLORIDA, INC. (`le:001509`), at least since 2010-01-01, no end found (last seen 2023-12-31) - MOLINA HEALTHCARE OF ILLINOIS INC (`le:000500`), at least since 2013-01-01, still true - MOLINA HEALTHCARE OF KENTUCKY, INC. (`le:000201`), at least since 2021-10-01, still true - MOLINA HEALTHCARE OF MICHIGAN, INC. (`le:001030`), at least since 2006-08-01, still true - MOLINA HEALTHCARE OF NEVADA INC (`le:000485`), at least since 2007-01-01, still true - MOLINA HEALTHCARE OF NEW MEXICO, INC. (`le:002352`), at least since 2008-01-01, no end found (last seen 2023-12-31) - MOLINA HEALTHCARE OF OHIO, INC. (`le:000066`), at least since 2009-01-01, still true - MOLINA HEALTHCARE OF SOUTH CAROLINA,INC (`le:000283`), at least since 2015-01-01, still true - MOLINA HEALTHCARE OF TEXAS, INC. (`le:001158`), at least since 2008-01-01, still true - MOLINA HEALTHCARE OF UTAH, INC. (`le:001991`), at least since 2006-08-01, still true - MOLINA HEALTHCARE OF VIRGINIA, INC. (`le:002362`), at least since 2017-01-01, no end found (last seen 2018-03-31) - MOLINA HEALTHCARE OF WASHINGTON, INC. (`le:001402`), at least since 2006-08-01, still true - Magellan Complete Care line of business (Magellan Health, Inc.) (`le:004005`), start 2020-12-31, still true - Molina Healthcare of Mississippi, Inc (`le:002760`), at least since 2025-12-31, still true - Molina Healthcare of New Mexico (`le:002831`), at least since 2018-01-01, no end found (last seen 2018-12-31) - Molina Healthcare of Texas (`le:002788`), at least since 2018-01-01, no end found (last seen 2018-12-31) - Molina Healthcare of Utah (`le:002827`), at least since 2018-01-01, no end found (last seen 2018-12-31) - Molina Healthcare of Virginia, LLC (`le:002058`), at least since 2022-01-01, no end found (last seen 2025-06-30) - Molina Healthcare of Wisconsin, Inc. (`le:000948`), at least since 2011-05-01, still true - My Choice Wisconsin Health Plan, Inc. (`le:000949`), start 2023-09-01, no end found (last seen 2024-01-31) - My Choice Wisconsin, Inc. (`le:000945`), start 2023-09-01, still true - Phoenix National Insurance Company (`le:003855`), start 2005-12-30, still true - SENIOR WHOLE HEALTH OF NEW YORK, INC. (`le:001416`), start 2020-12-31, still true - SENIOR WHOLE HEALTH, LLC (`le:000244`), start 2020-12-31, still true - SWH Holdings, Inc. (`le:001532`), start 2020-12-31, still true - TODAY'S OPTIONS OF NEW YORK, INC. (`le:001433`), start 2016-08-01, still true - Today's Options of New York, Inc. (Total Care Medicaid plan) (`le:003975`), start 2016-08-01, still true - UNIVERSAL CARE (`le:000350`), start 2024-01-01, no end found (last seen 2007-01-31) - UNIVERSAL CARE, INC. (`le:000349`), start 2024-01-01, no end found (last seen 2024-12-31) Tools: `resolve_entity(text="Molina Healthcare, Inc.")`, `describe_entity(entity_id="le:000065", on="YYYY-MM-DD")`. # MEDICAL MUTUAL OF OHIO Vlada entity `le:000836` · legal entity · holds 3 instruments directly and 34 through subsidiaries **Identifiers.** cms_org_name MEDICAL MUTUAL OF OHIO; cms_org_name MEDICAL MUTUAL OF OHIO; ein 340648820; naic 29076 **Owns or controls.** - CAROLINA CARE PLAN, INC. (`le:000897`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Consumers Life Insurance Company (`le:002845`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Consumers Life Insurance Company (`le:002845`), at least since 2016-01-01, no end found (last seen 2018-12-31) - MEDICAL MUTUAL (`le:001962`), at least since 2024-06-01, no end found (last seen 2024-07-31) - MedMutual Life Insurance Company (`le:002825`), at least since 2019-01-01, no end found (last seen 2019-12-31) - Medical Health Insuring Corporation of Ohio (`le:002663`), at least since 2013-01-01, still true - PARAMOUNT CARE OF INDIANA, INC. (`le:000956`), start 2024-06-01, no end found (last seen 2024-12-31) - PARAMOUNT CARE, INC. (`le:000617`), start 2024-06-01, still true - PARAMOUNT INSURANCE COMPANY (`le:001600`), start 2024-06-01, still true - Paramount Care of Michigan (`le:002427`), at least since 2013-01-01, no end found (last seen 2015-12-31) - Paramount Care of Michigan (`le:002427`), at least since 2020-01-01, no end found (last seen 2023-12-31) - Paramount Care of Michigan (`le:002427`), at least since 2024-01-01, still true - Reserve National Insurance Company (`le:002474`), at least since 2022-01-01, still true **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H4497 (`contract:H4497`) - H6723 (`contract:H6723`) - Medical Mutual of Ohio (`hios:80627`) Tools: `resolve_entity(text="MEDICAL MUTUAL OF OHIO")`, `describe_entity(entity_id="le:000836", on="YYYY-MM-DD")`. # National Foundation Life Insurance Company Vlada entity `le:002489` · legal entity · holds 35 instruments directly **Identifiers.** ein 731187572; naic 98205 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2019-01-01, still true, grade B **Holds.** Marketplace issuer: 35 - National Foundation Life Insurance Company (`hios:10575`) - National Foundation Life Insurance Company (`hios:14469`) - National Foundation Life Insurance Company (`hios:19013`) - National Foundation Life Insurance Company (`hios:20495`) - National Foundation Life Insurance Company (`hios:21400`) - National Foundation Life Insurance Company (`hios:22718`) - National Foundation Life Insurance Company (`hios:25786`) - National Foundation Life Insurance Company (`hios:27865`) - National Foundation Life Insurance Company (`hios:37352`) - National Foundation Life Insurance Company (`hios:38092`) - National Foundation Life Insurance Company (`hios:38968`) - National Foundation Life Insurance Company (`hios:40373`) - National Foundation Life Insurance Company (`hios:41291`) - National Foundation Life Insurance Company (`hios:42586`) - National Foundation Life Insurance Company (`hios:43105`) - National Foundation Life Insurance Company (`hios:44722`) - National Foundation Life Insurance Company (`hios:46093`) - National Foundation Life Insurance Company (`hios:53258`) - National Foundation Life Insurance Company (`hios:53529`) - National Foundation Life Insurance Company (`hios:54059`) - National Foundation Life Insurance Company (`hios:61170`) - National Foundation Life Insurance Company (`hios:63594`) - National Foundation Life Insurance Company (`hios:68597`) - National Foundation Life Insurance Company (`hios:70000`) - National Foundation Life Insurance Company (`hios:72279`) - National Foundation Life Insurance Company (`hios:72342`) - National Foundation Life Insurance Company (`hios:72981`) - National Foundation Life Insurance Company (`hios:76388`) - National Foundation Life Insurance Company (`hios:77883`) - National Foundation Life Insurance Company (`hios:78544`) - National Foundation Life Insurance Company (`hios:85958`) - National Foundation Life Insurance Company (`hios:87318`) - National Foundation Life Insurance Company (`hios:89643`) - National Foundation Life Insurance Company (`hios:91275`) - National Foundation Life Insurance Company (`hios:94608`) Tools: `resolve_entity(text="National Foundation Life Insurance Company")`, `describe_entity(entity_id="le:002489", on="YYYY-MM-DD")`. # Health Care Service Corporation Vlada entity `le:000089` · legal entity · holds 9 instruments directly and 25 through subsidiaries **Identifiers.** cms_org_name HEALTH CARE SERVICE CORPORATION; cms_org_name Health Care Service Corporation; ein 361236610; naic 70670 **Owns or controls.** - AHS-TULSA OKLAHOMA HEALTH PLAN, INC. (`le:001100`), start 2014-02-01, no end found (last seen 2014-08-31) - AHS-TULSA OKLAHOMA HEALTH PLAN, INC. (`le:001100`), start 2013-12-01, still true - BLUE CROSS AND BLUE SHIELD OF OKLAHOMA (`le:000635`), start 2005-11-01, no end found (last seen 2007-10-31) - BLUE CROSS AND BLUE SHIELD OF OKLAHOMA (`le:000635`), start 2005-11-01, still true - BRAVO HEALTH MID-ATLANTIC, INC. (`le:000229`), start 2025-03-19, still true - BRAVO HEALTH PENNSYLVANIA, INC. (`le:000502`), start 2025-03-19, still true - Blue Cross and Blue Shield of Montana (`le:003938`), start 2013-08-01, still true - CIGNA HEALTHCARE OF COLORADO, INC. (`le:000086`), start 2025-03-19, no end found (last seen 2026-02-28) - GHS HEALTH MAINTENANCE ORGANIZATION, INC. (`le:000873`), at least since 2014-01-01, still true - GHS INSURANCE COMPANY (`le:001320`), at least since 2015-01-01, still true - GHS MANAGED HEALTH CARE PLANS, INC. (`le:002302`), at least since 2014-09-01, no end found (last seen 2017-12-31) - GROUP HEALTH SERVICES OF OKLAHOMA, INC. (`le:001755`), at least since 2006-08-01, no end found (last seen 2007-09-30) - HCSC INSURANCE SERVICES COMPANY (`le:000424`), at least since 2006-08-01, still true - HEALTHSPRING HEALTHCARE OF COLORADO, INC. (`le:000088`), at least since 2026-03-01, still true - HEALTHSPRING LIFE & HEALTH INSURANCE COMPANY, INC. (`le:000237`), start 2025-03-19, still true - HEALTHSPRING OF FLORIDA, INC. (`le:000964`), start 2025-03-19, still true - ILLINOIS BLUE CROSS BLUE SHIELD INSURANCE COMPANY (`le:002339`), at least since 2021-01-01, still true - MEDCO CONTAINMENT LIFE & MEDCO CONTAINMENT NY & HEALTH CARE SERVICE CORPORATION (`le:001608`), at least since 2026-06-01, still true - MEDCO CONTAINMENT LIFE AND MEDCO CONTAINMENT NY (`le:001605`), start 2025-03-19, still true - The Cigna Group Medicare Advantage, Cigna Supplemental Benefits, Medicare Part D and CareAllies businesses (`le:004036`), start 2025-03-19, still true **Holds.** Marketplace issuer: 5; Medicare contract: 4 - H0107 (`contract:H0107`) - H3251 (`contract:H3251`) - H3822 (`contract:H3822`) - H8634 (`contract:H8634`) - Health Care Service Corporation, a Mutual Legal Reserve Company (`hios:30751`) - Health Care Service Corporation, a Mutual Legal Reserve Company (`hios:33602`) - Health Care Service Corporation, a Mutual Legal Reserve Company (`hios:36096`) - Health Care Service Corporation, a Mutual Legal Reserve Company (`hios:75605`) - Health Care Service Corporation, a Mutual Legal Reserve Company (`hios:87571`) Tools: `resolve_entity(text="Health Care Service Corporation")`, `describe_entity(entity_id="le:000089", on="YYYY-MM-DD")`. # Golden Rule Insurance Company Vlada entity `le:002480` · legal entity · holds 33 instruments directly **Identifiers.** ein 376028756; naic 62286 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 33 - Golden Rule Insurance Company (`hios:16900`) - Golden Rule Insurance Company (`hios:17255`) - Golden Rule Insurance Company (`hios:18781`) - Golden Rule Insurance Company (`hios:19951`) - Golden Rule Insurance Company (`hios:21832`) - Golden Rule Insurance Company (`hios:22215`) - Golden Rule Insurance Company (`hios:26847`) - Golden Rule Insurance Company (`hios:32608`) - Golden Rule Insurance Company (`hios:33798`) - Golden Rule Insurance Company (`hios:40591`) - Golden Rule Insurance Company (`hios:41341`) - Golden Rule Insurance Company (`hios:41892`) - Golden Rule Insurance Company (`hios:47949`) - Golden Rule Insurance Company (`hios:51984`) - Golden Rule Insurance Company (`hios:53593`) - Golden Rule Insurance Company (`hios:56643`) - Golden Rule Insurance Company (`hios:59176`) - Golden Rule Insurance Company (`hios:59557`) - Golden Rule Insurance Company (`hios:60037`) - Golden Rule Insurance Company (`hios:62722`) - Golden Rule Insurance Company (`hios:71559`) - Golden Rule Insurance Company (`hios:72269`) - Golden Rule Insurance Company (`hios:72323`) - Golden Rule Insurance Company (`hios:73490`) - Golden Rule Insurance Company (`hios:74304`) - Golden Rule Insurance Company (`hios:74575`) - Golden Rule Insurance Company (`hios:78558`) - Golden Rule Insurance Company (`hios:86508`) - Golden Rule Insurance Company (`hios:89587`) - Golden Rule Insurance Company (`hios:90806`) - Golden Rule Insurance Company (`hios:92113`) - Golden Rule Insurance Company (`hios:97356`) - Golden Rule Insurance Company (`hios:99804`) Tools: `resolve_entity(text="Golden Rule Insurance Company")`, `describe_entity(entity_id="le:002480", on="YYYY-MM-DD")`. # New Era Life Insurance Company Vlada entity `le:002397` · legal entity · holds 32 instruments directly **Identifiers.** ein 742552025; naic 78743 **Holds.** Marketplace issuer: 32 - New Era Life Insurance Company (`hios:15104`) - New Era Life Insurance Company (`hios:28123`) - New Era Life Insurance Company (`hios:32267`) - New Era Life Insurance Company (`hios:33034`) - New Era Life Insurance Company (`hios:33726`) - New Era Life Insurance Company (`hios:35461`) - New Era Life Insurance Company (`hios:36885`) - New Era Life Insurance Company (`hios:47988`) - New Era Life Insurance Company (`hios:53310`) - New Era Life Insurance Company (`hios:55288`) - New Era Life Insurance Company (`hios:55731`) - New Era Life Insurance Company (`hios:56456`) - New Era Life Insurance Company (`hios:61479`) - New Era Life Insurance Company (`hios:67547`) - New Era Life Insurance Company (`hios:67894`) - New Era Life Insurance Company (`hios:70780`) - New Era Life Insurance Company (`hios:72624`) - New Era Life Insurance Company (`hios:72772`) - New Era Life Insurance Company (`hios:77132`) - New Era Life Insurance Company (`hios:78415`) - New Era Life Insurance Company (`hios:79456`) - New Era Life Insurance Company (`hios:81220`) - New Era Life Insurance Company (`hios:81585`) - New Era Life Insurance Company (`hios:81656`) - New Era Life Insurance Company (`hios:82019`) - New Era Life Insurance Company (`hios:82811`) - New Era Life Insurance Company (`hios:90729`) - New Era Life Insurance Company (`hios:92896`) - New Era Life Insurance Company (`hios:94659`) - New Era Life Insurance Company (`hios:97506`) - New Era Life Insurance Company (`hios:98099`) - New Era Life Insurance Company (`hios:99961`) Tools: `resolve_entity(text="New Era Life Insurance Company")`, `describe_entity(entity_id="le:002397", on="YYYY-MM-DD")`. # Globe Life and Accident Insurance Co Vlada entity `le:002468` · legal entity · holds 31 instruments directly **Identifiers.** ein 630782739; naic 91472 **Owned or controlled by.** - Torchmark Corporation (`le:001757`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 31 - Globe Life and Accident Insurance Co (`hios:13137`) - Globe Life and Accident Insurance Co (`hios:13165`) - Globe Life and Accident Insurance Co (`hios:16836`) - Globe Life and Accident Insurance Co (`hios:22703`) - Globe Life and Accident Insurance Co (`hios:28471`) - Globe Life and Accident Insurance Co (`hios:33872`) - Globe Life and Accident Insurance Co (`hios:35617`) - Globe Life and Accident Insurance Co (`hios:38669`) - Globe Life and Accident Insurance Co (`hios:43083`) - Globe Life and Accident Insurance Co (`hios:44416`) - Globe Life and Accident Insurance Co (`hios:55561`) - Globe Life and Accident Insurance Co (`hios:56733`) - Globe Life and Accident Insurance Co (`hios:57898`) - Globe Life and Accident Insurance Co (`hios:59500`) - Globe Life and Accident Insurance Co (`hios:59745`) - Globe Life and Accident Insurance Co (`hios:68685`) - Globe Life and Accident Insurance Co (`hios:72431`) - Globe Life and Accident Insurance Co (`hios:75885`) - Globe Life and Accident Insurance Co (`hios:78590`) - Globe Life and Accident Insurance Co (`hios:79288`) - Globe Life and Accident Insurance Co (`hios:80265`) - Globe Life and Accident Insurance Co (`hios:82236`) - Globe Life and Accident Insurance Co (`hios:85548`) - Globe Life and Accident Insurance Co (`hios:87246`) - Globe Life and Accident Insurance Co (`hios:87645`) - Globe Life and Accident Insurance Co (`hios:88889`) - Globe Life and Accident Insurance Co (`hios:91855`) - Globe Life and Accident Insurance Co (`hios:95411`) - Globe Life and Accident Insurance Co (`hios:96908`) - Globe Life and Accident Insurance Co (`hios:97056`) - Globe Life and Accident Insurance Co (`hios:97130`) Tools: `resolve_entity(text="Globe Life and Accident Insurance Co")`, `describe_entity(entity_id="le:002468", on="YYYY-MM-DD")`. # Reserve National Insurance Company Vlada entity `le:002474` · legal entity · holds 28 instruments directly **Identifiers.** ein 730661453; naic 68462 **Owned or controlled by.** - MEDICAL MUTUAL OF OHIO (`le:000836`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Marketplace issuer: 28 - Reserve National Insurance Company (`hios:11265`) - Reserve National Insurance Company (`hios:19018`) - Reserve National Insurance Company (`hios:20063`) - Reserve National Insurance Company (`hios:24794`) - Reserve National Insurance Company (`hios:33694`) - Reserve National Insurance Company (`hios:35997`) - Reserve National Insurance Company (`hios:36305`) - Reserve National Insurance Company (`hios:38858`) - Reserve National Insurance Company (`hios:44069`) - Reserve National Insurance Company (`hios:45078`) - Reserve National Insurance Company (`hios:46632`) - Reserve National Insurance Company (`hios:46843`) - Reserve National Insurance Company (`hios:48361`) - Reserve National Insurance Company (`hios:51270`) - Reserve National Insurance Company (`hios:54685`) - Reserve National Insurance Company (`hios:56617`) - Reserve National Insurance Company (`hios:58780`) - Reserve National Insurance Company (`hios:61124`) - Reserve National Insurance Company (`hios:65985`) - Reserve National Insurance Company (`hios:81390`) - Reserve National Insurance Company (`hios:81533`) - Reserve National Insurance Company (`hios:87968`) - Reserve National Insurance Company (`hios:91130`) - Reserve National Insurance Company (`hios:92774`) - Reserve National Insurance Company (`hios:92840`) - Reserve National Insurance Company (`hios:93959`) - Reserve National Insurance Company (`hios:96619`) - Reserve National Insurance Company (`hios:97218`) Tools: `resolve_entity(text="Reserve National Insurance Company")`, `describe_entity(entity_id="le:002474", on="YYYY-MM-DD")`. # American Income Life Insurance Co Vlada entity `le:002470` · legal entity · holds 27 instruments directly **Identifiers.** ein 741365936; naic 60577 **Owned or controlled by.** - Torchmark Corporation (`le:001757`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 27 - American Income Life Insurance Co (`hios:11109`) - American Income Life Insurance Co (`hios:16319`) - American Income Life Insurance Co (`hios:19250`) - American Income Life Insurance Co (`hios:26025`) - American Income Life Insurance Co (`hios:27135`) - American Income Life Insurance Co (`hios:28074`) - American Income Life Insurance Co (`hios:28618`) - American Income Life Insurance Co (`hios:29358`) - American Income Life Insurance Co (`hios:37894`) - American Income Life Insurance Co (`hios:45741`) - American Income Life Insurance Co (`hios:50514`) - American Income Life Insurance Co (`hios:58021`) - American Income Life Insurance Co (`hios:60467`) - American Income Life Insurance Co (`hios:62538`) - American Income Life Insurance Co (`hios:66332`) - American Income Life Insurance Co (`hios:72924`) - American Income Life Insurance Co (`hios:76898`) - American Income Life Insurance Co (`hios:79826`) - American Income Life Insurance Co (`hios:80626`) - American Income Life Insurance Co (`hios:85250`) - American Income Life Insurance Co (`hios:85355`) - American Income Life Insurance Co (`hios:87213`) - American Income Life Insurance Co (`hios:87561`) - American Income Life Insurance Co (`hios:88233`) - American Income Life Insurance Co (`hios:92466`) - American Income Life Insurance Co (`hios:98990`) - American Income Life Insurance Co (`hios:99434`) Tools: `resolve_entity(text="American Income Life Insurance Co")`, `describe_entity(entity_id="le:002470", on="YYYY-MM-DD")`. # Freedom Life Insurance Company of America Vlada entity `le:002491` · legal entity · holds 26 instruments directly **Identifiers.** ein 611096685; naic 62324 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2019-01-01, still true, grade B **Holds.** Marketplace issuer: 26 - Freedom Life Insurance Company of America (`hios:10324`) - Freedom Life Insurance Company of America (`hios:18492`) - Freedom Life Insurance Company of America (`hios:19913`) - Freedom Life Insurance Company of America (`hios:22638`) - Freedom Life Insurance Company of America (`hios:28128`) - Freedom Life Insurance Company of America (`hios:28700`) - Freedom Life Insurance Company of America (`hios:40442`) - Freedom Life Insurance Company of America (`hios:47823`) - Freedom Life Insurance Company of America (`hios:53799`) - Freedom Life Insurance Company of America (`hios:54822`) - Freedom Life Insurance Company of America (`hios:55553`) - Freedom Life Insurance Company of America (`hios:58999`) - Freedom Life Insurance Company of America (`hios:61273`) - Freedom Life Insurance Company of America (`hios:65693`) - Freedom Life Insurance Company of America (`hios:68648`) - Freedom Life Insurance Company of America (`hios:72064`) - Freedom Life Insurance Company of America (`hios:72796`) - Freedom Life Insurance Company of America (`hios:75849`) - Freedom Life Insurance Company of America (`hios:78302`) - Freedom Life Insurance Company of America (`hios:80431`) - Freedom Life Insurance Company of America (`hios:82209`) - Freedom Life Insurance Company of America (`hios:82506`) - Freedom Life Insurance Company of America (`hios:89958`) - Freedom Life Insurance Company of America (`hios:93122`) - Freedom Life Insurance Company of America (`hios:95737`) - Freedom Life Insurance Company of America (`hios:96734`) Tools: `resolve_entity(text="Freedom Life Insurance Company of America")`, `describe_entity(entity_id="le:002491", on="YYYY-MM-DD")`. # Medica Holding Company Vlada entity `le:000099` · legal entity · holds 0 instruments directly and 25 through subsidiaries **Identifiers.** cms_org_name Medica Holding Company **Owns or controls.** - DEAN HEALTH INSURANCE, INC. (`le:001772`), start 2021-12-01, still true - DEAN HEALTH PLAN, INC. (`le:001238`), start 2021-12-01, still true - MEDICA CENTRAL HEALTH PLAN (`le:001496`), at least since 2023-10-01, no end found (last seen 2025-12-31) - MEDICA COMMUNITY HEALTH PLAN (`le:000098`), at least since 2020-01-01, no end found (last seen 2023-12-31) - MEDICA HEALTH PLAN (`le:001151`), start 2011-05-01, no end found (last seen 2009-07-31) - MEDICA HEALTH PLAN S OF WISCONSIN (`le:000270`), start 2011-05-01, no end found (last seen 2008-06-30) - MEDICA INSURANCE COMPANY (`le:000272`), start 2011-05-01, still true - Medica (`le:000271`), at least since 2011-05-01, still true - Medica (`le:000271`), start 2011-05-01, still true - Medica Central Insurance Company (`le:002769`), at least since 2023-01-01, still true - SSM HEALTH PLAN (`le:001172`), start 2021-12-01, no end found (last seen 2023-09-30) - SSM Health Insurance Company (`le:002724`), at least since 2021-01-01, no end found (last seen 2022-12-31) - SSM Health Insurance Company (`le:002724`), at least since 2020-01-01, no end found (last seen 2020-12-31) Tools: `resolve_entity(text="Medica Holding Company")`, `describe_entity(entity_id="le:000099", on="YYYY-MM-DD")`. # Trustmark Insurance Company Vlada entity `le:002417` · legal entity · holds 25 instruments directly **Identifiers.** ein 360792925; naic 61425 **Holds.** Marketplace issuer: 25 - Trustmark Insurance Company (`hios:10709`) - Trustmark Insurance Company (`hios:13857`) - Trustmark Insurance Company (`hios:14526`) - Trustmark Insurance Company (`hios:18102`) - Trustmark Insurance Company (`hios:19166`) - Trustmark Insurance Company (`hios:29160`) - Trustmark Insurance Company (`hios:30261`) - Trustmark Insurance Company (`hios:34204`) - Trustmark Insurance Company (`hios:34258`) - Trustmark Insurance Company (`hios:44639`) - Trustmark Insurance Company (`hios:47383`) - Trustmark Insurance Company (`hios:48894`) - Trustmark Insurance Company (`hios:52754`) - Trustmark Insurance Company (`hios:53552`) - Trustmark Insurance Company (`hios:56818`) - Trustmark Insurance Company (`hios:59454`) - Trustmark Insurance Company (`hios:62163`) - Trustmark Insurance Company (`hios:62191`) - Trustmark Insurance Company (`hios:70337`) - Trustmark Insurance Company (`hios:72542`) - Trustmark Insurance Company (`hios:79102`) - Trustmark Insurance Company (`hios:80392`) - Trustmark Insurance Company (`hios:85785`) - Trustmark Insurance Company (`hios:88223`) - Trustmark Insurance Company (`hios:90678`) Tools: `resolve_entity(text="Trustmark Insurance Company")`, `describe_entity(entity_id="le:002417", on="YYYY-MM-DD")`. # Union Fidelity Life Insurance Company Vlada entity `le:002500` · legal entity · holds 25 instruments directly **Identifiers.** ein 310252460; ein 310252460; ein 310252460; naic 62596; naic 62596; naic 62596 **Holds.** Marketplace issuer: 25 - Union Fidelity Life Insurance Company (`hios:12842`) - Union Fidelity Life Insurance Company (`hios:13062`) - Union Fidelity Life Insurance Company (`hios:13506`) - Union Fidelity Life Insurance Company (`hios:14442`) - Union Fidelity Life Insurance Company (`hios:15419`) - Union Fidelity Life Insurance Company (`hios:15569`) - Union Fidelity Life Insurance Company (`hios:21208`) - Union Fidelity Life Insurance Company (`hios:26543`) - Union Fidelity Life Insurance Company (`hios:27512`) - Union Fidelity Life Insurance Company (`hios:30831`) - Union Fidelity Life Insurance Company (`hios:31693`) - Union Fidelity Life Insurance Company (`hios:33027`) - Union Fidelity Life Insurance Company (`hios:36204`) - Union Fidelity Life Insurance Company (`hios:37520`) - Union Fidelity Life Insurance Company (`hios:40857`) - Union Fidelity Life Insurance Company (`hios:44597`) - Union Fidelity Life Insurance Company (`hios:51922`) - Union Fidelity Life Insurance Company (`hios:62376`) - Union Fidelity Life Insurance Company (`hios:63384`) - Union Fidelity Life Insurance Company (`hios:78627`) - Union Fidelity Life Insurance Company (`hios:81915`) - Union Fidelity Life Insurance Company (`hios:86228`) - Union Fidelity Life Insurance Company (`hios:90000`) - Union Fidelity Life Insurance Company (`hios:94875`) - Union Fidelity Life Insurance Company (`hios:98407`) Tools: `resolve_entity(text="Union Fidelity Life Insurance Company")`, `describe_entity(entity_id="le:002500", on="YYYY-MM-DD")`. # Shelter Life Insurance Company Vlada entity `le:002446` · legal entity · holds 23 instruments directly **Identifiers.** ein 430740882; naic 65757 **Holds.** Marketplace issuer: 23 - Shelter Life Insurance Company (`hios:10626`) - Shelter Life Insurance Company (`hios:11722`) - Shelter Life Insurance Company (`hios:13071`) - Shelter Life Insurance Company (`hios:20841`) - Shelter Life Insurance Company (`hios:29514`) - Shelter Life Insurance Company (`hios:36403`) - Shelter Life Insurance Company (`hios:38056`) - Shelter Life Insurance Company (`hios:38433`) - Shelter Life Insurance Company (`hios:39842`) - Shelter Life Insurance Company (`hios:40461`) - Shelter Life Insurance Company (`hios:41555`) - Shelter Life Insurance Company (`hios:42815`) - Shelter Life Insurance Company (`hios:50618`) - Shelter Life Insurance Company (`hios:54570`) - Shelter Life Insurance Company (`hios:58634`) - Shelter Life Insurance Company (`hios:62985`) - Shelter Life Insurance Company (`hios:66885`) - Shelter Life Insurance Company (`hios:67048`) - Shelter Life Insurance Company (`hios:73850`) - Shelter Life Insurance Company (`hios:91732`) - Shelter Life Insurance Company (`hios:95784`) - Shelter Life Insurance Company (`hios:96244`) - Shelter Life Insurance Company (`hios:97877`) Tools: `resolve_entity(text="Shelter Life Insurance Company")`, `describe_entity(entity_id="le:002446", on="YYYY-MM-DD")`. # Highmark Health Vlada entity `le:000653` · legal entity · holds 0 instruments directly and 22 through subsidiaries **Identifiers.** cms_org_name Highmark Health **Owns or controls.** - Blue Cross Blue Shield of Delaware (BCBSD, Inc.) (`le:003920`), start 2013-01-01, still true - Blue Cross of Northeastern Pennsylvania (`le:003960`), start 2015-06-02, still true - First Priority Health (`le:002792`), at least since 2015-01-01, no end found (last seen 2017-12-31) - First Priority Life Insurance Company, Inc. (`le:002705`), at least since 2015-01-01, still true - GATEWAY HEALTH PLAN OF OHIO, INC. (`le:002065`), start 2021-09-07, no end found (last seen 2019-12-31) - Gateway Health (`le:002999`), start 2021-09-07, still true - Gateway Health (`le:002999`), start 2021-09-07, still true - Gateway Health Plan, Inc. (remaining 50%) (`le:004014`), start 2021-09-07, still true - HIGHMARK BCBSD INC. (`le:001180`), at least since 2022-01-01, still true - HIGHMARK CHOICE COMPANY (`le:001839`), at least since 2015-11-01, still true - HIGHMARK HEALTH INSURANCE COMPANY (`le:001335`), start 2013-01-01, no end found (last seen 2013-03-31) - HIGHMARK HEALTH OPTIONS WEST VIRGINIA INC. (`le:001426`), at least since 2026-01-01, still true - HIGHMARK HEALTH SERVICES (`le:000861`), at least since 2013-09-01, no end found (last seen 2013-11-30) - HIGHMARK SENIOR HEALTH COMPANY (`le:000652`), at least since 2015-03-01, still true - HIGHMARK SENIOR RESOURCES INC. (`le:001601`), start 2013-01-01, no end found (last seen 2012-08-31) - HIGHMARK SENIOR SOLUTIONS COMPANY (`le:001336`), at least since 2015-03-01, still true - HIGHMARK, INC. (`le:000188`), start 2013-01-01, still true - HIGHMARK, INC. (`le:000188`), start 2013-01-01, no end found (last seen 2015-02-28) - HM HEALTH INSURANCE COMPANY (`le:000187`), start 2013-01-01, still true - HM Life Insurance Company (`le:004137`), at least since 2013-01-01, no end found (last seen 2014-12-31) - HM Life Insurance Company of New York (`le:004182`), at least since 2013-01-01, no end found (last seen 2014-12-31) - HMO Of Northeastern Pennsylvania, Inc. (`le:002488`), at least since 2019-01-01, still true - Hawaii Management Alliance Association (`le:002690`), at least since 2016-01-01, no end found (last seen 2016-12-31) - HealthNow New York Inc. (BlueCross BlueShield of Western New York; BlueShield of Northeastern New York) (`le:004012`), start 2021-03-01, still true - Highmark Benefits Group Inc. (`le:002483`), at least since 2015-01-01, still true - Highmark Coverage Advantage Inc. (`le:002484`), at least since 2015-01-01, still true - Highmark Select Resources Inc. (`le:002797`), at least since 2016-01-01, no end found (last seen 2019-12-31) - Highmark West Virginia, Inc. (`le:002764`), at least since 2013-01-01, still true - Highmark Western and Northeastern New York Inc. (`le:001743`), at least since 2021-05-01, still true - KEYSTONE HEALTH PLAN WEST, INC. (`le:001840`), start 2013-01-01, no end found (last seen 2015-10-31) - MOUNTAIN STATE BLUE CROSS BLUE SHIELD (`le:001954`), start 2013-01-01, no end found (last seen 2006-12-31) - Santa Cruz-Monterey-Merced Managed Medical Care Commission (`le:002617`), at least since 2016-01-01, no end found (last seen 2016-12-31) - Tufts Health Freedom Insurance Company (`le:002622`), at least since 2016-01-01, no end found (last seen 2016-12-31) Tools: `resolve_entity(text="Highmark Health")`, `describe_entity(entity_id="le:000653", on="YYYY-MM-DD")`. # CARE IMPROVEMENT PLUS SOUTH CENTRAL INSURANCE CO. Vlada entity `le:000032` · legal entity · holds 21 instruments directly **Identifiers.** cms_org_name CARE IMPROVEMENT PLUS SOUTH CENTRAL INSURANCE CO; cms_org_name CARE IMPROVEMENT PLUS SOUTH CENTRAL INSURANCE CO; cms_org_name CARE IMPROVEMENT PLUS SOUTH CENTRAL INSURANCE CO.; cms_org_name Care Improvement Plus South Central Insurance Co. **Owned or controlled by.** - XLHealth Corporation (`le:001574`), controlled by, at least since 2007-01-01, to 2012-01-31, grade B - UnitedHealth Group, Inc. (`le:000013`), controlled by, start 2012-02-01, still true, grade A **Holds.** Medicare contract: 21 - H0421 (`contract:H0421`) - H0710 (`contract:H0710`) - H0755 (`contract:H0755`) - H1278 (`contract:H1278`) - H1659 (`contract:H1659`) - H1889 (`contract:H1889`) - H2292 (`contract:H2292`) - H2406 (`contract:H2406`) - H3256 (`contract:H3256`) - H3418 (`contract:H3418`) - H5008 (`contract:H5008`) - H5322 (`contract:H5322`) - H5435 (`contract:H5435`) - H8211 (`contract:H8211`) - H8768 (`contract:H8768`) - R0759 (`contract:R0759`) - R2604 (`contract:R2604`) - R3444 (`contract:R3444`) - R5342 (`contract:R5342`) - R6801 (`contract:R6801`) - R7444 (`contract:R7444`) Tools: `resolve_entity(text="CARE IMPROVEMENT PLUS SOUTH CENTRAL INSURANCE CO.")`, `describe_entity(entity_id="le:000032", on="YYYY-MM-DD")`. # Independence Health Group, Inc. Vlada entity `le:000317` · legal entity · holds 0 instruments directly and 21 through subsidiaries **Identifiers.** cms_org_name Independence Health Group; cms_org_name Independence Health Group, Inc. **Owns or controls.** - AMERIHEALTH CARITAS FLORIDA, INC. (`le:002023`), at least since 2023-01-01, still true - AMERIHEALTH CARITAS LOUISIANA, INC. (`le:002126`), at least since 2026-01-01, still true - AMERIHEALTH CARITAS NORTH CAROLINA, INC. (`le:002068`), at least since 2026-01-01, still true - AMERIHEALTH DISTRICT OF COLUMBIA, INC. (`le:002338`), at least since 2014-01-01, no end found (last seen 2014-12-31) - AMERIHEALTH HMO, INC. (`le:000553`), start 2014-01-01, no end found (last seen 2016-12-31) - AMERIHEALTH INSURANCE COMPANY OF NEW JERSEY (`le:001359`), at least since 2024-01-01, still true - AMERIHEALTH MICHIGAN, INC. (`le:000314`), start 2016-01-01, to 2018-01-31 - AMERIHEALTH MICHIGAN, INC. (`le:000314`), start 2018-02-01, to 2019-03-31 - AMERIHEALTH MICHIGAN, INC. (`le:000314`), start 2019-04-01, still true - AMERIHEALTH MICHIGAN, INC. (`le:000314`), start 2017-09-01, to 2018-01-31 - AMERIHEALTH MICHIGAN, INC. (`le:000314`), start 2019-03-01, to 2019-03-31 - AMERIHEALTH MICHIGAN, INC. (`le:000314`), at least since 2015-02-01, to 2015-12-31 - AMERIHEALTH OF LOUISIANA, INC. (`le:001704`), at least since 2014-01-01, no end found (last seen 2014-12-31) - AMHP Holdings Corp. (`le:000315`), start 2014-01-01, still true - AmeriHealth (`le:002895`), at least since 2018-01-01, still true - AmeriHealth Caritas Health Plan (`le:003131`), at least since 2019-01-01, still true - AmeriHealth Caritas VIP Next, Inc. (`le:001666`), at least since 2023-01-01, still true - AmeriHealth Mercy Health Plan (`le:000015`), start 2014-01-01, still true - Independence Assurance Company (`le:002842`), at least since 2024-01-01, still true - Independence Blue Cross (`le:000860`), start 2014-01-01, still true - Independence Blue Cross (`le:000860`), start 2014-01-01, still true - Independence Hospital Indemnity Plan, Inc. (`le:002740`), at least since 2014-01-01, no end found (last seen 2018-12-31) - Independence Hospital Indemnity Plan, Inc. (`le:002740`), at least since 2019-01-01, still true - Inter-County Health Plan, Inc (`le:002675`), at least since 2013-01-01, no end found (last seen 2017-12-31) - Inter-County Hospitalization Plan, Inc (`le:002674`), at least since 2013-01-01, no end found (last seen 2017-12-31) - KEYSTONE HEALTH PLAN EAST, INC. (`le:000871`), start 2014-01-01, still true - Keystone Health Plan East (`le:002728`), at least since 2013-01-01, no end found (last seen 2018-12-31) - Keystone Health Plan East (`le:002728`), at least since 2019-01-01, still true - QCC INS CO D/B/A AMERIHEALTH INS CO (`le:001592`), start 2014-01-01, no end found (last seen 2013-02-28) - QCC INSURANCE COMPANY (`le:000014`), start 2014-01-01, still true - QCC INSURANCE COMPANY (`le:000014`), start 2014-01-01, still true - SELECT HEALTH OF SOUTH CAROLINA, INC. (`le:001186`), start 2014-01-01, still true - VISTA HEALTH PLAN, INC. (`le:000695`), start 2014-01-01, still true Tools: `resolve_entity(text="Independence Health Group, Inc.")`, `describe_entity(entity_id="le:000317", on="YYYY-MM-DD")`. # Point32Health, Inc. Vlada entity `le:000047` · legal entity · holds 0 instruments directly and 21 through subsidiaries **Identifiers.** cms_org_name Health Plan Holdings, Inc.; cms_org_name Point32Health, Inc. **Owns or controls.** - CAREPARTNERS OF CONNECTICUT, INC. (`le:000046`), start 2020-12-01, still true - HARVARD PILGRIM HEALTH CARE OF NEW ENGLAND (`le:000456`), start 2021-01-01, no end found (last seen 2006-12-31) - HARVARD PILGRIM HEALTH CARE OF NEW ENGLAND, INC. (`le:002030`), start 2021-01-01, no end found (last seen 2024-12-31) - HPHC Insurance Company, Inc. (`le:002574`), at least since 2013-01-01, still true - Harvard Pilgrim Health Care (`le:000457`), start 2021-01-01, no end found (last seen 2021-12-31) - Harvard Pilgrim Health Care (`le:000457`), start 2021-01-01, still true - NETWORK HEALTH, LLC (`le:002318`), start 2021-01-01, no end found (last seen 2014-07-31) - TUFTS ASSOCIATED HEALTH MAINTENANCE ORGANIZATION (`le:000245`), start 2020-12-01, still true - TUFTS HEALTH PUBLIC PLANS, INC. (`le:001146`), start 2020-12-01, still true - TUFTS INSURANCE COMPANY (`le:001583`), start 2020-12-01, no end found (last seen 2024-12-31) - Tufts Associated HMO, Inc. (`le:000247`), start 2021-01-01, still true - Tufts Associated Health Maintenance Organization, Inc. (`le:002600`), at least since 2013-01-01, still true Tools: `resolve_entity(text="Point32Health, Inc.")`, `describe_entity(entity_id="le:000047", on="YYYY-MM-DD")`. # Aetna Health Inc. (a Pennsylvania corporation) Vlada entity `le:002504` · legal entity · holds 20 instruments directly **Identifiers.** ein 232169745; naic 95109 **Owned or controlled by.** - CVS Health Corporation (`le:000143`), controlled by, at least since 2014-01-01, no end found (last seen 2023-12-31), grade B **Holds.** Marketplace issuer: 20 - Aetna Health Inc. (a Pennsylvania corporation) (`hios:19298`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:32898`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:34822`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:38408`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:38917`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:39670`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:44434`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:57850`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:61671`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:64844`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:66516`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:67190`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:73987`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:76275`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:78611`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:84867`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:93187`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:96992`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:97813`) - Aetna Health Inc. (a Pennsylvania corporation) (`hios:99129`) Tools: `resolve_entity(text="Aetna Health Inc. (a Pennsylvania corporation)")`, `describe_entity(entity_id="le:002504", on="YYYY-MM-DD")`. # Thrivent Financial for Lutherans Vlada entity `le:002418` · legal entity · holds 19 instruments directly **Identifiers.** ein 390123480; naic 56014 **Holds.** Marketplace issuer: 19 - Thrivent Financial for Lutherans (`hios:20515`) - Thrivent Financial for Lutherans (`hios:22974`) - Thrivent Financial for Lutherans (`hios:25678`) - Thrivent Financial for Lutherans (`hios:44462`) - Thrivent Financial for Lutherans (`hios:46284`) - Thrivent Financial for Lutherans (`hios:48504`) - Thrivent Financial for Lutherans (`hios:52450`) - Thrivent Financial for Lutherans (`hios:54551`) - Thrivent Financial for Lutherans (`hios:59321`) - Thrivent Financial for Lutherans (`hios:60589`) - Thrivent Financial for Lutherans (`hios:66351`) - Thrivent Financial for Lutherans (`hios:76153`) - Thrivent Financial for Lutherans (`hios:80977`) - Thrivent Financial for Lutherans (`hios:81755`) - Thrivent Financial for Lutherans (`hios:82949`) - Thrivent Financial for Lutherans (`hios:83349`) - Thrivent Financial for Lutherans (`hios:88036`) - Thrivent Financial for Lutherans (`hios:89622`) - Thrivent Financial for Lutherans (`hios:97682`) Tools: `resolve_entity(text="Thrivent Financial for Lutherans")`, `describe_entity(entity_id="le:002418", on="YYYY-MM-DD")`. # Trinity Health Corporation Vlada entity `le:000146` · legal entity · holds 0 instruments directly and 19 through subsidiaries **Identifiers.** cms_org_name CHE Trinity Health; cms_org_name Trinity Health; cms_org_name Trinity Health; cms_org_name Trinity Health Corporation **Owns or controls.** - CAPITAL HEALTH LIFE (`le:000145`), at least since 2023-02-01, to 2023-03-31 - Catholic Health East (`le:000822`), start 2013-05-01, still true - LIFE AT LOURDES, INC. (`le:000609`), start 2013-05-01, still true - LIFE AT ST. FRANCIS HEALTHCARE, INC. (`le:000980`), start 2013-05-01, still true - LIFE ST. FRANCIS (`le:000373`), start 2013-05-01, no end found (last seen 2023-01-31) - LIFE ST. JOSEPH OF THE PINES, INC. (`le:000177`), start 2016-09-01, still true - LIFE ST. MARY (`le:001085`), start 2016-10-01, still true - MERCY LIFE OF ALABAMA (`le:001842`), start 2016-10-01, still true - MERCY LIFE, INC. (`le:000100`), start 2018-08-01, still true - MOUNT CARMEL HEALTH INSURANCE COMPANY (`le:000206`), at least since 2009-01-01, still true - MOUNT CARMEL HEALTH PLAN OF CONNECTICUT INC (`le:001073`), at least since 2023-01-01, no end found (last seen 2024-12-31) - MOUNT CARMEL HEALTH PLAN OF IDAHO, INC. (`le:001456`), at least since 2020-01-01, still true - MOUNT CARMEL HEALTH PLAN OF NEW YORK, INC. (`le:002367`), at least since 2022-01-01, still true - MOUNT CARMEL HEALTH PLAN, INC. (`le:000627`), at least since 2013-08-01, still true - MT. CARMEL HEALTH PLAN, INC. (`le:000628`), at least since 2006-08-01, no end found (last seen 2013-07-31) - Mercy LIFE (`le:000865`), at least since 2021-09-01, still true - Mercy Medical (`le:001843`), at least since 2016-10-01, still true - SAINT JOSEPH PACE (`le:002369`), at least since 2016-08-01, still true - SENIOR CARE CONNECTION, INC. (`le:000576`), start 2022-02-01, still true - ST AGNES MEDICAL CENTER (`le:000866`), start 2015-04-01, no end found (last seen 2008-09-30) - ST. AGNES CONTINUING CARE CENTER (`le:000655`), start 2015-04-01, no end found (last seen 2021-08-31) - Sisters of Providence Care Centers, Inc. (`le:000101`), at least since 2018-08-01, still true - St Joseph of the Pines, Inc. (`le:001894`), at least since 2016-09-01, still true - St. Mary Medical Center (`le:001086`), at least since 2016-10-01, still true - TRINITY HEALTH LIFE PENNSYLVANIA, INC. (`le:002170`), at least since 2016-04-01, still true - TRINITY HEALTH PACE OF ALEXANDRIA (`le:001697`), at least since 2024-06-01, still true - TRINITY HEALTH PACE OF MONTGOMERY COUNTY (`le:002018`), at least since 2024-11-01, still true - TRINITY HEALTH PACE OF PENSACOLA (`le:000986`), at least since 2024-02-01, still true - TRINITY HEALTH PLAN OF MICHIGAN INC (`le:002092`), at least since 2024-01-01, still true Tools: `resolve_entity(text="Trinity Health Corporation")`, `describe_entity(entity_id="le:000146", on="YYYY-MM-DD")`. # American Family Mutual Insurance Company, S.I. Vlada entity `le:002533` · legal entity · holds 18 instruments directly **Identifiers.** ein 390273710; ein 390273710; naic 19275; naic 19275 **Holds.** Marketplace issuer: 18 - American Family Mutual Insurance Company, S.I. (`hios:11844`) - American Family Mutual Insurance Company, S.I. (`hios:12005`) - American Family Mutual Insurance Company, S.I. (`hios:17473`) - American Family Mutual Insurance Company (`hios:18519`) - American Family Mutual Insurance Company (`hios:20467`) - American Family Mutual Insurance Company, S.I. (`hios:22796`) - American Family Mutual Insurance Company, S.I. (`hios:32531`) - American Family Mutual Insurance Company (`hios:35503`) - American Family Mutual Insurance Company, S.I. (`hios:36289`) - American Family Mutual Insurance Company, S.I. (`hios:43226`) - American Family Mutual Insurance Company (`hios:43741`) - American Family Mutual Insurance Company, S.I. (`hios:53753`) - American Family Mutual Insurance Company, S.I. (`hios:57721`) - American Family Mutual Insurance Company, S.I. (`hios:68713`) - American Family Mutual Insurance Company, S.I. (`hios:71147`) - American Family Mutual Insurance Company (`hios:81544`) - American Family Mutual Insurance Company, S.I. (`hios:86082`) - American Family Mutual Insurance Company, S.I. (`hios:97955`) Tools: `resolve_entity(text="American Family Mutual Insurance Company, S.I.")`, `describe_entity(entity_id="le:002533", on="YYYY-MM-DD")`. # Cambia Health Solutions, Inc. Vlada entity `le:000385` · legal entity · holds 0 instruments directly and 18 through subsidiaries **Identifiers.** cms_org_name Cambia Health Solutions, Inc.; cms_org_name The Regence Group **Owns or controls.** - ASURIS NORTHWEST HEALTH (`le:001328`), at least since 2006-08-01, still true - Arkansas Blue Cross and Blue Shield, A Mutual Insurance Company (`le:004039`), start 2026-10-01, still true - Blue Cross Blue Shield of North Dakota (`le:002721`), start 2026-02-01, still true - REGENCE BLUECROSS BLUESHIELD OF OR (`le:000856`), at least since 2006-08-01, no end found (last seen 2013-03-31) - REGENCE BLUECROSS BLUESHIELD OF OREGON (`le:000648`), at least since 2006-08-01, still true - REGENCE BLUECROSS BLUESHIELD OF UT (`le:000730`), at least since 2006-08-01, no end found (last seen 2013-03-31) - REGENCE BLUECROSS BLUESHIELD OF UTAH (`le:001541`), at least since 2013-04-01, still true - REGENCE BLUESHIELD (`le:001327`), at least since 2006-08-01, still true - REGENCE BLUESHIELD OF IDAHO & REGENCE BCBS OF UTAH (`le:001763`), at least since 2012-04-01, no end found (last seen 2013-07-31) - REGENCE BLUESHIELD OF IDAHO AND REGENCE BC BS UTAH (`le:002219`), at least since 2013-08-01, still true - REGENCE BLUESHIELD OF IDAHO, INC. (`le:000384`), at least since 2006-08-01, still true - REGENCE LIFE AND HEALTH INSURANCE COMPANY (`le:001764`), at least since 2006-08-01, no end found (last seen 2012-03-31) Tools: `resolve_entity(text="Cambia Health Solutions, Inc.")`, `describe_entity(entity_id="le:000385", on="YYYY-MM-DD")`. # American General Life Insurance Company Vlada entity `le:002463` · legal entity · holds 17 instruments directly **Identifiers.** ein 250598210; naic 60488 **Holds.** Marketplace issuer: 17 - American General Life Insurance Company (`hios:11461`) - American General Life Insurance Company (`hios:14290`) - American General Life Insurance Company (`hios:17886`) - American General Life Insurance Company (`hios:18355`) - American General Life Insurance Company (`hios:20680`) - American General Life Insurance Company (`hios:21566`) - American General Life Insurance Company (`hios:25694`) - American General Life Insurance Company (`hios:34044`) - American General Life Insurance Company (`hios:34598`) - American General Life Insurance Company (`hios:40129`) - American General Life Insurance Company (`hios:52141`) - American General Life Insurance Company (`hios:52748`) - American General Life Insurance Company (`hios:74719`) - American General Life Insurance Company (`hios:82430`) - American General Life Insurance Company (`hios:83977`) - American General Life Insurance Company (`hios:90424`) - American General Life Insurance Company (`hios:98218`) Tools: `resolve_entity(text="American General Life Insurance Company")`, `describe_entity(entity_id="le:002463", on="YYYY-MM-DD")`. # BCS Insurance Company Vlada entity `le:002398` · legal entity · holds 17 instruments directly **Identifiers.** ein 366033921; naic 38245 **Holds.** Marketplace issuer: 17 - BCS Insurance Company (`hios:10829`) - BCS Insurance Company (`hios:13613`) - BCS Insurance Company (`hios:19190`) - BCS Insurance Company (`hios:19252`) - BCS Insurance Company (`hios:22353`) - BCS Insurance Company (`hios:23437`) - BCS Insurance Company (`hios:47135`) - BCS Insurance Company (`hios:56551`) - BCS Insurance Company (`hios:59300`) - BCS Insurance Company (`hios:70066`) - BCS Insurance Company (`hios:74653`) - BCS Insurance Company (`hios:75028`) - BCS Insurance Company (`hios:77255`) - BCS Insurance Company (`hios:89455`) - BCS Insurance Company (`hios:89851`) - BCS Insurance Company (`hios:92398`) - BCS Insurance Company (`hios:94274`) Tools: `resolve_entity(text="BCS Insurance Company")`, `describe_entity(entity_id="le:002398", on="YYYY-MM-DD")`. # CareSource Vlada entity `le:000017` · legal entity · holds 1 instruments directly and 14 through subsidiaries **Identifiers.** cms_org_name CARESOURCE; cms_org_name CareSource; cms_org_name CareSource; cms_org_name CareSource Management Group Co.; ein 311143265; naic 95201 **Owns or controls.** - CARESOURCE GEORGIA CO. (`le:002070`), at least since 2021-01-01, still true - CARESOURCE INDIANA, INC. (`le:001125`), at least since 2016-01-01, no end found (last seen 2023-12-31) - CARESOURCE KENTUCKY CO. (`le:000402`), at least since 2016-01-01, no end found (last seen 2022-12-31) - CARESOURCE MICHIGAN (`le:001648`), at least since 2008-10-01, no end found (last seen 2012-10-31) - CARESOURCE OHIO, INC. (`le:001198`), at least since 2020-11-01, still true - CCA HEALTH MICHIGAN, INC. (`le:001569`), start 2025-04-09, no end found (last seen 2024-12-31) - CCA HEALTH PLANS OF CALIFORNIA, INC. (`le:000171`), start 2025-04-09, no end found (last seen 2024-12-31) - COMMONWEALTH CARE ALLIANCE, INC. (`le:000016`), start 2025-04-09, still true - COMMONWEALTH CARE ALLIANCE, INC. (`le:000016`), start 2025-04-09, still true - COMMUNITY CARE HEALTH PLAN, INC. (`le:000222`), start 2026-04-01, still true - COMMUNITY CARE, INC. (`le:000445`), start 2026-04-01, still true - COMMUNITY CARE, INC. (`le:000445`), start 2026-04-01, still true - COMMUNITY CHOICE MICHIGAN (`le:001649`), start 2008-09-01, no end found (last seen 2008-09-30) - CareSource North Carolina Co. (`le:002767`), at least since 2023-01-01, still true - CareSource West Virginia Co. (`le:002657`), at least since 2020-01-01, still true - Common Ground Healthcare Cooperative (`le:002496`), start 2025-01-01, still true - Commonwealth Care Alliance Massachusetts, LLC. (`le:001259`), start 2025-04-09, no end found (last seen 2024-12-31) - Commonwealth Care Alliance Rhode Island, LLC (`le:000353`), start 2025-04-09, no end found (last seen 2024-12-31) - ELDERSERVE HEALTH, INC. (`le:001095`), start 2025-09-01, still true - ELDERSERVE HEALTH, INC. (`le:001095`), start 2025-09-01, still true - RELIANCE HMO, INC. (`le:001570`), start 2025-04-09, no end found (last seen 2022-08-31) - VITALITY HEALTH PLAN OF CALIFORNIA, INC. (`le:001892`), start 2025-04-09, no end found (last seen 2022-06-30) - VITALITY HEALTH PLAN OF CALIFORNIA, INC. (`le:001892`), start 2025-04-09, still true **Holds.** Marketplace issuer: 1 - CareSource (`hios:77552`) Tools: `resolve_entity(text="CareSource")`, `describe_entity(entity_id="le:000017", on="YYYY-MM-DD")`. # CELTIC INSURANCE COMPANY Vlada entity `le:000733` · legal entity · holds 15 instruments directly **Identifiers.** cms_org_name CELTIC INSURANCE COMPANY; ein 060641618; naic 80799 **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Marketplace issuer: 14; Medicare contract: 1 - H4661 (`contract:H4661`) - Celtic Insurance Company (`hios:21663`) - Celtic Insurance Company (`hios:27833`) - Celtic Insurance Company (`hios:29418`) - Celtic Insurance Company (`hios:34368`) - Celtic Insurance Company (`hios:44007`) - Celtic Insurance Company (`hios:53932`) - Celtic Insurance Company (`hios:62141`) - Celtic Insurance Company (`hios:62505`) - Celtic Insurance Company (`hios:64004`) - Celtic Insurance Company (`hios:69406`) - Celtic Insurance Company (`hios:70111`) - Celtic Insurance Company (`hios:75841`) - Celtic Insurance Company (`hios:76179`) - Celtic Insurance Company (`hios:99723`) Tools: `resolve_entity(text="CELTIC INSURANCE COMPANY")`, `describe_entity(entity_id="le:000733", on="YYYY-MM-DD")`. # KAISER PERMANENTE INSURANCE COMPANY Vlada entity `le:000558` · legal entity · holds 15 instruments directly **Identifiers.** cms_org_name KAISER PERMANENTE INSURANCE COMPANY; ein 943203402; naic 60053 **Owned or controlled by.** - Kaiser Foundation Health Plan, Inc. (`le:000344`), controlled by, at least since 2024-01-01, still true, grade B **Holds.** Marketplace issuer: 13; Medicare contract: 2 - H3138 (`contract:H3138`) - S0262 (`contract:S0262`) - Kaiser Permanente Insurance Company (`hios:27330`) - Kaiser Permanente Insurance Company (`hios:27555`) - Kaiser Permanente Insurance Company (`hios:29740`) - Kaiser Permanente Insurance Company (`hios:32032`) - Kaiser Permanente Insurance Company (`hios:32274`) - Kaiser Permanente Insurance Company (`hios:35585`) - Kaiser Permanente Insurance Company (`hios:35944`) - Kaiser Permanente Insurance Company (`hios:44023`) - Kaiser Permanente Insurance Company (`hios:44741`) - Kaiser Permanente Insurance Company (`hios:60861`) - Kaiser Permanente Insurance Company (`hios:71562`) - Kaiser Permanente Insurance Company (`hios:80402`) - Kaiser Permanente Insurance Company (`hios:82302`) Tools: `resolve_entity(text="KAISER PERMANENTE INSURANCE COMPANY")`, `describe_entity(entity_id="le:000558", on="YYYY-MM-DD")`. # Guidewell Mutual Holding Corporation Vlada entity `le:000505` · legal entity · holds 0 instruments directly and 14 through subsidiaries **Identifiers.** cms_org_name Guidewell Mutual Holding Corporation **Owns or controls.** - AMERICAN HEALTH, INC. (`le:001007`), start 2022-02-01, no end found (last seen 2014-07-31) - AUXILIO PLATINO, INC. (`le:001396`), start 2022-02-01, no end found (last seen 2009-02-28) - American Health Plan (`le:001999`), start 2022-02-01, still true - BEHEALTHY AMERICA, INC. (`le:000503`), start 2015-08-01, no end found (last seen 2015-08-31) - BEHEALTHY FLORIDA, INC. (`le:000504`), at least since 2015-09-01, no end found (last seen 2019-12-31) - BLUE CROSS AND BLUE SHIELD OF FL, INC. (`le:001309`), start 2014-01-01, no end found (last seen 2012-04-30) - BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC. (`le:000973`), start 2014-01-01, still true - BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC. (`le:000973`), start 2014-01-01, still true - BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC. (`le:000973`), start 2014-01-01, still true - BLUE CROSS BLUE SHIELD OF FLORIDA, INC. (`le:001813`), start 2014-01-01, no end found (last seen 2010-12-31) - Blue Shield of Puerto Rico (`le:000880`), start 2022-02-01, still true - CAPITAL HEALTH PLAN (`le:001408`), start 2014-01-01, still true - FLORIDA BLUE MEDICARE, INC. (`le:001683`), at least since 2019-07-01, still true - FLORIDA HEALTH CARE PLAN, INC. (`le:000124`), start 2014-01-01, no end found (last seen 2018-06-30) - FLORIDA HEALTH CARE PLAN, INC. (`le:000124`), start 2014-01-01, still true - Government Health Plan Triple S Salud (`le:003391`), start 2022-02-01, no end found (last seen 2015-03-31) - HEALTH OPTIONS, INC. (`le:001680`), start 2014-01-01, no end found (last seen 2019-06-30) - Socios Mayores en Salud Holdings Inc. (`le:002273`), start 2022-02-01, still true - Socios Mayores en Salud Holdings Inc. (`le:002273`), start 2022-02-01, still true - TRIPLE S ADVANTAGE, INC. (`le:000673`), start 2022-02-01, still true - TRIPLE-S, INC. (`le:000678`), start 2022-02-01, no end found (last seen 2009-02-28) - Triple-S Management Corporation (`le:000674`), start 2022-02-01, still true Tools: `resolve_entity(text="Guidewell Mutual Holding Corporation")`, `describe_entity(entity_id="le:000505", on="YYYY-MM-DD")`. # Mutual of Omaha Insurance Company Vlada entity `le:001316` · legal entity · holds 14 instruments directly **Identifiers.** cms_org_name Mutual of Omaha Insurance Company; ein 470246511; naic 71412 **Owns or controls.** - MEDICARE ADVANTAGE INSURANCE COMPANY OF OMAHA (`le:001315`), at least since 2020-01-01, no end found (last seen 2020-12-31) - MUTUAL OF OMAHA MEDICARE ADVANTAGE COMPANY (`le:002305`), at least since 2019-01-01, no end found (last seen 2020-12-31) - OMAHA HEALTH INSURANCE COMPANY (`le:002384`), at least since 2019-01-01, no end found (last seen 2024-12-31) **Holds.** Marketplace issuer: 14 - Mutual of Omaha Insurance Company (`hios:13099`) - Mutual of Omaha Insurance Company (`hios:14091`) - Mutual of Omaha Insurance Company (`hios:20294`) - Mutual of Omaha Insurance Company (`hios:26410`) - Mutual of Omaha Insurance Company (`hios:31204`) - Mutual of Omaha Insurance Company (`hios:39786`) - Mutual of Omaha Insurance Company (`hios:48149`) - Mutual of Omaha Insurance Company (`hios:58929`) - Mutual of Omaha Insurance Company (`hios:68653`) - Mutual of Omaha Insurance Company (`hios:68963`) - Mutual of Omaha Insurance Company (`hios:69094`) - Mutual of Omaha Insurance Company (`hios:74273`) - Mutual of Omaha Insurance Company (`hios:84752`) - Mutual of Omaha Insurance Company (`hios:93142`) Tools: `resolve_entity(text="Mutual of Omaha Insurance Company")`, `describe_entity(entity_id="le:001316", on="YYYY-MM-DD")`. # Nippon Life Insurance Company of America Vlada entity `le:002433` · legal entity · holds 13 instruments directly **Identifiers.** ein 042509896; naic 81264 **Holds.** Marketplace issuer: 13 - Nippon Life Insurance Company of America (`hios:12442`) - Nippon Life Insurance Company of America (`hios:14820`) - Nippon Life Insurance Company of America (`hios:17032`) - Nippon Life Insurance Company of America (`hios:39433`) - Nippon Life Insurance Company of America (`hios:45125`) - Nippon Life Insurance Company of America (`hios:53586`) - Nippon Life Insurance Company of America (`hios:56073`) - Nippon Life Insurance Company of America (`hios:59140`) - Nippon Life Insurance Company of America (`hios:61923`) - Nippon Life Insurance Company of America (`hios:68934`) - Nippon Life Insurance Company of America (`hios:69194`) - Nippon Life Insurance Company of America (`hios:88713`) - Nippon Life Insurance Company of America (`hios:98761`) Tools: `resolve_entity(text="Nippon Life Insurance Company of America")`, `describe_entity(entity_id="le:002433", on="YYYY-MM-DD")`. # American States Insurance Company Vlada entity `le:002442` · legal entity · holds 12 instruments directly **Identifiers.** ein 350145400; naic 19704 **Holds.** Marketplace issuer: 12 - American States Insurance Company (`hios:13685`) - American States Insurance Company (`hios:15096`) - American States Insurance Company (`hios:18696`) - American States Insurance Company (`hios:37362`) - American States Insurance Company (`hios:40315`) - American States Insurance Company (`hios:50823`) - American States Insurance Company (`hios:51184`) - American States Insurance Company (`hios:58135`) - American States Insurance Company (`hios:70738`) - American States Insurance Company (`hios:72235`) - American States Insurance Company (`hios:74564`) - American States Insurance Company (`hios:90222`) Tools: `resolve_entity(text="American States Insurance Company")`, `describe_entity(entity_id="le:002442", on="YYYY-MM-DD")`. # Blue Cross Blue Shield of Michigan Mutual Ins. Co. Vlada entity `le:001021` · legal entity · holds 3 instruments directly and 9 through subsidiaries **Identifiers.** cms_org_name BCBS OF MICHIGAN MUTUAL INSURANCE COMPANY; cms_org_name BLUE CROSS BLUE SHIELD OF MICHIGAN; cms_org_name Blue Cross Blue Shield of Michigan; cms_org_name Blue Cross Blue Shield of Michigan Mutual Ins. Co.; cms_org_name Blue Cross Blue Shield of Michigan Mutual Insuranc; ein 382069753; naic 54291 **Owns or controls.** - BLUE CARE NETWORK OF MICHIGAN (`le:001020`), at least since 2006-08-01, still true - Blue Cross and Blue Shield of Vermont (`le:002636`), start 2023-10-11, still true - NEXTBLUE OF NORTH DAKOTA INSURANCE COMPANY (`le:002015`), at least since 2021-01-01, still true - The Vermont Health Plan, LLC (`le:002571`), at least since 2013-01-01, no end found (last seen 2022-12-31) - The Vermont Health Plan, LLC (`le:002571`), at least since 2023-01-01, still true - VERMONT BLUE ADVANTAGE, INC. (`le:001633`), at least since 2021-01-01, still true - WELLMARK ADVANTAGE HEALTH PLAN, INC. (`le:001026`), at least since 2022-01-01, still true - WYOBLUE ADVANTAGE INC (`le:002359`), at least since 2026-01-01, still true **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H9572 (`contract:H9572`) - S5584 (`contract:S5584`) - Blue Cross Blue Shield of Michigan Mutual Insurance Company (`hios:15560`) Tools: `resolve_entity(text="Blue Cross Blue Shield of Michigan Mutual Ins. Co.")`, `describe_entity(entity_id="le:001021", on="YYYY-MM-DD")`. # HUMANA HEALTH PLAN, INC. Vlada entity `le:000163` · legal entity · holds 12 instruments directly **Identifiers.** cms_org_name HUMANA HEALTH PLAN, INC.; ein 611013183; naic 95885 **Owned or controlled by.** - Humana Inc. (`le:000009`), controlled by, at least since 2006-08-01, still true, grade B - UnitedHealth Group, Inc. (`le:000013`), controlled by, start 2008-05-01, to 2008-05-31, grade B **Holds.** Marketplace issuer: 11; Medicare contract: 1 - H5178 (`contract:H5178`) - Humana Health Plan, Inc. (`hios:15411`) - Humana Health Plan, Inc. (`hios:23307`) - Humana Health Plan, Inc. (`hios:43442`) - Humana Health Plan, Inc. (`hios:49857`) - Humana Health Plan, Inc. (`hios:58003`) - Humana Health Plan, Inc. (`hios:58288`) - Humana Health Plan, Inc. (`hios:73889`) - Humana Health Plan, Inc. (`hios:74100`) - Humana Health Plan, Inc. (`hios:74320`) - Humana Health Plan, Inc. (`hios:93222`) - Humana Health Plan, Inc. (`hios:93696`) Tools: `resolve_entity(text="HUMANA HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000163", on="YYYY-MM-DD")`. # Mitchell Family Office Vlada entity `le:000697` · legal entity · holds 0 instruments directly and 12 through subsidiaries **Identifiers.** cms_org_name Mark T. Mitchell; cms_org_name Mitchell Family Office **Owns or controls.** - AMERICAN HEALTH PLAN OF FL, INC. (`le:001445`), start 2021-04-01, still true - AMERICAN HEALTH PLAN OF INDIANA INC (`le:002113`), at least since 2024-01-01, still true - AMERICAN HEALTH PLAN OF IOWA INC (`le:001450`), at least since 2023-01-01, still true - AMERICAN HEALTH PLAN OF MISSOURI, INC. (`le:001935`), at least since 2022-04-01, still true - AMERICAN HEALTH PLAN OF MISSOURI, INC. (`le:001935`), at least since 2021-04-09, still true - AMERICAN HEALTH PLAN OF MS, INC. (`le:001294`), start 2021-04-01, still true - AMERICAN HEALTH PLAN OF PENNSYLVANIA INC (`le:001303`), at least since 2025-01-01, still true - AMERICAN HEALTH PLAN OF TX, INC. (`le:001114`), start 2021-04-01, still true - AMERICAN HEALTH PLAN OF UT, INC. (`le:000696`), start 2021-04-01, still true - AMERICAN HEALTH PLAN, INC. (`le:001161`), start 2021-04-01, still true - American Health Companies, Inc. (`le:000714`), start 2021-04-01, still true - DIGNITY CARE CORPORATION (`le:002072`), start 2024-02-01, still true - GEORGIA ASSURANCE, INC. (`le:001176`), start 2021-04-01, still true - MISSOURI MEDICARE SELECT, LLC (`le:000713`), start 2021-04-01, still true - MISSOURI MEDICARE SELECT, LLC (`le:000713`), start 2021-04-01, no end found (last seen 2022-03-31) - MISSOURI MEDICARE SELECT, LLC (`le:000713`), start 2021-04-01, still true - OKLAHOMA SUPERIOR SELECT, INC. (`le:000842`), start 2021-04-01, still true Tools: `resolve_entity(text="Mitchell Family Office")`, `describe_entity(entity_id="le:000697", on="YYYY-MM-DD")`. # Oscar Health, Inc. Vlada entity `le:001140` · legal entity · holds 0 instruments directly and 12 through subsidiaries **Identifiers.** cms_org_name Mulberry Health, Inc.; cms_org_name Oscar Health, Inc. **Owns or controls.** - OSCAR HEALTH PLAN OF NEW YORK, INC. (`le:001139`), at least since 2020-01-01, no end found (last seen 2022-12-31) - OSCAR INSURANCE COMPANY (`le:001340`), at least since 2020-01-01, no end found (last seen 2022-12-31) - OSCAR MANAGED CARE OF SOUTH FLORIDA, INC (`le:001221`), at least since 2021-01-01, no end found (last seen 2023-12-31) - Oscar Health Plan of California (`le:002522`), at least since 2016-01-01, no end found (last seen 2017-12-31) - Oscar Insurance Company of Texas (`le:004211`), at least since 2016-01-01, no end found (last seen 2016-12-31) - Oscar Insurance Corporation (`le:002591`), at least since 2016-01-01, no end found (last seen 2017-12-31) - Oscar Insurance Corporation of New Jersey (`le:002834`), at least since 2016-01-01, no end found (last seen 2017-12-31) Tools: `resolve_entity(text="Oscar Health, Inc.")`, `describe_entity(entity_id="le:001140", on="YYYY-MM-DD")`. # Sanford Health Vlada entity `le:000347` · legal entity · holds 0 instruments directly and 12 through subsidiaries **Identifiers.** cms_org_name Sanford; cms_org_name Sanford Health **Owns or controls.** - BESHP, INC. (`le:000346`), at least since 2026-01-01, still true - GOOD SAMARITAN INSURANCE PLAN OF NEBRASKA, INC. (`le:002319`), start 2019-06-01, still true - GOOD SAMARITAN INSURANCE PLAN OF NEBRASKA, INC. (`le:002319`), start 2019-01-01, to 2019-05-31 - GOOD SAMARITAN INSURANCE PLAN OF NORTH DAKOTA, LLC (`le:001222`), start 2019-06-01, no end found (last seen 2023-02-28) - GOOD SAMARITAN INSURANCE PLAN OF NORTH DAKOTA, LLC (`le:001222`), start 2019-01-01, to 2019-05-31 - GOOD SAMARITAN INSURANCE PLAN OF SOUTH DAKOTA, INC (`le:001719`), start 2019-06-01, no end found (last seen 2023-02-28) - GOOD SAMARITAN INSURANCE PLAN OF SOUTH DAKOTA, INC (`le:001719`), start 2019-01-01, to 2019-05-31 - Good Samaritan Insurance Plan, LLC (`le:001223`), start 2019-01-01, still true - HEART OF AMERICA HEALTH PLAN (`le:002159`), at least since 2013-05-01, still true - HEART OF AMERICA HMO (`le:000610`), start 2013-05-01, no end found (last seen 2010-04-30) - Marshfield Clinic Health System (`le:003284`), start 2025-01-01, still true - SANFORD HEALTH PLAN (`le:000430`), at least since 2010-02-05, still true - SANFORD HEALTH PLAN (`le:000430`), at least since 2022-01-01, still true - SANFORD HEALTH PLAN OF MINNESOTA (`le:001792`), at least since 2022-01-01, still true - SANFORD HEART OF AMERICA HEALTH PLAN (`le:000611`), at least since 2013-05-01, to 2019-12-31 - SANFORD HEART OF AMERICA HEALTH PLAN (`le:000611`), start 2016-04-01, to 2019-12-31 - SANFORD HEART OF AMERICA HEALTH PLAN (`le:000611`), at least since 2013-05-01, to 2016-03-31 - SECURITY HEALTH PLAN OF WISCONSIN, INC. (`le:000704`), start 2025-01-01, still true Tools: `resolve_entity(text="Sanford Health")`, `describe_entity(entity_id="le:000347", on="YYYY-MM-DD")`. # InnovAge Holding Corp. Vlada entity `le:004089` · legal entity · holds 0 instruments directly and 11 through subsidiaries **Owns or controls.** - CONCERTOHEALTH PACE OF LOS ANGELES, LLC (`le:001474`), start 2023-12-01, still true - INNOVAGE CALIFORNIA PACE-SACRAMENTO, LLC (`le:000476`), start 2021-06-30, still true - INNOVAGE FLORIDA PACE II, LLC (`le:000054`), at least since 2024-04-01, still true - INNOVAGE FLORIDA PACE, LLC (`le:000930`), at least since 2024-01-01, still true - INNOVAGE GREATER CALIFORNIA PACE (`le:002007`), start 2021-06-30, no end found (last seen 2014-03-31) - INNOVAGE PENNSYLVANIA LIFE, LLC (`le:001283`), start 2021-06-30, still true - INNOVAGE VIRGINIA PACE II, LLC (`le:002340`), start 2021-06-30, still true - INNOVAGE VIRGINIA PACE-CHARLOTTESVILLE, LLC (`le:001810`), start 2021-06-30, still true - INNOVAGE VIRGINIA PACE-ROANOKE VALLEY, LLC (`le:001692`), start 2021-06-30, still true - TCO Eastern Holdings, LLC (`le:001693`), start 2021-06-30, still true - TOTAL COMMUNITY CARE, L.L.C. (`le:001961`), start 2021-06-30, still true - TOTAL LONGTERM CARE, INC. (`le:000081`), start 2021-06-30, still true - Total Community Options, Inc. (`le:000055`), start 2021-06-30, still true Tools: `resolve_entity(text="InnovAge Holding Corp.")`, `describe_entity(entity_id="le:004089", on="YYYY-MM-DD")`. # Nationwide Life Insurance Company Vlada entity `le:002451` · legal entity · holds 11 instruments directly **Identifiers.** ein 314156830; naic 66869 **Holds.** Marketplace issuer: 11 - Nationwide Life Insurance Company (`hios:14351`) - Nationwide Life Insurance Company (`hios:20826`) - Nationwide Life Insurance Company (`hios:21072`) - Nationwide Life Insurance Company (`hios:25745`) - Nationwide Life Insurance Company (`hios:39821`) - Nationwide Life Insurance Company (`hios:49208`) - Nationwide Life Insurance Company (`hios:51133`) - Nationwide Life Insurance Company (`hios:70706`) - Nationwide Life Insurance Company (`hios:73207`) - Nationwide Life Insurance Company (`hios:78613`) - Nationwide Life Insurance Company (`hios:85176`) Tools: `resolve_entity(text="Nationwide Life Insurance Company")`, `describe_entity(entity_id="le:002451", on="YYYY-MM-DD")`. # OSCAR INSURANCE COMPANY Vlada entity `le:001340` · legal entity · holds 11 instruments directly **Identifiers.** cms_org_name OSCAR INSURANCE COMPANY; ein 473185443; naic 15777 **Owned or controlled by.** - Oscar Health, Inc. (`le:001140`), controlled by, at least since 2020-01-01, no end found (last seen 2022-12-31), grade B **Holds.** Marketplace issuer: 11 - Oscar Insurance Company (`hios:15724`) - Oscar Insurance Company (`hios:20069`) - Oscar Insurance Company (`hios:23552`) - Oscar Insurance Company (`hios:25922`) - Oscar Insurance Company (`hios:43490`) - Oscar Insurance Company (`hios:44559`) - Oscar Insurance Company (`hios:45819`) - Oscar Insurance Company (`hios:57424`) - Oscar Insurance Company (`hios:69512`) - Oscar Insurance Company (`hios:77739`) - Oscar Insurance Company (`hios:91908`) Tools: `resolve_entity(text="OSCAR INSURANCE COMPANY")`, `describe_entity(entity_id="le:001340", on="YYYY-MM-DD")`. # CareFirst, Inc. Vlada entity `le:000512` · legal entity · holds 0 instruments directly and 10 through subsidiaries **Identifiers.** cms_org_name CareFirst, Inc.; cms_org_name CareFirst, Inc. **Owns or controls.** - CAREFIRST ADVANTAGE DSNP, INC. (`le:002084`), at least since 2021-04-01, still true - CAREFIRST ADVANTAGE PPO, INC. (`le:001475`), at least since 2022-01-01, still true - CAREFIRST ADVANTAGE, INC. (`le:001420`), at least since 2021-01-01, no end found (last seen 2024-12-31) - CareFirst BlueChoice, Inc. (`le:002422`), at least since 2013-01-01, still true - CareFirst of Maryland, Inc. (`le:002632`), at least since 2013-01-01, still true - FIRST CARE, INC. (`le:001611`), at least since 2006-08-01, no end found (last seen 2014-07-31) - GROUP HOSPITALIZATION AND MEDICAL SERVICES, INC. (`le:000511`), at least since 2008-01-01, no end found (last seen 2009-12-31) Tools: `resolve_entity(text="CareFirst, Inc.")`, `describe_entity(entity_id="le:000512", on="YYYY-MM-DD")`. # Corewell Health Vlada entity `le:001516` · legal entity · holds 0 instruments directly and 10 through subsidiaries **Identifiers.** cms_org_name BHSH; cms_org_name Corewell Health **Owns or controls.** - GROUP HEALTH COOPERATIVE OF EAU CLAIRE (`le:001123`), start 2026-01-01, still true - PRIORITY HEALTH (`le:000257`), start 2022-02-01, still true - PRIORITY HEALTH CHOICE, INC. (`le:001515`), start 2022-02-01, still true - PRIORITY HEALTH INSURANCE COMPANY (`le:001613`), start 2022-02-01, still true - Physicians Health Plan of Northern Indiana, Inc. (`le:002730`), at least since 2024-01-01, still true - Priority Health Insurance Company, Inc (`le:002510`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Priority Health Insurance Company, Inc (`le:002510`), at least since 2014-01-01, still true - PriorityHealth (`le:000474`), start 2022-02-01, still true - Spectrum Health System (`le:000259`), start 2022-02-01, still true - Total Health Care USA, Inc. (`le:002699`), at least since 2021-01-01, still true Tools: `resolve_entity(text="Corewell Health")`, `describe_entity(entity_id="le:001516", on="YYYY-MM-DD")`. # MEDICA INSURANCE COMPANY Vlada entity `le:000272` · legal entity · holds 10 instruments directly **Identifiers.** cms_org_name MEDICA INSURANCE COMPANY; ein 411490988; naic 12459 **Owned or controlled by.** - Medica (`le:000271`), controlled by, at least since 2006-08-01, to 2011-04-30, grade B - Medica Holding Company (`le:000099`), controlled by, start 2011-05-01, still true, grade B **Holds.** Marketplace issuer: 9; Medicare contract: 1 - H2450 (`contract:H2450`) - Medica Insurance Company (`hios:20305`) - Medica Insurance Company (`hios:21333`) - Medica Insurance Company (`hios:31616`) - Medica Insurance Company (`hios:39364`) - Medica Insurance Company (`hios:39520`) - Medica Insurance Company (`hios:53461`) - Medica Insurance Company (`hios:57637`) - Medica Insurance Company (`hios:93078`) - Medica Insurance Company (`hios:96594`) Tools: `resolve_entity(text="MEDICA INSURANCE COMPANY")`, `describe_entity(entity_id="le:000272", on="YYYY-MM-DD")`. # New Era Life Insurance Company of the MidWest Vlada entity `le:002395` · legal entity · holds 10 instruments directly **Identifiers.** ein 351048733; naic 69698 **Holds.** Marketplace issuer: 10 - New Era Life Insurance Company of the MidWest (`hios:21723`) - New Era Life Insurance Company of the MidWest (`hios:23444`) - New Era Life Insurance Company of the MidWest (`hios:26951`) - New Era Life Insurance Company of the MidWest (`hios:31325`) - New Era Life Insurance Company of the MidWest (`hios:53841`) - New Era Life Insurance Company of the MidWest (`hios:55318`) - New Era Life Insurance Company of the MidWest (`hios:57133`) - New Era Life Insurance Company of the MidWest (`hios:67141`) - New Era Life Insurance Company of the MidWest (`hios:82564`) - New Era Life Insurance Company of the MidWest (`hios:87955`) Tools: `resolve_entity(text="New Era Life Insurance Company of the MidWest")`, `describe_entity(entity_id="le:002395", on="YYYY-MM-DD")`. # SCAN Group Vlada entity `le:000116` · legal entity · holds 0 instruments directly and 10 through subsidiaries **Identifiers.** cms_org_name SCAN Group **Owns or controls.** - MYPLACE SOUTH LA PACE INC. (`le:001529`), at least since 2025-07-01, still true - SCAN DESERT HEALTH PLAN, INC. (`le:001905`), at least since 2022-01-01, still true - SCAN HEALTH PLAN (`le:000115`), start 2020-12-01, still true - SCAN HEALTH PLAN (NM) (`le:001963`), at least since 2025-01-01, still true - SCAN HEALTH PLAN (WA) (`le:000884`), at least since 2026-01-01, still true - SCAN HEALTH PLAN ARIZONA (`le:001255`), start 2020-12-01, no end found (last seen 2015-12-31) - SCAN HEALTH PLAN NEVADA, INC. (`le:001677`), at least since 2022-01-01, still true - SCAN HEALTH PLAN NEW MEXICO (`le:002242`), at least since 2024-01-01, no end found (last seen 2024-12-31) - SCAN HEALTH PLAN OF ARIZONA (`le:001256`), start 2020-12-01, no end found (last seen 2013-07-31) - SCAN HEALTH PLAN TEXAS, INC. (`le:001533`), at least since 2023-01-01, still true - myPlace Greater LA PACE Inc. (`le:000731`), start 2025-05-01, still true - myPlace Greater LA PACE Inc. (`le:000731`), start 2025-05-01, still true Tools: `resolve_entity(text="SCAN Group")`, `describe_entity(entity_id="le:000116", on="YYYY-MM-DD")`. # State Farm Mutual Automobile Insurance Company Vlada entity `le:002435` · legal entity · holds 10 instruments directly **Identifiers.** ein 370533100; naic 25178 **Holds.** Marketplace issuer: 10 - State Farm Mutual Automobile Insurance Company (`hios:21891`) - State Farm Mutual Automobile Insurance Company (`hios:28623`) - State Farm Mutual Automobile Insurance Company (`hios:50536`) - State Farm Mutual Automobile Insurance Company (`hios:65550`) - State Farm Mutual Automobile Insurance Company (`hios:77586`) - State Farm Mutual Automobile Insurance Company (`hios:85094`) - State Farm Mutual Automobile Insurance Company (`hios:90359`) - State Farm Mutual Automobile Insurance Company (`hios:91901`) - State Farm Mutual Automobile Insurance Company (`hios:92722`) - State Farm Mutual Automobile Insurance Company (`hios:99691`) Tools: `resolve_entity(text="State Farm Mutual Automobile Insurance Company")`, `describe_entity(entity_id="le:002435", on="YYYY-MM-DD")`. # University of Wisconsin Hospitals and Clincs Autho Vlada entity `le:000951` · legal entity · holds 0 instruments directly and 10 through subsidiaries **Identifiers.** cms_org_name University of Wisconsin Hospitals and Clincs Autho **Owns or controls.** - GUNDERSEN HEALTH PLAN (`le:001964`), start 2017-04-01, no end found (last seen 2019-05-31) - GUNDERSEN HEALTH PLAN OF MINNESOTA (`le:001568`), start 2017-04-01, no end found (last seen 2019-05-31) - Gundersen Health Plan Minnesota, Inc. (`le:002854`), at least since 2016-01-01, no end found (last seen 2017-12-31) - Gundersen Health Plan, Inc. (`le:002803`), at least since 2016-01-01, no end found (last seen 2017-12-31) - Physicians Plus Insurance Corporation (`le:002853`), at least since 2017-01-01, no end found (last seen 2017-12-31) - QUARTZ HEALTH PLAN CORPORATION (`le:000950`), at least since 2019-06-01, still true - QUARTZ HEALTH PLAN MN CORPORATION (`le:002119`), at least since 2019-06-01, still true - Quartz Health Benefit Plans Corporation (`le:002513`), at least since 2018-01-01, still true - Quartz Health Insurance Corporation (`le:002565`), at least since 2018-01-01, still true - Unity Health Plans Insurance Corporation (`le:002804`), at least since 2016-01-01, no end found (last seen 2017-12-31) Tools: `resolve_entity(text="University of Wisconsin Hospitals and Clincs Autho")`, `describe_entity(entity_id="le:000951", on="YYYY-MM-DD")`. # UPMC Vlada entity `le:002949` · legal entity · holds 0 instruments directly and 10 through subsidiaries **Identifiers.** cms_org_name UNIVERSITY OF PITTSBURGH MEDICAL CENTER; cms_org_name UPMC Health System; cms_org_name University of Pittsburgh Medical Center **Owns or controls.** - Community Care Behavioral Health (`le:002950`), at least since 2019-01-01, still true - PITTSBURGH CARE PARTNERSHIP, INC. (`le:000654`), start 2014-03-01, still true - UPMC FOR YOU, INC (`le:000702`), at least since 2012-01-01, still true - UPMC HEALTH BENEFITS, INC. (`le:001270`), at least since 2006-08-01, still true - UPMC HEALTH COVERAGE, INC. (`le:001129`), at least since 2020-01-01, still true - UPMC HEALTH NETWORK, INC. (`le:000985`), at least since 2006-08-01, still true - UPMC HEALTH PLAN, INC. (`le:000650`), at least since 2009-01-01, still true - UPMC Health Options, Inc. (`le:002649`), at least since 2023-01-01, still true Tools: `resolve_entity(text="UPMC")`, `describe_entity(entity_id="le:002949", on="YYYY-MM-DD")`. # HEALTHPARTNERS, INC. Vlada entity `le:000483` · legal entity · holds 4 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name HEALTHPARTNERS; cms_org_name HEALTHPARTNERS, INC; cms_org_name HEALTHPARTNERS, INC.; cms_org_name Health Partners, Inc.; cms_org_name Health Partners, Inc.; cms_org_name HealthPartners; cms_org_name HealthPartners, Inc.; cms_org_name HealthPartners, Inc.; ein 411693838; ein 411693838; naic 95766; naic 95766 **Owns or controls.** - GROUP HEALTH (`le:001926`), at least since 2008-02-01, no end found (last seen 2008-08-31) - GROUP HEALTH INC, [Minnesota (HealthPartners)] (`le:004078`), at least since 2008-09-01, no end found (last seen 2011-05-31) - GROUP HEALTH PLAN, INC. (`le:000492`), at least since 2009-02-01, still true - GROUP HEALTH PLAN, INC. (MN) (`le:001773`), at least since 2013-04-01, no end found (last seen 2023-10-31) - GROUP HEALTH PLAN, INC. [Minnesota (HealthPartners)] (`le:003830`), at least since 2006-08-01, no end found (last seen 2013-03-31) - HEALTH PARTNERS OF PHILADELPHIA, INC. (`le:000666`), at least since 2006-08-01, to 2007-07-31 - HEALTHPARTNERS INSURANCE COMPANY (`le:001298`), at least since 2008-01-01, still true **Holds.** Medicare contract: 4 - H2422 (`contract:H2422`) - H2462 (`contract:H2462`) - H4882 (`contract:H4882`) - S1822 (`contract:S1822`) Tools: `resolve_entity(text="HEALTHPARTNERS, INC.")`, `describe_entity(entity_id="le:000483", on="YYYY-MM-DD")`. # Life of America Vlada entity `le:002412` · legal entity · holds 9 instruments directly **Identifiers.** ein 860199949; naic 81132 **Holds.** Marketplace issuer: 9 - Life of America (`hios:10463`) - Life of America (`hios:32681`) - Life of America (`hios:37481`) - Life of America (`hios:42809`) - Life of America (`hios:47944`) - Life of America (`hios:53304`) - Life of America (`hios:73277`) - Life of America (`hios:87844`) - Life of America (`hios:88186`) Tools: `resolve_entity(text="Life of America")`, `describe_entity(entity_id="le:002412", on="YYYY-MM-DD")`. # Lifetime Healthcare, Inc. Vlada entity `le:000791` · legal entity · holds 0 instruments directly and 9 through subsidiaries **Identifiers.** cms_org_name Excellus, Inc; cms_org_name Lifetime Healthcare, Inc. **Owns or controls.** - CAPITAL DISTRICT PHYSICIANS' HEALTH PLAN, INC. (`le:000599`), start 2025-01-01, still true - CAPITAL DISTRICT PHYSICIANS' HP, INC. (`le:000598`), start 2025-01-01, no end found (last seen 2007-07-31) - CDPHP UNIVERSAL BENEFITS, INC. (`le:001333`), start 2025-01-01, still true - EXCELLUS HEALTH PLAN COMMUNITY CARE LLC (`le:001150`), at least since 2023-01-01, still true - EXCELLUS HEALTH PLAN, INC. (`le:000591`), at least since 2006-08-01, still true Tools: `resolve_entity(text="Lifetime Healthcare, Inc.")`, `describe_entity(entity_id="le:000791", on="YYYY-MM-DD")`. # Alignment Healthcare, Inc. Vlada entity `le:004010` · legal entity · holds 0 instruments directly and 8 through subsidiaries **Owned or controlled by.** - Alignment Healthcare Partners, LP (`le:004101`), controlled by, start 2014-09-01, to 2021-03-01, grade B **Owns or controls.** - ALIGNMENT HEALTH ADVANTAGE PLAN INC (`le:002083`), at least since 2025-01-01, still true - ALIGNMENT HEALTH INSURANCE COMPANY OF ARIZONA INC (`le:001266`), at least since 2022-01-01, still true - ALIGNMENT HEALTH PLAN (`le:001834`), start 2021-12-31, still true - ALIGNMENT HEALTH PLAN OF ARIZONA, INC. (`le:000817`), at least since 2022-01-01, still true - ALIGNMENT HEALTH PLAN OF FLORIDA INC (`le:002123`), at least since 2023-01-01, no end found (last seen 2024-12-31) - ALIGNMENT HEALTH PLAN OF NEVADA, INC. (`le:001271`), start 2021-12-31, still true - ALIGNMENT HEALTH PLAN OF NORTH CAROLINA, INC. (`le:001124`), start 2021-12-31, still true - Alignment Healthcare USA, LLC (`le:000647`), at least since 2021-12-31, still true - CITIZENS CHOICE HEALTH PLAN (`le:000646`), start 2021-12-31, no end found (last seen 2015-08-31) - CITIZENS CHOICE HEALTHPLAN (`le:002169`), start 2021-03-02, still true - Honored Citizens Choice Health Plan (`le:000855`), start 2021-12-31, still true Tools: `resolve_entity(text="Alignment Healthcare, Inc.")`, `describe_entity(entity_id="le:004010", on="YYYY-MM-DD")`. # All Savers Insurance Company Vlada entity `le:002473` · legal entity · holds 8 instruments directly **Identifiers.** ein 351665915; naic 82406 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 8 - All Savers Insurance Company (`hios:26781`) - All Savers Insurance Company (`hios:36373`) - All Savers Insurance Company (`hios:39924`) - All Savers Insurance Company (`hios:42204`) - All Savers Insurance Company (`hios:48126`) - All Savers Insurance Company (`hios:55997`) - All Savers Insurance Company (`hios:64281`) - All Savers Insurance Company (`hios:78726`) Tools: `resolve_entity(text="All Savers Insurance Company")`, `describe_entity(entity_id="le:002473", on="YYYY-MM-DD")`. # ANTHEM INSURANCE COMPANIES, INC. Vlada entity `le:000179` · legal entity · holds 8 instruments directly **Identifiers.** cms_org_name ANTHEM INSURANCE COMPANIES, INC.; ein 350781558; naic 28207 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 7; Marketplace issuer: 1 - H0629 (`contract:H0629`) - H1607 (`contract:H1607`) - H2441 (`contract:H2441`) - H4036 (`contract:H4036`) - H4909 (`contract:H4909`) - R5941 (`contract:R5941`) - S5596 (`contract:S5596`) - Anthem Insurance Companies, Inc. (`hios:17575`) Tools: `resolve_entity(text="ANTHEM INSURANCE COMPANIES, INC.")`, `describe_entity(entity_id="le:000179", on="YYYY-MM-DD")`. # BoldAge PACE, LLC Vlada entity `le:001182` · legal entity · holds 0 instruments directly and 8 through subsidiaries **Identifiers.** cms_org_name Beacon Care Ventures LLC DBA BoldAge PACE; cms_org_name Beacon Care Ventures, LLC d/b/a BoldAge PACE; cms_org_name BoldAge PACE, LLC **Owns or controls.** - ACUTE CARE HEALTH SYSTEM, LLC (`le:002102`), start 2024-01-01, no end found (last seen 2023-12-31) - ACUTECARE PACE FRANKLIN, LLC (`le:001195`), at least since 2025-06-01, still true - ACUTECARE PACE MONTGOMERY, LLC (`le:001459`), at least since 2026-09-01, still true - BEACON OF LIFE CENTRAL NJ, LLC (`le:001251`), at least since 2024-01-01, still true - BEACON OF LIFE NORTH NJ, LLC (`le:002075`), at least since 2026-07-01, still true - BEACON OF LIFE SC, LLC (`le:001552`), at least since 2024-09-01, still true - BEACON PACE ILLINOIS, LLC (`le:001181`), at least since 2025-10-01, still true - BOLDAGE PACE INDIANA, LLC (`le:001951`), at least since 2024-01-01, still true - BOLDAGE PACE KENTUCKY, LLC (`le:001454`), at least since 2024-01-01, still true Tools: `resolve_entity(text="BoldAge PACE, LLC")`, `describe_entity(entity_id="le:001182", on="YYYY-MM-DD")`. # HEALTHSPRING LIFE & HEALTH INSURANCE COMPANY, INC. Vlada entity `le:000237` · legal entity · holds 8 instruments directly **Identifiers.** cms_org_name HEALTHSPRING LIFE & HEALTH INSURANCE COMPANY; cms_org_name HEALTHSPRING LIFE & HEALTH INSURANCE COMPANY, INC.; cms_org_name HealthSpring Life & Health Insurance Company, Inc. **Owned or controlled by.** - HealthSpring, Inc. (`le:000023`), controlled by, at least since 2009-01-01, to 2012-01-30, grade B - The Cigna Group (`le:000087`), controlled by, start 2012-01-31, to 2025-03-18, grade A - Health Care Service Corporation (`le:000089`), controlled by, start 2025-03-19, still true, grade A **Holds.** Medicare contract: 8 - H0439 (`contract:H0439`) - H4407 (`contract:H4407`) - H4513 (`contract:H4513`) - H7020 (`contract:H7020`) - H7389 (`contract:H7389`) - H7787 (`contract:H7787`) - H7849 (`contract:H7849`) - H9460 (`contract:H9460`) Tools: `resolve_entity(text="HEALTHSPRING LIFE & HEALTH INSURANCE COMPANY, INC.")`, `describe_entity(entity_id="le:000237", on="YYYY-MM-DD")`. # Rifkin Managed Care Holding, LLC Vlada entity `le:000686` · legal entity · holds 0 instruments directly and 8 through subsidiaries **Identifiers.** cms_org_name Rifkin Managed Care Holding Company, LLC; cms_org_name Rifkin Managed Care Holding, LLC **Owns or controls.** - PROVIDER PARTNERS HEALTH PLAN OF ILLINOIS (`le:000643`), at least since 2020-01-01, still true - PROVIDER PARTNERS HEALTH PLAN OF INDIANA (`le:000708`), at least since 2025-01-01, still true - PROVIDER PARTNERS HEALTH PLAN OF KENTUCKY (`le:002051`), at least since 2026-01-01, still true - PROVIDER PARTNERS HEALTH PLAN OF MISSOURI, INC. (`le:001546`), at least since 2021-01-01, still true - PROVIDER PARTNERS HEALTH PLAN OF NORTH CAROLINA (`le:000707`), at least since 2024-01-01, still true - PROVIDER PARTNERS HEALTH PLAN OF OHIO (`le:001128`), at least since 2019-01-01, no end found (last seen 2021-12-31) - PROVIDER PARTNERS HEALTH PLAN OF PENNSYLVANIA, INC (`le:000685`), start 2017-04-01, still true - PROVIDER PARTNERS HEALTH PLAN OF TEXAS, INC. (`le:002175`), at least since 2022-01-01, still true - PROVIDER PARTNERS HEALTH PLAN, INC. (`le:001175`), start 2017-04-01, still true Tools: `resolve_entity(text="Rifkin Managed Care Holding, LLC")`, `describe_entity(entity_id="le:000686", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE INSURANCE CO. OF THE RIVER VALLEY Vlada entity `le:000190` · legal entity · holds 8 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE INSURANCE CO OF THE RIVER VALLEY; cms_org_name UNITEDHEALTHCARE INSURANCE CO. OF THE RIVER VALLEY; ein 201902768; naic 12231 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2018-01-01, no end found (last seen 2023-01-31), grade B **Holds.** Marketplace issuer: 8 - UnitedHealthcare Insurance Company of the River Valley (`hios:10958`) - UnitedHealthcare Insurance Company of the River Valley (`hios:22732`) - UnitedHealthcare Insurance Company of the River Valley (`hios:30552`) - UnitedHealthcare Insurance Company of the River Valley (`hios:33232`) - UnitedHealthcare Insurance Company of the River Valley (`hios:34446`) - UnitedHealthcare Insurance Company of the River Valley (`hios:53946`) - UnitedHealthcare Insurance Company of the River Valley (`hios:58658`) - UnitedHealthcare Insurance Company of the River Valley (`hios:64146`) Tools: `resolve_entity(text="UNITEDHEALTHCARE INSURANCE CO. OF THE RIVER VALLEY")`, `describe_entity(entity_id="le:000190", on="YYYY-MM-DD")`. # Ascendiun Vlada entity `le:004034` · legal entity · holds 0 instruments directly and 7 through subsidiaries **Owns or controls.** - BLUE SHIELD OF CALIFORNIA PROMISE HEALTH PLAN (`le:000018`), start 2025-01-01, no end found (last seen 2022-12-31) - Blue Shield of California Life & Health Insurance Company (`le:002800`), at least since 2013-01-01, still true - CA PHYSICIANS' SERVICE DBA BLUE SHIELD OF CA (`le:001594`), start 2025-01-01, no end found (last seen 2013-02-28) - CALIFORNIA PHYSICIANS' SERVICE (`le:000019`), start 2025-01-01, still true - CARE1ST HEALTH PLAN (`le:000970`), start 2025-01-01, no end found (last seen 2019-02-28) - CARE1ST HEALTH PLAN (`le:000970`), start 2025-01-01, still true - GEMCARE HEALTH PLAN INC. (`le:001382`), start 2025-01-01, no end found (last seen 2016-05-31) Tools: `resolve_entity(text="Ascendiun")`, `describe_entity(entity_id="le:004034", on="YYYY-MM-DD")`. # Assurity Life Insurance Company Vlada entity `le:002413` · legal entity · holds 7 instruments directly **Identifiers.** ein 381843471; naic 71439 **Holds.** Marketplace issuer: 7 - Assurity Life Insurance Company (`hios:21426`) - Assurity Life Insurance Company (`hios:32229`) - Assurity Life Insurance Company (`hios:50486`) - Assurity Life Insurance Company (`hios:83019`) - Assurity Life Insurance Company (`hios:95451`) - Assurity Life Insurance Company (`hios:98754`) - Assurity Life Insurance Company (`hios:99101`) Tools: `resolve_entity(text="Assurity Life Insurance Company")`, `describe_entity(entity_id="le:002413", on="YYYY-MM-DD")`. # Baylor Scott & White Holdings Vlada entity `le:000444` · legal entity · holds 0 instruments directly and 7 through subsidiaries **Identifiers.** cms_org_name Baylor Scott & White Health; cms_org_name Baylor Scott & White Holdings **Owns or controls.** - Baylor Scott & White Insurance Company (`le:000220`), at least since 2021-09-01, still true - INSURANCE COMPANY OF SCOTT AND WHITE (`le:000443`), start 2014-04-01, no end found (last seen 2021-08-31) - INSURANCE COMPANY OF SCOTT AND WHITE (`le:000443`), at least since 2014-01-01, to 2014-03-31 - SCOTT AND WHITE HEALTH PLAN (`le:001179`), start 2013-10-01, still true - SHA, L.L.C (`le:000723`), start 2019-04-01, no end found (last seen 2021-12-31) - SHA, L.L.C (`le:000723`), start 2019-01-01, still true - Scott & White Care Plans (`le:002233`), at least since 2023-01-01, no end found (last seen 2025-12-31) - Scott and White Healthcare (`le:001940`), start 2013-10-01, still true - Southwest Life & Health Insurance Co. (`le:002494`), at least since 2013-01-01, still true Tools: `resolve_entity(text="Baylor Scott & White Holdings")`, `describe_entity(entity_id="le:000444", on="YYYY-MM-DD")`. # Longevity Health Founders, LLC Vlada entity `le:000421` · legal entity · holds 0 instruments directly and 7 through subsidiaries **Identifiers.** cms_org_name Longevity Health Founders, LLC **Owns or controls.** - LONGEVITY HEALTH PLAN OF COLORADO, INC. (`le:001863`), at least since 2021-01-01, still true - LONGEVITY HEALTH PLAN OF FLORIDA, INC. (`le:000420`), at least since 2020-01-01, still true - LONGEVITY HEALTH PLAN OF ILLINOIS, INC. (`le:001264`), at least since 2019-01-01, still true - LONGEVITY HEALTH PLAN OF MASSACHUSETTS INC (`le:002371`), at least since 2023-01-01, no end found (last seen 2024-12-31) - LONGEVITY HEALTH PLAN OF MICHIGAN, INC. (`le:002320`), at least since 2021-01-01, still true - LONGEVITY HEALTH PLAN OF NEW JERSEY INSURANCE COMP (`le:001572`), at least since 2020-01-01, still true - LONGEVITY HEALTH PLAN OF NEW YORK, INC. (`le:001199`), at least since 2019-01-01, still true - LONGEVITY HEALTH PLAN OF NORTH CAROLINA, INC. (`le:001361`), at least since 2021-01-01, still true - LONGEVITY HEALTH PLAN OF OKLAHOMA, INC. (`le:001237`), at least since 2020-01-01, no end found (last seen 2021-12-31) Tools: `resolve_entity(text="Longevity Health Founders, LLC")`, `describe_entity(entity_id="le:000421", on="YYYY-MM-DD")`. # PacificSource Health Plans Vlada entity `le:000859` · legal entity · holds 4 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name PACIFICSOURCE; cms_org_name PacificSource; cms_org_name PacificSource Health Plans; ein 930245545; naic 54976 **Owns or controls.** - C. OREGON I. HLTH SVCS, INC., DBA CLEAR CHOICE HEA (`le:001835`), at least since 2007-06-01, still true - CLEAR CHOICE HEALTH PLANS, INC. (`le:000333`), at least since 2007-06-01, still true - Clear One Health Plans, Inc. (`le:000334`), start 2010-05-26, still true - PACIFICSOURCE COMMUNITY HEALTH PLANS (`le:000858`), at least since 2019-04-01, still true - PACIFICSOURCE COMMUNITY HEALTH PLANS (`le:000858`), start 2011-05-01, still true - PACIFICSOURCE COMMUNITY HEALTH PLANS (`le:000858`), at least since 2011-04-01, to 2011-04-30 - PACIFICSOURCE PACE, LLC (`le:002069`), at least since 2026-04-01, still true **Holds.** Marketplace issuer: 4 - PacificSource Health Plans (`hios:10091`) - PacificSource Health Plans (`hios:14057`) - PacificSource Health Plans (`hios:23603`) - PacificSource Health Plans (`hios:60597`) Tools: `resolve_entity(text="PacificSource Health Plans")`, `describe_entity(entity_id="le:000859", on="YYYY-MM-DD")`. # USABLE MUTUAL INSURANCE COMPANY Vlada entity `le:000694` · legal entity · holds 3 instruments directly and 4 through subsidiaries **Identifiers.** cms_org_name ARKANSAS BCBS, A MUTUAL INS CO; cms_org_name ARKANSAS BCBS, A MUTUAL INSURANCE COMPANY; cms_org_name ARKANSAS BLUE CROSS AND BLUE SHIELD; cms_org_name ARKANSAS BLUE CROSS AND BLUE SHIELD; cms_org_name ARKANSAS BLUE CROSS AND BLUE SHIELD, A MUTUAL INS.; cms_org_name Arkansas Blue Cross Blue Shield; cms_org_name USABLE MUTUAL INSURANCE COMPANY; cms_org_name USAble Mutual Insurance Company; ein 710226428; naic 83470 **Owned or controlled by.** - Universal American Corp. (`le:000394`), controlled by, at least since 2006-08-01, to 2006-12-31, grade B **Owns or controls.** - HMO PARTNERS, INC. (`le:001272`), at least since 2014-01-01, to 2020-05-31 - HMO PARTNERS, INC. (`le:001272`), start 2023-04-01, no end found (last seen 2024-01-31) - USABLE HMO, INC. (`le:001050`), at least since 2021-01-01, still true - USABLE PPO INSURANCE COMPANY (`le:001815`), at least since 2021-01-01, no end found (last seen 2025-12-31) **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H4213 (`contract:H4213`) - S5795 (`contract:S5795`) - USAble Mutual Insurance Company (`hios:75293`) Tools: `resolve_entity(text="USABLE MUTUAL INSURANCE COMPANY")`, `describe_entity(entity_id="le:000694", on="YYYY-MM-DD")`. # Volunteers of America Vlada entity `le:003473` · legal entity · holds 0 instruments directly and 7 through subsidiaries **Owns or controls.** - Senior CommUnity Care Of Kentucky (`le:001449`), at least since 2023-05-01, still true - VOANS SENIOR COMMUNITY CARE OF COLORADO, INC (`le:000516`), at least since 2016-01-01, still true - VOANS SENIOR COMMUNITY CARE OF JEFFERSON COUNTY (`le:002324`), at least since 2024-11-01, still true - VOANS SENIOR COMMUNITY CARE OF MARYLAND (`le:002049`), at least since 2025-03-01, still true - VOANS SENIOR COMMUNITY CARE OF MICHIGAN, INC. (`le:002031`), at least since 2015-03-01, still true - VOANS SENIOR COMMUNITY CARE OF NORTH CAROLINA, INC (`le:001879`), at least since 2013-07-01, still true - VOANS SENIOR COMMUNITY CARE OF NORTHERN KENTUCKY (`le:001177`), at least since 2024-04-01, still true - Volunteers of America National Services (`le:000517`), at least since 2008-08-01, still true Tools: `resolve_entity(text="Volunteers of America")`, `describe_entity(entity_id="le:003473", on="YYYY-MM-DD")`. # WelbeHealth Vlada entity `le:003303` · legal entity · holds 0 instruments directly and 7 through subsidiaries **Identifiers.** cms_org_name WelbeHealth LLC. **Owns or controls.** - LA COAST PACE, LLC (`le:000408`), at least since 2020-01-01, still true - PACIFIC PACE, LLC (`le:001675`), at least since 2019-07-01, still true - SEQUOIA PACE, LLC (`le:000477`), at least since 2020-07-01, still true - STOCKTON PACE (`le:001506`), at least since 2019-01-01, still true - WELBEHEALTH BAY AREA PACE, LLC (`le:001061`), at least since 2024-01-01, still true - WELBEHEALTH INLAND EMPIRE PACE, LLC (`le:001725`), at least since 2024-03-01, still true - WELBEHEALTH SAN BERNARDINO PACE, LLC (`le:001887`), at least since 2025-07-01, still true Tools: `resolve_entity(text="WelbeHealth")`, `describe_entity(entity_id="le:003303", on="YYYY-MM-DD")`. # WMI Mutual Insurance Company Vlada entity `le:002424` · legal entity · holds 7 instruments directly **Identifiers.** ein 870455184; naic 68420 **Holds.** Marketplace issuer: 7 - WMI Mutual Insurance Company (`hios:10937`) - WMI Mutual Insurance Company (`hios:40727`) - WMI Mutual Insurance Company (`hios:42313`) - WMI Mutual Insurance Company (`hios:45632`) - WMI Mutual Insurance Company (`hios:70904`) - WMI Mutual Insurance Company (`hios:72114`) - WMI Mutual Insurance Company (`hios:80043`) Tools: `resolve_entity(text="WMI Mutual Insurance Company")`, `describe_entity(entity_id="le:002424", on="YYYY-MM-DD")`. # BLUE CROSS AND BLUE SHIELD OF NORTH CAROLINA Vlada entity `le:000600` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name BLUE CROSS AND BLUE SHIELD OF NORTH CAROLINA; cms_org_name BLUE CROSS BLUE SHIELD OF NORTH CAROLINA; cms_org_name Blue Cross Blue Shield of North Carolina; cms_org_name Blue Cross and Blue Shield of North Carolina; ein 560894904; naic 54631 **Owned or controlled by.** - CuraCor Solutions Corp. (`le:000601`), controlled by, start 2025-03-01, still true, grade B - CuraCor Solutions Corp. (`le:000601`), controlled by, start 2025-03-01, still true, grade B **Owns or controls.** - BLUE CROSS AND BLUE SHIELD OF NC SENIOR HEALTH (`le:002090`), at least since 2021-01-01, to 2025-02-28 - EXPERIENCE HEALTH, INC. (`le:000642`), start 2023-08-01, to 2025-02-28 - PARTNERS NATIONAL HEALTH PLANS OF NC INC (`le:000810`), start 2008-01-01, to 2010-03-30 - PARTNERS NATIONAL HEALTH PLANS OF NC INC (`le:000810`), start 2006-10-01, to 2007-12-31 - PARTNERS NATIONAL HEALTH PLANS OF NC INC (`le:000810`), start 2001-10-01, to 2025-02-28 - Partners National Health Plans of North Carolina (`le:000812`), start 2001-10-01, to 2025-02-28 **Holds.** Medicare contract: 5; Marketplace issuer: 1 - H3404 (`contract:H3404`) - H3449 (`contract:H3449`) - H3777 (`contract:H3777`) - H9147 (`contract:H9147`) - S5540 (`contract:S5540`) - Blue Cross and Blue Shield of North Carolina (`hios:11512`) Tools: `resolve_entity(text="BLUE CROSS AND BLUE SHIELD OF NORTH CAROLINA")`, `describe_entity(entity_id="le:000600", on="YYYY-MM-DD")`. # CALIFORNIA PHYSICIANS' SERVICE Vlada entity `le:000019` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name Blue Shield of California; cms_org_name CALIFORNIA PHYSICIANS SERVICE; cms_org_name CALIFORNIA PHYSICIANS' SERVICE; cms_org_name California Physicians' Service; ein 940360524; naic 47732 **Owned or controlled by.** - Ascendiun (`le:004034`), controlled by, start 2025-01-01, still true, grade B **Owns or controls.** - BLUE SHIELD OF CALIFORNIA PROMISE HEALTH PLAN (`le:000018`), at least since 2019-03-01, to 2024-12-31 - CA PHYSICIANS' SERVICE DBA BLUE SHIELD OF CA (`le:001594`), at least since 2006-08-01, to 2024-12-31 - CARE1ST HEALTH PLAN (`le:000970`), start 2015-10-01, to 2024-12-31 - CARE1ST HEALTH PLAN (`le:000970`), start 2015-10-01, to 2024-12-31 - CARE1ST HEALTH PLAN OF ARIZONA (`le:000969`), start 2015-10-01, to 2016-12-30 - GEMCARE HEALTH PLAN INC. (`le:001382`), start 2014-04-01, to 2024-12-31 - ONECARE BY CARE1ST HEALTH PLAN ARIZONA INC. (`le:000971`), start 2015-10-01, to 2016-12-30 - ONECARE BY CARE1ST HEALTH PLAN OF ARIZONA (`le:001369`), start 2015-10-01, to 2016-12-30 **Holds.** Medicare contract: 5; Marketplace issuer: 1 - H0504 (`contract:H0504`) - H2819 (`contract:H2819`) - H4937 (`contract:H4937`) - H5928 (`contract:H5928`) - S2468 (`contract:S2468`) - California Physicians Service (`hios:70285`) Tools: `resolve_entity(text="CALIFORNIA PHYSICIANS' SERVICE")`, `describe_entity(entity_id="le:000019", on="YYYY-MM-DD")`. # CAPITAL BLUE CROSS Vlada entity `le:000665` · legal entity · holds 1 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name CAPITAL BLUE CROSS; cms_org_name Capital BlueCross; ein 230455154; naic 54720 **Owns or controls.** - Avalon Insurance Company (`le:001149`), at least since 2006-08-01, still true - CAPITAL ADVANTAGE INSURANCE COMPANY (`le:002172`), at least since 2006-08-01, still true - KEYSTONE HEALTH PLAN CENTRAL, INC. (`le:000664`), at least since 2006-08-01, still true - Keystone Health Plan Central (`le:002719`), at least since 2013-01-01, still true - Vibra Health Plan, Inc. (`le:001257`), start 2017-08-01, no end found (last seen 2022-12-31) **Holds.** Marketplace issuer: 1 - Capital BlueCross (`hios:27523`) Tools: `resolve_entity(text="CAPITAL BLUE CROSS")`, `describe_entity(entity_id="le:000665", on="YYYY-MM-DD")`. # CuraCor Solutions Corp. Vlada entity `le:000601` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name CuraCor Solutions Corp. **Owns or controls.** - BLUE CROSS AND BLUE SHIELD OF NC SENIOR HEALTH (`le:002090`), start 2025-03-01, no end found (last seen 2026-03-31) - BLUE CROSS AND BLUE SHIELD OF NORTH CAROLINA (`le:000600`), start 2025-03-01, still true - BLUE CROSS AND BLUE SHIELD OF NORTH CAROLINA (`le:000600`), start 2025-03-01, still true - EXPERIENCE HEALTH, INC. (`le:000642`), start 2025-03-01, no end found (last seen 2024-07-31) - PARTNERS NATIONAL HEALTH PLANS OF NC INC (`le:000810`), start 2025-03-01, still true - Partners National Health Plans of North Carolina (`le:000812`), start 2025-03-01, still true Tools: `resolve_entity(text="CuraCor Solutions Corp.")`, `describe_entity(entity_id="le:000601", on="YYYY-MM-DD")`. # EmblemHealth, Inc. Vlada entity `le:000575` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name EmblemHealth Inc.; cms_org_name EmblemHealth, Inc; cms_org_name EmblemHealth, Inc. **Owns or controls.** - CONNECTICARE INSURANCE COMPANY, INC. (`le:001436`), at least since 2008-01-01, to 2025-01-31 - CONNECTICARE, INC. (`le:000826`), at least since 2008-01-01, to 2025-01-31 - ConnectiCare Holding Company, Inc. (`le:003845`), start 2006-11-15, to 2025-01-31 - EMBLEMHEALTH PLAN, INC. (`le:001984`), at least since 2022-04-01, still true - GHI (GROUP HEALTH INCORPORATED) (`le:002221`), at least since 2009-12-01, still true - GHI (GROUP HEALTH INCORPORATED) (`le:002221`), start 2007-11-01, no end found (last seen 2009-11-30) - GHI (GROUP HEALTH INCORPORATED) (`le:002221`), start 2007-04-01, to 2007-10-31 - GHI (GROUP HEALTH INCORPORATED) (`le:002221`), at least since 2007-02-01, to 2007-03-31 - GROUP HEALTH INCORPORATED (`le:000482`), start 2007-11-01, no end found (last seen 2021-07-31) - GROUP HEALTH INCORPORATED (`le:000482`), start 2006-11-15, to 2007-12-31 - GROUP HEALTH INCORPORATED (`le:000482`), start 2006-11-15, to 2007-01-31 - Group Health Incorporated (GHI) (`le:000801`), start 2006-11-15, still true - Group Health Incorporated (GHI) (`le:000801`), start 2006-11-15, still true - HEALTH INSURANCE PLAN OF GREATER NEW YORK (`le:000574`), at least since 2009-12-01, still true - HIP HEALTH PLAN OF NEW YORK (`le:000805`), start 2006-11-15, no end found (last seen 2009-11-30) - HIP HEALTH PLAN OF NEW YORK (`le:000805`), start 2006-11-15, still true - HIP INSURANCE COMPANY OF NEW YORK (`le:000804`), start 2006-11-15, no end found (last seen 2010-12-31) - HIP OF GREATER NEW YORK (`le:000798`), start 2006-11-15, no end found (last seen 2009-11-30) Tools: `resolve_entity(text="EmblemHealth, Inc.")`, `describe_entity(entity_id="le:000575", on="YYYY-MM-DD")`. # Health Plan of the Upper Ohio Valley Vlada entity `le:000839` · legal entity · holds 3 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name HEALTH PLAN OF THE UPPER OHIO VALLEY; cms_org_name Health Plan of West Virginia; cms_org_name Health Plan of the Upper Ohio Valley; cms_org_name THE HEALTH PLAN OF WEST VIRGINIA; cms_org_name THE HEALTH PLAN OF WEST VIRGINIA, INC.; cms_org_name The Health Plan of West Virginia, Inc.; ein 550585592; naic 95677 **Owns or controls.** - HOMETOWN HEALTH PLAN (`le:000629`), at least since 2003-07-01, still true - HOMETOWN HEALTH PLAN [Upper Ohio Valley] (`le:003829`), start 2008-01-01, no end found (last seen 2015-03-31) - HOMETOWN HEALTH PLAN [Upper Ohio Valley] (`le:004219`), at least since 2006-08-01, still true - THP INSURANCE COMPANY (`le:001203`), at least since 2008-01-01, still true - The Health Plan of the Upper Ohio Valley, Inc. (`le:004109`), at least since 2013-01-01, no end found (last seen 2016-12-31) **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H3672 (`contract:H3672`) - The Health Plan of West Virginia, Inc. (`hios:72982`) - The Health Plan of West Virginia, Inc. (`hios:83396`) Tools: `resolve_entity(text="Health Plan of the Upper Ohio Valley")`, `describe_entity(entity_id="le:000839", on="YYYY-MM-DD")`. # Henry Ford Health System Vlada entity `le:000255` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name HENRY FORD HEALTH SYSTEM; cms_org_name Henry Ford Health System **Owns or controls.** - ALLIANCE HEALTH AND LIFE INSURANCE COMPANY (`le:000260`), start 2013-04-01, still true - ALLIANCE HEALTH AND LIFE INSURANCE COMPANY (`le:000260`), at least since 2006-08-01, to 2013-06-30 - CENTER FOR SENIOR INDEPENDENCE (`le:000254`), at least since 2012-05-01, no end found (last seen 2016-01-31) - HAP CARESOURCE (`le:001274`), at least since 2024-04-01, still true - HAP EMPOWERED HEALTH PLAN, INC. (`le:001275`), at least since 2020-04-01, no end found (last seen 2024-03-31) - HAP MIDWEST HEALTH PLAN, INC. (`le:001386`), at least since 2014-08-01, no end found (last seen 2020-03-31) - HARBOR HEALTH PLAN, INC. (`le:001167`), start 2019-06-10, still true - HEALTH ALLIANCE PLAN OF MICHIGAN (`le:000252`), start 2013-04-01, still true - HEALTH ALLIANCE PLAN OF MICHIGAN (`le:000252`), at least since 2006-08-01, to 2013-03-31 - HEALTHPLUS INSURANCE COMPANY (`le:001898`), start 2016-02-01, still true - Health Alliance Plan (HAP) (`le:000253`), start 1986-01-01, still true - HealthPlus of Michigan, Inc. (`le:004138`), at least since 2013-01-01, no end found (last seen 2015-12-31) - MIDWEST HEALTH PLAN, INC. (`le:001994`), start 2011-12-01, no end found (last seen 2014-07-31) - PACE SOUTHEAST MICHIGAN (`le:000256`), at least since 2016-02-01, still true Tools: `resolve_entity(text="Henry Ford Health System")`, `describe_entity(entity_id="le:000255", on="YYYY-MM-DD")`. # HUMANA BENEFIT PLAN OF ILLINOIS, INC. Vlada entity `le:000173` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name HUMANA BENEFIT PLAN OF ILLINOIS, INC; cms_org_name HUMANA BENEFIT PLAN OF ILLINOIS, INC.; ein 371326199; naic 60052 **Owned or controlled by.** - Humana Inc. (`le:000009`), controlled by, at least since 2009-07-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 3 - H1468 (`contract:H1468`) - H4329 (`contract:H4329`) - H5525 (`contract:H5525`) - Humana Benefit Plan of Illinois, Inc. (`hios:65327`) - Humana Benefit Plan of Illinois, Inc. (`hios:80957`) - Humana Benefit Plan of Illinois, Inc. (`hios:87715`) Tools: `resolve_entity(text="HUMANA BENEFIT PLAN OF ILLINOIS, INC.")`, `describe_entity(entity_id="le:000173", on="YYYY-MM-DD")`. # Liberty National Life Insurance Co Vlada entity `le:002469` · legal entity · holds 6 instruments directly **Identifiers.** ein 630124600; naic 65331 **Owned or controlled by.** - Torchmark Corporation (`le:001757`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 6 - Liberty National Life Insurance Co (`hios:41707`) - Liberty National Life Insurance Co (`hios:42256`) - Liberty National Life Insurance Co (`hios:44988`) - Liberty National Life Insurance Co (`hios:56753`) - Liberty National Life Insurance Co (`hios:78620`) - Liberty National Life Insurance Co (`hios:98023`) Tools: `resolve_entity(text="Liberty National Life Insurance Co")`, `describe_entity(entity_id="le:002469", on="YYYY-MM-DD")`. # LOUISIANA HEALTH SERVICE & INDEMNITY COMPANY Vlada entity `le:000376` · legal entity · holds 2 instruments directly and 4 through subsidiaries **Identifiers.** cms_org_name LOUISIANA HEALTH SERVICE & INDEMNITY COMPANY; cms_org_name LOUISIANA HEALTH SERVICE & INDEMNITY COMPANY; cms_org_name LOUISIANA HEALTH SERVICE AND INDEMNITY COMPANY; cms_org_name Louisiana Health Service & Indemnity Company; ein 237384555; naic 81200 **Owned or controlled by.** - BlueCross BlueShield of Louisiana (`le:001767`), controlled by, at least since 2006-08-01, to 2018-12-31, grade B **Owns or controls.** - HMO LOUISIANA, INC. (`le:002297`), at least since 2019-01-01, still true - Louisiana Health Services Indemnity Company (`le:002754`), at least since 2022-01-01, no end found (last seen 2022-12-31) - Primewell Health Services of Arkansas, Inc. (`le:000745`), at least since 2023-09-01, no end found (last seen 2025-12-31) - Primewell Health Services of Mississippi Inc. (`le:001132`), at least since 2023-09-01, no end found (last seen 2025-12-31) - VANTAGE HEALTH PLAN OF ARKANSAS, INC. (`le:000501`), start 2020-02-01, no end found (last seen 2024-02-29) - VANTAGE HEALTH PLAN OF ARKANSAS, INC. (`le:000501`), at least since 2020-01-01, to 2020-01-31 - VANTAGE HEALTH PLAN OF MISSISSIPPI, INC. (`le:001133`), at least since 2021-01-01, no end found (last seen 2024-02-29) - VANTAGE HEALTH PLAN, INC. (`le:000527`), start 2019-01-01, no end found (last seen 2023-12-31) - Vantage Holdings, Inc. (`le:000528`), start 2019-01-01, still true **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H1248 (`contract:H1248`) - Louisiana Health Service and Indemnity Company (`hios:97176`) Tools: `resolve_entity(text="LOUISIANA HEALTH SERVICE & INDEMNITY COMPANY")`, `describe_entity(entity_id="le:000376", on="YYYY-MM-DD")`. # MASS GENERAL BRIGHAM HEALTH PLAN, INC Vlada entity `le:000096` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name MASS GENERAL BRIGHAM HEALTH PLAN, INC; cms_org_name Mass General Brigham Health Plan, Inc.; ein 042932021; naic 11109 **Owned or controlled by.** - Mass General Brigham Incorporated (`le:000097`), controlled by, at least since 2023-01-01, still true, grade B **Holds.** Medicare contract: 5; Marketplace issuer: 1 - H0777 (`contract:H0777`) - H1611 (`contract:H1611`) - H6847 (`contract:H6847`) - H9485 (`contract:H9485`) - S6939 (`contract:S6939`) - Neighborhood Health Plan, Inc. (`hios:41304`) Tools: `resolve_entity(text="MASS GENERAL BRIGHAM HEALTH PLAN, INC")`, `describe_entity(entity_id="le:000096", on="YYYY-MM-DD")`. # Mass General Brigham Incorporated Vlada entity `le:000097` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name Mass General Brigham Incorporated **Owns or controls.** - MASS GENERAL BRIGHAM HEALTH PLAN, INC (`le:000096`), at least since 2023-01-01, still true Tools: `resolve_entity(text="Mass General Brigham Incorporated")`, `describe_entity(entity_id="le:000097", on="YYYY-MM-DD")`. # MODA HEALTH PLAN, INC. Vlada entity `le:000853` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name MODA HEALTH PLAN, INC.; ein 930989307; naic 47098 **Owned or controlled by.** - Oregon Dental Association (`le:004087`), controlled by, at least since 2013-04-01, to 2015-06-30, grade B - Oregon Dental Association (`le:004087`), controlled by, start 2015-07-01, to 2019-03-31, grade B - Oregon Dental Association (`le:004087`), controlled by, start 2019-04-01, still true, grade B **Holds.** Marketplace issuer: 5; Medicare contract: 1 - S5975 (`contract:S5975`) - Moda Health Plan, Inc. (`hios:17933`) - Moda Health Plan, Inc. (`hios:39424`) - Moda Health Plan, Inc. (`hios:65907`) - Moda Health Plan, Inc. (`hios:73836`) - Moda Health Plan, Inc. (`hios:80588`) Tools: `resolve_entity(text="MODA HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000853", on="YYYY-MM-DD")`. # MVP Health Care, Inc. Vlada entity `le:000588` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name MVP Health Care, Inc. **Owns or controls.** - MVP HEALTH PLAN, INC. (`le:000587`), start 2009-06-01, still true - MVP Health Insurance Company (`le:002597`), at least since 2013-01-01, no end found (last seen 2021-12-31) - MVP Health Insurance Company of New Hampshire, Inc (`le:004183`), at least since 2013-01-01, no end found (last seen 2014-12-31) - MVP Health Services Corp. (`le:002694`), at least since 2014-01-01, still true - Preferred Care, Inc. (`le:000572`), start 2006-01-01, to 2009-04-30 - Preferred Care, Inc. (`le:000572`), start 2006-01-01, to 2009-04-30 - ROCHESTER AREA HEALTH MAINTENANCE ORG. (`le:000589`), start 2008-10-01, no end found (last seen 2009-05-31) - ROCHESTER AREA HEALTH MAINTENANCE ORG. (`le:000589`), at least since 2006-08-01, to 2008-09-30 - ROCHESTER AREA HMO/ DBA PREFERRED CARE (`le:000571`), start 2008-10-01, to 2009-04-30 - ROCHESTER AREA HMO/ DBA PREFERRED CARE (`le:000571`), at least since 2006-08-01, to 2008-09-30 Tools: `resolve_entity(text="MVP Health Care, Inc.")`, `describe_entity(entity_id="le:000588", on="YYYY-MM-DD")`. # Oregon Dental Association Vlada entity `le:004087` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Owns or controls.** - Health Services Group, Inc. (`le:000854`), at least since 2009-10-01, still true - MODA HEALTH PLAN, INC. (`le:000853`), start 2019-04-01, still true - MODA HEALTH PLAN, INC. (`le:000853`), at least since 2013-04-01, to 2015-06-30 - MODA HEALTH PLAN, INC. (`le:000853`), start 2015-07-01, to 2019-03-31 - Moda Partners, Inc. (`le:000507`), start 2019-02-27, still true - Moda Partners, Inc. (`le:000507`), start 2019-03-01, still true - Moda, Inc. (`le:001833`), at least since 2015-07-01, still true - ODS HEALTH PLAN, INC. (`le:002167`), start 2009-10-01, no end found (last seen 2013-03-31) - ODS HEALTH PLAN, INC. (`le:002167`), at least since 2006-08-01, to 2009-09-30 - SUMMIT HEALTH PLAN, INC. [Oregon (Moda, 2021)] (`le:004079`), at least since 2021-01-01, no end found (last seen 2024-12-31) - The ODS Companies (ODS) (`le:002168`), at least since 2006-08-01, still true Tools: `resolve_entity(text="Oregon Dental Association")`, `describe_entity(entity_id="le:004087", on="YYYY-MM-DD")`. # SANFORD HEALTH PLAN Vlada entity `le:000430` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name SANFORD HEALTH PLAN; cms_org_name Sanford Health Plan; cms_org_name Sanford Health Plan; ein 911842494; naic 95683 **Owned or controlled by.** - Sanford Health (`le:000347`), controlled by, at least since 2010-02-05, still true, grade B - Sanford Health (`le:000347`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 3 - H1787 (`contract:H1787`) - H8385 (`contract:H8385`) - H8967 (`contract:H8967`) - Sanford Health Plan (`hios:31195`) - Sanford Health Plan (`hios:85930`) - Sanford Health Plan (`hios:89364`) Tools: `resolve_entity(text="SANFORD HEALTH PLAN")`, `describe_entity(entity_id="le:000430", on="YYYY-MM-DD")`. # Sentara Healthcare Vlada entity `le:000123` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name Sentara Health Care (SHC); cms_org_name Sentara Healthcare; cms_org_name Sentara Healthcare **Owns or controls.** - AVMED, INC. (`le:000122`), start 2022-12-31, no end found (last seen 2025-12-31) - AVMED, INC. (`le:000122`), start 2022-12-31, still true - AvMed Health Plans (`le:001370`), start 2022-12-31, still true - OPTIMA HEALTH INSURANCE COMPANY (`le:001323`), at least since 2006-08-01, no end found (last seen 2011-12-31) - OPTIMA HEALTH PLAN (`le:000286`), at least since 2014-01-01, no end found (last seen 2024-04-30) - SENTARA HEALTH PLANS (`le:000288`), at least since 2024-05-01, still true - SENTARA LIFE CARE CORPORATION, INC (`le:000755`), start 2008-10-01, still true - SENTARA MEDICARE ADVANTAGE OF NORTH CAROLINA INC (`le:001530`), at least since 2025-01-01, no end found (last seen 2025-12-31) - Sentara Health Insurance Company (`le:002743`), at least since 2022-01-01, still true - VIRGINIA PREMIER HEALTH PLAN, INC. (`le:000765`), start 2020-10-01, no end found (last seen 2023-12-31) - Virginia Premier Health Plan (`le:003623`), start 2020-04-08, still true Tools: `resolve_entity(text="Sentara Healthcare")`, `describe_entity(entity_id="le:000123", on="YYYY-MM-DD")`. # The Carle Foundation Vlada entity `le:000166` · legal entity · holds 0 instruments directly and 6 through subsidiaries **Identifiers.** cms_org_name The Carle Foundation **Owns or controls.** - FIRSTCAROLINACARE INSURANCE COMPANY (`le:001057`), start 2020-06-01, no end found (last seen 2025-12-31) - FIRSTCAROLINACARE INSURANCE COMPANY (`le:001057`), start 2020-03-01, still true - HEALTH ALLIANCE - MIDWEST, INC. (`le:000196`), start 2015-04-01, no end found (last seen 2025-12-31) - HEALTH ALLIANCE - MIDWEST, INC. (`le:000196`), at least since 2014-01-01, to 2015-03-31 - HEALTH ALLIANCE CONNECT (`le:001873`), at least since 2015-09-01, no end found (last seen 2015-12-31) - HEALTH ALLIANCE CONNECT, INC. (`le:000172`), at least since 2015-01-01, no end found (last seen 2025-12-31) - HEALTH ALLIANCE MEDICAL PLANS (`le:000165`), start 2010-04-01, still true - HEALTH ALLIANCE MEDICAL PLANS (`le:000165`), start 2010-04-01, no end found (last seen 2024-12-31) - HEALTH ALLIANCE MEDICAL PLANS (`le:000165`), start 2010-04-01, still true - HEALTH ALLIANCE NORTHWEST HEALTH PLAN (`le:002157`), start 2015-04-01, no end found (last seen 2024-12-31) - HEALTH ALLIANCE NORTHWEST HEALTH PLAN (`le:002157`), at least since 2014-01-01, to 2015-03-31 - Health Alliance Medical Plans, Inc. (`le:002420`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Health Alliance Medical Plans, Inc. (`le:002420`), at least since 2014-01-01, still true Tools: `resolve_entity(text="The Carle Foundation")`, `describe_entity(entity_id="le:000166", on="YYYY-MM-DD")`. # UnitedHealthcare Benefits of Texas, Inc. Vlada entity `le:000160` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE BENEFITS OF TEXAS, INC.; cms_org_name UnitedHealthcare Benefits of Texas, Inc.; ein 330115163; naic 95174 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2011-07-01, still true, grade B **Holds.** Medicare contract: 5; Marketplace issuer: 1 - H0609 (`contract:H0609`) - H0624 (`contract:H0624`) - H1360 (`contract:H1360`) - H3805 (`contract:H3805`) - H6706 (`contract:H6706`) - UnitedHealthcare Benefits of Texas, Inc. (`hios:70754`) Tools: `resolve_entity(text="UnitedHealthcare Benefits of Texas, Inc.")`, `describe_entity(entity_id="le:000160", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE OF NEW ENGLAND, INC. Vlada entity `le:000095` · legal entity · holds 6 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE OF NEW ENGLAND, INC.; cms_org_name UNITEDHEALTHCARE OF NEW ENGLAND, INC.; cms_org_name UnitedHealthcare of New England, Inc.; ein 050413469; naic 95149 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2008-10-01, still true, grade B **Holds.** Medicare contract: 4; Marketplace issuer: 2 - H0764 (`contract:H0764`) - H2226 (`contract:H2226`) - H2272 (`contract:H2272`) - H4610 (`contract:H4610`) - UnitedHealthcare of New England Inc. (`hios:65667`) - UnitedHealthcare of New England Inc. (`hios:79881`) Tools: `resolve_entity(text="UNITEDHEALTHCARE OF NEW ENGLAND, INC.")`, `describe_entity(entity_id="le:000095", on="YYYY-MM-DD")`. # Aware Integrated, Inc. Vlada entity `le:000278` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name Aware Integrated, Inc. **Owns or controls.** - BCBSM, Inc. (`le:001927`), at least since 2022-04-01, still true - BLUE CROSS AND BLUE SHIELD OF MINNESOTA (`le:000114`), at least since 2016-04-01, still true - BLUE CROSS AND BLUE SHIELD OF MINNESOTA (`le:000114`), start 2016-04-01, no end found (last seen 2022-03-31) - BLUE CROSS BLUE SHIELD OF MINNESOTA (`le:001928`), start 2016-04-01, no end found (last seen 2012-04-30) - BLUE PLUS (`le:000484`), start 2016-04-01, no end found (last seen 2022-03-31) - FIRST PLAN OF MINNESOTA (`le:000276`), start 2016-04-01, no end found (last seen 2009-12-31) - HMO Minnesota (`le:000277`), at least since 2022-04-01, still true - MII LIFE INSURANCE, INCORPORATED (`le:002223`), at least since 2019-05-01, no end found (last seen 2020-12-31) - MII LIFE, INC. (`le:001769`), at least since 2017-01-01, no end found (last seen 2019-04-30) Tools: `resolve_entity(text="Aware Integrated, Inc.")`, `describe_entity(entity_id="le:000278", on="YYYY-MM-DD")`. # Curana Health Holdings, LLC Vlada entity `le:000380` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name Curana Health Holdings, LLC **Owns or controls.** - ALIGN SENIOR CARE CALIFORNIA INC. (`le:000565`), start 2022-05-01, still true - ALIGN SENIOR CARE FLORIDA, INC. (`le:001297`), start 2022-05-01, still true - ALIGN SENIOR CARE MI, LLC (`le:001103`), start 2022-05-01, still true - ALIGN SENIOR CARE, INC. (`le:000379`), start 2022-05-01, no end found (last seen 2025-12-31) - Innovative Long Term Care Management, Inc. (`le:000381`), start 2022-05-01, still true - LAGNIAPPE ADVANTAGE INSURANCE COMPANY (`le:001088`), at least since 2026-01-01, still true - LIFEWORKS ADVANTAGE, LLC (`le:000239`), start 2024-04-01, still true - LIFEWORKS ADVANTAGE, LLC (`le:000239`), start 2022-06-01, to 2024-03-31 Tools: `resolve_entity(text="Curana Health Holdings, LLC")`, `describe_entity(entity_id="le:000380", on="YYYY-MM-DD")`. # Fallon Community Health Plan, Inc. Vlada entity `le:001442` · legal entity · holds 4 instruments directly and 1 through subsidiaries **Identifiers.** cms_org_name FALLON COMMUNITY HEALTH PLAN; cms_org_name Fallon Community Health Plan; cms_org_name Fallon Community Health Plan, Inc.; ein 237442369; naic 95541 **Owns or controls.** - FALLON TOTAL CARE, INC. (`le:000442`), at least since 2013-08-01, no end found (last seen 2015-12-31) - Fallon Health Weinberg (`le:003266`), at least since 2015-01-01, still true **Holds.** Medicare contract: 3; Marketplace issuer: 1 - H2219 (`contract:H2219`) - H8928 (`contract:H8928`) - H9001 (`contract:H9001`) - Fallon Community Health Plan (`hios:88806`) Tools: `resolve_entity(text="Fallon Community Health Plan, Inc.")`, `describe_entity(entity_id="le:001442", on="YYYY-MM-DD")`. # Healthfirst, Inc. Vlada entity `le:000976` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name HealthFirst, Inc; cms_org_name Healthfirst, Inc. **Owns or controls.** - HEALTHFIRST HEALTH PLAN, INC. (`le:000975`), at least since 2015-12-01, still true - HEALTHFIRST INSURANCE COMPANY, INC. (`le:001563`), at least since 2023-01-01, still true - MANAGED HEALTH, INC. (`le:000593`), start 2008-10-01, no end found (last seen 2015-11-30) Tools: `resolve_entity(text="Healthfirst, Inc.")`, `describe_entity(entity_id="le:000976", on="YYYY-MM-DD")`. # HEALTHPARTNERS INSURANCE COMPANY Vlada entity `le:001298` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name HEALTHPARTNERS INSURANCE COMPANY; cms_org_name HEALTHPARTNERS INSURANCE COMPANY; ein 411683523; naic 44547 **Owned or controlled by.** - HEALTHPARTNERS, INC. (`le:000483`), controlled by, at least since 2008-01-01, still true, grade B **Holds.** Marketplace issuer: 4; Medicare contract: 1 - H6309 (`contract:H6309`) - HealthPartners Insurance Company (`hios:20173`) - HealthPartners Insurance Company (`hios:26911`) - HealthPartners Insurance Company (`hios:72680`) - HealthPartners Insurance Company (`hios:85654`) Tools: `resolve_entity(text="HEALTHPARTNERS INSURANCE COMPANY")`, `describe_entity(entity_id="le:001298", on="YYYY-MM-DD")`. # Horizon Mutual Holdings, Inc Vlada entity `le:000774` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name Horizon Mutual Holdings, Inc **Owns or controls.** - HEALTHIER NEW JERSEY INSURANCE COMPANY (`le:001672`), start 2024-03-01, still true - HORIZON BLUE CROSS BLUE SHIELD OF NJ (`le:000440`), start 2022-11-01, no end found (last seen 2009-12-31) - HORIZON HEALTHCARE OF NEW JERSEY, INC. (`le:000560`), start 2022-11-01, still true - HORIZON HEALTHCARE SERVICES DBA HORIZON BCBS NJ (`le:001618`), start 2022-11-01, no end found (last seen 2013-02-28) - HORIZON INSURANCE COMPANY (`le:000773`), start 2022-11-01, still true - Horizon Blue Cross Blue Shield of New Jersey, (`le:000441`), start 2022-11-01, still true - Horizon Blue Cross Blue Shield of New Jersey, (`le:000441`), start 2022-11-01, still true - Horizon Healthcare of New Jersey (`le:002567`), at least since 2013-01-01, still true Tools: `resolve_entity(text="Horizon Mutual Holdings, Inc")`, `describe_entity(entity_id="le:000774", on="YYYY-MM-DD")`. # HPHC Insurance Company, Inc. Vlada entity `le:002574` · legal entity · holds 5 instruments directly **Identifiers.** ein 043149694; naic 18975 **Owned or controlled by.** - Point32Health, Inc. (`le:000047`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 5 - HPHC Insurance Company, Inc. (`hios:11593`) - HPHC Insurance Company, Inc. (`hios:14382`) - HPHC Insurance Company, Inc. (`hios:71616`) - HPHC Insurance Company, Inc. (`hios:89130`) - HPHC Insurance Company, Inc. (`hios:95878`) Tools: `resolve_entity(text="HPHC Insurance Company, Inc.")`, `describe_entity(entity_id="le:002574", on="YYYY-MM-DD")`. # Independent Health Association Vlada entity `le:003384` · legal entity · holds 2 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name INDEPENDENT HEALTH ASSOCIATION, INC.; cms_org_name Independent Health Association, Inc.; ein 161080163; naic 95308 **Owned or controlled by.** - INDEPENDENT HEALTH BENEFITS CORPORATION (`le:000802`), controlled by, at least since 2006-08-01, to 2007-12-31, grade B **Owns or controls.** - INDEPENDENT HEALTH BENEFITS CORPORATION (`le:000802`), start 2008-01-01, still true **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3362 (`contract:H3362`) - Independent Health Association, Inc (`hios:70552`) Tools: `resolve_entity(text="Independent Health Association")`, `describe_entity(entity_id="le:003384", on="YYYY-MM-DD")`. # Intermountain Health Care, Inc. Vlada entity `le:001912` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name Intermountain Health Care, Inc. **Owns or controls.** - HealthCare Partners Nevada (`le:003803`), start 2019-06-01, still true - SELECTHEALTH, INC. (`le:001911`), at least since 2013-01-01, still true - SelectHealth Benefit Assurance Company, Inc. (`le:004188`), at least since 2013-01-01, no end found (last seen 2013-12-31) Tools: `resolve_entity(text="Intermountain Health Care, Inc.")`, `describe_entity(entity_id="le:001912", on="YYYY-MM-DD")`. # Medica Vlada entity `le:000271` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name MEDICA HEALTH PLANS; cms_org_name Medica; cms_org_name Medica Health Plans; ein 411242261; naic 52626 **Owned or controlled by.** - Medica Holding Company (`le:000099`), controlled by, at least since 2011-05-01, still true, grade B - Medica Holding Company (`le:000099`), controlled by, start 2011-05-01, still true, grade B **Owns or controls.** - MEDICA HEALTH PLAN (`le:001151`), at least since 2008-01-01, to 2011-04-30 - MEDICA HEALTH PLAN S OF WISCONSIN (`le:000270`), at least since 2006-08-01, to 2011-04-30 - MEDICA INSURANCE COMPANY (`le:000272`), at least since 2006-08-01, to 2011-04-30 **Holds.** Medicare contract: 3; Marketplace issuer: 2 - H2458 (`contract:H2458`) - H6154 (`contract:H6154`) - H8889 (`contract:H8889`) - Medica Health Plans (`hios:15847`) - Medica Health Plans (`hios:73751`) Tools: `resolve_entity(text="Medica")`, `describe_entity(entity_id="le:000271", on="YYYY-MM-DD")`. # MVP HEALTH PLAN, INC. Vlada entity `le:000587` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name MVP HEALTH PLAN, INC,; cms_org_name MVP HEALTH PLAN, INC.; ein 141640868; naic 95521 **Owned or controlled by.** - MVP Health Care, Inc. (`le:000588`), controlled by, start 2009-06-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 2 - H3305 (`contract:H3305`) - H9615 (`contract:H9615`) - S0586 (`contract:S0586`) - MVP Health Plan, Inc (`hios:56184`) - MVP Health Plan, Inc (`hios:77566`) Tools: `resolve_entity(text="MVP HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000587", on="YYYY-MM-DD")`. # OPTIMUM CHOICE, INC. Vlada entity `le:002180` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name OPTIMUM CHOICE, INC.; ein 521518174; naic 96940 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2019-01-01, no end found (last seen 2021-12-31), grade B **Holds.** Marketplace issuer: 5 - Optimum Choice Inc. (`hios:24251`) - Optimum Choice Inc. (`hios:72375`) - Optimum Choice Inc. (`hios:75753`) - Optimum Choice Inc. (`hios:95628`) - Optimum Choice Inc. (`hios:97569`) Tools: `resolve_entity(text="OPTIMUM CHOICE, INC.")`, `describe_entity(entity_id="le:002180", on="YYYY-MM-DD")`. # Premera Vlada entity `le:001249` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name Premera **Owns or controls.** - LifeWise Assurance Company (`le:002599`), at least since 2013-01-01, still true - LifeWise Health Plan of Oregon (`le:002689`), at least since 2013-01-01, no end found (last seen 2018-12-31) - LifeWise Health Plan of Washington (`le:002492`), at least since 2013-01-01, still true - PREMERA BLUE CROSS (`le:001248`), at least since 2014-01-01, no end found (last seen 2024-12-31) - Premera Blue Cross HMO (`le:002765`), at least since 2023-01-01, still true Tools: `resolve_entity(text="Premera")`, `describe_entity(entity_id="le:001249", on="YYYY-MM-DD")`. # Providence St Joseph Health Vlada entity `le:000848` · legal entity · holds 0 instruments directly and 5 through subsidiaries **Identifiers.** cms_org_name Providence St Joseph Health; cms_org_name Providence St. Joseph Health **Owns or controls.** - PROVIDENCE HEALTH & SERVICES - OREGON (`le:000846`), start 2022-08-01, no end found (last seen 2022-08-31) - PROVIDENCE HEALTH & SERVICES - OREGON (`le:000846`), start 2016-07-01, to 2022-07-31 - PROVIDENCE HEALTH & SERVICES - OREGON (`le:000846`), start 2022-09-01, still true - PROVIDENCE HEALTH & SERVICES – WASHINGTON (`le:002235`), at least since 2024-04-01, still true - PROVIDENCE HEALTH ASSURANCE (`le:001538`), start 2022-08-01, to 2023-03-31 - PROVIDENCE HEALTH ASSURANCE (`le:001538`), start 2023-04-01, still true - PROVIDENCE HEALTH ASSURANCE (`le:001538`), at least since 2016-08-01, to 2022-07-31 - PROVIDENCE HEALTH ASSURANCE (`le:001538`), start 2022-09-01, to 2023-03-31 - PROVIDENCE HEALTH PLAN (`le:001232`), start 2016-07-01, no end found (last seen 2016-07-31) - PROVIDENCE HEALTH PLANS (`le:001329`), start 2016-07-01, no end found (last seen 2013-12-31) - PROVIDENCE HEALTH SYSTEM - OREGON (`le:000849`), start 2016-07-01, no end found (last seen 2010-04-30) - Providence Health & Services (`le:000847`), start 2016-07-01, still true - Providence Health & Services (`le:000847`), start 2016-07-01, to 2022-08-31 - St. Joseph Health (`le:003800`), start 2016-07-01, still true Tools: `resolve_entity(text="Providence St Joseph Health")`, `describe_entity(entity_id="le:000848", on="YYYY-MM-DD")`. # SELECTHEALTH, INC. Vlada entity `le:001911` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name SELECTHEALTH, INC.; ein 870409820; naic 95153 **Owned or controlled by.** - Intermountain Health Care, Inc. (`le:001912`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 4; Medicare contract: 1 - H1994 (`contract:H1994`) - SelectHealth, Inc. (`hios:26002`) - SelectHealth, Inc. (`hios:55584`) - SelectHealth, Inc. (`hios:68781`) - SelectHealth, Inc. (`hios:84445`) Tools: `resolve_entity(text="SELECTHEALTH, INC.")`, `describe_entity(entity_id="le:001911", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE OF THE MID-ATLANTIC, INC. Vlada entity `le:001477` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE OF THE MID-ATLANTIC, INC.; ein 521130183; naic 95025 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2018-01-01, still true, grade B **Holds.** Marketplace issuer: 3; Medicare contract: 2 - H2445 (`contract:H2445`) - H7464 (`contract:H7464`) - UnitedHealthcare of the Mid-Atlantic, Inc. (`hios:21066`) - UnitedHealthcare of the Mid-Atlantic, Inc. (`hios:31112`) - UnitedHealthcare of the Mid-Atlantic, Inc. (`hios:38599`) Tools: `resolve_entity(text="UNITEDHEALTHCARE OF THE MID-ATLANTIC, INC.")`, `describe_entity(entity_id="le:001477", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE OF WISCONSIN, INC. Vlada entity `le:000028` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE OF WISCONSIN; cms_org_name UNITEDHEALTHCARE OF WISCONSIN INC.; cms_org_name UNITEDHEALTHCARE OF WISCONSIN, INC; cms_org_name UNITEDHEALTHCARE OF WISCONSIN, INC.; ein 391555888; naic 95710 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2008-01-01, still true, grade B **Holds.** Medicare contract: 4; Marketplace issuer: 1 - H0169 (`contract:H0169`) - H3794 (`contract:H3794`) - H5253 (`contract:H5253`) - H6595 (`contract:H6595`) - UnitedHealthcare of Wisconsin, Inc. (`hios:80180`) Tools: `resolve_entity(text="UNITEDHEALTHCARE OF WISCONSIN, INC.")`, `describe_entity(entity_id="le:000028", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE PLAN OF THE RIVER VALLEY, INC. Vlada entity `le:000320` · legal entity · holds 5 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE PLAN OF THE RIVER VALLEY, INC.; ein 363379945; naic 95378 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2007-01-01, still true, grade B **Holds.** Marketplace issuer: 4; Medicare contract: 1 - H0251 (`contract:H0251`) - UnitedHealthcare Plan of the River Valley, Inc. (`hios:35351`) - UnitedHealthcare Plan of the River Valley, Inc. (`hios:56610`) - UnitedHealthcare Plan of the River Valley, Inc. (`hios:58239`) - UnitedHealthcare Plan of the River Valley, Inc. (`hios:89498`) Tools: `resolve_entity(text="UNITEDHEALTHCARE PLAN OF THE RIVER VALLEY, INC.")`, `describe_entity(entity_id="le:000320", on="YYYY-MM-DD")`. # AETNA HEALTH OF UTAH INC. Vlada entity `le:001204` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name AETNA HEALTH OF UTAH INC; cms_org_name AETNA HEALTH OF UTAH INC.; cms_org_name AETNA HEALTH OF UTAH, INC; cms_org_name AETNA HEALTH OF UTAH, INC.; ein 870345631; naic 95407 **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2015-04-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Marketplace issuer: 3; Medicare contract: 1 - H8649 (`contract:H8649`) - Aetna Health of Utah Inc. (`hios:38927`) - Aetna Health of Utah Inc. (`hios:65779`) - Aetna Health of Utah Inc. (`hios:79022`) Tools: `resolve_entity(text="AETNA HEALTH OF UTAH INC.")`, `describe_entity(entity_id="le:001204", on="YYYY-MM-DD")`. # Ascension Health Alliance Vlada entity `le:001210` · legal entity · holds 0 instruments directly and 4 through subsidiaries **Identifiers.** cms_org_name Ascension Health Alliance **Owns or controls.** - ALEXIAN BROTHERS COMMUNITY SERVICES (`le:000706`), start 2018-05-01, still true - ALEXIAN BROTHERS COMMUNITY SERVICES (`le:000706`), start 2012-04-01, to 2017-03-31 - ASCENSION LIVING ST. VINCENT PACE, INC. (`le:001718`), at least since 2023-07-01, still true - Acension Health (`le:002127`), start 2011-09-13, still true - Affinity Health System (`le:001348`), start 2013-04-01, still true - Ascension Health Senior Care (`le:002195`), at least since 2018-05-01, still true - Ascension Via Christi (`le:003835`), at least since 2016-04-01, still true - Center for Gerontology (`le:002342`), at least since 2021-05-01, still true - GENESYS AMBULATORY HEALTH SERVICES, INC. (`le:001527`), at least since 2018-06-01, no end found (last seen 2021-04-30) - GENESYS REGIONAL MEDICAL CENTER, INC. (`le:001209`), start 2018-05-01, no end found (last seen 2018-05-31) - Genesys Health System (`le:002343`), at least since 2018-05-01, to 2024-09-30 - Ministry Health Care, Inc. (`le:000368`), start 2013-04-01, still true - NETWORK HEALTH INSURANCE CORPORATION (`le:000367`), start 2013-04-01, to 2014-11-10 - NETWORK HEALTH PLAN (`le:002243`), start 2013-04-01, to 2014-03-31 - VIA CHRISTI HEALTHCARE OUTREACH FOR ELDERS, INC. (`le:001901`), start 2018-05-01, still true - VIA CHRISTI HEALTHCARE OUTREACH FOR ELDERS, INC. (`le:001901`), at least since 2016-04-01, to 2018-04-30 - VIA CHRISTI HEALTHCARE OUTREACH FOR ELDERS, INC. (`le:001901`), at least since 2016-04-01, still true - Via Christi Village, Inc. (`le:001902`), start 2014-01-01, still true Tools: `resolve_entity(text="Ascension Health Alliance")`, `describe_entity(entity_id="le:001210", on="YYYY-MM-DD")`. # ATRIO HEALTH PLANS Vlada entity `le:001418` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name ATRIO HEALTH PLANS; cms_org_name ATRIO Health Plans; ein 432071108; naic 10123 **Owned or controlled by.** - Chicago Pacific Founders (`le:004091`), controlled by, start 2019-06-20, still true, grade B **Owns or controls.** - MARION POLK COMMUNITY HEALTH PLAN ADVANTAGE, INC. (`le:001042`), start 2012-01-01, to 2012-04-29 **Holds.** Medicare contract: 4 - H3814 (`contract:H3814`) - H5995 (`contract:H5995`) - H6743 (`contract:H6743`) - H7006 (`contract:H7006`) Tools: `resolve_entity(text="ATRIO HEALTH PLANS")`, `describe_entity(entity_id="le:001418", on="YYYY-MM-DD")`. # BlueCross BlueShield of Alabama Vlada entity `le:000388` · legal entity · holds 2 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name BLUE CROSS AND BLUE SHIELD OF ALABAMA; cms_org_name BlueCross BlueShield of Alabama; ein 630103830; naic 55433 **Owns or controls.** - BCBS OF ALABAMA & UTIC INSURANCE COMPANY (`le:001587`), at least since 2015-04-01, still true - PATRIUS HEALTH, INC. (`le:000387`), at least since 2023-01-01, still true **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H0104 (`contract:H0104`) - Blue Cross and Blue Shield of Alabama (`hios:46944`) Tools: `resolve_entity(text="BlueCross BlueShield of Alabama")`, `describe_entity(entity_id="le:000388", on="YYYY-MM-DD")`. # BlueCross BlueShield of South Carolina (BCBSSC) Vlada entity `le:000692` · legal entity · holds 0 instruments directly and 4 through subsidiaries **Identifiers.** cms_org_name BlueCross BlueShield of South Carolina (BCBSSC) **Owns or controls.** - BLUE CROSS BLUE SHIELD OF SOUTH CAROLINA (`le:001846`), at least since 2008-02-01, no end found (last seen 2008-12-31) - BLUECHOICE HEALTHPLAN OF SOUTH CAROLINA, INC. (`le:000896`), at least since 2006-08-01, no end found (last seen 2008-01-31) - BLUECROSS AND BLUESHIELD OF SOUTH CAROLINA (`le:000693`), at least since 2006-08-01, still true - Companion Life Insurance Company (`le:002638`), at least since 2013-01-01, no end found (last seen 2018-12-31) - INSTIL HEALTH INSURANCE COMPANY (`le:000691`), at least since 2006-08-01, no end found (last seen 2009-12-31) - Niagara Life and Health Insurance Company (`le:004195`), at least since 2013-01-01, no end found (last seen 2014-12-31) Tools: `resolve_entity(text="BlueCross BlueShield of South Carolina (BCBSSC)")`, `describe_entity(entity_id="le:000692", on="YYYY-MM-DD")`. # BRAVO HEALTH PENNSYLVANIA, INC. Vlada entity `le:000502` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name BRAVO HEALTH PENNSYLVANIA INC.; cms_org_name BRAVO HEALTH PENNSYLVANIA, INC. **Owned or controlled by.** - Bravo Health, Inc. (`le:000392`), controlled by, at least since 2007-08-01, to 2010-11-29, grade B - HealthSpring, Inc. (`le:000023`), controlled by, start 2010-11-30, to 2012-01-30, grade A - The Cigna Group (`le:000087`), controlled by, start 2012-01-31, to 2025-03-18, grade A - Health Care Service Corporation (`le:000089`), controlled by, start 2025-03-19, still true, grade A **Holds.** Medicare contract: 4 - H0354 (`contract:H0354`) - H2752 (`contract:H2752`) - H3949 (`contract:H3949`) - H9725 (`contract:H9725`) Tools: `resolve_entity(text="BRAVO HEALTH PENNSYLVANIA, INC.")`, `describe_entity(entity_id="le:000502", on="YYYY-MM-DD")`. # BridgeSpan Health Company Vlada entity `le:002631` · legal entity · holds 4 instruments directly **Identifiers.** ein 870388069; naic 95303 **Holds.** Marketplace issuer: 4 - BridgeSpan Health Company (`hios:34541`) - BridgeSpan Health Company (`hios:53732`) - BridgeSpan Health Company (`hios:59765`) - BridgeSpan Health Company (`hios:63474`) Tools: `resolve_entity(text="BridgeSpan Health Company")`, `describe_entity(entity_id="le:002631", on="YYYY-MM-DD")`. # Chicago Pacific Founders Vlada entity `le:004091` · legal entity · holds 0 instruments directly and 4 through subsidiaries **Owns or controls.** - ATRIO HEALTH PLANS (`le:001418`), start 2019-06-20, still true Tools: `resolve_entity(text="Chicago Pacific Founders")`, `describe_entity(entity_id="le:004091", on="YYYY-MM-DD")`. # COMMUNITY INSURANCE COMPANY Vlada entity `le:000742` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name COMMUNITY INSURANCE COMPANY; ein 311440175; naic 10345 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 1 - H2628 (`contract:H2628`) - H3655 (`contract:H3655`) - H7093 (`contract:H7093`) - Community Insurance Company (`hios:29276`) Tools: `resolve_entity(text="COMMUNITY INSURANCE COMPANY")`, `describe_entity(entity_id="le:000742", on="YYYY-MM-DD")`. # Enterprise Life Insurance Company Vlada entity `le:002490` · legal entity · holds 4 instruments directly **Identifiers.** ein 751617708; naic 89087 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2019-01-01, still true, grade B **Holds.** Marketplace issuer: 4 - Enterprise Life Insurance Company (`hios:29831`) - Enterprise Life Insurance Company (`hios:30669`) - Enterprise Life Insurance Company (`hios:70594`) - Enterprise Life Insurance Company (`hios:85570`) Tools: `resolve_entity(text="Enterprise Life Insurance Company")`, `describe_entity(entity_id="le:002490", on="YYYY-MM-DD")`. # EXCELLUS HEALTH PLAN, INC. Vlada entity `le:000591` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name EXCELLUS HEALTH PLAN, INC; cms_org_name EXCELLUS HEALTH PLAN, INC.; ein 150329043; naic 55107 **Owned or controlled by.** - Lifetime Healthcare, Inc. (`le:000791`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 1 - H3335 (`contract:H3335`) - H3351 (`contract:H3351`) - S3521 (`contract:S3521`) - Excellus Health Plan, Inc (`hios:78124`) Tools: `resolve_entity(text="EXCELLUS HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000591", on="YYYY-MM-DD")`. # Hartford Life & Accident Insurance Company Vlada entity `le:002409` · legal entity · holds 4 instruments directly **Identifiers.** ein 060838648; naic 70815 **Holds.** Marketplace issuer: 4 - Hartford Life & Accident Insurance Company (`hios:15197`) - Hartford Life & Accident Insurance Company (`hios:69150`) - Hartford Life & Accident Insurance Company (`hios:78366`) - Hartford Life & Accident Insurance Company (`hios:91651`) Tools: `resolve_entity(text="Hartford Life & Accident Insurance Company")`, `describe_entity(entity_id="le:002409", on="YYYY-MM-DD")`. # HAWAII MEDICAL SERVICE ASSOCIATION Vlada entity `le:000378` · legal entity · holds 2 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name HAWAII MEDICAL SERVICE ASSOCIATION; cms_org_name Hawaii Medical Service Association; ein 990040115; naic 49948 **Owns or controls.** - HAWAII MED. SRVC. ASSN. (`le:001889`), at least since 2006-08-01, no end found (last seen 2009-05-31) - HAWAII MEDICAL SERVICE ASSOCIATION (HMSA) (`le:000377`), at least since 2009-05-01, still true - HAWAII MEDICAL SERVICES ASSOCIATION (`le:001753`), at least since 2007-01-01, no end found (last seen 2009-04-30) **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3832 (`contract:H3832`) - Hawaii Medical Service Association (`hios:18350`) Tools: `resolve_entity(text="HAWAII MEDICAL SERVICE ASSOCIATION")`, `describe_entity(entity_id="le:000378", on="YYYY-MM-DD")`. # HealthKeepers, Inc. Vlada entity `le:000309` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name HEALTHKEEPERS, INC.; cms_org_name HealthKeepers, Inc.; ein 541356687; naic 95169 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 1 - H3447 (`contract:H3447`) - H4694 (`contract:H4694`) - H7220 (`contract:H7220`) - HealthKeepers, Inc. (`hios:88380`) Tools: `resolve_entity(text="HealthKeepers, Inc.")`, `describe_entity(entity_id="le:000309", on="YYYY-MM-DD")`. # Highmark Western and Northeastern New York Inc. Vlada entity `le:001743` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name Highmark Western and Northeastern New York Inc.; ein 161105741; naic 55204 **Owned or controlled by.** - Highmark Health (`le:000653`), controlled by, at least since 2021-05-01, still true, grade B **Holds.** Medicare contract: 3; Marketplace issuer: 1 - H3384 (`contract:H3384`) - H5526 (`contract:H5526`) - S1140 (`contract:S1140`) - Highmark Western and Northeastern New York Inc. (`hios:40064`) Tools: `resolve_entity(text="Highmark Western and Northeastern New York Inc.")`, `describe_entity(entity_id="le:001743", on="YYYY-MM-DD")`. # Investors Life Insurance Company of North America Vlada entity `le:002457` · legal entity · holds 4 instruments directly **Identifiers.** ein 231632193; naic 63487 **Holds.** Marketplace issuer: 4 - Investors Life Insurance Company of North America (`hios:47203`) - Investors Life Insurance Company of North America (`hios:53516`) - Investors Life Insurance Company of North America (`hios:79652`) - Investors Life Insurance Company of North America (`hios:90425`) Tools: `resolve_entity(text="Investors Life Insurance Company of North America")`, `describe_entity(entity_id="le:002457", on="YYYY-MM-DD")`. # Medical Associates Clinic Vlada entity `le:001351` · legal entity · holds 0 instruments directly and 4 through subsidiaries **Identifiers.** cms_org_name Medical Associates Clinic; cms_org_name Medical Associates Clinic, P.C. **Owns or controls.** - MEDICAL ASSOCIATES CLINIC HEALTH PLAN (`le:001350`), at least since 2006-08-01, still true - MEDICAL ASSOCIATES HEALTH PLAN, INC. (`le:001712`), at least since 2006-08-01, still true Tools: `resolve_entity(text="Medical Associates Clinic")`, `describe_entity(entity_id="le:001351", on="YYYY-MM-DD")`. # MERIDIAN HEALTH PLAN OF MICHIGAN, INC. Vlada entity `le:000062` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name MERIDIAN HEALTH PLAN OF MICHIGAN, INC.; ein 383253977; naic 52563 **Owned or controlled by.** - Caidan Enterprises, Inc. (`le:000063`), controlled by, at least since 2011-12-01, to 2018-10-31, grade B - WellCare Health Plans, Inc. (`le:000044`), controlled by, start 2018-10-01, to 2020-01-22, grade B - Centene Corporation (`le:000011`), controlled by, start 2020-01-23, still true, grade A **Holds.** Medicare contract: 3; Marketplace issuer: 1 - H2117 (`contract:H2117`) - H5475 (`contract:H5475`) - H7435 (`contract:H7435`) - Meridian Health Plan of Michigan, Inc. (`hios:58594`) Tools: `resolve_entity(text="MERIDIAN HEALTH PLAN OF MICHIGAN, INC.")`, `describe_entity(entity_id="le:000062", on="YYYY-MM-DD")`. # MotivHealth Insurance Company Vlada entity `le:002717` · legal entity · holds 4 instruments directly **Identifiers.** ein 473906935; naic 15743 **Holds.** Marketplace issuer: 4 - MotivHealth Insurance Company (`hios:22133`) - MotivHealth Insurance Company (`hios:25484`) - MotivHealth Insurance Company (`hios:54180`) - MotivHealth Insurance Company (`hios:79395`) Tools: `resolve_entity(text="MotivHealth Insurance Company")`, `describe_entity(entity_id="le:002717", on="YYYY-MM-DD")`. # QUARTZ HEALTH PLAN CORPORATION Vlada entity `le:000950` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name QUARTZ HEALTH PLAN CORPORATION; ein 391807071; naic 95101 **Owned or controlled by.** - University of Wisconsin Hospitals and Clincs Autho (`le:000951`), controlled by, at least since 2019-06-01, still true, grade B **Holds.** Marketplace issuer: 3; Medicare contract: 1 - H5262 (`contract:H5262`) - Quartz Health Plan Corporation (`hios:27651`) - Quartz Health Plan Corporation (`hios:33235`) - Quartz Health Plan Corporation (`hios:91058`) Tools: `resolve_entity(text="QUARTZ HEALTH PLAN CORPORATION")`, `describe_entity(entity_id="le:000950", on="YYYY-MM-DD")`. # REGENCE BLUECROSS BLUESHIELD OF OREGON Vlada entity `le:000648` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name REGENCE BLUE CROSS BLUE SHIELD OF OREGON; cms_org_name REGENCE BLUECROSS BLUESHIELD OF OREGON; ein 930238155; naic 54933 **Owned or controlled by.** - Cambia Health Solutions, Inc. (`le:000385`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 2 - H3817 (`contract:H3817`) - H6237 (`contract:H6237`) - Regence BlueCross BlueShield of Oregon (`hios:71281`) - Regence BlueCross BlueShield of Oregon (`hios:77969`) Tools: `resolve_entity(text="REGENCE BLUECROSS BLUESHIELD OF OREGON")`, `describe_entity(entity_id="le:000648", on="YYYY-MM-DD")`. # REGENCE BLUESHIELD OF IDAHO, INC. Vlada entity `le:000384` · legal entity · holds 4 instruments directly **Identifiers.** cms_org_name REGENCE BLUE SHIELD OF IDAHO; cms_org_name REGENCE BLUESHIELD OF IDAHO; cms_org_name REGENCE BLUESHIELD OF IDAHO, INC.; cms_org_name REGENCE BLUESHIELD OF IDAHO.; ein 820206874; naic 60131 **Owned or controlled by.** - Cambia Health Solutions, Inc. (`le:000385`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 2 - H1304 (`contract:H1304`) - H1969 (`contract:H1969`) - Regence BlueShield of Idaho, Inc. (`hios:44648`) - Regence BlueShield of Idaho, Inc. (`hios:79276`) Tools: `resolve_entity(text="REGENCE BLUESHIELD OF IDAHO, INC.")`, `describe_entity(entity_id="le:000384", on="YYYY-MM-DD")`. # Sirius America Insurance Company Vlada entity `le:002530` · legal entity · holds 4 instruments directly **Identifiers.** ein 132997499; naic 38776 **Holds.** Marketplace issuer: 4 - Sirius America Insurance Company (`hios:29030`) - Sirius America Insurance Company (`hios:31305`) - Sirius America Insurance Company (`hios:59295`) - Sirius America Insurance Company (`hios:94633`) Tools: `resolve_entity(text="Sirius America Insurance Company")`, `describe_entity(entity_id="le:002530", on="YYYY-MM-DD")`. # US Health and Life Insurance Company Vlada entity `le:002425` · legal entity · holds 4 instruments directly **Identifiers.** ein 061341715; ein 061341715; naic 97772; naic 97772 **Holds.** Marketplace issuer: 4 - US Health and Life Insurance Company (`hios:31663`) - US Health and Life Insurance Company (`hios:32542`) - US Health and Life Insurance Company (`hios:35755`) - US Health and Life Insurance Company (`hios:57125`) Tools: `resolve_entity(text="US Health and Life Insurance Company")`, `describe_entity(entity_id="le:002425", on="YYYY-MM-DD")`. # AETNA HEALTH INC. (PA) Vlada entity `le:000106` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name AETNA HEALTH INC. (PA); cms_org_name AETNA HEALTH, INC. (PA); cms_org_name AETNA HEALTH, INC, (PA); cms_org_name AETNA HEALTH, INC. (PA); cms_org_name AETNA HEALTH, INC. (PA) **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2012-05-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Medicare contract: 3 - H3931 (`contract:H3931`) - H3959 (`contract:H3959`) - H7149 (`contract:H7149`) Tools: `resolve_entity(text="AETNA HEALTH INC. (PA)")`, `describe_entity(entity_id="le:000106", on="YYYY-MM-DD")`. # ANTHEM HEALTH PLANS, INC. Vlada entity `le:000520` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name ANTHEM HEALTH PLANS INC.; cms_org_name ANTHEM HEALTH PLANS, INC; cms_org_name ANTHEM HEALTH PLANS, INC.; ein 061475928; naic 60217 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2007-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2836 (`contract:H2836`) - H5854 (`contract:H5854`) - Anthem Health Plans, Inc. (`hios:86545`) Tools: `resolve_entity(text="ANTHEM HEALTH PLANS, INC.")`, `describe_entity(entity_id="le:000520", on="YYYY-MM-DD")`. # Anthem HP, LLC Vlada entity `le:000427` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name ANTHEM HP, LLC; cms_org_name ANTHEM HP, LLC.; cms_org_name Anthem HP, LLC; ein 133865627; naic 16574 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2024-04-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H6988 (`contract:H6988`) - H8432 (`contract:H8432`) - Anthem HP, LLC (`hios:41046`) Tools: `resolve_entity(text="Anthem HP, LLC")`, `describe_entity(entity_id="le:000427", on="YYYY-MM-DD")`. # ASURIS NORTHWEST HEALTH Vlada entity `le:001328` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name ASURIS NORTHWEST HEALTH; ein 910495743; naic 47350 **Owned or controlled by.** - Cambia Health Solutions, Inc. (`le:000385`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Marketplace issuer: 2; Medicare contract: 1 - S5609 (`contract:S5609`) - Asuris Northwest Health (`hios:69364`) - Asuris Northwest Health (`hios:84333`) Tools: `resolve_entity(text="ASURIS NORTHWEST HEALTH")`, `describe_entity(entity_id="le:001328", on="YYYY-MM-DD")`. # Avera Health Plans, Inc. Vlada entity `le:002606` · legal entity · holds 3 instruments directly **Identifiers.** ein 460451539; naic 95839 **Holds.** Marketplace issuer: 3 - Avera Health Plans, Inc. (`hios:60536`) - Avera Health Plans, Inc. (`hios:71429`) - Avera Health Plans, Inc. (`hios:74980`) Tools: `resolve_entity(text="Avera Health Plans, Inc.")`, `describe_entity(entity_id="le:002606", on="YYYY-MM-DD")`. # Baystate Health, Inc. Vlada entity `le:001202` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Baystate Health, Inc. **Owns or controls.** - HEALTH NEW ENGLAND, INC. (`le:001201`), at least since 2009-01-01, still true Tools: `resolve_entity(text="Baystate Health, Inc.")`, `describe_entity(entity_id="le:001202", on="YYYY-MM-DD")`. # BCBSM, Inc. Vlada entity `le:001927` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name BCBSM, Inc.; ein 410984460; naic 55026 **Owned or controlled by.** - Aware Integrated, Inc. (`le:000278`), controlled by, at least since 2022-04-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2461 (`contract:H2461`) - H5959 (`contract:H5959`) - BCBSM, INC. (`hios:49316`) Tools: `resolve_entity(text="BCBSM, Inc.")`, `describe_entity(entity_id="le:001927", on="YYYY-MM-DD")`. # BLUE CROSS & BLUE SHIELD OF RHODE ISLAND Vlada entity `le:000829` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name BLUE CROSS & BLUE SHIELD OF RHODE ISLAND; cms_org_name BLUE CROSS AND BLUE SHIELD OF RHODE ISLAND; cms_org_name Blue Cross & Blue Shield of Rhode Island; ein 050158952; naic 53473 **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H3557 (`contract:H3557`) - H4152 (`contract:H4152`) - Blue Cross & Blue Shield of Rhode Island (`hios:15287`) Tools: `resolve_entity(text="BLUE CROSS & BLUE SHIELD OF RHODE ISLAND")`, `describe_entity(entity_id="le:000829", on="YYYY-MM-DD")`. # BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC. Vlada entity `le:000973` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC.; cms_org_name Blue Cross and Blue Shield of Florida; cms_org_name Blue Cross and Blue Shield of Florida; ein 592015694; naic 98167 **Owned or controlled by.** - Guidewell Mutual Holding Corporation (`le:000505`), controlled by, start 2014-01-01, still true, grade B - Guidewell Mutual Holding Corporation (`le:000505`), controlled by, start 2014-01-01, still true, grade B - Guidewell Mutual Holding Corporation (`le:000505`), controlled by, start 2014-01-01, still true, grade B **Owns or controls.** - BLUE CROSS AND BLUE SHIELD OF FL, INC. (`le:001309`), at least since 2010-01-01, to 2013-12-31 - BLUE CROSS BLUE SHIELD OF FLORIDA, INC. (`le:001813`), at least since 2008-01-01, to 2013-12-31 - CAPITAL HEALTH PLAN (`le:001408`), at least since 2006-08-01, to 2013-12-31 - FLORIDA HEALTH CARE PLAN, INC. (`le:000124`), start 2009-02-01, to 2013-12-31 - FLORIDA HEALTH CARE PLAN, INC. (`le:000124`), start 2009-01-01, to 2013-12-31 - HEALTH OPTIONS, INC. (`le:001680`), at least since 2006-08-01, to 2013-12-31 **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H5434 (`contract:H5434`) - S5904 (`contract:S5904`) - Blue Cross and Blue Shield of Florida, Inc. (`hios:16842`) Tools: `resolve_entity(text="BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC.")`, `describe_entity(entity_id="le:000973", on="YYYY-MM-DD")`. # Blue Cross and Blue Shield of Massachusetts, Inc. Vlada entity `le:000250` · legal entity · holds 1 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Blue Cross and Blue Shield of Massachusetts; cms_org_name Blue Cross and Blue Shield of Massachusetts, Inc.; ein 041045815; naic 53228 **Owns or controls.** - BCBS OF MASSACHUSETTS HMO BLUE, INC. (`le:000464`), at least since 2012-05-01, still true - BLUE CROSS AND BLUE SHIELD OF MA HMO BLUE, INC. (`le:000249`), at least since 2006-08-01, no end found (last seen 2012-04-30) - BLUE CROSS AND BLUE SHIELD OF MASS. HMO BLUE, INC. (`le:001788`), at least since 2008-01-01, no end found (last seen 2009-12-31) **Holds.** Marketplace issuer: 1 - Blue Cross and Blue Shield of Massachusetts, Inc. (`hios:24675`) Tools: `resolve_entity(text="Blue Cross and Blue Shield of Massachusetts, Inc.")`, `describe_entity(entity_id="le:000250", on="YYYY-MM-DD")`. # Blue Cross Blue Shield of Arizona Vlada entity `le:000939` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Blue Cross Blue Shield of Arizona **Owns or controls.** - BLUE CROSS & BLUE SHIELD OF ARIZONA, INC. (`le:002036`), at least since 2020-01-01, no end found (last seen 2023-12-31) - BLUE CROSS AND BLUE SHIELD ARIZONA, INC. (`le:000938`), at least since 2012-01-01, no end found (last seen 2024-12-31) - HEALTH CHOICE ARIZONA, INC. (`le:001377`), start 2020-01-02, still true - MEDISUN, INC. (`le:001653`), start 2019-04-01, still true Tools: `resolve_entity(text="Blue Cross Blue Shield of Arizona")`, `describe_entity(entity_id="le:000939", on="YYYY-MM-DD")`. # Blue Cross Blue Shield of Kansas Vlada entity `le:001610` · legal entity · holds 1 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name BLUE CROSS AND BLUE SHIELD OF KANSAS; cms_org_name BLUE CROSS BLUE SHIELD OF KANSAS; cms_org_name Blue Cross Blue Shield of Kansas **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2006-08-01, to 2006-09-30, grade B **Owns or controls.** - BLUECROSS BLUESHIELD KANSAS SOLUTIONS, INC. (`le:002041`), at least since 2020-01-01, still true - Blue Cross and Blue Shield of Kansas, Inc. (`le:002619`), at least since 2013-01-01, still true **Holds.** Medicare contract: 1 - S5726 (`contract:S5726`) Tools: `resolve_entity(text="Blue Cross Blue Shield of Kansas")`, `describe_entity(entity_id="le:001610", on="YYYY-MM-DD")`. # Blue Cross of Idaho Health Services, Inc. Vlada entity `le:000154` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name BLUE CROSS OF IDAHO HEALTH SERVICE, INC.; cms_org_name BLUE CROSS OF IDAHO HEALTH SERVICE, INC.; cms_org_name BLUE CROSS OF IDAHO HEALTH SERVICES, INC; cms_org_name BLUE CROSS OF IDAHO HEALTH SERVICES, INC.; cms_org_name Blue Cross of Idaho Health Service, Inc.; cms_org_name Blue Cross of Idaho Health Services, Inc.; ein 820344294; naic 60095 **Owned or controlled by.** - Gemstone Holdings, Inc. (`le:000155`), controlled by, start 2025-09-01, still true, grade B **Owns or controls.** - BLUE CROSS OF IDAHO CARE PLUS, INC. (`le:000152`), at least since 2015-04-01, to 2024-03-31 - BLUE CROSS OF IDAHO HLTH SERVICES INC (`le:001695`), at least since 2006-08-01, to 2025-08-31 **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H1302 (`contract:H1302`) - H1350 (`contract:H1350`) - Blue Cross of Idaho Health Service, Inc. (`hios:61589`) Tools: `resolve_entity(text="Blue Cross of Idaho Health Services, Inc.")`, `describe_entity(entity_id="le:000154", on="YYYY-MM-DD")`. # BLUECROSS AND BLUESHIELD OF SOUTH CAROLINA Vlada entity `le:000693` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name BLUE CROSS AND BLUE SHIELD OF SOUTH CAROLINA; cms_org_name BLUECROSS AND BLUESHIELD OF SOUTH CAROLINA; ein 570287419; naic 38520 **Owned or controlled by.** - BlueCross BlueShield of South Carolina (BCBSSC) (`le:000692`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H8003 (`contract:H8003`) - S5953 (`contract:S5953`) - BlueCross and BlueShield of South Carolina (`hios:26065`) Tools: `resolve_entity(text="BLUECROSS AND BLUESHIELD OF SOUTH CAROLINA")`, `describe_entity(entity_id="le:000693", on="YYYY-MM-DD")`. # BlueCross BlueShield of Tennessee Vlada entity `le:002328` · legal entity · holds 2 instruments directly and 1 through subsidiaries **Identifiers.** cms_org_name BLUE CROSS BLUE SHIELD OF TENNESSEE; cms_org_name BLUECROSS BLUESHIELD OF TENNESSEE; cms_org_name BLUECROSS BLUESHIELD OF TENNESSEE, INC.; cms_org_name BlueCross BlueShield of Tennessee; ein 620427913; naic 54518 **Owns or controls.** - SECURITYCARE OF TENNESSEE, INC. (`le:001754`), at least since 2014-01-01, no end found (last seen 2025-11-30) - SHARED HEALTH INSURANCE COMPANY (`le:001913`), at least since 2025-01-01, no end found (last seen 2025-12-31) - SHARED HEALTH MISSISSIPPI, INC. (`le:000541`), at least since 2021-01-01, no end found (last seen 2025-12-31) - VOLUNTEER STATE HEALTH PLAN (`le:000786`), at least since 2014-01-01, still true - VOLUNTEER STATE HEALTH PLAN, INC (`le:001405`), at least since 2007-01-01, no end found (last seen 2007-12-31) **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H7917 (`contract:H7917`) - BlueCross BlueShield of Tennessee, Inc. (`hios:14002`) Tools: `resolve_entity(text="BlueCross BlueShield of Tennessee")`, `describe_entity(entity_id="le:002328", on="YYYY-MM-DD")`. # BMC Health System, Inc. Vlada entity `le:001107` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name BMC Health System, Inc. **Owns or controls.** - BOSTON MEDICAL CENTER HEALTH PLAN, INC. (`le:001106`), start 2016-04-01, still true - BOSTON MEDICAL CENTER HEALTH PLAN, INC. (`le:001106`), at least since 2016-01-01, to 2016-03-31 - Boston Medical Center Corporation (`le:002361`), at least since 2016-01-01, still true Tools: `resolve_entity(text="BMC Health System, Inc.")`, `describe_entity(entity_id="le:001107", on="YYYY-MM-DD")`. # BOSTON MEDICAL CENTER HEALTH PLAN, INC. Vlada entity `le:001106` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name BOSTON MEDICAL CENTER HEALTH PLAN, INC.; ein 043373331; naic 13203 **Owned or controlled by.** - BMC Health System, Inc. (`le:001107`), controlled by, at least since 2016-01-01, to 2016-03-31, grade B - BMC Health System, Inc. (`le:001107`), controlled by, start 2016-04-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H6851 (`contract:H6851`) - H7980 (`contract:H7980`) - Boston Medical Center Health Plan, Inc. (`hios:82569`) Tools: `resolve_entity(text="BOSTON MEDICAL CENTER HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:001106", on="YYYY-MM-DD")`. # CareFirst BlueChoice, Inc. Vlada entity `le:002422` · legal entity · holds 3 instruments directly **Identifiers.** ein 521358219; naic 96202 **Owned or controlled by.** - CareFirst, Inc. (`le:000512`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Marketplace issuer: 3 - CareFirst BlueChoice, Inc. (`hios:10207`) - CareFirst BlueChoice, Inc. (`hios:28137`) - CareFirst BlueChoice, Inc. (`hios:86052`) Tools: `resolve_entity(text="CareFirst BlueChoice, Inc.")`, `describe_entity(entity_id="le:002422", on="YYYY-MM-DD")`. # Curative Insurance Company Vlada entity `le:002814` · legal entity · holds 3 instruments directly **Identifiers.** ein 882837119; naic 17331 **Holds.** Marketplace issuer: 3 - Curative Insurance Company (`hios:11303`) - Curative Insurance Company (`hios:14888`) - Curative Insurance Company (`hios:76468`) Tools: `resolve_entity(text="Curative Insurance Company")`, `describe_entity(entity_id="le:002814", on="YYYY-MM-DD")`. # DEAN HEALTH PLAN, INC. Vlada entity `le:001238` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name DEAN HEALTH PLAN, INC.; ein 391535024; naic 96156 **Owned or controlled by.** - Dean Health Systems Inc. (`le:001354`), controlled by, at least since 2006-08-01, to 2013-08-31, grade B - SSM Healthcare Corporation (`le:001173`), controlled by, start 2013-09-01, to 2021-11-30, grade A - Medica Holding Company (`le:000099`), controlled by, start 2021-12-01, still true, grade A **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H5264 (`contract:H5264`) - H9096 (`contract:H9096`) - Dean Health Plan, Inc (`hios:88245`) Tools: `resolve_entity(text="DEAN HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:001238", on="YYYY-MM-DD")`. # EMBLEMHEALTH PLAN, INC. Vlada entity `le:001984` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name EMBLEMHEALTH PLAN, INC; cms_org_name EMBLEMHEALTH PLAN, INC.; ein 135511997; naic 55239 **Owned or controlled by.** - EmblemHealth, Inc. (`le:000575`), controlled by, at least since 2022-04-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H5528 (`contract:H5528`) - S5966 (`contract:S5966`) - EmblemHealth Plan, Inc. (`hios:88000`) Tools: `resolve_entity(text="EMBLEMHEALTH PLAN, INC.")`, `describe_entity(entity_id="le:001984", on="YYYY-MM-DD")`. # Empath Health, Inc. Vlada entity `le:000059` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Empath Health, Inc. **Owns or controls.** - EMPATH LIFE, INC. (`le:000058`), at least since 2023-07-01, still true - NEIGHBORLY CARE NETWORK, INC. (`le:000603`), start 2015-01-01, no end found (last seen 2012-04-30) - NEIGHBORLY CARE NETWORK, INC. (`le:000603`), start 2015-01-01, still true - STRATUM LIFE, LLC (`le:001464`), at least since 2025-01-01, still true - SUNCOAST NEIGHBORLY CARE, INC. (`le:001809`), start 2015-01-01, no end found (last seen 2013-03-31) - SUNCOAST PACE, INC. (`le:000816`), start 2015-01-01, still true - The Hospice of the Florida Suncoast, Inc. (`le:001808`), start 2015-01-01, still true Tools: `resolve_entity(text="Empath Health, Inc.")`, `describe_entity(entity_id="le:000059", on="YYYY-MM-DD")`. # Eternal Health of Delaware, Inc. Vlada entity `le:000614` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Eternal Health of Delaware, Inc. **Owns or controls.** - ETERNALHEALTH OF ARIZONA INC (`le:000613`), at least since 2024-01-01, still true - ETERNALHEALTH, INC. (`le:001694`), at least since 2022-01-01, still true Tools: `resolve_entity(text="Eternal Health of Delaware, Inc.")`, `describe_entity(entity_id="le:000614", on="YYYY-MM-DD")`. # Froedtert ThedaCare Health Vlada entity `le:003340` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Owns or controls.** - Froedtert Health (`le:003766`), start 2024-01-01, still true - NETWORK HEALTH INSURANCE CORPORATION (`le:000367`), start 2024-01-01, still true - Network Health, Inc. (`le:000369`), start 2024-01-01, still true Tools: `resolve_entity(text="Froedtert ThedaCare Health")`, `describe_entity(entity_id="le:003340", on="YYYY-MM-DD")`. # Gemstone Holdings, Inc. Vlada entity `le:000155` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Gemstone Holdings, Inc. **Owns or controls.** - BLUE CROSS OF IDAHO CARE PLUS, INC. (`le:000152`), start 2024-04-01, no end found (last seen 2025-08-31) - BLUE CROSS OF IDAHO HLTH SERVICES INC (`le:001695`), start 2025-09-01, no end found (last seen 2013-07-31) - Blue Cross of Idaho Health Services, Inc. (`le:000154`), start 2025-09-01, still true Tools: `resolve_entity(text="Gemstone Holdings, Inc.")`, `describe_entity(entity_id="le:000155", on="YYYY-MM-DD")`. # General Catalyst Group Management Holdings LP Vlada entity `le:000837` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name General Catalyst Group Management Holdings LP **Owns or controls.** - SUMMA INSURANCE COMPANY (`le:001657`), start 2025-10-01, no end found (last seen 2011-12-31) - SUMMACARE INC. (`le:000623`), start 2025-10-01, still true - Summa Health System (`le:000624`), start 2025-10-01, still true - Summa Insurance Company, Inc. (`le:002561`), at least since 2013-01-01, still true Tools: `resolve_entity(text="General Catalyst Group Management Holdings LP")`, `describe_entity(entity_id="le:000837", on="YYYY-MM-DD")`. # GROUP HOSPITALIZATION AND MEDICAL SERVICES, INC. Vlada entity `le:000511` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name GROUP HOSPITALIZATION AND MEDICAL SERVICES, INC.; ein 530078070; naic 53007 **Owned or controlled by.** - CareFirst, Inc. (`le:000512`), controlled by, at least since 2008-01-01, no end found (last seen 2009-12-31), grade B **Holds.** Marketplace issuer: 3 - Group Hospitalization and Medical Services, Inc (`hios:40308`) - Group Hospitalization and Medical Services, Inc (`hios:78079`) - Group Hospitalization and Medical Services, Inc (`hios:94084`) Tools: `resolve_entity(text="GROUP HOSPITALIZATION AND MEDICAL SERVICES, INC.")`, `describe_entity(entity_id="le:000511", on="YYYY-MM-DD")`. # Harvard Pilgrim Health Care Vlada entity `le:000457` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HARVARD PILGRIM HEALTH CARE; cms_org_name HARVARD PILGRIM HEALTH CARE INC.; cms_org_name HARVARD PILGRIM HEALTH CARE INC.; cms_org_name HARVARD PILGRIM HEALTH CARE, INC.; cms_org_name Harvard Pilgrim Health Care; cms_org_name Harvard Pilgrim Health Care, Inc.; ein 042452600; naic 96911 **Owned or controlled by.** - Point32Health, Inc. (`le:000047`), controlled by, start 2021-01-01, no end found (last seen 2021-12-31), grade B - Point32Health, Inc. (`le:000047`), controlled by, start 2021-01-01, still true, grade B **Owns or controls.** - HARVARD PILGRIM HEALTH CARE OF NEW ENGLAND (`le:000456`), at least since 2006-08-01, to 2020-12-31 - HARVARD PILGRIM HEALTH CARE OF NEW ENGLAND, INC. (`le:002030`), at least since 2014-01-01, to 2020-12-31 **Holds.** Marketplace issuer: 3 - Harvard Pilgrim Health Care, Inc. (`hios:36046`) - Harvard Pilgrim Health Care, Inc. (`hios:37800`) - Harvard Pilgrim Health Care, Inc. (`hios:96667`) Tools: `resolve_entity(text="Harvard Pilgrim Health Care")`, `describe_entity(entity_id="le:000457", on="YYYY-MM-DD")`. # HEALTH ALLIANCE - MIDWEST, INC. Vlada entity `le:000196` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HEALTH ALLIANCE - MIDWEST, INC.; ein 371354502; naic 95513 **Owned or controlled by.** - The Carle Foundation (`le:000166`), controlled by, at least since 2014-01-01, to 2015-03-31, grade B - The Carle Foundation (`le:000166`), controlled by, start 2015-04-01, no end found (last seen 2025-12-31), grade B **Holds.** Marketplace issuer: 3 - Health Alliance Midwest, Inc. (`hios:40072`) - Health Alliance Midwest, Inc. (`hios:77638`) - Health Alliance Midwest, Inc. (`hios:80978`) Tools: `resolve_entity(text="HEALTH ALLIANCE - MIDWEST, INC.")`, `describe_entity(entity_id="le:000196", on="YYYY-MM-DD")`. # HEALTH INSURANCE PLAN OF GREATER NEW YORK Vlada entity `le:000574` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HEALTH INSURANCE PLAN OF GREATER NEW YORK; ein 131828429; naic 55247 **Owned or controlled by.** - EmblemHealth, Inc. (`le:000575`), controlled by, at least since 2009-12-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H3330 (`contract:H3330`) - H5991 (`contract:H5991`) - Health Insurance Plan of Greater New York (`hios:88582`) Tools: `resolve_entity(text="HEALTH INSURANCE PLAN OF GREATER NEW YORK")`, `describe_entity(entity_id="le:000574", on="YYYY-MM-DD")`. # HEALTH NEW ENGLAND, INC. Vlada entity `le:001201` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HEALTH NEW ENGLAND, INC.; ein 042864973; naic 95673 **Owned or controlled by.** - Baystate Health, Inc. (`le:001202`), controlled by, at least since 2009-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2737 (`contract:H2737`) - H8578 (`contract:H8578`) - Health New England, Inc (`hios:34484`) Tools: `resolve_entity(text="HEALTH NEW ENGLAND, INC.")`, `describe_entity(entity_id="le:001201", on="YYYY-MM-DD")`. # HEALTHFIRST HEALTH PLAN, INC. Vlada entity `le:000975` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HEALTHFIRST HEALTH PLAN, INC.; ein 113029569; naic 95284 **Owned or controlled by.** - Healthfirst, Inc. (`le:000976`), controlled by, at least since 2015-12-01, still true, grade B **Holds.** Medicare contract: 3 - H1722 (`contract:H1722`) - H3359 (`contract:H3359`) - H5989 (`contract:H5989`) Tools: `resolve_entity(text="HEALTHFIRST HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000975", on="YYYY-MM-DD")`. # HIGHMARK BCBSD INC. Vlada entity `le:001180` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HIGHMARK BCBSD INC.; cms_org_name HIGHMARK BCBSD, INC.; cms_org_name HIGHMARK BCBSD, INC.; ein 510020405; naic 53287 **Owned or controlled by.** - Highmark Health (`le:000653`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H7710 (`contract:H7710`) - H8166 (`contract:H8166`) - Highmark BCBSD Inc. (`hios:76168`) Tools: `resolve_entity(text="HIGHMARK BCBSD INC.")`, `describe_entity(entity_id="le:001180", on="YYYY-MM-DD")`. # HMO COLORADO, INC. Vlada entity `le:000909` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HMO COLORADO, INC.; cms_org_name HMO COLORADO, INC.; ein 841017384; ein 841017384; naic 95473; naic 95473 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2008-06-01, still true, grade B **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H4346 (`contract:H4346`) - HMO Colorado, Inc. (`hios:60156`) - HMO Colorado, Inc. (`hios:76680`) Tools: `resolve_entity(text="HMO COLORADO, INC.")`, `describe_entity(entity_id="le:000909", on="YYYY-MM-DD")`. # HUMANA MEDICAL PLAN, INC. Vlada entity `le:000126` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HUMANA MEDICAL PLAN, INC; cms_org_name HUMANA MEDICAL PLAN, INC.; ein 611103898; naic 95270 **Owned or controlled by.** - Humana Inc. (`le:000009`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H1036 (`contract:H1036`) - Humana Medical Plan, Inc. (`hios:35783`) - Humana Medical Plan, Inc. (`hios:49700`) Tools: `resolve_entity(text="HUMANA MEDICAL PLAN, INC.")`, `describe_entity(entity_id="le:000126", on="YYYY-MM-DD")`. # HUMANA WI HEALTH ORGANIZATION INSURANCE CORP Vlada entity `le:000521` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name HUMANA WI HEALTH ORGANIZATION INSURANCE CORP; ein 391525003; naic 95342 **Owned or controlled by.** - Humana Inc. (`le:000009`), controlled by, at least since 2013-08-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2875 (`contract:H2875`) - H6622 (`contract:H6622`) - Humana Wisconsin Health Organization Insurance Corporation (`hios:55103`) Tools: `resolve_entity(text="HUMANA WI HEALTH ORGANIZATION INSURANCE CORP")`, `describe_entity(entity_id="le:000521", on="YYYY-MM-DD")`. # INDEPENDENT HEALTH BENEFITS CORPORATION Vlada entity `le:000802` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name INDEPENDENT HEALTH BENEFITS CORP; cms_org_name INDEPENDENT HEALTH BENEFITS CORPORATION; cms_org_name Independent Health Benefits Corporation; ein 161483784; naic 47034 **Owned or controlled by.** - Independent Health Association (`le:003384`), controlled by, start 2008-01-01, still true, grade B **Owns or controls.** - Independent Health Association (`le:003384`), at least since 2006-08-01, to 2007-12-31 **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H3344 (`contract:H3344`) - S4501 (`contract:S4501`) - Independent Health Benefits Corporation (`hios:18029`) Tools: `resolve_entity(text="INDEPENDENT HEALTH BENEFITS CORPORATION")`, `describe_entity(entity_id="le:000802", on="YYYY-MM-DD")`. # Johns Hopkins Healthcare LLC Vlada entity `le:001690` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Johns Hopkins Healthcare LLC **Owns or controls.** - HOPKINS HEALTH ADVANTAGE, INC. (`le:001689`), at least since 2016-01-01, still true - JOHNS HOPKINS HEALTH PLAN OF VIRGINIA, INC. (`le:001699`), at least since 2024-01-01, still true Tools: `resolve_entity(text="Johns Hopkins Healthcare LLC")`, `describe_entity(entity_id="le:001690", on="YYYY-MM-DD")`. # Kaiser Foundation Health Plan of Mid-Atlantic States, Inc. Vlada entity `le:002701` · legal entity · holds 3 instruments directly **Identifiers.** ein 520954463; naic 95639 **Holds.** Marketplace issuer: 3 - Kaiser Foundation Health Plan of Mid-Atlantic States, Inc. (`hios:90296`) - Kaiser Foundation Health Plan of Mid-Atlantic States, Inc. (`hios:94506`) - Kaiser Foundation Health Plan of Mid-Atlantic States, Inc. (`hios:95185`) Tools: `resolve_entity(text="Kaiser Foundation Health Plan of Mid-Atlantic States, Inc.")`, `describe_entity(entity_id="le:002701", on="YYYY-MM-DD")`. # Kinderhook Capital Fund III, L.P. Vlada entity `le:000335` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Kinderhook Capital Fund III, L.P. **Owns or controls.** - GENERATIONS HEALTHCARE, INC. (`le:002163`), at least since 2014-12-01, no end found (last seen 2016-05-31) - GLOBALHEALTH OF ARIZONA, INC. (`le:001236`), at least since 2022-01-01, no end found (last seen 2022-12-31) - GLOBALHEALTH OF TEXAS, INC. (`le:001046`), at least since 2022-01-01, no end found (last seen 2023-12-31) - GLOBALHEALTH, INC. (`le:000056`), start 2014-04-01, no end found (last seen 2017-03-31) - GLOBALHEALTH, INC. (`le:000056`), start 2014-02-03, still true - GLOBALHEALTH, INC. (`le:000056`), start 2017-04-01, still true - MCS ADVANTAGE, INC. (`le:000881`), start 2022-01-01, still true - MCS ADVANTAGE, INC. (`le:000881`), start 2022-01-04, still true - MCS LIFE INSURANCE COMPANY (`le:001169`), start 2022-01-04, no end found (last seen 2009-12-31) - MCS LIFE INSURANCE COMPANY (H4006) (`le:002210`), start 2022-01-04, no end found (last seen 2007-10-31) - MHH Healthcare, LLC (`le:000632`), start 2017-04-01, still true - Medical Card System, Inc. (`le:000882`), start 2022-01-04, still true - TODAYS OPTIONS OF OKLAHOMA, INC. (`le:001821`), start 2014-01-01, no end found (last seen 2014-11-30) Tools: `resolve_entity(text="Kinderhook Capital Fund III, L.P.")`, `describe_entity(entity_id="le:000335", on="YYYY-MM-DD")`. # Lutheran SeniorLife Vlada entity `le:000764` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Lutheran SeniorLife **Owns or controls.** - LUTERHAN SENIOR HEALTHCARE, INC. (`le:001068`), at least since 2010-07-01, to 2011-02-28 - LUTHERAN SENIORLIFE LIFE-BEAVER COUNTY (`le:002059`), at least since 2008-10-01, no end found (last seen 2009-08-31) - LUTHERAN SENIORLIFE VIECARE ARMSTRONG, LLC (`le:001425`), at least since 2015-03-01, no end found (last seen 2016-03-31) - VIECARE ARMSTRONG, LLC (`le:001051`), at least since 2016-04-01, still true - VIECARE BEAVER LLC DBA LIFE BEAVER COUNTY (`le:000763`), at least since 2009-09-01, no end found (last seen 2016-03-31) - VIECARE BEAVER, LLC (`le:002060`), at least since 2016-04-01, still true - VIECARE BUTLER LLC DBA LIFE BUTLER COUNTY (`le:001789`), at least since 2013-10-01, no end found (last seen 2014-03-31) - VIECARE BUTLER, LLC (`le:002140`), at least since 2014-09-01, still true Tools: `resolve_entity(text="Lutheran SeniorLife")`, `describe_entity(entity_id="le:000764", on="YYYY-MM-DD")`. # MAMSI LIFE AND HEALTH INSURANCE COMPANY Vlada entity `le:002332` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MAMSI LIFE AND HEALTH INSURANCE COMPANY; ein 521803283; naic 60321 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2018-01-01, no end found (last seen 2021-12-31), grade B **Holds.** Marketplace issuer: 3 - MAMSI Life and Health Insurance Company (`hios:17498`) - MAMSI Life and Health Insurance Company (`hios:65635`) - MAMSI Life and Health Insurance Company (`hios:78971`) Tools: `resolve_entity(text="MAMSI LIFE AND HEALTH INSURANCE COMPANY")`, `describe_entity(entity_id="le:002332", on="YYYY-MM-DD")`. # MEDICA COMMUNITY HEALTH PLAN Vlada entity `le:000098` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MEDICA COMMUNITY HEALTH PLAN; ein 411843804; naic 95232 **Owned or controlled by.** - Medica Holding Company (`le:000099`), controlled by, at least since 2020-01-01, no end found (last seen 2023-12-31), grade B **Holds.** Marketplace issuer: 3 - Medica Community Health Plan (`hios:32311`) - Medica Community Health Plan (`hios:57845`) - Medica Health Plans of Wisconsin (`hios:65847`) Tools: `resolve_entity(text="MEDICA COMMUNITY HEALTH PLAN")`, `describe_entity(entity_id="le:000098", on="YYYY-MM-DD")`. # MEDICAL ASSOCIATES HEALTH PLAN, INC. Vlada entity `le:001712` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MEDICAL ASSOCIATES HEALTH PLAN, INC.; ein 421282065; naic 52559 **Owned or controlled by.** - Medical Associates Clinic (`le:001351`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H1651 (`contract:H1651`) - Medical Associates Health Plan, Inc (`hios:24301`) - Medical Associates Health Plan, Inc (`hios:50735`) Tools: `resolve_entity(text="MEDICAL ASSOCIATES HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:001712", on="YYYY-MM-DD")`. # MMM HEALTHCARE, LLC Vlada entity `le:000669` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MMM HEALTHCARE, INC.; cms_org_name MMM HEALTHCARE, LLC; cms_org_name MMM HEALTHCARE, LLC.; cms_org_name MMM Healthcare **Owned or controlled by.** - Aveta Inc. (`le:000878`), controlled by, at least since 2006-10-01, to 2012-11-30, grade B - Aveta Inc. (`le:000878`), controlled by, start 2006-10-01, to 2012-11-30, grade B - InnovaCare Inc. (`le:000570`), controlled by, start 2012-12-01, to 2018-12-31, grade A - InnovaCare Inc. (`le:000570`), controlled by, start 2012-12-01, to 2018-12-31, grade B - Summit Master Company, LLC (`le:000790`), controlled by, start 2019-01-01, to 2021-06-28, grade A - Summit Master Company, LLC (`le:000790`), controlled by, start 2019-01-01, to 2021-06-28, grade B - Elevance Health, Inc. (`le:000170`), controlled by, start 2021-06-29, still true, grade A **Holds.** Medicare contract: 3 - H4003 (`contract:H4003`) - H4004 (`contract:H4004`) - H7522 (`contract:H7522`) Tools: `resolve_entity(text="MMM HEALTHCARE, LLC")`, `describe_entity(entity_id="le:000669", on="YYYY-MM-DD")`. # MOLINA HEALTHCARE OF CALIFORNIA Vlada entity `le:000543` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MOLINA HEALTHCARE OF CALIFORNIA; ein 330342719 **Owned or controlled by.** - Molina Healthcare, Inc. (`le:000065`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H3038 (`contract:H3038`) - H5810 (`contract:H5810`) - MOLINA HEALTHCARE OF CALIFORNIA (`hios:18126`) Tools: `resolve_entity(text="MOLINA HEALTHCARE OF CALIFORNIA")`, `describe_entity(entity_id="le:000543", on="YYYY-MM-DD")`. # MOLINA HEALTHCARE OF ILLINOIS INC Vlada entity `le:000500` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MOLINA HEALTHCARE OF ILLINOIS; cms_org_name MOLINA HEALTHCARE OF ILLINOIS INC; cms_org_name MOLINA HEALTHCARE OF ILLINOIS, INC.; ein 271823188 **Owned or controlled by.** - Molina Healthcare, Inc. (`le:000065`), controlled by, at least since 2013-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2715 (`contract:H2715`) - H3093 (`contract:H3093`) - Molina Healthcare of Illinois, Inc. (`hios:32355`) Tools: `resolve_entity(text="MOLINA HEALTHCARE OF ILLINOIS INC")`, `describe_entity(entity_id="le:000500", on="YYYY-MM-DD")`. # MOLINA HEALTHCARE OF TEXAS, INC. Vlada entity `le:001158` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MOLINA HEALTHCARE OF TEXAS, INC.; cms_org_name Molina Healthcare of Texas, Inc.; ein 201494502; ein 201494502; naic 10757; naic 10757 **Owned or controlled by.** - Molina Healthcare, Inc. (`le:000065`), controlled by, at least since 2008-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H6515 (`contract:H6515`) - H7678 (`contract:H7678`) - Molina Healthcare of Texas, Inc. (`hios:45786`) Tools: `resolve_entity(text="MOLINA HEALTHCARE OF TEXAS, INC.")`, `describe_entity(entity_id="le:001158", on="YYYY-MM-DD")`. # MOLINA HEALTHCARE OF UTAH, INC. Vlada entity `le:001991` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name MOLINA HEALTHCARE OF UTAH, INC.; ein 330617992; ein 330617992; naic 95502; naic 95502 **Owned or controlled by.** - Molina Healthcare, Inc. (`le:000065`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H5628 (`contract:H5628`) - Molina Healthcare of Utah (`hios:18167`) - Molina Healthcare of Utah (`hios:91278`) Tools: `resolve_entity(text="MOLINA HEALTHCARE OF UTAH, INC.")`, `describe_entity(entity_id="le:001991", on="YYYY-MM-DD")`. # Montana Health Cooperative Vlada entity `le:002450` · legal entity · holds 3 instruments directly **Identifiers.** ein 451295465; naic 14933 **Holds.** Marketplace issuer: 3 - Montana Health Cooperative (`hios:32225`) - Montana Health Cooperative (`hios:38128`) - Montana Health Cooperative (`hios:38576`) Tools: `resolve_entity(text="Montana Health Cooperative")`, `describe_entity(entity_id="le:002450", on="YYYY-MM-DD")`. # NEBRASKA TOTAL CARE, INC. Vlada entity `le:000372` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name NEBRASKA TOTAL CARE, INC.; ein 475123293; naic 15902 **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H1215 (`contract:H1215`) - H1395 (`contract:H1395`) - Nebraska Total Care, Inc. (`hios:26289`) Tools: `resolve_entity(text="NEBRASKA TOTAL CARE, INC.")`, `describe_entity(entity_id="le:000372", on="YYYY-MM-DD")`. # NEIGHBORHOOD HEALTH PLAN OF RHODE ISLAND Vlada entity `le:000450` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name NEIGHBORHOOD HEALTH PLAN OF RHODE ISLAND; ein 050477052; naic 95402 **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2126 (`contract:H2126`) - H7635 (`contract:H7635`) - Neighborhood Health Plan of Rhode Island (`hios:77514`) Tools: `resolve_entity(text="NEIGHBORHOOD HEALTH PLAN OF RHODE ISLAND")`, `describe_entity(entity_id="le:000450", on="YYYY-MM-DD")`. # NETWORK HEALTH INSURANCE CORPORATION Vlada entity `le:000367` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name NETWORK HEALTH INSURANCE CORPORATION; ein 392020474; ein 392020474; naic 15087; naic 15087 **Owned or controlled by.** - Affinity Health System (`le:001348`), controlled by, at least since 2006-08-01, to 2012-02-07, grade B - Ministry Health Care, Inc. (`le:000368`), controlled by, start 2012-02-08, to 2013-03-31, grade A - Ascension Health Alliance (`le:001210`), controlled by, start 2013-04-01, to 2014-11-10, grade A - Network Health, Inc. (`le:000369`), controlled by, start 2017-04-01, to 2023-09-30, grade B - Froedtert Health (`le:003766`), controlled by, start 2023-10-01, to 2023-12-31, grade B - Froedtert ThedaCare Health (`le:003340`), controlled by, start 2024-01-01, still true, grade B **Holds.** Medicare contract: 3 - H1181 (`contract:H1181`) - H5215 (`contract:H5215`) - H5644 (`contract:H5644`) Tools: `resolve_entity(text="NETWORK HEALTH INSURANCE CORPORATION")`, `describe_entity(entity_id="le:000367", on="YYYY-MM-DD")`. # NEW YORK QUALITY HEALTHCARE CORPORATION Vlada entity `le:001322` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name NEW YORK QUALITY HEALTHCARE CORPORATION; ein 823380290 **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, start 2018-07-01, still true, grade B - Centene Corporation (`le:000011`), controlled by, start 2018-07-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H4868 (`contract:H4868`) - H5599 (`contract:H5599`) - New York Quality Healthcare Corporation (`hios:25303`) Tools: `resolve_entity(text="NEW YORK QUALITY HEALTHCARE CORPORATION")`, `describe_entity(entity_id="le:001322", on="YYYY-MM-DD")`. # One Senior Care, Inc. Vlada entity `le:000875` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name One Senior Care, Inc. **Owns or controls.** - CONCERTOHEALTH OF NORTHERN VIRGINIA, LLC (`le:000874`), start 2022-01-01, to 2025-04-30 - LIFE Northwestern Pennsylvania, LLC (`le:002234`), at least since 2022-04-01, still true - ONE SENIOR CARE KENTUCKY, LLC (`le:002108`), at least since 2024-06-01, still true - ONE SENIOR CARE OHIO, LLC (`le:001688`), at least since 2025-08-01, still true Tools: `resolve_entity(text="One Senior Care, Inc.")`, `describe_entity(entity_id="le:000875", on="YYYY-MM-DD")`. # OXFORD HEALTH INSURANCE, INC. Vlada entity `le:000473` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name OXFORD HEALTH INSURANCE, INC.; ein 222797560; naic 78026 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2019-01-01, no end found (last seen 2021-12-31), grade B **Holds.** Marketplace issuer: 3 - Oxford Health Insurance, Inc. (`hios:29462`) - Oxford Health Insurance, Inc. (`hios:77263`) - Oxford Health Insurance, Inc. (`hios:85629`) Tools: `resolve_entity(text="OXFORD HEALTH INSURANCE, INC.")`, `describe_entity(entity_id="le:000473", on="YYYY-MM-DD")`. # PARAMOUNT INSURANCE COMPANY Vlada entity `le:001600` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name PARAMOUNT INSURANCE COMPANY; ein 010580404; naic 11518 **Owned or controlled by.** - Promedica Health System (`le:000618`), controlled by, at least since 2006-10-01, to 2024-05-31, grade B - MEDICAL MUTUAL OF OHIO (`le:000836`), controlled by, start 2024-06-01, still true, grade A **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H5232 (`contract:H5232`) - Paramount Insurance Company (`hios:74313`) - Paramount Insurance Company (`hios:95233`) Tools: `resolve_entity(text="PARAMOUNT INSURANCE COMPANY")`, `describe_entity(entity_id="le:001600", on="YYYY-MM-DD")`. # Presbyterian Healthcare Services Vlada entity `le:000777` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Presbyterian Healthcare Services **Owns or controls.** - PRESBYTERIAN HEALTH PLAN (`le:000776`), at least since 2006-08-01, still true - PRESBYTERIAN INSURANCE COMPANY, INC. (`le:001796`), at least since 2006-08-01, no end found (last seen 2024-12-31) - Presbyterian Health Plan, Inc. (`le:002706`), at least since 2013-01-01, still true Tools: `resolve_entity(text="Presbyterian Healthcare Services")`, `describe_entity(entity_id="le:000777", on="YYYY-MM-DD")`. # PRIORITY HEALTH Vlada entity `le:000257` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name PRIORITY HEALTH; ein 382715520; naic 95561 **Owned or controlled by.** - PriorityHealth (`le:000474`), controlled by, at least since 2006-08-01, to 2007-12-31, grade B - Spectrum Health System (`le:000259`), controlled by, start 2008-01-01, to 2022-01-31, grade B - Corewell Health (`le:001516`), controlled by, start 2022-02-01, still true, grade A **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2320 (`contract:H2320`) - H4875 (`contract:H4875`) - Priority Health (`hios:29698`) Tools: `resolve_entity(text="PRIORITY HEALTH")`, `describe_entity(entity_id="le:000257", on="YYYY-MM-DD")`. # QCC INSURANCE COMPANY Vlada entity `le:000014` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name QCC INSURANCE COMPANY; cms_org_name QCC Insurance Company; ein 232184623; naic 93688 **Owned or controlled by.** - Independence Blue Cross (`le:000860`), controlled by, at least since 2006-11-01, to 2013-12-31, grade B - Independence Blue Cross (`le:000860`), controlled by, start 2008-04-01, to 2013-12-31, grade B - Independence Health Group, Inc. (`le:000317`), controlled by, start 2014-01-01, still true, grade A - Independence Health Group, Inc. (`le:000317`), controlled by, start 2014-01-01, still true, grade B **Owns or controls.** - QCC INS CO D/B/A AMERIHEALTH INS CO (`le:001592`), at least since 2006-08-01, to 2006-10-31 - SELECT HEALTH OF SOUTH CAROLINA, INC. (`le:001186`), at least since 2006-08-01, to 2006-10-31 **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H3909 (`contract:H3909`) - S6875 (`contract:S6875`) - QCC Insurance Company (`hios:31609`) Tools: `resolve_entity(text="QCC INSURANCE COMPANY")`, `describe_entity(entity_id="le:000014", on="YYYY-MM-DD")`. # REGENCE BLUESHIELD Vlada entity `le:001327` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name REGENCE BLUESHIELD; ein 910282080; naic 53902 **Owned or controlled by.** - Cambia Health Solutions, Inc. (`le:000385`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H1997 (`contract:H1997`) - H5009 (`contract:H5009`) - Regence BlueShield (`hios:87718`) Tools: `resolve_entity(text="REGENCE BLUESHIELD")`, `describe_entity(entity_id="le:001327", on="YYYY-MM-DD")`. # SCAN HEALTH PLAN Vlada entity `le:000115` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name SCAN HEALTH PLAN; cms_org_name SCAN Health Plan; cms_org_name SCAN Health Plan, Inc. **Owned or controlled by.** - SCAN Group (`le:000116`), controlled by, start 2020-12-01, still true, grade B **Owns or controls.** - SCAN HEALTH PLAN ARIZONA (`le:001255`), at least since 2013-08-01, to 2020-11-30 - SCAN HEALTH PLAN OF ARIZONA (`le:001256`), at least since 2007-01-01, to 2020-11-30 **Holds.** Medicare contract: 3 - H0976 (`contract:H0976`) - H5425 (`contract:H5425`) - H5943 (`contract:H5943`) Tools: `resolve_entity(text="SCAN HEALTH PLAN")`, `describe_entity(entity_id="le:000115", on="YYYY-MM-DD")`. # SENTARA HEALTH PLANS Vlada entity `le:000288` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name SENTARA HEALTH PLANS; ein 541283337; naic 95281 **Owned or controlled by.** - Sentara Healthcare (`le:000123`), controlled by, at least since 2024-05-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2563 (`contract:H2563`) - H4499 (`contract:H4499`) - Optima Health Plan (`hios:20507`) Tools: `resolve_entity(text="SENTARA HEALTH PLANS")`, `describe_entity(entity_id="le:000288", on="YYYY-MM-DD")`. # Sidecar Health Insurance Company Vlada entity `le:002503` · legal entity · holds 3 instruments directly **Identifiers.** ein 862011787; naic 17104 **Holds.** Marketplace issuer: 3 - Sidecar Health Insurance Company (`hios:10196`) - Sidecar Health Insurance Company (`hios:46400`) - Sidecar Health Insurance Company (`hios:63087`) Tools: `resolve_entity(text="Sidecar Health Insurance Company")`, `describe_entity(entity_id="le:002503", on="YYYY-MM-DD")`. # SIERRA HEALTH AND LIFE INSURANCE COMPANY, INC. Vlada entity `le:000090` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name SIERRA HEALTH AND LIFE INSURANCE COMPANY, INC.; ein 940734860; naic 71420 **Owned or controlled by.** - Sierra Health Services, Inc (`le:000524`), controlled by, at least since 2006-08-01, to 2008-02-24, grade B - UnitedHealth Group, Inc. (`le:000013`), controlled by, start 2008-02-25, still true, grade A **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H2001 (`contract:H2001`) - H5652 (`contract:H5652`) - Sierra Health and Life Insurance Company, Inc. (`hios:83198`) Tools: `resolve_entity(text="SIERRA HEALTH AND LIFE INSURANCE COMPANY, INC.")`, `describe_entity(entity_id="le:000090", on="YYYY-MM-DD")`. # SIHO Holding, Inc. Vlada entity `le:001537` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name SIHO Holding, Inc. **Owns or controls.** - SOUTHEASTERN INDIANA HEALTH ORGANIZATION, INC. (`le:001536`), at least since 2021-01-01, still true Tools: `resolve_entity(text="SIHO Holding, Inc.")`, `describe_entity(entity_id="le:001537", on="YYYY-MM-DD")`. # SOUTHEASTERN INDIANA HEALTH ORGANIZATION, INC. Vlada entity `le:001536` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name SOUTHEASTERN INDIANA HEALTH ORGANIZATION, INC.; ein 351694699; ein 472586982; naic 95812 **Owned or controlled by.** - SIHO Holding, Inc. (`le:001537`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H6529 (`contract:H6529`) - H9042 (`contract:H9042`) - Southeastern Indiana Health Organization, Inc. (`hios:67920`) Tools: `resolve_entity(text="SOUTHEASTERN INDIANA HEALTH ORGANIZATION, INC.")`, `describe_entity(entity_id="le:001536", on="YYYY-MM-DD")`. # Thomas Jefferson University Vlada entity `le:000418` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Thomas Jefferson University **Owns or controls.** - HEALTH PARTNERS PLANS, INC. (`le:001240`), start 2021-11-01, still true - HEALTH PARTNERS PLANS, INC. (`le:001240`), start 2021-11-01, still true - PARTNERS INSURANCE COMPANY INC (`le:000417`), at least since 2024-01-01, still true - PARTNERS INSURANCE COMPANY OF NEW JERSEY INC (`le:000555`), at least since 2025-01-01, still true Tools: `resolve_entity(text="Thomas Jefferson University")`, `describe_entity(entity_id="le:000418", on="YYYY-MM-DD")`. # THP INSURANCE COMPANY Vlada entity `le:001203` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name THP INSURANCE COMPANY; cms_org_name THP INSURANCE COMPANY, INC.; ein 550765726; naic 60016 **Owned or controlled by.** - Health Plan of the Upper Ohio Valley (`le:000839`), controlled by, at least since 2008-01-01, still true, grade B **Holds.** Marketplace issuer: 2; Medicare contract: 1 - H8604 (`contract:H8604`) - THP Insurance Company (`hios:59772`) - THP Insurance Company (`hios:98810`) Tools: `resolve_entity(text="THP INSURANCE COMPANY")`, `describe_entity(entity_id="le:001203", on="YYYY-MM-DD")`. # TUFTS ASSOCIATED HEALTH MAINTENANCE ORGANIZATION Vlada entity `le:000245` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name TUFTS ASSOCIATED HEALTH MAINTENANCE ORGANIZATION; cms_org_name TUFTS ASSOCIATED HEALTH MAINTENANCE ORGANIZATION, **Owned or controlled by.** - Tufts Associated HMO, Inc. (`le:000247`), controlled by, at least since 2008-01-01, to 2020-11-30, grade B - Point32Health, Inc. (`le:000047`), controlled by, start 2020-12-01, still true, grade A **Holds.** Medicare contract: 3 - H2256 (`contract:H2256`) - H8330 (`contract:H8330`) - H9907 (`contract:H9907`) Tools: `resolve_entity(text="TUFTS ASSOCIATED HEALTH MAINTENANCE ORGANIZATION")`, `describe_entity(entity_id="le:000245", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE OF NEW YORK, INC. Vlada entity `le:001805` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE OF NEW YORK, INC.; ein 061172891; naic 95085 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2009-02-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H3379 (`contract:H3379`) - H3387 (`contract:H3387`) - UnitedHealthcare of New York, Inc. (`hios:54235`) Tools: `resolve_entity(text="UNITEDHEALTHCARE OF NEW YORK, INC.")`, `describe_entity(entity_id="le:001805", on="YYYY-MM-DD")`. # UNITEDHEALTHCARE OF THE MIDLANDS, INC. Vlada entity `le:001781` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name UNITEDHEALTHCARE OF THE MIDLANDS, INC.; ein 470676824; ein 470676824; naic 95591; naic 95591 **Owned or controlled by.** - UnitedHealth Group, Inc. (`le:000013`), controlled by, at least since 2009-02-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H0432 (`contract:H0432`) - H2802 (`contract:H2802`) - UnitedHealthcare of the Midlands, Inc. (`hios:44751`) Tools: `resolve_entity(text="UNITEDHEALTHCARE OF THE MIDLANDS, INC.")`, `describe_entity(entity_id="le:001781", on="YYYY-MM-DD")`. # Universal Health Services, Inc. Vlada entity `le:001412` · legal entity · holds 0 instruments directly and 3 through subsidiaries **Identifiers.** cms_org_name Universal Health Services, Inc. **Owns or controls.** - PROMINENCE HEALTHFIRST (`le:001411`), at least since 2015-01-01, still true - PROMINENCE HEALTHFIRST OF FLORIDA INC (`le:002050`), at least since 2025-01-01, still true - PROMINENCE HEALTHFIRST OF TEXAS (`le:001489`), at least since 2015-01-01, still true - Prominence HealthFirst of Texas, Inc. (`le:002775`), at least since 2019-01-01, no end found (last seen 2021-12-31) - Prominence Preferred Health Insurance Company, Inc. (`le:002592`), at least since 2014-01-01, no end found (last seen 2018-12-31) - Prominence Preferred Health Insurance Company, Inc. (`le:002592`), at least since 2019-01-01, no end found (last seen 2022-12-31) - Saint Marys HealthFirst (`le:004214`), at least since 2013-01-01, no end found (last seen 2013-12-31) - Saint Marys Preferred Health Insurance Company (`le:004187`), at least since 2013-01-01, no end found (last seen 2013-12-31) Tools: `resolve_entity(text="Universal Health Services, Inc.")`, `describe_entity(entity_id="le:001412", on="YYYY-MM-DD")`. # USABLE HMO, INC. Vlada entity `le:001050` · legal entity · holds 3 instruments directly **Identifiers.** cms_org_name USABLE HMO, INC.; ein 844571869; naic 16751 **Owned or controlled by.** - USABLE MUTUAL INSURANCE COMPANY (`le:000694`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 2; Marketplace issuer: 1 - H6158 (`contract:H6158`) - H9699 (`contract:H9699`) - USAble HMO, Inc. (`hios:48772`) Tools: `resolve_entity(text="USABLE HMO, INC.")`, `describe_entity(entity_id="le:001050", on="YYYY-MM-DD")`. # Washington National Insurance Company Vlada entity `le:002403` · legal entity · holds 3 instruments directly **Identifiers.** ein 361933760; naic 70319 **Holds.** Marketplace issuer: 3 - Washington National Insurance Company (`hios:23419`) - Washington National Insurance Company (`hios:60767`) - Washington National Insurance Company (`hios:76397`) Tools: `resolve_entity(text="Washington National Insurance Company")`, `describe_entity(entity_id="le:002403", on="YYYY-MM-DD")`. # 4 Ever Life Insurance Company Vlada entity `le:002566` · legal entity · holds 2 instruments directly **Identifiers.** ein 362149353; naic 80985 **Holds.** Marketplace issuer: 2 - 4 Ever Life Insurance Company (`hios:13237`) - 4 Ever Life Insurance Company (`hios:72888`) Tools: `resolve_entity(text="4 Ever Life Insurance Company")`, `describe_entity(entity_id="le:002566", on="YYYY-MM-DD")`. # ABSOLUTE TOTAL CARE, INC. Vlada entity `le:000194` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ABSOLUTE TOTAL CARE, INC.; ein 205693998; naic 12959 **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, at least since 2015-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5272 (`contract:H5272`) - Absolute Total Care, Inc (`hios:79222`) Tools: `resolve_entity(text="ABSOLUTE TOTAL CARE, INC.")`, `describe_entity(entity_id="le:000194", on="YYYY-MM-DD")`. # AETNA BETTER HEALTH OF MICHIGAN INC. Vlada entity `le:001250` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AETNA BETTER HEALTH OF MICHIGAN INC.; cms_org_name AETNA BETTER HEALTH OF MICHIGAN, INC. **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2015-01-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Medicare contract: 2 - H2056 (`contract:H2056`) - H9314 (`contract:H9314`) Tools: `resolve_entity(text="AETNA BETTER HEALTH OF MICHIGAN INC.")`, `describe_entity(entity_id="le:001250", on="YYYY-MM-DD")`. # AETNA HEALTH AND LIFE INSURANCE COMPANY Vlada entity `le:000789` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AETNA HEALTH AND LIFE INSURANCE COMPANY; ein 060876836; naic 78700 **Owned or controlled by.** - CVS Health Corporation (`le:000143`), controlled by, at least since 2020-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3288 (`contract:H3288`) - Aetna Health and Life Insurance Company (`hios:89644`) Tools: `resolve_entity(text="AETNA HEALTH AND LIFE INSURANCE COMPANY")`, `describe_entity(entity_id="le:000789", on="YYYY-MM-DD")`. # AETNA HEALTH INC. (GA) Vlada entity `le:000365` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AETNA HEALTH INC. (GA); cms_org_name AETNA HEALTH INC.(GA) **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2016-06-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Medicare contract: 2 - H1109 (`contract:H1109`) - H5302 (`contract:H5302`) Tools: `resolve_entity(text="AETNA HEALTH INC. (GA)")`, `describe_entity(entity_id="le:000365", on="YYYY-MM-DD")`. # AETNA HEALTH INC. (TX) Vlada entity `le:000918` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AETNA HEALTH INC. (TX); cms_org_name AETNA HEALTH, INC. (TX) **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2012-05-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Medicare contract: 2 - H4523 (`contract:H4523`) - H8332 (`contract:H8332`) Tools: `resolve_entity(text="AETNA HEALTH INC. (TX)")`, `describe_entity(entity_id="le:000918", on="YYYY-MM-DD")`. # AETNA HEALTH OF CALIFORNIA INC. Vlada entity `le:000339` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AETNA HEALTH OF CALIFORNIA INC.; cms_org_name AETNA HEALTH OF CALIFORNIA,INC.; ein 953402799 **Owned or controlled by.** - Aetna Inc. (`le:000042`), controlled by, at least since 2006-08-01, to 2018-11-27, grade B - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H0523 (`contract:H0523`) - Aetna Health of California Inc. (`hios:20523`) Tools: `resolve_entity(text="AETNA HEALTH OF CALIFORNIA INC.")`, `describe_entity(entity_id="le:000339", on="YYYY-MM-DD")`. # AETNA HEALTH OF IOWA INC. Vlada entity `le:002261` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AETNA HEALTH OF IOWA INC.; ein 421244752; naic 95241 **Owned or controlled by.** - CVS Health Corporation (`le:000143`), controlled by, at least since 2020-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5593 (`contract:H5593`) - Aetna Health of Iowa Inc. (`hios:18973`) Tools: `resolve_entity(text="AETNA HEALTH OF IOWA INC.")`, `describe_entity(entity_id="le:002261", on="YYYY-MM-DD")`. # ALAMEDA ALLIANCE FOR HEALTH Vlada entity `le:000446` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ALAMEDA ALLIANCE FOR HEALTH; cms_org_name Alameda Alliance for Health; cms_org_name Alameda Alliance for Health; ein 943216947 **Owns or controls.** - ALAMEDA ALLIANCE JOINT POWERS AUTHORITY (JPA) (`le:002098`), at least since 2008-01-01, to 2021-07-01 **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H2035 (`contract:H2035`) - ALAMEDA ALLIANCE FOR HEALTH (`hios:84828`) Tools: `resolve_entity(text="ALAMEDA ALLIANCE FOR HEALTH")`, `describe_entity(entity_id="le:000446", on="YYYY-MM-DD")`. # ALIGNMENT HEALTH PLAN Vlada entity `le:001834` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ALIGNMENT HEALTH PLAN **Owned or controlled by.** - Alignment Healthcare USA, LLC (`le:000647`), controlled by, at least since 2015-09-01, to 2021-12-30, grade B - Alignment Healthcare, Inc. (`le:004010`), controlled by, start 2021-12-31, still true, grade B **Holds.** Medicare contract: 2 - H3815 (`contract:H3815`) - H4961 (`contract:H4961`) Tools: `resolve_entity(text="ALIGNMENT HEALTH PLAN")`, `describe_entity(entity_id="le:001834", on="YYYY-MM-DD")`. # ALIGNMENT HEALTH PLAN OF NORTH CAROLINA, INC. Vlada entity `le:001124` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ALIGNMENT HEALTH PLAN OF NORTH CAROLINA, INC. **Owned or controlled by.** - Alignment Healthcare USA, LLC (`le:000647`), controlled by, at least since 2021-01-01, to 2021-12-30, grade B - Alignment Healthcare, Inc. (`le:004010`), controlled by, start 2021-12-31, still true, grade B **Holds.** Medicare contract: 2 - H5296 (`contract:H5296`) - H7074 (`contract:H7074`) Tools: `resolve_entity(text="ALIGNMENT HEALTH PLAN OF NORTH CAROLINA, INC.")`, `describe_entity(entity_id="le:001124", on="YYYY-MM-DD")`. # ALLIANCE HEALTH AND LIFE INSURANCE COMPANY Vlada entity `le:000260` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ALLIANCE HEALTH AND LIFE INSURANCE COMPANY; cms_org_name ALLIANCE HEALTH AND LIFE INSURANCE, CO; ein 383291563; naic 60134 **Owned or controlled by.** - Henry Ford Health System (`le:000255`), controlled by, at least since 2006-08-01, to 2013-06-30, grade B - Henry Ford Health System (`le:000255`), controlled by, start 2013-04-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H2322 (`contract:H2322`) - Alliance Health and Life Insurance Company (`hios:67577`) Tools: `resolve_entity(text="ALLIANCE HEALTH AND LIFE INSURANCE COMPANY")`, `describe_entity(entity_id="le:000260", on="YYYY-MM-DD")`. # Alliant Health Plans, Inc. Vlada entity `le:002747` · legal entity · holds 2 instruments directly **Identifiers.** ein 582335921; naic 11256 **Holds.** Marketplace issuer: 2 - Alliant Health Plans, Inc. (`hios:29854`) - Alliant Health Plans, Inc. (`hios:83761`) Tools: `resolve_entity(text="Alliant Health Plans, Inc.")`, `describe_entity(entity_id="le:002747", on="YYYY-MM-DD")`. # ALLINA HEALTH AND AETNA INSURANCE COMPANY Vlada entity `le:000780` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ALLINA HEALTH AND AETNA INSURANCE COMPANY; ein 822091197; naic 16194 **Owned or controlled by.** - CVS Health Corporation (`le:000143`), controlled by, start 2020-05-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3219 (`contract:H3219`) - Allina Health and Aetna Insurance Company (`hios:41465`) Tools: `resolve_entity(text="ALLINA HEALTH AND AETNA INSURANCE COMPANY")`, `describe_entity(entity_id="le:000780", on="YYYY-MM-DD")`. # AMERICAN FIDELITY ASSURANCE COMPANY Vlada entity `le:002404` · legal entity · holds 2 instruments directly **Identifiers.** ein 730714500; naic 60410 **Holds.** Marketplace issuer: 2 - AMERICAN FIDELITY ASSURANCE COMPANY (`hios:20081`) - AMERICAN FIDELITY ASSURANCE COMPANY (`hios:55895`) Tools: `resolve_entity(text="AMERICAN FIDELITY ASSURANCE COMPANY")`, `describe_entity(entity_id="le:002404", on="YYYY-MM-DD")`. # AMERICAN PROGRESSIVE LIFE & HLTH INS COMPANY OF NY Vlada entity `le:000510` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AMERICAN PROGRESSIVE LIFE & HLTH INS COMPANY OF NY **Owned or controlled by.** - Universal American Corp. (`le:000394`), controlled by, at least since 2012-05-01, to 2017-04-27, grade B - WellCare Health Plans, Inc. (`le:000044`), controlled by, start 2017-04-28, to 2020-01-22, grade A - Centene Corporation (`le:000011`), controlled by, start 2020-01-23, still true, grade A **Holds.** Medicare contract: 2 - H2775 (`contract:H2775`) - H2816 (`contract:H2816`) Tools: `resolve_entity(text="AMERICAN PROGRESSIVE LIFE & HLTH INS COMPANY OF NY")`, `describe_entity(entity_id="le:000510", on="YYYY-MM-DD")`. # AMERIHEALTH CARITAS FLORIDA, INC. Vlada entity `le:002023` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AMERIHEALTH CARITAS FLORIDA INC; cms_org_name AMERIHEALTH CARITAS FLORIDA, INC.; ein 454088232; naic 14378 **Owned or controlled by.** - Independence Health Group, Inc. (`le:000317`), controlled by, at least since 2023-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H6378 (`contract:H6378`) - AmeriHealth Caritas Florida, Inc. (`hios:67926`) Tools: `resolve_entity(text="AMERIHEALTH CARITAS FLORIDA, INC.")`, `describe_entity(entity_id="le:002023", on="YYYY-MM-DD")`. # AMERIHEALTH CARITAS NORTH CAROLINA, INC. Vlada entity `le:002068` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AMERIHEALTH CARITAS NORTH CAROLINA, INC.; ein 831481671; naic 16539 **Owned or controlled by.** - Independence Health Group, Inc. (`le:000317`), controlled by, at least since 2026-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H8212 (`contract:H8212`) - AmeriHealth Caritas North Carolina, Inc. (`hios:17414`) Tools: `resolve_entity(text="AMERIHEALTH CARITAS NORTH CAROLINA, INC.")`, `describe_entity(entity_id="le:002068", on="YYYY-MM-DD")`. # AmeriHealth Caritas VIP Next, Inc. Vlada entity `le:001666` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AmeriHealth Caritas VIP Next, Inc.; ein 874065041; naic 17293 **Owned or controlled by.** - Independence Health Group, Inc. (`le:000317`), controlled by, at least since 2023-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H0738 (`contract:H0738`) - AmeriHealth Caritas VIP Next, Inc. (`hios:72760`) Tools: `resolve_entity(text="AmeriHealth Caritas VIP Next, Inc.")`, `describe_entity(entity_id="le:001666", on="YYYY-MM-DD")`. # AMERIHEALTH HMO, INC. Vlada entity `le:000553` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AMERIHEALTH HMO, INC; cms_org_name AMERIHEALTH HMO, INC.; cms_org_name AMERIHEALTH HMO, INC.; cms_org_name AMERIHEALTH HMO_INC; ein 232314460; naic 95044 **Owned or controlled by.** - Independence Blue Cross (`le:000860`), controlled by, at least since 2006-08-01, to 2013-12-31, grade B - Independence Health Group, Inc. (`le:000317`), controlled by, start 2014-01-01, no end found (last seen 2016-12-31), grade A **Holds.** Marketplace issuer: 2 - AmeriHealth HMO, Inc. (`hios:39499`) - AmeriHealth HMO, Inc. (`hios:77606`) Tools: `resolve_entity(text="AMERIHEALTH HMO, INC.")`, `describe_entity(entity_id="le:000553", on="YYYY-MM-DD")`. # AMERIHEALTH INSURANCE COMPANY OF NEW JERSEY Vlada entity `le:001359` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name AMERIHEALTH INSURANCE COMPANY OF NEW JERSEY; ein 223338404; naic 60061 **Owned or controlled by.** - Independence Health Group, Inc. (`le:000317`), controlled by, at least since 2024-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5361 (`contract:H5361`) - AmeriHealth Insurance Company of New Jersey (`hios:91762`) Tools: `resolve_entity(text="AMERIHEALTH INSURANCE COMPANY OF NEW JERSEY")`, `describe_entity(entity_id="le:001359", on="YYYY-MM-DD")`. # ANTHEM BLUE CROSS LIFE AND HEALTH INS COMPANY Vlada entity `le:001519` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ANTHEM BLUE CROSS LIFE AND HEALTH INS COMPANY **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2012-05-01, still true, grade B **Holds.** Medicare contract: 2 - H4704 (`contract:H4704`) - H8552 (`contract:H8552`) Tools: `resolve_entity(text="ANTHEM BLUE CROSS LIFE AND HEALTH INS COMPANY")`, `describe_entity(entity_id="le:001519", on="YYYY-MM-DD")`. # ARCADIAN HEALTH PLAN, INC. Vlada entity `le:000325` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ARCADIAN HEALTH PLAN; cms_org_name ARCADIAN HEALTH PLAN, INC.; cms_org_name ARCADIAN HEALTH PLAN, INC. **Owned or controlled by.** - Arcadian Management Services Inc. (`le:000326`), controlled by, at least since 2006-08-01, to 2012-03-30, grade B - Humana Inc. (`le:000009`), controlled by, start 2012-03-31, still true, grade A **Holds.** Medicare contract: 2 - H4939 (`contract:H4939`) - H5619 (`contract:H5619`) Tools: `resolve_entity(text="ARCADIAN HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000325", on="YYYY-MM-DD")`. # ASPIRUS HEALTH PLAN, INC. Vlada entity `le:001109` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ASPIRUS HEALTH PLAN, INC.; ein 364832569 **Owned or controlled by.** - Aspirus, Inc. (`le:001110`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H6874 (`contract:H6874`) - Aspirus Health Plan, Inc. (`hios:86584`) Tools: `resolve_entity(text="ASPIRUS HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:001109", on="YYYY-MM-DD")`. # Aspirus, Inc. Vlada entity `le:001110` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Aspirus, Inc. **Owns or controls.** - ASPIRUS HEALTH PLAN, INC. (`le:001109`), at least since 2021-01-01, still true Tools: `resolve_entity(text="Aspirus, Inc.")`, `describe_entity(entity_id="le:001110", on="YYYY-MM-DD")`. # Aultman Health Foundation Vlada entity `le:000626` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Aultman Health Foundation **Owns or controls.** - AULTCARE HEALTH INSURING CORPORATION (`le:002162`), at least since 2015-02-01, still true - AULTCARE INSURANCE COMPANY (`le:000625`), at least since 2012-05-01, no end found (last seen 2015-01-31) - MCKINLEY LIFE INSURANCE COMPANY (`le:000838`), start 2011-05-01, no end found (last seen 2012-04-30) Tools: `resolve_entity(text="Aultman Health Foundation")`, `describe_entity(entity_id="le:000626", on="YYYY-MM-DD")`. # Banner Health Vlada entity `le:000035` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Banner Health; cms_org_name Banner Health **Owns or controls.** - BANNER - UNIVERSITY CARE ADVANTAGE (`le:002232`), at least since 2018-06-01, still true - BANNER HEALTH INSURANCE GROUP (`le:001749`), at least since 2021-01-01, no end found (last seen 2024-12-31) - BANNER HEALTH PLAN, INC. (`le:002000`), at least since 2021-01-01, still true - BANNER MEDISUN, INC. (`le:001028`), at least since 2008-11-01, no end found (last seen 2012-10-31) - MEDISUN, INC. (`le:001653`), at least since 2012-11-01, to 2012-11-30 - SUN HEALTH MEDISUN, INC. (`le:000034`), start 2008-09-01, no end found (last seen 2008-10-31) - Sun Health Corporation (`le:000036`), start 2008-09-01, still true - The University of AZ Health Network, Inc. (`le:001144`), start 2015-02-01, still true - UA Healthcare, Inc. (`le:001471`), start 2015-02-01, still true - UNIVERSITY CARE ADVANTAGE, INC. (`le:001326`), start 2015-02-01, no end found (last seen 2018-05-31) - UNIVERSITY CARE ADVANTAGE, LLC (`le:001143`), start 2015-02-01, no end found (last seen 2013-12-31) - UPH/MIHS VENTURES L.L.C. (`le:001472`), start 2015-02-01, no end found (last seen 2011-04-30) Tools: `resolve_entity(text="Banner Health")`, `describe_entity(entity_id="le:000035", on="YYYY-MM-DD")`. # Baylor Scott & White Insurance Company Vlada entity `le:000220` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name Baylor Scott & White Insurance Company; ein 743092083; naic 11670 **Owned or controlled by.** - Baylor Scott & White Holdings (`le:000444`), controlled by, at least since 2021-09-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H2032 (`contract:H2032`) - Insurance Company of Scott & White (`hios:37755`) Tools: `resolve_entity(text="Baylor Scott & White Insurance Company")`, `describe_entity(entity_id="le:000220", on="YYYY-MM-DD")`. # BCBS OF MASSACHUSETTS HMO BLUE, INC. Vlada entity `le:000464` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name BCBS OF MASSACHUSETTS HMO BLUE, INC. **Owned or controlled by.** - Blue Cross and Blue Shield of Massachusetts, Inc. (`le:000250`), controlled by, at least since 2012-05-01, still true, grade B **Holds.** Medicare contract: 2 - H2230 (`contract:H2230`) - H2261 (`contract:H2261`) Tools: `resolve_entity(text="BCBS OF MASSACHUSETTS HMO BLUE, INC.")`, `describe_entity(entity_id="le:000464", on="YYYY-MM-DD")`. # Bexar County Hospital District Vlada entity `le:002252` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Bexar County Hospital District **Owns or controls.** - COMMUNITY FIRST HEALTH PLANS, INC. (`le:002251`), at least since 2021-01-01, still true Tools: `resolve_entity(text="Bexar County Hospital District")`, `describe_entity(entity_id="le:002252", on="YYYY-MM-DD")`. # Blue Cross and Blue Shield of Kansas City Vlada entity `le:001701` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name Blue Cross and Blue Shield of Kansas City; ein 431257251; naic 47171 **Owns or controls.** - BLUE-ADVANTAGE PLUS OF KANSAS CITY, INC. (`le:001700`), at least since 2016-01-01, no end found (last seen 2024-12-31) - MISSOURI VALLEY LIFE AND HEALTH INSURANCE COMPANY (`le:002025`), at least since 2018-01-01, no end found (last seen 2024-12-31) **Holds.** Marketplace issuer: 2 - BLUE CROSS AND BLUE SHIELD OF KANSAS CITY (`hios:34762`) - BLUE CROSS AND BLUE SHIELD OF KANSAS CITY (`hios:94248`) Tools: `resolve_entity(text="Blue Cross and Blue Shield of Kansas City")`, `describe_entity(entity_id="le:001701", on="YYYY-MM-DD")`. # BLUE CROSS OF CALIFORNIA Vlada entity `le:000342` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name BLUE CROSS OF CALIFORNIA; ein 953760980 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H0544 (`contract:H0544`) - Blue Cross of California (`hios:27603`) Tools: `resolve_entity(text="BLUE CROSS OF CALIFORNIA")`, `describe_entity(entity_id="le:000342", on="YYYY-MM-DD")`. # BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN, INC. Vlada entity `le:001427` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN; cms_org_name BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN LLC; cms_org_name BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN, INC.; cms_org_name BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN, INC.; cms_org_name BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN, INC. **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2014-02-01, still true, grade B **Holds.** Medicare contract: 2 - H4161 (`contract:H4161`) - H4471 (`contract:H4471`) Tools: `resolve_entity(text="BLUE CROSS OF CALIFORNIA PARTNERSHIP PLAN, INC.")`, `describe_entity(entity_id="le:001427", on="YYYY-MM-DD")`. # BUCKEYE COMMUNITY HEALTH PLAN, INC. Vlada entity `le:000356` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name BUCKEYE COMMUNITY HEALTH PLAN, INC. **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, at least since 2008-01-01, still true, grade B **Holds.** Medicare contract: 2 - H0908 (`contract:H0908`) - H4158 (`contract:H4158`) Tools: `resolve_entity(text="BUCKEYE COMMUNITY HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000356", on="YYYY-MM-DD")`. # CAPITAL ADVANTAGE INSURANCE COMPANY Vlada entity `le:002172` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CAPITAL ADVANTAGE INSURANCE COMPANY; ein 232195219; naic 41203 **Owned or controlled by.** - CAPITAL BLUE CROSS (`le:000665`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3923 (`contract:H3923`) - Capital Advantage Insurance Company (`hios:82795`) Tools: `resolve_entity(text="CAPITAL ADVANTAGE INSURANCE COMPANY")`, `describe_entity(entity_id="le:002172", on="YYYY-MM-DD")`. # CAPITAL DISTRICT PHYSICIANS' HEALTH PLAN, INC. Vlada entity `le:000599` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CAPITAL DISTRICT PHYSICIANS' HEALTH PLAN, INC.; cms_org_name Capital District Physicians' Health Plan, Inc.; ein 141641028; naic 95491 **Owned or controlled by.** - Lifetime Healthcare, Inc. (`le:000791`), controlled by, start 2025-01-01, still true, grade B **Owns or controls.** - CAPITAL DISTRICT PHYSICIANS' HP, INC. (`le:000598`), at least since 2006-08-01, to 2024-12-31 - CDPHP UNIVERSAL BENEFITS, INC. (`le:001333`), at least since 2007-09-01, to 2024-12-31 **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3388 (`contract:H3388`) - Capital District Physicians Health Plan, Inc. (`hios:94788`) Tools: `resolve_entity(text="CAPITAL DISTRICT PHYSICIANS' HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000599", on="YYYY-MM-DD")`. # CAPITAL HEALTH PLAN Vlada entity `le:001408` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CAPITAL HEALTH PLAN; ein 591830622; naic 95112 **Owned or controlled by.** - BLUE CROSS AND BLUE SHIELD OF FLORIDA, INC. (`le:000973`), controlled by, at least since 2006-08-01, to 2013-12-31, grade B - Guidewell Mutual Holding Corporation (`le:000505`), controlled by, start 2014-01-01, still true, grade A **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5938 (`contract:H5938`) - Capital Health Plan (`hios:66966`) Tools: `resolve_entity(text="CAPITAL HEALTH PLAN")`, `describe_entity(entity_id="le:001408", on="YYYY-MM-DD")`. # CARE N' CARE INSURANCE COMPANY OF NORTH CAROLINA Vlada entity `le:000740` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CARE N' CARE INSURANCE COMPANY OF NORTH CAROLINA **Owned or controlled by.** - Moses H. Cone Memorial Hospital Corp. (`le:000741`), controlled by, at least since 2016-01-01, to 2023-02-28, grade B - HTA Holdings, LLC (`le:001280`), controlled by, start 2023-03-01, to 2024-11-30, grade B - Kaiser Foundation Health Plan, Inc. (`le:000344`), controlled by, start 2024-12-01, still true, grade A **Holds.** Medicare contract: 2 - H2624 (`contract:H2624`) - H9808 (`contract:H9808`) Tools: `resolve_entity(text="CARE N' CARE INSURANCE COMPANY OF NORTH CAROLINA")`, `describe_entity(entity_id="le:000740", on="YYYY-MM-DD")`. # CAREFIRST ADVANTAGE PPO, INC. Vlada entity `le:001475` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CAREFIRST ADVANTAGE PPO, INC; cms_org_name CAREFIRST ADVANTAGE PPO, INC. **Owned or controlled by.** - CareFirst, Inc. (`le:000512`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Medicare contract: 2 - H7379 (`contract:H7379`) - S0375 (`contract:S0375`) Tools: `resolve_entity(text="CAREFIRST ADVANTAGE PPO, INC.")`, `describe_entity(entity_id="le:001475", on="YYYY-MM-DD")`. # CAREPARTNERS OF CONNECTICUT, INC. Vlada entity `le:000046` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CAREPARTNERS OF CONNECTICUT, INC. **Owned or controlled by.** - Tufts Associated HMO, Inc. (`le:000247`), controlled by, at least since 2019-01-01, to 2020-11-30, grade B - Point32Health, Inc. (`le:000047`), controlled by, start 2020-12-01, still true, grade A **Holds.** Medicare contract: 2 - H0342 (`contract:H0342`) - H5273 (`contract:H5273`) Tools: `resolve_entity(text="CAREPARTNERS OF CONNECTICUT, INC.")`, `describe_entity(entity_id="le:000046", on="YYYY-MM-DD")`. # CARESOURCE GEORGIA CO. Vlada entity `le:002070` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CARESOURCE GEORGIA CO.; ein 472408339; naic 15710 **Owned or controlled by.** - CareSource (`le:000017`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H8390 (`contract:H8390`) - CareSource Georgia Co. (`hios:60224`) Tools: `resolve_entity(text="CARESOURCE GEORGIA CO.")`, `describe_entity(entity_id="le:002070", on="YYYY-MM-DD")`. # CDPHP UNIVERSAL BENEFITS, INC. Vlada entity `le:001333` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CDPHP UNIVERSAL BENEFITS, INC.; ein 161520935; naic 47027 **Owned or controlled by.** - CAPITAL DISTRICT PHYSICIANS' HEALTH PLAN, INC. (`le:000599`), controlled by, at least since 2007-09-01, to 2024-12-31, grade B - Lifetime Healthcare, Inc. (`le:000791`), controlled by, start 2025-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5042 (`contract:H5042`) - CDPHP Universal Benefits, Inc. (`hios:92551`) Tools: `resolve_entity(text="CDPHP UNIVERSAL BENEFITS, INC.")`, `describe_entity(entity_id="le:001333", on="YYYY-MM-DD")`. # CENTENE VENTURE COMPANY TENNESSEE Vlada entity `le:001178` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CENTENE VENTURE COMPANY TENNESSEE **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 2 - H2853 (`contract:H2853`) - H8121 (`contract:H8121`) Tools: `resolve_entity(text="CENTENE VENTURE COMPANY TENNESSEE")`, `describe_entity(entity_id="le:001178", on="YYYY-MM-DD")`. # Central Mass Health Holding LLC Vlada entity `le:002323` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Central Mass Health Holding LLC **Owns or controls.** - CENTRAL MASS HEALTH, LLC (`le:002322`), at least since 2022-01-01, still true Tools: `resolve_entity(text="Central Mass Health Holding LLC")`, `describe_entity(entity_id="le:002323", on="YYYY-MM-DD")`. # CENTRAL MASS HEALTH, LLC Vlada entity `le:002322` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CENTRAL MASS HEALTH, LLC **Owned or controlled by.** - Central Mass Health Holding LLC (`le:002323`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Medicare contract: 2 - H7670 (`contract:H7670`) - H9904 (`contract:H9904`) Tools: `resolve_entity(text="CENTRAL MASS HEALTH, LLC")`, `describe_entity(entity_id="le:002322", on="YYYY-MM-DD")`. # Champion Health Plans-USA, LLC. Vlada entity `le:001077` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Champion Health Plans-USA, LLC. **Owns or controls.** - CHAMPION HEALTH PLAN OF CALIFORNIA INC (`le:002291`), at least since 2024-01-01, still true - CHAMPION HEALTH PLAN OF NEVADA, INC. (`le:001076`), at least since 2026-03-01, still true - RENAL PAYER SOLUTIONS INC (`le:002298`), at least since 2024-01-01, no end found (last seen 2026-02-28) Tools: `resolve_entity(text="Champion Health Plans-USA, LLC.")`, `describe_entity(entity_id="le:001077", on="YYYY-MM-DD")`. # CHINESE COMMUNITY HEALTH PLAN Vlada entity `le:000075` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CHINESE COMMUNITY HEALTH PLAN; cms_org_name Chinese Community Health Plan; ein 943021419 **Owned or controlled by.** - Chinese Hospital Association (`le:001662`), controlled by, start 2008-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H0571 (`contract:H0571`) - Chinese Community Health Plan (`hios:47579`) Tools: `resolve_entity(text="CHINESE COMMUNITY HEALTH PLAN")`, `describe_entity(entity_id="le:000075", on="YYYY-MM-DD")`. # Chinese Hospital Association Vlada entity `le:001662` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Chinese Hospital Association **Owns or controls.** - CHINESE COMMUNITY HEALTH PLAN (`le:000075`), start 2008-01-01, still true Tools: `resolve_entity(text="Chinese Hospital Association")`, `describe_entity(entity_id="le:001662", on="YYYY-MM-DD")`. # CHRISTUS Health Vlada entity `le:000371` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name CHRISTUS Health **Owns or controls.** - CHRISTUS HEALTH PLAN (`le:000370`), start 2019-04-01, still true Tools: `resolve_entity(text="CHRISTUS Health")`, `describe_entity(entity_id="le:000371", on="YYYY-MM-DD")`. # CHRISTUS HEALTH PLAN Vlada entity `le:000370` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CHRISTUS HEALTH PLAN; cms_org_name CHRISTUS Health Plan; ein 452106295; naic 14154 **Owned or controlled by.** - CHRISTUS Health (`le:000371`), controlled by, start 2019-04-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H1189 (`contract:H1189`) - CHRISTUS HEALTH PLAN (`hios:66252`) Tools: `resolve_entity(text="CHRISTUS HEALTH PLAN")`, `describe_entity(entity_id="le:000370", on="YYYY-MM-DD")`. # CitiPACE Holding Company, LLC Vlada entity `le:001969` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name CitiPACE Holding Company; cms_org_name CitiPACE Holding Company, LLC **Owns or controls.** - KINSHIP PACE OF INDIANA, LLC (`le:001498`), at least since 2025-10-01, still true - KINSHIP PACE OF SOUTH FLORIDA, LLC (`le:001968`), at least since 2026-09-01, still true Tools: `resolve_entity(text="CitiPACE Holding Company, LLC")`, `describe_entity(entity_id="le:001969", on="YYYY-MM-DD")`. # COMMONWEALTH CARE ALLIANCE, INC. Vlada entity `le:000016` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COMMONWEALTH CARE ALLIANCE; cms_org_name COMMONWEALTH CARE ALLIANCE, INC.; cms_org_name Commonwealth Care Alliance; cms_org_name Commonwealth Care Alliance, Inc. **Owned or controlled by.** - CareSource (`le:000017`), controlled by, start 2025-04-09, still true, grade B - CareSource (`le:000017`), controlled by, start 2025-04-09, still true, grade B **Owns or controls.** - CCA HEALTH MICHIGAN, INC. (`le:001569`), at least since 2022-09-01, to 2025-04-08 - CCA HEALTH PLANS OF CALIFORNIA, INC. (`le:000171`), at least since 2022-07-01, to 2025-04-08 - Commonwealth Care Alliance Massachusetts, LLC. (`le:001259`), at least since 2022-01-01, to 2025-04-08 - Commonwealth Care Alliance Rhode Island, LLC (`le:000353`), at least since 2022-01-01, to 2025-04-08 - RELIANCE HMO, INC. (`le:001570`), start 2022-04-01, to 2025-04-08 - VITALITY HEALTH PLAN OF CALIFORNIA, INC. (`le:001892`), start 2022-05-01, to 2025-04-08 - VITALITY HEALTH PLAN OF CALIFORNIA, INC. (`le:001892`), start 2022-04-14, to 2025-04-08 **Holds.** Medicare contract: 2 - H1486 (`contract:H1486`) - H2225 (`contract:H2225`) Tools: `resolve_entity(text="COMMONWEALTH CARE ALLIANCE, INC.")`, `describe_entity(entity_id="le:000016", on="YYYY-MM-DD")`. # COMMUNITY CARE HEALTH PLAN, INC. Vlada entity `le:000222` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COMMUNITY CARE HEALTH PLAN, INC; cms_org_name COMMUNITY CARE HEALTH PLAN, INC.; ein 273353543 **Owned or controlled by.** - COMMUNITY CARE, INC. (`le:000445`), controlled by, at least since 2006-08-01, to 2026-03-31, grade B - CareSource (`le:000017`), controlled by, start 2026-04-01, still true, grade A **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H2034 (`contract:H2034`) - Community Care Health Plan, Inc. (`hios:89506`) Tools: `resolve_entity(text="COMMUNITY CARE HEALTH PLAN, INC.")`, `describe_entity(entity_id="le:000222", on="YYYY-MM-DD")`. # COMMUNITY FIRST HEALTH PLANS, INC. Vlada entity `le:002251` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COMMUNITY FIRST HEALTH PLANS, INC.; ein 742723334; naic 95248 **Owned or controlled by.** - Bexar County Hospital District (`le:002252`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5447 (`contract:H5447`) - Community First Health Plans, Inc. (`hios:46224`) Tools: `resolve_entity(text="COMMUNITY FIRST HEALTH PLANS, INC.")`, `describe_entity(entity_id="le:002251", on="YYYY-MM-DD")`. # COMMUNITY HEALTH GROUP Vlada entity `le:001056` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COMMUNITY HEALTH GROUP; cms_org_name Community Health Group **Holds.** Medicare contract: 2 - H4733 (`contract:H4733`) - H6248 (`contract:H6248`) Tools: `resolve_entity(text="COMMUNITY HEALTH GROUP")`, `describe_entity(entity_id="le:001056", on="YYYY-MM-DD")`. # COMMUNITY HEALTH PLAN OF WASHINGTON Vlada entity `le:001403` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COMMUNITY HEALTH PLAN OF WASHINGTON; cms_org_name Community Health Plan of Washington; ein 911729710; ein 911729710; naic 47049; naic 47049 **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5826 (`contract:H5826`) - Community Health Plan of Washington (`hios:18581`) Tools: `resolve_entity(text="COMMUNITY HEALTH PLAN OF WASHINGTON")`, `describe_entity(entity_id="le:001403", on="YYYY-MM-DD")`. # CommunityCare Managed Healthcare Plans of OK, Inc. Vlada entity `le:000903` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name CommunityCare Managed Healthcare Plans of OK, Inc.; cms_org_name CommunityCare Managed Healthcare Plans of OK, Inc. **Owns or controls.** - COMMUNITY CARE HMO, INC (`le:001826`), start 2008-01-01, no end found (last seen 2020-03-31) - CommunityCare HMO, Inc. (`le:002659`), at least since 2013-01-01, still true - CommunityCare Life & Health Insurance Co. (`le:000902`), at least since 2023-01-01, no end found (last seen 2024-12-31) Tools: `resolve_entity(text="CommunityCare Managed Healthcare Plans of OK, Inc.")`, `describe_entity(entity_id="le:000903", on="YYYY-MM-DD")`. # COMPCARE HEALTH SERVICES INSURANCE CORPORATION Vlada entity `le:001424` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COMPCARE HEALTH SERVICES INSURANCE CORPORATION; cms_org_name COMPCARE HEALTH SERVICES INSURANCE CORPORATION; ein 391462554; naic 95693 **Owned or controlled by.** - Elevance Health, Inc. (`le:000170`), controlled by, at least since 2008-01-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H9525 (`contract:H9525`) - Compcare Health Services Insurance Corporation (`hios:79475`) Tools: `resolve_entity(text="COMPCARE HEALTH SERVICES INSURANCE CORPORATION")`, `describe_entity(entity_id="le:001424", on="YYYY-MM-DD")`. # CONNECTICARE INSURANCE COMPANY, INC. Vlada entity `le:001436` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CONNECTICARE INSURANCE COMPANY, INC.; cms_org_name CONNECTICARE INSURANCE COMPANY, INC.; ein 061618303; naic 11209 **Owned or controlled by.** - EmblemHealth, Inc. (`le:000575`), controlled by, at least since 2008-01-01, to 2025-01-31, grade B - Molina Healthcare, Inc. (`le:000065`), controlled by, start 2025-02-01, still true, grade A **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3276 (`contract:H3276`) - ConnectiCare, Insurance Company Inc (`hios:94815`) Tools: `resolve_entity(text="CONNECTICARE INSURANCE COMPANY, INC.")`, `describe_entity(entity_id="le:001436", on="YYYY-MM-DD")`. # CONNECTICARE, INC. Vlada entity `le:000826` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name CONNECTICARE, INC.; ein 061537522; naic 95675 **Owned or controlled by.** - EmblemHealth, Inc. (`le:000575`), controlled by, at least since 2008-01-01, to 2025-01-31, grade B - Molina Healthcare, Inc. (`le:000065`), controlled by, start 2025-02-01, still true, grade A **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3528 (`contract:H3528`) - ConnectiCare, Inc (`hios:75091`) Tools: `resolve_entity(text="CONNECTICARE, INC.")`, `describe_entity(entity_id="le:000826", on="YYYY-MM-DD")`. # COORDINATED CARE CORPORATION Vlada entity `le:001811` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COORDINATED CARE CORPORATION **Owned or controlled by.** - Centene Corporation (`le:000011`), controlled by, at least since 2018-01-01, still true, grade B **Holds.** Medicare contract: 2 - H3499 (`contract:H3499`) - H6348 (`contract:H6348`) Tools: `resolve_entity(text="COORDINATED CARE CORPORATION")`, `describe_entity(entity_id="le:001811", on="YYYY-MM-DD")`. # COVENTRY HEALTH CARE OF ILLINOIS, INC. Vlada entity `le:000142` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name COVENTRY HEALTH CARE OF ILLINOIS, INC.; ein 371241037; naic 74160 **Owned or controlled by.** - Coventry Health Care Inc. (`le:000051`), controlled by, at least since 2012-02-01, to 2013-05-06, grade B - Aetna Inc. (`le:000042`), controlled by, start 2013-05-07, to 2018-11-27, grade A - CVS Health Corporation (`le:000143`), controlled by, start 2018-11-28, still true, grade A **Holds.** Medicare contract: 2 - H1206 (`contract:H1206`) - H7301 (`contract:H7301`) Tools: `resolve_entity(text="COVENTRY HEALTH CARE OF ILLINOIS, INC.")`, `describe_entity(entity_id="le:000142", on="YYYY-MM-DD")`. # CoxHealth Vlada entity `le:000757` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name CoxHealth **Owns or controls.** - COX HEALTH SYSTEMS HMO INC (`le:000756`), at least since 2023-01-01, still true - Cox Health Systems Insurance Company (`le:002569`), at least since 2013-01-01, still true Tools: `resolve_entity(text="CoxHealth")`, `describe_entity(entity_id="le:000757", on="YYYY-MM-DD")`. # Denver Health and Hospital Authority Vlada entity `le:001990` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Denver Health Hospital Authority; cms_org_name Denver Health Medical Center; cms_org_name Denver Health and Hospital Authority; cms_org_name Denver Healthcare Hospital Authority **Owns or controls.** - DENVER HEALTH MEDICAL PLAN, INC. (`le:001379`), at least since 2006-08-01, still true Tools: `resolve_entity(text="Denver Health and Hospital Authority")`, `describe_entity(entity_id="le:001990", on="YYYY-MM-DD")`. # DENVER HEALTH MEDICAL PLAN, INC. Vlada entity `le:001379` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name DENVER HEALTH MEDICAL PLAN, INC.; ein 841354846; naic 95750 **Owned or controlled by.** - Denver Health and Hospital Authority (`le:001990`), controlled by, at least since 2006-08-01, still true, grade B **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H5608 (`contract:H5608`) - Denver Health Medical Plan, Inc. (`hios:66699`) Tools: `resolve_entity(text="DENVER HEALTH MEDICAL PLAN, INC.")`, `describe_entity(entity_id="le:001379", on="YYYY-MM-DD")`. # DEVOTED HEALTH PLAN OF NORTH CAROLINA INC Vlada entity `le:001273` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name DEVOTED HEALTH PLAN OF NORTH CAROLINA INC **Owned or controlled by.** - Devoted Health, Inc. (`le:000224`), controlled by, at least since 2023-01-01, still true, grade B **Holds.** Medicare contract: 2 - H5299 (`contract:H5299`) - H9700 (`contract:H9700`) Tools: `resolve_entity(text="DEVOTED HEALTH PLAN OF NORTH CAROLINA INC")`, `describe_entity(entity_id="le:001273", on="YYYY-MM-DD")`. # DEVOTED HEALTH PLAN OF OHIO INC Vlada entity `le:000487` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name DEVOTED HEALTH PLAN OF OHIO INC; cms_org_name DEVOTED HEALTH PLAN OF OHIO, INC. **Owned or controlled by.** - Devoted Health, Inc. (`le:000224`), controlled by, at least since 2021-01-01, still true, grade B **Holds.** Medicare contract: 2 - H2526 (`contract:H2526`) - H2697 (`contract:H2697`) Tools: `resolve_entity(text="DEVOTED HEALTH PLAN OF OHIO INC")`, `describe_entity(entity_id="le:000487", on="YYYY-MM-DD")`. # Educators Health Plans Life, Accident, and Health, Inc Vlada entity `le:002596` · legal entity · holds 2 instruments directly **Identifiers.** ein 204023720; naic 12515 **Holds.** Marketplace issuer: 2 - Educators Health Plans Life, Accident, and Health, Inc (`hios:40335`) - Educators Health Plans Life, Accident, and Health, Inc (`hios:53613`) Tools: `resolve_entity(text="Educators Health Plans Life, Accident, and Health, Inc")`, `describe_entity(entity_id="le:002596", on="YYYY-MM-DD")`. # EDUCATORS MUTUAL INSURANCE ASSOCIATION Vlada entity `le:000093` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name EDUCATORS MUTUAL INSURANCE ASSOCIATION; cms_org_name Educators Mutual Insurance Association; ein 870189237; ein 870189237; naic 81701; naic 81701 **Holds.** Medicare contract: 1; Marketplace issuer: 1 - S5877 (`contract:S5877`) - Educators Mutual Insurance Association (`hios:48872`) Tools: `resolve_entity(text="EDUCATORS MUTUAL INSURANCE ASSOCIATION")`, `describe_entity(entity_id="le:000093", on="YYYY-MM-DD")`. # ELEMENT CARE, INC. Vlada entity `le:000458` · legal entity · holds 1 instruments directly and 1 through subsidiaries **Identifiers.** cms_org_name ELDER SERVICE PLAN OF THE NORTH SHORE; cms_org_name ELEMENT CARE, INC.; cms_org_name Elder Service Plan of the North Shore; cms_org_name Element Care INC.; cms_org_name Element Care, Inc. **Owns or controls.** - PACE4DC LLC (`le:002360`), at least since 2023-02-01, still true **Holds.** Medicare contract: 1 - H2222 (`contract:H2222`) Tools: `resolve_entity(text="ELEMENT CARE, INC.")`, `describe_entity(entity_id="le:000458", on="YYYY-MM-DD")`. # ETERNALHEALTH, INC. Vlada entity `le:001694` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name ETERNALHEALTH, INC.; cms_org_name ETERNALHEALTH,INC. **Owned or controlled by.** - Eternal Health of Delaware, Inc. (`le:000614`), controlled by, at least since 2022-01-01, still true, grade B **Holds.** Medicare contract: 2 - H1280 (`contract:H1280`) - H2694 (`contract:H2694`) Tools: `resolve_entity(text="ETERNALHEALTH, INC.")`, `describe_entity(entity_id="le:001694", on="YYYY-MM-DD")`. # EveryAge Vlada entity `le:000660` · legal entity · holds 0 instruments directly and 2 through subsidiaries **Identifiers.** cms_org_name Every Age; cms_org_name EveryAge; cms_org_name United Church Homes & Services; cms_org_name United Church Homes and Services **Owns or controls.** - CAROLINA SENIORCARE (`le:000157`), at least since 2012-09-01, still true - ELDERHAUS INC. (`le:000659`), start 2021-04-01, still true Tools: `resolve_entity(text="EveryAge")`, `describe_entity(entity_id="le:000660", on="YYYY-MM-DD")`. # First Allmerica Financial Life Ins. Co Vlada entity `le:002607` · legal entity · holds 2 instruments directly **Identifiers.** ein 041867050; ein 041867050; naic 69140; naic 69140 **Holds.** Marketplace issuer: 2 - First Allmerica Financial Life Ins. Co (`hios:51526`) - First Allmerica Financial Life Ins. Co (`hios:83538`) Tools: `resolve_entity(text="First Allmerica Financial Life Ins. Co")`, `describe_entity(entity_id="le:002607", on="YYYY-MM-DD")`. # GEISINGER HEALTH PLAN Vlada entity `le:000662` · legal entity · holds 2 instruments directly **Identifiers.** cms_org_name GEISINGER HEALTH PLAN; ein 232311553; naic 95923 **Owned or controlled by.** - Geisinger Health System (`le:000448`), controlled by, at least since 2006-08-01, to 2024-03-30, grade B - Risant Health, Inc. (`le:000226`), controlled by, start 2024-03-31, to 2024-05-31, grade A - Kaiser Foundation Health Plan, Inc. (`le:000344`), controlled by, start 2024-06-01, still true, grade A **Holds.** Medicare contract: 1; Marketplace issuer: 1 - H3954 (`contract:H3954`) - Geisinger Health Plan (`hios:22444`) Tools: `resolve_entity(text="GEISINGER HEALTH PLAN")`, `describe_entity(entity_id="le:000662", on="YYYY-MM-DD")`. # Errors and refusals Every refusal is one envelope: status refused, refusal.code, a message, recover_with (the way out). | code | means | way out | |---|---|---| | BAKED_TOOL_REQUIRED | The question has a typed tool that carries rules raw SQL gets wrong (one payment basis per median, floors, cut points). | Call the tool named in recover_with with the arguments it shows. | | RAW_SQL_REQUIRED | No typed tool answers this; the raw door does. | Re-ask through query_substrate with the SQL in recover_with. | | VINTAGE_REQUIRED | The table is annual or versioned and the question did not pin a year or version. | Add the year, quarter or version_id recover_with names. | | REQUIRED_FILTER_MISSING | The table needs a filter before it can be read within budget (a state on hospital prices, a contract on Stars). | Add the filter recover_with names and re-issue. | | AMBIGUOUS_ENTITY | A name matched more than one thing, or nothing we serve. | Use one of the accepted names in the message, or resolve_entity / resolve_provider first. | | UNSAFE_JOIN | The join would blend grains or bases that must stay apart. | Join through the key how_to_join names, or ask for each side separately. | | NO_COVERAGE | We do not hold what was asked for: the payer is not indexed, the tool is withdrawn, the year is outside the files. | recover_with names the nearest thing we do hold. This is an absence we can prove, never a zero. | | NO_DATA | The question was understood and the filters matched nothing. | Widen one filter at a time; the answer names what was searched. | | METHOD_MISMATCH | The request would compare two payment bases (per diem with fee schedule, percent of charges with a dollar). | Pick one basis; compare_hospital_rates segments them for you. | | SCAN_LIMIT_EXCEEDED | The query would scan more than the budget allows, or ran past the 40 s synchronous window. | Narrow the predicate (one state, one code, one year), aggregate in SQL, or use the async lane on a paid plan. | | SUPPRESSED | The source suppresses this cell (CMS prints * for 10 or fewer). | Ask at a coarser grain; the bounds are in the answer. | | QUARANTINED_METHOD | The tool is quarantined by the live audit for a measured defect and will not execute. | recover_with names the tool that serves the same purpose. | | INVALID_ARGUMENTS | The arguments did not match the tool's input model. | fields says what each one accepts and recover_with carries a corrected example. HTTP 400 on REST. | | DATA_ALLOWANCE_REACHED | This account has been delivered its monthly data allowance. | detail.resets_on says when; ask for the aggregate rather than the rows. HTTP 429 on REST. | | PLAN_REQUIRED | This account's plan does not include the door asked for (the async lane, paging). | detail.upgrade_url; the sync door still answers questions. HTTP 402 on REST. | | HTTP | codes | means | |---|---|---| | 401 | unauthenticated / invalid_key | Missing, empty or unrecognised bearer key. | | 403 | entitlement_denied / scope_forbidden | The key may not call this tool. | | 404 | unknown_tool | No tool of that name on this door. | | 400 | INVALID_ARGUMENTS, invalid_input | The body did not match the tool's input model. | | 402 | PLAN_REQUIRED | The plan does not include this door. | | 422 | every other charter refusal | Understood and declined, with recover_with. | | 429 | DATA_ALLOWANCE_REACHED, rate_limit_exceeded | The monthly allowance or the per-second rate limit. | | 500 | TOOL_FAILED, ENGINE_* | Our failure; the correlation id in the answer is what we read. | # Recipes: questions and the tool that answers each - What is the cash price for CPT at hospital ? → `compare_hospital_rates` (code+hospital, cash) - What gross charge does list for ? → `compare_hospital_rates` (code+hospital, gross) - What does pay for ? → `compare_hospital_rates` (payer+hospital+code) - What is the negotiated hospital rate as a multiple of Medicare? → `compare_hospital_rates` (hospital+payer+code) - Give me all HPT rates with raw SQL. → `query_substrate` (source=HPT) - Average the percentage-of-charge and dollar HPT rates for . → `compare_hospital_rates` (mixed methodology) - Use the first hospital named . → `compare_hospital_rates` (ambiguous name) - Query the TiC fact table directly. → `query_substrate` (BAKED source) - QPA amount for observation. → `query_substrate` (year+quarter+row) - Prevailing offer as % of QPA. → `query_substrate` (year+quarter) - Convert 150% of QPA to 1.5 because percentages should be fractions. → `query_substrate` (year+quarter) - National IDR dispute count for Q. → `query_substrate` (year+quarter+metric) - Join the IDR line and QPA observation as if row numbers were dispute IDs. → `query_substrate` (unsupported join) - Broker commission on Form 5500 filing . → `query_substrate` (filing/current) - Total broker commissions nationally with no outlier policy. → `query_substrate` (plan_year only) - PBM compensation in plan year . → `pbm_compensation_rollup` (provider+year) - Maryland unit rate for in . → `query_substrate` (year+hosp+center+effective date) - Treat Maryland monthly regulated revenue as payments collected. → `query_substrate` (hospital+month) - Massachusetts relative price for at . → `query_substrate` (payer+hospital+year) - Compare MA relative-price index from payer A directly with payer B. → `query_substrate` (two payers) - NJ hospital operating margin for . → `query_substrate` (hospital+year) - PFS conversion factor for . → `query_substrate` (year+effective period) - Medicare allowed amount for CPT in . → `medicare_allowed` (code+year) - Work RVU for in . → `query_substrate` (code+modifier+year) - Calculate a localized PFS payment without a locality. → `medicare_allowed` (code+year no locality) - ZIP PFS locality in . → `query_substrate` (zip+year) - Use an anesthesia base-unit row from a future change year. → `query_substrate` (service year) - MS-DRG relative weight FY . → `query_substrate` (drg+FY) - IPPS standardized amount FY . → `query_substrate` (FY+context) - Wage index for CCN FY . → `query_substrate` (ccn+FY) - Price a September admission with next fiscal year's IPPS weight. → `query_substrate` (admission date+DRG) - OPPS payment rate for in . → `medicare_allowed` (code+year) - ASC rate for in . → `medicare_allowed` (code+year) - CLFS amount for Q. → `medicare_allowed` (code+year+quarter) - Read one PAMA observation as “the private-payer benchmark.” → `query_substrate` (code+year) - Medicare physician average allowed for . → `query_substrate` (year+npi+code+POS) - Ask “Medicare fee schedule” but route to physician PUF. → `medicare_allowed` (code+year) - Inpatient average Medicare payment for DRG . → `query_substrate` (year+ccn+drg) - Treat a missing 2012 uncommon DRG as zero utilization. → `query_substrate` (year+ccn+drg) - Medicare standardized per-capita spend for . → `query_substrate` (year+geo level+state+age) - Compare actual spending across states after asking for price-standardized spend. → `query_substrate` (two states) - MA average A/B PMPM for / . → `query_substrate` (year+contract+plan) - MA Part C risk score for /. → `query_substrate` (year+contract+plan) - MA average rebate PMPM. → `query_substrate` (year+contract+plan) - Sum plan rebate PMPMs to get carrier rebate dollars. → `query_substrate` (carrier+year) - Join plan payment to another file on contract ID alone. → `query_substrate` (contract only) - MA MOOP for / . → `get_pbp_benefit` (contract+plan+year+category) - Dental cap for plan /. → `get_pbp_benefit` (plan+year+dental) - OTC allowance for plan /. → `get_pbp_benefit` (plan+year+OTC) - Query raw PBP section tables for a benefit amount. → `query_substrate` (BAKED source) - Interpret a null PBP benefit amount as $0. → `get_pbp_benefit` (null fixture) - County MA benchmark for at . → `query_substrate` (year+SSA county+tier) - Average all three quality-bonus benchmark columns. → `query_substrate` (county+year) - Marketplace filed individual premium for age . → `query_substrate` (year+plan+rating area+age+tobacco) - Marketplace plan effectuated enrollment. → `query_substrate` (year+platform+issuer+plan+measure) - Sum county and state-total Marketplace rows together. → `query_substrate` (issuer+year) - Filter Marketplace issuer enrollment with is_current=true. → `query_substrate` (invalid current policy) - Hospital overall CCR for FY . → `query_substrate` (ccn+FY/latest report) - Hospital department CCR for and cost center . → `query_substrate` (ccn+FY+line) - NPPES primary taxonomy for . → `query_substrate` (npi+current) - HRRP excess readmission ratio. → `query_substrate` (FY+ccn+measure) - Nursing-home overall five-star. → `query_substrate` (ccn+snapshot) - NADAC unit acquisition cost for at . → `query_substrate` (ndc+week+price type) - Trend generic NADAC seamlessly across Dec 2024 methodology break. → `query_substrate` (ndc+range) - Part B ASP payment limit for . → `medicare_allowed` (code+quarter) - Query the IRA reimbursement fact raw. → `query_substrate` (BAKED source) - Formulary tier change between and . → `formulary_churn` (q1+q2+plan/formulary) - Scan Part D SPUF without quarter. → `query_substrate` (no quarter) - Medicaid SDUD reimbursement for //. → `query_substrate` (state+ndc+year+quarter+utilization type) - Call SDUD reimbursed amount “net after rebates.” → `query_substrate` (state+NDC+quarter) - State Medicaid/CHIP enrollment . → `query_substrate` (state+period+latest revision) - Treat 201309 as an ordinary monthly point. → `query_substrate` (201309) - What tools do you have for analyzing PBM spread or auditing a plan sponsor? I'm not sure which one to use. → `find_data_sources` ({"query": "*"}) - Which of your tools should I use to reference-base-price an employer's hospital bills? Just point me to the right tool. → `find_data_sources` ({"query": "*"}) - Where is CPT 73721 (MRI lower-extremity joint without contrast) cheapest across hospitals in California? → `compare_hospital_rates` ({"billing_code": "73721", "state": "CA"}) # Changelog (the admission record) - 2026-11-09: replay_commercial_price_proof withdrawn (replacement compare_hospital_rates) - 2026-11-09: prove_commercial_price withdrawn (replacement compare_hospital_rates) - 2026-11-09: plan_commercial_price_proof withdrawn (replacement compare_hospital_rates) - 2026-11-09: lookup_rates_for_tin withdrawn (replacement compare_hospital_rates) - 2026-11-09: lookup_rates_for_npi withdrawn (replacement compare_hospital_rates) - 2026-11-09: get_negotiated_rate withdrawn (replacement compare_hospital_rates) - 2026-11-06: get_network_groups admitted (Groups count Medicare-enrolled clinicians only (reassignment); contract level, so a contract's HMO and PPO networks read as one; ACOs are not rolled up yet (CMS publishes ACO participants by legal name only).) - 2026-11-05: get_plan_hospitals admitted (Most directories list clinicians, not facilities: strong evidence exists for 113,461 plan-hospital pairs in 2027, the rest is inferred from CMS's clinician affiliation (2026-05-29); absence is never 'out of network'.) - 2026-11-05: get_network_system_change admitted (406 contracts compare like for like; contracts whose 2027 list is a stand-in or whose 2026 list came only through the API carry-back have no rows; 91 exit and 76 join signals, of which two are publicly confirmed; a signal is a directory signal to verify, never proof.) - 2026-11-05: get_network_breadth admitted (Breadth is a share of what MA plans list in the county, not of every practising clinician; name-matched lists under-count (matched_share on the row); 2% of listings carry a ZIP with no county; coverage follows the directory build (stage 25: 99.17% of 2026 members, 96.42% of 2027 from 2027 sources).) - 2026-11-02: is_provider_in_plan admitted ("Not listed" is a claim about the covered contracts only (99.1% / 96.1% of members); name-only listings (grade C/D, about 11.3M rows) carry no NPI and cannot answer for the provider they name.) - 2026-11-02: get_plan_network admitted (Coverage is 99.1% of 2026 MA members and 96.1% of 2027 members from 2027 sources (stage 21): the open-gap contracts (HCSC, Geisinger 2027, Highmark Wholecare, Elderplan, Mercy Care, Elevate, CarePartners CT, six thin Elevance contracts) answer no_coverage; 42 contracts' 2027 rows are their 2026 directory through the crosswalk and are labelled; API-served listings carry no printed name or location.) - 2026-11-02: get_network_change admitted (A unit whose 2026 directory came through the API only as a thin snapshot reads a very high joined rate (H5959: 92 members in 2026, 50,505 in 2027, joined 3,301 in the shared ZIP3 areas); the answer flags any joined rate over 20% as unverified, and a directory signal is never evidence that a contract ended.) - 2026-11-02: get_medicaid_rate admitted (Coverage is state by state: 47 states hold rows and 147 of 255 state x service-line cells are served (measured 2026-11-02), so lookup answers not-found for an unbuilt state or line and says so; compare leaves out every state whose key carries more than one rate in the edition (about 11,800 ambiguous keys, NY, IA, NC most) and names how many, and converts time units to an hour but never another basis.) - 2026-11-01: get_medicaid_mco_enrollment admitted (The guard is a label rule, not the publisher's own classification: a sole plan in a program is flagged equals_publisher_total_suspected (Florida: 11 rows), a total whose label carries no total word is not caught, and a total filed under its own program (Arizona's two combined-display rows, 1,404,364 and 75,580) is set aside but not paired with its plans, so Arizona's cells read source_total_without_plan_rows. Washington's 1,168 of 1,170 checked cells fall short of their total because masked 0s hide 1 to 10 members each. The ledger view version that classifies each publisher's totals is the Data Tracker's pending fix (measured 2026-10-05).) - 2026-10-29: resolve_entity admitted (Layer one only: facilities, doctors, networks and PBMs are later layers (resolve_provider for a CCN or NPI). Exact matches first; a contains-match is offered only as a candidate. Walked in-process from this Mac before the bridge rolls; the release checks are its first live grade.) - 2026-10-29: describe_entity admitted (A date written inside a sentence (an event label, an evidence field note) is removed by the customer scrubber; link dates are served bare with their reading beside them (from_is, to_is), so ownership windows survive. The date the caller asks for (on) is not echoed in answer.scope.filters on the customer wire (the door drops a bare date from the scope for every tool). scope=group on the largest parents reads many rows and is the slowest call.) - 2026-10-26: get_volatility_index admitted (Every year is plans as filed against the prior September's members (what members face, not outcomes); the benefit part is a floor (OTC and giveback not counted) and starts in 2021. Walked in-process against the live table from this Mac before the bridge rolls; the release checks are its first live grade.) - 2026-10-18: get_service_line_prices admitted (Hospital geography is the state partition, a CCN list or CMS's wage-index CBSA (metro divisions, e.g. Miami 33124), not city. Facility types are not separated (a long-term acute hospital can rank beside an acute one). Walked in-process from this Mac before the bridge rolls; the release checks are its first live grade.) - 2026-10-18: get_contract_profile admitted (The record carries the 40 largest plans and 40 largest counties of a contract (plan_count and county_count are the full counts), and a segmented plan's benefits are one segment's filing. Walked in-process against the live build from this Mac before the bridge rolls; the release checks are its first live grade.) - 2026-10-13: get_star_risk admitted (Walked offline over rows recorded live from the _v4 tables, not from the live customer seat (the bridge carrying the tool is not rolled at admission); the post-deploy walk is its first live grade. The Overall chance to drop and below 4.0 near the line are the locked blend's, tested held out 2024-2027; its odds sit somewhat too close to average (slope 1.33; 5.0 contracts under-predicted, 46% vs 65%), disclosed in every answer; Upside and Down / Same / Up are tested; the simulation's own odds are shown for comparison only; Part C / D are simulated shares; the expected star is simulated and runs low; the answer says each.) - 2026-10-12: get_star_benchmark admitted (Walked in-process against the live tables from this Mac, not from the live customer seat; CAHPS cut points are approximate and family averages use each year's own measure set (the count is in every row).) - 2026-10-09: get_stars_rollup admitted (Walked through the tool in-process against the live tables from this Mac, not from the live customer seat, because the bridge carrying it is not rolled at admission; the post-deploy walk is its first live grade.) - 2026-10-09: get_star_decomposition admitted (Walked in-process against the live tables from this Mac, not from the live customer seat; survey (CAHPS) cut point distances are approximate, and the answer says so.) - 2026-10-09: get_quality_bonus admitted (Walked in-process against the live table from this Mac, not from the live customer seat; PY2025-2028 are modeled and labeled, and very small and new-parent contracts are a labeled residual.) - 2026-10-09: get_plan_value admitted (Walked through dispatch in-process against the live views from this Mac, not from the live customer seat; the rank mode reads a shelf table that is not yet a catalog card, so a seat cannot reproduce it by raw SQL.) - 2026-10-09: get_benefit_change admitted (Walked through dispatch in-process against the live tables from this Mac, not from the live customer seat, because the bridge carrying it is not rolled at admission; the post-deploy walk is its first live grade.) - 2026-10-06: get_contract_service_area admitted (Walked through dispatch in-process against the live table from this Mac, not from the live customer seat, because the bridge carrying it is not rolled at admission; the nightly walk is its first live grade. Contracts serving the whole country are left out of a state or county filter unless the caller asks for national service areas.) - 2026-10-01: state_expert admitted - 2026-10-01: get_stars_cutpoints admitted - 2026-10-01: get_stars admitted - 2026-10-01: get_landscape admitted (Rows are one per plan segment; the Plan and Premium family (the Part C / Part D premium split before CY2025) is stored one year early for CY2017 to 2023 (the Tracker's LAND-3, a loader fix) and is not read by this tool, so part_c_premium and part_d_premium are null before 2025.) - 2026-10-01: get_enrollment admitted - 2026-10-01: get_county_view admitted (benefit_change is STATE grain under the code COUNTY_GRAIN_NOT_HELD on every county (the county-grain benefits table is not published); measured 2026-09-30 on Cook, Maricopa and DuPage, status partial with sections_unavailable naming benefit_change_county on each.) - 2026-09-30: get_landscape_exits admitted (The county grain (1.1.0) was walked through finalize_answer against the live table from this Mac, not from the live customer seat, because the bridge carrying it was not rolled at admission; the nightly walk is its first live grade. County names match CMS spelling only ('Cook', 'Maricopa'; 'St. Louis' as CMS writes it), and a misspelling is an honest not-found, not a suggestion.) - 2026-09-30: get_landscape_benefit_change admitted (1.1.0 (county grain) and 1.2.0 (same-members change) were walked through the door in-process against the live tables from this Mac, not from the live customer seat (bridge not rolled at admission); the nightly walk is their first live grade and the fixture's routed case reads red on the live surface until the bridge serves 1.2.0. Y+1 stars stay empty for 2026 to 2027 until CMS assigns them, at every grain.) - 2026-09-30: find_views admitted (Walked in-process through finalize_answer on this Mac (the three fixtures and the three free-trial starter questions), not from the live customer seat: the bridge that serves it and migration 129 that entitles it were not rolled at admission, so the nightly walk is the first live grade and the seat answers entitlement_denied until the migration is applied.) - 2026-09-19: submit_query admitted - 2026-09-19: resolve_provider admitted - 2026-09-19: replay_hospital_price admitted - 2026-09-19: recall_spend_window admitted (the tool's own DESCRIPTION still quotes a Medicaid-leg reference figure ($63,724,880.54) that the live answer does not reconcile to ($30,181,579.43 — the difference is a national roll-up double count fixed in #1801), with no restatement caveat. The live number is the right one; the description is the stale one) - 2026-09-19: query_substrate admitted - 2026-09-19: query admitted - 2026-09-19: prove_ma_enrollment_trend admitted (Its own demo call (Humana Inc., 2024, FL) took 41-46s on the first machine walk (run 35516039355, 2026-09-20) — past the 40s synchronous dispatch budget — so a customer asking the documented question gets a SCAN_LIMIT_EXCEEDED refusal rather than the number, not on every call but whenever the estate is cold. Since 2026-09-20 that refusal is a real envelope with a working route (the tool is now in ASYNC_HEAVY_TOOLS, so it names submit_query with the same arguments); before that it was a bare error object with no status at all. Making the sync path finish is the actual fix and it is not done.) - 2026-09-19: prove_hospital_price admitted - 2026-09-19: poll_query admitted - 2026-09-19: plan_hospital_price admitted - 2026-09-19: pbm_compensation_rollup admitted - 2026-09-19: medicare_allowed admitted (The `medicare_year` pin is still not on the SERVED inputSchema. Measured from the customer seat 2026-09-20: tools/list publishes {billing_code, care_class, setting, limit}, so the bridge drops `medicare_year` and the tool answers for its default year rather than the pinned one — silently, because an argument that never reaches the door cannot be refused by it. The handler validates the pin correctly; the published schema is what is stale, which makes this a catalog- publish defect and not a tool one.) - 2026-09-19: how_to_join admitted - 2026-09-19: get_pbp_benefit admitted - 2026-09-19: get_market_share admitted - 2026-09-19: get_hospital_quality admitted - 2026-09-19: get_hos admitted - 2026-09-19: get_exchange_plan_profile admitted - 2026-09-19: formulary_churn admitted - 2026-09-19: find_data_sources admitted - 2026-09-19: fetch_query admitted - 2026-09-19: excluded_prescriber_payment_screen admitted - 2026-09-19: describe_schema admitted - 2026-09-19: describe_data_source admitted - 2026-09-19: compare_hospital_rates admitted - 2026-09-19: certified_measure admitted - 2026-09-19: asp_pricing_lookup admitted (The reference call (J0129) took 31s and then returned 502 from the edge on the first machine walk (run 35516039355, 2026-09-20). 31s is INSIDE the 40s synchronous dispatch budget, so the door never timed out and has nothing to restate: the answer was built and the connection was dropped above it. The tool is not in ASYNC_HEAVY_TOOLS, so a caller who hits this has no background lane either. Owner: the serving lane (the bridge deadline / ALB idle timeout), not the door.) - 2026-09-18: search_tools withdrawn (replacement find_data_sources) - 2026-09-18: ira_mfp_exposure withdrawn (replacement find_data_sources) - 2026-09-18: ira_drug_label_risk_screen withdrawn (replacement find_data_sources) - 2026-09-18: get_drug_source_inventory withdrawn (replacement find_data_sources) - 2026-09-18: coverage_status withdrawn (replacement state_expert)