AppAssessor / Admins / Data

Easily Find, Remove, and Prevent Any Salesforce Duplicate Records [In-Depth Overview]

By Andreea Doroftei

Branded content with Plauti

Take your duplicate management process to new heights with a complete solution that covers everything from prevention, merging, and even custom automations to cater to your organization’s needs.

Highlights

  • Find, merge, and prevent duplicates directly in your Salesforce instance. 
  • Empower end users, admins, and developers to tailor any ‘exact’ or ‘fuzzy’ deduplication criteria to their needs.
  • Seamlessly integrate duplicate checks into new or existing processes. 
  • Ensure data quality on all records, regardless of the volume.  

Working with Salesforce data is by no means an easy feat. From building data models to ensuring data completion, plus further reporting and validating data integrity, the process can become a full time job on its own. 

Enforcing deduplication using only Salesforce Duplicate Rules (plus potential manual checks) is challenging. In fact, even defining what a duplicate record is depends on your organization. Ask yourself: could the deduplication process become standardized and more streamlined? The answer is most likely absolutely

Regardless of who is working with duplicate records in your CRM (e.g. a Salesforce Admin or a user), Plauti’s Duplicate Check solution is a game changer. 

This Salesforce-native application can be used for the quick checks, as well as fully automated solutions and integrations (even across millions of records). Additionally, there’s no limit to what you can achieve, considering deduplication is possible on all objects in your Salesforce instance – as well as cross-object to support even the most complex scenarios. 

This in-depth overview will showcase the main Duplicate Check features, ideal use cases, and setup effort, as well as how fast your users and admins can (and will) enjoy this tool. 

Features

If you expected only deduplication from Duplicate Check, you are definitely in for a surprise. While we will focus on key items, keep in mind that this tool offers a wide array of features to explore, and caters for even the most enterprise scale orgs which involve huge databases. 

Duplicate Criteria

First things first, have you ever defined a duplicate in your organization? This is a key question which you need to have an answer for in order to achieve the best results out of this tool, and the overall process in general. 

The definition could be as simple as “if two leads have the same email they are definitely duplicates”, or extremely complex by using a combination of different fields, each with their associated weight, as well as matching method. 

Scenarios

All the details around the matching behavior as you might have already noticed above can be found in individual ‘Scenarios’, by accessing the object within the Duplicate Check (DC) Setup. It works by assessing different use cases and considering various fields or attributes, even if they might apply to the same object. While the free version doesn’t offer the possibility to create multiple scenarios, you can create up to 10 concurrent ones on the premium version. 

Exact, Fuzzy, or Both?

Once you know what a duplicate is within your organization, you can now use the available functionality to ensure that the deduplication results are as accurate as possible. But realistically speaking, we’re not only dealing with different formats and data points, but we might also encounter variations such as spelling errors. 

Frequent Words

Before focusing on what is to be matched, let’s cover what shouldn’t be considered. ‘Frequent Words’ is a section which you will find in the DC Setup, allowing you to determine various words which should be totally excluded when matching. 

The perfect example is the out-of-the-box ‘Company’ list of words, which focuses on global abbreviations or words which may appear in the company name but are irrelevant for the matching. For example, My Company Inc. (in North America) and My Company SRL (in Italy) would ultimately become My Company during the matching. 

Especially when thinking about accounts, consider that they may be separate entities, so be sure to include “country” as a field when building the Scenario. 

Matching Methods

Perhaps the most important decision when it comes to the actual matching, is the way that the data will be looked at. Even though it might seem that there are a lot of options to choose from (which may not seem all that different) it’s all about the attention to detail. The options have all been considered with even the most relative scenarios in mind. 

The ‘Partial Fuzzy’ options display this consideration, especially when it comes to a company’s name which can have many variations. For example, if you are looking for a looser match, you can make use of the Partial Exact option, which will determine if a single word exists in both strings. For more targeted results across the entire string, the Company Name option is already optimized for company names and takes into account not only word matching, but also potential spelling errors. You can pick and choose whichever one best fits your use case. 

Make sure to take a look at all the available options when it comes to the matching methods, as depending on your choice the behavior can be quite different.

Manual Entries

Manual record creation in Salesforce is one of the sources for inconsistent data. Even if some validation or duplicate rules might exist, there’s always edge case scenarios which may or may not be caught. Duplicate Check ensures this will no longer happen by making use of the Duplicate Prevention functionality, which has been developed with the end-user in mind. 

Duplicate Prevention

As a Salesforce Admin, you will have to make the choice of either blocking the record creation or editing once a duplicate is found, (or you can simply allow it). There are other additional settings available, such as triggering the prevention upon ownership changes. 

While setting this feature up, keep in mind that you will have to choose a Scenario to be applied. Regardless whether you use one of the out-of-the-box Scenarios or a custom one, the options to apply to ‘Manual Insert Prevention’ or ‘Manual Update Prevention’ will become available for selection. 

