Skip to content

Last updated: July 22, 2025

List of column level anomaly data quality checks

This is a list of anomaly column data quality checks supported by DQOps and a brief description of what data quality issued they detect.

column-level anomaly checks

Detects anomalous (unexpected) changes and outliers in the time series of data quality results collected over a period of time.

sum anomaly

This check calculates a sum of values in a numeric column and detects anomalies in a time series of previous sums. It raises a data quality issue when the sum is in the top anomaly_percent percentage of the most outstanding values in the time series. This data quality check uses a 90-day time window and requires a history of at least 30 days.

Data quality check name Friendly name Check type Description Standard
profile_sum_anomaly Abnormal change in the sum of numeric values. Measured as a percentile of anomalous values. profiling Verifies that the sum in a column changes in a rate within a percentile boundary during the last 90 days.
daily_sum_anomaly Abnormal change in the sum of numeric values. Measured as a percentile of anomalous values. monitoring Verifies that the sum in a column changes in a rate within a percentile boundary during the last 90 days.
daily_partition_sum_anomaly Abnormal change in the sum of numeric values. Measured as a percentile of anomalous values. partitioned Verifies that the sum in a column is within a percentile from measurements made during the last 90 days. Calculates the sum of each daily partition and detect anomalies between daily partitions.

mean anomaly

This check calculates a mean (average) of values in a numeric column and detects anomalies in a time series of previous averages. It raises a data quality issue when the mean is in the top anomaly_percent percentage of the most outstanding values in the time series. This data quality check uses a 90-day time window and requires a history of at least 30 days.

Data quality check name Friendly name Check type Description Standard
profile_mean_anomaly Abnormal change in the mean (average) of numeric values. Measured as a percentile of anomalous values. profiling Verifies that the mean value in a column changes in a rate within a percentile boundary during the last 90 days.
daily_mean_anomaly Abnormal change in the mean (average) of numeric values. Measured as a percentile of anomalous values. monitoring Verifies that the mean value in a column changes in a rate within a percentile boundary during the last 90 days.
daily_partition_mean_anomaly Abnormal change in the mean (average) of numeric values. Measured as a percentile of anomalous values. partitioned Verifies that the mean value in a column is within a percentile from measurements made during the last 90 days. Calculates the mean (average) of each daily partition and detect anomalies between daily partitions.

median anomaly

This check calculates a median of values in a numeric column and detects anomalies in a time series of previous medians. It raises a data quality issue when the median is in the top anomaly_percent percentage of the most outstanding values in the time series. This data quality check uses a 90-day time window and requires a history of at least 30 days.

Data quality check name Friendly name Check type Description Standard
profile_median_anomaly Abnormal change in the median of numeric values. Measured as a percentile of anomalous values. profiling Verifies that the median in a column changes in a rate within a percentile boundary during the last 90 days.
daily_median_anomaly Abnormal change in the median of numeric values. Measured as a percentile of anomalous values. monitoring Verifies that the median in a column changes in a rate within a percentile boundary during the last 90 days.
daily_partition_median_anomaly Abnormal change in the median of numeric values. Measured as a percentile of anomalous values. partitioned Verifies that the median in a column is within a percentile from measurements made during the last 90 days. Calculates the median of each daily partition and detect anomalies between daily partitions.

min anomaly

This check finds a minimum value in a numeric column and detects anomalies in a time series of previous minimum values. It raises a data quality issue when the current minimum value is in the top anomaly_percent percentage of the most outstanding values in the time series (it is a new minimum value, far from the previous one). This data quality check uses a 90-day time window and requires a history of at least 30 days.

Data quality check name Friendly name Check type Description Standard
profile_min_anomaly Abnormal change in the minimum of numeric values. Measured as a percentile of anomalous values. profiling Detects new outliers, which are new minimum values, much below the last known minimum value. If the minimum value is constantly changing, detects outliers as the biggest change of the minimum value during the last 90 days.
daily_min_anomaly Abnormal change in the minimum of numeric values. Measured as a percentile of anomalous values. monitoring Detects new outliers, which are new minimum values, much below the last known minimum value. If the minimum value is constantly changing, detects outliers as the biggest change of the minimum value during the last 90 days.
daily_partition_min_anomaly Abnormal change in the minimum of numeric values. Measured as a percentile of anomalous values. partitioned Detects new outliers, which are new minimum values, much below the last known minimum value. If the minimum value is constantly changing, detects outliers as the biggest change of the minimum value during the last 90 days. Finds the minimum value of each daily partition and detect anomalies between daily partitions.

max anomaly

This check finds a maximum value in a numeric column and detects anomalies in a time series of previous maximum values. It raises a data quality issue when the current maximum value is in the top anomaly_percent percentage of the most outstanding values in the time series (it is a new maximum value, far from the previous one). This data quality check uses a 90-day time window and requires a history of at least 30 days.

