# Independent questionnaire contract: household connectivity Version 1.0. Adults 18+ involved in choosing or managing a household fixed broadband connection. Mobile-only households are outside the universe. Four-week reliability and three-month support measures use different, stated reference periods. Intended 10–12-minute median is an untested planning estimate. | No. | Measurement / QSS ID | ODIN | Response contract | |---|---|---:|---| | 1 | Participation `s_consent` | 5 | Yes=1/No=2; No ends before age | | 2 | Age `s_age` | 10 | Integer 0–120; below 18 ends immediately; 121 invalid | | 3 | Service decision role `s_decision_maker` | 20 | Sole/shared/not involved; last screens out | | 4 | Fixed broadband `s_has_broadband` | 30 | Fixed/mobile only/no home internet; latter two screen out | | 5 | Primary fixed provider `q_primary_isp` | 40 | Invented codes 1–5; Other=98 with text | | 6 | Provider tenure `q_tenure` | 50 | Less than 1 year/1 to less than 3/3 to less than 5/5+ years | | 7 | Connection technology `q_connection_type` | 60 | Fibre to premises/cabinet/cable/home wireless/copper; Don't know=99 | | 8 | Download package tier `q_speed_tier` | 70 | Disjoint under 50, 50–99, 100–299, 300–999, 1000+ Mbps; Don't know=99 | | 9 | Cost estimate availability `q_can_estimate_spend` | 75 | Can estimate=1/Don't know or cannot separate bundle=2/Prefer not=3; governs only amount | | 10 | Monthly fixed broadband cost `q_monthly_spend` | 80 | Only when availability=1; whole £0–250; zero means free; excludes TV/mobile/device add-ons; otherwise absent | | 11 | Bundle add-ons `q_bundle_services` | 90 | Multi phone=1/TV=2/mobile=3; exclusive no add-ons=99 | | 12 | Mobile provider relationship `q_same_mobile_provider` | 100 | Same=1/different=2/no personal mobile=3 | | 13 | Four-week interruptions/slowdowns `q_outage_frequency` | 110 | Never/1–2/3–5/6–10/11+ incidents; not six-month recall | | 14 | Three-month support contact `q_experienced_issue` | 120 | Yes/No; governs the next three items | | 15 | Most recent issue contact channel `q_support_channel` | 130 | Telephone/chat/app/store/Other=98 with text; contact only | | 16 | Most recent support satisfaction `q_support_satisfaction` | 140 | 1 Very dissatisfied…5 Very satisfied; contact only | | 17 | Most recent issue resolution `q_issue_resolution` | 150 | Same day/next 1–3 days/4–6 days/7+ days/unresolved; contact only | | 18 | Speed consistency rating `q_rate_speed` | 160 | 1 Very poor…5 Excellent; Cannot rate=99 | | 19 | Connection reliability rating `q_rate_reliability` | 161 | Same five-point quality scale plus Cannot rate=99 | | 20 | Value rating `q_rate_value` | 162 | Same quality scale plus Cannot rate=99; separate from monthly cost | | 21 | Billing rating `q_rate_billing` | 163 | Same quality scale plus Cannot rate=99 | | 22 | Router coverage rating `q_rate_equipment` | 164 | Same quality scale plus Cannot rate=99; household experience, not technical test | | 23 | Contract status `q_contract_status` | 170 | More than three months left/renewal within three/out of contract/Don't know=99 | | 24 | Twelve-month switching intent `q_switch_intent` | 180 | 1 Definitely will not…5 Definitely will | | 25 | Hypothetical switching triggers `q_switch_triggers` | 190 | Multi price/reliability/speed/support/moving; exclusive would not consider=99 | | 26 | Alternative provider consideration `q_considered_competitors` | 200 | Multi invented providers excluding current named provider; Other=98 text and exclusive None=99 | | 27 | Housing tenure `d_tenure` | 210 | Own/private rent/social rent | | 28 | Property type `d_property_type` | 220 | Detached/semi/terrace/apartment | | 29 | Settlement `d_settlement` | 230 | Five broad types; no actual location IDs | | 30 | Employment `d_employment` | 240 | Six general categories | Provider codes: Doventra Net=1, Pellorin Link=2, Uvellan Fibre=3, Sarnove Connect=4, Kelvori Home=5. All are fictional. The current-provider list keeps its declared order. Alternative consideration is a carried complement: the current named provider is excluded; Other and None remain available. Do not interpret a respondent naming Other twice as two distinct canonical providers without later coding. Behavioral contracts: 1. Consent refusal stops before screening. Underage is a valid screenout, not a validation error. Role nonparticipants and mobile-only households receive an ineligible ending without service evaluation. 2. No support contact skips contact channel, satisfaction and resolution together. Support answers describe one most recent issue rather than unrelated historical contacts. Other support channel retains the supplied verbatim. 3. Monthly cost 251 is invalid; rejection commits no state. Unknown, inseparable bundled costs and refused costs leave the amount absent; a literal zero means free. Remaining support, ratings and switching questions still apply. A bundle response mixing TV and no-add-ons is rejected before any accepted change. Corrected answers allow continuation. 4. Both contact and no-contact respondents receive the five service ratings and hypothetical switching measures. All respondents may name triggers even when current intention is low: triggers measure conditions for a hypothetical switch, not current active search. Current provider is excluded from alternative-provider choices. 5. The fixed-reference-period source and stable answer codes are retained through replay; local completion does not mean storage on a fieldwork server. Ten declared fixtures cover full support/switching, no support contact, Other provider, participation refusal, underage, mobile-only screening, cannot-rate answers, inseparable bundled cost, declined cost and free broadband. Both engines run the same collected-question contracts and actual submissions. No real account, address, IP, phone or contact data is used. The service ratings are study-specific, not a validated index. Technical terms, cost-estimate availability and five-point quality ratings need cognitive testing for respondents who cannot know their package or cannot evaluate billing; such uncertainty must inform a revised instrument rather than being interpreted as low quality. This demo's explicit Don't know categories cover technology, speed, cost availability and contract status; service ratings allow Cannot rate. Host quotas, invitations, privacy notice and permission authority are external. Browser/mobile layout and real fieldwork, legacy DLL acceptance and fixed-width export are not established by these local checks. QSS alternative-provider choice uses `isp_list.except(answers.q_primary_isp.ids())` with explicit Other/None fallbacks. The provider question always precedes this selector; unavailable selector input refuses explicitly. The current Other choice does not suppress the unlisted-alternative fallback.