> ## Documentation Index
> Fetch the complete documentation index at: https://openmetadata-add-ontology-explorer-docs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Column Tests - UI Config | OpenMetadata Quality Config Guide

> Configure column-level data quality tests in the OpenMetadata UI — uniqueness, nullness, regex, ranges, and more.

# Column Tests - UI Config

Tests applied on top of Column metrics. For table-level tests, see the [Tests UI Overview](/v1.13.x/how-to-guides/data-quality-observability/quality/tests-ui).

Here is the list of all column tests:

* [Column Values to Be Unique](#column-values-to-be-unique)
* [Column Values to Be Not Null](#column-values-to-be-not-null)
* [Column Values to Match Regex](#column-values-to-match-regex)
* [Column Values to not Match Regex](#column-values-to-not-match-regex)
* [Column Values to Be in Set](#column-values-to-be-in-set)
* [Column Values to Be Not In Set](#column-values-to-be-not-in-set)
* [Column Values to Be Between](#column-values-to-be-between)
* [Column Values Missing Count to Be Equal](#column-values-missing-count-to-be-equal)
* [Column Values Lengths to Be Between](#column-values-lengths-to-be-between)
* [Column Value Max to Be Between](#column-value-max-to-be-between)
* [Column Value Min to Be Between](#column-value-min-to-be-between)
* [Column Value Mean to Be Between](#column-value-mean-to-be-between)
* [Column Value Median to Be Between](#column-value-median-to-be-between)
* [Column Values Sum to Be Between](#column-values-sum-to-be-between)
* [Column Values Standard Deviation to Be Between](#column-values-standard-deviation-to-be-between)
* [Column Values To Be At Expected Location](#column-values-to-be-at-expected-location)

### Column Values to Be Unique

Ensures each value in a column appears only once.

#### Dimension

`Uniqueness`

#### When to Use

* Primary keys or natural identifiers
* Fields like email, username, or ID

#### Behavior

| Condition                 | Status |
| ------------------------- | ------ |
| All values are unique     | ✅      |
| Any duplicate value found | ❌      |

<video autoPlay muted loop playsInline className="w-full aspect-video rounded-xl" src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/unique.mp4?fit=max&auto=format&n=3AxMmBAFvgfoptmj&q=85&s=923a3f34c18997b86a12a15c1c692b62" data-path="public/images/how-to-guides/quality/column-test/unique.mp4" />

### Column Values to Be Not Null

Ensures there are no NULL entries in the column.

#### Dimension

`Completeness`

#### When to Use

* Mandatory fields such as `email`, `amount`, `created_at`
* Required keys or business-critical columns

#### Behavior

| Condition              | Status |
| ---------------------- | ------ |
| No NULLs present       | ✅      |
| Any NULL value present | ❌      |

<video autoPlay muted loop playsInline className="w-full aspect-video rounded-xl" src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/not-null.mp4?fit=max&auto=format&n=3AxMmBAFvgfoptmj&q=85&s=1b692bfa08567bac13e9912270327066" data-path="public/images/how-to-guides/quality/column-test/not-null.mp4" />

### Column Values to Match Regex

This test validates that values in a column match a configured regular expression. OpenMetadata uses database regex support where available. For dialects where SQL regex is not supported, the validator falls back to SQL `LIKE` semantics.

Ensures all values match a specified regular expression pattern.

#### Dimension

`Validity`

#### When to Use

* Emails, zip codes, IDs, structured formats

#### Behavior

| Condition                | Status |
| ------------------------ | ------ |
| All values match regex   | ✅      |
| Any value does not match | ❌      |

<video autoPlay muted loop playsInline className="w-full aspect-video rounded-xl" src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/match-regex.mp4?fit=max&auto=format&n=3AxMmBAFvgfoptmj&q=85&s=f0295ddf36792b421ce8e54abf3ba004" data-path="public/images/how-to-guides/quality/column-test/match-regex.mp4" />

### Column Values to not Match Regex

This test validates that values in a column do not match a configured forbidden regular expression. If the test finds values matching the `forbiddenRegex`, the test will fail. OpenMetadata uses database regex support where available. For dialects where SQL regex is not supported, the validator falls back to SQL `NOT LIKE` semantics.

Ensures values do **not** match a restricted regex pattern.

#### Dimension

`Validity`

#### When to Use

* Prevent forbidden values, test strings, or patterns

#### Behavior

| Condition                          | Status |
| ---------------------------------- | ------ |
| No value matches forbidden pattern | ✅      |
| Any value matches the pattern      | ❌      |

<video autoPlay muted loop playsInline className="w-full aspect-video rounded-xl" src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/not-match-regex.mp4?fit=max&auto=format&n=3AxMmBAFvgfoptmj&q=85&s=57d0034bb7c7e5e3f9f91ee734ed53ec" data-path="public/images/how-to-guides/quality/column-test/not-match-regex.mp4" />

### Column Values to Be in Set

Ensures values are within a predefined whitelist.

#### Dimension

`Validity`

#### When to Use

* Enum values: `status`, `currency`, `country_code`

#### Behavior

| Condition                                          | Status |
| -------------------------------------------------- | ------ |
| All values in set (if `matchEnum = true`)          | ✅      |
| Any value not in set (if `matchEnum = true`)       | ❌      |
| Any value from set exists (if `matchEnum = false`) | ✅      |
| No values from set found (if `matchEnum = false`)  | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/column-values-in-set.gif?s=21c63746bee1d6e2056f0a7cc7e756d7" alt="Column Values In Set" width="1502" height="720" data-path="public/images/how-to-guides/quality/column-test/column-values-in-set.gif" />

### Column Values to Be Not In Set

Ensures values are **not** in a specified blacklist.

#### Dimension

`Validity`

#### When to Use

* Block invalid values like `"NA"`, `"Unknown"`, `-1`

#### Behavior

| Condition                          | Status |
| ---------------------------------- | ------ |
| No values from forbidden set       | ✅      |
| Any value from forbidden set found | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/column-values-not-in-set.gif?s=735f5c7d0d6344c93f799dfecbb14bad" alt="Column Values Not In Set" width="1502" height="720" data-path="public/images/how-to-guides/quality/column-test/column-values-not-in-set.gif" />

### Column Values to Be Between

Validates that values in a column are within a configured minimum and maximum range.

#### Dimension

`Accuracy`

#### When to Use

* Numeric thresholds such as age, price, score, or percentage
* Date or timestamp ranges when supported by the connector

#### Behavior

| Condition                 | Status |
| ------------------------- | ------ |
| Value within `[min, max]` | ✅      |
| Value \< min or > max     | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/to-be-between.gif?s=b93794f8f9ed8680d0a0f40d5c11aad6" alt="To Be Between" width="1502" height="720" data-path="public/images/how-to-guides/quality/column-test/to-be-between.gif" />

### Column Values Missing Count to Be Equal

Ensures total missing values (NULL + defined "missing" strings) match a target count.

#### Dimension

`Completeness`

#### When to Use

* Auditing known missing values
* Accounting for `"NA"`, `"N/A"`, `"null"`

#### Behavior

| Condition                      | Status |
| ------------------------------ | ------ |
| Missing count = expected value | ✅      |
| Missing count ≠ expected value | ❌      |

<video autoPlay muted loop playsInline className="w-full aspect-video rounded-xl" src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/missing-count.mp4?fit=max&auto=format&n=3AxMmBAFvgfoptmj&q=85&s=e678dd83f5b739c1320b412fab83d38e" data-path="public/images/how-to-guides/quality/column-test/missing-count.mp4" />

### Column Values Lengths to Be Between

Ensures that the length of each string value in the column is within a defined character range.

#### Dimension

`Accuracy`

#### When to Use

* To validate field length constraints like `name`, `address`, or `description`
* To catch too-short or too-long values that may break UI or downstream logic

#### Behavior

| Condition                                  | Status |
| ------------------------------------------ | ------ |
| All values have length within `[min, max]` | ✅      |
| Any value length \< min or > max           | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/lengths-to-be-between.gif?s=cac2fb572914d1a87b5e433a52d55b12" alt="Lengths To Be Between" width="800" height="383" data-path="public/images/how-to-guides/quality/column-test/lengths-to-be-between.gif" />

### Column Value Max to Be Between

Validates the **maximum** value of a column lies within a range.

#### Dimension

`Accuracy`

#### When to Use

* Cap validation for `score`, `amount`, `age`

#### Behavior

| Condition                       | Status |
| ------------------------------- | ------ |
| Max value in range `[min, max]` | ✅      |
| Max \< min or Max > max         | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/max.gif?s=498db50242f8e453364ce8198fdd3ace" alt="Max" width="2850" height="1366" data-path="public/images/how-to-guides/quality/column-test/max.gif" />

### Column Value Min to Be Between

Validates the **minimum** value of a column lies within a range.

#### Dimension

`Accuracy`

#### When to Use

* Threshold validation for `discount`, `price`, etc.

#### Behavior

| Condition                       | Status |
| ------------------------------- | ------ |
| Min value in range `[min, max]` | ✅      |
| Min \< min or Min > max         | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/min.gif?s=9c437ef5755a5b9de5f2892123b6772a" alt="Min" width="2850" height="1366" data-path="public/images/how-to-guides/quality/column-test/min.gif" />

### Column Value Mean to Be Between

Validates that the **mean (average)** value is in the expected range.

#### Dimension

`Accuracy`

#### When to Use

* Check dataset drift or pipeline behavior

#### Behavior

| Condition                  | Status |
| -------------------------- | ------ |
| Mean value in `[min, max]` | ✅      |
| Mean \< min or Mean > max  | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/mean.gif?s=9054cec893a66c9f4113289accc14ad4" alt="Mean" width="800" height="383" data-path="public/images/how-to-guides/quality/column-test/mean.gif" />

### Column Value Median to Be Between

Validates the **median** value is in the expected range.

#### Dimension

`Accuracy`

#### When to Use

* Median income, score, latency checks

#### Behavior

| Condition                     | Status |
| ----------------------------- | ------ |
| Median in range `[min, max]`  | ✅      |
| Median \< min or Median > max | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/median.gif?s=9ece3be4976bce00857298bd17df5ba4" alt="Median" width="2850" height="1366" data-path="public/images/how-to-guides/quality/column-test/median.gif" />

### Column Values Sum to Be Between

Validates the total **sum** of values in a column is within a defined range.

#### Dimension

`Accuracy`

#### When to Use

* Revenue, units sold, total scores, etc.

#### Behavior

| Condition                 | Status |
| ------------------------- | ------ |
| Sum in range `[min, max]` | ✅      |
| Sum \< min or Sum > max   | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/sum.gif?s=1cf847efe3b5c3289377ce9f0b3c14ea" alt="Sum" width="1502" height="720" data-path="public/images/how-to-guides/quality/column-test/sum.gif" />

### Column Values Standard Deviation to Be Between

Validates the **standard deviation** (spread) of values is acceptable.

#### Dimension

`Accuracy`

#### When to Use

* Monitoring variance in numeric datasets

#### Behavior

| Condition               | Status |
| ----------------------- | ------ |
| Std Dev in `[min, max]` | ✅      |
| Std Dev \< min or > max | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/standard-deviation.gif?s=390b41530a60e8f43fea6d1719579dee" alt="Standard Deviation" width="1502" height="720" data-path="public/images/how-to-guides/quality/column-test/standard-deviation.gif" />

### Column Values To Be At Expected Location

Validates latitude/longitude values are within a defined area.

#### Dimension

`Accuracy`

#### When to Use

* Verifying address coordinates
* Mapping regional data

#### Behavior

| Condition                                      | Status |
| ---------------------------------------------- | ------ |
| Coordinates within buffer of expected location | ✅      |
| Any record outside allowed radius              | ❌      |

<img src="https://mintcdn.com/openmetadata-add-ontology-explorer-docs/3AxMmBAFvgfoptmj/public/images/how-to-guides/quality/column-test/expected-location.gif?s=a772eb81c4529c0c40ae2ede56d33811" alt="Expected Location" width="1502" height="720" data-path="public/images/how-to-guides/quality/column-test/expected-location.gif" />
