Articles

Hospital price transparency files: how to find and read one

Nearly every hospital in the United States must publish its own prices in a machine-readable file, updated at least once a year, free, with no login. When we needed comparable rates in a southwestern state, we did not buy a benchmark. We went and got six hospitals’ own published files and computed the percentile from those.

This is what we learned doing it: where the file is, what is in it as of 2026, why one hospital is not enough, and the part that takes the real work.

TL;DR

  • Add /cms-hpt.txt to the hospital’s website address to find the pointer to its price file.
  • If the bare domain fails, try the www address, then the parent health system’s domain.
  • Rows carry gross, cash and negotiated figures. Since 2026, rows with percentage-based rates also carry allowed-amount percentiles.
  • One hospital’s file is not a benchmark. A comparable set is.

Where is a hospital’s price transparency file?

Add /cms-hpt.txt to the hospital’s website address: https://<the hospital’s domain>/cms-hpt.txt. That plain text file is the pointer to the prices, not the prices themselves. Each entry names a hospital location, the page a person should read and the direct URL of the machine-readable price file.

CMS’s hospital price transparency guidance (MLN7215754) describes the required cms-hpt.txt file as the file that supports automated searches for price files, and CMS provides hospitals a generator for it. That is what you want when the price page is buried four clicks deep under a menu nobody would guess.

How often discovery works is a sampling question. In a random sample of 240 hospitals paid under Medicare’s outpatient system, we found a website domain for 233, a cms-hpt.txt pointer file for 199 and a price file link that answered for 194. Of the 46 without a file, 30 blocked our requests with an error or a bot challenge. Our hospital price study gives the discovery table by hospital size. A file we could not find or read is not evidence that a hospital publishes nothing.

What if cms-hpt.txt is missing or returns an error?

Try the www version of the address first, because one hospital in our check served the file only there and returned a 404 on the bare domain. Then check the parent health system’s own domain, where one hospital appeared as one entry among more than sixty. A missing file at one address is not proof the hospital publishes nothing.

Those two cases come from a separate, smaller check: six hospitals in a southwestern state, on 3 September 2026. They are not the comparable hospitals from the case described above. It is a convenience check, not a sample, and it is not part of the 240-hospital sample above. The six are labeled by letter and bed count band, taken from the CMS Provider of Services file. Hospital B shares its name with more than one facility in that file, so it carries no band.

Whether each of six hospitals served a cms-hpt.txt discovery file at the expected address, checked on 3 September 2026
HospitalSize bandWhere the file wasResult
Hospital A100 to 299 bedsBare domainServed at the obvious address.
Hospital BNot statedBare domainServed at the obvious address.
Hospital CUnder 100 bedsBare domainServed at the obvious address.
Hospital D100 to 299 bedsBare domainServed at the obvious address.
Hospital E100 to 299 bedsThe www host onlyOnly on the www subdomain. The bare domain returns a 404, so dropping the www tells you wrongly that nothing is published.
Hospital FUnder 100 bedsThe parent system's domainNothing on its own domain. It appears instead as one of more than sixty hospital entries in its parent system's file.

Scroll the table sideways on a narrow screen.

None of that is evidence that any of these hospitals is out of compliance, and we are not claiming it is. It is evidence that “the file is published” and “you can find the file” are different statements, and the gap between them is where most people give up.

The price file itself can carry a recognizable name, so once you are looking at a URL you can often tell what you have. The one we opened from the sixth hospital was named for its employer identification number, the hospital name and the words standardcharges, ending in .json. CMS also provides a naming wizard for hospitals.

What is in a hospital price transparency file?

The file holds the hospital’s gross charges, its discounted cash price, its payer-specific negotiated charges, and the de-identified minimum and maximum negotiated charges, each tied to the hospital’s billing codes and code types such as CPT, HCPCS, DRG, NDC or revenue center code, per 45 CFR 180.50.

