Skip to content
Data Maestro
Data Maestro app icon Native macOS app

Fake data, PII anonymization, and database seeding — in one local Mac app.

Generate realistic test data across 75+ field types, scrub sensitive data before it ever leaves prod, seed 14 different database engines, and mock a REST API on top of it — without a single byte touching the cloud.

macOS 14 (Sonoma) or later · Apple Silicon · 30-day free trial, no credit card

75+
field types
30+
export formats
14
database connectors
5
locales
Overview

Everything a test-data pipeline needs, offline

One local app instead of five different scripts, SaaS trials, and CLI tools duct-taped together.

🧬 Data Generator

75+ field types, 5 locales, cross-field consistency, a formula engine, and streaming/parallel generation for millions of rows.

🛡️ PII Anonymizer

Detects and masks PII in files and live databases, with format-preserving masking and compliance audit reports.

🗄️ 14 Database Connectors

Postgres, MySQL, SQLite, MSSQL, MongoDB, Redis, Neo4j, Cassandra, ClickHouse, Elasticsearch, and more.

🔌 Mock API Server

Spin up a local REST API serving generated data — JSON, XML, or CSV — with pagination, custom headers, and CORS.

📦 30+ Export Formats

CSV, JSON, SQL dialects, Parquet, Avro, MessagePack, BSON, OpenAI fine-tuning JSONL, and more.

🔒 Encrypted, local-first

AES-256-GCM encrypted project files. Nothing is uploaded — your schemas, connections, and data stay on your Mac.

📥 Data Import

Discover schemas straight from CSV, TSV, JSON, Excel files, or any of the 14 connected database engines.

🖥️ CLI

A signed, headless CLI binary for CI pipelines and scripted, automated data generation. Also ships as a Docker image — build it locally with make docker-build.

📊 Data Quality Metrics

Every generated or imported dataset is scored for uniqueness, distribution, and completeness before you export it.

Data Generator

Realistic test data, not obviously-fake data

Every field is backed by 500+ locale-aware entries, and fields that should agree with each other — actually do.

  • 75+ field types across 9 categories: Identity, Person, Contact & Location, Finance, Internet, Business, Commerce, Data, and Custom (list / template / formula)
  • 5 locales — en, es, pt, fr, de — with locale-correct names, cities, states, streets, phone formats, ZIP codes, and business fields
  • Cross-field consistency: a row's FullName flows into its Email and Username — no more mary.williams@… next to "John Smith"
  • A formula engine (this['field'] / {field} syntax) for computed columns, plus per-field null %, blank %, and distinct % controls
  • Deterministic seeded generation for reproducible test fixtures, or fully random for load testing
  • Streaming + multi-threaded generation scales to millions of rows without blowing up memory
id full_name email city signup_date
1001Sofía Herrera[email protected]Valencia2025-11-02
1002Liam O'Connor[email protected]Dublin2025-11-04
1003Amara Nwosu[email protected]Lagos2025-11-06
1004Kenji Watanabe[email protected]Osaka2025-11-09

Locale: mixed · name → email consistency enabled · 4 of 1,000,000 rows shown

PII Anonymizer

Scrub production data before it leaves prod

Point it at a file or a live database, and it finds and masks sensitive fields — without breaking their shape.

  • Heuristic + regex PII scanner detects emails, phone numbers, SSNs, credit cards, and IPs — including PII buried inside nested JSON
  • Format-preserving masking keeps values usable: credit cards stay PCI-DSS compliant (last 4 digits only), phone numbers keep their shape
  • Strict type gating prevents false positives — a UUID segment won't get mistaken for a phone number or credit card
  • Anonymize files directly, or run it against a live database with relational/referential-integrity-aware masking across tables
  • Export the pseudonym mapping as CSV, and generate a compliance audit report of what was found and masked
[email protected] j***@a***.com
4532 0151 1283 0366 **** **** **** 0366
+1 (415) 555-0182 +1 (415) 555-****
078-05-1120 ***-**-1120

Format-preserving masking — downstream code that parses these fields keeps working.

Database Seeding

Push generated data straight into 14 database engines

