Healthcare Claims and Revenue Cycle Analytics Set (US)

HLTRCM999· 1.9M records · 50 tables · v1.0.0 · Updated 2026-09-01
Healthcare Healthcare Claims and Revenue Cycle Dataset API
CSV JSON SQLhealthcarerevenue-cyclemedical-claimsdenial-managementclaims-analyticspayer-contractsunderpayment-recoveryaccounts-receivablemedical-billingus-healthcare

Overview

HLTRCM999 follows a synthetic United States provider organisation from registration to cash: eligibility, prior authorisation, encounter, coding, charge capture, claim assembly, scrubbing, submission, clearinghouse acknowledgement, adjudication, remittance, denial, rework, appeal, patient statement, collection agency placement and write off. Fifty linked tables, and every stage joins to the one before it. This is a billing warehouse, not a clinical one. Diagnoses and services are present because they drive the money, not because the set is trying to be a medical record. That distinction is deliberate: a synthetic clinical record invites people to draw conclusions about medicine from generated data, and a billing warehouse does not. CPT is absent by necessity rather than oversight. The code set and its descriptors are American Medical Association copyright and licensed, so a commercial dataset cannot carry them. Every procedure here is HCPCS Level II or a UB-04 revenue code, both published freely by CMS and the National Uniform Billing Committee, and the revenue codes matter more than they look: they carry the facility side of an institutional claim, which is where most of a hospital bill actually sits. The contract is what makes the set analysable. Negotiated rates by service category mean every line carries the allowed amount the contract required beside the one the payer actually paid, so underpayment against contract is computable rather than asserted, and most of it was never worked, which is exactly the situation in the field. Cost sharing is modelled per payer class rather than as one shape: Medicaid and workers compensation carry none, Medicare Part B is a small deductible then a flat twenty percent, and only commercial looks like the textbook diagram. Deductibles and out of pocket maximums carry an external component, because patients spend most of both at providers this organisation never sees. Three things move across the window. A large commercial payer tightens prior authorisation in March 2024 and authorisation denials against it climb. A claim scrubber goes in in January 2025 and the missing information denial that dominates every real denial mix falls away. And every January the deductibles reset, which is the most reliable seasonal pattern in United States healthcare receivables. Identifiers come from keyed hashes, so no column runs 0001, 0002, 0003.

Analytics

Four entries from the packaged tables, with the performance the dataset records for them. Every value below is read from the shipped files.

ClaimsCLAIMSregistration through to adjudication
58,343Claims
88.2%Clean claim rate
Claims notified, countClaims notified, count
1 / 4

Row Counts by Table

Counted from the files that ship, not estimated.

TableRows
rcm_claims58,343
rcm_claim_lines182,374
rcm_charges192,622
rcm_encounters61,915
rcm_encounter_diagnoses123,321
rcm_encounter_procedures121,619
rcm_patients21,000
rcm_coverage24,997
rcm_patient_addresses23,918
rcm_patient_contacts40,521
rcm_eligibility_checks54,853
rcm_authorisations15,726
rcm_claim_submissions61,186
rcm_claim_status_history261,340
rcm_remittances56,216
rcm_remittance_lines175,712
rcm_adjustments178,032
rcm_payments85,575
rcm_denials4,775
rcm_appeals1,074
rcm_underpayments3,183
rcm_patient_statements43,226
rcm_collections6,133
rcm_write_offs12,455
rcm_ar_snapshots6,639
rcm_monthly_revenue_cycle42
rcm_monthly_payer_performance1,091
rcm_monthly_department_metrics10,539
rcm_monthly_denial_summary416
rcm_payers26
rcm_payer_plans185
rcm_contracts1,150
rcm_contract_rates19,587
rcm_facilities71
rcm_departments318
rcm_providers1,139
rcm_payer_types10
rcm_denial_reasons15
rcm_claim_statuses11
rcm_adjustment_types7
rcm_ar_buckets6
rcm_icd_codes48
rcm_icd_chapters18
rcm_hcpcs_codes36
rcm_revenue_codes24
rcm_place_of_service14
rcm_specialties22
rcm_facility_types10
rcm_cities86
rcm_states39

Table Relationships

One parent record and seven child tables, each joined back on the same key.

70%
Loading diagram

Schema

