# 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.
