Import User Data


We've revamped the User Import UI, which includes enhanced features and improved performance. For more information about the revamped UI, refer to Import User Data (Revamped).

User imports enable you to import new user profiles (or) update profile data of existing users through a CSV file. This is particularly useful when migrating from other platforms to MoEngage or performing mass updates to a large user segment. Some common scenarios where this is useful are listed below:

  • Importing new users - This is useful for immediately starting with Email Campaigns & SMS Campaigns without waiting for Mobile/Web SDK integrations
  • Updating existing users - This enables you to update specific user attributes for existing users in MoEngage. This is useful when you are running campaigns that are segmented or personalized on these user attributes, like sending notifications with unique coupon codes. Note: Update existing users will not add new users. It will only update existing users.

This feature is accessible from Segment -> Import Users.


The following step-by-step process outlines how users can be imported into the MoEngage platform.

Step 1: Upload CSV list of users

The first step towards importing users is to upload the .CSV file containing the user details including their User Attributes. MoEngage allows user lists to be imported as a list of Logged In users (users who have signed up on your website or app), or as a list of Anonymous users (users who have used/visited your app or website but have not registered themselves). These two user list types are explained in detail below.

  • Registered Users: These are users who have a registered account with your app/website. These users should have a unique identifier in your system and for this upload, your list should mandatorily map a column that contains this unique user identifier with the user attribute "ID". This upload is mostly used to update the user attributes of these registered users.
  • Anonymous Users: These are users who have not yet signed up on your app/website but you have some identifier to recognize them i.e. email, mobile number, etc. For this upload type, you need to mark a column from your list (email, mobile number, etc.) as the "Anonymous ID" of the user. This upload can be used to create anonymous users in MoEngage using their recognizable unique identifiers and send email/SMS campaigns.

For each upload, you can also download a sample file that clearly explains the data format expected in the CSV File. Once you have selected the upload type that you wish to perform, you can click on the “Browse" button to select your preferred .csv file. You can also drag and drop the file into the area shown in the image above.

Furthermore, you can specify whether the file contains headers, or if you wish to only update details of existing users by selecting their respective options. Once the file upload is completed successfully, you can click on the “Next” button to perform the next step.



In case you provide a unique identifier for LoggedIn Users (or Anonymous Identifier for Anonymous Users) who already exist in the system, the existing users will get updated with new attributes. If the identifier does not exist, MoEngage will create a new user with that identifier.

Step 2: Configure columns of CSV File

Mapping User Attributes

In this step, you will need to map each column of the uploaded CSV file to existing user attributes (or create a new user attribute). You will see the top 3 rows (excluding Header) and all the columns of your CSV file (scroll horizontally to see all the columns). For each column, select a user attribute from the drop-down.




  • Column names are case sensitive. They should exactly match the name of the attribute on the dashboard

Configuring Identifier

For LoggedIn Users, you need to mandatorily identify one of the columns as a Unique Identifier of the user by selecting "ID" from the drop-down.


For Anonymous users, you can identify any column as the Anonymous Identifier by hovering over the column and selecting the checkbox "Anonymous ID".


Adding new User Attributes

If a column is a new attribute you are adding to your users, click on "+" and enter the name of the attribute. In case the new attribute name is the same as one of the existing attributes, you will need to enter a new name.

Adding Values with Comma

In case a value in any column contains a comma (,)- please ensure that the value is enclosed in double quotes ("") so that the value is retained without being split into multiple columns. For example, if a column contains the value (221B Baker Street, London), it should be enclosed in double quotes ("221B, Baker Street, London"). In any other form, only the data preceding the "," will be considered for the given column.

Supported data types

The following data types are supported for column values in the file:

  • String
  • Numeric
  • Boolean
  • Datetime

Language Support

You can import data in any language as long as you are using UTF-8 decodable characters.
Empty values

If your file contains empty values then these would still be imported into MoEngage. In this case, we will create/update user attribute where the value would be empty.

Skipping Column

In case you need to skip any of the columns, just click on "Skip the column" and you will not need to configure that column. To hide skipped columns, you can de-select the checkbox "Show Skipped Columns" below the configuration.


In case you want to re-include a skipped column, make sure you select the "Show Skipped Columns" checkbox and for that column click "Include & Configure"

Creating Custom Segment

Custom segments can be created for the imported users during the user import workflow itself. This can be achieved by selecting the "Create Custom Segment" checkbox and providing a name for the custom segment. Upon successful completion, this custom segment will start appearing in the list of Custom Segments from where it can be used for any campaigns.


Click on Finish and your data will be uploaded. You will see a list of all your imports and their status will indicate if the upload has been processed. Once the upload is processed, you will get an email mentioning the details of the upload.
Please note that you cannot use / or Unicode characters in your custom segment name else the import will fail.

Past Imports

After your first user import, you will see a section that will show the past imports in your account and their details. 




Imported users' channel reachability and the custom segment are available after 30 minutes of the import completion. Please plan your campaigns accordingly.

What is not supported currently?

  • Attribute Type list and other complex types (JSON, dictionaries, etc.).
  • Newline character formats other than "\n" - .The only newline character currently supported for the .csv files is "\n".Other formats like "Ctrl+M" or "\r" are not supported. 
  • If your file contains less than 5 rows, then you may face errors during file import. Please add some dummy rows to import in this case.

In case you have any questions about User Imports, please reach out to us at

Was this article helpful?
21 out of 32 found this helpful

How can we improve this article?