Healthcare.gov Plan Scraper — ACA Marketplace Quotes & Benefits
Pricing
from $3.50 / 1,000 health plan scrapeds
Healthcare.gov Plan Scraper — ACA Marketplace Quotes & Benefits
Extract Healthcare.gov ACA health insurance marketplace plans, monthly premiums, estimated subsidies, deductibles, out-of-pocket maximums, and benefit cost-sharings.
Pricing
from $3.50 / 1,000 health plan scrapeds
Rating
0.0
(0)
Developer
Muhammad Afzal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 days ago
Last modified
Categories
Share
Free-plan limit: Apify free-plan users receive at most 5 delivered records per run. Paid users may use the Actor’s configured result limit.
Extract ACA health insurance marketplace plans, monthly premiums, estimated subsidies, deductibles, out-of-pocket maximums, and benefit cost-sharings from Healthcare.gov.
The scraper queries Healthcare.gov's official Qualified Health Plan (QHP) marketplace endpoints for Federally Facilitated Marketplace (FFM) states. It retrieves both major medical and dental plans, complete with actuarial metal tiers, carrier details, and Summary of Benefits and Coverage (SBC) documents.
Key Features
- ZIP Code & County Search: Search across all FFM states (such as Florida, Texas, North Carolina, Georgia, Ohio, etc.) by 5-digit ZIP code with automatic county FIPS resolution.
- Subsidy & Demographic Calculation: Calculate Advance Premium Tax Credit (APTC) subsidies and net monthly premiums based on annual household income, applicant age, gender, and tobacco usage.
- Granular Filters: Filter by metal level (Catastrophic, Bronze, Expanded Bronze, Silver, Gold, Platinum), network type (HMO, PPO, EPO, POS), carrier name, and HSA eligibility.
- Direct Plan ID Lookup: Retrieve detailed plan sheets, exclusions, and SBC scenarios (maternity delivery, diabetes management, fracture care) using standard 14-digit QHP IDs.
- Standalone Dental Plans: Query pediatric and adult individual dental insurance plans.
- County Lookup Mode: Discover valid county names and FIPS codes for any US ZIP code.
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | String | "search" | Extraction mode: "search" (by ZIP), "plan_ids" (direct QHP ID lookup), or "counties" (county lookup). |
zipCode | String | "33101" | 5-digit US ZIP code to search. Must be located in a Healthcare.gov FFM state. |
countyFips | String | "" | Optional 5-digit county FIPS code (e.g. "12086"). If blank, automatically resolves the primary county. |
planIds | Array | [] | Specific 14-digit QHP plan IDs to look up when mode is "plan_ids" (e.g. ["21525FL0020004"]). |
year | Integer | 2026 | Marketplace coverage year (2024–2030). |
division | String | "HealthCare" | Plan category: "HealthCare" for major medical or "Dental" for dental plans. |
income | Number | 35000 | Annual household income in USD for APTC tax credit subsidies. Set -1 for unsubsidized full-price quotes. |
age | Integer | 30 | Applicant age (0–120) for age-rated premium calculation. |
gender | String | "Female" | Applicant gender ("Female" or "Male"). |
usesTobacco | Boolean | false | Whether the applicant uses tobacco products. |
aptcEligible | Boolean | true | Whether the applicant is eligible for premium tax credits. |
metalLevels | Array | [] | Optional metal tier filter (e.g. ["Bronze", "Silver", "Gold"]). |
planTypes | Array | [] | Optional plan type filter (e.g. ["HMO", "PPO", "EPO"]). |
issuers | Array | [] | Optional carrier name filter (e.g. ["Oscar", "Blue Cross", "Aetna"]). |
hsaEligibleOnly | Boolean | false | Filter to only Health Savings Account (HSA) eligible plans. |
sortBy | String | "premium" | Sort order: "premium", "deductible", or "oopc". |
sortOrder | String | "asc" | Sort direction: "asc" or "desc". |
maxItems | Integer | 20 | Maximum plans written to the dataset (1–500). |
fetchFullDetails | Boolean | false | When true in search mode, fetches individual SBC scenario details for each plan. |
Example Inputs
1. Default Medical Plan Search (Miami, FL)
{"mode": "search","zipCode": "33101","year": 2026,"division": "HealthCare","income": 35000,"age": 30,"maxItems": 20}
2. Silver & Gold HMO Plans with HSA Compatibility (Dallas, TX)
{"mode": "search","zipCode": "75001","year": 2026,"metalLevels": ["Silver", "Gold"],"planTypes": ["HMO"],"hsaEligibleOnly": true,"income": 45000,"maxItems": 25}
3. Direct QHP Plan ID Lookup
{"mode": "plan_ids","planIds": ["21525FL0020004"],"year": 2026}
4. Standalone Dental Plans Search
{"mode": "search","zipCode": "28202","division": "Dental","maxItems": 15}
Output Data Structure
Each record stored in the dataset represents a validated health insurance plan with normalized fields:
| Field | Type | Description |
|---|---|---|
recordType | String | "plan" for health plan records, "county" for county lookup records. |
planId | String | Unique 14-digit Qualified Health Plan (QHP) identifier (e.g. "21525FL0020004"). |
name | String | Official marketing name of the health plan. |
state | String | 2-letter US state abbreviation (e.g. "FL", "TX"). |
year | Integer | Marketplace benefit year (e.g. 2026). |
market | String | Market segment ("Individual" or "SHOP"). |
division | String | "HealthCare" or "Dental". |
metalLevel | String | Actuarial tier: "Catastrophic", "Bronze", "Expanded Bronze", "Silver", "Gold", or "Platinum". |
planType | String | Plan network type: "HMO", "PPO", "EPO", or "POS". |
designType | String / Null | Plan variant or design standard. |
isStandardizedPlan | Boolean | Whether the plan is a CMS standardized plan option. |
hsaEligible | Boolean | Health Savings Account compatibility. |
specialistReferralRequired | Boolean | Whether visiting a specialist requires a PCP referral. |
hasNationalNetwork | Boolean | Whether the carrier provides a nationwide provider network. |
premium | Number | Unsubsidized gross monthly premium in USD. |
premiumWithCredit | Number | Net monthly premium after estimated APTC subsidy in USD. |
ehbPremium | Number | Essential Health Benefits portion of premium. |
aptcEligiblePremium | Number | Portion of premium eligible for tax credit calculation. |
deductibleIndividual | Number / Null | Individual in-network medical & drug deductible. |
deductibleFamily | Number / Null | Family in-network medical & drug deductible. |
moopIndividual | Number / Null | Individual maximum out-of-pocket spending limit. |
moopFamily | Number / Null | Family maximum out-of-pocket spending limit. |
qualityRating | Number / Null | CMS Quality Star Rating (1–5 stars). |
issuer | Object | Insurance company info (carrier ID, name, state, website URL, phone). |
benefits | Array | Covered benefits with in-network copays and coinsurance rates. |
diseaseManagementPrograms | Array | Offered disease management programs (e.g. Asthma, Diabetes). |
brochureUrl | String / Null | Link to official plan brochure. |
summaryOfBenefitsUrl | String / Null | Link to official Summary of Benefits and Coverage (SBC) PDF. |
formularyUrl | String / Null | Link to carrier's covered drug formulary. |
providerNetworkUrl | String / Null | Link to carrier doctor and hospital directory. |
sbcScenarios | Object / Null | Standard SBC scenarios (having a baby, diabetes care, simple fracture). |
searchLocation | Object | ZIP code, county name, county FIPS, and state searched. |
scrapedAt | String | ISO 8601 timestamp of extraction. |
Pricing (Pay-Per-Event)
This Actor uses transparent Pay-per-event (PPE) pricing. Platform usage is included in the event prices; no separate per-run platform-usage fee is passed to users.
| Event | Tier | Price (USD) | When Charged |
|---|---|---|---|
apify-actor-start | FREE / BRONZE / SILVER / GOLD | $0.005 | Synthetic event charged once when the Actor run initializes. |
plan-scraped | FREE | $0.0040 | One charge for each validated health plan record written to the dataset. |
plan-scraped | BRONZE (2.5% discount) | $0.0039 | Volume tier discount. |
plan-scraped | SILVER (5.0% discount) | $0.0038 | Volume tier discount. |
plan-scraped | GOLD (20.0% discount) | $0.0032 | Volume tier discount. |
Representative Run Costs
- Quick Plan Comparison (10 plans): $0.005 (start) + (10 × $0.004) = $0.045
- Comprehensive Market Survey (50 plans): $0.005 (start) + (50 × $0.004) = $0.205
- Multi-County Extraction (100 plans): $0.005 (start) + (100 × $0.004) = $0.405
State Coverage Notice
Healthcare.gov provides marketplace plan data for states utilizing the Federally Facilitated Marketplace (FFM) and State-Based Exchanges on the Federal Platform (SBM-FP), covering over 30 US states (including FL, TX, NC, SC, GA, OH, MI, IL, IN, MO, TN, AL, AZ, WI, VA, OK, UT, and others).
States operating fully autonomous state exchanges (such as California via Covered California, New York via NY State of Health, Massachusetts via Health Connector, and Washington via Healthplanfinder) do not list plans on Healthcare.gov. Querying ZIP codes in those states will return an informative notice without charging for plan results.
Run with Apify API
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('muhammadafzal/healthcare-gov-plan-scraper').call({mode: 'search',zipCode: '33101',year: 2026,division: 'HealthCare',income: 35000,age: 30,maxItems: 20});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Retrieved ${items.length} health plans`);console.log(items[0]);
Responsible Use & Compliance
This Actor extracts public Qualified Health Plan data published by the Centers for Medicare & Medicaid Services (CMS) on Healthcare.gov for research, market intelligence, rate comparison, and consumer decision support.
- It does not access private health information (PHI), personal records, or enrollment credentials.
- Premium quotes and subsidies are estimates based on standard CMS formulas and do not constitute official eligibility determinations or insurance binders.