Skip to content
FonteumPublic-records evidence
FINANCIAL DISTRESS · ISSUE 082
cms-nursing-home-compareOriginal Research

Nursing Home Fines Are Getting Bigger: A Three-Year Trend

Across three years of CMS nursing-home enforcement — 13,764 fines totaling $459.3M — the size of the typical penalty more than doubled. The median fine rose from $8,193 in 2023 to $22,315 so far in 2026 — up 21% across the two complete years. The whole distribution shifted up, not a few outliers.

BY FONTEUM LLC · JUNE 16, 2026 · 8 MIN READREVIEWED BY DR. JENNIFER MONTECILLO, MDSNAPSHOT 2026-05-01 · LAST UPDATED MAY 1, 2026
CMS Nursing Home Compare · 2026-05-01
Median CMS nursing-home fine by year, 2023–2026cms-nursing-home-compare · 2026-05-01
2023
8193
2024
16055
2025
19412
2026 (partial)
22315
Built on CMS Nursing Home Compare · snapshot 2026-05-01 · reproducible · re-derive the figures yourself
Key findings
the median CMS nursing-home fine more than doubled, from $8,193 in 2023 to $22,315 in the partial 2026. Across the two complete calendar years the median rose 21% — from $16,055 in 2024 to $19,412 in 2025. Median is a per-action figure, unaffected by the partial first and last years
cms-nursing-home-compare · CMS
the bottom-quartile (25th-percentile) fine more than tripled across the window — the broadest sign that the entire schedule of amounts shifted up, rather than a few large penalties pulling the average. By the last complete year, 2025, the bottom-quartile fine had already reached $12,632
cms-nursing-home-compare · CMS
the share of fine actions under $10,000 collapsed — from 55.3% of all 2023 fines to 16.4% in 2025. The thick base of small fines thinned out as the typical amount climbed
cms-nursing-home-compare · CMS
the share of fine dollars coming from fines of $100,000 or more held near 40% every year (39.4% in 2023, 40.4% in 2024, 42.4% in 2025). Because the outlier share is steady, the rise is the base moving up — not a thickening tail of very large penalties
cms-nursing-home-compare · CMS
across 13,764 fine actions, plus 2,513 payment denials, fell on 6,884 Medicare/Medicaid-certified facilities in 53 states and territories, CMS release dated 2026-05-01. Every figure here is a count, sum, or percentile over published records — no individual facility is named, ranked, or scored
cms-nursing-home-compare · CMS

CMS keeps a public ledger of the financial enforcement actions it takes against the nation's Medicare/Medicaid-certified nursing facilities. The Civil Money Penalties file, republished quarterly through the agency's data catalog, lists each action by facility, with the penalty type, the fine amount, the payment-denial length where one applies, and the date. CMS sets these amounts; this study does not. A companion study reads where the dollars concentrate — on the facilities CMS cites again and again. This one reads a different axis of the same file: not where the money lands but how big each fine has become. Over three years, the answer is clear — the typical fine has grown.

The typical nursing-home fine has more than doubled

The median fine in the file rose from $8,193 in 2023 to $22,315 in the partial 2026 — and, across the two complete calendar years, climbed 21%, from $16,055 in 2024 to $19,412 in 2025. The median is the right lens here: it is a per-action figure, so the incomplete first year (the file starts mid-May 2023) and last year (it ends mid-April 2026) do not pull it up or down the way a partial-year total would.

Action yearFine actionsMedian fineAverage fineTotal fine dollars
2023 (partial)4,876$8,193$24,038$117,210,368
20245,098$16,055$36,090$183,989,128
20253,423$19,412$41,888$143,381,741
2026 (partial)367$22,315$40,209$14,756,570

Source: CMS Civil Money Penalties, fine actions by year each penalty took effect, source release 2026-05-01.

The average fine moved with the median — from $24,038 in 2023 to roughly $41,000 in 2025 and 2026 — but the average can be dragged by a single very large penalty, so the median is the cleaner signal. Both point the same way. The full-span figure is a 2.7× rise in the median; the conservative read, restricted to the two years the file covers end to end, is still a 21% increase in twelve months.

A civil money penalty records a CMS enforcement action, not a Fonteum judgment. A fine's size is the amount CMS set for a past citation. This study tracks how those amounts have moved and infers nothing about why, or about the care at any facility.

The climb is the whole distribution, not a few outliers

Read the fine distribution at four points and every one of them rises — and the bottom quartile rises fastest, more than tripling from $4,587 in 2023 to $15,185 in 2026. That is the signature of a schedule of amounts shifting up across the board, not a thin tail of large penalties growing.

Action year25th pctMedian75th pct90th pct
2023$4,587$8,193$20,124$65,546
2024$8,824$16,055$43,220$92,167
2025$12,632$19,412$49,959$104,650
2026 (partial)$15,185$22,315$37,410$91,022

Source: CMS Civil Money Penalties, percentiles of fine size by year, source release 2026-05-01.

If the rise were a story about outliers, the high percentiles would pull away while the low ones stayed flat. Instead the 25th-percentile fine — the small, routine end of the scale — more than tripled, climbing faster in proportion than the 90th. The smallest fines got much bigger; the largest got bigger too, but less dramatically in relative terms. The escalation reached the floor of the distribution, which is where most of the actions sit.