Every table ships with typed columns, referential integrity, and documentation.

rcm_claims· Rows: 58,343
ColumnTypeDescription
claim_idvarchar(24)Surrogate key for the claim.
encounter_idvarchar(24)Encounter the claim was raised from.
patient_idvarchar(16)Patient the claim relates to.
facility_idvarchar(16)Facility that billed the claim.
coverage_idvarchar(16)Coverage the claim was filed against.
payer_idvarchar(16)Payer the claim was filed to.
payer_type_codevarchar(24)Payer category of the coverage billed.

+21 more columns in rcm_claims. The full schema ships with the download.

rcm_claim_lines· Rows: 182,374
ColumnTypeDescription
claim_line_idvarchar(24)Surrogate key for the claim line.
claim_idvarchar(24)Claim the line belongs to.
charge_idvarchar(24)Charge the line was billed from.
line_numbervarchar(8)Position of the line on the claim.
hcpcs_codevarchar(8)HCPCS Level II code on a professional line.
revenue_codevarchar(8)UB-04 revenue code on an institutional line.
line_modifiervarchar(16)HCPCS modifier carried on the line.

+12 more columns in rcm_claim_lines. The full schema ships with the download.

rcm_charges· Rows: 192,622
ColumnTypeDescription
charge_idvarchar(24)Surrogate key for the charge line.
encounter_procedure_idvarchar(24)Coded service the charge was raised from. Empty on an institutional revenue code line, which is billed from the facility record rather than from a coded procedure.
encounter_idvarchar(24)Encounter the charge belongs to.
patient_idvarchar(16)Patient the charge was raised against.
facility_idvarchar(16)Facility that raised the charge.
department_idvarchar(16)Department that raised the charge.
rendering_provider_idvarchar(16)Provider who delivered the service.

+20 more columns in rcm_charges. The full schema ships with the download.

rcm_encounters· Rows: 61,915
ColumnTypeDescription
encounter_idvarchar(24)Surrogate key for the encounter.
patient_account_numbervarchar(16)Patient account number for this episode, which is the number that appears on a statement.
patient_idvarchar(16)Patient seen.
facility_idvarchar(16)Facility the encounter took place at.
department_idvarchar(16)Department that delivered the care.
rendering_provider_idvarchar(16)Provider who delivered the care.
coverage_idvarchar(16)Coverage that was in force on the date of service. A visit under lapsed coverage points at the lapsed record, because that is what the claim was filed against.

+8 more columns in rcm_encounters. The full schema ships with the download.

rcm_encounter_diagnoses· Rows: 123,321
ColumnTypeDescription
encounter_diagnosis_idvarchar(24)Surrogate key for the coded diagnosis.
encounter_idvarchar(24)Encounter the diagnosis was coded on.
icd10_codevarchar(16)ICD-10-CM diagnosis code.
diagnosis_rolevarchar(16)Whether the diagnosis is the principal one or a secondary.
diagnosis_sequenceintegerPosition of the diagnosis in the coded sequence, with the principal first.
is_principalvarchar(16)Y when this is the principal diagnosis for the encounter.
present_on_admissionvarchar(16)Present on admission indicator, which affects payment on an inpatient claim.

+1 more columns in rcm_encounter_diagnoses. The full schema ships with the download.

rcm_encounter_procedures· Rows: 121,619
ColumnTypeDescription
encounter_procedure_idvarchar(24)Surrogate key for the coded service.
encounter_idvarchar(24)Encounter the service was delivered on.
hcpcs_codevarchar(8)HCPCS Level II code for the service.
procedure_modifiervarchar(16)HCPCS modifier where one applies, for example 25 for a distinct evaluation or LT and RT for laterality.
service_unitsintegerUnits of the service delivered.
procedure_sequenceintegerPosition of the service within the encounter.
performed_ondateDate the service was performed, which can fall within an inpatient stay rather than on the admission date.

+2 more columns in rcm_encounter_procedures. The full schema ships with the download.

rcm_patients· Rows: 21,000
ColumnTypeDescription
patient_idvarchar(16)Surrogate key for the patient.
medical_record_numbervarchar(16)Medical record number as the provider would hold it. Derived from a keyed hash rather than issued in sequence.
first_namevarchar(16)Patient first name. The person is generated.
middle_initialvarchar(16)Patient middle initial where one is recorded.
last_namevarchar(16)Patient last name.
sexvarchar(16)Sex as recorded for billing purposes.
date_of_birthdateDate of birth.

