CRM Data Export and Migration Checklist for Small Teams
Table of Contents
| Statistic | Data |
|---|---|
| Salesforce export window | 48 hours |
| Pipedrive file retention | 28 days |
| HubSpot link expiry | 30 days |
Short answer: exporting a CRM is not the same as migrating a CRM. Most systems let you download your contacts, companies, and deals as CSV files, but the things that make the data usable in a new system — links between records, email history, notes, attachments, user assignments, and automations — often live outside those files or need separate steps. Before you migrate: inventory what you actually use, confirm per entity what exports and what doesn’t, run a trial import into the new system, and keep the old system intact until counts and spot checks pass.
Part 1 — The universal checklist (vendor-neutral)
Work through these items regardless of which systems you are moving between:
- Inventory your entities. List every object you use: contacts, companies, deals/opportunities, activities (calls, meetings, tasks), emails, notes, attachments, products/quotes, custom fields and custom objects, pipelines and stages, and saved views/reports. Mark each one must migrate or can archive.
- For each entity, ask what “export” includes. Field values are the baseline. Then check: are associations (deal↔contact, contact↔company) included? Are activities and email threads included or a separate export? Are attachments included inline, as links, as an opt-in, or not at all? Are system fields (created/modified dates, owner) preserved? The vendor sections below show how differently the three vendors answer this.
- Check the limits that break big migrations — at the entity, not just the plan. Common ones: per-export row or file-size caps; time-limited download windows (Salesforce deletes export files after 48 hours and Pipedrive keeps generated files for 28 days; HubSpot’s links expire after 30 days); daily export quotas (HubSpot: 300 per rolling 24 hours); association columns that truncate (HubSpot’s default association columns cap at 1,000 linked IDs); edition-gated export schedules (Salesforce weekly exports exist only in Enterprise, Performance, and Unlimited editions); plan-gated item types (Pipedrive project exports need Premium or higher, or the Projects add-on).
- Mind permissions — for export, import, and cleanup. Many exports require admin or specific export permissions; bulk deletion in the destination (for re-imports) is often permission-restricted too. Confirm your role can export everything you inventoried and clean up if a trial import goes wrong.
- Build a field-mapping sheet before touching any tool — old field → new field → transformation → who confirmed it. Start from field-mapping-template.csv (Part 3), not from memory.
- Run a trial import into the new CRM first. A common starting point is ~20 records per entity covering the edge cases in migration-acceptance-checklist.csv (a company with no contacts, a deal with multiple contacts, records with special characters, closed-won deals, records with long notes). Treat that number as an example starting point, not a coverage guarantee — the matrix, not the record count, is the checklist. Fix the mapping, then repeat until the matrix passes.
- Plan verification counts (Part 4): record counts per entity, plus spot checks on associations, dates, and ownership.
- Prepare rollback before you start. Keep the old system’s subscription active through verification; take and store a full export set on storage you control (don’t rely on the old vendor’s retention — Salesforce, for example, removes export files 48 hours after completion and cannot recover them); export or snapshot the new system’s trial-import state so a bad import can be reset by deletion/re-import — which requires delete permissions in the destination and verified backups of both systems. No vendor guarantees one-click rollback; plan it as a decision with owners and triggers, not an assumption.
- Decide what you are not migrating and say it out loud: automations/workflows, dashboard configurations, and integration settings usually must be rebuilt, not exported. Confirm each one explicitly.
Part 2 — Product-specific export notes (official documentation only, accessed 2026-10-24)
These notes describe what each vendor’s own help documentation states. They are not a substitute for checking your own account, and edition/plan/permission qualifiers below travel with their claims — don’t generalize one vendor’s rules to another.
HubSpot
Source: Export your records (HubSpot Knowledge Base, updated 2026-04-02).
- Record exports (contacts, companies, deals, tickets, and more) require the appropriate export permissions. By default an export includes only the properties and associations shown in the current view — switch to all properties (and associations) if you need everything.
- The default association columns include up to 1,000 associated record IDs; the “All associated records” option is CSV-only.
- Platform limits: up to 300 exports in a rolling 24 hours with 3 running at once; download links expire after 30 days; the export log is kept for 3 years; large exports (CSV/XLSX over 1 million rows, XLS over 65,535 rows) may be delivered as multiple files in a ZIP.
- Contact activities (e.g., calls, notes) are routed to separate options instead of record exports — the article names “Export individual contact data,” “Export certain activity reports,” and the engagements API. Plan those steps explicitly; they are not bundled into record exports.
- The article states exports are available with all products and plans; it does not state tier-based differences beyond permissions — confirm in your own account.
Salesforce
Source: Salesforce Data Export FAQ (Salesforce Help, publish date 2026-08-17; full text reviewed).
- Schedule depends on edition. The FAQ states: weekly exports are available in Enterprise, Performance, and Unlimited Editions; monthly exports are “available in All editions, except for Database.com.” The FAQ does not name Starter Suite explicitly — treat “monthly Data Export works in my Starter Suite org” as to be confirmed in your own org before you schedule a migration around it. Manual generation is once every 7 days (weekly) or 29 days (monthly).
- 48-hour download window, then deletion. Export files are downloadable for 48 hours after completion; they are removed as soon as a new export is queued, even within the window; once removed, neither customers nor support can recover them. Build your download step into the plan, not into “later.”
- Download pacing. One file at a time, with a required 60-second wait between downloads (faster attempts hit an HTTP 429 error).
- No speed guarantee. There is no SLA for export completion; large exports can take longer than a week, and support cannot expedite them. The FAQ suggests choosing only needed objects and considering the Data Loader tool or AppExchange apps as alternatives.
- Attachments and documents are an option, not a default. The Data Export options include “Include images, documents, and attachments” and “Include Salesforce Files and Salesforce CRM Content document versions” — both can be deselected, and the FAQ recommends deselecting them to speed up exports. If you need attachments, confirm they are included in your export run.
- Recycle Bin data is not included in exports.
Pipedrive
Source: Exporting data from Pipedrive (Pipedrive Knowledge Base, updated September 2026; full text reviewed).
- Permissions come first. Only global admins and regular users with the correct permissions can export data — and even with export permission, you can only export data visible to you based on your visibility group or item visibility. Confirm your role before planning around an export.
- Two export routes, with different coverage:
- The Export data tab (Tools and apps > Export data; global admin permissions required to export by data type) downloads each item type individually: leads, deals, organizations, people, products, activities, projects (available on Premium and higher plans or with the Projects add-on), notes (HTML or plain text), and files. Most of these exports include default, custom, and system fields, along with ownership information and any linked records.
- The list view exports customized data — the columns you’ve chosen — for deals, leads, projects, contacts, and organizations.
- Linked activities, notes, and files must be exported separately. The article states this directly: “Activities, notes and files linked to deals and contacts must be exported separately.” If your pipeline history lives in activities and notes, your migration plan needs those export steps explicitly — they are not bundled into a deals export.
- Two file caveats: files stored in Google Drive are not exported during global export (their download link works for admins only), and generated export files are available for 28 days — download promptly and store them yourself.
- Field and user setup are exportable too: the Data fields export includes your field setup (item type, field name, field type, custom flag, and API key) or selectable options — useful as the skeleton for your mapping sheet. The Users and access export covers user names, emails, permission sets, and visibility groups (account-settings access required).
- Pipedrive also documents an API-based export for automated or advanced use cases, and documents imports separately (linked from the same article) — when Pipedrive is your destination, check its import documentation for the column structure you must map to.
Gaps to confirm in-account before any migration (not fillable from blogs): Starter Suite’s monthly Data Export availability (the FAQ’s edition list doesn’t name it); whether your HubSpot seat/plan hits any export permission or quota differences; HubSpot attachment handling (not stated in the export article we checked); how your Pipedrive visibility groups limit what your role can actually export.
Part 3 — Field mapping (template + illustrative example)
Use field-mapping-template.csv. The rows below are an illustrative example — not a real account, not a recommended mapping. Build your own sheet and have the person who owns the data confirm each row.
| Source field (old CRM) | Source type | Destination field (new CRM) | Transformation / decision |
|---|---|---|---|
Full Name |
Contact, text | Name (contact) |
Split into first/last if the destination separates them |
Company |
Contact, free text | Company (company record) |
Free text must be matched to company records; decide the match rule (exact name? domain?) and who resolves misses |
Deal value |
Deal, currency | Amount |
Confirm currency handling if multiple currencies exist |
Stage |
Deal, dropdown | Pipeline stage |
Map old stage names to the new pipeline; unmatched stages need a decision, not a default |
Owner |
All records, user | Owner |
Recreate users in the new system first; otherwise imports fail or reassign ownership |
Notes |
Contact, long text | Activity note (per record) | Decide: one note per record as text, or re-dated? Timestamps are often lost in CSV |
Part 4 — Verify before you cut over, and how to roll back
Verification (after the trial import, and again after the real one):
- Counts per entity: source records exported vs. rows in the file vs. records in the destination. All three numbers should match or have a documented explanation (e.g., duplicates intentionally merged).
- Association spot checks: an example starting point is 10 random deals — confirm their linked contacts and companies exist and are linked in the destination. This is where flat-file migrations fail silently; scale the sample to your data and record your rule in advance.
- Field spot checks: sample records per entity and compare fields side by side, including dates and currency amounts.
- Ownership and permissions: confirm records are owned by the right users and that stage/pipeline math (e.g., forecast totals) matches what the old system reported.
- Write down the acceptance numbers before importing, so “close enough” isn’t decided under pressure.
The full entity/relation/anomaly matrix lives in migration-acceptance-checklist.csv; it is a starting structure to extend with your own entities, not a claim that it covers every boundary case.
Rollback preparation:
- Keep the old CRM fully active (and its subscription paid) until verification passes — do not cancel on migration day.
- Store the complete export set (all files, plus your mapping sheet and the verification numbers) in storage you control, with checksums if the files are large. Remember vendor-side windows: Salesforce deletes export files after 48 hours and cannot recover them; HubSpot links expire after 30 days; Pipedrive generated files are available for 28 days.
- If you plan a deletion/re-import recovery in the new system, verify delete permissions for the role doing it and take a backup of the destination state first — bulk delete is permission-restricted in several CRMs.
- Agree in advance on what triggers rollback (e.g., an association error-rate threshold you set) and who makes that call.
What this guide is not
- It is not a tested runbook. The steps are a planning checklist; the vendor notes come from official documentation read on 2026-10-24, not from a migration performed by this site. No claim here is based on a real migration executed by the authors.
- It promises nothing about losslessness, one-click transfers, or zero downtime. No CRM migration is guaranteed lossless; verification is how you find out what was lost.
- It is not legal or compliance advice on data-protection obligations when copying customer data between systems.
Sources (all accessed 2026-10-24)
- HubSpot Knowledge Base — Export your records (updated 2026-04-02)
- Salesforce Help — Salesforce Data Export FAQ (publish date 2026-08-17; Lightning app — not independently re-fetchable by tooling, verified by browser full-text capture)
- Pipedrive Knowledge Base — Exporting data from Pipedrive (page date fields read “September 3, 2026” and “2026-09-02” in two same-day captures; re-check before publishing)
Key Takeaways
- Export windows differ sharply: Salesforce files are deleted 48 hours after completion, Pipedrive files are kept for 28 days, HubSpot links expire after 30 days.
- Pipedrive activities, notes, and files linked to deals and contacts must be exported separately.
- Salesforce weekly exports require Enterprise, Performance, or Unlimited editions; the FAQ does not name Starter Suite.
- Run a trial import and per-entity count verification before cutting over — and keep the old CRM active until checks pass.