
Realistic test data, built from your own database schema.
Point Flock at your schema and get realistic patients back as SQL, HL7 v2, or FHIR. Every record is made up, so there is no patient data to protect.
- Install
- A desktop app for Windows x64 (signed) or an Apple Silicon Mac (not yet signed), or the CLI.
- Where it runs
- On your machine. No real patient record is ever used.
- Works with
- Schemas from Postgres or SQL Server DDL, or a live Postgres, SQL Server, MySQL, or MariaDB database. It writes SQL inserts, CSV, HL7 v2, and FHIR R4.
- Account
- A free Pidgeon account. Signing in needs internet.
- Free in the beta
- No limit on how many patients you generate.
Compared with what you use: Synthea generates FHIR from its own data model. Flock fills your own schema, in foreign-key order, and also writes HL7 v2.
Not yet: Flock can load data straight into Postgres and SQL Server only. For other databases, it writes a SQL file for you to run.
Compliance won’t let you copy production to staging without a data use agreement and two committee sign-offs. Meanwhile, staging holds a few stale test patients.
Flock builds the data from your schema in one run, including the edge cases production hasn’t sent you yet.
Your schema
CREATE TABLE patient ( id INT PRIMARY KEY, mrn VARCHAR(20), birth_date DATE);CREATE TABLE encounter ( id INT PRIMARY KEY, patient_id INT REFERENCES patient(id), admit_at TIMESTAMP);
SQL, in foreign-key order
INSERT INTO patient VALUES (1, 'MRN004812', '1958-03-14');INSERT INTO encounter VALUES (1, 1, '2026-09-26 08:42');
The same patient in HL7 v2
MSH|^~\&|FLOCK|HOSP|EHR|HOSP|20260926084200||ADT^A01|F000001|P|2.5.1PID|1||MRN004812||REYES^DANA||19580314|FPV1|1|I|4WEST^412^1||||||||||||||||V000001
Built on public health data
Flock shapes patients with public health statistics: how common each condition is, which ones appear together, and normal lab ranges. A diabetic patient gets diabetes medications and a believable A1c.
Try it on your own schema.
The other Pidgeon products
Post
Test what your vendor actually sends.
Visit Post →Flock
You’re hereRealistic test patients, with no real patient data.
Loft
Catch bad messages on live channels.
Visit Loft →Migrate
Move your data out, and count every record.
Visit Migrate →Conform
In PostTest FHIR endpoints against the guide you must meet.
Visit Conform →