Automatically Deleting Contacts from Eloqua

Apr 12, 2019

Every now and then I have clients looking for a way to automatically delete contacts from Eloqua so today I’m going to share with you how.

For those of you that have found this article but wonder why you would want to do this I will give you a back story so you can see why this is useful.

Real Life Scenario

One of my clients used to use a lot of purchased lists for their outbound marketing campaigns from Eloqua. One of the problems with purchased data is that 9 times out of 10 it isn’t actually purchased. It is actually rented. They had uploaded lists from several sources but hadn’t paid attention to the use by date and just continued using it. When a list broker rents you a list you will own those contacts for a fixed term, i.e. 6 months. Over those 6 months you can email the list and if a contact opens an email you get to own them. To ensure that you don’t just keep the whole list they like to spike it with email addresses for fictitious companies that they have access to so they can detect if you are in breach of contract. If you are then they send you a bill for another 6 months. The client in question had rented a list of all CIOs in the USA for $40,000 over the term. When they kept on emailing the contacts their account manager sent them the bill, which as per their contract was indisputable for another $40,000. Understandably they weren’t too happy and someone lost their job.

We developed a process for uploading contacts so they we would store their list expiry date which allowed us to do two things. The first thing allowed us to ensure that the client didn’t re-purchase contacts from another list broker when we already had that contact and the other thing was to remove the expiry date when a purchased contact engaged with the client.

The solution was a program in program builder. The final step of the program was the automatic deletion on contacts from the Eloqua database that has reached the date of expiry and had not engaged.

Eloqua Technical Solution

The technical solution is relatively straight forward. It involves five things:

    • 1x Eloqua shared list (contact group)
    • 2 x Program steps
    • 1 x Eloqua deduplication rule
    • 1 x Eloqua deduplication handler set

I won’t bore you with how to create a shared list that is pretty straight forward. For this example the Eloqua shared list (Eloqua Contact Group) is called “SYSTEM_DELETE”.

Step 1 – Add the contacts to an Eloqua contact group
(You have to do this so the deduplication rules can run)

Create the first automatic deletion step in the program which will add contacts to the Eloqua shared list you have created. Select “Add to Contact Group” and select the contact group that you want contacts to move into for automatic deletion.

Step 2 – Create the Eloqua deduplication rule
(This is a dummy rule to trick the system into giving you access to the contact delete function)

Open Eloqua up in a new browser so you can keep program builder open. Go to Contacts > Data Tools > Deduplication Rules > Create New Deduplication Rule.

Give your new rule a name and then click Save.

Check the check box for apply to filter, select Email Address, and add *to the filter value. Next select Email Address on the comparison field. Finally click Save.

Step 3 – Set the Eloqua deduplication handler set
(This creates the automatic delete)

Click on Deduplication Rule options. (Top Right)

Select New Deduplication Handler Set.

Give your Eloqua deduplication handler set a name and click Save.

Select “Matches (Destination)” and click Add Handler.

Select “Delete Permanently”, then Continue.

Repeat the last step for each of the 4 options and click Save and Close.

Open your other browser up with your program and create the next step in the program. Give the step a name and then set the action to be “Run a Match/Deduplication Rule”. Next select the contact group that you are using too store the contacts you wish to delete that was used in the previous step. Then select the deduplication rule that you just created and finally set the handler set that you created to delete contacts.


So there you have it, you can now delete contacts automatically from the platform. Whilst it is entirely possible to use this function slightly differently and run both contacts you wish to delete and those that you do not wish to delete we don’t recommend it. Accidents can happen.

Eloqua Guide: How to use the Eloqua Sandbox

Eloqua Guide: How to use the Eloqua Sandbox

In the ever-evolving landscape of digital marketing, it's crucial to have a safe and controlled environment to test new strategies, campaigns, and configurations before implementing them in your live Eloqua instance. Eloqua offers a sandbox environment for this...

error: Content is protected !!