Skip navigation



Keeping data clean, accurate and updated is Marketer’s primary responsibility as data is the key of all marketing activities. Every day we get numerous new contacts in our database and we want to enrich our data in all possible ways so that it can be useful for segmentation. In our organization, we had an existing program created in Program Builder but data processing though Program Builder is time-consuming as each step takes 15 min to process contacts.


Our biggest challenge was to analyze current data in the existing database and build a program such that data processes in a more efficient way.




The preeminent objective was to normalize contact data faster without compromising with overall performance. Also, we wanted to ensure that data is segregated so that it is handy in our analysis.




We needed to analyze existing Job-level field and modify the Data Tools and flow based on current Job-level values. Job-level field values were assigned based on Title field.




Program flow:

The program flow contains following steps:





Contact field:

Created a new field named “Title_Norm” We have assigned same values to Title_Norm as Title and used Title_Norm instead of Title in entire program flow.





We have created two separate segments so that we can control re-evaluation frequency of the program.


1. Created segment with contacts created within the last 24 hours.



We wanted to reduce the overall number of contacts flowing through the program every day as processing all contacts in the program can affect overall Eloqua performance. Hence, we have added Exclude filter to exclude hard bounces, unsubscribes and inactive contacts.


2. Created segment with contacts modified within the last 7 days.



Update Rule:

1.Created an Update Rule to set value in Title_Norm field




2. Created Update Rules for all Job-level values with conditions.


Update rule.JPG

We have updated existing Update Rules that were used in the old program and modified it based on Title values of current contacts.


Compare Contact Fields:

After each Job-level Update Rule, compared the contact field, whether it matches to that specific Job-level, If Yes then exit else flow through the next Update Rule.


Shared lists:

Created three Shared lists to store contacts with Blank, Invalid and Valid Job-level. Then added contacts to respective Shared list and remove from other two lists.


We have all contacts flowing into the Department Normalizer Program in the last step.




We created a program that is running continuously and normalizing our new as well as modified data. We further made it efficient by limiting the data flowing through the program.


Eloqua also has the Contact Washing Machine to aid cleansing contacts but implementing it in this way we have greater control over the values and keywords that are unique to our industry.


Since, it’s an ongoing process, we are continuously analyzing our current data, and based on the results we are making updates in Data Tools and Program Canvas.


Helpful courses:


B2B: Fundamentals

B2B: Data Cleansing

B2B: Targeting




Using Program Canvas has been a great benefit to our organization as it is processing our contact data much faster than the old Program Builder.

The interface of Program Canvas is simple and clean, hence it is easy to create, manage and update the programs.

Filter Blog

By date: By tag: