Baselight

Hospital-price-transparency

prices that are easy to compare

@kaggle.natesutton_hospitalpricetransparency

About this Dataset

Hospital-price-transparency

Source

GitHub

Hospital Price transparency

The Centers for Medicare and Medicaid Services recently required hospitals under 45 CFR ยง180.50 to publish a list of prices on their websites. They specifically instruct hospitals to make these lists...

  • As a comprehensive machine-readable file with all items and services.
  • In a display of shoppable services in a consumer-friendly format.

There is a lot of variation in adherence to these policies. Without strong guidance on formatting from CMS, it is no wonder hospitals are all over the map on formatting. Many hospitals have complied with the new rules but in ways that are not consumer friendly. 500 Megabytes of JSON data is not a strong start!

This repository cuts out pricing noise purposefully introduced by these hospital systems. You can easily search for a given CPT or HCPCS code and compare those prices across hospitals.

Supplied Data

If you don't have the proclivity to transform these data yourself with docker, there are CSV extracts available in ./volumes/data/extracts. They are broken down into four distinct groups.

  • gross: this is often the top line item that the hospital never actually charges
  • cash: this is the self-pay discounted price you would pay without insurance
  • max: this is the maximum negotiated rate by an insurance company in the hospital network.
  • min: this is the minimum negotiated rate by an insurance company in the hospital network

Ontology

We rely on the excellent work of the Athena vocabulary to define the ontology of healthcare procedures. This maps CPT and HCPCS codes into a common data model.

Coverage

Only North Carolina is covered right now because I happen to live there. Submit a PR if you have found data for other hospital systems.

Usage

Quickstart with docker-compose

docker-compose up

Run the flyway migrations

docker-compose run flyway

Run the ETL

docker-compose run etl

Interactive PSQL client

docker exec -it postgres psql -d postgres -U builder

What this is not

I sacrificed some scalabilty for the name of speed. There are some excellent examples how you could scrape your way through this to complete automation. I introduced a s manual step of downloading a file and naming it by the hospital ID. All other transformations are codified and reproducible in the container.

Contact

Submit an issue if you find anything inconsistent. Like all data products, we make assumptions and provide no warrantee.

Share link

Anyone who has the link will be able to view this.