> For the complete documentation index, see [llms.txt](https://docs.zingg.ai/zingg/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zingg.ai/zingg/zingg-concepts/zingg-entity-resolution-platform/deterministic-vs-probabilistic-matching.md).

# Deterministic vs Probabilistic Matching

How Zingg's two matching approaches work individually and collectively, when to use each

Zingg supports two matching approaches: probabilistic and deterministic. Both are explained on this page. Zingg Enterprise runs them together in a single flow. Probabilistic handles variations and uncertainty; deterministic handles trusted identifiers that should always produce an exact match.

### Probabilistic matching

Probabilistic matching is Zingg's default and is available in all editions. The model learns field-level similarity weights from your labeled training pairs and assigns a match score to every candidate pair. Pairs above the automatically optimized threshold are grouped into a cluster.

This approach handles the full range of real-world data quality problems: typos, abbreviations, missing fields, name variations, and format differences across systems.

*You do not write rules. You label examples. Zingg learns the rest.*

### Deterministic matching

Deterministic matching is only available in the Enterprise Edition. It lets you define hard rules for cases where certain field combinations should always produce a match, regardless of the probabilistic score. When your data contains reliable unique identifiers, a national ID, an email, or a combination like first name, email plus date of birth, deterministic matching can bring them together. Zingg Enterprise can apply any combination of deterministic rules like (ssn) or (email and dob) or (passport number and dob).

### How Zingg matches probabilistically AND deterministically

Zingg applies deterministic rules first. If two records share the same combination of identifiers you specify, Zingg treats that pair as a match with a score of 1, bypassing the ML model entirely for that pair. Pairs resolved deterministically are not re-evaluated probabilistically. Pairs that do not satisfy any deterministic condition fall through to the probabilistic model. All matching pairs get rolled into clusters.

Probabilistic and deterministic matching in Zingg Enterprise runs both in a single flow, so you do not have to choose between them.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.zingg.ai/zingg/zingg-concepts/zingg-entity-resolution-platform/deterministic-vs-probabilistic-matching.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
