Free plan, no card required

Format your CSV for HubSpot or Salesforce

Upload a file, pick a CRM, and Operelio maps your columns for you. Direct push to HubSpot, Salesforce, and Pipedrive.

No credit card required.

The CRM Formatter in Operelio ready to push: 2,299 new contacts to create and 5 to update, with fill-blank-only selected so existing values stay put.

Format for 8 major CRMs, direct push to 3

HubSpot
HubSpotPush
Salesforce
SalesforcePush
Pipedrive
PipedrivePush
Zoho CRMZoho CRM
Monday.comMonday.com
FreshsalesFreshsales
CloseClose
CopperCopper

Not on the list? Use the built-in Generic format or build your own custom template with any field names and types.

Features

Map, clean, validate, push.

Map

Auto column mapping

Upload a file and Operelio reads your headers, then matches them to the right CRM fields. Handles variations like "First Name", "first_name", "fname", and "given_name" with little or no manual work for well-named columns.

168 source-to-CRM templates

Pre-built mappings for every major source platform (LinkedIn, Mailchimp, Shopify, ActiveCampaign, Constant Contact, and more) plus CRM-to-CRM migrations. Pick a template, upload, go.

Merge fields

Combine multiple source columns into one target field with a separator you pick. Where a CRM has a single Name field, the mapping screen offers First and Last Name combined as one column, so both halves reach the CRM.

Clean

Each rule is toggleable. Defaults are sensible; override any that don’t fit.

Email & phone standardization

Emails are lowercased and trimmed to match CRM format requirements. Phone numbers are stripped of brackets, dashes, dots, and spaces while keeping the leading + for international codes.

Name splitting & casing

"John Smith" in a single column becomes separate first and last name fields, and separate columns combine back into one Name for a CRM that has only one. Handles "Smith, John" and multi-word names. Names are title-cased. Abbreviations like CEO, VP, and LLC stay uppercase.

Country normalization

"UK", "GB", "Great Britain", and "england" all become "United Kingdom". Covers 80 countries with their abbreviations, ISO codes, and common misspellings.

Validate

The pre-push report

Before a single record is written you get four numbers that add up to your row count: contacts to create, existing contacts to update, rows skipped, and rows your CRM will refuse. Every skip gives its reason. Nothing is sent until you confirm.

Values your CRM won't take

Matching on email tells you nothing about whether the values are acceptable. The report checks them against your own account: a picklist entry that isn't on the list, text longer than the field allows, a field your account doesn't have or your user can't write to. Each one with a row count and an example.

Deduplication

Duplicate rows are detected by email address (or full-row match if no email column) and removed before export. On a push, a row also matches a HubSpot contact's other email addresses, the ones a merge left behind, so it updates that contact rather than making a second one. Near matches on name and company are flagged for you to look at, never merged for you.

Do Not Contact exclusion

On a paid plan your Do Not Contact list is applied before the file goes out and before a push, so suppressed people are held back and written to their own file you can check. Block by email, phone, domain, company or country. Costs no credits.

Format checks & error flagging

Every row is checked first. Emails missing an @ sign, required fields left blank, and phone fields without digits are flagged. You review everything before it touches your CRM.

Required-field warnings

If a required CRM field has no source mapping or is blank in any row, Operelio flags it before you go anywhere near an import. You see exactly which rows need attention.

Push

Direct CRM push

Starter

Connect HubSpot, Salesforce, or Pipedrive and write records straight from Operelio, with no CSV upload. Rows are matched on email: a match updates the record, anything else creates one. Turn either half off if you only want one of them.

Your CRM data stays put

Starter

An update fills blank fields only unless you choose to overwrite, so a push never writes over a value you already have. On Pipedrive a person's other email addresses and phone numbers keep their labels and stay where they are, with your file's value set as the primary one.

Owners, notes, and companies

Starter

Assign everyone in the push to one rep, or take the owner from a column in your file. A notes column becomes a note on the record in HubSpot and Pipedrive, on records the push creates. A company column finds or creates the Pipedrive organization, or the Salesforce account a contact has to be linked to.

Files big enough to migrate on

Starter