Where applicable, each row also carries a general description of the item or service. The hospital must update the file at least once annually, and it must be reachable free of charge, without an account, without a password, and without submitting any personal information. Each of those is a different kind of price: a gross charge is a list price and a negotiated charge is a rate agreed with a payer, so a comparison has to say which one it uses.

What did the 2026 rule add to the file?

Since 1 January 2026, when a payer-specific negotiated charge is based on a percentage or algorithm, the file must also carry the 10th percentile, median and 90th percentile allowed amounts in dollars, with the count of remittances behind them. Charges stated as dollar amounts do not trigger that requirement. CMS delayed enforcement of the revisions until 1 April 2026.

The regulation, 45 CFR 180.50(b)(2)(ii)(C), replaced the estimated allowed amount used in 2025 with these figures. The same revisions added an attestation requirement and require the hospital’s organizational Type 2 NPIs. They entered the rule in the CY2026 outpatient payment final rule, published at 90 FR 54087 on 25 November 2025.

CMS’s fact sheet on the final rule goes further than the rule text on method. It tells hospitals to derive the allowed amount figures from EDI 835 electronic remittance advice, or an equivalent source of remittance data, over a lookback period of no less than 12 months and no longer than 15 months before posting the file.

Where a row carries them, an allowed amount comes from remittance data, not from a price list, which makes it a different kind of number from a gross charge or a negotiated rate. Many rows will not carry one, because their negotiated charge is already a dollar amount.

Why is one hospital’s file not a benchmark?

One hospital’s price is one data point. A benchmark needs a set of hospitals of similar size, similar service mix and the same region, because a 25-bed rural hospital and an urban trauma center are not each other’s comparables, and neither is a hospital four states away.

Get the comparison set wrong and every number computed from it is wrong in a way that is easy for the other side to point at. We used six comparable hospitals. That is a convention we follow, chosen before the case, not a rule derived from the data. That timing is from memory: there is no dated written record of it. The more comparable hospitals you can find, the more the result behaves like a distribution instead of an accident.

Why does the file not hand you the 80th percentile?

The file contains no 80th percentile across hospitals. For allowed amounts it gives the 10th percentile, the median and the 90th percentile of one hospital’s remittances, and only where a negotiated charge is a percentage or algorithm. Any percentile across hospitals is computed by the reviewer from the comparable set.

We used the 80th percentile. Like the six hospitals, it is a convention we follow, chosen before the case, and we say so rather than dressing it up as methodology. In our comparisons we used both gross charges and negotiated rates. Each is labeled as what it is, and the two are never mixed in one statistic, because a percentile of gross charges answers a different question from a percentile of negotiated rates.

Price transparency data did not turn this into a lookup. It turned an unanswerable question into an answerable one that still takes work.

How do you tell that two hospitals’ lines are the same service?

Match on the revenue code, the billing code and its type, the text of the description and the medical record, then send disagreements to a person. A match is not a string comparison, because hospitals describe the same procedure differently.

The code may match while the description does not, or the description matches while the code sits at a different level of specificity, or one hospital bundles what another itemizes. The medical record settles what was actually done to the patient. When those sources agree, the lines are comparable. When they disagree, somebody has to decide, and that decision belongs in front of a person rather than inside an automated match. The same rule holds here as everywhere else in this work: a wrong comparable is worse than a missing one, because a wrong comparable produces a confident number with nothing visibly wrong about it. That principle, and what it costs to hold to it, is the subject of why no dollar figure in our output is produced by a model.

Is a hospital, facility or physician price the same thing?

No. One episode of care can generate a hospital charge, a facility charge and a professional charge from the physician, priced on different schedules by different rules. A hospital price transparency file speaks to the first two and is not a source for what a physician should have been paid.

Mixing them, or benchmarking a professional charge against a hospital’s published rate, produces an apples-to-oranges figure that an opposing expert will find immediately. For the Medicare facility amount at a hospital, use the hospital outpatient payment rate lookup. For the physician fee schedule amount, use the Medicare rate lookup. Each shows its own basis. Keeping the three separate is most of what makes the output survive scrutiny.

