Relational Integrity
Parent rows are generated before their children, and every child references a valid parent. Composite keys and foreign-key constraints hold across the whole schema.
Lyrebird · Offline Synthetic Test Data
Connect to your database once to create a compact mathematical recipe. Disconnect completely, then generate millions of realistic, foreign-key-consistent test records 100% offline without touching production again.
01 Connect once. Save the recipe.
Statistical distributions and foreign-key graph metadata.
02 Generate from recipe. Repeat offline anytime.
100% offline · Zero connection to production required
Works with the databases
you already use.
Core Capabilities
Engineered for engineering, data, and security teams who need high-fidelity test databases without the legal, compliance, and infrastructure risks of cloning production.
Parent rows are generated before their children, and every child references a valid parent. Composite keys and foreign-key constraints hold across the whole schema.
The local model and the generator run on your laptop, CI runner or private servers. No cloud service or external API is involved.
Before a profile leaves your team, Lyrebird lists what it keeps as written and scans it for personal data and credentials.
Scale every table by a factor, from a 1% copy to a 1,000x load test, or set total and per-table row counts. Table ratios and foreign-key degrees are preserved.
Profile PostgreSQL, MySQL, SQL Server or Oracle, then generate for the same engine or another one, for example an Oracle profile into PostgreSQL.
The same profile, settings and seed give the same data. Output is SQL files with a manifest, native bulk-loader files for SQL Server and Oracle, or a database loaded straight into Docker.
A workflow built for enterprise security
A compact profile file is all Lyrebird needs from the source database. Every test dataset after that is generated from it.
Connect to the source database read-only. Lyrebird analyzes schema, relationships, and value distributions, saving them in a compact profile file.
Disconnect from the source database completely. Lyrebird needs no further access to your live infrastructure or sensitive production rows.
Load the saved profile and specify your target row counts. Generate synthetic relational databases anytime from the desktop app or CI pipeline.
# Step 1: Profile the source database (run once, read-only)
$ LYREBIRD_DSN="$PROD_READONLY_DSN" lyrebird profile --output app.lyre
# Optional: check the profile for personal data before sharing it
$ lyrebird audit-profile --input app.lyre
# Step 2: Generate a 10% copy offline and load it into a Docker database
$ lyrebird generate --profile app.lyre --scale 0.1 --out ./testdb --docker
# ./testdb: 01_schema.sql, 02_data.sql, 03_post_data.sql, manifest.json
Community & Enterprise
Start with Community to evaluate Lyrebird against your own databases. Move to Enterprise when you need larger volumes and pipeline automation.
Product FAQ
Everything you need to know about evaluating and deploying Lyrebird.
Yes. Community is free and lets your team evaluate local profiling and desktop generation with your own database. Generation is limited to 5,000 rows per ordinary table. Enterprise adds larger-scale generation and headless CLI automation.
No. You connect to the source database once to create a compact mathematical recipe (profile). After that, Lyrebird generates from the saved file without reconnecting. Profiling and generation both run inside your own environment, with no cloud service involved.
Lyrebird analyzes database metadata and builds a relational dependency DAG (directed acyclic graph). Parent entities (e.g. users, companies) are generated first, and child entities (orders, transactions) bind to valid parent keys, so no child row is left without a parent.
Yes. The Enterprise edition includes a headless CLI binary for Linux, macOS, and Windows. Given the same profile and the same row settings, it produces the same data on every run, so CI test databases are reproducible. It can also load the result into a Docker database and verify row counts.
Plan your enterprise evaluation
Share your database stack, target scale and deployment requirements.
We’ll help your team assess the right fit.