Relational, document, key-value, graph, wide-column, time-series, and search — connect, test, and seed without leaving the app.

  • Built-in connection testing before you ever push a row
  • Discover schemas by importing table/collection structure directly from a live database
  • Saved connections with encrypted credentials at rest
  • Same schema, any target — build a dataset once and push it to Postgres today, MongoDB tomorrow
PostgreSQL MySQL SQLite MSSQL MongoDB CouchDB Firebase Redis Neo4j Cassandra / Scylla InfluxDB Elasticsearch ClickHouse Webhook (HTTP POST)

Relational, document, key-value, graph, wide-column, time-series, search, and analytical stores.

Mock API Server

Serve your generated data over a real REST API

Frontend or mobile team needs an API before the backend exists? Point them at a local endpoint backed by your schema.

  • Local Axum-powered REST server with dynamic endpoints per schema
  • Response format is configurable per endpoint — JSON, XML, or CSV
  • Pagination with a page/per_page metadata envelope, built in
  • Custom response headers and configurable CORS for cross-origin frontend dev
  • Import an OpenAPI spec to generate a matching schema instantly
GET /api/users?page=2&per_page=2

{
  "data": [
    { "id": 3, "full_name": "Amara Nwosu",
      "email": "[email protected]" },
    { "id": 4, "full_name": "Kenji Watanabe",
      "email": "[email protected]" }
  ],
  "meta": { "page": 2, "per_page": 2, "total": 1000000 }
}

Running locally on your Mac — no external hosting required.

Export

30+ formats, from a CSV to a Parquet file

Whatever your pipeline speaks, Data Maestro can write it — including streaming output for datasets too large to hold in memory.

Delimited

CSV TSV SSV PSV

Structured

JSON YAML XML TOML INI PLIST Properties

SQL dialects

Generic SQL MySQL PostgreSQL SQLite Oracle MSSQL Cassandra CQL

NoSQL

MongoDB JSON DynamoDB JSON Firebase JSON Redis commands Neo4j Cypher

Streaming

NDJSON + 12 streaming text formats

Binary

Parquet Avro MessagePack BSON

ML / fine-tuning

OpenAI fine-tuning JSONL Alpaca JSON
Security & privacy

Your data never leaves your Mac

Data Maestro is a native app that runs entirely locally — there's no server in the loop for generation, anonymization, or database seeding. The app does make a few network calls unrelated to your data (license activation, update checks) — see the privacy policy for exactly what those send.

🔐 Encrypted project files

Saved connections, templates, and datasets are encrypted at rest with AES-256-GCM. Database passwords are never stored in plaintext.

🖥️ Fully local execution

Generation, anonymization, and database pushes run inside the app's Rust core, on your machine — memory-safe by construction, which matters when the same engine is scanning and anonymizing real PII. No dataset is ever uploaded anywhere.

🔑 Your own encryption key

A per-install key lives at ~/.data_maestro_encryption.key with restrictive file permissions — never synced, never transmitted.

✅ Offline license verification

License keys are validated with an Ed25519 signature check on-device. The app works fully offline once activated.

For developers

A CLI for CI

Everything the Mac app does is backed by the same Rust core, exposed as a standalone binary — no GUI required.

  • Generate schema-driven datasets straight to CSV, JSON, SQL, and every other supported format from the command line
  • Stream millions of rows straight to disk with --output, without holding the whole dataset in memory
  • Parallelize large generation jobs across threads with --threads
  • A signed binary download — no toolchain or source access needed
  • Free tier caps generate-schema at 100 rows per run — a Pro license (same key as the Mac app) removes the cap
# Download the signed CLI binary
curl -L -o data-maestro-cli \
  https://github.com/rschalch/data-maestro-releases/releases/latest/download/data-maestro-cli-macos-arm64
chmod +x data-maestro-cli

# Stream rows straight to a file, 4 threads
./data-maestro-cli generate-schema \
  --output data.csv --threads 4 \
  schema.json csv 100000

Read the full CLI reference →

Who it's for

Built for the people who need believable data fast

QA & test engineers

Generate realistic, edge-case-rich fixtures with deterministic seeds — the same dataset, every CI run, every time.

Backend & platform teams