Once the Scenario is decided, the only thing left to do is to actually make the functionality available to users. That can be done by overwriting the ‘New’ and ‘Edit’ buttons on the selected object with the custom dupcheck:dc3RecordForm Lightning Component – if your organization is still using Salesforce Classic, this step is not needed. 

As you can see in the example below, once the steps are complete, the users will be prompted with the duplicates directly on the creation (or edit) pop-up screen. Additionally, if you chose to enforce the prevention but you would still like to allow an override mechanism for isolated scenarios, the Disable Duplicate Check checkbox can be used. 

The option above works for standard objects, such as contacts or leads, and is an option for any custom object as well – you will have to follow the steps highlighted in this guide to achieve a similar behavior regardless of the use case. 

DC Check and DC Live

For the situations where duplicates already exist, users can check for duplicates, or just simply see them and start merging on the record page. These features can easily be leveraged for spot checks by any data quality team reviewing records. 

DC Check is a button which can be added to the page layout, and will display on a new page any object or cross object duplicates, as well as their score which should be considered prior to merging. 

In this situation, while the duplicate contact can be merged field by field and a ‘Merge Preview’ will be provided, if a lead is determined to be a duplicate, then the user will have to go through the conversion process. A suggested account and contact(s) will also be presented if more than the contact you started from exists.

On the other hand, the DC Live component can be dropped on the object’s record page, and will display the same results directly, with the possibility to merge as well. In the end, it’s about offering both options to choose from for a tailored experience. 

With duplicate identification ultimately being a shared responsibility within the org, between admins, data stewards and even users, the DC Live component offers multiple options once potential duplicates have been identified. On top of choosing to merge the records, you can highlight a false positive if needed or even a parent/child relationship, both of which come in handy when dealing with companies which do have different legal entities potentially in the same area or country. 

Duplicate Check Jobs

Perhaps the most used Duplicate Check functionality is Jobs. They represent a way to easily and rapidly find any number of duplicates within your organization, regardless of objects that are being checked or the criteria. 

The DC ‘Jobs’ tab is the place where you can have full visibility into the automated processes that run, and where to create new ones as needed. There will always be an overall breakdown at the top of the page, so that you can measure success at a glance. 

When creating individual Jobs, you will have to choose one of the previously added objects and determine whether the matching will only be done on that particular object or cross object (if enabled). You can also filter the records further, which will be considered for the Job.  

Every Job can be scheduled daily, weekly, or monthly. As you can see below, the weekly option also offers the possibility for the run to happen on multiple days in a given week. 

As well as adding a schedule, Duplicate Check offers the possibility of adding automatic conversion for leads. If you have already tested the Scenario before and are confident in the results, with DC there is no need to ever do this manually again. In addition to the Job itself, you can make use of the merge rules to automatically convert or automatically merge any records in order to have control over the surviving record on a field-by-field basis. 

Once you decide to schedule a Job, you can always go back to the ‘Scheduled Jobs’ list and run it when necessary, without waiting for the scheduled time. 

Once a job runs, you can monitor progress, deep dive into the results and job details, and, if audit logging has been previously enabled in DC Setup, you will be able to access the convert log for this particular example. 

Automate Duplication

Having more advanced options to identify duplicates is great, but if we applied them all manually it would certainly take some time. Automation is not only a possibility, but also encouraged once the object specific scenarios have been determined. 

Direct Processing

Salesforce records can be created from various sources, be it manually, through a Web-to-Lead form, through data imports, or even via integrations. Duplicate Check doesn’t only help you clean up what already exists in the org, it will also ensure that no duplicates will come in right from the point of entry. 

Direct Processing is the functionality that allows for this behavior to be set accordingly, depending on the specifics of your process. You can pick and choose as many of the options as needed, and if we are to explore the leads as an example, there may be different options selected for conversion and merging. Additionally, you can also set the score per process, so you may want to automatically convert leads with a higher score, but merge the ones with a lower score. 

Flow Actions

The Duplicate Check managed package is currently shipped with ten custom Salesforce Flow components. This offers organizations the possibility to include the deduplication mechanisms not only in their existing processes, but in new ones too. There are nine available actions, as well as the DC – Show Duplicates custom screen component.

To begin with, you can test out the actions and screen components with a simple example such as displaying the duplicates based on a record ID. It’s not a problem if you’re looking forward to using a standard or a custom object.

While the example below is a simple flow in a Developer Edition org, once the package is installed you can make use of these components across any already existing flows. 

In this example, what could we do once the duplicates are found? With DC, one of the available actions is merging, which will remove the need to go through this process manually. With the addition of this action, our screen flow is now using a record ID to find potential duplicates, displaying them on screen, then merging them. In a production scenario, the recommendation is to also include a threshold for the merging, thus ensuring that only those which exceed a certain percentage will be merged. 

