Premium · 12,000 members, four products, calendar 2025

Health Plan Claims and Reserves

A payer's year with its incurred truth

284,051 rows in 7 linked tables: 12,000 members, 128,688 member months, 140,659 claims and 2,052 appeals for a regional health plan's 2025, from enrollment and premium through every claim the plan decided, cut at the close of 31 December 2025. Beside it, the number no plan has on that day: what each month of 2025 finally cost once every late claim arrived and every appeal was decided.

Why it exists

A plan's actuaries reserve for claims not yet paid with methods like the chain ladder, and find out how good the reserve was only a year later. Here the answer is in the box. The claims are the plan's side of the revenue cycle: each one carries every cause its edits could have caught (an unidentified member, a duplicate, a late filing, a provider outside the network, a missing referral or authorization, other coverage, a clinical review), the one that did, and the money after the member's deductible, copay, coinsurance and out-of-pocket maximum.

Uses

What it is built for

  • Claims reserving (IBNR)

    build the paid triangle, estimate what is unpaid at the cut, and score the estimate against incurred_truth, split into claims not yet received, claims in process and appeals still to come.

  • Medical economics

    allowed and paid cost per member month by product, age, condition and risk score; medical loss ratio as reported at the cut and on the final cost; the costliest members' share of spend.

  • Payment integrity and denials

    denial rate and causes in count and in dollars, CARC codes, claims an edit should have stopped and paid anyway, appeal overturn rates by cause.

  • Claims operations

    lag from service to receipt by claim type, auto-adjudication, days to decide, the queue at year end.

  • Benefit design

    how deductibles, copays, coinsurance and the out-of-pocket maximum split the cost between the plan and its members, product by product.

  • Teaching and demos

    an actuarial or health economics course, a payer analytics portfolio, a dashboard or a claims system demo, with no PHI anywhere.

Project kit

A portfolio project you can check yourself

A brief from the CFO of a regional health plan, 18 questions from warm-up to stretch, and an answer key to grade against. Every answer was worked out twice on these files, in DuckDB SQL and separately in pandas, and the kit was written only when the two agreed.

The brief

2025 year-end medical economics review

From the CFO of a regional health plan · calendar 2025, as at 31 December 2025

  • BRIEF.mdthe request, from the CFO of a regional health plan
  • QUESTIONS.md18 questions, each asking for one value in a stated form
  • load.sqlevery table into DuckDB with the right types
  • check.pygrades your answers, names the misreading a wrong one matches
  • solutions/the answer key and the SQL behind every answer
  • WRITEUP_TEMPLATE.mdthe two pages a hiring manager reads

What the checker says

$ python kit/check.py kit/my_answers.csv
  Q05  wrong  that is the answer when you divide allowed amounts by premium instead of what the plan paid

A wrong answer is named for the mistake it matches, such as the wrong rows in a denominator or a mean where a median is asked, without giving the answer away. --reveal shows one answer and its SQL when you want it.

Warm-up
4
Core
8
Stretch
6
Read all 18 questions

Warm-up

  1. Q01. Member months. How many member months did the plan cover in 2025?
  2. Q02. Enrolled at year end. How many members were still enrolled on 31 December 2025?
  3. Q03. Premium earned. How much premium did the plan earn in 2025, in dollars?
  4. Q04. Claims in process. How many claims had the plan received but not yet decided at the cut?

Core

  1. Q05. Loss ratio as reported. What was the plan-wide medical loss ratio for 2025 as the books stood at the cut: paid on 2025 claims, including appeals paid, as a share of premium earned?
  2. Q06. PPO cost per member month. What was the allowed cost per member month for the commercial PPO, on claims decided by the cut?
  3. Q07. Denial rate. What share of the claims decided by the cut were denied?
  4. Q08. Costliest denial cause. Which denial cause accounts for the most billed dollars denied?
  5. Q09. Auto-adjudication. Of the claims decided by the cut, what share did the system decide without setting them aside for review?
  6. Q10. Authorization appeals. Of the appeals of prior-authorization denials decided by the cut, what share were overturned?
  7. Q11. Professional claim lag. What is the median number of days from service to receipt for professional claims?
  8. Q12. Out-of-pocket maximum. What share of commercial PPO members had reached their out-of-pocket maximum by the cut?