Seed a fresh Postgres or MongoDB instance in seconds instead of writing another one-off seed script.

Frontend & mobile teams

Mock a REST API backed by realistic data before the real backend exists, and keep working in parallel.

Data & compliance teams

Anonymize a production export before handing it to a staging environment, a vendor, or a demo.

Solo developers & agencies

Populate a client demo with data that looks real, in every locale your client operates in.

ML & data science

Export directly to Parquet, Avro, or fine-tuning-ready JSONL for prototyping without touching real user data.

Pricing

Start free. Upgrade when the 100-row cap gets in your way.

Data Maestro is under active development — new field types, export formats, and database connectors ship regularly. Pro is a subscription so every update is included automatically; prefer to pay once, up front? Take the lifetime license instead.

Free

$0
30-day full trial, then limited forever
  • Up to 100 rows per export or DB push
  • Up to 2 saved database connections
  • All 75+ field types & 30+ export formats
  • PII anonymizer — file anonymization, up to 100 rows
  • Mock API server (trial only)
Download free
Most popular

Pro

$149/year
≈$12.42/mo, billed annually, plus applicable tax
  • Unlimited rows & database pushes
  • Unlimited saved connections
  • Full Mock API server hosting
  • Unlimited-row & live-database PII anonymization, plus compliance reports
  • Every new field type, format, and DB connector — included as we ship it
  • Priority email support

Lifetime

$349 once
Pay once, own it forever — no subscription, plus applicable tax
  • Everything in Pro
  • One-time payment, no renewals
  • Every new field type, format, and DB connector — included as we ship it
  • Priority email support

Team

$149/seat/year
or $15/seat/month — same price as Pro, per seat, plus applicable tax
  • Everything in Pro, for every seat
  • Centralized license, one purchase for the whole team
  • Priority support for your team
  • 10+ seats? Email us for volume pricing
FAQ

Questions, answered

Does any of my data ever leave my Mac?

No. Data generation, PII anonymization, and database seeding all run locally inside the app's Rust core. The only network calls the app makes are for license activation and update checks — never for the data you generate or anonymize.

What platforms does it run on?

Data Maestro is a native SwiftUI app for macOS 14 (Sonoma) or later, on Apple Silicon Macs.

Can I use it in CI/CD or on Linux?

Yes. The same Rust core also ships as a headless CLI binary, so you can generate schema-driven datasets from a pipeline without the GUI. It also ships as a Docker image — build it locally with make docker-build (not yet published to a registry). The free tier caps generate-schema at 100 rows per run — a Pro license key (same one as the Mac app) removes the cap. CLI docs →

Is there really a free tier, or just a trial?

Both. You get full, unlimited access for a 30-day trial. After that, the app keeps working forever on the Free tier — capped at 100 rows per export/push and 2 saved database connections — so you're never fully locked out.

Can I import my existing schema instead of building one from scratch?

Yes. Import a schema from a CSV, TSV, JSON, or Excel file, discover it directly from a live database table, or import an OpenAPI/JSON Schema document.

Does the anonymizer work on a live database, or just files?

Both, on Pro. Point it at a file to mask PII in place — that part is available on the Free tier, capped at 100 rows — or connect it to a live database for anonymization that's aware of relational structure across tables, which requires Pro.

What happens to my license if I switch Macs?

Use the "Deactivate this Mac" button in Settings to free up your seat, then activate the same license key on the new machine.

Why is Pro a subscription instead of a one-time purchase?

Data Maestro keeps shipping new field types, export formats, and database connectors — a subscription means you get all of that automatically, forever, instead of paying again for every major update. If you'd rather pay once and be done, the lifetime license is priced at a fixed premium over the annual plan and never expires.

How does Team pricing work — is it a different product?

No — Team is just Pro, purchased for more than one seat. Set the quantity at checkout to the number of Macs you need licensed; everyone gets identical features to a solo Pro license. Buying 10 or more seats gets you a volume discount — email us first.

What's your refund policy?

Full refund within 14 days of purchase, no questions asked, for Monthly, Yearly, or Lifetime alike. See the license agreement or email [email protected].

Stop hand-writing seed scripts.

Download Data Maestro and generate your first dataset in under a minute.