+9 more columns in rcm_patients. The full schema ships with the download.

rcm_coverage· Rows: 24,997
ColumnTypeDescription
coverage_idvarchar(16)Surrogate key for the coverage record.
patient_idvarchar(16)Patient the coverage belongs to.
plan_idvarchar(16)Benefit plan providing the coverage. Empty for self pay.
payer_type_codevarchar(24)Payer category of the coverage.
member_idvarchar(16)Member identifier as it appears on the card. Alphanumeric with a plan prefix, never a running number.
group_numbervarchar(8)Employer or plan group number.
coverage_rankvarchar(16)Whether this coverage is primary or secondary for the patient.

+5 more columns in rcm_coverage. The full schema ships with the download.

rcm_patient_addresses· Rows: 23,918
ColumnTypeDescription
address_idvarchar(16)Surrogate key for the address record.
patient_idvarchar(16)Patient the address belongs to.
address_typevarchar(16)Whether the address is the primary, a previous or a separate mailing address.
street_addressvarchar(32)Street number and name.
unit_designatorvarchar(16)Secondary unit designator such as an apartment or suite, using the USPS abbreviations.
city_idvarchar(16)City of the address.
state_codevarchar(8)State of the address.

+4 more columns in rcm_patient_addresses. The full schema ships with the download.

rcm_patient_contacts· Rows: 40,521
ColumnTypeDescription
contact_idvarchar(16)Surrogate key for the contact record.
patient_idvarchar(16)Patient the contact belongs to.
contact_typevarchar(16)Whether the contact is a mobile number, home number or email address.
contact_valuevarchar(56)The contact value. Telephone numbers use the 555 exchange reserved for fictitious use, and email domains were resolved at build time and discarded if they answered.
is_preferredvarchar(16)Y when this is the preferred contact method.
sms_consentvarchar(16)Y when the patient has consented to text message contact. Empty for contact types where it does not apply.
verified_ondateDate the contact detail was last verified.

+1 more columns in rcm_patient_contacts. The full schema ships with the download.

rcm_eligibility_checks· Rows: 54,853
ColumnTypeDescription
eligibility_check_idvarchar(24)Surrogate key for the eligibility verification.
encounter_idvarchar(24)Encounter the check was run for.
coverage_idvarchar(16)Coverage that was checked.
checked_ondateDate the eligibility request was sent.
eligibility_resultvarchar(24)What came back: active, inactive, not found, or the payer was unavailable. A visit that went ahead on an inactive result is very likely to be denied.
reported_deductible_usdintegerAnnual deductible the payer reported on the response.
reported_deductible_met_usdintegerDeductible the payer reported as already met, most of which was spent at other providers this organisation never sees.

+3 more columns in rcm_eligibility_checks. The full schema ships with the download.

rcm_authorisations· Rows: 15,726
ColumnTypeDescription
authorisation_idvarchar(24)Surrogate key for the authorisation request.
encounter_idvarchar(24)Encounter the authorisation was sought for.
coverage_idvarchar(16)Coverage the authorisation was sought under.
authorisation_numbervarchar(16)Authorisation number issued by the payer. Empty where authorisation was refused or never obtained.
requested_ondateDate the authorisation was requested.
decided_ondateDate the payer decided.
authorisation_statusvarchar(24)Whether the authorisation was approved, denied, still pending or never requested.

+4 more columns in rcm_authorisations. The full schema ships with the download.

rcm_claim_submissions· Rows: 61,186
ColumnTypeDescription
submission_idvarchar(24)Surrogate key for the submission attempt.
claim_idvarchar(24)Claim submitted.
submission_attemptintegerAttempt number. Attempt two is a corrected claim sent after a denial, which is how most denials are actually resolved.
submitted_ondateDate this attempt was sent.
submission_methodvarchar(24)How the claim was sent, for example an EDI 837, a corrected 837, a payer portal or paper.
clearinghouse_batch_idvarchar(8)Batch the claim was transmitted in.
acknowledgement_statusvarchar(16)Whether the clearinghouse or payer accepted or rejected the transmission. A rejection is a front end failure and is not an adjudication.