Data quality check name Friendly name Check type Description Standard
profile_max_anomaly Abnormal change in the maximum of numeric values. Measured as a percentile of anomalous values. profiling Detects new outliers, which are new maximum values, much above the last known maximum value. If the maximum value is constantly changing, detects outliers as the biggest change of the maximum value during the last 90 days.
daily_max_anomaly Abnormal change in the maximum of numeric values. Measured as a percentile of anomalous values. monitoring Detects new outliers, which are new maximum values, much above the last known maximum value. If the maximum value is constantly changing, detects outliers as the biggest change of the maximum value during the last 90 days.
daily_partition_max_anomaly Abnormal change in the maximum of numeric values. Measured as a percentile of anomalous values. partitioned Detects new outliers, which are new maximum values, much above the last known maximum value. If the maximum value is constantly changing, detects outliers as the biggest change of the maximum value during the last 90 days. Finds the maximum value of each daily partition and detect anomalies between daily partitions.

mean change

This check detects that the mean (average) of numeric values has changed more than max_percent from the last measured mean.

Data quality check name Friendly name Check type Description Standard
profile_mean_change Maximum relative change in the mean (average) of numeric values since the last known value profiling Verifies that the mean value in a column changed in a fixed rate since the last readout.
daily_mean_change Maximum relative change in the mean (average) of numeric values since the last known value monitoring Verifies that the mean value in a column changed in a fixed rate since the last readout.
daily_partition_mean_change Maximum relative change in the mean (average) of numeric values since the last known value partitioned Verifies that the mean value in a column changed in a fixed rate since last readout.

mean change 1 day

This check detects that the mean (average) of numeric values has changed more than max_percent from the mean value measured one day ago (yesterday).

Data quality check name Friendly name Check type Description Standard
profile_mean_change_1_day Maximum relative change in the mean (average) of numeric values vs 1 day ago profiling Verifies that the mean value in a column changed in a fixed rate since the last readout from yesterday.
daily_mean_change_1_day Maximum relative change in the mean (average) of numeric values vs 1 day ago monitoring Verifies that the mean value in a column changed in a fixed rate since last readout from yesterday.
daily_partition_mean_change_1_day Maximum relative change in the mean (average) of numeric values vs 1 day ago partitioned Verifies that the mean value in a column changed in a fixed rate since the last readout from yesterday.

mean change 7 days

This check detects that the mean (average) value of numeric values has changed more than max_percent from the mean value measured seven days ago. This check aims to overcome a weekly seasonability and compare Mondays to Mondays, Tuesdays to Tuesdays, etc.

Data quality check name Friendly name Check type Description Standard
profile_mean_change_7_days Maximum relative change in the mean (average) of numeric values vs 7 days ago profiling Verifies that the mean value in a column changed in a fixed rate since the last readout from the last week.
daily_mean_change_7_days Maximum relative change in the mean (average) of numeric values vs 7 days ago monitoring Verifies that the mean value in a column changed in a fixed rate since last readout from last week.
daily_partition_mean_change_7_days Maximum relative change in the mean (average) of numeric values vs 7 days ago partitioned Verifies that the mean value in a column changed in a fixed rate since the last readout from the last week.

mean change 30 days

This check detects that the mean (average) of numeric values has changed more than max_percent from the mean value measured thirty days ago. This check aims to overcome a monthly seasonability and compare a value to a similar value a month ago.

Data quality check name Friendly name Check type Description Standard
profile_mean_change_30_days Maximum relative change in the mean (average) of numeric values vs 30 days ago profiling Verifies that the mean value in a column changed in a fixed rate since the last readout from the last month.
daily_mean_change_30_days Maximum relative change in the mean (average) of numeric values vs 30 days ago monitoring Verifies that the mean value in a column changed in a fixed rate since last readout from last month.
daily_partition_mean_change_30_days Maximum relative change in the mean (average) of numeric values vs 30 days ago partitioned Verifies that the mean value in a column changed in a fixed rate since the last readout from the last month.

median change

This check detects that the median of numeric values has changed more than max_percent from the last measured median.

Data quality check name Friendly name Check type Description Standard
profile_median_change Maximum relative change in the median of numeric values since the last known value profiling Verifies that the median in a column changed in a fixed rate since the last readout.
daily_median_change Maximum relative change in the median of numeric values since the last known value monitoring Verifies that the median in a column changed in a fixed rate since the last readout.
daily_partition_median_change Maximum relative change in the median of numeric values since the last known value partitioned Verifies that the median in a column changed in a fixed rate since the last readout.

median change 1 day

This check detects that the median of numeric values has changed more than max_percent from the median value measured one day ago (yesterday).

