skillfed

sdv

Generate synthetic data for single table, multi table and sequential data

sdv v1.38.0 118.6K downloads/30d#12,113 on PyPI3,544
License unclear BUSL-1.1 Active released

What it is and what it does

SDV is a Python library for generating synthetic tabular data that mimics real datasets while protecting sensitive information. It offers multiple machine learning models—from classical statistical methods like GaussianCopula to deep learning approaches like CTGAN—to learn and replicate patterns in your data. The library handles single tables, multiple connected tables, and sequential data, with built-in support for preprocessing, anonymization, and business rule constraints.

The typical workflow involves loading or preparing your real data with metadata, selecting a synthesizer model, fitting it to learn patterns, then sampling synthetic rows. SDV also provides evaluation tools to measure how well the synthetic data matches the real data's statistical properties and to visualize differences. It depends on a substantial stack including pandas, numpy, copulas, ctgan, deepecho, rdt, and sdmetrics for its core functionality.

Use it for:

  • Generate test datasets for development and QA without exposing real customer or sensitive data
  • Create shareable datasets for research or collaboration while maintaining privacy compliance
  • Augment small datasets with synthetic rows to improve machine learning model training
  • Evaluate data quality and statistical fidelity between real and synthetic versions
  • Prototype data pipelines and analytics on realistic synthetic data before deploying to production

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

SDV generates synthetic tabular data by learning patterns from real datasets using machine learning models, then creates new data that preserves statistical properties while anonymizing sensitive columns.

Yes, with conditions. SDV is actively maintained, has no known vulnerabilities, and low install friction. It's a mature tool (Production/Stable status) for a real need—synthetic data generation with privacy controls. However, the BUSL-1.1 license treatment is unclear; verify the license terms match your use case (commercial, internal, or research) before committing to production deployment. If licensing is acceptable, it's a solid choice for tabular synthetic data work.

Install

sdv on PyPI

pip

pip install sdv

uv

uv add sdv

poetry

poetry add sdv

Installing sdv

Before you install

Low install friction with a pure Python wheel. Active maintenance with a release 7 days ago and consistent development activity. Supports Python 3.9 through 3.14.

License in practice

Licensed under BUSL-1.1 (Business Source License). License treatment is marked unclear in the metadata—review the actual license terms before use, particularly for commercial applications.

Quickstart

from sdv.datasets.demo import download_demo
from sdv.single_table import GaussianCopulaSynthesizer

real_data, metadata = download_demo(modality='single_table', dataset_name='fake_hotel_guests')
synthesizer = GaussianCopulaSynthesizer(metadata)
synthesizer.fit(data=real_data)
synthetic_data = synthesizer.sample(num_rows=500)

Verify before relying

  • Whether BUSL-1.1 restrictions apply to your intended use case (commercial, internal, or research)
  • Memory and compute requirements for large datasets or complex multi-table schemas
  • Performance characteristics and scalability limits for production workloads

Package facts

License BUSL-1.1 (unclear)
Python support supports the current Python release (<3.15,>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 14 — boto3, botocore, cloudpickle, graphviz, numpy, pandas, tqdm, copulas, ctgan, deepecho, rdt, sdmetrics, platformdirs, pyyaml
Maintenance actively maintained — 7 days since the last release
Last repo commit
First released
Downloads 118,605/month — #12,113 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: sdv-1.38.0-py3-none-any.whl

Keywords: sdv, synthetic-data, synthetic-data-generation, timeseries, single-table, multi-table

Development Status :: 5 - Production/StableIntended Audience :: DevelopersNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: Artificial Intelligence

Tags

synthetic data generationtabular data synthesisprivacy-preserving data generationmachine learning data simulationanonymized dataset creationstatistical data replicationmulti-table synthetic data
synthetic-dataprivacy-preservingdata-generation

More Artificial Intelligence packages