+3 more columns in rcm_claim_submissions. The full schema ships with the download.

rcm_claim_status_history· Rows: 261,340
ColumnTypeDescription
status_history_idvarchar(24)Surrogate key for the status transition.
claim_idvarchar(24)Claim the transition belongs to.
sequence_numbervarchar(8)Position of the transition in the claim history.
claim_status_codevarchar(24)Status the claim moved to.
changed_atvarchar(32)Timestamp of the transition.
previous_status_codevarchar(16)Status the claim moved from. Empty on the first transition.
status_sourcevarchar(24)What reported the transition, for example the clearinghouse, an 835 remittance or a member of billing staff.

+1 more columns in rcm_claim_status_history. The full schema ships with the download.

rcm_remittances· Rows: 56,216
ColumnTypeDescription
remittance_idvarchar(24)Surrogate key for the remittance advice.
claim_idvarchar(24)Claim the remittance relates to.
payer_idvarchar(16)Payer that issued the remittance.
check_datedateDate on the payment.
payment_methodvarchar(16)How the payer paid, for example electronic funds transfer, cheque or virtual card.
trace_numbervarchar(24)Trace number tying the remittance to the payment.
total_paid_usdnumeric(9,2)Total paid across the remittance.

+6 more columns in rcm_remittances. The full schema ships with the download.

rcm_remittance_lines· Rows: 175,712
ColumnTypeDescription
remittance_line_idvarchar(24)Surrogate key for the remittance line.
remittance_idvarchar(24)Remittance the line belongs to.
claim_idvarchar(24)Claim the line relates to.
charge_idvarchar(24)Charge the line settles.
line_numbervarchar(8)Position of the line on the remittance.
hcpcs_codevarchar(8)HCPCS Level II code on a professional line.
revenue_codevarchar(8)UB-04 revenue code on an institutional line.

+12 more columns in rcm_remittance_lines. The full schema ships with the download.

rcm_adjustments· Rows: 178,032
ColumnTypeDescription
adjustment_idvarchar(24)Surrogate key for the adjustment.
claim_idvarchar(24)Claim the adjustment was posted against.
charge_idvarchar(24)Charge the adjustment was posted against. Empty where the adjustment was booked at claim level.
adjustment_type_codevarchar(24)Type of adjustment, for example a contractual adjustment or a denial write off.
adjustment_amount_usdnumeric(10,2)Amount adjusted.
adjustment_reason_codevarchar(8)Reason code carried with the adjustment.
posted_ondateDate the adjustment was posted.

+2 more columns in rcm_adjustments. The full schema ships with the download.

rcm_payments· Rows: 85,575
ColumnTypeDescription
payment_idvarchar(24)Surrogate key for the payment.
claim_idvarchar(24)Claim the payment settles. Empty on a patient payment against a statement.
patient_idvarchar(16)Patient the payment relates to.
payer_idvarchar(16)Payer that made the payment. Empty on a patient payment.
payment_sourcevarchar(24)Where the money came from: the payer, a payer rework, a payer appeal, the patient, or a collection agency.
payment_amount_usdnumeric(9,2)Amount paid.
payment_datedateDate of the payment.

+6 more columns in rcm_payments. The full schema ships with the download.

rcm_denials· Rows: 4,775
ColumnTypeDescription
denial_idvarchar(24)Surrogate key for the denial.
claim_idvarchar(24)Claim that was denied.
remittance_idvarchar(24)Remittance that carried the denial.
payer_idvarchar(16)Payer that denied.
denial_codevarchar(8)Claim adjustment reason code the payer gave.
adjustment_group_codevarchar(8)Standard X12 group code for the denial.
denial_categoryvarchar(32)Operational grouping a denial management team works the denial under.

+10 more columns in rcm_denials. The full schema ships with the download.

rcm_appeals· Rows: 1,074
ColumnTypeDescription
appeal_idvarchar(24)Surrogate key for the appeal.
denial_idvarchar(24)Denial being appealed.
claim_idvarchar(24)Claim under appeal.
payer_idvarchar(16)Payer the appeal was filed with.
appeal_levelintegerAppeal level. Level two is filed only after a level one was upheld.
filed_ondateDate the appeal was filed.
decided_ondateDate the payer decided the appeal.

