Evally
Research & data

Record matcher (dedupe)

Do these two records describe the same person, company or product?

Entity resolution for messy data: compares two records despite typos, abbreviations and formatting differences, and names which fields disagree. Clear matches merge, conflicts stay separate, and the grey zone goes to review.

Try it live

Real calls to Jev. Pick an example or paste your own.

Examples
66
62
No verdict yet

Pick an example or paste your own input, then run it.

Under the hood

Every question and rule, in the open. Fork it to change any of them.

What it asks

Reads record_a and record_b, then asks 4 questions in one call.

  1. Q1Same entityScore

    Do record_a and record_b describe the same real-world entity?

    1. 0Definitely different
    2. 1Probably different
    3. 2Probably the same
    4. 3Definitely the same
  2. Q2Names conflictYes / no

    Do the names conflict in a way that abbreviations, typos or formatting can't explain?

  3. Q3Locations conflictYes / no

    Do the addresses or locations conflict?

  4. Q4Identifiers conflictYes / no

    Do identifiers such as email, phone, SKU, tax ID or URL conflict?

How it decides

Rules run in code, top to bottom. The first one that matches gives the verdict.

  1. 1
    If Identifiers conflict ≥ 0.7Different
  2. 2
    If Same entity ≥ 2.4 of 3Match
  3. 3
    If Same entity ≥ 1.5 of 3Possible matchreview
  4. ·
    DefaultDifferent

Call it from your code

Every template runs as-is with an API key, no setup: POST /api/v1/judges/record-matcher/run.

curl -X POST https://tryevally.com/api/v1/judges/record-matcher/run \  -H "Authorization: Bearer $EVALLY_API_KEY" \  -H "Content-Type: application/json" \  -d '{  "input": {    "record_a": "Intl. Business Machines Corp, 1 New Orchard Rd, Armonk NY, ibm.com",    "record_b": "IBM, One New Orchard Road, Armonk, New York 10504, www.ibm.com"  }}'

Seen in the wild

Community builds on Jev that use this pattern. Not affiliated with Evally.

More in Research & data