User's GuideContactsLists and Data Tables

Lists and Data Tables

When should I use a list?  What is a data table? When should I use a data table instead of a list?

Do these questions sound familiar?  They are the most common questions we receive when clients begin to configure their data in iPost.  The answers to these questions lie within your business model.

Let’s take a quick look at the differences between lists and data tables.


Lists are essentially flat files or single table structures which contain both contact information and attributes in a single row.  In iPost, the single data structure is the All Contacts list. The Lists option is the traditional set up for an account and is the most commonly used data configuration.

A contact exists only once in any list as well as within the All Contacts list.  When the contact is imported to a list, they are automatically added to the All Contacts list.  If the contact is updated during import or via the interface, the attribute data is overwritten on every list.

Furthermore, Lists enables the contact status to be set for each individual list, allowing a contact to opt-out of one list (list opt-out) while still being subscribed to another. This allocates an additional level of granularity to the opt-out process.

Data Tables

Data Tables allow for the creation of multiple tables with varying structures which can be related together on a data field. This system works to establish a relational database.  Each data table can house a completely separate data set, creating a complex configuration and granting you a detailed view of the data. 

Whereas a contact can only be on a list a single time, a contact may exist multiple times within a data table.

Advanced Data Structures can be created allowing one-to-one, one-to-many, and many-to-one relationships in multiple data tables.

As each data table is independent of each other, a contact may be updated within one data table while the other data tables remain the same. This ensures that data is not overwritten or lost. The use of data tables also provides you access to SQL queries. This adds another level of data mining which enables you to create new data sets.

Data Tables can be used to store “normalized” data which allows for a much higher level of resolution, segmentation and personalization. The structure is fully customizable, giving you the ability to use all of your data. In addition to these data tables being fully accessible in the UI via filters, they can be read and populated with user-created SQL.