Skip to main content

What is a hospital machine-readable file (MRF)?

By 8 min read

A plain-English primer on the hospital MRF — what 45 CFR §180.50 requires, the four CMS file formats, the code systems, and what the file omits.

A hospital machine-readable file — an MRF — is a single comprehensive list of every standard charge a hospital posts for every item and service it provides. It is published as a downloadable file on the hospital's own website, in CSV or JSON, refreshed at least once a year.

Every Medicare-participating hospital in the United States has been required to publish one since January 1, 2021, under the federal hospital price-transparency rule at 45 CFR §180.50. It is the rawest form of hospital price data available — the same file an insurer or analyst would pull, with no marketing copy and no aggregation in front of it.

What's inside an MRF

Each MRF must carry four required disclosures for every item or service, side by side in the same file:

  • · Gross charge — the chargemaster price, the hospital's own list price for the service. Almost no one pays it.
  • · Discounted cash price — what the hospital charges patients who pay out of pocket without insurance.
  • · Payer-specific negotiated rate — the dollar amount the hospital has agreed to accept from a specific insurer for a specific plan.
  • · De-identified minimum and maximum negotiated rates — the lowest and highest rates the hospital has agreed to across all payers, with the payer names stripped.

All four travel together, row by row, in the same file. CMS bundled them deliberately: a price comparison can pivot across the chargemaster, the cash price, and every contracted rate without joining anything else.

The four CMS file formats

CMS publishes a technical specification for the file format. There are four conformant variants — each hospital picks one — and our pipeline parses all four.

csv_tall

One row per (code, payer, plan, modifier) combination. The simplest flavor to parse: every column means the same thing in every row. Verbose — a single MRI knee row repeats for every payer the hospital reports — but predictable. The most common variant in our atlas.

csv_wide

One row per code, with each payer getting its own column (`aetna_rate`, `cigna_rate`, `bcbs_rate`). Compact for the hospital, sparse for everyone else: most rows have many empty cells, and the column schema varies hospital-to-hospital because the column names follow each hospital's payer roster.

json_v1

A flat array of standard-charge objects, superseded by the v2/v3 schema in 2024. Still in production at hospitals that haven't refreshed their pipeline. Structurally simple but missing the standardised methodology fields the newer schemas require.

json_v2 / json_v3

The current CMS v2 schema. Deeply nested: top-level hospital metadata, a `standard_charge_information` array, each entry containing a `standard_charges` array with payer-specific entries, methodology, and modifier-level overrides. Best for analysts; hardest to parse without the schema's JSON-Schema validator.

Format choice doesn't change what's disclosed — only how it's laid out. Our pipeline normalises all four into a single canonical schema before any aggregation runs (see the methodology page for the schema).

The code systems you'll see

An MRF refers to procedures by code, not by name. Five coding systems show up across the file:

  • · CPT — Current Procedural Terminology, the AMA-maintained codes for outpatient procedures. The bulk of MRF rows use a CPT code. Example: `73721` (MRI of the knee, without contrast).
  • · HCPCS — Healthcare Common Procedure Coding System, used for supplies, drugs, and items not in CPT. Example: `J3490` (unclassified injectable drug).
  • · MS-DRG — Medicare Severity Diagnosis-Related Group, used for inpatient stays. Each DRG bundles an entire hospitalization. Example: `470` (major joint replacement, no major complications).
  • · APC — Ambulatory Payment Classification, used for outpatient hospital services under Medicare's OPPS payment system. Example: `5072` (level-2 excision/biopsy).
  • · NDC — National Drug Code, for individual drug units. Example: `0173-0682-20` (a specific GlaxoSmithKline asthma inhaler).

A single procedure can appear under more than one code system in the same MRF. A real outpatient MRI knee visit, for instance, often shows up as both CPT `73721` (the imaging professional component) and an APC code (the facility outpatient component) — billed together but listed as two rows.

What an MRF doesn't tell you

