Discussions

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Cleansing your database with an inactive contact auto-deletion program

julia.pavlovski
julia.pavlovski Posts: 2 Gold Badge
edited September 2018 in Social Groups

Challenge:

We have a contact limit in our contract with Eloqua and we were getting dangerously close to the limit. The company does not have the budget to pay for additional contact storage so we needed to find a way to lower our contact count without jeopardizing the integrity of our database. Another challenge is that we use SFDC and data syncs between the 2 systems regularly. We also needed to make sure that any contacts removed from Eloqua were not coming back into Eloqua from SFDC through auto synchs.

Goals for Success:

The main goal for success is getting below our contact limit to allow for acquisition of new contacts.

Solution Summary:

We decided to explore a way to delete unsubscribed and hard bounced contacts from Eloqua on a monthly basis. Unsubscribed and hard bounced contacts are identified regularly by a segment filter and are added to a CDO once a month. Then a contact checkbox field is marked and synced with SFDC to ensure the contacts do not return to Eloqua after they are deleted. Once the field is marked in SFDC, the contacts are deleted from Eloqua.

The following is an outline of the steps we took to implement this initiative.

Criteria:

We created a segment to look for semi-recent unsubscribes and hard bouncebacks.

Criteria is as follows:

Contacts who have unsubscribed 3 months ago or longer
OR
Contacts who have hard bounced 3 months ago or longer

Important programs, list, and custom object

  • Program - This program will add to your shared list and mark records with the do not synch checkbox in Eloqua before moving to the following program builder.
  • Program Builder - This program builder will mark your checkbox in SFDC to ensure that records do not re-enter Eloqua from SFDC after deleted.
  • Program Builder – This program builder will automatically delete your contacts.
  • Shared List – Create this to save your unsubscribes and bouncebacks into regularly. This gives you a quick way to pull all of these contacts monthly to save to a CDO.
  • Custom Object – Create this to save your unsubscribe and bounceback data, so you still have it in Eloqua but it’s no longer clogging up your contact limit.

Frequency

This process to identify unsubscribes and bouncebacks older than 3 months is always running and always evaluating. Once they are in the program canvas they will enter a hold step waiting for action by a member of the marketing ops team.

Once a month, marketing ops will save all the records into a CDO and then move records on through the process so they are deleted.

Flow

Any contacts who meet the criteria in the segment (details above) will be added to the program. They are added to a shared list and then a wait step.

Once a month, the marketing ops manager will export the shared list and upload to Custom Object that will save historical unsubscribes and bouncebacks.

Export Shared List

In the navigation go to Audience > Tools > Shared Lists > search for your shared list.

Click Export at the bottom of the list and make sure to select export ALL CONTACT FIELDS.

pastedImage_32.png

Upload List to Custom Object

After you’ve saved the list to your computer, navigate in Eloqua to Audience > Custom Objects > search for your custom object.

At the top right select Custom Object > Upload Custom Object Records.

pastedImage_33.png

Step 1: Data Source

Name your list and choose the data source.

pastedImage_34.png

Step 2: Upload Data Source

On the next page, choose your file then upload. Double-check the data in the preview to make sure it’s the correct list.

pastedImage_35.png

Step 3: Field Mapping

Uniquely Match on Eloqua Data Card Field: Email Address. (see screenshot below)

Be sure to map the fields using the Auto-Map Fields button.

pastedImage_36.png

Step 4: Upload Actions

Set the status of uploaded data cards to Registered.

pastedImage_37.png

Step 5: Summary

Review all the details and make sure that your email address is listed to receive a notification. Then click Finish at the bottom.

pastedImage_38.png

Move to next step in Program Canvas

After uploading the records to your custom object, head back to your program canvas. Move the campaign members from the 1000 Days Wait step to the Wait step right below it for 0.1 Hours. This will allow the contacts to continue moving through the program.

Update Rule - Mark To Remove: This step marks the SYSTEM – To Remove From Eloqua checkbox.

Has Lead ID? Has Contact ID?: These decision points will move contacts to the CRM Update program builder to update the Do Not Sync With Eloqua checkbox in SFDC IF a SFDC lead or contact exists.

If there is no lead or contact ID, the Eloqua contact skips the CRM update is immediately moved to the Auto-Delete program builder and is deleted out of Eloqua.

Program Screenshot

pastedImage_39.png

Program Builder Screenshot – Marking Do Not Synch in SFDC

pastedImage_40.png

Program Builder Screenshot – Auto-Delete from Eloqua

pastedImage_41.png

Results:

As a result of this program, we have been able to successful remove over 300,000 contacts from our database, keeping our database relevant and clean, making space for new contacts, and staying within our contact limit in Eloqua.

Helpful Luminary Courses

Email Deliverability, Convert with Custom Objects, Profile & Target, CRM Integrations, Fundamentals Series

Tagged:

Comments

  • Matthew Phillip
    Matthew Phillip Posts: 20 Red Ribbon

    Hi Julia,

    Great and informative post. We are in desperate need of a solution for dead weight in our database, so stumbling across this was very timely. I've got most things in place but am waiting on our SF admin to add the 'Do Not Synch with Eloqua' on the appropriate entities.

    I had a question around the Auto-Delete program you built. I'm not sure how to do that. Perhaps I still need to have a few things in place within Eloqua and SFDC before I can properly build the program but I'm not seeing an option to delete the contacts. From the screenshot of your program - are you running a Match/DeDup rule there?

    Any clarification around how you built that would be super helpful.

    Thanks!

  • jjaffry1989
    jjaffry1989 Posts: 9 Red Ribbon

    Hi Julia,

    Great and informative post. We are in desperate need of a solution for dead weight in our database, so stumbling across this was very timely. I've got most things in place but am waiting on our SF admin to add the 'Do Not Synch with Eloqua' on the appropriate entities.

    I had a question around the Auto-Delete program you built. I'm not sure how to do that. Perhaps I still need to have a few things in place within Eloqua and SFDC before I can properly build the program but I'm not seeing an option to delete the contacts. From the screenshot of your program - are you running a Match/DeDup rule there?

    Any clarification around how you built that would be super helpful.

    Thanks!

    Hello Matthew,

    Here is a post: Delete contacts automatically within a program using deduplication rules .

    It is not considered Eloqua best practice, tho it does the trick.

  • Mr Thee
    Mr Thee Posts: 16 Red Ribbon

    nice one. we have more or less the same running.

    additionally i log the reason for deletion; (eg: SFDC inactive, deletion request GDPR, ELQ inactive, hard bounce, ...)

  • Farrell
    Farrell Posts: 24 Green Ribbon

    Question on the delete dedup rule.

    Why "Delete permanently " is to run on "Non match (Destination)" and not "Match (Destination)"?

    Doesn't "Non match" select those contacts that do not match the source segment / upload data?

Sign In or Register to comment.