Supported file formatCSV or XLSX only.
Please convert all your files into a CSV/XLSX before attempting to import the data to your web application.


There are 4 important things that you'd need to know about when you import contacts from a CSV/XLSX file. They are described in detail below:

  1. Preparing your CSV/XLSX file

  2. Importing the file

  3. Mapping fields

  4. Reasons for failure of data import 


Preparing your CSV/XLSX file

  • Make sure that your CSV/XLSX file’s header row has a column that can be mapped to the field Email ID for the import to be successful. 

  • The file shouldn’t be larger than 5MB.

  • If you'd like to automatically assign contacts to users, create a column with the email addresses of the users and map that column to the field Owner.

  • If any field is a multi-select field, the values of the field should be separated by semicolon(;) in the CSV/XLSX file. Ex: Say the field, Competitors involved is a multi-select field. Competitor column in the CSV/XLSX should be:

Last Name

Competitors involved

Laer Bloomington

Tracton Inc; Hilvell Org; Boton Space Ltd

Sarah Neruvisk

Niller Co; Hilvell Org

Note: The email address must be the email address that the user uses to sign in

Importing the file


Click the Contacts tab. 

  1. In the contacts list view page, click the Import Contacts button. 

  2. In the Import Contacts overlay, choose whether you wish to import just contacts, or contacts and account and click next.

  3. Upload your contact CSV/XLSX file and browse through the files on your device to choose the desired file. Make sure the file format is CSV/XLSX.

  4. Once you have selected the file, click on next to move on to field mapping.

  5. If you'd like to replace the CSV/XLSX file, click Go back and you'd be able to upload a fresh file.

  6. Mapping fields

    The overlay Map Columns to Fields that you now see is exclusively for mapping the columns in your CSV/XLSX file with the fields available. A contact’s data from your file is displayed alongside the respective headers to help you map the fields better. 

    Note: The field Email must be mapped for the import to be complete.


    Mapping the fields right is critical to the success of the import. So, here's a list of know-hows to help you do it right:

    • 40 fields are offered by default.

    • If you have columns that cannot be mapped with any of these 40 fields, you can create custom fields.

    • When you try to import a file with no data in the mandatory fields, your import will be unsuccessful. Pay attention to the list of mandatory fields for your account before your import the CSV file to ensure that all the mandatory fields are filled with relevant values.

    • You can create a maximum of 100 custom fields for contacts.

    • You’ll need to create these custom fields before you begin the import for you to be able to map your columns with them.

    • While mapping a contact/account to the Sales Owner, ensure that the CSV file has the email address of the sales owner in the column 'Sales owner' and NOT the name of sales owner. Adding the name will not map the sales owner to the record.  

    • If there are columns that you do not wish to import, you can skip those columns by simply not mapping them with any field.

    • As fields get mapped, they become unavailable for mapping with another column (fields are distinct).

    • If you want to map a field that has already been mapped with one column to another column, you’d have to remove that field. Once you’ve removed that field, both the column and the field become available for mapping again.

    • When a column is mapped to the field Name (under the category Account fields), its values are searched for matches in the Accounts tab. If a value matches with an existing account, the record is created as a new contact and is associated with that account. Likewise, if a match isn’t found, then a new account is created with that value and the record - the new contact, is associated with that account.

    • Apart from the field Name, values of columns mapped to other related fields (identified under Account fields) such as the website or address of the company, are imported to the respective fields in the Accounts.

    • Lastly, make sure the field type matches with the type of value in the column. For example, if you’re trying to map the column  Number of times contacted, you need to find a field that accepts numeric value viz the Number field. If you’ve mapped it to a field which is a text box, then the values for the column Number of times contacted will not be imported.

  7. Once you've uploaded a CSV/XLSX file, choose one of three options:

    • Create new contacts - This creates all the data from the CSV/XLSX file as new records.

    • Update only existing contacts with or without overwriting - This identifies exisitng contacts by using identifiers such as email and Mobile and updates only these contacts.

    • Create new and update existing contacts with or without overwriting
      Identifies duplicates between the CSV/XLSX file and onboard records by matching them based on the following identifiers:

      • Email*    

      • Record ID

      • Phone number*

      • Work Number