The small-fine base thinned as the outlier share held

Two counts confirm the same shift from opposite ends. Fines under $10,000 — once the majority of all actions — fell from 55.3% of 2023 fines to 16.4% in 2025. Yet the share of dollars coming from the very largest fines, those of $100,000 or more, barely moved, holding near 40% every year.

Action yearFines under $10kShare of finesDollars from fines ≥ $100k
20232,69855.3%39.4%
20241,48229.1%40.4%
202556216.4%42.4%
2026 (partial)113.0%39.4%

Source: CMS Civil Money Penalties, small-fine count and large-fine dollar share by year, source release 2026-05-01.

This is the heart of the finding. A rising average could be explained by a handful of record penalties; a rising median with a shrinking small-fine base and a steady outlier share cannot. The thick base of sub-$10,000 fines that defined the 2023 file has largely emptied out, and the dollars are not newly concentrated at the top — the top's share is unchanged. The money moved because the ordinary fine got bigger.

What the falling counts are — and are not

The annual fine count drops after 2024 — 5,098 fines in 2024, 3,423 in 2025, 367 in the partial 2026 — but that is mostly reporting lag, not a fall in enforcement. The file behind this study was released 2026-05-01, and enforcement actions report into the public file over time, so the most recent quarters are still filling in. The quarterly view makes the lag visible: fine counts taper through 2025 and into 2026 even as the median keeps rising.

QuarterFine actionsMedian fine
2024 Q11,699$13,674
2024 Q41,032$16,801
2025 Q2951$19,503
2025 Q4550$21,645
2026 Q1349$22,320

Source: CMS Civil Money Penalties, selected quarters, fine count and median, source release 2026-05-01.

Because the counts at the tail are incomplete, this study reads the trend off fine size — a per-action measure that does not depend on how complete the count is — and treats annual counts as understated near the present. The size trend is near-monotonic at the quarterly level, which is why it survives the partial-year problem that the count cannot. The 2,513 payment denials in the file sit alongside the fines as a separate, more severe remedy; CMS attaches no dollar amount to a denial, so they are outside the size analysis here.

What one row actually is

Each row in cms_civil_money_penalties is one CMS enforcement action: a facility CCN and name, its city and state, the penalty type, the fine amount (for fine actions) or the payment-denial length, and the date. The file is keyed to the facility's CMS Certification Number, not to any individual provider — it carries no NPI — so penalties join to facilities, never to a named clinician. The published file is the current enforcement record CMS releases each quarter; counting, summing, and taking percentiles over these rows is the entire method here. Every figure in this study is at the year, percentile, or distribution level. No facility is named, ranked, or scored.

Methodology

All figures are direct aggregations over the cms_civil_money_penalties table, populated from the CMS Civil Money Penalties public-use file published through the CMS data catalog (CMS Provider Data Catalog). The table holds 16,277 enforcement actions — 13,764 fine actions totaling $459,337,807 and 2,513 payment-denial actions — across 6,884 distinct facility CCNs in 53 states and territories; source release 2026-05-01, covering actions dated May 17, 2023 through April 17, 2026; public, read-only; license US-Government-Works.

This study reads the trend in fine size over time. Year and quarter come from each action's penalty_date; size figures use fine_amount over fine actions only, because CMS publishes no dollar amount for a payment-denial action. The headline measure is the median fine by year, chosen because a per-action percentile is unaffected by the partial first (from May 17, 2023) and last (to April 17, 2026) calendar years, where a count or total would be. The distribution view reports the 25th, 50th, 75th, and 90th percentiles per year; the share views count fines under $10,000 and the dollar share from fines of $100,000 or more. Annual fine counts are reported only with the caution that the file reports recent actions with a lag, so 2025 and 2026 counts are understated; the size trend does not rely on them. Because these are counts, sums, and percentiles over a published file, every figure is exact as of the snapshot rather than estimated. Methodology version: cms-cmp/v1. The source-provenance contract is documented in the provenance methodology.

Limitations

  • A CMS enforcement record, not a Fonteum assessment. Every penalty is a CMS enforcement action published by CMS. Fonteum does not impose fines, assess facility compliance, or make enforcement determinations. This study draws no conclusion about any facility from the size of a penalty.
  • The amounts' cause is not in the file. The file records the amount CMS set for each action under its published enforcement criteria, not why the amount was set or why amounts have risen. This study describes the movement in the recorded amounts and does not infer or assert a cause.
  • Aggregate and distribution-level only. Every figure is a count, sum, or percentile at the year, quarter, fine-size, or distribution level. No individual facility is named, ranked, or scored, and the file carries no provider NPI, so no penalty renders on any provider profile.
  • Partial first and last years. The window opens mid-May 2023 and closes mid-April 2026, so 2023 and 2026 are incomplete. Per-action size figures (medians, percentiles) are reported across them because they are unbiased by partial coverage; annual counts and totals for those years are explicitly partial.
  • Counts at the tail are lag-affected. CMS reports recent enforcement actions into the public file over time, so 2025 and 2026 fine counts understate true volume. The study's conclusion rests on fine size, not on the declining counts, which should not be read as falling enforcement.
  • Enforcement history is not current condition. A penalty records a past survey citation. Many facilities correct deficiencies promptly; the file does not show whether a facility is in or out of compliance today, and fine size is not a quality measure.
  • Snapshot, not a forecast. Figures reflect the single file released 2026-05-01. CMS refreshes the file quarterly and adds, modifies, or closes records between releases, so the trend will extend and the most recent points will firm up; this study does not project beyond the published record.