Data quality check name Friendly name Check type Description Standard
profile_median_change_1_day Maximum relative change in the median of numeric values vs 1 day ago profiling Verifies that the median in a column changed in a fixed rate since the last readout from yesterday.
daily_median_change_1_day Maximum relative change in the median of numeric values vs 1 day ago monitoring Verifies that the median in a column changed in a fixed rate since the last readout from yesterday.
daily_partition_median_change_1_day Maximum relative change in the median of numeric values vs 1 day ago partitioned Verifies that the median in a column changed in a fixed rate since the last readout from yesterday.

median change 7 days

This check detects that the median of numeric values has changed more than max_percent from the median value measured seven days ago. This check aims to overcome a weekly seasonability and compare Mondays to Mondays, Tuesdays to Tuesdays, etc.

Data quality check name Friendly name Check type Description Standard
profile_median_change_7_days Maximum relative change in the median of numeric values vs 7 days ago profiling Verifies that the median in a column changed in a fixed rate since the last readout from the last week.
daily_median_change_7_days Maximum relative change in the median of numeric values vs 7 days ago monitoring Verifies that the median in a column changed in a fixed rate since the last readout from the last week.
daily_partition_median_change_7_days Maximum relative change in the median of numeric values vs 7 days ago partitioned Verifies that the median in a column changed in a fixed rate since the last readout from the last week.

median change 30 days

This check detects that the median of numeric values has changed more than max_percent from the median value measured thirty days ago. This check aims to overcome a monthly seasonability and compare a value to a similar value a month ago.

Data quality check name Friendly name Check type Description Standard
profile_median_change_30_days Maximum relative change in the median of numeric values vs 30 days ago profiling Verifies that the median in a column changed in a fixed rate since the last readout from the last month.
daily_median_change_30_days Maximum relative change in the median of numeric values vs 30 days ago monitoring Verifies that the median in a column changed in a fixed rate since the last readout from the last month.
daily_partition_median_change_30_days Maximum relative change in the median of numeric values vs 30 days ago partitioned Verifies that the median in a column changed in a fixed rate since the last readout from the last month.

sum change

This check detects that the sum of numeric values has changed more than max_percent from the last measured sum.

Data quality check name Friendly name Check type Description Standard
profile_sum_change Maximum relative change in the sum of numeric values since the last known value profiling Verifies that the sum in a column changed in a fixed rate since the last readout.
daily_sum_change Maximum relative change in the sum of numeric values since the last known value monitoring Verifies that the sum in a column changed in a fixed rate since the last readout.
daily_partition_sum_change Maximum relative change in the sum of numeric values since the last known value partitioned Verifies that the sum in a column changed in a fixed rate since the last readout.

sum change 1 day

This check detects that the sum of numeric values has changed more than max_percent from the sum measured one day ago (yesterday).

Data quality check name Friendly name Check type Description Standard
profile_sum_change_1_day Maximum relative change in the sum of numeric values vs 1 day ago profiling Verifies that the sum in a column changed in a fixed rate since the last readout from yesterday.
daily_sum_change_1_day Maximum relative change in the sum of numeric values vs 1 day ago monitoring Verifies that the sum in a column changed in a fixed rate since the last readout from yesterday.
daily_partition_sum_change_1_day Maximum relative change in the sum of numeric values vs 1 day ago partitioned Verifies that the sum in a column changed in a fixed rate since the last readout from yesterday.

sum change 7 days

This check detects that the sum of numeric values has changed more than max_percent from the sum measured seven days ago. This check aims to overcome a weekly seasonability and compare Mondays to Mondays, Tuesdays to Tuesdays, etc.

Data quality check name Friendly name Check type Description Standard
profile_sum_change_7_days Maximum relative change in the sum of numeric values vs 7 days ago profiling Verifies that the sum in a column changed in a fixed rate since the last readout from last week.
daily_sum_change_7_days Maximum relative change in the sum of numeric values vs 7 days ago monitoring Verifies that the sum in a column changed in a fixed rate since the last readout from the last week.
daily_partition_sum_change_7_days Maximum relative change in the sum of numeric values vs 7 days ago partitioned Verifies that the sum in a column changed in a fixed rate since the last readout from the last week.

sum change 30 days

This check detects that the sum of numeric values has changed more than max_percent from the sum measured thirty days ago. This check aims to overcome a monthly seasonability and compare a value to a similar value a month ago.

Data quality check name Friendly name Check type Description Standard
profile_sum_change_30_days Maximum relative change in the sum of numeric values vs 30 days ago profiling Verifies that the sum in a column changed in a fixed rate since the last readout from last month.
daily_sum_change_30_days Maximum relative change in the sum of numeric values vs 30 days ago monitoring Verifies that the sum in a column changed in a fixed rate since the last readout from the last month.
daily_partition_sum_change_30_days Maximum relative change in the sum of numeric values vs 30 days ago partitioned Verifies that the sum in a column changed in a fixed rate since the last readout from the last month.