Why Sloose
Real data is never tidy. Your import tool shouldn't need it to be.
Basic importers assume one tidy file per record type, an id for every link, and values spelled exactly as your CRM spells them. Real files have none of that. So the work moves into the spreadsheet before the import, and that is the slow, risky part.
Here are the problems people search for when a CRM import goes wrong, each shown on a sample file, and how Sloose deals with it.
Import contacts and accounts at the same time
A list from an event has the company, the contact and the deal on one row. A basic import wants a separate file for each record type, and a way to link every contact and deal to its company.
In Sloose one sheet feeds the Accounts, Contacts and Deals modules in one import. Sloose works out that the company has to exist first. Each contact and deal is then linked to the company on its own row.
You choose how a company is matched against the companies you already hold, for example by its name or its website. A row whose company is already in your CRM links to that record, and a company on several rows becomes one account: a later row finds the account an earlier row made. Capitals don't count, but "Saltbush Solar Co." and "saltbush solar co" are a full stop apart, so tidy the name with a formula or they stay two.
| A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Company | Contact | Job title | Mobile | Opportunity | Value | Stage | Expected close | |
| 2 | Brightwater Joinery Pty Ltd | Priya Ramanathan | Operations Manager | priya.r@brightwater.example | 0491 570 156 | Workshop fit-out | $48,500 | Quote sent | 15/11/2026 |
| 3 | Brightwater Joinery Pty Ltd | Tom Okafor | Purchasing | tom@brightwater.example | 0491 570 157 | Spare parts contract | $6,200 | Qualified | 30/11/2026 |
| 4 | Kestrel Ridge Hire | Lena Fischer | Owner | lena@kestrelridge.example | 0491 570 158 | Fleet tracking pilot | $12,000 | Discovery | 1/12/2026 |
| 5 | Saltbush Solar Co. | Marcus Bell | Project Lead | m.bell@saltbush.example | 0491 570 159 | Warehouse roof array | $96,750 | Negotiation | 20/12/2026 |
Update existing records without creating duplicates
A list of changes arrives with the same person twice, once in capitals. A basic import offers one choice for the whole file: add, update or both, matched on one unique field.
In Sloose each module has its own rule for finding a record you already hold. The value it looks for can be a formula, so the email can be put in lower case first and PRIYA.R@… finds the record stored aspriya.r@….
You decide whether a record that is found is updated, and you can add a condition, such as "only when the file has a phone number and it differs". When a row finds several records, Sloose does not pick one for you. You choose to be asked, to skip the row, to create a new record, or to use the first.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | First name | Last name | Mobile | Company | Account tier | Last contacted | |
| 2 | priya.r@brightwater.example | Priya | Ramanathan | 0491 572 549 | Brightwater Joinery | Gold | 30/09/2026 |
| 3 | PRIYA.R@BRIGHTWATER.EXAMPLE | Priya | Ramanathan | Brightwater Joinery Pty Ltd | Gold | 01/10/2026 | |
| 4 | lena@kestrelridge.example | Lena | Fischer-Brandt | 0491 572 665 | Kestrel Ridge Hire | Silver | |
| 5 | info@saltbush.example | Accounts | Team | Saltbush Solar Co. | 15/09/2026 | ||
| 6 | sam@tidewell.example | Sam | Nguyen | 0491 572 983 | Tidewell Plumbing | Bronze | 02/10/2026 |
| 7 | sam.nguyen@tidewell.example | Samuel | Nguyen | 0491 572 983 | Tidewell Plumbing | Bronze | 02/10/2026 |
| 8 | grace@orchardlane.example | Grace | Liu | 0491 573 770 | Orchard Lane Catering | Platinum | 28/09/2026 |
Split full names into first and last, and addresses in one cell
"WALSH, Connor", "mary-jane o'neill" and "Dr. Anna-Lena Schröder" in one Name column. Whole addresses in one cell, from five countries, one of them across three lines.
The AI proposes a formula where a field needs a split, a join or a change of case, built from functions such as split andproper. You see what the formula makes of every row before you accept it.
There is no built-in address parser. Each part of the address gets its own formula, which you write or ask the AI to write, and the results on your rows show you any row it gets wrong, so you can correct it before the import.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Company | Address | Phone | Country |
| 2 | WALSH, Connor | Kestrel Ridge Hire | PO Box 118, Toowoomba QLD 4350 | +61 491 570 313 | AU |
| 3 | mary-jane o'neill | Copperleaf Studio | Level 3/88 Sample Rd Surry Hills NSW 2010 | (02) 5550 3302 | Australia |
| 4 | OKAFOR, Chidi | Northgate Signs Ltd | Unit 7, 14 Example Road, Leeds LS1 4AP | 0113 496 0123 | UK |
| 5 | Ms. Hannah Price | Fernhill Bakery Ltd | 22 Placeholder Lane Bristol BS1 5TR | 07700 900456 | United Kingdom |
| 6 | maria garcía lópez | Solera Tapas LLC | 1200 Sample Ave Ste 300, Austin, TX 78701 | (512) 555-0142 | USA |
| 7 | Dr. Anna-Lena Schröder | Bergmann Werkzeuge GmbH | Musterstraße 12, 80331 München | DE | |
| 8 | Aroha Ngata | Kauri Bay Tours | PO Box 4021, Paihia 0247 | NZ |
Import date formats and picklist values that don't match
Registrations from seven countries: 04/03/2026 from Australia and 03/04/2026 from the United States are the same day. Leads where one state is written "N.S.W." and "new south wales", beside "Calif.", "ON" and "Bayern".
Dates
A formula can read each row's date in the order its country writes it, using the row's Country column. You see the date every row will become before anything is written. A value the formula cannot read, such as4 Mar 2026, is shown as it is, never guessed.
Picklists
Translate values matches each value to an option your CRM's field really has. A free matcher handles differences in case, spacing, punctuation and accents. For the rest, such as "Tassie" for Tasmania, you can ask the AI, and every option it names is checked against the field's real options.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Registration ID | Country | Attendee email | Registered | Session date | Fee paid |
| 2 | R-2001 | Australia | lena@kestrelridge.example | 04/03/2026 | 12/05/2026 | A$250.00 |
| 3 | R-2002 | United States | maria@solera.example | 03/04/2026 | 05/12/2026 | $165.00 |
| 4 | R-2003 | Germany | a.schroeder@bergmann.example | 04.03.2026 | 12.05.2026 | 150,00 € |
| 5 | R-2004 | United Kingdom | chidi@northgate.example | 4 Mar 2026 | 12 May 2026 | £130.00 |
| 6 | R-2005 | New Zealand | aroha@kauribay.example | 2026-03-04 | 2026-05-12 | NZ$275 |
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | First name | Last name | Company | Country | State / region | Lead source |
| 2 | Marcus | Bell | Saltbush Solar Co. | Australia | N.S.W. | |
| 3 | Grace | Liu | Orchard Lane Catering | AU | new south wales | Adwords |
| 4 | Ravi | Patel | Willowmere Dental Group | Australia | Tassie | |
| 5 | Maria | García | Solera Tapas LLC | US | Calif. | Google Ads |
| 6 | Dana | Whitfield | Lakeside Rowing Club | USA | CA | linkedin.com |
Import a lookup field by email, code or tax number
Orders name their customer by a business number written four ways, and their contact by an email in mixed case. A basic import wants the related record's id, or a field that identifies one record.
In Sloose a lookup can search for the related record by a field you choose, where your CRM can search that field. The value it searches for can be a formula, so ABN 73 000 100 403 and62-000-100-302 become 73000100403 and 62000100302 first.
You decide what happens when nothing matches, or when several records do: leave the link empty, skip the record, or be asked.
| A | B | C | D | E | F | G | H | |
|---|---|---|---|---|---|---|---|---|
| 1 | Order no | Customer ABN | Site contact email | Product code | Qty | Sales rep | Order date | Notes |
| 2 | SO-24017 | 51 000 100 201 | priya.r@brightwater.example | KR-HIRE-EXC5 | 2 | jordan.avery@yourco.example | 02/10/2026 | Deliver to rear gate |
| 3 | SO-24018 | 51000100201 | tom@brightwater.example | KR-HIRE-EXC5 | 1 | jordan.avery@yourco.example | 02/10/2026 | |
| 4 | SO-24019 | 62-000-100-302 | lena@kestrelridge.example | SS-PANEL-440 | 24 | mei.tanaka@yourco.example | 03/10/2026 | Split delivery |
| 5 | SO-24020 | ABN 73 000 100 403 | M.Bell@Saltbush.example | SS-INV-10K | 1 | Mei Tanaka | 03/10/2026 | |
| 6 | SO-24021 | 84 000 100 504 | sam@tidewell.example | tp-svc-annual | 1 | ravi.patel@yourco.example | 04/10/2026 | Renewal |
| 7 | SO-24022 | 95 000 100 605 | new.person@orchardlane.example | OL-CAT-PLAT | 40 | ravi.patel@yourco.example | 05/10/2026 | Contact not in CRM yet |
Re-import next month's file with a template
October's member list has an "E-mail address" column where September's said "Email", a new Mobile column, a new membership level and dates written another way.
Save September's import as a template. In October, start from it. Sloose checks the new file against the template for free and shows what still fits, what is missing and what is new. If you want help with the gaps, the AI is asked about those parts only.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Member ID | First name | Last name | Membership | Renewal date | Branch | |
| 2 | M-0412 | lena@kestrelridge.example | Lena | Fischer | Standard | 31/10/2026 | Brisbane |
| 3 | M-0413 | tom@brightwater.example | Tom | Okafor | Premium | 15/11/2026 | Melbourne |
| 4 | M-0414 | grace@orchardlane.example | Grace | Liu | Standard | 01/12/2026 | Sydney |
| 5 | M-0415 | sam@tidewell.example | Sam | Nguyen | Premium | 30/09/2026 | Sydney |
| 6 | M-0416 | mei@harbourline.example | Mei | Tanaka | Standard | 20/10/2026 | Perth |
| A | B | C | D | E | F | G | H | |
|---|---|---|---|---|---|---|---|---|
| 1 | Member ID | First name | Last name | E-mail address | Mobile | Membership | Renewal date | Branch |
| 2 | M-412 | Lena | Fischer-Brandt | lena@kestrelridge.example | 0491 573 087 | Standard | 2026-10-31 | Brisbane |
| 3 | M-0413 | Tom | Okafor | tom@brightwater.example | Premium | 2026-11-15 | Melbourne | |
| 4 | M-0414 | Grace | Liu | grace@orchardlane.example | 0491 574 118 | Corporate Plus | 2026-12-01 | Sydney CBD |
| 5 | M-0415 | Sam | Nguyen | sam@tidewell.example | 0491 574 632 | Premium | 2027-09-30 | Sydney |
| 6 | M-0417 | Ravi | Patel | ravi@willowmere.example | 0491 575 254 | Standard | 2027-10-01 | Hobart |
Why CRM imports fail: the preparation is the slow, risky part
Every problem above is usually solved in a spreadsheet before the import: helper columns, copied sheets, lookups for record ids. Each step is done by hand, and a mistake is found only after the records are written. The studies below are not about Sloose. They are what others have measured about moving data.
51% hours, 26% days, 23% weeks or months
How long companies said it took to import customer data into a product, from start to finish. 76% named data formatting as a problem.
Flatfile, 2020 State of Data Onboarding. A survey of more than 100 companies by a company that sells import software.
More than 60%
of data migration projects overran on time or budget.
Bloor Research, Data Migration, a white paper by Philip Howard, September 2007.
91%
of those who said decision makers rely on CRM data also said the data requested for those decisions is often (51%) or sometimes (40%) inaccurate.
Validity, The State of CRM Data Management 2022. 1,241 CRM users and stakeholders in the US, UK and Australia.
Sloose moves that preparation into the import, where every rule is written down, tried on your rows and checked before anything is written: Validate and dry run. Read thefirst import guide in the docs.
See one file go in, both ways
One realistic spreadsheet, imported with a native import and with Sloose, with the steps and the risks of each.