A push carries up to 50,000 rows. It is split into batches and resumed for you, and the count climbs on screen while it runs. Every row comes back with the record ID your CRM gave it, so the import can be audited afterwards.

Saved mappings

Starter

Save your column mapping, cleanup settings, and merge field config together. Next time you get a file from the same source, load the mapping and run it without re-mapping for typical files. Up to 25 on Starter, 150 on Pro, 300 on Agency.

Custom CRM templates

Starter

Define fields, types, and required flags. Email and phone fields are cleaned and validated; other types are stored as you enter them. Up to 5 on Starter, 25 on Pro, 75 on Agency.

How to use it

Four steps from file to CRM

1

Upload your file

Drag and drop any CSV or Excel file. For a workbook with several tabs, the first tab is used. Operelio reads the column headers for you.

contacts_export.csv

9 columns detected

Auto-detected headers
5,875 rows9 cols
2

Pick your target CRM

Choose one of eight CRM platforms and map columns yourself, use a Quick Import template if your file comes from LinkedIn, Mailchimp, Shopify, or another known source, or define your own custom template. Templates are a shortcut, not a requirement.

Quick Import

LinkedIn ConnectionsSalesforce Leads6 fields
LinkedIn Sales NavHubSpot Contacts6 fields
Shopify CustomersPipedrive Contacts5 fields
3

Review mappings and toggle cleanup

Click any row to change a mapping. Toggle cleanup options on the right. Each one is explained in the column mapping guide.

Your DataCRM Field
Last Name
Last NameText
First Name
First NameText
Email Address
Email
Phone
PhonePhone
Job Title
TitleText
Auto-map9 of 51 fields mapped
4

Export or push to CRM

Get a file your CRM will accept on first import. Or connect HubSpot, Salesforce, or Pipedrive and push records directly without downloading anything. Read the report first: it says how many contacts will be created, how many updated, and what your CRM will refuse. Every pushed record comes back with the ID your CRM gave it, logged in your job results so you can audit the import.

Download CSV
5,875 rows
or push directly
HubSpot
Salesforce
Pipedrive
5,712 to create · 158 to update · 5 skipped

5,875 rows in this file, all accounted for.

The alternative

Doing it yourself

This is what a CRM import looks like without Operelio.

The Manual Way

1Export your data from the source (LinkedIn, Mailchimp, Shopify, event platform, internal system)
2Open in Excel and figure out which columns map to which CRM fields
3Rename each column header to match your CRM's required field names exactly
4Check every email address for valid format, fix or remove bad ones
5Standardize phone numbers: strip brackets, dashes, add country code
6Split full name columns into first and last name using Text to Columns or formulas
7Remove duplicate rows by sorting and scanning manually
8Fix country values ("UK" vs "United Kingdom" vs "GB")
9Save as CSV, upload to your CRM, wait for validation errors, fix, and re-upload

2-3 hours per import

Repetitive. Error-prone. Someone still has to redo it when the CRM rejects half the rows.

With CRM Formatter

1Upload your file to Operelio
2Pick a template (e.g. LinkedIn Sales Nav → HubSpot Contacts) or select a CRM format
3Review auto-detected column mappings, adjust any if needed
4Toggle cleanup: name splitting, phone standardization, country normalization, dedup
5Read the report: what will be created, what will be updated, what your CRM will refuse
6Download CRM-ready CSV or push directly to HubSpot, Salesforce, or Pipedrive

A few minutes per typical import

Save the mapping and next time a typical run takes seconds. Anyone on the team can run it.

Pricing

Free to start. Starter, Pro, and Agency add the full toolkit.

Free plan: every CRM format and object type, up to 2,000 rows, 5 jobs per month, CSV download. Starter from $39/month, Pro from $99/month, or Agency from $299/month: direct push to HubSpot, Salesforce, or Pipedrive, saved mappings, custom templates, bigger files, and more jobs.

FAQ

Common questions

Does the CRM Formatter work with my CRM?

There are built-in formats for eight CRMs: HubSpot, Salesforce, Pipedrive, Zoho CRM, Monday.com, Freshsales, Close, and Copper, on every plan including Free. For anything else, pick the Generic format or build a fully custom template with your own field names and types. Direct push covers HubSpot contacts and companies, Salesforce contacts, leads and accounts and Pipedrive people and organizations. For the other five CRMs you download a formatted CSV and import.

