Skip to main content

Resolving Duplicate Contacts

How to identifying and fix duplicate Contacts in CiviPlus

C
Written by CiviPlus Helpdesk
Updated over a month ago

Overview

Even if you are very diligent, duplicate contact records can occasionally still get created in CiviPlus, either via manual data entry, imports, or online self-service webforms. To help maintain data quality, CiviPlus provides a set of tools for identifying, preventing, and resolving duplicate contacts in a controlled and auditable way.

CiviPlus does not automatically merge duplicates without checks. It uses configurable rules to either flag potential duplicates for review or safely merge records in specific automated scenarios.

How Duplicate Contacts Can Get Created

Duplicate contacts typically get created in situations such as:

  • A Civi user creates a new contact without realising it already exists

  • A person signs up online using a different email address or spelling

  • Contacts are imported without appropriate matching rules

  • Data is migrated from multiple external systems

Because these situations are common, CiviPlus assumes duplicates will occur and focuses on helping administrators manage them effectively rather than trying to eliminate them entirely .

Deduplication (Dedupe) Rules

What are dedupe rules

Dedupe rules specify how CiviPlus decides whether two contacts should be considered potential duplicates. A rule is made up of:

  • One or more fields to compare, such as email, name, or address

  • A weight for each field, which is assigned if there is an exact match

  • A threshold score that determines when a match is considered a duplicate. This compared to the sum of the weightings assigned for each field compared.

When two contacts meet or exceed the threshold score, they are flagged as potential duplicates .

Dedupe rules are configured separately for each contact type:

  • Individuals

  • Organisations

  • Households

Types of dedupe rules

CiviPlus supports three types of dedupe rules, each used in different contexts.

Unsupervised rules

  • Used in automated processes

  • Designed to be strict and reliable

  • Applied during:

    • Online registrations

    • Event, membership, and contribution signups

    • Contact imports

If a match is found, CiviPlus assumes the records are the same and merges or updates automatically, depending on the context.

Supervised rules

  • Used when a user is present to review the result

  • Applied when contacts are added or edited via the user interface

  • If a match is found, the user is warned and can choose whether to continue or edit the existing contact

These rules are usually broader than unsupervised rules because human judgement is involved .

General rules

  • Used for proactive data cleanup

  • Applied when scanning the database for duplicates

  • Multiple general rules can be created for different matching strategies

Identifying Duplicates

Automatic checks

CiviPlus automatically checks for duplicates in several scenarios:

  • When contacts are created or edited via the UI

  • When contacts are created through online forms

  • When contacts are imported

Which dedupe rule is used depends on the context and contact type .

Manual scanning for duplicates

Administrators can also actively search for duplicates by going to:

Contacts → Find and Merge Duplicate Contacts

From there, you can:

  • Choose a dedupe rule

  • Scan all contacts or a specific group

  • Review a list of potential duplicate pairs or groups

This process allows systematic data cleanup without relying solely on automated checks .

Merging Duplicate Contacts

The merge process

When merging two contacts:

  • One record is selected as the primary contact

  • The other record is merged into it and then deleted

  • Related data is preserved, including:

    • Activities

    • Contributions

    • Memberships

    • Events

    • Cases

    • Tags and group memberships

During the merge, users can choose which values to keep when fields differ. Data is colour coded to highlight matches, differences, and additive data such as activities and tags .

Marking contacts as not duplicates

If two contacts are incorrectly flagged as potential duplicates, they can be marked as Not a duplicate.

  • These pairs are excluded from future dedupe results

  • Exceptions can be reviewed later from the dedupe screen

This helps prevent repeated false positives .

Batch merging

For large datasets, CiviPlus supports batch merging:

  • Merge all duplicates found by a rule

  • Merge selected duplicates only

  • Skip records where there are data conflicts

Batch merging is powerful but risky and should only be used after testing and data backup, as merges cannot be undone without database logging enabled .

Best Practices

  • Review and tune dedupe rules before large imports

  • Keep unsupervised rules strict to avoid false merges

  • Use supervised and general rules for cleanup and review

  • Always back up data before batch merging

  • Merge manually when data conflicts require judgement

Did this answer your question?