Catch duplicates as they arrive
On new account or contact creation, checks existing CRM records with exact-match filters and creates a review task when a possible duplicate is found.
Authored by Sid Chaudhary
Founder & CEO at Intempt
Agentic workflow
Coming soon8 steps Blu runs end to end. It drafts a plan and nothing runs until you approve it.
- 1
Check at the moment of creation
Coming soonBlu builds a step
- 2
Look for a match
Coming soonBlu builds a step
- 3
Stop early if it is new
Coming soonBlu builds a step
- 4
Score each pair
Coming soonBlu builds a step
- 5
Act on the confidence
Coming soonBlu builds a step
- 6
Merge into the older record
Coming soonBlu builds a step
- 7
Queue the uncertain pairs
Coming soonBlu builds a step
- 8
Publish and audit the merges
Coming soonBlu builds a step
About this recipe
When to use it
Cleaning up duplicate records after the fact is a recurring, thankless job. This catches likely duplicates at the moment of creation and resolves the obvious ones automatically.
What it delivers
On record creation, finds similar existing records in real time, computes an AI match-confidence score, auto-merges high-confidence pairs, flags medium-confidence pairs for review, and ignores low-confidence matches.
How you prompt this
Describe the outcome in your own words and Blu Agent maps it to this recipe, or run it by name. It drafts a plan first and nothing runs until you approve it.
Tell Blu Agent what you want
“On new account or contact creation, checks existing CRM records with exact-match filters and creates a review task when a possible duplicate is found.”
recipe.md preview
Built from the published catalog. Blu Agent's full step prompts load in your workspace when you run it.
Inputs & outputs
What the recipe needs before it runs, and what it leaves in your workspace.
Inputs
- Nothing declared beyond an Intempt workspace. Blu asks for anything else it needs as it goes.
Outputs
How the recipe runs
Blu follows the steps in order and shows you each one before anything goes live.
- 01Check at the moment of creationCreate a workflow 'Real-time CRM dedup' triggered immediately on account_created OR User created events. Goal: catch duplicates at creation moment rather than letting them propagate, then needing cleanup later.
- 02Look for a matchThis step builds a workflow. Configure find-records step that searches for existing records similar to the newly-created one. Match criteria: same domain (for accounts), same email (for users), fuzzy name match (Levenshtein distance < 3), same primary contact. Returns: list of candidate matches with similarity scores. Use the result of "Check at the moment of creation".
- 03Stop early if it is newThis step builds a workflow. Branch step: did the search find any candidate matches? If NO matches (record is unique, proceed to standard onboarding flow (handoff to auto-enrich-new-accounts). If YES matches found) continue to AI confidence scoring. Use the result of "Check at the moment of creation", "Look for a match".
- 04Score each pairThis step builds a workflow. Configure AI step that compares the new record to each candidate match and produces a confidence score (0-100) per pair. Inputs: all available fields, recent activity, contextual clues (e.g. same source UTM suggests same person). Considers nuances (e.g. 'sales@example.com' and 'john@example.com' are different people at same company, not duplicates). Output: ranked match candidates with confidence + reasoning. Use the result of "Check at the moment of creation", "Stop early if it is new".
- 05Act on the confidenceThis step builds a workflow. Multi-split based on top candidate's confidence score: HIGH (>90) (auto-merge into existing record; MEDIUM (60-90)) flag for review in dedup queue, do NOT auto-merge; LOW (<60): likely not a duplicate, proceed with new record but tag as 'review-candidate' for periodic re-evaluation. Use the result of "Check at the moment of creation", "Score each pair".
- 06Merge into the older recordThis step builds a workflow. On high-confidence branch: merge the new record into the existing one. Keep the existing record as survivor (preserves history), copy any new fields from the new record, mark the new record as 'merged into [existing_id]'. The new record reference still works for inbound webhooks but redirects to the survivor. Use the result of "Check at the moment of creation", "Act on the confidence".
- 07Queue the uncertain pairsThis step builds a workflow. On medium-confidence branch: create a RevOps task with both records side-by-side, AI's reasoning for the suspicion, and merge/separate decision buttons. SLA: review within 5 business days: uncertain duplicates accumulate fast if not handled. Use the result of "Check at the moment of creation", "Act on the confidence".
- 08Publish and audit the mergesValidate and publish. Monitor: auto-merge volume per week (proves the workflow is catching real duplicates), false-positive rate (sample audit of auto-merges: were any wrong?), review-queue depth (high = too many medium-confidence cases, suggests AI prompt tuning). Together with the scheduled-data-quality-audit, this is the dedup defense-in-depth pattern. Use the result of "Check at the moment of creation", "Merge into the older record", "Queue the uncertain pairs".
Install Intempt and run it
- 1
Sign up
Create a free Intempt workspace.
- 2
Connect your data
Add the sources this recipe reads from.
- 3
Ask Blu
Type /crm-record-merge-suggestions in Blu once this recipe is live there.
- 4
Review and approve
Blu builds each step and waits for your OK before anything goes live.
