Define record identity before deleting duplicates

Two rows with the same name are a review candidate, not proof that they describe the same person. Start with an untouched export and create a separate working copy. Keep a source-system identifier alongside each row so that every cleanup decision can be traced back to its origin.

Write a matching policy for people, organizations and opportunities separately. For example, decide who checks a shared mailbox, a changed email address or two contacts using one office phone. Keep unresolved cases outside the import batch; guessing a match can join information that belongs to different customers.

Check the destination's actual matching rules

HubSpot documents contact matching by email and company matching by domain. Its import guidance also supports Record IDs for matching existing records; a row without a Record ID creates a new record when that identifier is used. Check whether you are updating destination records or creating records from another system before mapping an ID column. HubSpot deduplication guidance

Pipedrive describes person matching using a recognized name plus a matching organization, phone or email, with an option to bypass merging. It also states that importing deals with the same name does not make them duplicates. Review people and deals as different object types rather than assuming one matching rule covers everything. Pipedrive import matching guidance

These documented rules explain what to investigate; they do not establish that your file will merge correctly. Record the chosen import options and test the cases that could produce a wrong match. Provider interfaces and account settings may change, so inspect the current importer before the final batch.

Choose a trusted source for each conflicting field

Create a field decision sheet with source column, destination field, trusted source, transformation and reviewer. A sales owner might approve pipeline stages, while a data steward approves company names. Give each conflict a named decision maker rather than letting spreadsheet row order decide which value survives.

For an illustrative conflict, one source says a prospect is qualified while a newer note says the prospect declined. Preserve both source values in your review sheet and ask the responsible salesperson to approve the destination stage. A recent timestamp alone does not prove that the newer value is appropriate.

Distinguish an empty value from an instruction to clear an existing value. Test how the destination handles blanks and mapped fields. Do not fill missing contact preferences, addresses or company facts merely to complete a column. Retain an explicit unresolved status when the source does not support an answer.

Rehearse a repeat import with written expected results

Use a controlled test workspace and synthetic or approved sample records. Include an ordinary contact, two people with the same name, a shared contact detail, a missing identifier and two deals with the same name. For every case, write the expected record count, field values and associations before importing.

Inspect the first import, then repeat the same sample with the same settings. This is a proposed acceptance test, not a report of product testing. Unexpected new records or changed values are reasons to revisit your matching policy. If an import changes the destination, keep the test isolated so that the exercise does not overwrite live customer work.

Keep this checklist

  • Every sample row has a traceable source identifier.
  • Expected new and updated records are listed separately.
  • Ambiguous matches remain in a review queue.
  • Mapped blanks behave as expected.
  • The repeated sample does not create unintended records.
  • Contact, company and deal relationships match the expected result.

Approve batches with an exception log

Before increasing the batch size, reconcile what happened to each sample: created, updated, rejected or held for review. Record the reason for every difference. A successful upload message is only one checkpoint; your acceptance decision depends on the resulting records.

Keep a cleanup log containing the source row, decision, approver and date. Preserve the original export and the approved import file under appropriate access controls. Once identity and field conflicts are settled, continue with the wider migration plan for permissions, cutover and operational handoffs. This focused cleanup exercise does not replace that plan.

Common questions

Should I merge contacts just because their names match?

No. Treat matching names as a review signal. Compare the available identifiers and business context, and let a named reviewer resolve uncertain matches before import.

What should I do with conflicting CRM field values?

Define a trusted source and reviewer for each field. Preserve the original values in a decision sheet, and document the approved result rather than relying on import order.

How can I check whether an import creates duplicates?

In a controlled workspace, import a representative sample with written expected outcomes, inspect it and repeat the same sample. Reconcile record counts, mapped values and associations after both runs.

Sources & verification

Source review: 2026-10-05. AI-assisted desk research using official HubSpot and Pipedrive documentation reviewed on 5 October 2026. Matching-rule summaries are sourced; the field decision sheet, sample cases and repeat-import exercise are original planning guidance. No hands-on product tests, performance rankings or plan comparisons were performed.

This is an original planning guide, not a hands-on product review. Provider capabilities, pricing and commercial terms should be verified directly before choosing software.