Eloqua Admins, ever wish you could remove your global unsubscribe and hard bounce contacts from Eloqua, but still keep them in your CRM so you have the sales activity history without having to worry about them coming back into Eloqua through your Auto Synchs?


Here’s a great way to automate the process to prevent the contacts from coming back into Eloqua and easily create a nice clean list of records to be deleted from Eloqua.  Keep in mind the Eloqua Global Unsubscribe and Hard Bounce email addresses are tracked in a separate table so should that email address ever come back into your Eloqua instance via a list upload or form submit it will immediately be tagged as global unsubscribe or hard bounce so you will not lose that information.  Here’s a great post explaining exactly what information is retained - Deleting contacts from your Eloqua10 database.


The basic concept of this program is mark the record in Eloqua as Do Not Synch, push that value back to your CRM, then use a filter on the Auto Synchs to prevent the record from being synched back into Eloqua and finally delete the record from Eloqua.


Now that you have the background on how this works, here are the details to build it out (note this requires detailed knowledge of your CRM Integration and knowledge of Data Tools & Program Builder in Eloqua):


CRM Requirements:

  • Create the following Boolean/checkbox  fields in your CRM at both the lead & contact level – “Do Not Synch with Eloqua”


Eloqua Requirements:

1. Create the following checkbox field in Eloqua – “Remove from Eloqua”

Remove from Eloqua field.png

2. Map the fields for Auto Synchs:

          a. Go to the Setup->Integration->Inbound->Management->Auto Synchs-> Get Leads->Field Mapping->Edit->Options->View Field Selection & click the check box next to Do Not Synch with Eloqua then map the “Do Not Synch with Eloqua” SFDC field to Eloqua field “Remove from Eloqua”  (note the image below shows the Auto Synchs for a SFDC integration)


edit field mapping - view field selection.png

Lead mapping.png

            b. Repeat for Get Contacts Auto Synch

contact mapping.png

3. Create the filters for Auto Synchs

    1. Go to the Setup->Integration->Inbound->Management->Auto Synchs-> Get Leads->Transfer Values->Edit->Edit->Options->View Filter Details & add the following filter “Do Not Synch with Eloqua” equals “False”

transfer values.png

Auto synch transfer values.png

External Calls filter edit.png

            b. Repeat for Get Contacts Auto Synch

4. Map the fields for updating the CRM

    1. Go to the Setup ->Integration->Outbound->External Calls->Send Data->Contact->Update Contact->Options->View Field Mapping and map the “Do Not Synch with Eloqua” SFDC field to Eloqua field “Remove from Eloqua”

External Calls.png

Do Not Synch to Eloqua field mapping.png

          b. Repeat for Leads (Lead->Create Lead) & (Lead->Update Lead)

5. Create the following Shared list (individual contacts) – “To Be Deleted from Eloqua”

6. Create the following Segment – “To Be Marked Remove from Eloqua”

    1. Create a filter named “Remove from Eloqua Feeder” using the following attributes
      1. Marked as Hard Bounceback after date (use a date prior to your implementation date so you won’t have to edit the date moving forward & you will capture all records)
      2. Globally Unsubscribed after date (use the same date as the Hard Bounceback)
      3. Compare Contact Fields (Remove from Eloqua field is equal to 1 – this filter will be used later and this will prevent records from running through the program endlessly)
      4. Compare Contact fields (CRM LeadID is not blank - this verifies that the contact is already in your CRM)
      5. Compare Contact fields (CRM ContactID is not blank - this verifies that the contact is already in your CRM)
      6. Group filters i and ii using the OR comparison
      7. Group filters iii and iv using the OR comparison
      8. Filter ii should have And comparisons tying it to the two groups above
      9. The final filter is visible in the attachment to this post           

            b. Share the filter (be sure to use the shared filter)


7. Create the following Update Rule to mark the record accordingly

    1. Go to Contacts->Data Tools ->Update Rules->New Update Rule
    2. Update Rule Set Name – “Check Remove from Eloqua Box”
    3. Set the “Remove from Eloqua” field to 1 (remember 1 is the value for checked)
    4. A completed update rule is visible in the attachment to this post


Now you'll need to build the Program in Program Builder that pulls all of the pieces above together:

1. Setup->Program Builder->Create New Program

          a. Name the Program “Mark the Remove from Eloqua Box”

          b. Create the first step “000 – Start” – the default action will be a pass through step

          c. Create the second step “100 – Mark Remove from Eloqua box to True” – the default action will be to Update Contact/Prospect/Company Data using the update rule created above under #7 “Check Remove from Eloqua Box”

          d. Create the third step “200 – Add to Shared List” – the default action will be to Add Contacts to a Contact Group, specifically you’ll add them to the contact group (shared list) created above under #5 “To Be Deleted from Eloqua”

          e. Create the fourth step “900 – Send to CRM Update Program” – the default action will be to Move to Another Program, specifically you’ll want to move to the “000-Start” step of your Update CRM program

          f. Create the fifth and final step “999 – Exit Program” – the default  action is Remove from Program

          g. The final program is visible in the attachment to this post


2. Create the Feeder for the Program

          a. Feeder Name “To be Marked Remove from Eloqua”

          b. Source of program members = Contacts in Filter

          c. Contact Filter = “Remove from Eloqua Feeder Filter”

          d. Evaluate Every 4 hours

          e. The completed feeder is visible in the attachment


Finally here is an easy process for deleting the records from Eloqua:

  • Go to Contacts->Shared Library-> and open the shared list created above “To Be Deleted from Eloqua”
  • Export the List -> Save to your computer
  • Go to Contacts->Contacts->Upload
  • Upload the list in #2 with the import purpose to delete the records.
  • Follow these last few steps for deleting records from Eloqua on a regular basis, such as weekly, monthly, quarterly, etc. depending on your business needs.


Advanced Options:

This concept can be used for a number of additional items, such as left the company, bad data/junk, specific record statuses or types, etc. but the most important concept you’ll need to understand is that the updating/marking of the record as do not synch must first occur in Eloqua, otherwise your autosynch filter will prevent the record from coming back to Eloqua, thus not updating it in Eloqua.  For example, if you change a record from active to left company and marked it as do not synch in your CRM, the filter will prevent the record from coming into Eloqua, thus the record in Eloqua will remain listed as active and never be updated to left company.