The file is exhaustive about what was negotiated, but silent on several things that actually shape a patient's bill.

  • · What the patient will pay. The negotiated rate is what the hospital and insurer agree on; the patient bill comes off that, after deductible, copay, coinsurance, and clinical specifics that the file cannot know.
  • · Whether your insurance is in-network. A payer appearing in an MRF means the hospital has a posted rate for some plan from that payer. It does not equal active in-network status for any specific plan today — confirm coverage with your payer or the hospital before scheduling.
  • · Quality. Price and quality live in different datasets. The CMS Hospital Compare program publishes star ratings, readmissions, and patient-experience scores; we don't host that data, but a thoughtful comparison reads both.
  • · Bundled vs. unbundled charges. A hospital MRI knee row covers the facility component. Radiologist professional fees, anaesthesia for sedation, contrast medium, and post-procedure visits each have their own codes — and may be billed by other entities (the radiology group, the anaesthesia group) with their own MRFs.

Reading a real example

Here is a single row from the MRF that Boulder Community Health Foothills Hospital published most recently, for an MRI knee without contrast (CPT 73721):

  • · Code: CPT 73721
  • · Payer / plan: Aetna · commercial
  • · Setting: Outpatient
  • · Rate type: Negotiated
  • · Negotiated rate: $968.49
  • · Methodology: Case rate (a flat per-procedure amount, not a percentage of charges)
  • · Reported rate range across modifiers: $62.65 to $4,932.45
  • · Source: the hospital's published MRF

The same file shows the same CPT code at $5,085.00 gross and $2,542.50 cash. One code, three different prices, depending on who is paying. The negotiated number — what an Aetna commercial plan settles at — sits well below both the chargemaster sticker and the self-pay cash price.

Multiply that pattern by 33.9 million negotiated-rate rows across the 59 Colorado hospitals in our atlas, and the underlying disclosure starts to look like what it is: an enormous, structurally messy, internally inconsistent dataset that nobody reads casually. Across hospitals, the same MRI knee falls between $611 at the 25th percentile and $2,747 at the 75th — see the MRI knee procedure page for the full distribution.

Caveats and gotchas

MRFs are messy in ways the CMS spec doesn't promise:

  • · File size. A single MRF can be under a megabyte (small critical-access hospital, narrow chargemaster) or over ten gigabytes (large academic medical center reporting hundreds of payer-plan permutations).
  • · Format inconsistency. Even within one CMS-conformant flavor, hospitals vary in how they encode null rates, plan names, and modifier fields. Two CSVs from different hospitals are rarely byte-compatible.
  • · Broken links. Hospitals republish on a new path every refresh cycle, and the homepage anchor required by CMS doesn't always update in lockstep. We see broken MRF URLs roughly once per quarter per hospital on average.
  • · ZIP and compressed wrappers. Some hospitals publish the MRF inside a `.zip`, occasionally with non-UTF-8 filenames or unconventional archive structures that need bespoke handling.
  • · Outdated json_v1 files. A small share of hospitals still publish under the superseded v1 schema; we parse it, but newer analytical tools may not.
Is an MRF the same thing as a 'shoppable services' list?
No, but they overlap. A shoppable-services list is a second file CMS requires — 70 specific services posted in a 'consumer-friendly' display. The MRF is the comprehensive raw-data file behind every code the hospital bills, including those 70 and thousands more. See our shoppable-services collection for the consumer-facing slice.
How often must hospitals refresh the file?
At least annually, per 45 CFR §180.50. Many hospitals republish more often — quarterly is common for large systems. Our atlas refreshes its parsed copy each quarter.
Is the data audited?
Not by CMS in real time. CMS runs a public validator and issues compliance findings; warnings escalate to civil monetary penalties for hospitals that ignore them. Hospitals self-report, and our pipeline occasionally catches errors that the validator misses.
Does the MRF tell me what the cheapest hospital is for my procedure?
Only by negotiated rate, not by patient bill. Two hospitals with identical posted negotiated rates can produce different patient bills depending on facility fees, professional fees, and your specific plan's cost-sharing. The data is a credible reference, not a quote — see the FAQ for how to use it when calling a hospital.
Can I download the underlying MRF for a hospital?
Yes. Each hospital's MRF lives on its own website (every hospital page links to it directly); we also publish a parsed Parquet copy for analysts. The methodology page documents the schema.

Related procedures

Related collections

Numbers and citations on this page trace back to hospitals’ own machine-readable files under 45 CFR §180.50. See the methodology page for how the prices are aggregated, and the editorial policy for what we will and won’t do as a publisher.