Sources

The companion dataset page for CMS Civil Money Penalties lists the full schema and refresh cadence, and the CMS NH Penalties source page records the provenance. This is the size-over-time companion to where nursing-home penalties concentrate, and it sits alongside the ownership concentration behind the same facilities and how long deficiencies take to correct. For the financial-bar enforcement that runs parallel to these fines, see why provider exclusions cluster around distressed operators, the shape of the OIG exclusion list, and the gap where exclusion screening misses most state Medicaid bars.

Frequently asked questions

What is a CMS civil money penalty against a nursing home?
A civil money penalty (CMP) is a fine CMS imposes on a Medicare/Medicaid-certified nursing facility found out of compliance with federal Conditions of Participation. CMS can levy a per-day amount for an ongoing deficiency or a per-instance amount for a specific event. The penalty is a CMS enforcement determination; this study counts and sizes the published actions and does not assess any facility's compliance.
Has the size of nursing-home fines changed over time?
Yes. The median fine in CMS's Civil Money Penalties file more than doubled across the window, from $8,193 in 2023 to $22,315 in the partial 2026. Looking only at the two complete calendar years removes any partial-year effect: the median still rose 21%, from $16,055 in 2024 to $19,412 in 2025. Because the median is a per-action figure, the incomplete first and last years do not bias it.
Is the increase just a few very large penalties?
No — it is the whole distribution moving up. The bottom-quartile (25th-percentile) fine more than tripled, from $4,587 in 2023 to $15,185 in 2026, and the share of fine actions under $10,000 fell from 55.3% to 16.4% by 2025. Meanwhile the share of dollars from fines of $100,000 or more held near 40% every year, so the rise is the base of small fines climbing, not the outlier tail thickening.
Why are the 2025 and 2026 fine counts lower?
Mostly reporting lag, not a drop in enforcement. The file behind this study was released 2026-05-01, and recent enforcement actions report into the public file over time, so the most recent quarters are still filling in. That is why this study reads the trend off fine size — a per-action measure that does not depend on how complete the count is — and treats annual counts as understated at the tail.
Why did the amounts rise?
The file does not say. It records the amount CMS set for each action under the agency's published enforcement criteria, but not the reason behind it. Penalty amounts follow CMS's own methodology, which this study reports as recorded rather than replicating or auditing. We describe the movement in the amounts and draw no conclusion about its cause.
Does a larger fine mean a nursing home is less safe?
Not on its own. A fine records that CMS cited a facility for a deficiency on a past survey and set an amount; a larger amount reflects CMS's enforcement criteria for that citation, not a Fonteum measure of safety. Many facilities correct deficiencies promptly, and the file does not show current condition. This study works only at the year, percentile, and distribution level and names no facility.
Is Fonteum issuing or assessing these penalties?
No. Every penalty in this study is a CMS enforcement action published by CMS. Fonteum does not impose fines, assess facility compliance, or make enforcement determinations. The study aggregates the published records — by year, fine size, and distribution — and reports the counts, sums, and percentiles.
Can I reproduce these figures?
Yes. Every number is a direct count, sum, or percentile over the public cms_civil_money_penalties table — CMS's Civil Money Penalties file, source release 2026-05-01 — with no modeling. The exact SQL for the median-by-year trend, the percentile shift, the small-fine and outlier shares, and the quarterly check is published in the reproducibility block below.

Who uses this data

The source data behind this study is public

Compliance teams, journalists, and researchers work from the same federal source families cited above — queried by NPI or facility identifier through Fonteum’s open dataset pages and API. Every figure traces to a frozen, downloadable snapshot you can reproduce yourself.

Reproducibility

Every claim, reproducible