I have a LinkedIn export. Can I just upload it?

Yes. Pick the Quick Import template for your source (LinkedIn Sales Nav, LinkedIn Connections, Apollo, ZoomInfo, Cognism, Lusha, Mailchimp, Shopify, Google Contacts, Outlook, Stripe, WooCommerce, ActiveCampaign, Constant Contact, Squarespace, Wix, Eventbrite, Calendly, Typeform, Intercom, and more), choose your target CRM, and the columns map across. 168 templates are available.

Do I have to map every column myself?

No. Operelio reads your column headers and auto-matches them to CRM fields. It handles common variations like "First Name", "first_name", and "fname". You can adjust any mapping it gets wrong, but most files need little or no manual work.

Can I push records straight into my CRM?

Direct push is available for HubSpot, Salesforce, and Pipedrive on Starter, Pro, and Agency plans. Connect your account, run the formatter, and push without downloading a file, for people or companies: HubSpot contacts and companies, Salesforce contacts, leads and accounts and Pipedrive people and organizations. A push matches every row against the CRM (people are matched on email address, companies on website or name): a row that matches an existing record updates it, a row that doesn't creates a new one, and you can switch either half off. Updating fills blank fields only unless you ask for an overwrite, so a push never writes over a value your CRM already holds. One push carries up to 50,000 rows, split into batches and resumed for you, with a running count on screen. For the other five platforms, you download a formatted CSV and import through your CRM.

Will I know what the push is going to do before it runs?

Yes, that is what the pre-push report is for. Before anything is written you get four numbers that add up to your row count: contacts to create, existing contacts to update, rows skipped, and rows your CRM will refuse. Every skip gives its reason, whether that is a blank email, the same address on an earlier row, or nothing left to fill. The report also names values the CRM won't accept before it is asked, such as a picklist entry that isn't on the list or text longer than the field allows, with the number of rows affected and an example. Nothing reaches your CRM until you confirm.

What does it do to clean up my data?

Emails are lowercased and trimmed. Phone numbers are stripped of brackets, dashes, dots, and spaces (leading + is kept). Names are title-cased and split into first/last, or combined into one Name field for a CRM like Pipedrive that has only one. Comma format ('Smith, John') is handled, and abbreviations like CEO, VP, and LLC stay uppercase. Duplicates are removed by email, or by a full row match when there is no email column. Country values are normalized covering 80 countries. You can toggle each option on or off.

Can I reuse the same setup for repeat imports?

Yes. Save your column mappings, cleanup settings, and merge field config together. Next time you get a file from the same source, load the saved mapping and run it without re-mapping for typical files. Starter plans support up to 25 saved mappings, Pro plans up to 150, and Agency plans up to 300.

What does the free plan include?

Free includes every CRM format and every object type (contacts, companies, leads, accounts, organizations), up to 2,000 rows and 5 jobs per month, with CSV download. Starter ($39/month), Pro ($99/month), and Agency ($299/month) add direct CRM push, saved mappings, custom templates, bigger files, and more jobs.

What happens if my file has bad data?

Rows with problems are flagged as warnings: emails missing an @ sign, blank required fields, phone fields without digits. On a push you also see what your CRM itself will refuse, so a row that was never going to land is counted as blocked instead of promised as a contact. Skipped and blocked are kept apart, because what you would do about each is different. You review everything before downloading or pushing, and nothing is dropped without saying so.

My source has separate first and last name columns but my CRM wants one name field. Can it handle that?

Yes. Merge fields combine multiple source columns into one target field with a separator you choose. Many of the built-in templates already include merge field configs, so this often needs no extra setup.

Is my data secure?

Files are encrypted in transit and at rest, and deleted after the retention window for your plan: 24 hours on Free, 30 days on Starter and Pro, 90 days on Agency, unless you star them. You can delete files manually at any time. OAuth connections never give Operelio your CRM password. Read the full security policy

Stop renaming columns.
Start pushing data.

Free plan, no card required. Starter, Pro, and Agency add direct push from $39/month.