Insanely Powerful Deduplication for Salesforce [In-Depth Review]
|One-line pitch||The all-in-one solution for deduplication: find and merge duplicates in and across leads, contacts, accounts and all other (custom) objects. Prevent duplicates on manual entry, import and API insert.|
|Highlights||• Super simple to set up and use - the majority of its features don’t even require an admin.|
|• Developer-friendly: tap into the power of Apex plugins for adaptable data handling. Plus, Visualforce dupe prevention, a REST API, SFDX plugins, and other add-ons
|• Leverage flow actions: add the Action element to a Flow Canvas to select one of the new Duplicate Check options.|
|• Large data volumes: able to handle larger data volumes than other providers on the market.|
Duplicate management in your Salesforce org – is it something you enjoy? Usually, me neither…until I was introduced to a fully on-platform deduplication solution that blew my mind.
I’m talking about Duplicate Check by Plauti. I believe that Salesforce can do absolutely anything – but it should be powerful, beautiful, and easy to use. This includes apps found on the AppExchange. Never before has an app exceeded my expectations, and one that skillfully solves a pain point that I encounter week-to-week as a Salesforce Consultant.
Duplicate Check is a fully on-platform duplicate management tool for Salesforce, empowering users to manage their data and sieve out duplicate records with unparalleled ease. While incredibly complex in its logic, it’s also bewilderingly simple to set up and use – you don’t even need an Admin to set it up!
This in-depth review will dive into Duplicate Check’s features, ideal use cases, setup effort and the potential impact that adding this app to your Salesforce stack could bring.
UI and Navigation
As usual, I started by looking at the Duplicate Check user interface and navigation.
The Duplicate Check app is where a majority of the setup and config happens. There are 4 tabs where the magic happens – DC Search, DC Setup, DC Job, and DC Discards.
The Duplicate Check app icon and Description.
The Tabs that make up Duplicate Check
DC Setup Tab Overview
DC Setup is the heart behind the application. This will likely be your first stop when you install the app as it allows you to customise the objects that will be monitored. Account, Contact, and Lead are enabled by default when the app is installed, and you’re able to quickly and easily add objects where required.
Once you’ve added an object to Duplicate Check, you’re able to configure the matching on the object itself. Scenarios are how you want the system to identify duplicate records, in other words, how your organisation defines a duplicate. For example, just because two Leads have the same First and Last Name doesn’t necessarily mean they’re a duplicate – you may also want the email to match exactly.
You’ll be able to configure field-by-field matching settings, including the ability to configure the weighting differently for individual fields. For example, you may notice that married contacts will share an email address, but register different mobile phone numbers. Here, you’d give the Last Name and Email fields a lower weighting than you would to the Mobile field. A match on the mobile field is most certainly a duplicate record, whereas two records with the same last name are less as it’s generally a match with the latter, which means you’ve definitely found a duplicate record.
Example Scenario – Mobile Phone holds a much heavier weighting than other fields, as it holds more value when identifying a duplicate record.
The Matching Method allows you to configure the kind of match the field values are required to have before they’re considered a match. An exact match means the two fields must be identical, character for character. A Fuzzy match means the field values need to be similar – not identical, but close.
Frequent Words (available in the Premium Edition only) allows you to list keywords to ignore to avoid matching based on specific common words. For example, if you have a lot of education clients you may want to add ‘high school’ or ‘university’ to your ignored keywords list so that records which are definitely not duplicates like ‘North Brisbane High School’ and ‘North Melbourne High School’ aren’t identified as duplicates. Frequent Words can be set up within the DC Setup Page, under the General Setup panel.
You can set a threshold per field matched to set the percentage of a match that must be achieved before it is actually considered a match. For example, the words ‘Test’ and ‘Test’ are a 100% match, whereas the words ‘Test’ and ‘Tests’ are less than that. This means that if you had set the Lead Last Name field matching threshold to 100%, the first pair would be considered a match (Test and Test), but the second pair would not (Test and Tests).
DC Jobs: More Sophisticated Than Blocking Records!
One thing that excited me when I discovered Duplicate Check was exactly how records were managed if they were identified as dupes.
Let’s say you’ve got a number of different methods to insert Leads into your system – this could be via a Pardot Form, a third party partner integration and manually created by your users within the system.
The beauty of Duplicate Check is that any records identified as matches have the option to not be blocked from being created, and are either sent to the ‘DC Job’ section to be reviewed by an Admin or can be automatically merged (this is in conjunction with another feature called ‘Direct Processing’, which allows automatic merging without any additional manual input from a user). This means you never lose data even if the system identifies a duplicate. I’ve seen catastrophic situations where a deduplication job has blocked the record from being inserted, so this feature is a powerful way to avert those disasters!
Duplicate Check offers a lot of quick and easy tools, but that’s not where the fun stops. There’s a stack of enterprise-grade features as well. Duplicate Check has the ability to handle large data volumes, having successfully run deduplicate jobs for orgs with 20 million records in a single object – using the DC Local tool to assist (DC Local is a piece of software that can be installed on a computer to allow it to process duplicate jobs locally and return the results back to the Salesforce Database). You can read more about Duplicate Check’s LDV capabilities and the DC Local tool on their support site.
There are a number of more developer-friendly tools available too. There’s an Apex API and a number of prebuilt Apex Plugins available too. The API offers a number of methods that allows developers to find, merge, match, or index the Salesforce database. You can also begin processing jobs, and export your DC configuration. Apex Plugins allow a developer to extend Duplicate Check functionality across your org using either Typed or Generic plugins.
Duplicate Check’s latest release contains a brand new feature: Flow Actions! For those of us who love using Flow (I am completely in favour of them), you’ll be excited to learn that you can now access a number of Duplicate Check features using Flow Actions. It’s as simple as adding the Action element onto your Flow Canvas and selecting from one of the new Duplicate Check options. For example, you can use the Quick Merge function on a Collection of Id Text variables to quickly merge all those records, using Duplicate Check. You can also use the Find Duplicate by Field Values Action on a populated Record Variable, to quickly find potential duplicate records within your Flow.
As with the rest of Duplicate Check, the team at Plauti have really put in the efforts to make sure that Flow Actions are super easy to set up and use while still being super effective.
Below is a list of all the new Flow Actions that are available in the new release, with links to their support documentation for more information:
- Find Duplicate by Id
- Find Duplicate by Field Values
- Quick Merge
- Quick Convert
- Store Duplicate information in DC Job
- Direct Process
Can I use Duplicate Check Functionality Throughout my Org?
Duplicate Check can be set up to run seamlessly within your current Salesforce environment – you don’t need to be inside the Duplicate Check app and run jobs from there. You can add the DC Merge button to a List View so that multiple records that are manually identified as duplicates can be merged, as in the screenshot below.
Two records are selected, and the DC Merge button is available from the List View.
Once you’ve selected your records and clicked the button, you’ll be sent to the Duplicate Check Merge page where you can select a master record and pick which field you’d like kept from each of your selected records.
The record in the column on the left has been selected as Master, and the email from the record on the right is going to be pulled into it.
One thing to note: if you’re merging some duplicate information and you don’t want the original data destroyed, you’re able to tap into the power of Apex to enable saving of multiple fields (i.e., Email 2, Email 3). This is only available within the Premium Edition of Duplicate Check.
You can also use another feature called Creation or Update Duplicate Prevention. This is where the Duplicate Check will override the New button within Salesforce and let you know that there are duplicates across other objects. Below is an example, where I’ve tried to create a Lead that has matching data with another Lead, but it also highlights that there are no Contact or Accounts that match (this would obviously update if there were):
This seems like the best time to make a mention of the DC Live feature – similar to the error message above, the DC Live feature will identify duplicate records from the Lightning Page. It’s as simple as adding the Lightning Component to the page, and you’re cooking! Your users can then clean up any duplicate records on the fly if they choose to.
Finally, the feature we’ve all been waiting for! Yes, you can select multiple records in a List View and de-duplicate them. You can also have an alert when trying to save a duplicate record. But the handiest feature of all, in my opinion, would be the ability to create Auto Merge jobs. This allows you to set a minimum threshold for records that should be automatically de-duplicated without any additional user input. They’ll be merged using the settings defined within the DC Setup tab.
In my opinion, the ability to automatically keep data neat and tidy without your users having to do anything is invaluable. It’s something that all Salesforce orgs should have in place as it ensures that you’re not losing or misplacing valuable information, and it significantly reduces data cleanup time. No solution is perfect, but this is pretty close!
Every single person who has worked as a service agent has come across a situation where a job has been reported multiple times. Whether it’s the same job recorded by two different people within the same org, the submit button being pressed too many times, or just an impatient client who really needs assistance, right this second. With Duplicate Check enabled and configured correctly, you’d be able to have these duplicate tickets highlighted, based on who the Case was submitted by, some keywords in the Subject field, and perhaps even a matching Type value.
Duplicate Check works across multiple objects (i.e., you can match a duplicate Lead to an existing Contact, if an existing customer uses an online web form for an enquiry).
There’s nothing worse than having a small marketing budget with high ROI expectations. It’s even worse when that budget is leaking because due to duplicate data, you’re hitting the same Leads multiple times. No more! Configuring Duplicate Check correctly to ensure that Leads are cleared out when they have a matching Lead/Contact/Account record means reducing your marketing budget waste and reaching the right people more efficiently. Mo’ dupes, mo’ problems!
It’s great when you discover that your pipeline is actually only 75% of what you thought it was due to duplicate Opportunity records. Moreover, because that likely means you’ll only be receiving 75% of the commissions you thought you would, not cool! With Duplicate Check set up correctly, you can be far more confident that the numbers you see in your pipeline are accurate. Peace of mind and knowing that your data is accurate matters much more than seeing bloated sales figures!
On-platform and Secure
I’ve already mentioned that Duplicate Check is fully on-platform; this means that your data NEVER leaves Salesforce. This is particularly important for high-security orgs where data location is paramount. If Salesforce is safe, so is Duplicate Check.
Simplifying Complex Duplicate Scenarios
I’ve also mentioned that Duplicate Check doesn’t block record creation when an automated job is set up – instead, the rejected records are simply added to the DC Jobs section for additional review. This prevents unwanted deletion of what could potentially be important data mistaken for a duplicate.
Increase Processing Speed
It’s one thing having the ability to process complex jobs on-platform, but you’re also able to optionally use your own hardware to increase processing speed of very large jobs using Direct Processing.
Empower Users, Alleviate Admin Workload
Duplicate Check has been designed keeping the end-user in mind, bypassing even the Admin in a lot of situations. Users can be delegated as the owners of specific subsets of data, which means it’s not just one big job for one user or a group of users.
Data Governance and Quality:
The entire point of investing in a CRM system is to have all your business data in a clean and consumable database that you can pull valuable information and insights from.
If your system is ridden with duplicates and dirty data, your insights will be flawed as well and you’re not getting the benefit you should, from your investment. Duplicate Check assists in keeping your database clean and free from dirty duplicate data, ensuring you receive accurate information that you can make positive business decisions with.
Duplicate Check has some of the most thorough and detailed knowledge articles that I’ve seen for a Salesforce app. This documentation can be accessed at support.duplicatecheck.com. It is grouped into sections (Setup, How-to’s, Release Notes, etc.), and contains a combination of written and video content. From the very beginning, this support site will be your guide through your entire experience.
Thanks to the extremely thorough support documentation, easy installation and config process, Duplicate Check can be, more or less, up and running in your org within half an hour. There’s a trial available that you can install to see if it will suit your requirements.
Duplicate Check is priced based on the volume of records, not the number of users. This means that it’s just as much a good fit for smaller businesses with fewer records, as it is for the larger orgs with thousands of users and millions of records.
There are 3 versions of Duplicate Check – Free, Advanced, and Premium.
The Free version allows users to merge duplicates that are inserted manually and support up to 5,000 records at a time.
The next level up, Advanced, currently starts at $299 USD per year and provides much more functionality – matching from every source (not just manual entries), fuzzy matching, cross object and automatic merge being a few of the key features.
The Premium edition includes advanced features such as Apex API (the ability to add your own features using Apex), DC Audit (logging feature), Filtering (only analyze a subset of records to save time), and the ability to import and export your config between orgs. This version starts at $1,799 USD per year.
As mentioned, you can check out Duplicate Check for free by installing a trial, which is available on their website. You may also want to schedule a 30-minute demo session to see how it works. This will give you a far greater and more in-depth understanding of the product. You can schedule a demo using this link.