+6 more columns in rcm_appeals. The full schema ships with the download.

rcm_underpayments· Rows: 3,183
ColumnTypeDescription
underpayment_idvarchar(24)Surrogate key for the underpayment.
charge_idvarchar(24)Charge that was underpaid.
claim_idvarchar(24)Claim the underpaid line sat on.
remittance_idvarchar(24)Remittance that underpaid.
payer_idvarchar(16)Payer that paid below its own contract.
contract_idvarchar(16)Contract the shortfall is measured against.
hcpcs_codevarchar(8)HCPCS Level II code on a professional line.

+9 more columns in rcm_underpayments. The full schema ships with the download.

rcm_patient_statements· Rows: 43,226
ColumnTypeDescription
statement_idvarchar(24)Surrogate key for the statement.
patient_idvarchar(16)Patient billed.
statement_monthdateBilling cycle the statement covers. A patient receives one statement a month, not one per visit.
encounter_countintegerNumber of encounters carried on the statement.
statement_balance_usdnumeric(9,2)Balance billed to the patient.
paid_amount_usdnumeric(9,2)Amount the patient paid against the statement.
outstanding_amount_usdnumeric(9,2)Amount left unpaid.

+9 more columns in rcm_patient_statements. The full schema ships with the download.

rcm_collections· Rows: 6,133
ColumnTypeDescription
collection_idvarchar(24)Surrogate key for the collection placement.
patient_idvarchar(16)Patient whose balance was placed.
statement_idvarchar(24)Statement the balance came from.
placed_amount_usdnumeric(9,2)Amount placed with the agency.
placed_ondateDate of placement, which is also the date the balance leaves provider accounts receivable.
agency_tiervarchar(24)Which agency tier took the placement: primary, secondary or an internal early out unit.
recovered_amount_usdnumeric(9,2)Amount the agency recovered, net of nothing. Zero where nothing came back.

+4 more columns in rcm_collections. The full schema ships with the download.

rcm_write_offs· Rows: 12,455
ColumnTypeDescription
write_off_idvarchar(24)Surrogate key for the write off.
patient_idvarchar(16)Patient whose balance was written off.
statement_idvarchar(24)Statement the balance came from.
adjustment_type_codevarchar(24)Type of write off: small balance, charity care or bad debt. Small balance and charity care are allowable adjustments and come out of the net collection rate denominator. Bad debt does not, because failing to collect a bill the patient owed is a collection failure and the metric is supposed to show it.
write_off_amount_usdnumeric(9,2)Amount written off.
written_off_ondateDate the write off was taken.
write_off_reasonvarchar(40)Why the balance was written off.

+2 more columns in rcm_write_offs. The full schema ships with the download.

rcm_ar_snapshots· Rows: 6,639
ColumnTypeDescription
ar_snapshot_idvarchar(24)Surrogate key for the snapshot cell.
facility_idvarchar(16)Facility the receivable belongs to.
snapshot_monthvarchar(16)Month end the snapshot was taken at.
ar_bucket_codevarchar(16)Ageing bucket, measured in days since the claim was submitted.
open_claim_countintegerNumber of claims still open in this bucket at month end.
open_balance_usdnumeric(10,2)Value still open in this bucket at month end. While a claim is with the payer the whole allowed amount is receivable, because the split between payer and patient is not known until the remittance lands.
rcm_monthly_revenue_cycle· Rows: 42
ColumnTypeDescription
revenue_cycle_month_idvarchar(16)Surrogate key for the monthly scorecard row.
metric_monthvarchar(16)Month the metrics cover.
encounter_countintegerEncounters in the month.
charge_countintegerCharge lines posted in the month.
claim_countintegerClaims submitted in the month.
gross_charges_usdnumeric(11,2)Charge master value posted in the month.
net_revenue_usdnumeric(11,2)Contracted allowed value of those charges, which is the real revenue.

+26 more columns in rcm_monthly_revenue_cycle. The full schema ships with the download.