The SQL
nursing-home-fine-size-trend-2026.sql
-- HOW the size of CMS nursing-home civil money penalties has moved over three
-- years. Fully reproducible query.
--
-- Question: across the civil money penalties (CMPs) CMS has imposed on
-- Medicare/Medicaid-certified nursing facilities, has the SIZE of the typical
-- fine changed over time? The lead figure: the median fine more than doubled,
-- from $8,193 in 2023 to $22,315 in the partial 2026, and rose 21% between the
-- two complete calendar years ($16,055 in 2024 to $19,412 in 2025). The climb is
-- broad-based — the bottom-quartile fine more than tripled and the share of
-- fines under $10,000 collapsed — not a few large outliers pulling the average.
-- A penalty is a CMS enforcement action, NOT a Fonteum judgment, fraud signal,
-- or assessment of current facility quality. The file records the AMOUNTS CMS
-- set; it does not record why they moved, and this query infers no cause.
--
-- Source:
--   public.cms_civil_money_penalties — CMS "Civil Money Penalties" public-use
--     file, published quarterly via the CMS data catalog (data.cms.gov, dataset
--     g6vv-u9sr). 16,277 enforcement actions; source release 2026-05-01.
--     Public, read-only. License: US-Government-Works (17 U.S.C. Sec. 105).
--     methodology_version = 'cms-cmp/v1'.
--
-- Universe: this study reads the published file AS A WHOLE — every row is one
--   enforcement action CMS records against a certified facility, keyed to the
--   facility CMS Certification Number (CCN). The file carries NO provider NPI;
--   penalties join to facilities, never to a named clinician. The window runs
--   from a partial 2023 (actions dated from 2023-05-17) through a partial 2026
--   (to 2026-04-17), so the first and last calendar years are incomplete.
--
-- Counting note: two penalty types appear. A "Fine" carries a fine_amount; a
--   "Payment Denial" suspends Medicare/Medicaid payment for new admissions and
--   carries no dollar amount. Every size figure below is over fine actions only.
--   Per-action statistics (median, percentiles) are unaffected by the partial
--   first/last years; annual COUNTS are not, because recent actions report into
--   the file with a lag (see query 6). No individual facility is named.