Additionally, all fields of type ‘Text field’ and ‘Number’ will be automatically detected and can be used for matching.

  • When Email is used as an Identifier: 

    • The email field in the CSV/XLSX will be matched only with the primary email of Lead/Contact for finding duplicates. Secondary email addresses, if any, will not be considered.

    • The CSV/XLSX file will be matched with both Leads and Contacts to identify duplicates.

    • If you are importing multiple emails for a Lead or Contact through the CSV/XLSX file, the first email in the cell will be considered as the identifier.

    • If the CSV/XLSX file has a single column for multiple emails wherein each email is column separated by semicolons, the first email will from each cell be used as the identifier for finding duplicates.

  • When Phone number is used as an Identifier: Only if there is an exact match between the field value on the CSV file and the stored record will the record be considered duplicate.

    Example: if a record on contains 9003241245 and the CSV file has a record containing phone number as +1-9003241245, then the two records will not be considered duplicates


  • Decide what to do with records that are identified as duplicates:

    • Update all duplicate records
      - Overwrite all fields:
       Updates all the fields and overwrites the values present in the fields.
      - Update only empty fields: Updates only fields that are empty.

  • Pick a date format: Choose the date format for all date fields present on your CSV/XLSX file. You can choose between one of the following three formats:
    - DD/MM/YYYY
    - MM/DD/YYYY
    - YYYY/MM/DD

  • Manage marketing lists and email subscriptions: Choose the subscription status and types Click the checkbox to subscribe your contacts to emails. Make sure that your leads have consented to receive emails from your organization.

  • Manage sales owner and lifecycle stage: Choose a user who will be assigned as an owner for all records that are unassigned i.e the owner field is left empty on the CSV/XLSX file. You can also add the lifecycle stage to assign to the contacts.


7. After you’re done mapping the fields, select Import now.


If your CSV/XLSX file is small, the import is instantaneous and you can see a green label that gives you the number of successful imports. If you’ve checked the Update checkbox, then you can also know the number of contacts that were updated during the import.

If the CSV/XLSX file is large, you would receive an email that gives you the same data when the import is complete.


Note: Import limit can be set only for Contact/Account/Deal modules and not custom modules

Admins can set limits for users on how many records they can import and update for the day. 
To configure this,

Go to Admin Settings > Roles > Choose a role (say Sales User)

Under Permissions > Actions, set the limit for creating and updating records during import

Sales users will be presented with a note during import that informs them not to exceed the import limit set by the admin.

Clicking on the information symbol would fetch more details regarding the import

Sales users will be presented with a warning message on exceeding import limits. The import functionality will also be disabled for that day.

If the sales user tries to exceed the import limit, an error message will be thrown and records will not be created.


The import history page that you would land on after every import gives you insights into the records that were imported and skipped.


Where can I see my imported contacts?

You can view all the imported contacts under the New Contacts view.


Why did some of my data not get imported?

