Custom data objects (CDO) can be helpfull containers of data.
One of its most simple use would be to use contact related information for which you don't want to create contact fields.
Another one would be to store all responses in your Eloqua instance (could be accomplished using a master hidden form too).
More advanced usage would be integration with external platforms.
CDO setup examples
We need to distinguish between 2 different custom objects setup:
- with primary key (usually email address): once an entry is submitted, any additional submits from the same contact will update the initial entry (can depend on form processing steps setup);
- without primary key: each new submit will create a new entry in the CDO.
You can check the mapping of your CDO to contact records by going into the Reporting menu on the upper right side after opening the CDO. Just pick "Custom Object Records Mapped to Contacts Breakdown".
The window which will pop up will let you know how many unmapped entries you have. Let's say that out of 6.5 mil custom object entries (we asume we have a custom object with no PK) you have 1 mil unmapped entries. This means that the data in those unmapped entries cannot be found with filters(or segment filters) because filters check if contacts have linked records in custom objects but in this case those responses are unmapped.
One of the reasons for having unmapped entries in an CDO is that the "map to contact" box was not selected at upload.
The services can be accessed once the CDO is opened, from the upper right menu, click Custom Object --> Custom Object Record Services.
Basically you will be able to set some processing steps, similar to the program builder steps (or let's say forms processing steps for those less familiar with programs).
There are 2 options for when to run the steps: for new data, or for modified data. What this means is pretty self explanatory, but also described in the screenshot below.
When addding a processing step upder any of the categories above the available options are below.
Most commonly used option would be to add to a Program Builder or adding to a specific list. You can also run an Integration Rule if you do this from a CDO level. Most of the steps can be conditional.