rcm_monthly_payer_performance· Rows: 1,091
ColumnTypeDescription
payer_month_idvarchar(24)Surrogate key for the payer month row.
payer_idvarchar(16)Payer the metrics cover.
metric_monthvarchar(16)Month the metrics cover.
claim_countintegerClaims submitted to this payer in the month.
gross_charges_usdnumeric(10,2)Charge master value billed to this payer.
allowed_amount_usdnumeric(10,2)Contracted allowed value billed to this payer.
contractual_adjustments_usdnumeric(10,2)Contractual adjustment taken against this payer.

+11 more columns in rcm_monthly_payer_performance. The full schema ships with the download.

rcm_monthly_department_metrics· Rows: 10,539
ColumnTypeDescription
department_month_idvarchar(24)Surrogate key for the department month row.
department_idvarchar(16)Department the metrics cover.
metric_monthvarchar(16)Month the metrics cover.
encounter_countintegerEncounters delivered by the department.
charge_countintegerCharge lines raised by the department.
gross_charges_usdnumeric(10,2)Charge master value raised by the department.
net_revenue_usdnumeric(9,2)Contracted allowed value of those charges.

+5 more columns in rcm_monthly_department_metrics. The full schema ships with the download.

rcm_monthly_denial_summary· Rows: 416
ColumnTypeDescription
denial_month_idvarchar(24)Surrogate key for the denial month row.
denial_codevarchar(8)Claim adjustment reason code.
metric_monthvarchar(16)Month the denials were adjudicated in.
denial_countintegerDenials carrying this reason in the month.
denied_amount_usdnumeric(10,2)Allowed value denied under this reason in the month.
share_of_month_denials_pctnumeric(7,3)This reason as a percentage of all denials in the month.
denial_categoryvarchar(32)Operational grouping the reason is worked under.

+2 more columns in rcm_monthly_denial_summary. The full schema ships with the download.

rcm_payers· Rows: 26
ColumnTypeDescription
payer_idvarchar(16)Surrogate key for the payer.
payer_namevarchar(40)Payer trading name. The organisation is generated and does not exist.
payer_classvarchar(16)Whether the payer is commercial, government or other.
edi_payer_idvarchar(8)Trading partner identifier claims are routed to on an 837, mirroring the five character payer id used in real electronic claim submission.
payer_domainvarchar(40)Payer website domain. Resolved at build time and discarded if it answered, so no live domain is used.
state_codevarchar(8)State the payer is domiciled in.
claims_po_boxvarchar(16)Post office box claims are mailed to when they are not submitted electronically.

+5 more columns in rcm_payers. The full schema ships with the download.

rcm_payer_plans· Rows: 185
ColumnTypeDescription
plan_idvarchar(16)Surrogate key for the benefit plan.
payer_idvarchar(16)Payer that issues the plan.
payer_type_codevarchar(24)Payer category the plan belongs to.
plan_namevarchar(64)Benefit plan name as it would appear on a member card.
annual_deductible_usdintegerAnnual deductible in United States dollars. Zero for Medicaid and workers compensation, which carry none.
coinsurance_ratenumeric(4,1)Share of the allowed amount the member pays after the deductible is satisfied, as a proportion.
office_copay_usdintegerFixed copayment for an office visit. A copay visit waives the deductible and carries no coinsurance.

+5 more columns in rcm_payer_plans. The full schema ships with the download.

rcm_contracts· Rows: 1,150
ColumnTypeDescription
contract_idvarchar(16)Surrogate key for the payer to facility contract.
facility_idvarchar(16)Facility the contract covers.
payer_idvarchar(16)Payer the contract is with.
contract_numbervarchar(16)Contract reference as it would appear on the agreement.
effective_ondateDate the contract took effect.
expires_ondateDate the contract expires. Empty for an evergreen contract.
term_typevarchar(16)Whether the contract is evergreen, annual or multi year.

+4 more columns in rcm_contracts. The full schema ships with the download.

rcm_contract_rates· Rows: 19,587
ColumnTypeDescription
contract_rate_idvarchar(16)Surrogate key for the negotiated rate.
contract_idvarchar(16)Contract the rate belongs to.
service_categoryvarchar(24)Service category the rate prices.
rate_basisvarchar(24)How the rate is expressed: a percentage of Medicare, a fee schedule, a case rate or a per diem.
rate_factor_of_medicarenumeric(7,4)Multiple of the Medicare reference rate payable under this contract for this service category. This is what makes an expected allowed amount computable, and therefore what makes an underpayment visible.
effective_ondateDate the rate took effect.
rcm_facilities· Rows: 71
ColumnTypeDescription
facility_idvarchar(16)Surrogate key for the facility.
facility_namevarchar(40)Facility name. The organisation is generated and does not exist.
facility_type_codevarchar(32)Facility type.
city_idvarchar(16)City the facility is located in.
state_codevarchar(8)State the facility is located in.
street_addressvarchar(24)Street address of the facility.
postal_codevarchar(8)ZIP code, consistent with the state it sits in.

