Who this helps: Solo founders who decided the spreadsheet has to go, picked a CRM (or are about to), and want the move to take one evening instead of three weekends of cleanup inside the new tool.
Short answer: Clean the sheet before you import, not after. Give every row one person with an email, collapse your stages to the exact names you will use in the CRM, turn every “next step” into a real date, delete duplicates and dead leads, and leave out anyone you do not have permission to contact. Then import 10 rows as a test, check them by hand, and only then import the rest. About 45 minutes of prep for a few hundred rows beats hours of merging duplicates later.
If you are still deciding whether to switch at all, start with spreadsheet vs CRM for solo founders. It ends with a short migration list. This post is the detailed version of the “clean before you import” step — what to fix, column by column, and what HubSpot’s free CRM, Pipedrive, and Capsule each expect in the file.
Why you clean in the sheet, not in the CRM
A spreadsheet forgives mess. A CRM multiplies it. Two rows for the same person become two contacts. Ten spellings of “Proposal” become ten problems: the import rejects them, or you spend an evening re-tagging records one by one.
Fixing data in a sheet is fast. You can sort, filter, find-and-replace, and delete 40 rows in a minute. Fixing the same mess inside a CRM usually means opening records one at a time.
There is also a practical limit on undo. HubSpot lets you delete records an import created, but its own docs say updates to existing records cannot be reversed by deleting — you fix them with another import or by hand. Capsule’s undo removes only brand-new contacts from the last import, not changes to existing ones. Pipedrive lets a global admin revert an import from the import history tab within 48 hours. Translation: the cleaner the first file, the less you depend on undo.
The 45-minute clean-up checklist
Work on a copy. Name it something like “leads-import-2026-10-16.” Keep the original sheet untouched as your backup.
- Freeze the original. Stop editing the live sheet until the import is done. New leads that arrive tonight go on a sticky note or straight into the CRM later.
- One sheet, one tab, one header row. HubSpot and Pipedrive both require one sheet or tab per import with column names in the first row. Capsule maps your columns by name too. Delete summary rows, totals, merged cells, and colored “section” rows.
- Decide what a row is. Usually: one person, plus the deal you are working on with them. If one company has three contacts, that is three rows with the same company name.
- Split names. Make First name and Last name separate columns. Every CRM maps these cleanly. “Sarah from Acme (maybe)” does not.
- Check every email. Remove spaces, fix obvious typos, and make sure each one contains an @. Capsule lists an invalid email address as a reason rows fail. In HubSpot, email is the required field for contacts and the main way it avoids duplicate contacts.
- Remove duplicates. Sort by email, then by company. Merge rows that are the same person: keep the newest stage and the most useful note, delete the rest.
- Archive dead leads. No reply in 90+ days and no next step? Move them to a separate “archive” tab you will not import. You can import them later if you ever need them. Most solo founders never do.
- Drop anyone you cannot contact. Scraped or purchased lists stay out. HubSpot asks you to confirm during import that your contacts expect to hear from you and that the file is not a purchased list.
- Standardize stages. Collapse every stage value to the 4–6 names you will use in the CRM. Same spelling, same capitalization. If your stages are still fuzzy, set them first with simple sales pipeline stages.
- Turn “next step” into a date. Every open deal gets one next step in plain words and one real calendar date. Use one date format for the whole column, such as yyyy-mm-dd.
- Clean amounts. Numbers only. No “$2k?”, no “TBD.” Leave the cell blank if you truly do not know.
- Format phone numbers once. Pick one format. HubSpot’s docs suggest +[country code][number] so it can format numbers by country.
- Trim the notes. One or two lines of context per row. Not your whole email thread. Long histories belong in the inbox or a later, deliberate import.
- Save as CSV (UTF-8). All three tools accept CSV and Excel files. UTF-8 matters if names include accents or non-English characters — Capsule assumes UTF-8 for CSVs, and HubSpot asks for UTF-8 when the file has foreign-language characters.
If you only have 30 minutes, do steps 2, 5, 6, 9, and 10. Those cause most of the pain.
Column by column: what to fix before export
| Column | Common mess | Fix before import |
|---|---|---|
| Name | Full name in one cell, nicknames, notes in the name | Split into First name / Last name; move notes to Notes |
| Blanks, typos, two emails in one cell | One primary email per row; extra emails in their own column or dropped | |
| Company | “Acme”, “Acme Inc.”, “ACME” on different rows | One spelling per company so records link to one organization |
| Stage | Free text, emojis, “maybe later” | Exact CRM stage names only; “maybe later” becomes Lost or archive |
| Next step + date | “Soon”, “after summer”, mixed date formats | One action + one date in a single format |
| Value | Ranges, currency symbols, “TBD” | One plain number or blank |
| Source | Twenty slight variations | 4–6 fixed values: referral, inbound form, outbound, social, event |
| Notes | Pasted email threads | One or two lines, newest first |
Two fixes matter most: one email per row and one stage vocabulary. Get those right and the import is mostly mapping clicks.
What each CRM expects in the file (checked October 16, 2026)
Import rules change. These come from each vendor’s own help docs as of today. Check the linked pages before you import.
| Item | HubSpot (free tools) | Pipedrive | Capsule |
|---|---|---|---|
| File types | .csv, .xlsx, .xls; one sheet; header row | XLS, XLSX, CSV; one tab per import; header row | CSV or Excel |
| Size limits | Files up to 20 MB; up to 50 imports and 500,000 rows per rolling 24 hours | Up to 200,000 rows; file under 50 MB | Not stated on the import page |
| Minimum for a person | Email (first and last name recommended) | Name, or first and last name | First and/or last name on the row |
| Minimum for a deal | Deal name, Pipeline, and Deal stage that match existing options | A linked person or organization | Separate opportunity import: name, primary contact, and Pipeline + Milestone that match exactly |
| Duplicates | Matches on Record ID, Email (contacts), or Company domain name (companies) | Choose how to handle duplicates; option to merge | Import anyway, ignore, or import and update duplicates |
| Failed rows | Error file and rows-with-errors view | Downloadable skip file with reasons | “Unhandled” file with a Reason column |
| Undo | Delete records an import created; updates are not reversed | Global admin can revert within 48 hours | Bulk-delete new contacts from the last import; updates not undone |
A few details worth knowing before you click Import:
- HubSpot: blank cells are ignored, so a blank does not clear an existing value. Dropdown-style properties must match the option label or internal value. If you create deals in the same import, your pipeline and stage names must already exist. Sources: format import files, import records for multiple objects, view past imports.
- Pipedrive: all data in one row is linked, so a row with a person, an organization, and a deal value creates and connects all three. If you leave deal titles out, Pipedrive generates them from the person or organization name. Create custom fields before importing if your columns do not match default fields. Source: importing data with spreadsheets.
- Capsule: a row with a first or last name becomes a person; an Organization column links them to a company. Organization-only details need their own row with the name columns blank. Custom date fields accept a fixed list of formats (for example yyyy-mm-dd or dd/mm/yyyy). Imported notes only attach to brand-new contacts. Opportunities go in a separate import, and Lost reasons must already exist in settings and match exactly. Sources: importing contacts, importing opportunities.
Still choosing between these three? The side-by-side at HubSpot Free vs Capsule vs Pipedrive covers the tradeoffs. It is education only — we do not have affiliate links for any of them on that page or this one.
Run a 10-row test import first
Do not import 600 rows on the first try. Copy 10 rows into a new file. Pick messy ones on purpose: a person with no company, a company with two contacts, a deal in each stage, a row with accented characters.
- Import the 10 rows.
- Open three of the new records by hand. Check name, email, company link, stage, next step date, and amount.
- Download the error, skip, or unhandled file if the tool gives you one. Read the reason column.
- Fix the pattern in the full sheet — not just those rows.
- Remove the 10 test records (delete them, or revert the import in Pipedrive), then import the full file.
This costs about ten minutes. It catches the big ones: dates read as month-first instead of day-first, stage names that do not match, and companies splitting into duplicates.
Map columns on paper before you click
Write a two-column list: your sheet column on the left, the CRM field on the right. Mark anything without a home.
- Has a default field: first name, last name, email, phone, company, deal amount, close date, stage. Map these directly.
- Needs a custom field: lead source (if the CRM does not already have one you like), a reopen date, a qualification answer. Create these before the import, or during mapping where the tool allows it.
- Does not need to move: “color,” “row number,” “last edited by,” old formulas. Leave them out.
Keep custom fields to a handful. Every field you add is one you have to fill on every new lead forever. The CRM habits before paid hubs guide explains why less structure usually wins for a solo founder.
The first week after import
The import is not the finish line. The first weekly review is.
- Day 1: Open the deal board. Every open deal should show a stage and a next step date. Fix the ones that do not.
- Day 2–3: Put every new lead straight into the CRM. Not the old sheet. Two sources of truth is how you lose follow-ups.
- Day 7: Run your first weekly pipeline review. If it takes much longer than 20 minutes, you imported too many zombie deals. Mark them Lost and move on.
- Day 30: Archive the old spreadsheet as read-only. Keep it as a backup. Stop opening it.
Mistakes that make a CRM messy on day one
- Importing everything “just in case.” Old contacts with no next step clutter every view. Leave them in the archive tab.
- Redesigning your pipeline during the move. Recreate the stages you already use. Change them after a few weeks of real use.
- Mixed date formats. 03/04 can be March 4 or April 3. Convert the whole column to one format.
- Skipping the test import. Ten rows first. Always.
FAQ
Should I import closed or lost deals?
Import recent ones if you want win/loss history for reporting. Leave out anything older than a year unless you plan to re-contact them. A clean Lost record with a reason is useful. Two hundred of them from 2023 usually are not.
Can I import contacts and deals in one file?
Yes, in all three tools, with different rules. Pipedrive links everything in one row. HubSpot supports multi-object imports and needs deal name, pipeline, and stage to create deals. Capsule imports people and organizations from one file and opportunities from a second file that names each primary contact.
What if my spreadsheet has no email addresses for some leads?
For HubSpot contacts, email is required, so those rows need one or will not import as contacts. Pipedrive and Capsule can create a person from a name alone, but you lose the easiest way to spot duplicates. Find the email or archive the row.
Will a blank cell erase data in the CRM?
In HubSpot, no — its docs say blank cells are ignored and do not clear existing values. In Capsule and Pipedrive, check the overwrite options on the final import screen before you update existing records.
Do I need a paid plan to import?
HubSpot lists imports as available on all plans, with lower file and daily limits on the free tools. Capsule lists its contact import as available on all plans. Pipedrive requires the right user permission to import. Check current plans on each vendor’s site.
Next step
Once your data is in, the CRM is only as good as the stages you use and the review you keep. Set the stages with simple sales pipeline stages for solo founders, filter new leads with qualify leads before you book, then keep the board honest with the 20-minute weekly pipeline review.
Last reviewed: October 16, 2026.
Get the next guide by email
Practical stack checklists and comparisons for founders. One email when something new is published — no hype.