MediSynth Open console
Synthetic patient cohorts

Clinical test data for systems that need to survive the real mess.

Generate synthetic patients across simulated upstream HIE and provider feeds — duplicate identities, mismatched identifiers, partial availability, stale addresses — then export FHIR (US Core), C-CDA, HL7v2, X12, and OMOP.

Free sandbox — no credit card required.

medisynth.generate
Generated patients 250,000
Source records 1.04M
FHIR resources 5.7M
{ "scenario": "mpi-hard-matches" } { "duplicateRate": 0.15 } { "export": "FHIR R4 NDJSON" }
Live cohort signal

Watch one synthetic cohort split into realistic upstream records.

Patient identities, source records, clinical resources, and exports move as a visible system instead of a black-box fixture dump.

Cohort seed 300312 patients shown
Try it live

Generate a synthetic cohort in your browser — no signup.

The public demo returns a capped preview, a small FHIR Bundle sample, and a C-CDA snippet. It is rate-limited and hard-capped at 10 patients; sign up for full-scale generation, exports, and delivery.

Start in console

Platform

Built for product teams testing healthcare data workflows.

01

Native cohorts

Deterministic generation for patients, clinical facts, demographics, and upstream provider records.

02

Messy upstream feeds

Control duplicate rates, address drift, missing phones, upstream availability, and provenance.

03

Exports that match your stack

Export FHIR US Core Bundles and bulk NDJSON, C-CDA documents, HL7v2 messages, X12 837/835, and OMOP CDM (including Parquet). Saved exports expire after 30 days to keep accounts lean.

Proof, not promises

Inspect the artifacts behind the realism claim.

MediSynth exposes the evidence engineers need to evaluate synthetic-data lineage, document fidelity, and failure-path behavior—without relying on invented testimonials or certification claims.

Signed artifact proof

Every cohort includes an Ed25519-signed PHI-free attestation with its seed, generator version, structural checks, and a SHA-256 digest for every file.

Inspect the attestation model

Corpus-backed documents

C-CDA flavor modeling is backed by 401 public-domain ONC 2015 Certification samples across 52 certified-EHR vendor directories, all describing fictional patients.

Review formats and schemas

CI-ready conformance

Structural US Core and C-CDA R2.1 validators produce concrete findings; HIE scenario packs export JUnit XML, SARIF 2.1, and JSON for repeatable CI gates.

Explore validation APIs
Operational evidence

Review active incidents, service checks, and the public 90-day uptime history.

Open status history

Conformance packs are MediSynth-authored scenario checks for testing; they are not official accreditation or certification.

How we work

How we work with teams.

Start with the patient population your product needs to prove, then keep every cohort repeatable enough for demos, regression tests, and implementation handoffs.

01

Define the cohort

Pick geography, demographics, source systems, conditions, prevalence, and identity-variance controls.

02

Generate repeatably

Use deterministic seeds so the same scenario can be rerun by sales engineering, QA, and product teams.

03

Inspect and export

Review patient summaries, source records, quality signals, FHIR Bundles, and NDJSON artifacts before handoff.

04

Manage usage

Track API keys, credits, coupon-backed usage, retained cohorts, and 30-day artifact windows from the console.

Usage

Account credits and metered API usage are part of the console.

The console is built around metered API access: workspaces, API keys, patient quotas, usage ledgers, credit top-ups, and secure email authentication.

PlanDeveloper
Monthly quota125k patients
Credit balance$50
API keys3 max
API

Simple calls, generated data, inspectable outputs.

Use the console when you want to design visually, or use the API when your test suites, demo environments, and migration tooling need synthetic cohorts on demand.

POST /v1/workspace/tenants/{tenantID}/cohort-jobs
Authorization: Account session
X-API-Key: ms_live...

{
  "name": "diabetes-ckd-ed",
  "population": 500,
  "hie": { "sourceSystems": ["north-hie", "county-clinic", "claims-feed"] }
}