CSV Column Mapping Tool — Map Your CSV Fields to Any Format
Table of Contents
Your CSV has "fname" but your CRM expects "First Name". Your export has "phone_number" but the import template wants "Phone". Your e-commerce feed has "item_description" but the platform wants "product_description".
This is CSV field mapping — taking the column structure you have and transforming it into the column structure you need. It is one of the most common data tasks in sales, marketing, and operations, and it almost always comes up when moving data between systems.
The CSV Column Mapper is built specifically for this. You load your file, see your current columns, and visually map them to the target schema — rename headers, reorder columns, split combined fields, merge separate fields — then download the remapped file.
What CSV Field Mapping Is — and Why It Matters
Every system that accepts CSV imports has an expected schema: specific column names, a specific order, sometimes specific data formats. When your source data does not match that schema, the import fails or maps to the wrong fields.
Field mapping is the transformation step between your source CSV and the target schema. It involves:
- Renaming columns — changing "fname" to "First Name" so the import recognizes the field
- Reordering columns — some tools expect a specific column order even if they match by header
- Splitting fields — breaking "Full Name" into separate first/last columns that the target schema requires
- Merging fields — combining "Street" + "City" + "State" into a single address field if the target only has one address column
- Removing columns — dropping fields the target system does not accept, which can cause import errors
Once you've mapped a CSV to a particular schema once, the mapping is repeatable — same process, same output every time.
How the Tool Handles the Full Mapping Workflow
Open the CSV Column Mapper and load your source CSV. The tool displays every column with its original header on the left and an editable rename field on the right.
The visual workflow:
- Rename headers by typing new names in the rename fields. Change "fname" to "First Name", "email_address" to "Email", "ph" to "Phone" — whatever your target schema expects.
- Reorder columns by dragging them up or down using the grab handles on the left side of each row.
- Split a column if your source has a combined field (Full Name, combined address) that the target expects separated. Use the Actions bar, select "Split column", set your delimiter.
- Merge columns if your source has separate fields that the target expects combined.
- Delete columns that the target schema does not accept — click the delete button on each unwanted column.
When you are done, click Preview to verify the first 10 rows look correct. Then download the remapped CSV. The data values are untouched — only the structure changes.
Mapping to Common Import Formats
Different platforms have different column name conventions. Here are the most common ones and what to rename your columns to:
HubSpot contacts import: "First Name", "Last Name", "Email Address", "Phone Number", "Company Name", "Lifecycle Stage". Note the spaces and capitalization — HubSpot is flexible with header names but using the standard names avoids mapping mismatches.
Salesforce leads: "First Name", "Last Name", "Email", "Phone", "Company", "Lead Source". Salesforce's mapping UI lets you match any column to any field, but giving the CSV the exact field API names (no spaces, like "FirstName") skips the manual mapping step entirely.
Mailchimp audience import: "Email Address", "First Name", "Last Name", and any custom merge tags your list uses. The required column is "Email Address" — your other column names map to merge tags during import, but renaming them to match your merge tag names speeds up the process.
Google Contacts: "Given Name", "Family Name", "E-mail Address", "Phone 1 - Value", "Company". The exact column names are covered in the dedicated Google Contacts import guide.
Sell Custom Apparel — We Handle Printing & Free ShippingMapping Product and Inventory CSVs
E-commerce platforms have stricter field requirements because product data is more structured. Shopify, WooCommerce, Etsy, and Amazon each have specific import schemas.
Shopify product CSV: Requires "Handle", "Title", "Body (HTML)", "Vendor", "Type", "Tags", "Published", "Variant Price", and several other variant columns. If your supplier sends product data in a different format, you need to rename every column to match Shopify's expected headers exactly.
WooCommerce: Expects "SKU", "Name", "Regular price", "Categories", "Description", "Short description", "Images". Your supplier might call these "product_code", "product_name", "price", "category" — each one needs renaming.
For product feeds, column splitting is also common. A supplier might combine variant info like "Color | Size" in one column — you'd split that by " | " into separate color and size columns. Or they might use a compound SKU like "BRAND-COLOR-SIZE" that you need to break apart.
After remapping, run the result through this checklist for e-commerce CSVs before importing.
Reusing the Same Mapping for Recurring Exports
If you do the same CSV transformation regularly — weekly CRM exports, monthly inventory syncs, recurring lead imports — the mapping is the same every time. The column names in your source file do not change between exports.
The fastest approach for repeated mappings: keep a copy of your already-mapped CSV as a reference. When a new export comes in, open it in the mapper, apply the same rename operations (it takes about two minutes once you know the mapping), and download the result.
For higher-volume or automated workflows, a scripted approach is more efficient. Python's pandas can apply a column rename dict in one line and process files automatically. But for manual exports and one-off transformations, the browser tool is faster than maintaining a script.
One practical tip: document your field mapping somewhere simple — a sticky note or a shared doc with two columns: "Source Header" and "Target Header". When your source system changes column names (it happens), you update the mapping doc and apply it. Takes 90 seconds to update.
When You Need Something More Powerful
The CSV Column Mapper handles rename, reorder, split, merge, and delete. It does not do:
- Value transformation — changing "United States" to "US", or reformatting dates from MM/DD/YYYY to YYYY-MM-DD. You need find-replace, regex, or a script for that.
- Conditional mapping — "if column A equals X, map it to column B; otherwise map it to column C". That requires code.
- Lookups — replacing IDs with names from a reference table. Needs a VLOOKUP or a database join.
- Multi-file merges — combining two CSVs side by side. Use the CSV Merger for that.
For pure structural transformation — where the data values stay the same and only the column structure changes — the browser tool covers all the cases. For transformations that involve changing the data itself, you need Excel formulas, Python, or a dedicated ETL tool.
Try It Free — No Signup Required
Runs 100% in your browser. No data is collected, stored, or sent anywhere.
Open CSV Column MapperFrequently Asked Questions
Does this tool work for mapping CSV columns to a database schema?
It handles the structural part — renaming columns to match database field names, reordering them, splitting combined fields. It does not convert data types or validate values against a schema. For a SQL import, you still need to ensure data types are compatible, but the column header mapping it handles cleanly.
Can I save my column mapping to reuse later?
The tool does not save mappings between sessions. Your data never touches a server. For recurring mappings, keep a reference doc with source-to-target column name pairs and re-apply them manually each time — it is fast once you have done it once.
What happens to columns I do not rename?
They keep their original header names. Only the columns you explicitly rename get new names. If your source has 20 columns and you only rename 5, the other 15 appear in the output with their original headers.
Can this tool handle TSV files (tab-separated)?
Yes. The file input accepts .csv, .tsv, and .txt files. Tab-separated files are parsed automatically. Paste area also handles tab-separated data.

