MB SuiteMB Suite

Prepare and verify loading your historical base into the CRM

Updated 2026-08-18

Milestone 4 of 8 · Your history inside

In two lines: uploading the file is a five-step wizard that's done in minutes; the real work is cleaning the spreadsheet before and checking the totals after. That's where the migration is won or lost.

When you finish you'll have: your historical companies, people and deals inside the CRM, linked to each other, with their origin, and with the totals verified against your files.

What do I need before starting?

Four things, and all four are blocking:

  • Your custom fields created. A field created after importing stays empty in everything imported, and it can't be bulk-filled.
  • Your pipelines and stages defined, with the right currency.
  • Your reps already loaded as members, because in the file the owners are indicated by email (or by the member's name) and that person has to exist.
  • A lead source of your own for your history. Create it now in CRM > Settings > Lead sources with New source and call it, for example, Historical base. It's what later lets you separate in reports what you already had from what a campaign brought. The why is a few paragraphs down, in the decisions of the Information step.

The first three come from Set up the CRM foundations: team, funnel and custom fields; the fourth is five minutes and is done right here.

And one access condition: importing is reserved for the Manager or CRM Admin role. With the Sales rep role you won't see the option.

If you're reading this and haven't done the foundations yet, stop here. Importing first is the mistake that most often forces you to delete everything and start over.

How long does it really take?

Cleaning the files is the longest step of the whole implementation: between one and three hours, depending on how tidy your base is. The import itself is a matter of minutes per file.

How do I get the files ready?

The format, first of all. The file has to be a CSV, and the safe path is UTF-8 encoding. The wizard doesn't accept Excel spreadsheets. It does detect the most common encodings of an Excel export (UTF-8, UTF-16 and ANSI) so accents and ñ read correctly, but if you export in a rarer encoding they'll break: in Excel, Save as → CSV UTF-8 and you avoid the doubt.

Before building anything, go into the wizard and use Download CSV template: it brings the columns with the names the mapping recognizes on its own. The Import guide, in the wizard's side panel, shows you the requirements and the maximum per file at each step.

If you're coming from another CRM, export one spreadsheet per entity from its own panel. Each one has its trap, and all of them are solved in the spreadsheet before uploading anything:

OriginThe trap
HubSpotDeals bring the company's identifier, not its name. Cross-reference the spreadsheets first.
PipedriveCustom fields come out with their technical name. Rename the headers.
ZohoLinks between modules go by identifier, not by name.
Your own spreadsheetUsually the worst case: everything mixed in a single tab. Split it into three.

The cleanup, in this order:

  • Split into three files: companies, people and deals.
  • Convert phones to international format. +5491168342300, not 11 6834-2300. Without this two things happen: incoming WhatsApp doesn't link to the person you already had and you end up with duplicate contacts, and that number can't be used to call or open WhatsApp from the CRM — the rep clicks and reaches nobody. It's the most expensive cleanup mistake of all.
  • Separate first and last name into different columns.
  • Use a single date format across the whole column. Mixing them leaves empty cells without warning.
  • Deduplicate before uploading. Sort by email and by phone: it's much faster to solve it in the spreadsheet.
  • Unify the spelling of companies. "ACME S.A.", "Acme SA" and "acme s a" come in as three different companies.
  • Set the owners by email, and make sure that rep already exists as a member.
  • Create the labels beforehand that you're going to use: the import assigns them by name, but doesn't create the missing ones.
The row limit per file truncates silently. If your file has more rows than allowed, the extra ones are discarded without any message. The Upload file step shows you the maximum and, when you load the file, how many rows it detected. The wizard moves on to the next step by itself, so go back with Back and read that number: if it's lower than the rows in your spreadsheet, you went over the limit. Split the file and upload the rest separately.

In what order do I import?

Companies → People → Deals. It's not a recommendation: the other way around, deals end up without a contact and without a company, and have to be redone.

Each import is launched from its own list, with Import, and the wizard has five steps: Information → Upload file → Mapping → Preview → Done. The full mechanics of the wizard and the detail of what each duplicates option does are in Import your current contacts and deals.

Three decisions in the Information step that decide the result and are easy to overlook:

  • Attribution source (when importing prospects or deals). Where this data comes from. It comes preselected as Manual (System) and can't be left empty. If you leave it like that, your entire history gets mixed with the leads your team enters by hand day to day, and you lose the cut between "what I already had" and "what a campaign brought". Choose here the source of your own that you created for the history.
  • Linked companies (when importing people or deals). Link and create missing ones if your file brings new companies; Link to existing only if you already imported them, which is safer because it doesn't create junk companies from a typo.
  • Persons (when importing deals). Only rows with an existing person for history — it skips what doesn't match —, or Link existing and create missing ones.
You can bring deals already won and lost with their real dates: they come in with their true date, so they don't clutter the board or the forecast and they do appear in the reports of the period they belong to. And if your history is spread out, you can map the pipeline and the stage row by row.
Always use Preview before confirming. The Resolution column shows you row by row what gets linked, what gets created and what is a duplicate, and it writes nothing. If something doesn't add up there, it won't add up later.

When you finish the mapping, use Save as template: if you have to split the file or repeat the load, it saves you redoing it.

You're uploading third parties' personal data. What you can load and how that data is handled is governed by the Terms & Conditions, which always have the current version. Review them before uploading a base you didn't generate yourself.

How do I check it turned out right?

This list is what keeps you from discovering the problem three weeks later.

  • The totals match the rows in your files. If some are missing, suspect the row limit.
  • You open five deals at random: person, company, owner, pipeline and stage correct.
  • Your custom fields arrived with data.
  • The historical won deals appear in CRM > Performance in their real period.
  • In CRM > Performance, your history is distinguished under your own source and doesn't fall under Manual.
  • The deals' currency is yours.
  • You search for three people by phone and they show up. If they don't, the international format failed.
  • There are no duplicate companies due to spelling differences.

What if something went wrong?

What you seeWhat happenedWhat to do
Rows are missing from what you importedThe file exceeded the maximum rows and the rest was discardedSplit the file and upload the rest
Everything imported with broken accentsThe file was in an encoding the wizard couldn't detectExport it again as CSV UTF-8 and re-import
Deals have no company or personThey were imported before companies and peopleRe-import in order
Your custom fields are empty in everything loadedThey were created after importingCreate them and re-import those rows
An incoming WhatsApp creates a new contact instead of finding the one you already hadPhones came in without international formatFix the spreadsheet and re-import those people
All amounts show in dollarsThe pipeline's default currency was left in dollarsFix it in CRM > Settings > Pipelines; deals already created are not bulk-converted

What's next?

Your base is in. Now let the new leads come in. Milestone 5 is two articles, one per chain, and most businesses need both, in whichever order they prefer:

Still have questions?

Ask MIA, the MB Suite AI assistant: open it with the MB AI button (⌘J) in the top bar. MIA knows the section you're in, so you can ask it about what you see on screen — and it can also answer how-to questions about using MB Suite.