An open-source synthetic patient population simulator that generates realistic (but not real) patient data and health records in multiple formats.
Synthea is an open-source synthetic patient population simulator that generates realistic, but not real, patient data and electronic health records. It models patients' entire medical histories from birth to death, including encounters, conditions, and treatments, to support healthcare software development, testing, and research. The tool outputs data in standard healthcare formats like HL7 FHIR and C-CDA.
Healthcare software developers, clinical researchers, data scientists, and organizations needing synthetic patient data for application development, testing, training, or research without privacy concerns.
Developers choose Synthea for its comprehensive, rules-based simulation of patient lifecycles, support for multiple healthcare data standards, and extensible modular design, providing a robust, privacy-safe alternative to real patient data for building and testing health IT systems.
Synthetic Patient Population Simulator
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Models a patient's entire medical history from birth to death, including encounters like primary care and ER visits, providing holistic and realistic datasets for testing.
Supports drop-in generic modules and custom Java rules, allowing extensibility for specific healthcare scenarios without modifying core code.
Exports data in multiple HL7 FHIR versions, C-CDA, CSV, and CPCDS, facilitating seamless integration with health IT systems and compliance with industry standards.
Uses configurable statistics based on real census data, enabling synthetic populations that mirror real-world demographic distributions for accurate simulations.
Requires JDK 17 or newer and Gradle builds, which can be a barrier for non-Java developers or teams unfamiliar with Java ecosystem setup.
Activating export formats like C-CDA or Bulk FHIR necessitates editing properties files, a non-intuitive process that adds setup time for casual users.
Simulates each patient's lifecycle serially, which may not scale efficiently for generating very large datasets quickly, leading to longer runtimes.