model2data
A command-line tool that reads a database schema and generates a full, realistic fake dataset plus a ready-to-run dbt project — no production data or manual scaffolding needed.
🔗 Visit model2dataDescription
Analytics engineers building or testing a dbt project usually face an annoying choice: use real production data (a privacy and access-control headache) or hand-write fake rows for every table (slow, and easy to get relationships wrong). model2data automates the second option properly: point it at a schema definition, and it produces realistic, relationship-consistent sample data along with the dbt project files to actually use it.
model2data reads DBML schema definitions and generates synthetic datasets with proper foreign-key relationships preserved, using name-aware generation for roughly 35 common field patterns (emails, phone numbers, cities, etc. via Faker). It scaffolds a complete, executable dbt project around that data — seeds, staging models, tests, and connection profiles — targeting DuckDB by default or Postgres. Output is deterministic via a seed parameter, so the same schema always produces the same test data, and it can generate dbt unit-test fixtures too. It's MIT-licensed, young (10 GitHub stars), heuristic rather than fully precise in its data matching, and explicitly doesn't try to do schema migration or real-time generation.
💬 Our review
The short version: model2data solves a specific, real annoyance for analytics engineers — getting realistic test data and a working dbt scaffold from a schema in one command — cleanly and for free, though it's a young, narrow tool rather than a general data platform.
Against hand-writing seed data or dbt boilerplate, which is what most teams do today, model2data's relationship-aware generation and full project scaffolding (not just rows, but tests and profiles too) is a real time-saver. Against a general synthetic-data tool like datagen (from the same discovery batch), model2data is specifically dbt/analytics-engineering-flavored rather than general-purpose, which is either exactly what you need or overly specific depending on your stack. It's free and open-source (MIT), so there's no cost to trying it; the 10-star count means it hasn't seen much real-world battle-testing yet, and its own docs are upfront that matching is heuristic, not perfect. Worth using if you're already on dbt and need synthetic test data fast; skip it if you're not in the dbt ecosystem, where a general tool like datagen fits better.
💰 Pricing
📊 Global score
🤖 AI-enriched data
Gratuit, licence MIT
Pros
Génère à la fois les données ET le scaffolding dbt complet (seeds, modèles, tests, profils)
Préserve les relations de clés étrangères entre tables
Sortie déterministe via un paramètre de seed, reproductible
Reconnaissance de ~35 patterns de champs courants (email, téléphone, ville…)
Cons
Projet jeune (10 étoiles GitHub), peu éprouvé en conditions réelles
Correspondance des types de champs heuristique, pas garantie précise à 100%
Pas de support des modèles incrémentaux ni des clés étrangères composites
Spécifique à l'écosystème dbt, pas un générateur de données généraliste
