Import to MailUp usually is performed using a single file with a predefined name (you can use a regular expression to match multiple files e.g. import.csv or newsletter_*.csv); you will have to periodically update the file and upload it on an FTP repository. More than an import can be scheduled, using different files (e.g. import1.csv, import2.csv)


For every configured import, once you upload your file in the common space (on the MailUp FTP space), the import process will be executed and completed as soon as possible (the execution time depends on the number of contacts you are going to import and the operations you are going to perform). On request, your personal FTP space can be used. If you are using your personal FTP space the import will take place with a predefined frequency previously agreed.

For every scheduled export, MailUp uploads the exported data to the FTP repository with a predefined frequency, previously agreed (e.g. every day at 7 AM, or every Monday at 4 AM). Day and time of import can be freely chosen, but attention should be paid to cases in which scheduled imports to take place on Sundays between 2 and 3 AM: in the transition days to and from DST, the outcome may be different than expected.


CSV file structure is free, but you have to arrange with your account the correct correspondence between the fields in the file and the fields in the MailUp console, as in the following example:;john;smith;Yourcompany Inc

In this case, the fields in every row will be associated with the following personal data fields:

  1. Email address
  2. Name
  3. Surname
  4. Company

It is very important to check the correct syntax of email addresses, i.e. that there are no forbidden characters or spaces. Spaces before and after the address are removed automatically during the import process.
The order of the different fields in each row can be agreed upon at the setup stage.

Fields length and properties

Data are imported as text; fields must not contain more than 100 characters. There are no restrictions on the number of fields per row or the number of rows; anyway, the number of available personal data fields is limited, so it is unlikely that there are more than 40 or 50 fields for each row.
You may require fixed-length fields (i.e. usage of space-padding or zero-padding to reach a specified field length). 


The character to be used as a separator can be chosen, keeping in mind that just one type of separator is allowed in a file and that the separator ";" should not be used at the end of a line, after the last field. The termination character at the end of the row is to be used only when the last field in the row is empty, as explained below.

Empty fields

In case of empty personal data fields, they have to be specified anyway, without any value, e.g.:;name;surname;  -> (last field is empty);;;company  -> (second and third fields are empty)


You can also use a specific boolean field to indicate subscription status ("opt-in" = user to be subscribed or "opt-out" = user to be unsubscribed)
In the following example, the boolean values are "0" for opt-out and "1" for opt-in.;name;surname;Mycompany Inc;0;name;surname;Mycompany Inc;1

MailUp automatically receives spam reports from the main international ISPs (Yahoo, Hotmail, AOL…) when recipients click the button "Junk" o "Spam" to unsubscribe. It is very important to promptly remove these users from your contacts, to avoid reputation problems that would end up in all the messages sent to that specific provider being tagged as "spam". For these reasons, forcing a user as subscribed is not recommended.

Subscription to lists or groups

If the listing ID has not been specified in one of the fields, the import will be configured at the setup stage so that all the contacts are imported to a certain list. Destination list and the group can be also specified for every single user within the same file when importing users to different groups: this way it won't be necessary to create more than one file.


a) some users have to be subscribed to list 2, group 105 with opt-in status = 1, some others in group 106;name;surname;Mycompany Inc;2;105;1;name2;surname2;Mycompany Inc;2;106;1

b) some users have to be subscribed to list 2, groups 105 and 120 with opt-in status = 1, some others in group 106;name;surname;Mycompany Inc;2;105;1;name;surname;Mycompany Inc;2;120;1;name2;surname2;Mycompany Inc;2;106;1

Please note that, if a user has to be subscribed to more than a group, there must be the corresponding number of records in the import file; in the example below, John Smith belongs to groups 1,2 and 3, so the file must contain three rows (list is not specified here so it is defined by default at setup stage):;john;smith;1;john;smith;2;john;smith;3

Destination groups must be created in advance in the MailUp console, at the page Recipients > Groups

List IDs and group IDs are listed at the page Settings > Codes table

Full or incremental import

Incremental import consists of files containing only the changes since the last import, while the full mode imports the entire database every time, replacing the previous data. This way, a user is implicitly deleted if he does not appear in the latest imported file. The full import is recommended only when the database to be synchronized is a small one.

Guidelines / Forbidden characters

FTP Repository 

File exchange takes place using a FTP repository located on MailUp's servers:


Shared repository on customer's servers

Shared repository on MailUp's servers

sFTP (FTP over SSH, port 22)

You share the access credentials with the MailUp staff

The MailUp staff shares the access credentials with you

FTPs (FTP over SSL)

Not available

Not available

The MailUp system deletes the file after the import, so it will have to be able to access the shared repository with a user that has deletion permission on the shared FTP folder.

Management of external campaign codes

In some cases, you can provide a campaign code for each row, valid for a message or refer to a specific message sent to a specific recipient. You will report this code when exporting the "outcomes" (see Data Sync FTP exports from MailUp for details)  

This value cannot be handled as a personal data field, but it will be stored in a backup table and included in the output data (outcomes) to allow the customer's system to track a campaign. Should you need such a field in the file, reporting this kind of requirement at the setup stage is highly recommended.

Example with specific codes for the pair (user, campaign):

When importing, the records specify that John Smith and Mary Johnson have respectively the codes COD0001 and COD0002 for sending the message A1 scheduled for a certain day;COD0001;A1;COD0002;A1

A week later, the same message with code A1 is scheduled again for sending, but this time different codes are used;COD0011;A1;COD0012;A1 

The use of different codes allows the user to get different outcomes (see Data Sync FTP exports from MailUp for details) to differentiate the feedback on the first and the second sending of the same message

Special cases and personalizations

As some of these may be available at an extra fee, please contact our sales department. In case the desired import mode is not described in this document, personalization can be discussed with our technical and sales departments.

Import of users for text messaging

Import works the same way; when importing contacts for text messaging, the field containing the phone number is mandatory and univocal, i.e. there must not be two recipients with the same phone number. Imported phone numbers should always be preceded by the international prefix. The MailUp system adds the predefined international prefix for the destination list, should the prefix be missing in the import file.
It is also possible to perform a multichannel import, i.e. of both email addresses and phone numbers. Please note that importing contacts for two channels makes imports last longer.

Should you need any further information or custom integrations please do not hesitate to contact your account manager.