These could be the possible reasons why some of your data was not imported.

  • Invalid email address - If the email addresses in your CSV/XLSX file aren’t of the proper format (e.g: johndoe@sales ,

  • Duplication - If a contact’s email address is already present in the system, that contact is skipped. This is because each contact must have a unique email address.

  • Unmapped Columns - Columns that aren’t mapped with any of the field.

  • Improper Field Type - If the field type is different from the type of value in the column.

  • Picklist Values - If you’re mapping a column with values for a picklist (such as Radio button/Checkbox/Dropdown menu) with a field (also a picklist), you need to be double-check that the values in the column match with the choices of the field (picklist).

    For e.g : If you’ve got a column that has the values 1, 2, 3 for the Number of contacts attempted and want to map it to a radio button (field), make sure that that radio button has 1, 2, 3 as the field’s choices.

What is the maximum file size for import / Error says that the file size is too big / Can the import file size be increased?

A: The import file size should not be more than 5MB. You can split the data into two files and then import it separately and this should fix your issue.

What would be the right format for importing contacts from LinkedIn alongwith their LinkedIn URL / I see the following error during import : Linkedin Enter the last part of the profile URL, like "test123" - how do I have this fixed ?

A: I understand that while importing the data you are getting the above error. In the LinkedIn URL you would only need to enter the last part of the contacts URL and not the entire url.

For example: 

Then you would need to enter only the last part that is  "test123" in the CSV/XLS file that you’re attempting to import.

I’m unable to upload leads to the CRM and I receive an error message saying that the “date format is invalid” - how do I have this fixed / What are the basic troubleshooting steps to fix errors related to the date format?

A: I understand that you are facing errors related to the date format while importing your records. This issue could happen if the date format in the file that you’re importing is different than that present in your Freshsales instance. Kindly navigate to your Admin settings > CRM Settings > Date format.

Do check if the date format under the CRM Settings and the date format in the importing CSV File are the same. If not, kindly change the date format as per your CRM settings and then try reimporting your file. Also, make sure you choose the same date format during import.

How to delete wrongly uploaded records via import?

A : You can bulk delete the imported record by Navigating to Admin settings> Import history> Click on "View records" Admin settings > Import history > Click on "View records."

You will be taken to the list view containing the records added via the selected import. Click on the save view as button seen on the top of the list as indicated > Save this as a separate view. Once your view is saved, you will be able to bulk select all the records present by clicking on the checkbox shown > Click on the delete button and this should clear out all the records that were created through this import.

How to update the value of the “sales owner” field via import/ The sales owner fails to get updated even though I have mapped the column in my file to the field in the CRM - how I I fix the same?

Please check and ensure that you’ve used the login email address of the User and not their username as the column value in the file you’re importing.            

Please make sure that you’ve used the right import option: You need to use the “overwrite all fields” option incase the sales owner field is prepopulated. In the case that it is empty, you can use the “update only empty fields” option 

Please check if you have any Auto-Assignment conditions setup in your account, if yes, could you please send the screenshot of the same. You can do this by navigating to Admin settings > Auto-assignment Rules and check if any rule is setup there for the contacts module.

How to update/ import records with multi select field values / I tried updating a multi select field using API and this is the format in which I entered the values, {"cf_multiselect": "A", "B", "C"}. But however, this simply removes the existing value in that field and makes it empty.

 A :  In order to update the values of a multiselect field, instead of commas, semicolons      should be used in order to separate the values you are providing.

But, there is also another important thing we need to check if there is an existing value available in that field already. 

For example, if we provide the field values as {"cf_multiselect": "A"; "B"; "C"}, it will nullify the existing values in that field even though we have used the semicolons. 

Hence the right format to be used in this case is as follows: {"cf_multiselect": ;"A"; "B"; "C"; } 

What is the right way to enter the value for the field “number of employees” / 

Account not created while mapping Accounts field in contact CSV import.

A :  In the CSV file, the "Account number of employees" field has been given a range as is usually expected from UI. However, during import or API creation of accounts, we take in an integer value and automatically assign the particular range. This is the reason the account creation isn't happening.It would be great if you could change the value given in the "Number of employees" field and try importing.  For example, instead of 1001 - 5000, please try giving 1001 or any specific number in the range.

Why are some contacts skipped during import?

Only records that are duplicates are skipped during the import process. This means that the field that is a unique identifier ( mobile/email ) is same for a contact that is already present in the system and that which is being imported. 

How to import contacts without an email address?

Emails is the default unique and mandatory field for import of contacts. If all your contacts don't have this field in place, please navigate to admin settings > Contacts and make Mobile the unique field.