> ## Documentation Index
> Fetch the complete documentation index at: https://docs.conduktor.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Data quality Interceptors

> Data quality Interceptor reference for Conduktor Gateway: CEL expression rules, JSON Schema validation, and Schema ID checks for enforcing Kafka message quality.

Conduktor Gateway data quality Interceptors validate Kafka messages at the proxy layer — before they hit the broker. Rules run per record and have three outcomes: **block** the message (error returned to the producer), **mark** it with a header so consumers can decide what to do, or **redirect** it to a dead-letter topic.

## When to use data quality interceptors

Use data quality interceptors when you need to:

* **Enforce schema contracts** — reject records that don't match an expected Avro, Protobuf, or JSON Schema
* **Apply business rules** — validate field values using CEL expressions (e.g., age > 0, email not null)
* **Prevent bad data propagation** — stop invalid records before they reach consumers and cause processing failures
* **Observe without blocking** — audit violations in real time without interrupting producer traffic

<Info>
  **From our blog:** [The hidden pitfalls of Kafka's schemaless data](https://conduktor.io/blog/the-hidden-pitfalls-of-kafka-s-schemaless-data) Why schemaless topics let bad data through, and how CEL and JSON Schema rules catch it at the proxy.
</Info>

## Available policies

| Policy                                                                                                               | Use case                                                              |
| -------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| [Data quality policy](/guide/conduktor-in-production/admin/gateway-policies#validate-data-quality-policy)            | CEL expression and JSON Schema validation on topic messages           |
| [Data quality producer policy](/guide/conduktor-in-production/admin/gateway-policies#validate-producer-data-quality) | Validate records at produce time before they are written to the topic |
| [Schema payload validation policy](/guide/conduktor-in-production/admin/gateway-policies#validate-schema-payload)    | Enforce that records use a registered Schema Registry schema ID       |

## Related resources

* [Data quality policies concept](/guide/conduktor-concepts/data-quality-policies)
* [Enforce data quality use case](/guide/use-cases/enforce-data-quality)
* [Observe data quality violations](/guide/use-cases/observe-data-quality)
