Import

Import VCF to Freshsales CRM: Convert and Map Contacts Step by Step

Quick Answer

Freshsales does not accept VCF files. It only imports CSV and XLSX formats. To get VCF contacts into Freshsales: convert the VCF to CSV using a converter tool or Google Contacts, ensure the CSV has an Email column (required by Freshsales), then go to Contacts > Import > Import from CSV/XLSX. Map your CSV columns to Freshsales fields and click Import. The file must be under 5 MB.

Introduction

Freshsales (part of the Freshworks CRM suite) is a sales-focused CRM that stores contacts, accounts, deals, and activities. If you have contact data in VCF format from phones, email clients, or other CRM exports, you need to convert it before importing because Freshsales only supports CSV and XLSX file imports. The conversion process is simple, but the field mapping step requires attention because Freshsales has specific requirements for mandatory fields, data types, and duplicate handling.

This guide walks through the complete workflow: converting VCF to CSV, preparing the CSV for Freshsales requirements, importing with proper field mapping, and handling duplicates and account associations. If you are migrating from another CRM (Salesforce, Pipedrive, Zoho), Freshsales also offers a one-click migration tool that may be faster than the CSV import path.

Why Freshsales Only Accepts CSV/XLSX

Freshsales is designed around structured CRM data with typed fields (text, number, date, dropdown, multi-select). CSV and XLSX files map naturally to this structure because each column corresponds to a field and each row to a record. VCF files use a fundamentally different format: property-based, hierarchical, with multiple values per field and embedded binary data. Rather than building VCF parsing logic, Freshsales relies on CSV/XLSX which integrates directly with its field mapping and validation system.

The practical impact is one extra step: you convert VCF to CSV before importing. The core contact fields (names, emails, phones, addresses, organizations) all transfer cleanly. Fields that exist in VCF but not in standard CRM structures (embedded photos, vCard version markers, X-properties) are lost during conversion. For a comprehensive overview of VCF-to-CSV conversion, see our VCF to CSV guide.

Step 1: Convert VCF to CSV

You have three conversion options depending on your tools and preferences.

Option A: Univik vCard Converter. Open Univik vCard Converter, load your VCF file, select CSV as the output format, choose which fields to export, and run the conversion. This gives you the most control over column selection and naming, which simplifies the Freshsales field mapping step.

Option B: Google Contacts. Import the VCF file into Google Contacts (contacts.google.com > Import), then export as Google CSV (contacts.google.com > Export > Google CSV). The Google CSV format includes standard column headers (First Name, Last Name, E-mail 1, Phone 1 – Value, Organization 1 – Name) that Freshsales recognizes during auto-mapping.

Option C: Python script. For developers with large files, use the vobject library to parse VCF and write CSV programmatically. This approach allows custom column naming and data transformation during conversion.

Step 2: Prepare the CSV for Freshsales

Before importing, verify that your CSV meets Freshsales requirements.

Email column is mandatory. Freshsales requires every contact to have an email address. If your VCF contacts include people without email addresses (phone-only contacts), you have two options: add a placeholder email (like noemail-firstname-lastname@placeholder.com) or remove those contacts from the CSV before importing. Contacts without a mapped Email field will fail to import.

File size under 5 MB. If your CSV exceeds 5 MB, split it into smaller files. A CSV with 5,000 contacts and standard fields (no photos) is typically 500 KB to 2 MB, well under the limit.

Column headers matter. Freshsales auto-maps columns based on header names. Using standard headers like “First Name”, “Last Name”, “Email”, “Mobile Phone”, “Work Phone”, “Company”, and “Job Title” reduces manual mapping. If your headers differ (like “FN” or “TEL”), rename them in Excel or Google Sheets before importing.

Date format consistency. If your CSV includes birthday or date fields, ensure they match the date format configured in your Freshsales instance (DD/MM/YYYY, MM/DD/YYYY, or YYYY/MM/DD). Check your CRM date format at Admin Settings > CRM Settings > Date format.

Multi-select fields. If any field should map to a multi-select dropdown in Freshsales, separate the values with semicolons in the CSV. For example, a “Tags” column should contain VIP;Enterprise;Q1-Lead rather than comma-separated values.

Step 3: Import CSV into Freshsales

Log into your Freshsales account. Navigate to Contacts in the left sidebar. Click the Import button and select Import from CSV/XLSX. Choose whether to import Contacts only or Contacts with Accounts (more on this in the accounts section below). Click Next.

Upload your CSV file by browsing or dragging it into the upload area. Freshsales reads the file and displays a preview with the detected columns. Verify the preview looks correct (no garbled characters, columns aligned properly). Click Next to proceed to field mapping.

Step 4: Map CSV Columns to Freshsales Fields

The field mapping screen shows each CSV column header alongside a dropdown of Freshsales fields. Freshsales auto-maps columns with matching header names. Review every mapping and adjust any that are incorrect or unmapped.

CSV Column (from VCF) Freshsales Field Required?
First Name First Name No
Last Name Last Name Yes
Email Email Yes
Mobile Phone Mobile Number No
Work Phone Work Number No
Company Company Name / Account Name No (Yes if importing with accounts)
Job Title Job Title No
Address Address / City / State / Zip Code No
Notes Description No
Birthday Custom Date field No

If your CSV has columns that do not match any default Freshsales field, you can create custom fields directly from the mapping screen. Click “Create custom field” next to the unmapped column, choose the field type (text, number, date, dropdown), and the new field becomes available for mapping immediately. After mapping, specify your CSV’s date format and click Import.