+7 more columns in rcm_facilities. The full schema ships with the download.

rcm_departments· Rows: 318
ColumnTypeDescription
department_idvarchar(16)Surrogate key for the department.
facility_idvarchar(16)Facility the department sits within.
specialty_codevarchar(32)Clinical specialty the department practises.
department_namevarchar(48)Department name.
cost_centre_codevarchar(8)Cost centre the department reports under in the general ledger.
opened_ondateDate the department opened.
rcm_providers· Rows: 1,139
ColumnTypeDescription
provider_idvarchar(16)Surrogate key for the provider.
department_idvarchar(16)Department the provider practises in.
facility_idvarchar(16)Facility the provider practises at.
specialty_codevarchar(32)Provider clinical specialty.
provider_npivarchar(16)National Provider Identifier for the individual. Format correct with a valid Luhn check digit and not a number the NPPES registry has issued.
first_namevarchar(16)Provider first name. The person is generated.
last_namevarchar(16)Provider last name.

+6 more columns in rcm_providers. The full schema ships with the download.

rcm_payer_types· Rows: 10
ColumnTypeDescription
payer_type_codevarchar(24)Payer category code.
payer_type_namevarchar(40)Payer category name.
payer_classvarchar(16)Whether the category is commercial, government, self pay or other.
covered_lives_sharenumeric(6,3)Share of covered lives in this category, as a proportion.
median_days_to_payintegerMedian days from claim submission to payment for this payer category.
baseline_denial_ratenumeric(6,3)Baseline probability that a claim to this payer category is denied, before any claim specific factor.
rcm_denial_reasons· Rows: 15
ColumnTypeDescription
denial_codevarchar(8)Claim adjustment reason code, combining the X12 group code and the reason number.
adjustment_group_codevarchar(8)Standard X12 claim adjustment group code: CO contractual obligation, PR patient responsibility, OA other adjustment, PI payer initiated reduction.
denial_descriptionvarchar(80)Plain description of the denial reason, written for this dataset rather than reproduced from the licensed code set.
denial_categoryvarchar(32)Operational grouping a denial management team would work the reason under.
incidence_sharenumeric(6,3)Share of denials attributable to this reason, as a proportion.
appeal_overturn_ratenumeric(5,2)Probability that a denial for this reason is overturned when it is worked, whether by rework or by formal appeal.
rcm_claim_statuses· Rows: 11
ColumnTypeDescription
claim_status_codevarchar(32)Claim status code used throughout the claim lifecycle.
claim_status_namevarchar(32)Claim status name.
status_classvarchar(24)Whether the status is pre submission, in process or closed.
status_orderintegerOrdering of the status along the normal claim lifecycle.
rcm_adjustment_types· Rows: 7
ColumnTypeDescription
adjustment_type_codevarchar(32)Adjustment type code.
adjustment_type_namevarchar(32)Adjustment type name.
adjustment_classvarchar(24)Whether the adjustment is expected, unexpected, administrative or a policy decision.
rcm_ar_buckets· Rows: 6
ColumnTypeDescription
ar_bucket_codevarchar(16)Accounts receivable ageing bucket, in days since submission.
ar_bucket_namevarchar(24)Ageing bucket name.
bucket_orderintegerOrdering of the bucket from newest to oldest.
rcm_icd_codes· Rows: 48
ColumnTypeDescription
icd10_codevarchar(16)ICD-10-CM diagnosis code as published by CMS and the NCHS.
code_titlevarchar(96)Official short title for the code.
chapter_rangevarchar(16)ICD-10-CM chapter the code belongs to.
acuity_classvarchar(16)Whether the condition is chronic, acute or preventive in this model.
is_chronicvarchar(16)Y when the code represents an ongoing condition rather than an episode.
rcm_icd_chapters· Rows: 18
ColumnTypeDescription
chapter_rangevarchar(16)ICD-10-CM chapter code range as published, for example I00-I99 for circulatory disease.
chapter_titlevarchar(72)Official chapter title.
encounter_sharenumeric(6,3)Share of encounters whose principal diagnosis falls in this chapter, as a proportion.
rcm_hcpcs_codes· Rows: 36
ColumnTypeDescription
hcpcs_codevarchar(8)HCPCS Level II procedure code as published by CMS. CPT is not used in this dataset.
code_descriptionvarchar(80)Official CMS description for the code.
service_categoryvarchar(24)Grouping used to price the code against a contract and to roll it up for reporting.
medicare_base_rate_usdintegerMedicare reference rate in United States dollars, before any contract factor or regional cost index.
typical_place_of_servicevarchar(8)CMS place of service code where this service is most often delivered.
rcm_revenue_codes· Rows: 24
ColumnTypeDescription
revenue_codevarchar(8)UB-04 revenue code as published by the National Uniform Billing Committee, carried on institutional claims.
revenue_code_descriptionvarchar(64)Official revenue code description.
service_categoryvarchar(24)Grouping used to price the line against a contract and to roll it up for reporting.
benchmark_allowed_usdintegerReference allowed amount in United States dollars. Revenue codes carry no national fee schedule, so this is a modelling input rather than a published rate.
applies_to_settingvarchar(16)Encounter setting the code is used in, or any where it is not setting specific.
rcm_place_of_service· Rows: 14
ColumnTypeDescription
pos_codevarchar(8)CMS place of service code as it appears on a claim.
pos_namevarchar(64)Official place of service description.
setting_classvarchar(16)Broader setting grouping used throughout this dataset.
encounter_sharenumeric(6,3)Share of encounters delivered in this place of service, as a proportion.
rcm_specialties· Rows: 22
ColumnTypeDescription
specialty_codevarchar(32)Clinical specialty code.
specialty_namevarchar(32)Clinical specialty name.
specialty_classvarchar(16)Grouping such as primary care, specialist, surgical, ancillary or behavioral.
provider_sharenumeric(6,3)Share of providers practising in this specialty, as a proportion.
rcm_facility_types· Rows: 10
ColumnTypeDescription
facility_type_codevarchar(32)Facility type code.
facility_type_namevarchar(40)Facility type name.
billing_classvarchar(16)Whether the facility bills institutionally, professionally, as ancillary or as post acute care.
rcm_cities· Rows: 86
ColumnTypeDescription
city_idvarchar(16)Surrogate key for the city.
city_namevarchar(24)City name.
state_codevarchar(8)State the city sits in.
postal_prefixvarchar(8)Real USPS three digit ZIP prefix that serves this city. Addresses are built from it, so a postal code here is consistent with its city and not merely with its state.
populationintegerCity population at the 2020 decennial census.
cost_indexnumeric(5,2)Relative cost index applied to charges raised in this city.
rcm_states· Rows: 39
ColumnTypeDescription
state_codevarchar(8)Two letter United States Postal Service state abbreviation.
state_namevarchar(32)Full state name.
populationintegerState population at the 2020 decennial census.
cost_indexnumeric(5,2)Relative cost index applied to charges in this state, with 1.00 as the national reference.

Sample Data

A snapshot of real rows from the dataset (values are fully synthetic).

claim_idpayer_type_codeclaim_form_typetotal_charge_usdtotal_allowed_usdtotal_patient_responsibility_usdsubmitted_onadjudicated_onclaim_status_codedays_to_file
CLM-TB08B9U090medicare_advantage837I15953.523815.73252023-08-10rejected3
CLM-CXOGRK7MUUmedicare_advantage837I3181.16614.2802025-10-052025-10-25paid6
CLM-K6D816NVR0medicaid_managed837I509.7797.4232025-06-032025-08-01partially_paid5

Version History

v1.0.02026-09-01v1.0.0 - first release. Fifty tables, 1.89 million rows across forty-two months. Registration to cash for a synthetic United States provider: eligibility, authorisation, charge capture, claim submission, remittance, denial, rework, appeal, patient statement and write off. Contracted rates on every line make underpayment against contract computable, and the monthly scorecard reconciles to the transaction tables it is derived from.