synthetichealth/synthea

Synthetic Patient Population Simulator

What it solves

Synthea solves the problem of obtaining realistic patient data for testing and development without compromising real patient privacy. It generates synthetic, non-real patient populations and their associated health records.

How it works

The system uses a modular rule system and configuration-based statistics and demographics (defaulting to Massachusetts Census data) to simulate a patient's entire lifecycle from birth to death. It can generate primary care, emergency room, and symptom-driven encounters, including conditions, allergies, medications, vaccinations, and lab results. The generated data can be exported in multiple formats, including HL7 FHIR, C-CDA, CSV, and CPCDS.

Who it’s for

It is designed for developers and researchers who need high-quality, synthetic health records for software testing, system validation, and data analysis without using actual patient data.

Highlights

  • Full Lifecycle Simulation: Simulates patients from birth to death.
  • Modular Rule System: Supports generic modules and custom Java rules for extending capabilities.
  • Multiple Export Formats: Supports HL7 FHIR (multiple versions), Bulk FHIR, C-CDA, CSV, and CPCDS.
  • Customizable Demographics: Allows configuration of population statistics and demographics via properties files or command-line arguments.

Related

  • Project
  • Project
  • Project
  • Dispatch
  • Project