# CMS 2027 PBP selected benefit summaries

Checked October 2, 2026. These files enrich the 2027 county plan lookup with selected medical costs, initial-coverage retail drug tiers and supplemental benefit availability. The county counts and headline premiums remain the pinned September landscape comparison.

## Source and join

- Official archive: https://www.cms.gov/files/zip/pbp-benefits-2027.zip
- Archive SHA-256: `6d8430e2ecb51acf3cc8547f12dd73506aa73f0dccf034cc3c3393868576ff47`
- Archive contains 71 tab-delimited data tables, a data dictionary and SAS layouts. Section A has 7,973 unique contract/plan/segment records.
- TXT files are decoded as Windows-1252; CMS's dictionary supplies the codes and bitmap positions.
- Exactly 5,814 distinct plans from the lookup's 2027 landscape data (50 states and DC, excluding territories) join to Section A by contract + three-digit plan + segment. No name matching or fallback to a different segment occurs.
- Sections must have the same PBP version as Section A. Duplicate identities and unexpected snapshot hashes stop generation.
- Assets are grouped into 648 contract files and loaded on demand when a plan is expanded. No 2027 benefits attach to the 2026 view.

## Medical fields

| Display | Source | Interpretation |
| --- | --- | --- |
| Primary care | `pbp_b7_health_prof`, `pbp_b7a_*` | Copay and coinsurance flags plus `*_amt_mc_min/max` and `*_pct_mc_min/max`; service deductible fields. |
| Specialist | `pbp_b7_health_prof`, `pbp_b7d_*` | Same range/flag handling, plus reported authorization and referral requirements. |
| Acute inpatient hospital | `pbp_b1a_inpat_hosp` | `*_mcs_amt_tN` is the stay copay; `*_mcs_amt_intI_tN` is per-day within explicit begin/end days. Interval code 1 means zero intervals, 2/3/4 mean one/two/three. Coinsurance uses the parallel percentage fields. |
| Hospital tiers | `pbp_b1a_cost_vary_tiers_yn`, `*_tier_num` | All reported hospital tiers are shown, not only the cheapest. Medicare-defined cost sharing is named rather than replaced with a guessed dollar value. Benefit period and discharge-day rules are retained. |
| Emergency / urgent care | `pbp_b4_emerg_urgent`, `pbp_b4a_*` / `pbp_b4b_*` | Preserve copay/coinsurance ranges and separately reported admission-waiver windows. ER and urgent-care waiver fields differ and are decoded separately. |
| Plan deductibles | `pbp_Section_D`, `pbp_d_ann_deduct_*`, `pbp_d_inn_deduct_*` | Identify applicability to the selected in-network Medicare service category, including separate Medicare-defined Part B deductibles. The ER/urgent `*_deduct_yn` field means cost sharing counts toward a plan deductible; it is not a service deductible amount. |

Base medical benefits are in-network where networks apply. Per-stay and per-day costs are not interchangeable. Cost ranges remain ranges; copay and coinsurance figures are not summed into a predicted bill. Blank or unreported values remain unknown, distinct from explicit zero. Original Medicare deductible and cost-sharing references are not filled with assumptions.

Lifetime reserve days, supplemental hospital days, out-of-network/POS benefits, optional medical riders, tiered provider exceptions outside the reported base ranges, SSBCI and uniform-flexibility modifications are not fully summarized. Confirm the actual facility, service and member eligibility against plan documents. Medicaid and Extra Help can change actual member costs.

## Supplemental benefits

Benefit type 2 means mandatory supplemental, displayed as **Included benefit**; 3 means **Optional add-on**; 4 means both. Included does not mean every service is free. Aggregated categories can include only some services; limits, service definitions, allowances and member eligibility must be checked.

- Preventive/diagnostic dental: `pbp_b16b_bendesc_{oe,dx,ods,pc,ft,ops}_amo`.
- Comprehensive dental: `pbp_b16c_bendesc_{rs,end,peri,prm,mxpr,impl,prf,omsg,orth,ags}_amo`.
- Routine eye exams: `pbp_b17a_bendesc_yn`, routine-service position 2 in `*_ehc`, `*_amo_rex`.
- Eyewear: `pbp_b17b_bendesc_yn`, type fields for contacts, glasses, lenses, frames and upgrades.
- Routine hearing exams: `pbp_b18a_bendesc_yn`, routine-service position 2 in `*_ehc`, `*_amo_rht`.
- Prescription hearing aids: `pbp_b18b_bendesc_yn` and type fields. This label does not assert OTC hearing-aid coverage.
- Fitness: `pbp_b14c_bendesc_ehc` contains service `14c4`; type field `*_amo_mhc`.
- OTC items and limited-duration meals: `pbp_b13b_bendesc_otc` / `pbp_b13c_bendesc_service`, with their type fields.
- Health-related transportation: `pbp_b10b_bendesc_yn`, `*_amo_pal` / `*_amo_al`.

An explicit negative coverage flag means **Not offered in this section**. Blank benefit types or absent records mean **Not listed**, not confirmed absence of coverage. These selected standard sections do not fully describe SSBCI or eligibility-based benefits.

## Drug tiers

- Use `pbp_mrx` and `pbp_mrx_tier`, with `mrx_tier_type_id=1` (initial coverage).
- `mrx_tier_label_list` is the individual tier name. `form_model_desc` describes the whole tier structure and is not a row label.
- `mrx_tier_rstd_*` is unsplit standard retail; `mrx_tier_rsstd_*` / `mrx_tier_rspfd_*` distinguish standard/preferred retail. Supply bitmap position 2 is one month. Actual 30-, 31- or 34-day supply values are preserved.
- Cost structure 1 = coinsurance; 2 = copay; 3 = greater of both; 4 = lesser of both. Missing costs remain unknown.
- `mrx_alt_no_ded_tier` positions correspond to tiers **7, 1, 2, 3, 4, 5, 6**. Deductible exemptions are not inferred from tier names.
- Separate preferred prices are not invented when absent. Non-tiered or Medicare-defined designs remain explicitly labeled.
- `pbp_mrx_p` contains post-out-of-pocket-limit fields and is not used for initial-coverage prices.
- Tier summaries do not establish drug formulary membership, negotiated pharmacy prices, mail-order costs, other supply lengths or actual member spending. Insulin, vaccines, subsidies and special programs can have different cost sharing.

## Regeneration and checks

```sh
python3 scripts/generate-cms-pbp-data.py --source-zip /path/to/pbp-benefits-2027.zip
npm run test:cms-pbp
npm test
npm run test:blog
npm run build
```

The generator and normalization module use only Python's standard library. The source archive and credentials are not included in the site repository. Benefits CSV downloads retain source date, plan identity and explanatory conditions and protect text cells from spreadsheet-formula execution.