Stretch

  1. Q13. December completion. What share of what December 2025's services will finally cost had been paid by the cut?
  2. Q14. True unpaid liability. On the incurred truth, how much did the plan still owe at the cut for services in the fourth quarter of 2025 (October to December), in dollars?
  3. Q15. Chain-ladder reserve. Build the paid triangle from the files: each 2025 month of service by months until payment (claims by their adjudication month, appeals by their decision month). Using volume-weighted development factors and a tail factor of 1, what unpaid amount does the chain ladder estimate at the cut, in dollars?
  4. Q16. How far off the reserve is. By how much does the chain-ladder estimate differ from the true unpaid liability, as a percentage of the truth (negative when it is too low)?
  5. Q17. Paid against the rules. How much did the plan pay on claims that one of its own edits had flagged (any cause_ column true), in dollars?
  6. Q18. Medicare Advantage, incurred. What is the Medicare Advantage medical loss ratio for 2025 once every claim is in: final paid over premium, from the incurred truth?

In the data

What the full files show

Computed from every row of the full dataset when it was packaged, not drawn as a target. The free preview is a slice of the same data.

How much of each month was paid by the cut

0%50%100%Jan 2025Mar 2025May 2025Jul 2025Sep 2025Nov 2025
Paid by 31 December 2025 as a share of what each month of service finally cost, from incurred_truth. The last months are far from complete, December mostly unpaid: their claims have not all arrived. This is the gap a reserve fills.

Medical loss ratio, at the cut and final

  • Medicaid managed care78.7%89%
  • Medicare Advantage76%86.9%
  • commercial HMO74%84%
  • commercial PPO73.5%83.1%
  • At the cut
  • Final
Paid claims over premium earned by product: as the books stood at the cut, and once every 2025 claim is in.

Allowed cost per member month, by risk score

  • lowest$57
  • second$173
  • middle$341
  • fourth$621
  • highest$1,795
Members in fifths of the risk score in members, lowest first: cost rises steeply with it, as it does in a real plan.

Denials by cause, in claims and in dollars

  • out of network28.3%19.9%
  • other coverage primary20.4%11.3%
  • duplicate claim13.2%5.8%
  • no referral10.5%1.7%
  • no prior authorization8.1%29.2%
  • filed late6.3%6.6%
  • member not identified6.3%5.1%
  • benefit not covered4.3%2.4%
  • not medically necessary2.5%18%
  • Share of denials
  • Share of denied dollars
Network denials are the most numerous; authorization and medical-necessity denials, on admissions and surgery, carry the most dollars.

Answer key

The truth, in its own columns

What a model, a control chart or an analyst is trying to find ships next to the data, so you can score an answer instead of guessing at it. Each line is measured from the full files.

  • incurred_truth.unpaid_at_cutWhat each month of 2025 still owed at the cut, once every late claim and appeal is counted: the reserve's answer.0 to 1.78M, mean 193,387
  • incurred_truth.not_received_at_cutThe part of it on claims that had not reached the plan by the cut, the IBNR proper.0 to 1.44M, mean 130,562
  • claims.cause_no_prior_authOne of nine cause_* flags: every problem an edit could catch on the claim, denied or not.true on 0.8% of rows
  • claims.denial_causeThe edit that denied the claim, behind its CARC code.9 values: out of network, other coverage primary, duplicate claim…, 91.7% empty
  • members.risk_scoreThe member's expected cost against the plan's average member, which drives how many claims they make.0.046 to 28.92, mean 1.5
  • members.chronic_conditionThe condition behind the risk score.7 values: none, diabetes, COPD or asthma…
  • appeals.outcomeWhether a denial held up on appeal.2 values: upheld, overturned, 7.5% empty

How it behaves

Measured on the files you download

Each of these is computed from the delivered rows when the dataset is packaged, not written as a target.

  • Premium earned $90.8 million. Plan-wide the medical loss ratio reads 75% on what had been paid by the cut and 85% once every 2025 claim is in. The gap is $9.3 million still owed at the cut, 68% of it on claims not yet received.
  • November was 63% paid at the cut and December 16%: most of a month's cost arrives after it closes.
  • Cost follows risk: the costliest 5% of members carry 47% of allowed spend, about as the Medical Expenditure Panel Survey finds for the US population.
  • 8.4% of decided claims were denied; 85% were decided without review. Professional claims arrive in a median 10 days, institutional ones in 21. 42% of decided appeals were overturned.
  • About 1,700 claims were received but not yet decided at the cut.