Handling Duplicates During Import

Freshsales offers three import modes that control how duplicates are handled.

Create new records only. All rows in the CSV are imported as new contacts regardless of whether matching records already exist. This can create duplicates if you re-import the same file or import contacts that already exist in the CRM. Use this mode only for first-time imports into an empty CRM.

Create new and update existing. Freshsales checks each row against existing records using a unique identifier field (Email, Work Number, or Mobile Number). If a match is found, the existing record is updated with the CSV data. If no match is found, a new record is created. This is the safest mode for ongoing imports.

Update existing only. Only records that match an existing contact are updated. No new records are created. Use this mode when you want to enrich existing CRM data with additional fields from a VCF export without adding new contacts.

You can also check “Skip duplicate contacts” to prevent any updates to existing records. This imports only contacts that do not match any existing record based on the unique identifier.

Importing Contacts with Accounts

Freshsales organizes contacts under accounts (companies). If your CSV includes a company name column, you can import contacts and accounts together. During the import setup, select “Import Contacts with Accounts”. Freshsales creates account records for each unique company name and links the contacts to their respective accounts.

If an account with the same name already exists in Freshsales, the imported contacts are associated with the existing account rather than creating a duplicate. This automatic association is based on exact name matching, so “Acme Inc” and “Acme Inc.” (with a period) are treated as different accounts. Standardize company names in your CSV before importing to avoid creating duplicate accounts.

Common Problems and Fixes

1

Import fails with “invalid email address” errors. Freshsales validates email formats strictly. Addresses like john@company (missing TLD) or entries with spaces are rejected. Open the CSV in Excel, filter the Email column for empty or malformed entries, fix them, and re-import. The error log email from Freshsales lists the specific rows that failed.

2

Date fields import incorrectly or show as blank. The date format in the CSV does not match the format configured in Freshsales. Check Admin Settings > CRM Settings > Date format. If your CRM uses DD/MM/YYYY but the CSV has MM/DD/YYYY, dates like 03/04/2025 will be interpreted as April 3rd instead of March 4th. Match the CSV format to the CRM format or change the CRM setting before importing.

3

Phone numbers lose formatting or leading zeros. If the CSV was edited in Excel, phone numbers may have been converted to scientific notation (1.42E+10) or stripped of leading zeros. To prevent this, format phone columns as “Text” in Excel before editing. Alternatively, prefix phone numbers with an apostrophe in the CSV to force text treatment.

4

Sales Owner field not mapping correctly. Freshsales requires the Sales Owner column to contain the user’s login email address, not their display name. If your CSV has “John Smith” in the Owner column instead of “john.smith@company.com”, the field will not map. Replace display names with login email addresses.

Frequently Asked Questions

Can Freshsales import VCF files directly?

No. Freshsales only accepts CSV and XLSX files for contact import. You must convert your VCF file to CSV before importing. The conversion can be done with a converter tool, Google Contacts (import VCF, export as CSV), or a Python script.

What is the maximum file size for Freshsales import?

The CSV/XLSX file must be under 5 MB. If your file exceeds this limit, split it into smaller files with fewer contacts per file. A typical CSV with 5,000 contacts and standard fields (no embedded data) is 500 KB to 2 MB.

Can I import contacts without email addresses?

No. Freshsales requires the Email field to be mapped for import to succeed. Contacts without email addresses must either have a placeholder email added or be excluded from the import file. This is a hard requirement that cannot be bypassed.

How do I assign imported contacts to specific sales owners?

Add a column called “Owner” to your CSV with the login email address of each sales owner. Map this column to the Owner field during import. Freshsales assigns each contact to the specified owner. You can also use Freshsales auto-assignment rules (Admin Settings > Auto-assignment Rules) to distribute contacts automatically based on criteria like territory or lead score.

Does Freshsales support importing contact photos?

No. The CSV/XLSX import does not support contact photos. Freshsales contact photos must be uploaded individually through the contact detail page or pulled from integrated services. Photos embedded in the original VCF file are lost during VCF-to-CSV conversion.

Conclusion

Last verified: February 2026. Import workflow tested on Freshsales (Freshworks CRM Suite) Growth and Pro plans. CSV import tested with files containing 50 to 5,000 contacts. Field mapping, duplicate handling, and contact-account association tested per Freshworks documentation at crmsupport.freshworks.com.

Importing VCF contacts into Freshsales requires a four-step process: convert VCF to CSV, prepare the CSV to meet Freshsales requirements (Email column mandatory, file under 5 MB, correct date format), import via Contacts > Import > CSV/XLSX, and map columns to Freshsales fields. Use the “Create new and update existing” import mode for the safest duplicate handling. If your contacts include company information, import contacts with accounts in a single operation to automatically create and link account records.

Three things to check before importing: every contact has an email address (Freshsales rejects rows without one), date formats match your CRM settings (Admin > CRM Settings), and company names are standardized (to avoid duplicate accounts). Get these right and the import runs cleanly on the first attempt.

About the Author

This guide is written and maintained by the Univik team, developers of file conversion and digital forensics tools since 2013. We build VCF-to-CSV conversion workflows for CRM migration projects and have tested the import process across Freshsales, Salesforce, HubSpot, and Zoho CRM. Questions about converting VCF files for Freshsales? Contact our team.