Why Use a Unique Identifier?
Uniquely Identify Contact Records
Maropost's data model requires that no two contacts can share the same email address nor can they share the same unique identifier. If your business rules have the same constraints, then you can use a Unique Identifier.
Use advanced features available for Unique Identifier
Once your contacts have their UIDs set in their profile records, you can take advantage of Maropost's advanced features specific to Unique Identifier.
- Link data in your relational tables by the UID instead of the contact’s email address. This option is especially helpful when the data you store in relational tables is associated with your contacts’ member IDs, or customer IDs, and not their email addresses.
- Send emails, text messages, and mobile app messages to your contacts all through the same Journey.
- Add personalization from custom fields in your text messages and mobile app messages.
- Create and update contacts via API, referencing them by their UIDs instead of their email addresses.
Designating a Unique Identifier
You can select a custom field as the Unique Identifier by following the steps given below:
- Click your user name on the top-right corner of the application, and then from the drop-down menu, select Settings.
- On the Settings page, from the Contacts section, select Unique Identifier.
- On the Unique Identifier page, select a value for the Unique Identifier field. The drop-down list for the Unique Identifier field contains all the custom fields created in your account.
Note: The custom field must be defined as a string data type.
- Click SAVE CHANGES.
Upon saving the changes, the selected field is designated as the unique identifier for your contact records.
Import Rules When Using a Unique Identifier
The data model allows for the UID field to be null. The allowance enables contacts to be added to your email list directly from sign-up forms prior to being assigned a member ID (or whichever field you have designated as your UID).
You are responsible to provide the value of the UID for each of your contacts. The most common way is to include the field in your email contact import file. Note that email address is still a required field in your import file. Simply map the field in your import file to the custom field that you’ve defined as your Unique Identifier.
In the example below, 'member_id' is the custom field that has been designated as the Unique Identifier and 'membership_id' is the column name in the import file.

The following diagram illustrates the rules for importing contacts based on UID field:
To summarize the import rules:
- Since the UID field is allowed to be null, if a record in the import file does not have a value for that field, then the rules for determining a new or existing contact is based on the record’s email address as per the default process.
- If a record in the file has a value for the UID field, then that field value becomes the first determinant of whether a contact record exists or not.
- If a record in the import file has a Unique Identifier and there is no record in the Contact database having the same Unique Identifier, then the next step is to check whether the email address of the record in the import file matches an existing record in the Contacts database. If a matching record is found, and that record does not have a Unique Identifier, then it is updated (assuming that you’ve selected the option to update existing records), adding the Unique Identifier from the import file to that record. This logic flow is the primary way that contact records in the Contacts database are updated with their Unique Identifiers from the import file. On the other hand, if the matching record in the Contacts database (based on email address) already has an existing Unique Identifier, then the record from the file is not imported and is rejected as a 'Duplicate' record.
- If the Unique Identifier of the record in the import file matches an existing record in the Contacts database, then the next step is to check whether the email address of the record in the import file matches that same record in the database. If it matches, then that record is updated per the data in the import file (assuming that you’ve selected the option to update existing records). If the email addresses don’t match, then the final step is to check whether the email address in the import file matches a different record in the Contacts database. If no matching record is found, then the record is updated along with its email address. However, if the email address does match an existing record in the Contacts database, then the record is not imported and rejected as a 'Duplicate' record.