-- ============================================================================
-- (1) Universe reconciliation — the published file at a glance.
-- ============================================================================
-- audit-claim: universe
SELECT
  count(*)                                                          AS actions,
  count(DISTINCT ccn)                                               AS distinct_ccn,
  count(DISTINCT state)                                             AS states,
  count(*) FILTER (WHERE penalty_type = 'Fine')                     AS fine_actions,
  round(sum(fine_amount) FILTER (WHERE penalty_type = 'Fine'))      AS total_fine_usd,
  round(sum(fine_amount) FILTER (WHERE penalty_type = 'Fine') / 1000000.0, 1)
                                                                    AS total_fine_millions,
  count(*) FILTER (WHERE penalty_type = 'Payment Denial')           AS payment_denials,
  round(percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS median_fine_allyears,
  max(fine_amount)                                                  AS max_fine,
  min(penalty_date)                                                 AS earliest_action,
  max(penalty_date)                                                 AS latest_action,
  max(source_release_date)                                          AS source_release
FROM public.cms_civil_money_penalties;
--  actions 16,277 · distinct_ccn 6,884 · states 53 · fine_actions 13,764
--  total_fine_usd 459,337,807 · payment_denials 2,513
--  median_fine_allyears $14,576 · max_fine $713,795
--  earliest 2023-05-17 · latest 2026-04-17 · source_release 2026-05-01

-- ============================================================================
-- (2) HEADLINE: the size of the typical fine by year. Median is the headline
--     because it is a per-action statistic — unbiased by the partial 2023 and
--     2026 years. The median fine more than doubled across the window; across
--     the two COMPLETE years (2024, 2025) it rose 21%.
-- ============================================================================
-- audit-claim: annual-vector
SELECT
  extract(year FROM penalty_date)::int                              AS action_year,
  count(*) FILTER (WHERE penalty_type = 'Fine')                     AS fine_actions,
  round(percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS median_fine,
  round(avg(fine_amount) FILTER (WHERE fine_amount > 0))            AS avg_fine,
  round(sum(fine_amount) FILTER (WHERE penalty_type = 'Fine'))      AS fine_dollars
FROM public.cms_civil_money_penalties
GROUP BY action_year
ORDER BY action_year;
--  2023 (partial)  4,876  median $ 8,193  avg $24,038  $117,210,368
--  2024            5,098  median $16,055  avg $36,090  $183,989,128
--  2025            3,423  median $19,412  avg $41,888  $143,381,741
--  2026 (partial)    367  median $22,315  avg $40,209  $ 14,756,570
--  median 2025/2024 = 1.21x (+21%) · median 2026/2023 = 2.72x

-- Direct display derivations for the full-span and complete-year changes.
-- audit-claim: trend-summary
WITH annual AS (
  SELECT
    extract(year FROM penalty_date)::int AS action_year,
    percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount)
      FILTER (WHERE fine_amount > 0) AS median_fine
  FROM public.cms_civil_money_penalties
  WHERE penalty_type = 'Fine'
  GROUP BY action_year
),
pivoted AS (
  SELECT
    max(median_fine) FILTER (WHERE action_year = 2023) AS median_2023,
    max(median_fine) FILTER (WHERE action_year = 2024) AS median_2024,
    max(median_fine) FILTER (WHERE action_year = 2025) AS median_2025,
    max(median_fine) FILTER (WHERE action_year = 2026) AS median_2026
  FROM annual
)
SELECT
  round(median_2023) AS median_2023,
  round(median_2024) AS median_2024,
  round(median_2025) AS median_2025,
  round(median_2026) AS median_2026,
  round((median_2026 / median_2023)::numeric, 2) AS full_span_multiple,
  round((median_2026 / median_2023)::numeric, 1) AS display_full_span_multiple,
  round((100.0 * (median_2025 - median_2024) / median_2024)::numeric)
    AS complete_year_pct_change
FROM pivoted;
-- medians 8,193 · 16,055 · 19,412 · 22,315
-- full span 2.72x (display 2.7x) · complete-year change 21%

-- ============================================================================
-- (3) The climb is the whole distribution, not a few outliers. Read the 25th,
--     50th, 75th and 90th percentiles of fine size per year: every percentile
--     rises, and the BOTTOM quartile (p25) more than tripled — the clearest sign
--     the entire schedule of amounts shifted up rather than a thin tail growing.
-- ============================================================================
-- audit-claim: percentile-vector
SELECT
  extract(year FROM penalty_date)::int                              AS action_year,
  round(percentile_cont(0.25) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS p25,
  round(percentile_cont(0.50) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS p50,
  round(percentile_cont(0.75) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS p75,
  round(percentile_cont(0.90) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS p90
FROM public.cms_civil_money_penalties
WHERE penalty_type = 'Fine'
GROUP BY action_year
ORDER BY action_year;
--  2023  p25 $ 4,587  p50 $ 8,193  p75 $20,124  p90 $ 65,546
--  2024  p25 $ 8,824  p50 $16,055  p75 $43,220  p90 $ 92,167
--  2025  p25 $12,632  p50 $19,412  p75 $49,959  p90 $104,650
--  2026  p25 $15,185  p50 $22,315  p75 $37,410  p90 $ 91,022 (partial)
--  p25 2026/2023 = 3.31x; p25 2025/2023 = 2.75x

-- ============================================================================
-- (4) Two views of the same shift. The small-fine base THINNED: fines under
--     $10,000 fell from 55.3% of all fine actions in 2023 to 16.4% in 2025.
--     Meanwhile the dollar SHARE from fines of $100k+ held near 40% every year,
--     so the rise is the base moving up, not a thickening outlier tail.
-- ============================================================================
-- audit-claim: distribution-vector
SELECT
  extract(year FROM penalty_date)::int                              AS action_year,
  count(*) FILTER (WHERE fine_amount > 0 AND fine_amount < 10000)   AS fines_under_10k,
  round(100.0 * count(*) FILTER (WHERE fine_amount > 0 AND fine_amount < 10000)
        / count(*) FILTER (WHERE fine_amount > 0), 1)               AS pct_under_10k,
  count(*) FILTER (WHERE fine_amount >= 100000)                     AS fines_100k_plus,
  round(100.0 * sum(fine_amount) FILTER (WHERE fine_amount >= 100000)
        / sum(fine_amount) FILTER (WHERE fine_amount > 0), 1)       AS pct_dollars_100k_plus
FROM public.cms_civil_money_penalties
WHERE penalty_type = 'Fine'
GROUP BY action_year
ORDER BY action_year;
--  2023  under_10k 2,698  55.3%  ·  100k+ 280  dollars 39.4%
--  2024  under_10k 1,482  29.1%  ·  100k+ 462  dollars 40.4%
--  2025  under_10k   562  16.4%  ·  100k+ 362  dollars 42.4%
--  2026  under_10k    11   3.0%  ·  100k+  34  dollars 39.4% (partial)

-- ============================================================================
-- (5) Quarter by quarter — the median fine rises near-monotonically, confirming
--     the annual trend is not an artifact of how the partial years split. The
--     step up is concentrated at the start of 2024. The final quarter (2026 Q2,
--     18 fines) is the file's trailing edge and is shown for completeness only.
-- ============================================================================
-- audit-claim: quarterly-vector
SELECT
  date_trunc('quarter', penalty_date)::date                         AS quarter,
  count(*) FILTER (WHERE penalty_type = 'Fine')                     AS fine_actions,
  round(percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount)
        FILTER (WHERE fine_amount > 0))                             AS median_fine
FROM public.cms_civil_money_penalties
GROUP BY quarter
ORDER BY quarter;
--  2023Q2   998  $ 7,444   2024Q2 1,184 $16,830   2025Q2  951 $19,503
--  2023Q3 1,991  $ 8,469   2024Q3 1,183 $17,108   2025Q3  787 $19,135
--  2023Q4 1,887  $ 8,424   2024Q4 1,032 $16,801   2025Q4  550 $21,645
--  2024Q1 1,699  $13,674   2025Q1 1,135 $18,351   2026Q1  349 $22,320
--                                                  2026Q2   18 $21,568 (edge)

-- ============================================================================
-- (6) Counts decline at the tail — and why that is NOT a fall in enforcement.
--     The file is released 2026-05-01; recent actions report in with a lag, so
--     2025 and 2026 fine COUNTS are incomplete and understate true volume. This
--     query is the caution behind the study: it reads the SIZE trend (queries
--     2-5, all per-action) as robust, and treats annual counts as lag-affected.
-- ============================================================================
-- audit-claim: all-action-vector
SELECT
  extract(year FROM penalty_date)::int                              AS action_year,
  count(*)                                                          AS actions,
  count(*) FILTER (WHERE penalty_type = 'Fine')                     AS fine_actions,
  count(*) FILTER (WHERE penalty_type = 'Payment Denial')           AS payment_denials,
  count(DISTINCT ccn)                                               AS facilities
FROM public.cms_civil_money_penalties
GROUP BY action_year
ORDER BY action_year;
--  2023 5,539  fines 4,876  denials   663  facilities 2,798 (partial, from 2023-05-17)
--  2024 6,170  fines 5,098  denials 1,072  facilities 3,819
--  2025 4,162  fines 3,423  denials   739  facilities 2,932 (lag-affected)
--  2026   406  fines   367  denials    39  facilities   371 (partial, to 2026-04-17)
The snapshot
dataset_idcms-nursing-home-compare
snapshot_date2026-05-01
slsa_provenance_urlpending - publishes with the SLSA provenance generator (not yet live)
The JOINs
universe: the published file as a whole                                       -- 16,277 actions, 13,764 fines ($459,337,807), 6,884 CCNs, release 2026-05-01
fine size by year = percentile_cont over fine_amount, GROUP BY year           -- median $8,193 (2023) -> $16,055 (2024) -> $19,412 (2025) -> $22,315 (2026)
complete-year change = 2024 vs 2025 median                                    -- $16,055 -> $19,412 = +21%; full span $8,193 -> $22,315 = 2.72x
distribution shift = p25/p50/p75/p90 by year                                  -- p25 $4,587 -> $15,185 (3.31x); every percentile rises
small-fine base = fine_amount < 10000 share by year                           -- 55.3% (2023) -> 29.1% (2024) -> 16.4% (2025) -> 3.0% (2026)
outlier dollar share = fine_amount >= 100000 share of dollars by year         -- 39.4% / 40.4% / 42.4% / 39.4% (steady)
count caveat = actions by year                                               -- 2025 + 2026 counts are lag-affected; SIZE trend (per-action) is robust
The pipeline version
git_sha8c06d24b
slsa_provenancepending - publishes with the SLSA provenance generator (not yet live)
methodology_versioncms-cmp/v1

Reproduce this

Run the exact query against the frozen 2026-05-01.

-- HOW the size of CMS nursing-home civil money penalties has moved over three -- years. Fully reproducible query. -- -- Question: across the civil money penalties (CMPs) CMS has imposed on -- Medicare/Medicaid-certified nursing facilities, has the SIZE of the typical -- fine changed over time? The lead figure: the median fine more than doubled, -- from $8,193 in 2023 to $22,315 in the partial 2026, and rose 21% between the -- two complete calendar years ($16,055 in 2024 to $19,412 in 2025). The climb is -- broad-based — the bottom-quartile fine more than tripled and the share of -- fines under $10,000 collapsed — not a few large outliers pulling the average. -- A penalty is a CMS enforcement action, NOT a Fonteum judgment, fraud signal, -- or assessment of current facility quality. The file records the AMOUNTS CMS -- set; it does not record why they moved, and this query infers no cause. -- -- Source: -- public.cms_civil_money_penalties — CMS "Civil Money Penalties" public-use -- file, published quarterly via the CMS data catalog (data.cms.gov, dataset -- g6vv-u9sr). 16,277 enforcement actions; source release 2026-05-01. -- Public, read-only. License: US-Government-Works (17 U.S.C. Sec. 105). -- methodology_version = 'cms-cmp/v1'. -- -- Universe: this study reads the published file AS A WHOLE — every row is one -- enforcement action CMS records against a certified facility, keyed to the -- facility CMS Certification Number (CCN). The file carries NO provider NPI; -- penalties join to facilities, never to a named clinician. The window runs -- from a partial 2023 (actions dated from 2023-05-17) through a partial 2026 -- (to 2026-04-17), so the first and last calendar years are incomplete. -- -- Counting note: two penalty types appear. A "Fine" carries a fine_amount; a -- "Payment Denial" suspends Medicare/Medicaid payment for new admissions and -- carries no dollar amount. Every size figure below is over fine actions only. -- Per-action statistics (median, percentiles) are unaffected by the partial -- first/last years; annual COUNTS are not, because recent actions report into -- the file with a lag (see query 6). No individual facility is named. -- ============================================================================ -- (1) Universe reconciliation — the published file at a glance. -- ============================================================================ -- audit-claim: universe SELECT count(*) AS actions, count(DISTINCT ccn) AS distinct_ccn, count(DISTINCT state) AS states, count(*) FILTER (WHERE penalty_type = 'Fine') AS fine_actions, round(sum(fine_amount) FILTER (WHERE penalty_type = 'Fine')) AS total_fine_usd, round(sum(fine_amount) FILTER (WHERE penalty_type = 'Fine') / 1000000.0, 1) AS total_fine_millions, count(*) FILTER (WHERE penalty_type = 'Payment Denial') AS payment_denials, round(percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS median_fine_allyears, max(fine_amount) AS max_fine, min(penalty_date) AS earliest_action, max(penalty_date) AS latest_action, max(source_release_date) AS source_release FROM public.cms_civil_money_penalties; -- actions 16,277 · distinct_ccn 6,884 · states 53 · fine_actions 13,764 -- total_fine_usd 459,337,807 · payment_denials 2,513 -- median_fine_allyears $14,576 · max_fine $713,795 -- earliest 2023-05-17 · latest 2026-04-17 · source_release 2026-05-01 -- ============================================================================ -- (2) HEADLINE: the size of the typical fine by year. Median is the headline -- because it is a per-action statistic — unbiased by the partial 2023 and -- 2026 years. The median fine more than doubled across the window; across -- the two COMPLETE years (2024, 2025) it rose 21%. -- ============================================================================ -- audit-claim: annual-vector SELECT extract(year FROM penalty_date)::int AS action_year, count(*) FILTER (WHERE penalty_type = 'Fine') AS fine_actions, round(percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS median_fine, round(avg(fine_amount) FILTER (WHERE fine_amount > 0)) AS avg_fine, round(sum(fine_amount) FILTER (WHERE penalty_type = 'Fine')) AS fine_dollars FROM public.cms_civil_money_penalties GROUP BY action_year ORDER BY action_year; -- 2023 (partial) 4,876 median $ 8,193 avg $24,038 $117,210,368 -- 2024 5,098 median $16,055 avg $36,090 $183,989,128 -- 2025 3,423 median $19,412 avg $41,888 $143,381,741 -- 2026 (partial) 367 median $22,315 avg $40,209 $ 14,756,570 -- median 2025/2024 = 1.21x (+21%) · median 2026/2023 = 2.72x -- Direct display derivations for the full-span and complete-year changes. -- audit-claim: trend-summary WITH annual AS ( SELECT extract(year FROM penalty_date)::int AS action_year, percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0) AS median_fine FROM public.cms_civil_money_penalties WHERE penalty_type = 'Fine' GROUP BY action_year ), pivoted AS ( SELECT max(median_fine) FILTER (WHERE action_year = 2023) AS median_2023, max(median_fine) FILTER (WHERE action_year = 2024) AS median_2024, max(median_fine) FILTER (WHERE action_year = 2025) AS median_2025, max(median_fine) FILTER (WHERE action_year = 2026) AS median_2026 FROM annual ) SELECT round(median_2023) AS median_2023, round(median_2024) AS median_2024, round(median_2025) AS median_2025, round(median_2026) AS median_2026, round((median_2026 / median_2023)::numeric, 2) AS full_span_multiple, round((median_2026 / median_2023)::numeric, 1) AS display_full_span_multiple, round((100.0 * (median_2025 - median_2024) / median_2024)::numeric) AS complete_year_pct_change FROM pivoted; -- medians 8,193 · 16,055 · 19,412 · 22,315 -- full span 2.72x (display 2.7x) · complete-year change 21% -- ============================================================================ -- (3) The climb is the whole distribution, not a few outliers. Read the 25th, -- 50th, 75th and 90th percentiles of fine size per year: every percentile -- rises, and the BOTTOM quartile (p25) more than tripled — the clearest sign -- the entire schedule of amounts shifted up rather than a thin tail growing. -- ============================================================================ -- audit-claim: percentile-vector SELECT extract(year FROM penalty_date)::int AS action_year, round(percentile_cont(0.25) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS p25, round(percentile_cont(0.50) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS p50, round(percentile_cont(0.75) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS p75, round(percentile_cont(0.90) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS p90 FROM public.cms_civil_money_penalties WHERE penalty_type = 'Fine' GROUP BY action_year ORDER BY action_year; -- 2023 p25 $ 4,587 p50 $ 8,193 p75 $20,124 p90 $ 65,546 -- 2024 p25 $ 8,824 p50 $16,055 p75 $43,220 p90 $ 92,167 -- 2025 p25 $12,632 p50 $19,412 p75 $49,959 p90 $104,650 -- 2026 p25 $15,185 p50 $22,315 p75 $37,410 p90 $ 91,022 (partial) -- p25 2026/2023 = 3.31x; p25 2025/2023 = 2.75x -- ============================================================================ -- (4) Two views of the same shift. The small-fine base THINNED: fines under -- $10,000 fell from 55.3% of all fine actions in 2023 to 16.4% in 2025. -- Meanwhile the dollar SHARE from fines of $100k+ held near 40% every year, -- so the rise is the base moving up, not a thickening outlier tail. -- ============================================================================ -- audit-claim: distribution-vector SELECT extract(year FROM penalty_date)::int AS action_year, count(*) FILTER (WHERE fine_amount > 0 AND fine_amount < 10000) AS fines_under_10k, round(100.0 * count(*) FILTER (WHERE fine_amount > 0 AND fine_amount < 10000) / count(*) FILTER (WHERE fine_amount > 0), 1) AS pct_under_10k, count(*) FILTER (WHERE fine_amount >= 100000) AS fines_100k_plus, round(100.0 * sum(fine_amount) FILTER (WHERE fine_amount >= 100000) / sum(fine_amount) FILTER (WHERE fine_amount > 0), 1) AS pct_dollars_100k_plus FROM public.cms_civil_money_penalties WHERE penalty_type = 'Fine' GROUP BY action_year ORDER BY action_year; -- 2023 under_10k 2,698 55.3% · 100k+ 280 dollars 39.4% -- 2024 under_10k 1,482 29.1% · 100k+ 462 dollars 40.4% -- 2025 under_10k 562 16.4% · 100k+ 362 dollars 42.4% -- 2026 under_10k 11 3.0% · 100k+ 34 dollars 39.4% (partial) -- ============================================================================ -- (5) Quarter by quarter — the median fine rises near-monotonically, confirming -- the annual trend is not an artifact of how the partial years split. The -- step up is concentrated at the start of 2024. The final quarter (2026 Q2, -- 18 fines) is the file's trailing edge and is shown for completeness only. -- ============================================================================ -- audit-claim: quarterly-vector SELECT date_trunc('quarter', penalty_date)::date AS quarter, count(*) FILTER (WHERE penalty_type = 'Fine') AS fine_actions, round(percentile_cont(0.5) WITHIN GROUP (ORDER BY fine_amount) FILTER (WHERE fine_amount > 0)) AS median_fine FROM public.cms_civil_money_penalties GROUP BY quarter ORDER BY quarter; -- 2023Q2 998 $ 7,444 2024Q2 1,184 $16,830 2025Q2 951 $19,503 -- 2023Q3 1,991 $ 8,469 2024Q3 1,183 $17,108 2025Q3 787 $19,135 -- 2023Q4 1,887 $ 8,424 2024Q4 1,032 $16,801 2025Q4 550 $21,645 -- 2024Q1 1,699 $13,674 2025Q1 1,135 $18,351 2026Q1 349 $22,320 -- 2026Q2 18 $21,568 (edge) -- ============================================================================ -- (6) Counts decline at the tail — and why that is NOT a fall in enforcement. -- The file is released 2026-05-01; recent actions report in with a lag, so -- 2025 and 2026 fine COUNTS are incomplete and understate true volume. This -- query is the caution behind the study: it reads the SIZE trend (queries -- 2-5, all per-action) as robust, and treats annual counts as lag-affected. -- ============================================================================ -- audit-claim: all-action-vector SELECT extract(year FROM penalty_date)::int AS action_year, count(*) AS actions, count(*) FILTER (WHERE penalty_type = 'Fine') AS fine_actions, count(*) FILTER (WHERE penalty_type = 'Payment Denial') AS payment_denials, count(DISTINCT ccn) AS facilities FROM public.cms_civil_money_penalties GROUP BY action_year ORDER BY action_year; -- 2023 5,539 fines 4,876 denials 663 facilities 2,798 (partial, from 2023-05-17) -- 2024 6,170 fines 5,098 denials 1,072 facilities 3,819 -- 2025 4,162 fines 3,423 denials 739 facilities 2,932 (lag-affected) -- 2026 406 fines 367 denials 39 facilities 371 (partial, to 2026-04-17)

Download the data: SQL · JSON · CSV

Cite this study

Citation-ready for researchers and AI.

Fonteum Research Bureau (2026). Nursing Home Fines Are Getting Bigger: A Three-Year Trend. CMS Nursing Home Compare, snapshot 2026-05-01. https://fonteum.com/research/nursing-home-fine-size-trend-2026

Check the chain

The cited snapshot identifies the federal file. Where an attestation is present, its file hash can be re-derived; figures are not individually signed.

1
Snapshot
cms-nursing-home-compare · 2026-05-01
2
Supplied file hash
Not supplied
3
Snapshot attestation
Inspect supplied artifact
Figures are not individually signed · check it in Attest →

Federal source citations

  1. CMS Nursing Home Compare · snapshot 2026-05-01 · federal source family · US-Government-Works

Fonteum LLC · June 16, 2026 · All figures trace to the frozen federal-data snapshot cited above.

What’s on file, by the numbers

Platform snapshot · 2026-08-14

13.4Mproviders & companiesProviders, organizations, owners, and facilities on file
26.2Msource-linked factsSource-linked field facts in the dated platform snapshot
90sources with dataDistinct snapshot source IDs with at least one positive record count
72fresh sourcesDistinct source IDs whose latest positive-data snapshot falls within the preceding 45 days
111sources integratedActive registry rows; integration does not establish a load
13state Medicaid jurisdictionsDistinct states represented in the state-exclusions serving table

Integrated, with-data, and fresh-observation counts are separate. No platform-wide source-completeness count is published. Completeness is source-specific and must be evaluated against the named source's expected scope. State coverage is a separate jurisdiction measure.

Source authority is record-specific

Use the issuer named on the record.

Fonteum spans federal, state, and global public publishers. A source page or returned record identifies its issuer and dataset where that metadata is available. A platform registry count does not assign every page to one authority or establish loaded, fresh, or complete coverage.

Browse source records and their stated limitations →

Reproducible by design

Inspect the evidence each published figure actually supplies.

Source and date

Research pages expose the named public file and observation date where those fields are available. Source-file SHA-256 coverage is separate; facts do not currently link deterministically to signatures.

Available derivation

Studies with a retained release and committed derivation link the SQL or method used. Other studies state the evidence and reproduction limits they actually have.

Daily observations

Dated table row-count observations can detect local drift. They do not imply that an upstream publisher released or Fonteum ingested new data that day.

Named medical review

Reviewed by Jennifer Montecillo, MD, medical reviewer. Non-practicing medical reviewer.

Read the full provenance and attestation methodology →

Request access