PostgreSQL synthetic data in one command

Connect to any Postgres database, introspect the schema, and produce production-quality synthetic data in minutes. Zero config.

$npm install -g @weavori/cli
weavori
$ weavori generate postgres://localhost:5432/mydb
Connected successfully.

From schema to replica in one command

Weavori infers every column from its name and type, keeps every relationship intact, and reproduces your data's real shape — then layers in your formulas and datasets.

Schema in. Replica out.

~230 column-name rules and type fallbacks map every column to a generator that fits — first_name becomes a name, zip becomes a ZIP. No config file to drift when your schema changes.

$ weavori generate postgres://acme:5432/sales --target postgres://acme:5432/dev
Connected successfully.

Distribution-aware generation

If 70% of your real statuses are active, the replica stays 70% active. Query plans and indexes behave like production — automatically, nothing to configure.

active
70%
paused
22%
closed
8%

Referential integrity

Every foreign key points at a real generated parent — guaranteed by construction. Joins and queries behave exactly like production.

users → orders → order_items
parents first · orphans impossible

Cross-column consistency

No customer predates their own signup, no paid order is missing its paid_at. Detected from your schema — nothing to configure.

created_at < updated_at
paid_at NULL unless status='paid'

Formula engine

Compose derived columns with eight built-in functions — no post-processing scripts, no SQL transforms on the target. A typo fails at plan time, never at row 50,000.

email lower(concat(first, ".", last, "@corp.io"))
fail-fast at plan time

Bring your own data

When realism means your actual values — your SKUs, your regions, your tiers — supply them as CSV and map them to any column. Type-checked before a single row is generated.

orders.product_code products.sku
products.csv · 1,240 rows type-checked

Realistic doesn't mean slow

Streaming generation with constant memory — scale never trades off against correctness.

12.4s

100,000 rows across 14 tables

generated into a target database via COPY

2.1s

25,000 rows

2,500 rows in 384 ms

<2 min

Typical schemas under 200 tables

from DSN to complete replica

500 GB

Stress-tested benchmark database

validating scale and memory stability

Benchmarks measured July 2026 with Weavori's internal benchmark suite (pgbench-derived schema, PostgreSQL 17, COPY protocol). Numbers vary with hardware and schema shape. Read how realistic test data is generated.

Pricing that scales with you

Start with a 14-day free Pro trial. No credit card required. Upgrade when you scale.

Free

$0/mo

For individual developers exploring synthetic data.

  • Includes a 14-day Pro trial
  • 2,000 rows per month
  • Unlimited tables
  • Unlimited runs
  • Direct DB export (--target)
  • CSV datasets & formula support
  • No credit card required
Popular

Pro

$15/mo

For professional developers and teams. Start with a 14-day free trial.

  • 1 million rows per month
  • Unlimited tables
  • Unlimited runs
  • Sync command included
  • Direct DB export (--target)
  • CSV datasets & formula support
Coming Soon

Business

TBD/mo

Coming Soon — for organizations with production workloads.

  • Unlimited rows & tables
  • All Pro features
  • Priority support

Frequently asked questions

Answers to the most common questions about Weavori.

Ready to generate your first dataset?

Install Weavori in one command and connect to any PostgreSQL database.

$npm install -g @weavori/cli
macOS · Linux · Windows/No dependencies required

No credit card required. Start with a 14-day free trial of Pro, then free tier or subscribe.