Feel free to explore all the other available Flow Actions. While the ones above are great, others might be better suited for your individual use cases. 

Plug-Ins

It’s important to note that flow actions are by no means the only available method to integrate Duplicate Check functionality into your organization’s processes. Be it Apex Plug-ins or even SFDX ones to ensure that Duplicate Check is properly installed in any Salesforce environment (including Scratch Orgs), there is virtually no limit to how you can make use of the tool. 

Large Data Volumes

When it comes to medium to large size organizations, there might be situations where the amount of data to be deduplicated surpasses a few good hundreds of thousands, and even reaching millions of records. 

Duplicate Check was built with such considerations in mind, although tools outside of Salesforce will come into play to increase performance and reduce processing time. 

  • Run on Salesforce Platform: DC Jobs including 15K or less records can run easily directly in Salesforce, ensuring a quick and easy way to process a limited amount of data through your predefined scenarios.  
  • Run on DC Local: As the amount of data increases, it is recommended that you either install the DC Local application or the DC Local server version, which will help you process the data with the use of your machine. The data is encrypted and only temporarily stored on your machine. 
  • Run on Plauti Cloud (Beta): For processing especially large data volumes, Plauti Cloud is the recommended option. Hosted on Azure, when running any individual Job it receives its own private server which not even Plauti can access. A huge advantage is that multiple Jobs can be run in parallel without impacting performance. 

Results Overview

Even if you might have not opted for automated merges, the DC Job Overall Results tab allows you to see duplicates found across all Jobs, and offers you the option to manually process duplicate records or to just view all the results.  

While the DC Jobs Overall Results is a premium feature, if you are using the free version you can still review the Job information presented in the dedicated section above, or navigate to the DC Setup page and review the activity from the past 30 days.

Use Cases

While Duplicate Check can be used for a variety of scenarios, both manual and automated, one key differentiator which will surely help organizations reach their data quality goal is the ability to match and merge across objects.

While lead and contact matching is something you would already expect, especially considering Salesforce Duplicate Rules can do this to a certain extent, get ready for a more detailed approach. Plus, this tool offers customization – you can pick and choose the objects you would like to match across, whether standard or custom, as long as there are fields to match based on. 

For example, with the same ease that you would match a lead to an existing contact, you can match accounts and even custom objects. Multiple fields can be used simultaneously, and the cross object functionality can be enabled (or disabled) on an object by object basis. 

Cross Object Matching is a premium feature which is not included in the free Duplicate Check version, however it is a game changer considering that these kinds of duplicates are usually either not defined or not spotted in time before issues appear. 

Impact

It goes without saying that efforts and tools which are considerably improving Salesforce data quality can be a true lifesaver for both processes and overall user experience. While helping your organization achieve this, Plauti’s Duplicate Check remains a highly customizable tool from all points of view, meaning that you can deduplicate, monitor, and schedule automations your way. 

Setup

The first step is the installation of the Duplicate Check managed package from the AppExchange listing. After this it’s all about what your requirements for deduplication are. This means that the setup itself can take as little or as long as needed on the DC Setup page. 

While out of the box default scenarios are provided for leads, contacts, and accounts, you can either change them or create more yourself, as well as add other standard or custom objects.  

As you can see in the above screenshot, all the information you need is in Salesforce. From the installation guide to the full documentation, plus step by step videos, everything can be accessed with a click. On top of that, the Get Started button reveals a surprisingly detailed wizard which will guide you through all the main functionalities as you’re exploring Duplicate Check.  

In addition to the exploration part, you will find the very first duplicate with just a single click, as what happens in the background is that a duplicate job is ran and then you will simply be presented with the results in a report – right from the get go, one can easily tell that Duplicate Check is truly a plug and play tool. 

Support

Although unlikely, in case none of the available resources can answer your question or help you progress with the Duplicate Check implementation, you can contact the support team by completing this form (link to on the DC Setup page too). Similar to the Salesforce support process, you will have to provide login access to the Plauti team, and also share the org ID. 

Pricing

Plauti is offering an unlimited free edition of their Duplicate Check tool for you to test out with no time constraints prior to making any purchasing decision. Whenever ready, you can also benefit from a 14-day trial, prior to choosing any of the other available paid plans depending on the features you’re looking for and database size. 

Summary

Be it leads, contacts, accounts, or any other Salesforce object, Plauti’s Duplicate Check offers a vast array of functionality to ensure all data is top quality. Regardless of whether you decide to fully automate or to make use of the manual option, data quality improvements should be obvious in no time. 

Take the free Duplicate Check version for a spin in either a sandbox or developer edition to see for yourself how easy it is to make use of, and don’t forget to upgrade to the 14-day trial which unlocks all premium features!

The Author

Andreea Doroftei

Andreea is a Salesforce Technical Instructor at Salesforce Ben. She is an 18x certified Salesforce Professional with a passion for User Experience and Automation. 

Leave a Reply