Salesforce Duplicate Management: 7 Implementation Tips

"Oh my goodness, I've been waiting so long for duplicate management, I CAN'T WAIT TO TURN IT ONNN!!!!", says many a Salesforce customer. Yes, it's SUPER exciting. I am definitely jumping up and down about this. But slow down; wait a minute. Don't just rush in and turn it on. It's tempting to do so, but you'll want to take a more pragmatic approach when enabling this functionality. If you turn it on without planning then there's a very good chance your users will become frustrated with the changes and maybe even stop putting data into the system or something important might break. 

Here are seven tips on how to best implement Salesforce's Data.com Duplicate Management functionality:

7 Implementation Tips

  1. Learn: Learn How it Works
    If you enable this feature without an understanding of how it works, the implications to your system, and your users' needs, then there is a very good chance that things will break - especially if you are using things like Web-to-Lead, if you have integrations, or if you regularly import data with dataloader. The last thing you want to do is to turn on a rule without knowing how it works to later learn that your leads from the web have dropped off significantly and important prospects can't get what they need from you because you told them (they will get an error message) they were a duplicate. Have code? The next time you go to deploy something, and you haven't updated your test classes with your duplicate rules in mind, you won't be able to successfully validate or deploy those change sets because your test classes will error out for violating the duplicate rules. (See below for list of resources)

  2. Engage: Get Engaged with the Community
    This is a brand new feature, only in users' hands since the beta during Winter 15 (September 2014). Everyone is learning and there are very few experts since it is so new. The best place to get help and ask questions is in the Data.com Duplicate Management Chatter Group, click that link and join that group or ask questions in the Answers community. The more you engage publicly, the better your learning is AND the better everyone else learns along with you for having that question available for the community. Creating that kind of transparency benefits everyone. As a person who gets nervous posting things for all the world to see, I've experienced the community to be REALLY kind and REALLY helpful. You will grow to love the others that help you and then in turn, you start helping people; it's amazing.

  3. Assess: Assess Current State
    Understand where Duplicate Management will kick in so that you can plan your rules around these use cases. Below are some questions you can start asking yourself to begin identifying the scope of your effort. Write all of your answers down and refer back to them when you create a rule.

    1. Do you have integrations? If yes, you'll need to test them if those integrations are creating or updating records on objects with rules.

    2. Does someone regularly import lists through a wizard or data loader? If yes, you may want to adjust the rules to allow for the uploading of potential duplicates, or review the rules with users and ask for their feedback and requirements.

    3. Do you have Web-to-Lead enabled? If yes, make sure you adjust any rules you create to not block the leads and/or not warn them when this Web-to-Lead form is submitted.

    4. Do you have custom code? If yes, you will need to update your test classes to ensure they do not block the movement of changes from one system to the other. (See resources for a list of classes Salesforce released to work with duplicate management)

    5. Where/how is data added to your system and who is doing that adding? Asking this question may seem redundant, but the more you ask the same question the more likely you are to uncover all the requirements.

    6. Where do you currently face the most pain from duplicates? Asking this question may help you prioritize where you start your work. Perhaps you want to start with the most painful area that causes the biggest problems in order to immediately deliver value. Or perhaps you want to start with the least problematic area so you can learn from what you roll-out in a low risk way.

    7. What goals do you have around data duplication? I am not sure why this question is last in my list, I usually like to start with the goal in mind, but maybe you needed to ask all those other questions first to start to form your thoughts around the goals. So ask this first and ask this last - then make sure that you use this to make decisions about what to do and when.

  4. Define: Define your Requirements and Plan for Implementation
    How strict should the rules be? Should users who have access to a record through their role be blocked from creating a new record if someone in a different role (different branch of the role hierarchy) already created that record? Who is going to own the care and feeding of these rules and monitoring the results? What actions do users need to take and when? I would recommend working in a sandbox. Start by enabling a simple rule and then demo it to users in order to get their feedback and requirements. Turning on duplicate management with strict rules might result in an inability to add data and could be highly disruptive to your users. In addition to knowing what you want to be considered a duplicate, make sure you know how it will impact your users. Companies with bad data - those that really need this feature - will be challenged when turning this on right away because of long standing behaviors and technical debt that exacerbate data issues. These issues are not going to go away the second you turn this feature on and ensuring you take a user-centered and agile approach will improve the likelihood that Duplicate Management will be a help rather than a hinderance. The larger of an organization you are, the more users and features you have, or the larger the data set, the longer it will take to have a fully functioning and well tuned duplicate management rule set. Think of it exactly that way - you must tune it and refine it to get it working just right for you, and that takes time.

  5. Educate: Teach People How it Works
    In my opinion, this is a feature your users will either love or hate. Which way your users end up feeling hinges on how much you involve your users and how much you help them in understanding the following:

    1. Why this is a good change

    2. What they can expect to have happen

    3. What they should do when it does happen

    4. Where they can go for help or more information should they have questions or suggestions.

      Involve them in the process and you will have happy users. Leave them in the dark and you may end up with a revolt on your hands.

  6. Change: Follow Good Change Management Practices
    In the resources section I include a link to the new Salesforce Trailhead offering on Change Management from a system perspective. If you are new to Salesforce and have the "great power" that comes with Enterprise Edition or above, then, much like a superhero with great power, you have a "great responsibility" to follow these practices in order to ensure the health and wellness of your systems. I know that many admins make changes directly in production, but the longer you own Salesforce, the more automation and integration you will have and the more important it is to work in your sandbox and then promote changes to production. Why not just start these behaviors when you first turn on your system when the volume will be low and you can safely practice change sets with less stress and fear? One big caveat though is that Salesforce has not enabled Duplicate Management and Matching Rules to be added to change sets yet. As a result it will be like 2009 up in here where you have to make a configuration change in Sandbox, test, and then rebuild your rules in production.It is a pain, but it's worth it. If you are a new Admin, consider this a badge of honor to 'suffer' ;) in the same way your Sister and Brother Admins before you suffered (back then I worked in an environment where we had THREE environments to MANUALLY make changes, oof, good ole' days).

  7. Iterate: Inspect and Adapt
    Go slow, turn on a rule or two at a time. For a little while, go back and forth between step 7 & 8, maybe go back to steps 3 & 4. . . This should be agile. Your duplicate management problem will not be solved overnight. Salesforce is going to continue to invest in this feature because this is one of the highest asked for features of all time in Idea Exchange. People have been waiting for years for this - so it's going to grow and evolve. Also, you are going to grow and evolve as a company. Users will change and requirements will change. This is not a feature you set and forget. It's like a plant that needs care and feeding, pruning, watering. You most likely won't be able to walk away from this once it's enabled.

  8. Monitor: Get Feedback and Review Logs & Reports
    Salesforce has done an excellent job giving you what you need to monitor the health of your rules and understand how well (maybe too well) your Duplicate Management implementation is doing at blocking duplicates. Make sure you set up custom report types to get meaningful information about the duplicate record sets and review the logs from time to time. Did you identify an owner for this activity (and did you tell them what you expect of them, how often they should review?)? You can analyze and assess who's encountering the errors, and depending on the way you have enabled the rules, see who may create records despite warnings. When this happens you will need to seek out these users to understand their behaviors and needs. Perhaps the rules are too strict oraren't strict enough.Or maybe the rules are assessing the wrong fields/objects, or there is an education issue. No matter what, this feedback from the logs and reports will be a great starting point for your continued investment in Duplicate Management rules and it will help you adjust the rules so that you can balance the needs of the users with the health of the data. The purpose of a CRM is to allow an organization to grow sales and manage customer interactions. If users can't get beyond "create new X" then you are defeating the purpose of the system.