Importing from another CRM
Switching from another system takes one upload — point ThankFirst at your old CRM's export and it recognizes the columns for you.
Find it: Left nav → Donors → Import · Who can use it: Staff — Org Admins / CDOs and Development Associates.
What you'll see
The import wizard has three steps: upload, map your columns, and a done summary. On the first screen is a "Coming from another system?" selector. Pick your old CRM there and ThankFirst reads its export format automatically; leave it on "Generic CSV / spreadsheet" to map columns by hand. Then choose your file (CSV or Excel — the first row must be your column headers).
How to import from a known CRM
- On the upload screen, open "Coming from another system?" and choose DonorPerfect, Bloomerang, or Little Green Light.
- Click Choose a CSV or Excel file and pick the export you pulled from that system.
- On the Map your columns step, the recognized columns are already matched for you. A side panel shows how many columns were recognized, how many were intentionally skipped, and how many weren't recognized (map those by hand if you want them).
- Under For donors that already exist, choose Update / merge or Skip, then click Import.
- The done screen reports donors added, donors updated, gifts added, duplicates skipped, and any rows with errors. If some rows had problems, download the Error file to see exactly which and why.
How to import from any other source
Pick Generic CSV / spreadsheet, upload your file, and match each of your columns to a ThankFirst field yourself on the mapping step. Anything you don't need, leave on Skip. This handles exports from any system the presets don't cover.
What comes across
- Your donors and their gifts. Multiple gift rows for the same person are grouped into one donor (matched by email, or by name plus address).
- Your old record IDs. Each system's original constituent ID is preserved in a custom field, so you can always reconcile a ThankFirst donor against your former system. Nothing about the switch is one-way-and-forget.
- Funds, campaigns, and appeals, mapped onto ThankFirst's model: an appeal becomes the gift's source, and a campaign is matched to an existing one by name or created if it's new.
- Duplicate protection. Matching is alias-aware — it knows a donor's alternate email addresses — so re-importing or overlapping files don't create duplicate people.
- Deceased status, which imports correctly and suppresses future communications. Consent is one-way: an unsubscribe or do-not-mail flag imports as a suppression, but an import can never switch contact back on — that's a decision only a person should make.
What's intentionally left out (and reported, never silently dropped)
Some columns are recognized and then deliberately skipped, and the summary tells you the count so a skip reads as "handled," not "missed":
- Calculated totals (lifetime totals, year-to-date, largest gift) — ThankFirst recomputes each donor's tier and category itself, so importing stale totals would only fight with its own math.
- Payment-instrument details — card numbers, check numbers, EFT types.
- Receipt and acknowledgment codes — ThankFirst issues its own receipts (see Donors).
- Extra addresses and emails beyond the primary, plus social handles.
- Per-gift IDs from the old system.
How duplicates and re-imports behave
- Identical rows within one file import as separate gifts — the file is treated as the source of truth, so two matching rows mean two real gifts.
- Re-importing the same file adds zero new gifts and tells you how many it skipped. Running an import twice by accident won't double anyone's giving, and it never stays silent about what it skipped.
Good to know
- DonorPerfect files are often saved in Windows-1252 (not UTF-8) encoding; ThankFirst handles that automatically so accented names and symbols come through correctly.
- Presets are best-effort against each CRM's documented export format. If a column isn't recognized, it's listed as unrecognized and you can map it by hand on the same screen — nothing is lost, it just needs one click.
- After import, every donor is auto-classified, tiered, and given a recommended ask. Imported historical gifts are flagged "needs stewardship first," since there's no thank-you on record yet.
- Reducing the cost of switching is the whole point: a small org shouldn't have to abandon years of donor history to leave an overpriced legacy CRM. New to the app overall? Start with Getting started.