ActiveCampaignActiveCampaignFreshsales ContactsFreshsales Contacts11 fields

How to import ActiveCampaign data into Freshsales

Move your ActiveCampaign contacts into Freshsales. This template maps name, email, phone, company, title, and the full mailing address to Freshsales's snake_case contact fields. Freshsales splits phone numbers into Work and Mobile; ActiveCampaign only exports one phone column, so we map it to Work by default.

Try it freeNo credit card needed

Field-by-field mapping

This is the complete column mapping from ActiveCampaign to Freshsales. The left column is the header in your CSV export. The right column is the Freshsales field it should map to.

Before you start

This template's destination has a required field that needs attention before upload. You can still use this template. The steps below tell you what to add and where.

  • Last Namelast_name

    Freshsales requires Last Name on every contact. ActiveCampaign exports ship a Last Name column whenever the field was collected on the signup form; older lists may have it blank if the form never asked.

    What to do. Scan your CSV for blank Last Name rows before uploading. Fill them by hand from the email signature where possible, or remove those rows.

ActiveCampaignActiveCampaign columnFreshsales ContactsFreshsales field
First NameFirst Namefirst_name
Last NameLast Name*last_name
EmailEmailemail

TransformLowercased and trimmed

PhoneWork Numberwork_number

Freshsales splits phone into Work and Mobile. ActiveCampaign only exports one phone column, so we map it to Work by default.

TransformStandardized to international format (+1, +44, etc.)

OrganizationCompany Namecompany_name
Job TitleJob Titlejob_title
Mailing Address 1Addressaddress
Mailing CityCitycity
Mailing StateStatestate
Mailing ZipZip Codezipcode
Mailing CountryCountrycountry

Required by Freshsales.

Columns we don't use

Your ActiveCampaign export includes 3 columns this template doesn't map. Each one below explains why, plus the workaround if you want the data in Freshsales.

Tags

ActiveCampaign tags export as a comma-separated string. Freshsales uses custom fields or lifecycle stages instead of free-form tags.

If you need it. Add a custom multi-select field on the Freshsales Contact called Tags, or build saved filters in Freshsales after import to segment by ActiveCampaign tag values.

Status

ActiveCampaign tracks subscriber status (Active, Unsubscribed, Bounced). Freshsales contacts don't have a default subscriber-status field.

If you need it. Filter Unsubscribed and Bounced rows out of the CSV before upload, or add a custom single-select field on the Freshsales Contact to track status.

Date Unsubscribed

Freshsales doesn't have a default unsubscribe-date field on contacts.

If you need it. Add a custom date field on the Freshsales Contact called Date Unsubscribed, then re-run this template to map it.

Formatting and cleanup

ActiveCampaign exports rarely match the format Freshsales expects. Fix these before you import.

  1. 1.Lowercases and trims email addresses
  2. 2.Standardizes phone numbers to international format (+1, +44, etc.)
  3. 3.Renames ActiveCampaign columns to Freshsales's snake_case API names
  4. 4.Maps Phone to Freshsales's work_number field by default
  5. 5.Maps ActiveCampaign's Mailing address block to Freshsales's address, city, state, zipcode, country fields

Or skip the manual work

Operelio runs this cleanup and mapping for you. Upload your ActiveCampaign export and download a clean, import-ready file for Freshsales.

Try it free

ActiveCampaign to Freshsales FAQ

How do I export contacts from ActiveCampaign?

In ActiveCampaign, go to Contacts, select the segment you want, click Export, and choose CSV.

Why does Phone go to work_number?

Freshsales splits phone numbers into Work and Mobile. ActiveCampaign only exports one phone column without labeling it. We default to work_number; remap to mobile_number after upload if your ActiveCampaign phones are consistently mobile numbers.

What about unsubscribed contacts?

Filter rows where Status is 'Unsubscribed' or 'Bounced' before upload to avoid importing contacts who've opted out.

Will this create duplicate contacts in Freshsales?

Freshsales uses email as the unique identifier on contacts. Contacts with matching emails update the existing record. New emails create new contacts.

What about ActiveCampaign automations and lists?

This template handles contact attributes only. Automation history and list membership don't carry over to Freshsales by default. They require separate exports and custom field mapping.