Audit

107 of 107 checks pass

Re-run on the delivered files by an independent script with plain pandas. The results ship in INTEGRITY.json.

  • every key resolves and every primary key is unique; one member month for every month a member was covered, none outside it; every claim's member, product and month are its member month's, and its provider suits its service;
  • premium recomputed from each product's rate card: commercial by age band and never by health, Medicare Advantage by risk score, Medicaid by rate cell;
  • every edit recomputed from the rows it comes from (the filing limit, the network and the product's out-of-network benefit, the referral and authorization rules); every denial's cause is flagged on its claim and its CARC code matches it;
  • allowed recomputed from the provider's charges, the product's fee level and the provider's contract; the deductible and the out-of-pocket maximum rebuilt in the order claims were decided, and no member pays past either; paid is allowed less the member's share;
  • nothing is dated after the cut, a claim in process shows no decision, appeals follow their denial; the incurred truth's member months and premium equal the member months table, and what it says was paid by the cut equals the files.
All 107 checks
  • ✓ products.product_id unique
  • ✓ providers.provider_id unique
  • ✓ members.member_id unique
  • ✓ member_months.member_month_id unique
  • ✓ claims.claim_id unique
  • ✓ appeals.appeal_id unique
  • ✓ members.product_id -> products: 0 orphans of 12,000
  • ✓ members.pcp_provider_id -> providers: 0 orphans of 12,000
  • ✓ member_months.member_id -> members: 0 orphans of 128,688
  • ✓ member_months.product_id -> products: 0 orphans of 128,688
  • ✓ claims.member_month_id -> member_months: 0 orphans of 140,659
  • ✓ claims.member_id -> members: 0 orphans of 140,659
  • ✓ claims.product_id -> products: 0 orphans of 140,659
  • ✓ claims.provider_id -> providers: 0 orphans of 140,659
  • ✓ appeals.claim_id -> claims: 0 orphans of 2,052
  • ✓ appeals.member_id -> members: 0 orphans of 2,052
  • ✓ appeals.product_id -> products: 0 orphans of 2,052
  • ✓ members.member_code unique
  • ✓ claims.claim_number unique
  • ✓ appeals.appeal_number unique
  • ✓ providers.provider_code unique
  • ✓ one appeal per denied claim at most
  • ✓ four products, one of each type
  • ✓ only HMO and Medicaid need referrals; only the PPO covers out-of-network care
  • ✓ Medicaid members pay nothing
  • ✓ in-network providers have a contract rate, out-of-network ones none
  • ✓ every provider type has providers outside the network
  • ✓ only specialists have a specialty
  • ✓ coverage starts on the first of a month
  • ✓ coverage ends on the last of a month, in 2025
  • ✓ coverage ends after it starts
  • ✓ a termination reason exactly when coverage ended
  • ✓ Medicare Advantage members are 65 or over, but for a few
  • ✓ age within its band
  • ✓ member product type matches their product
  • ✓ every member's PCP is an in-network primary care provider
  • ✓ one member month for every month covered, no more, no less: 0 members differ
  • ✓ no member has a month twice
  • ✓ member month inside the member's coverage
  • ✓ member month carries the member's product, age band and risk
  • ✓ premium is its rate cell's, within a few percent: ratio 0.883 to 1.137
  • ✓ commercial premium rates by age band only, not by health
  • ✓ Medicare Advantage premium follows the risk score
  • ✓ claim member and product are its member month's
  • ✓ service date inside its covered month
  • ✓ every claim's provider suits its service
  • ✓ in-network flag is the provider's
  • ✓ institutional claims only from hospitals and surgery centers, for facility services
  • ✓ a stay has a length and a discharge, nothing else does
  • ✓ clinic services on weekdays; emergencies and admissions any day
  • ✓ received after the service (after discharge for a stay)
  • ✓ days to receipt is from the service date
  • ✓ received on weekdays
  • ✓ filed late exactly when received past the product's limit
  • ✓ out of network flagged only where the product has no such benefit, emergencies aside
  • ✓ a referral is required exactly where the product asks
  • ✓ no referral flagged exactly when one was needed and not on file
  • ✓ inpatient stays always need authorization
  • ✓ no authorization flagged exactly when one was needed and not on file
  • ✓ other coverage flagged only for members who have it
  • ✓ medical necessity is judged only on claims set aside for review
  • ✓ set aside for review: inpatient mostly, every out-of-network claim
  • ✓ auto-adjudicated is the claims not set aside
  • ✓ every denial's cause is flagged on the claim
  • ✓ no claim is denied without a flagged cause
  • ✓ CARC code and category follow the cause
  • ✓ the edits let a few flagged claims through, and only a few: 5.8% of flagged claims paid
  • ✓ in process exactly when not yet adjudicated
  • ✓ a claim in process shows no decision yet
  • ✓ a decided claim carries the whole decision
  • ✓ nothing is dated after the cut
  • ✓ decided after it was received, on a weekday
  • ✓ days to adjudicate is from receipt
  • ✓ billed above allowed on every paid claim
  • ✓ allowed is the service at the product's fee level and the provider's contract: largest gap 0.0100
  • ✓ a denied claim allows and pays nothing
  • ✓ paid is allowed less what the member owes
  • ✓ member owes copay, deductible and coinsurance, less what the out-of-pocket maximum takes off
  • ✓ a copay is the product's for that service, never more than allowed
  • ✓ deductible accumulates in the order claims are decided, to the product's amount: largest gap 0.0000
  • ✓ coinsurance is the product's share of what the deductible leaves: largest gap 0.0100
  • ✓ no member pays past the out-of-pocket maximum: largest gap 0.0000
  • ✓ Medicaid members owe nothing
  • ✓ appeals only on denied claims, for the claim's cause
  • ✓ appeal member and product are the claim's
  • ✓ filed after the denial, on a weekday
  • ✓ decided exactly when it has a decision date
  • ✓ decided after filing, on a weekday
  • ✓ days to decision is from filing
  • ✓ an overturned appeal pays, an upheld one does not
  • ✓ an appeal pays no more than was billed
  • ✓ expedited only for inpatient stays
  • ✓ incurred truth's member months and premium are the member months table's
  • ✓ claims not received are the incurred claims missing from the files
  • ✓ paid by the cut is what the files show paid, claims and decided appeals: largest gap 0.0000
  • ✓ unpaid at the cut is final less paid, and is claims in process, claims not received and appeals to come
  • ✓ nothing is paid back: final is never below paid by the cut
  • ✓ older months are more complete at the cut than December: January 100%, November 63%, December 16%
  • ✓ plan-wide medical loss ratio in the range plans report (80 to 90%): 85.2%
  • ✓ Medicare Advantage costs more per member than commercial, Medicaid less
  • ✓ the costliest 5% of members carry about half the spend (MEPS: 50%): 46.8%
  • ✓ a share of members has no paid claim all year (MEPS: about 15%): 9.8%
  • ✓ cost rises with the risk score, quintile by quintile: $57, $173, $341, $621, $1,795
  • ✓ denial rate in the range plans report (5 to 15% of decided claims): 8.4%
  • ✓ auto-adjudication rate in the range plans report (75 to 90%): 84.7%
  • ✓ professional claims arrive faster than institutional: median 10 against 21 days
  • ✓ about four in ten decided appeals are overturned (KFF: plans overturn many appealed denials): 41.5%

Tables

7 tables, 284,051 rows

Every table in the zip with what it holds, its rows and its columns. The bars are on a log scale, so the small reference tables still show.

  • claimsEvery claim received by the cut: service, provider, network, lag to receipt, referral and authorization, every cause an edit could catch, review, the decision with CARC code, allowed, deductible, copay, coinsurance, the out-of-pocket cap, paid140,659 rows · 45 cols
  • member_monthsOne row for every month a member was covered, with the premium it earned (age-rated, risk-paid or by rate cell)128,688 rows · 8 cols
  • membersAge, sex, region, product, chronic condition, risk score, other coverage, attributed PCP, enrollment dates and why coverage ended12,000 rows · 15 cols
  • appealsAppeals of denied claims filed by the cut: who filed, expedited or not, decision, outcome and what an overturn paid2,052 rows · 14 cols
  • providersPrimary care, specialists, hospitals, surgery centers, labs, imaging, behavioral health and therapy: network status, contract rate against the plan's standard rates, charge markup600 rows · 9 cols
  • incurred_truthThe hindsight table: each 2025 month of service by product, its member months and premium, what it finally cost (claims still to arrive and appeals still to be decided included) and what had been paid by the cut48 rows · 13 cols
  • productsThe four products (commercial HMO and PPO, Medicare Advantage, Medicaid managed care): fee level, deductible, out-of-pocket maximum, coinsurance, copays, referral rule, out-of-network benefit and rate, timely-filing limit4 rows · 16 cols

Explore

Every table, profiled

Each column's type, spread, empties and most common values, measured from the full CSVs. Switch to the first rows to see the data as it sits in the file.

claims.csv

140,659 rows · 45 columns · 4 foreign keys

claim_idprimary key
unique on every row
140,659 distinctno empties
claim_numbertext
  • “CLM000000001”
  • “CLM000000002”
  • “CLM000000003”
140,659 distinct12 chars on averageno empties
member_idforeign key
points to members.member_id
10,937 distinctno empties
member_month_idforeign key
points to member_months.member_month_id
47,744 distinctno empties
product_idforeign key
points to products.product_id
4 distinctno empties
provider_idforeign key
points to providers.provider_id
600 distinctno empties
service_categorycategory
  • laboratory
    25%
  • office visit
    23%
  • specialist visit
    20%
  • imaging
    11%
  • physical therapy
    5.8%
  • 4 more values · 14%
9 valuesno empties
claim_typecategory
  • professional
    91%
  • institutional
    8.8%
2 valuesno empties
in_networkyes / no
true · 94%false · 5.8%
no empties
service_datedate
Jan 2025Dec 2025
2025-01-01 to 2025-12-30no empties
length_of_staynumber
122
mean 4.49median 41 to 5698% empty
discharge_datedate
Jan 2025Dec 2025
2025-01-03 to 2025-12-2398% empty
received_atdate
Jan 2025Dec 2025
2025-01-02 to 2025-12-31no empties
days_to_receiptnumber
1149
mean 15.74median 101 to 334no empties
billed_amountnumber
12.56log scale91,233
mean 2,457.1median 2892.33 to 761,815no empties
referral_requiredyes / no
true · 15%false · 85%
no empties
referral_on_fileyes / no
true · 93%false · 7.1%
85% empty
prior_auth_requiredyes / no
true · 9.0%false · 91%
no empties
prior_auth_on_fileyes / no
true · 91%false · 8.9%
91% empty
pended_for_reviewyes / no
true · 15%false · 85%
no empties
auto_adjudicatedyes / no
true · 85%false · 15%
no empties
cause_member_not_identifiedyes / no
true · 0.6%false · 99%
no empties
cause_duplicateyes / no
true · 1.1%false · 99%
no empties
cause_filed_lateyes / no
true · 0.6%false · 99%
no empties
cause_out_of_networkyes / no
true · 2.7%false · 97%
no empties
cause_no_referralyes / no
true · 1.1%false · 99%
no empties
cause_no_prior_authyes / no
true · 0.8%false · 99%
no empties
cause_other_coverage_primaryyes / no
true · 2.0%false · 98%
no empties
cause_not_medically_necessaryyes / no
true · 0.3%false · 100%
no empties
cause_benefit_not_coveredyes / no
true · 0.4%false · 100%
no empties
claim_statuscategory
  • paid
    90%
  • denied
    8.3%
  • in process
    1.2%
3 valuesno empties
adjudicatedyes / no
true · 99%false · 1.2%
no empties
adjudicated_atdate
Jan 2025Dec 2025
2025-01-03 to 2025-12-311.2% empty
days_to_adjudicatenumber
138
mean 4median 21 to 1531.2% empty
deniedyes / no
true · 8.4%false · 92%
1.2% empty
denial_causecategory
  • out of network
    28%
  • other coverage primary
    20%
  • duplicate claim
    13%
  • no referral
    10%
  • no prior authorization
    8.1%
  • 4 more values · 19%
9 values92% empty
carc_codenumber
18288
mean 130.7median 9618 to 28892% empty
denial_categorycategory
  • network
    28%
  • coordination of benefits
    20%
  • duplicate
    13%
  • referral
    10%
  • authorization
    8.1%
  • 4 more values · 19%
9 values92% empty
allowed_amountnumber
019,759
mean 564median 96.220 to 235,4121.2% empty
deductible_amountnumber
01,045.7
mean 22.84median 00 to 1,5001.2% empty
copay_amountnumber
0300
mean 21.98median 00 to 3001.2% empty
coinsurance_amountnumber
03,239.4
mean 62.64median 00 to 46,7821.2% empty
oop_max_reductionnumber
01,071.8
mean 25.42median 00 to 41,7821.2% empty
member_responsibilitynumber
02,813.2
mean 82.03median 22.050 to 6,5001.2% empty
paid_amountnumber
017,221
mean 482median 70.190 to 228,9121.2% empty

Keys

Every join resolves

11 foreign keys, 850,168 references checked against the table each one points at. None points at a row that does not exist.

appeals

  • claim_idclaims.claim_id0 orphans
  • member_idmembers.member_id0 orphans
  • product_idproducts.product_id0 orphans

claims

  • member_idmembers.member_id0 orphans
  • member_month_idmember_months.member_month_id0 orphans
  • product_idproducts.product_id0 orphans
  • provider_idproviders.provider_id0 orphans

member_months

  • member_idmembers.member_id0 orphans
  • product_idproducts.product_id0 orphans

members

  • product_idproducts.product_id0 orphans
  • pcp_provider_idproviders.provider_id0 orphans

In the zip

What you get

  • CSVs: one file per table, with a header row and ISO dates.
  • README.md: what each table holds, how the data behaves (measured), what was checked and what to know.
  • ANSWER_KEY.md: what happened at the plant, when, where it shows and the query that finds it.
  • INTEGRITY.json: the 107 audit checks and their results.
  • RECIPE.json: the Misata blueprint that made these exact rows, seed 20250102.
  • kit/: the project kit: the brief, 18 questions, load.sql for DuckDB, check.py, the answer key with its SQL, and the write-up template.
All 21 files
  • products.csv546 B
  • providers.csv42 KB
  • members.csv1.2 MB
  • member_months.csv7.7 MB
  • claims.csv37.7 MB
  • appeals.csv248 KB
  • incurred_truth.csv6 KB
  • README.md9 KB
  • INTEGRITY.json13 KB
  • RECIPE.json40 KB
  • kit/BRIEF.md2 KB
  • kit/QUESTIONS.md4 KB
  • kit/README.md1 KB
  • kit/WRITEUP_TEMPLATE.md2 KB
  • kit/check.py3 KB
  • kit/load.sql847 B
  • kit/my_answers.csv100 B
  • kit/questions.json5 KB
  • kit/solutions/ANSWER_KEY.md11 KB
  • kit/solutions/key.json9 KB
  • kit/solutions/solutions.sql5 KB

Before you use it

Things to know

  • The files are the plan's as at the close of 31 December 2025: claims received by then, decided or not, and appeals filed by then. Claims for 2025 services that arrived later are in incurred_truth only, as counts and dollars.
  • A claim records the first edit that caught it; an edit does not catch every claim it should, and the cause_* columns are every cause present. An overturned appeal is paid in appeals; the claim stays denied.
  • Final paid in incurred_truth counts each claim's first decision and its appeal, if overturned. Corrected claims, coordination-of-benefits recoveries and provider refunds are not modelled.
  • Medical claims only: no pharmacy benefit, capitation or risk-adjustment settlements, and each provider bills one claim for a service rather than separate facility and professional claims.
  • CARC codes are the real public code set. Amounts are illustrative: services are priced from this dataset's own rates, not any real fee schedule. The plan, its providers and members are invented; no real organization or person is represented, and no record is derived from real data.

Questions

Before you buy

Is this real data?
No. This is synthetic data generated by software. No row describes a real person, company, patient, store, machine or transaction. The patterns are modelled to be realistic and the statistics quoted are measured on these files, but they do not describe any real population or market. Use it for learning, testing, demos, benchmarks and prototyping, not as evidence about the real world. Provided as is, without warranty.
What do I get?
One zip of 8.1 MB: 7 linked tables and 284,051 rows as CSV, a README of what each table holds and how the data behaves, INTEGRITY.json with the 107 audit checks, and RECIPE.json, the Misata blueprint that made these exact rows (seed 20250102).
Can I try it before buying?
Yes. The free preview (195 KB) is a slice of the same data with the keys intact, plus the README, so you can load it and check it fits before you pay.
How was it checked?
107 of 107 checks pass, re-run on the delivered files by an independent script with plain pandas: every key resolves and every primary key is unique; one member month for every month a member was covered, none outside it; every claim's member, product and month are its member month's, and its provider suits its service; premium recomputed from each product's rate card: commercial by age band and never by health, Medicare Advantage by risk score, Medicaid by rate cell; every edit recomputed from the rows it comes from (the filing limit, the network and the product's out-of-network benefit, the referral and authorization rules); every denial's cause is flagged on its claim and its CARC code matches it; allowed recomputed from the provider's charges, the product's fee level and the provider's contract; the deductible and the out-of-pocket maximum rebuilt in the order claims were decided, and no member pays past either; paid is allowed less the member's share; nothing is dated after the cut, a claim in process shows no decision, appeals follow their denial; the incurred truth's member months and premium equal the member months table, and what it says was paid by the cut equals the files.
Is there a project to do with it?
Yes. The zip has a project kit: a brief from the CFO of a regional health plan (2025 year-end medical economics review), 18 questions from warm-up to stretch, an answer key with the SQL behind every answer, a checker (kit/check.py) that grades your answers and names the common misreading a wrong one matches, and a write-up template. Every answer was worked out twice on these files, in DuckDB SQL and separately in pandas.
Can I use it commercially?
Yes: in any project, course, benchmark, demo or product, commercial or not. You may not resell or redistribute the dataset itself as a dataset.
What should I know before using it?
The files are the plan's as at the close of 31 December 2025: claims received by then, decided or not, and appeals filed by then. Claims for 2025 services that arrived later are in incurred_truth only, as counts and dollars. A claim records the first edit that caught it; an edit does not catch every claim it should, and the cause_ columns are every cause present. An overturned appeal is paid in appeals; the claim stays denied. Final paid in incurred_truth counts each claim's first decision and its appeal, if overturned. Corrected claims, coordination-of-benefits recoveries and provider refunds are not modelled. Medical claims only: no pharmacy benefit, capitation or risk-adjustment settlements, and each provider bills one claim for a service rather than separate facility and professional claims. CARC codes are the real public code set. Amounts are illustrative: services are priced from this dataset's own rates, not any real fee schedule. The plan, its providers and members are invented; no real organization or person is represented, and no record is derived from real data.
Can I get a bigger or different version?
Yes. RECIPE.json runs in Misata Studio or through Misata's MCP server to make a variant, or ask us to build one to your spec.

Want it bigger, in another setting, or with your own columns? Have us build it.

More premium datasets

All 7
  • Paid by the cut as a share of the ultimate loss

    Regional insurer, 12 territories, accident years 2021 to 2025

    An insurer's book with its ultimate truth

    Answer key

    • ibnr_true
    • ultimate_on_claims_not_reported
    • development_on_reported
    • +3 more
    Rows
    357,438
    Tables
    6
    Checks
    67 of 67
    Free preview18-question projectProfile and preview
  • First-pass denial rate, by month of service

    10 payers, 8 facilities, calendar 2025

    A year of revenue cycle with the reason behind every denial

    Answer key

    • cause_coverage_inactive
    • denial_cause
    • preventable
    • +6 more
    Rows
    356,609
    Tables
    8
    Checks
    99 of 99
    Free preview18-question projectProfile and preview
  • Weekly sales, at regular price and on promotion

    Grocery chain, 10 stores, fiscal 2024 and 2025

    Two fiscal years of a grocery chain, from the shelf to the receipt

    Answer key

    • baseline_units
    • price_effect
    • promo_lift
    • +7 more
    Rows
    2,790,852
    Tables
    14
    Checks
    117 of 117
    Free preview18-question projectProfile and preview