Methodology · updated November 2026
How CostKits compares hospital prices
This page explains how the numbers in the Hospital Price Variability Explorer, the Cash vs. Insurance Explorer, the Hospital Price Atlas, the Hospital Price Transparency Scorecard, Ask the Data and the free Hospital Price Spread Report are built, so you can check our work and know what they can and cannot tell you. Questions or corrections: hello@costkits.com.
Where the data comes from
Federal rules require each hospital to post a machine-readable file of its prices: gross charges, a discounted cash price, and the rates negotiated with each insurer. CostKits collects those files every month, reads them, and matches each price to a standard procedure code (a CPT or HCPCS code). The figures on the explorer come from the October 2026 files, 4,823 hospital files in total.
What each price means
| Term | Definition |
|---|---|
| Cash price | The discounted cash price the hospital lists for the code. Where a hospital lists several, we use the median of its own rows. |
| Insured (commercial) price | The median of the rates the hospital lists for commercial insurers for that code. Medicare Advantage, Medicaid, TRICARE and workers' compensation rates are left out. A listed insurer rate is not necessarily your plan's rate. |
| Gross charge | The hospital's list price. We read it but do not publish it, because almost nobody pays it. |
| Outpatient / inpatient | Outpatient includes rows the hospital labels as outpatient, as both, or does not label. Inpatient is shown separately because the service differs. |
How one hospital becomes one point
- Each hospital counts once per code, price type and setting. Its value is the median of its own published rows, so a hospital that lists 40 insurer rates does not outweigh one that lists 3.
- Each code is compared on its own. We never average different codes together. When the tool shows "all codes in a procedure", each code gets its own bar.
- If a hospital published the same file more than once, or several files with the same name, state, code, setting and value, they collapse to one point.
What we remove
- Prices under $5. These are almost always placeholders (for example, $0 or $1).
- Implausibly low values. Any price under one-tenth of the national median for the same code and price type is dropped. In October this removed 2.1% of data points. A real price that low is rare; a placeholder or a per-unit rate is common.
- Hospitals we cannot identify. Price files and our hospital list name facilities differently. We match them by normalized file name (98% of 4,823 files matched). A name shared by several files, or no match, is left out rather than guessed.
How many hospitals we need
| Hospitals with a price | What the tool shows |
|---|---|
| 0 to 2 | No comparison. The tool says so. |
| 3 to 9 | Each hospital as a dot, with the lowest, median and highest price. No percentiles, because they are not reliable at this size. Marked "small sample". |
| 10 or more | The distribution, with the 10th, 50th and 90th percentiles and the spread. |
The headline numbers in titles and the free report use national figures with at least 10 hospitals. The report's state tables only include states with at least 25 hospitals for the service.
Percentiles and "spread"
The shaded band on the chart is the middle 80% of hospitals, from the 10th to the 90th percentile. The spread is the 90th-percentile price divided by the 10th-percentile price. We use the middle 80% instead of the lowest and highest hospital so a few extreme values do not set the headline. Example: for a brain MRI without contrast (CPT 70551), the middle 80% of 3,437 hospitals list cash prices from $566 to $5,481, a 9.7x spread.
What these prices are not
- Not what you will pay. Your cost depends on your plan, deductible, coinsurance and network.
- Not necessarily the whole bill. A facility price may exclude separate bills, such as a radiologist's reading or anesthesia. We do not assume they are included.
- Not a quality measure. A lower price says nothing about outcomes or convenience.
- Partly a reporting difference. Some of the spread is real, and some is how hospitals choose to report. We cannot tell the two apart from the files.
- Plain-language names are ours. We write short names for codes. They are simplified, and codes we are less sure of are marked on the page. Check the exact code with your provider.
How the Transparency Scorecard counts
For each hospital the Scorecard counts how many of the 64 common procedures have at least one usable price after the cleaning above: one count for cash prices and one for commercial insurer rates. A procedure counts when any of its CPT codes has a price. It is a count of what appears in our data, not a legal compliance rating. A hospital that does not offer a procedure, or whose file lists it under a different code or a bundle, shows it as not found. Hospitals can request a correction at providers@costkits.com.
Get the data files
The cleaned dataset behind these tools is available as monthly files. See hospital price data files.
Corrections and updates
We refresh the data monthly. If a price looks wrong, email hello@costkits.com (hospitals: providers@costkits.com) with the hospital and the code and we will check it against the source file. Charts and figures may be quoted with a link to the explorer.