Eyeballing a histogram is not enough to trust synthetic data. Maybe the tail shifted. Maybe the 95th percentile moved by 12%. Maybe a subtle bump in the middle got smoothed out. None of that is obvious at a glance. KSComplement replaces the guesswork with a quantitative way to evaluate numerical columns like age, salary, and transaction amounts before you trust them as test data for applications and AI agents.
What is KSComplement?
An SDMetrics quality metric for numerical columns.
Built on the Kolmogorov–Smirnov (KS) test, a statistical method from the 1930s.
It rescales that test into a single number between 0 and 1.
How does KSComplement work?
Take a real column and the matching synthetic column.
Convert both into cumulative distribution functions (CDFs): what percentage of values fall below X?
Find the largest vertical gap between the two curves — that gap is the KS statistic (a number between 0 and 1).
Flip it: KSComplement = 1 − KS statistic.
What do the scores mean?
Score = 0.95: the largest gap between the real and synthetic distributions is only 0.05. Your synthetic data closely follows the real distribution.
Score = 0.60: there is a 0.40 gap somewhere. Something is wrong — and now you know where to investigate.
Why does it matter?
A high KSComplement is what lets you trust synthetic data as test input for modern applications and AI agents.
It catches distribution problems that a quick look at a histogram will miss.
How do you track synthetic data quality?