What does a hospital’s file not give you?

Not every hospital is covered. 45 CFR 180.30 deems federally owned facilities compliant, including Department of Veterans Affairs facilities and Department of Defense military treatment facilities, along with hospitals operated by an Indian Health Program and state forensic hospitals treating only people in the custody of penal authorities. A comparable set that would naturally include one of those will not find it.

Beyond the exemptions, the files vary in quality. Discovery is inconsistent, as our own check of six hospitals showed. Formats differ. Descriptions are written for the hospital’s internal use rather than for your comparison. CMS says in its guidance for hospitals that it identifies hospitals to review using a web scraper tool and public complaints and performs at least 200 comprehensive hospital reviews each month, which tells you both that enforcement is real and that it is sampling rather than universal.

None of that makes the data unusable. It makes it work rather than a lookup, which is the correct expectation to set before starting. For the Medicare comparison, read how published prices compare with Medicare in a random sample of 240 hospitals.

Questions007

Frequently asked questions

01

Where do I find a hospital's published prices?

A hospital's published prices are in a machine-readable file that its cms-hpt.txt points to. Try https:// plus the hospital's domain plus /cms-hpt.txt. That plain text file lists each hospital location, the human-readable pricing page and the direct link to the price file. If the bare domain fails, try the www subdomain, then the parent system's file.

02

Are hospitals legally required to publish their prices?

Yes, under 45 CFR part 180. A hospital must publish a machine-readable file of standard charges for all items and services, update it at least once annually, and make it accessible free of charge without an account, a password or any personal information. Federally owned facilities, hospitals operated by an Indian Health Program, and state forensic hospitals serving only people in penal custody are deemed compliant and are not required to publish.

03

What is in a hospital price transparency file?

Gross charges, the discounted cash price, payer-specific negotiated charges, and de-identified minimum and maximum negotiated charges, each tied to the hospital's billing codes and code types. Since 1 January 2026, where a negotiated charge is based on a percentage or algorithm, the file also carries the median, 10th percentile and 90th percentile allowed amounts, along with the count of remittances behind them.

04

How many comparable hospitals do you need to benchmark a charge?

We used six, selected for similar size, similar service mix and the same region. That is a convention we follow, chosen before the case (from memory: there is no dated written record of it), not a rule derived from the data. Hospitals outside the region or of a very different size are not comparables at all, however convenient their data is to obtain.

05

What is cms-hpt.txt?

A plain text pointer file that CMS requires hospitals to publish to support automated searches for their price files. Each entry names a hospital location, the page a person should read and the direct link to the machine-readable price file. It sits at the address formed by the hospital's domain plus /cms-hpt.txt.

06

Why can't I find a hospital's file when I add /cms-hpt.txt?

Two causes showed up in our check of six hospitals. One served the file only on its www address and returned a 404 on the bare domain. One had no file on its own domain and appeared as an entry in its parent system's file. A missing file at one address is not proof the hospital publishes nothing.

07

Do these files show what a patient or insurer paid?

No. The negotiated and cash figures are prices the hospital publishes, not payments. Since 2026, the allowed-amount percentiles come from remittance data and are the nearest thing to what was paid, but they appear only where a negotiated charge is a percentage or algorithm. A published figure is not a payment.

Burak Tamac spent eight years as a senior paralegal at a New Jersey personal-injury firm preparing PIP arbitration files, and three of those years building the billing analyses behind medical billing expert reports. He now builds document-processing systems for law firms and expert practices at S2Reason. He holds a Ph.D. in political science and is an adjunct professor at Montclair State University. Related: where the time actually goes in a bill review, a second use for these same published files, recovering a missing CPT code, and the fee schedule and UCR lookup behind our own benchmarking.

Try it on your own cases firstYou see it work before you pay for it.