# CRM data cleansing for a sales team of five: a 60-minute monthly routine ordered by what breaks the forecast

https://salesbond.app/blog/crm-data-cleansing-monthly-routine-small-team/
Published: 2026-10-22 · Updated: 2026-10-26

CRM data cleansing for a small sales team works best as a one-hour routine once a month, not a yearly project. Do it in a fixed order: records with no owner first, then the empty fields your forecast reads, then duplicates, then bounced and dead contacts, and formats last.

The order matters more than the tool. The textbook definition covers the same jobs in a flat list: removing duplicates, correcting formats, filling in missing values and verifying contact details ( [Insycle: data cleaning](https://www.insycle.com/data-cleaning/)). What a team of five needs on top of that is a sequence, a clock and a name next to each step.

## Cleansing is a monthly habit, not a project

Plenty of small teams have done the big clean at least once. Someone exports the contacts, spends a weekend in a spreadsheet, imports them back, and for a few weeks the CRM looks like the demo. Then a rep creates a second record for a buyer who already exists, an imported list lands with the owner column blank, a colleague leaves with her open deals still in her name. The drift starts again.

The project fails for a structural reason, not a lazy one. Data decays at the speed the team sells. A clean done once can’t keep up with a process that runs every day; a clean done monthly can, because the backlog never grows past what one person can read in an hour. That is also why we don’t add a quarterly deep clean on top. If the monthly hour runs, there is nothing left for a deep clean to find.

It helps to keep two words apart. CRM hygiene is the weekly habit that keeps records usable between cleans. Cleansing is the monthly repair that catches what the habit missed.

So we treat it like the month-end close in finance: same day, same checklist, same person, done inside the CRM and not in an export. If it doesn’t fit in an hour, the list is wrong, not the hour.

## What dirty data costs a small team (and what it does not)

Start with what it does not cost, because that is where most CRM data cleaning advice overshoots. A phone number stored with brackets in one record and without them in another costs you nothing until someone runs a dialer. A company name typed in lower case costs nothing at all. Inconsistent formats are ugly, and they are the first thing a vendor demo fixes, but in a team of five they rarely change a decision.

What does cost you is anything the forecast or the manager reads. A deal with no owner is a deal nobody follows up and nobody is asked about on Monday. A deal in Proposal with an empty amount is a hole in the weighted pipeline; the manager either guesses or excludes it, and both are wrong. Two deals for the same buyer double the pipeline for that account and split the activity history, so whoever picks one up reads half the story. And a contact whose email bounced last quarter is a follow-up that fails silently while the sequence keeps sending.

Our test for the monthly hour is one question. Will fixing it change a forecast line, a Monday question or a rep’s to-do list? If yes, it goes in. If it only makes the database tidier, it goes on the the someday list, and most of that list stays there.

## The data cleansing steps, in the order that protects the forecast

Owner, required fields on open deals, duplicates, dead contacts, formats. We hold that order even in months when the duplicates are the more annoying problem.

First, orphans. Open deals, then people and organizations, with an empty owner field. This is one saved filter (owner is empty) built once and reused every month. Orphans go first because every later step needs a person to ask: “Is this deal still real?” has no answer when there is nobody to put the question to. Reassign each one and note where it came from, whether an import, a departed colleague or a web form with no routing rule.

Second, empty required fields on open deals. Required here means required by your forecast, not by the CRM admin: usually the amount, the expected close date and whatever field your pipeline report groups by. Closed deals stay out of it. Whether the close date is honest and whether a next step is booked is a weekly discipline, covered in [five pipeline hygiene habits that actually stick](https://salesbond.app/blog/five-pipeline-hygiene-habits-that-actually-stick/), and the stage rules and the 30-day force-close that keep a pipeline honest between cleans are in [B2B sales pipeline hygiene](https://salesbond.app/blog/b2b-sales-pipeline-hygiene/). The monthly hour only checks that the fields aren’t blank.

Third, duplicates: organizations, then people, then open deals. Merging organizations first means the people under them land in one place, and merging people before deals keeps each deal on the right contact. Our match rule is plain. Same email for people, same email domain plus a near-identical name for organizations, and anything fuzzier waits for the rep who owns the record. If your CRM flags possible duplicates, this step is a review of that list, not a dedupe project. Don’t assume the list covers everything, though. Pipedrive’s Merge Duplicates, for example, lists possible duplicate people and organizations ( [Pipedrive Knowledge Base](https://support.pipedrive.com/en/article/merge-duplicates)); why duplicate deals still need a human eye is in [duplicate records in Pipedrive](https://salesbond.app/blog/duplicate-records-in-pipedrive/).

Fourth, bounced emails and dead contacts. A bounced address is the sneakiest kind of dirty data because the field looks complete. Filter on the bounce flag your email tool writes back, and on contacts with no activity for a period you choose. Then decide per record: a new address, a “left the company” status, or archive. Not delete.

Fifth, formats and standards: country and industry values, how you write company names, the picklist that has grown a crowd of near-synonyms. This step overruns if you let it, so it gets whatever is left of the hour. Field-level cleanup is its own job, covered for Pipedrive teams in [custom fields cleanup](https://salesbond.app/blog/pipedrive-custom-fields-cleanup-data-fields/). Monthly you fix only what blocks a report you actually run.

## The 60-minute routine, minute by minute

![Six-step timeline of the 60-minute monthly CRM cleanup, from saved filters to formats, with a bar showing minutes per step](https://salesbond.app/wp-content/uploads/2026/10/crm-data-cleansing-monthly-routine-small-team-2.png)

Run it on the same morning each month, before the pipeline review, so the review reads clean data. If you already have automated hygiene rules, keep them. Rules catch what is new. The hour catches what slipped past them: the import that skipped routing, the deals of a rep who left on a Friday.

Minutes 0–5. Open the saved filters: owner is empty; amount is empty on open deals past the first stage; your CRM’s duplicate list, if it keeps one; bounced flag set; last activity older than your chosen period. Write the counts at the top of this month’s note. They are a to-do count for the hour, not a measure of data quality. For that, use the [CRM data quality metrics](https://salesbond.app/blog/crm-data-quality-metrics/) we track by quarter. Next month each count should be the same or smaller.

Minutes 5–15. Orphans. Every record goes to a named rep. If you can’t tell who should own it, give it to the rep who owns that organization, or to yourself with a reminder to decide at the review. Note the source of each batch.

Minutes 15–30. Empty required fields. The manager doesn’t fill these in. Each rep gets their own list, filtered by owner, and you fill only the deals you personally know the answer to. A deal still blank at the pipeline review goes back a stage or gets a conversation, and that rule is what makes next month’s list short.

Minutes 30–45. Duplicates, in the order above. Merge only clear matches; ambiguous pairs go on the owning rep’s list with a one-line question.

Minutes 45–55. Bounced and dead contacts: a new address if the rep has one, a status if they have not, archive if nobody knows the person.

Minutes 55–60. Fix the one or two format values that broke a report this month, add everything else to the someday list, write the closing counts, close the CRM.

A disclosure, since the saved filters are the part people put off: we build SalesBond, a sales management layer on top of the CRM a team already uses; we started with Pipedrive. Its Deal Health checks every deal against more than 20 rules, data and ownership among them, and shows what is wrong in each deal as it happens rather than once a month. The merging, the reassignment and the conversation with the rep are still yours, and the hour still happens. [Check your CRM with SalesBond](https://salesbond.app/).

## Do you need a cleansing tool?

For a team of five, usually not yet. Saved filters and whatever merge feature your CRM offers cover the monthly hour. An external tool starts to earn its price when you import big lists often, when duplicates arrive through integrations faster than one person can review them, or when you need matching rules your CRM doesn’t have. Close the sources first, run the hour for a couple of months, then decide whether what’s left justifies another subscription.

## What not to clean

The data cleansing best practice we disagree with is deleting. A common piece of advice is to delete inactive contacts. We archive them instead.

Closed deals, too, stay as they are. A won deal with a rounded amount or an odd stage history is last year’s revenue, and editing it quietly rewrites numbers someone already reported. Leave closed deals alone unless finance asks, and then do it together with finance.

During the hour nothing gets deleted: a dead contact gets a status, an old lead gets archived, a duplicate gets merged into its twin. Deleting feels like cleaning and is actually the loss of the only record that a conversation happened. For the archive-versus-delete decision on stale deals and leads we wrote a separate piece for Pipedrive teams, [archiving old deals and leads](https://salesbond.app/blog/pipedrive-archive-old-deals-leads/), and the principle holds in any CRM.

Notes and activity history are off limits, however messy. Reps write notes for themselves, and a tidy note isn’t a better one.

And don’t fix formats with an export and a re-import. An import is how duplicates arrive by the hundred: if the duplicate check is skipped or has nothing to match on, every row becomes a new record. Fix formats in the CRM, one picklist at a time, or not at all. In Salesforce, if a bulk fix cannot be avoided, read [Data Loader vs Workbench](https://salesbond.app/blog/salesforce-data-loader-vs-workbench-bulk-update/) before you touch the opportunities.

## Who does what in a team of five

Picture the usual shape: one manager, or a founder who still sells, and four reps. The manager owns the hour and holds the mouse for orphans, duplicates and formats, because those steps need someone who sees the whole pipeline and has the rights to merge and reassign. The reps own their required fields. Thier list arrives before the pipeline review and is expected to be done before it starts.

One rep, rotating each quarter, keeps the standards: the short document that says how we write company names, which picklist values exist and who may add a new one. Rotating it stops the document from becoming one person’s hobby, and every rep has to defend it once.

Then the doors. After two or three months the source notes from the orphan step will show the same culprits again and again: the web form with no routing rule, the import template without an owner column, the departure where nobody reassigned the deals. Each gets a fix outside the hour. A routing rule. A template with the owner column mandatory. An offboarding checklist that reassigns deals the same day the login is removed.

That is most of how you maintain CRM data in a small team. The hour finds the mess, and closing the doors keeps it from coming back, so the counts fall on their own and the hour starts finishing early.

If the reps still aren’t filling their fields, the problem is rarely the fields. Usually the data they enter never comes back to them in a form they can use, and the fix for that is in [CRM adoption](https://salesbond.app/blog/crm-adoption/). For now, pick a morning next month, build the owner-is-empty filter today, and write down the first count.
