Activated Cloud
← App Store

CRM Hygiene

Activated Cloud✓ Officialactivated/crm-hygiene

No ratings yet4 installsv1.0.0Updated Oct 6, 2026● Unknown

Free · MIT

About

Audits and cleans the owner's CRM so every record can be trusted: data standards, stage definitions with exit criteria, next steps, duplicate detection and safe merges, stale and past-due deals, missing fields, consistent loss and disqualification reasons, opt-out flags and activity logging. Fixes the safe things, asks before merging or changing anything that matters, and never deletes without approval. Use for a weekly or monthly CRM check, before a forecast, or after an import. Not for judging deal health or the forecast (use pipeline-review-and-forecast).

Sales

Documentation

From SKILL.md · v1.0.0 · what the agent reads when it loads this skill3 files: SKILL.md, references/CREDITS.md, references/audit-checks.md

CRM Hygiene

A CRM is only useful if people believe it. You keep it true: every deal has a real next step, every stage means the same thing for everyone, every person exists once, and every opt-out is respected. When two records disagree you find out which is right instead of picking one. The standard: nothing is deleted or merged on a guess, every change is logged and reversible, and the owner can see the state of the data in one card.

When to use

  • "Clean up the CRM."
  • "Why does the pipeline report not match what the team says?"
  • "We imported 2,000 contacts from the old system; check them."
  • "Set up proper deal stages and required fields."
  • A weekly hygiene check before the pipeline review (schedule with cronjob).

What you need

  • CRM access as a connected app (HubSpot, Salesforce, Pipedrive, Attio) with read access, and write access only if the owner allows edits. Without it, ask for CSV exports of companies, contacts, deals and activities and work on copies.
  • The owner's current stage list, required fields and any written conventions. If none exist, propose a standard (step 1) and get it approved before enforcing it.
  • The suppression or opt-out list, wherever it lives.
  • Who owns which accounts and deals.

Method

  1. Agree the data standard once, then keep it in memory and a shared doc:
    • Stages defined by exit criteria the buyer has met, not seller activity. Example: "Problem agreed: the buyer said the problem is worth solving now."
    • Required fields per stage: amount, close date, next step, next step date, primary contact, source; by later stages, economic buyer and competitor.
    • Next step format: date of update, the person on the customer's side who owns the step, the outcome expected (a yes or no result), and the date it is expected.
    • Naming: company names as the company writes them; deal names as <Company> - <product or scope> - <type>.
    • Reasons: closed lost and disqualification reasons from a fixed list with short definitions (see references/audit-checks.md). "Other" requires a comment.
  2. Snapshot before touching anything. Export the objects you will audit and save them with the date in the filename via write_file. This is your undo.
  3. Run the audit with execute_code (pandas) on the export or API data; a starter script is in the reference. Checks, with suggested thresholds the owner can change:
    • open deals with a close date in the past;
    • open deals with no activity for 30 days, or more than twice the median time for their stage;
    • missing required fields for the deal's stage;
    • next step empty, vague ("follow up"), or with a past date;
    • close date pushed 3 or more times;
    • late-stage deals without an economic buyer or a contact;
    • duplicate companies (same normalised domain, or matching normalised names) and duplicate contacts (same email, or same name and company);
    • contacts without a company; deals without a contact;
    • role-only emails (info@, sales@) in sequences where the owner wants named contacts;
    • contacts marked unsubscribed or opted out but still in an active sequence or list (urgent);
    • closed lost without a reason, or "Other" with no comment;
    • owner field blank, or assigned to someone who has left.
  4. Sort findings into three piles.
    • Safe to fix: formatting, obvious typos in non-key fields, normalising country names, filling a field from another field on the same record. Fix if the owner has allowed edits, and log each change.
    • Needs the deal owner: stale deals, past close dates, missing next steps, a stage that looks wrong. Send each owner a short list via ask_teammate or a draft message, asking for the update rather than guessing it.
    • Needs the owner's decision: merges of records with activity on both, deletions, reassignments, stage definition changes. Put them on a show_card with a recommendation.
  5. Merge duplicates safely.
    • Choose the surviving record: the one with the most activity history, then the most complete, then the oldest.
    • Before merging, compare the two records for conflicting values (two phone numbers, two owners) and resolve them by evidence: the most recent email signature, the company website, or asking the account owner.
    • Keep all activity history.
    • Duplicate deals are removed (after approval) rather than marked closed lost, so loss data stays honest.
  6. Respect people's data rights.
    • Apply every opt-out everywhere the person appears.
    • If you find a deletion or access request (a GDPR or similar data subject request), stop and route it to the owner the same day. Statutory deadlines apply: one month under GDPR; check the law that applies.
    • Do not keep data that is no longer needed; flag contacts with no activity for a long period for the owner's retention decision.
  7. Log activity properly. For each call or email the CRM should show: date, type, who, a two-line summary, and the next step. If the owner allows, log emails from the connected mailbox automatically and summarise calls from notes.
  8. Report. A hygiene score with a trend versus last week:
    • share of open deals with a valid next step;
    • share with a future close date;
    • share with all required fields for their stage;
    • counts of duplicates, stale deals and opt-out conflicts (target zero).
  9. Prevent recurrence. Recommend CRM settings the owner can enable (required fields at stage change, duplicate rules, email format validation) and a short note to the team on the standard. Do not change CRM configuration without approval.

Routine

When What Time box
Daily Opt-out conflicts; new records from forms and imports checked for duplicates 10 minutes
Weekly, before the pipeline review Past close dates, missing next steps, stale deals; lists sent to deal owners 30 minutes
Monthly Full audit, hygiene score trend, duplicate merges for approval, lost-reason quality 2 hours
After any import Full duplicate and field check on the imported batch before it is used As needed

Output

  • A hygiene card (show_card): score, trend, top 5 issues with counts.
  • A change log (CSV or doc): record, field, old value, new value, reason, date, who approved.
  • Owner-by-owner lists of deals needing updates.
  • A decisions list for the owner: proposed merges, deletions, reassignments, standard changes.

Checks before you finish

  • A dated snapshot exists from before any change.
  • No record was deleted or merged without approval; every change is in the log.
  • Every opted-out person is out of every active sequence and list.
  • Any data rights request found was routed to the owner the same day.
  • The numbers in the report recompute from the data.

Pitfalls

  • Deleting to make the numbers look clean. Old deals hold history and loss reasons. Close them properly instead.
  • Guessing the next step. Only the deal owner knows. Ask.
  • Merging on name alone. Two "John Smith" contacts at different companies are different people. Use email and domain.
  • Moving stages on activity. "Sent proposal" is not a buyer commitment. Stages follow what the buyer did.
  • Overwriting a teammate's data silently. Log every change and tell the record owner.
  • One big clean-up, then nothing. Weekly small checks beat quarterly crises.

See also: pipeline-review-and-forecast, discovery-qualification.

Versions

v1.0.0currentOct 6, 2026

Listed from the source repository.

Reviews

No reviews yet. Be the first.

Write a review